lisy
2023-08-07 cec511e4a14931ed67d09292fbbb01fe5126e5cf
app端:优惠券的规则字段处理
9个文件已修改
129 ■■■■■ 已修改文件
cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-activity/src/main/java/com/dsh/activity/entity/CouponStore.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserCouponServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
@@ -266,14 +266,15 @@
            JSONObject jsonObject = JSON.parseObject(coupon.getContent());
            switch (coupon.getType()){
                case 1:
                    couponInfo.put("num1",jsonObject.getDouble("num1"));
                    couponInfo.put("num2",jsonObject.getDouble("num2"));
//                {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                    couponInfo.put("num1",jsonObject.getDouble("conditionalAmount"));
                    couponInfo.put("num2",jsonObject.getDouble("deductionAmount"));
                    break;
                case 2:
                    couponInfo.put("num1",jsonObject.getDouble("num1"));
                    couponInfo.put("num1",jsonObject.getDouble("conditionalAmount"));
                    break;
                case 3:
                    couponInfo.put("num1",jsonObject.getString("num1"));
                    couponInfo.put("num1",jsonObject.getString("experienceName"));
                    break;
                default:
                    break;
@@ -378,17 +379,18 @@
            coupon.setType(dataVo.getPrescription());
            HashMap<String, Object> stringObjectHashMap = new HashMap<>();
            switch (dataVo.getPrescription()){
//                {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                case 1:
                    stringObjectHashMap.put("num1",dataVo.getCondition());
                    stringObjectHashMap.put("num2",dataVo.getSubtraction());
                    stringObjectHashMap.put("conditionalAmount",dataVo.getCondition());
                    stringObjectHashMap.put("deductionAmount",dataVo.getSubtraction());
                    coupon.setContent(stringObjectHashMap.toString());
                    break;
                case 2:
                    stringObjectHashMap.put("num1",dataVo.getDiscount());
                    stringObjectHashMap.put("conditionalAmount",dataVo.getDiscount());
                    coupon.setContent(stringObjectHashMap.toString());
                    break;
                case 3:
                    stringObjectHashMap.put("num1",dataVo.getExperience());
                    stringObjectHashMap.put("experienceName",dataVo.getExperience());
                    coupon.setContent(stringObjectHashMap.toString());
                    break;
                default:
cloud-server-activity/src/main/java/com/dsh/activity/entity/CouponStore.java
@@ -1,6 +1,7 @@
package com.dsh.activity.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
@@ -34,10 +35,12 @@
    /**
     * 优惠券id
     */
    @TableField("couponId")
    private Integer couponId;
    /**
     * 门店id
     */
    @TableField("storeId")
    private Integer storeId;
cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java
@@ -72,20 +72,21 @@
                couponListVo.setType(coupon.getType());
                couponListVo.setEffectiveTime(sdf.format(coupon.getStartTime()) + "-" + sdf.format(coupon.getEndTime()));
                String content = coupon.getContent();
                if (coupon.getType() == 1) {//满减{"num1":1,"num2":1}
                if (coupon.getType() == 1) {//满减
//                    {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                    JSONObject jsonObject = JSON.parseObject(content);
                    couponListVo.setUseCondition("满" + jsonObject.getDouble("num1") + "元可用");
                    couponListVo.setFavorable(jsonObject.getString("num2"));
                    couponListVo.setUseCondition("满" + jsonObject.getDouble("conditionalAmount") + "元可用");
                    couponListVo.setFavorable(jsonObject.getString("deductionAmount"));
                }
                if (coupon.getType() == 2) {//代金券{"num1":1}
                    JSONObject jsonObject = JSON.parseObject(content);
                    couponListVo.setUseCondition("");
                    couponListVo.setFavorable(jsonObject.getString("num1"));
                    couponListVo.setFavorable(jsonObject.getString("conditionalAmount"));
                }
                if (coupon.getType() == 3) {//体验券{"num1":1}
                    JSONObject jsonObject = JSON.parseObject(content);
                    couponListVo.setUseCondition("");
                    couponListVo.setFavorable(jsonObject.getString("num1"));
                    couponListVo.setFavorable(jsonObject.getString("experienceName"));
                }
                listVos.add(couponListVo);
            }
cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserCouponServiceImpl.java
@@ -218,16 +218,17 @@
                    JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                    switch (coupon.getType()) {
                        case 1:
//                        {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
//                            满减券
                            Double num1 = jsonObject.getDouble("num1");
                            Double num2 = jsonObject.getDouble("num2");
                            Double num1 = jsonObject.getDouble("conditionalAmount");
                            Double num2 = jsonObject.getDouble("deductionAmount");
                            ruleModel.setConditionalAmount("满"+num1+"可用");
                            ruleModel.setDeductionAmount("¥ "+num2);
                            ruleModel.setExperienceName("");
                            break;
                        case 2:
//                            代金券
                            Double jsonObjectDouble = jsonObject.getDouble("num1");
                            Double jsonObjectDouble = jsonObject.getDouble("conditionalAmount");
                            ruleModel.setConditionalAmount("");
                            ruleModel.setDeductionAmount("¥ "+jsonObjectDouble);
                            ruleModel.setExperienceName("");
@@ -236,7 +237,7 @@
//                            体验券
                            ruleModel.setConditionalAmount("");
                            ruleModel.setDeductionAmount("");
                            ruleModel.setExperienceName(jsonObject.getString("num1"));
                            ruleModel.setExperienceName(jsonObject.getString("experienceName"));
                            break;
                        default:
                            break;
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -480,8 +480,9 @@
            }
            if(coupon.getType() == 1){//满减
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num2 = jsonObject.getDouble("num2");
//                {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                Double num1 = jsonObject.getDouble("conditionalAmount");
                Double num2 = jsonObject.getDouble("deductionAmount");
                if(price.compareTo(num1) <= 0){
                    return ResultUtil.error("该优惠券无法使用");
                }
@@ -490,7 +491,7 @@
            }
            if(coupon.getType() == 2){//代金券
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                if(price.compareTo(num1) <= 0){
                    return ResultUtil.error("该优惠券无法使用");
                }
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
@@ -19,9 +19,7 @@
import org.apache.commons.beanutils.ConvertUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
@@ -181,8 +179,9 @@
    /**
     * 提交添加
     */
    @RequestMapping(value = "/commitData")
    public Object commitData(CouponDataVo dataVo){
    @PostMapping(value = "/commitData")
    @ResponseBody
    public Object commitData( CouponDataVo dataVo){
        System.out.println(dataVo);
        Integer objectType = UserExt.getUser().getObjectType();
        dataVo.setUserType(objectType);
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
@@ -126,7 +126,7 @@
                        <div class="initialLevel col-sm-12 control-label form-group">
                            <label class="col-sm-3 control-label">*兑换方式: </label>
                            <input class="col-sm-1 control-label" onclick="exchangeMethod1()" name="exchangeMethod" type="radio"
                                   value="1" checked style="margin-top: 10px"/>
                                   value="1"  style="margin-top: 10px"/>
                            <label class="col-sm-1" style="margin-left: -15px;width: 16%;margin-top: 7px">积分</label>
                            <input class="col-sm-1 control-label" name="exchangeMethod" onclick="exchangeMethod2()" type="radio"
                                   value="2"  style="margin-left: 5%;margin-top: 10px;width: 13px;height: 13px"/>
@@ -229,6 +229,7 @@
                                    action="/tCouponManage/uploadPic"
                                    :show-file-list="false"
                                    :on-success="handleAvatarSuccess"
                                    :on-remove="handleRemove"
                                    :before-upload="beforeAvatarUpload">
                                <img v-if="imageUrl" :src="imageUrl" class="avatar">
                                <i v-else class="el-icon-plus avatar-uploader-icon"></i>
cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
@@ -243,10 +243,8 @@
couponInfoDlg.addSubmit = function () {
    var resultData = {};
    // 用户权限
    var userType = $('#userType').val();
    // 优惠券名称
    var couponName = $('#name').val;
    var couponName = $('#name').val();
    // 优惠券类型
    var prescription = $('#prescription').val();
    // 说明
@@ -267,8 +265,9 @@
    let exchangeMethod = $(':radio[name="exchangeMethod"]:checked').val();
    var requiredCash = $('#requiredCash').val;
    var requiredCash = $('#requiredCash').val();
    console.log('11111111')
    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/tCouponManage/commitData", function (data) {
@@ -278,25 +277,28 @@
    }, function (data) {
        Feng.error("添加失败!" + data.responseJSON.message + "!");
    });
    ajax.set({
        couponName: couponName,
        prescription: prescription,
        illustrate: illustrate,
        distributionMethod: distributionMethod,
        requiredPoints: requiredPoints,
        requiredPoints: requiredPoints,
        userGroup: userGroup,
        quantityIssued: quantityIssued,
        pickUpQuantity: pickUpQuantity,
        periodOfValidity: periodOfValidity,
        exchangeMethod: exchangeMethod,
        goodImg: this.goodsCover,
        goodImgs: this.goodsPicArray,
        couponName: $('#requiredCash').val,
        couponName: couponName,
        couponName: couponName,
    });
    ajax.set("userType",1);
    ajax.set("cityManagerId",1);
    ajax.set("couponName",couponName);
    ajax.set("prescription",prescription);
    ajax.set("condition",$('#conditionalAmount').val());
    ajax.set("subtraction",$('#deductionAmount').val());
    ajax.set("discount",$('#voucherAmount').val());
    ajax.set("experience",$('#experienceName').val());
    ajax.set("illustrate",illustrate);
    ajax.set("distributionMethod",distributionMethod);
    ajax.set("requiredPoints",requiredPoints);
    ajax.set("requiredCash",requiredCash);
    ajax.set("userGroup",userGroup);
    ajax.set("quantityIssued",quantityIssued);
    ajax.set("pickUpQuantity",pickUpQuantity);
    ajax.set("periodOfValidity",periodOfValidity);
    ajax.set("exchangeMethod",exchangeMethod);
    ajax.set("goodImg",this.goodsCover);
    ajax.set("goodImgs",this.goodsPicArray);
    ajax.set("company",$('#company').val());
    ajax.set("cityIds",[]);
    ajax.set("storeIds",[]);
    ajax.start();
}
cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
@@ -221,9 +221,10 @@
                return ResultUtil.error("优惠券已过期");
            }
            if(coupon.getType() == 1){//满减
//                {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num2 = jsonObject.getDouble("num2");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                Double num2 = jsonObject.getDouble("deductionAmount");
                if(payMoney.compareTo(num1) <= 0){
                    return ResultUtil.error("该优惠券无法使用");
                }
@@ -232,7 +233,7 @@
            }
            if(coupon.getType() == 2){//代金券
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                if(payMoney.compareTo(num1) <= 0){
                    return ResultUtil.error("该优惠券无法使用");
                }
@@ -545,14 +546,15 @@
            UserCoupon userCoupon = userCouponClient.queryUserCouponById(new QueryUserCouponByIdAndUserId(siteBooking.getUserCouponId(),appUser.getId()));
            Coupon coupon = couponClient.queryCouponById(userCoupon.getCouponId());
            if(coupon.getType() == 1){//满减
//                {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num2 = jsonObject.getDouble("num2");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                Double num2 = jsonObject.getDouble("deductionAmount");
                payMoney = new BigDecimal(payMoney).subtract(new BigDecimal(num2)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
            }
            if(coupon.getType() == 2){//代金券
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                payMoney = new BigDecimal(payMoney).subtract(new BigDecimal(num1)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
            }
            userCoupon.setStatus(2);
@@ -610,14 +612,15 @@
            UserCoupon userCoupon = userCouponClient.queryUserCouponById(new QueryUserCouponByIdAndUserId(siteBooking.getUserCouponId(),siteBooking.getAppUserId()));
            Coupon coupon = couponClient.queryCouponById(userCoupon.getCouponId());
            if(coupon.getType() == 1){//满减
//                {"conditionalAmount":50,"deductionAmount":10,"experienceName":""}
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num2 = jsonObject.getDouble("num2");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                Double num2 = jsonObject.getDouble("deductionAmount");
                payMoney = new BigDecimal(payMoney).subtract(new BigDecimal(num2)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
            }
            if(coupon.getType() == 2){//代金券
                JSONObject jsonObject = JSON.parseObject(coupon.getContent());
                Double num1 = jsonObject.getDouble("num1");
                Double num1 = jsonObject.getDouble("conditionalAmount");
                payMoney = new BigDecimal(payMoney).subtract(new BigDecimal(num1)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
            }
        }