From 3b21bc01d0b202273552d4c245edc474b3e680eb Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期日, 17 八月 2025 21:29:13 +0800
Subject: [PATCH] 管理后台会员管理

---
 cloud-server-activity/src/main/java/com/dsh/activity/entity/Coupon.java                                  |    7 +++
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java |   14 ++++--
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/CouponDataVo.java                |    2 +
 cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java                    |    3 +
 cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java                |    2 
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html                      |   14 +++++++
 cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/CouponClient.java              |    2 +
 cloud-server-activity/src/main/java/com/dsh/activity/model/request/CouponDataVo.java                     |    1 
 cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java             |    8 ++-
 cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js                     |   29 ++++++++++++++
 10 files changed, 72 insertions(+), 10 deletions(-)

diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
index 730d3b4..c770baa 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
@@ -667,6 +667,9 @@
                     stringObjectHashMap.put("experienceName", dataVo.getExperience());
                     coupon.setContent(gson.toJson(stringObjectHashMap));
                     break;
+                    case 4:
+                        coupon.setGoodsId(dataVo.getGoodsId());
+                        break;
                 default:
                     break;
             }
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index 82b47e7..de91dd1 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -92,11 +92,13 @@
      */
     @RequestMapping("/base/pointMerchars/changeState")
     public void changeState(@RequestBody CoachChangeStateVO dto) {
-
-
         pmdsService.changeState(dto);
     }
-
+    @ResponseBody
+    @PostMapping("/base/pointMerchars/goodsList")
+    public List<PointsMerchandise> goodsList() {
+        return pmdsService.list();
+    }
     /**
      * 根据id查询
      */
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java
index 3b49b8b..4f062f7 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java
@@ -364,7 +364,7 @@
         }
         String ticketJson = grantCoupon.getTicketJson();
         if (StringUtils.hasLength(ticketJson)) {
-            // 赠送优惠券
+            // 赠送门票
             JSONArray objects = JSON.parseArray(ticketJson);
             for (Object object : objects) {
                 JSONObject jsonObject = (JSONObject) object;
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/Coupon.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/Coupon.java
index c6b09b9..cafcdc2 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/Coupon.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/Coupon.java
@@ -41,7 +41,7 @@
     @TableField("name")
     private String name;
     /**
-     * 优惠券类型(1=满减券,2=代金券,3=体验券)
+     * 优惠券类型(1=满减券,2=代金券,3=体验券 4=抵扣券)
      */
     @TableField("type")
     private Integer type;
@@ -158,6 +158,11 @@
      */
     @TableField("cityManagerId")
     private Integer cityManagerId;
+    /**
+     * 积分商品id
+     */
+    @TableField("goodsId")
+    private Integer goodsId;
 
 
     @Override
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/model/request/CouponDataVo.java b/cloud-server-activity/src/main/java/com/dsh/activity/model/request/CouponDataVo.java
index 85bf34b..e90b923 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/model/request/CouponDataVo.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/model/request/CouponDataVo.java
@@ -98,4 +98,5 @@
     String storeIds;
 
     Integer objType;
+    Integer goodsId;
 }
diff --git a/cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/CouponClient.java b/cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/CouponClient.java
index dea9322..95aaddf 100644
--- a/cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/CouponClient.java
+++ b/cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/CouponClient.java
@@ -60,4 +60,6 @@
 
     @PostMapping("/base/coupon/updateType")
     void updateType(Long id);
+    @PostMapping("/base/pointMerchars/goodsList")
+    List<PointsMerchandise> goodsList();
 }
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
index 42e6f5c..0998279 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
@@ -11,10 +11,7 @@
 import com.dsh.course.feignClient.account.model.QueryByNamePhone;
 import com.dsh.course.feignClient.account.model.TAppUser;
 import com.dsh.course.feignClient.activity.CouponClient;
-import com.dsh.course.feignClient.activity.model.Coupon;
-import com.dsh.course.feignClient.activity.model.CouponCity;
-import com.dsh.course.feignClient.activity.model.CouponListOfSearch;
-import com.dsh.course.feignClient.activity.model.CouponRecordQuery;
+import com.dsh.course.feignClient.activity.model.*;
 import com.dsh.guns.config.UserExt;
 import com.dsh.guns.core.base.tips.SuccessTip;
 import com.dsh.guns.core.common.constant.factory.PageFactory;
@@ -85,7 +82,9 @@
     public String memberCouponAdd(Model model) {
         Integer objectType = UserExt.getUser().getObjectType();
         System.out.println(objectType);
+        List<PointsMerchandise> pointsMerchandises = client.goodsList();
         model.addAttribute("userType",objectType);
+        model.addAttribute("goods",pointsMerchandises);
         return PREFIX + "TCouponAdd.html";
     }
 
@@ -168,7 +167,12 @@
         return PREFIX + "TCouponInfo.html";
     }
 
-
+    // 积分商品活动状态 未开始和已开始状态 上架
+    @RequestMapping("/goodsList")
+    @ResponseBody
+    public Object goodsList() {
+        return client.goodsList();
+    }
 
     /**
      * 跳转到门店管理列表页
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/CouponDataVo.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/CouponDataVo.java
index 431c6aa..bd6e6c8 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/CouponDataVo.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/CouponDataVo.java
@@ -98,4 +98,6 @@
     String storeIds;
 
     Integer objType;
+    // 商品id
+    Integer goodsId;
 }
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
index 9058bac..ca407b8 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
@@ -83,6 +83,20 @@
                         <input class="col-sm-1" style="width: 35%" id="experienceName" name="name"
                                autocomplete="off" placeholder="请输入体验券名称">
                     </div>
+                    <div class="form-group" style="display: flex" >
+                        <input class="col-sm-1" name="prescription" type="radio" value="4"
+                               onclick="radio4()"
+                               style="margin-left: 24.7%;">
+                        <label class="col-sm-1 control-label" style="margin-left: -1%;width: 14%;margin-top: -5px">抵扣券: </label>
+                            <div class="col-sm-9">
+                                <select style="width: 300px" class="form-control" id="goods" name="pCode" >
+                                    <option value="">请选择商品</option>
+                                    @for(obj in goods){
+                                    <option style="width: 35%" value="${obj.id}">${obj.name}</option>
+                                    @}
+                                </select>
+                            </div>
+                    </div>
                     
                 </div>
             </div>
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js b/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
index 5cb9b52..bc2a373 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
@@ -157,6 +157,8 @@
 
     $("#experienceName").val('')
     $("#experienceName").attr('disabled', 'disabled');
+    $("#goods").attr('disabled', 'disabled');
+
 }
 
 /**
@@ -172,6 +174,7 @@
 
     $("#experienceName").val('')
     $("#experienceName").attr('disabled', 'disabled');
+    $("#goods").attr('disabled', 'disabled');
 
 }
 
@@ -188,6 +191,21 @@
 
     $("#voucherAmount").val('')
     $("#voucherAmount").attr('disabled', 'disabled');
+    $("#goods").attr('disabled', 'disabled');
+
+}
+function radio4() {
+    $("#goods").removeAttr("disabled");
+
+    $("#conditionalAmount").val('')
+    $("#deductionAmount").val('')
+    $("#deductionAmount").attr('disabled', 'disabled');
+    $("#conditionalAmount").attr('disabled', 'disabled');
+
+    $("#voucherAmount").val('')
+    $("#voucherAmount").attr('disabled', 'disabled');
+    $("#experienceName").val('')
+    $("#experienceName").attr('disabled', 'disabled');
 
 }
 
@@ -383,6 +401,7 @@
     let voucherAmount = $('#voucherAmount').val();
     // 体验券名称
     let experienceName = $('#experienceName').val();
+    let goods = $('#goods').val();
     if (prescription === '1'){
         if (conditionalAmount === undefined || conditionalAmount === '' || conditionalAmount === null){
             return Feng.error('条件金额不能为空');
@@ -399,6 +418,11 @@
     if (prescription === '3'){
         if (experienceName === undefined || experienceName === '' || experienceName === null){
             return Feng.error('体验券名称不能为空');
+        }
+    }
+    if (prescription === '4'){
+        if (goods === undefined || goods === '' || goods === null){
+            return Feng.error('请选择抵扣商品');
         }
     }
 
@@ -532,6 +556,11 @@
     ajax.set("quantityIssued",quantityIssued);
     ajax.set("pickUpQuantity",pickUpQuantity);
     ajax.set("periodOfValidity",periodOfValidity);
+    if (prescription === '4'){
+        ajax.set("goodsId",goods);
+    }else{
+        ajax.set("goodsId",0);
+    }
 
     if ($('#userType').val()==2) {
         ajax.set("exchangeMethod",1);

--
Gitblit v1.7.1