Переглянути джерело

超级会员优惠券开启/关闭

zhijiezhao 3 роки тому
батько
коміт
a533ff104d

+ 3 - 3
src/main/java/com/caimei/modules/coupon/entity/SvipCouponList.java

@@ -9,7 +9,7 @@ public class SvipCouponList extends DataEntity<SvipCouponList> {
     /** 生效月份 */
 
     private String useTime;
-    private Integer status;
+    private String status;
     /** 单张优惠券id */
     private Integer couponId;
     /** 一组优惠券id的String字符串,逗号隔开 */
@@ -45,11 +45,11 @@ public class SvipCouponList extends DataEntity<SvipCouponList> {
         this.useTime = useTime;
     }
 
-    public Integer getStatus() {
+    public String getStatus() {
         return status;
     }
 
-    public void setStatus(Integer status) {
+    public void setStatus(String status) {
         this.status = status;
     }
 

+ 20 - 2
src/main/java/com/caimei/modules/coupon/service/CmVipCouponService.java

@@ -179,7 +179,7 @@ public class CmVipCouponService extends CrudService<SvipCouponListDao, SvipCoupo
             Integer ids = Integer.valueOf(s);
             CmCoupon coupon = listDao.findCoupon(ids);
             vipCouponList.setCouponId(ids);
-            vipCouponList.setStatus(0);
+            vipCouponList.setStatus("0");
             coupon.setStatus("2");
             coupon.setCouponsMode("0");
             cmCouponDao.update(coupon);
@@ -240,7 +240,7 @@ public class CmVipCouponService extends CrudService<SvipCouponListDao, SvipCoupo
                 form.setStatus("3");
             }
             SvipCouponList vipStatus = listDao.findVipStatus(couponId1);
-            if (vipStatus.getStatus() != 1) {
+            if (vipStatus.getStatus().equals("0")) {
                 form.setStatus("2");
             }
             svipCoupon.setSvipCoupons(form);
@@ -337,4 +337,22 @@ public class CmVipCouponService extends CrudService<SvipCouponListDao, SvipCoupo
         SvipCouponForm form = getForm(couponIds);
         return form;
     }
+
+    @Transactional(readOnly = false)
+    public void open(Integer couponId) {
+        SvipCouponList vip = listDao.findVipStatus(couponId);
+        String bindCoupon = vip.getBindCoupon();
+        String[] split = bindCoupon.split(",");
+        SvipCouponList vipCouponList = new SvipCouponList();
+        for (String s : split) {
+            Integer ids = Integer.valueOf(s);
+            CmCoupon coupon = listDao.findCoupon(ids);
+            vipCouponList.setCouponId(ids);
+            vipCouponList.setStatus("1");
+            coupon.setStatus("0");
+            coupon.setCouponsMode("0");
+            cmCouponDao.update(coupon);
+            listDao.updateVip(vipCouponList);
+        }
+    }
 }

+ 9 - 2
src/main/java/com/caimei/modules/coupon/web/CmVipCouponController.java

@@ -61,14 +61,21 @@ public class CmVipCouponController {
     public String close(Integer couponId1, RedirectAttributes redirectAttributes) {
         vipCouponService.close(couponId1);
         addMessage(redirectAttributes, "关闭优惠券成功");
-        return "redirect:" + Global.getAdminPath() + "/svip/cmCoupon/list";
+        return "redirect:" + Global.getAdminPath() + "/vip/cmCoupon";
+    }
+
+    @RequestMapping(value = "open")
+    public String open(Integer couponId1, RedirectAttributes redirectAttributes) {
+        vipCouponService.open(couponId1);
+        addMessage(redirectAttributes, "开启优惠券成功");
+        return "redirect:" + Global.getAdminPath() + "/vip/cmCoupon";
     }
 
     @RequestMapping(value = "delete")
     public String delete(Integer couponId1, RedirectAttributes redirectAttributes) {
         vipCouponService.deleteById(couponId1);
         addMessage(redirectAttributes, "删除优惠券成功");
-        return "redirect:" + Global.getAdminPath() + "/svip/cmCoupon/list";
+        return "redirect:" + Global.getAdminPath() + "/vip/cmCoupon";
     }
 
     @RequestMapping(value = {"list", ""})

+ 5 - 5
src/main/resources/mappings/modules/super/SvipCouponListDao.xml

@@ -69,17 +69,17 @@
     <update id="updateVip">
         UPDATE cm_svip_coupon
         SET
-        <if test="useTime !=null and useTime!=''">
+        <if test="useTime != null and useTime!=''">
             useTime = #{useTime},
         </if>
-        <if test="delFlag !=null and delFlag!=''">
+        <if test="delFlag != null and delFlag!=''">
             delFlag = #{delFlag},
         </if>
-        <if test="bindCoupon !=null and bindCoupon!=''">
+        <if test="bindCoupon != null and bindCoupon != ''">
             bindCoupon = #{bindCoupon},
         </if>
-        <if test="status !=null and status!=''">
-            status =#{status},
+        <if test="status != null and status != ''">
+            status = #{status},
         </if>
         UPDATED_TIME = now()
         WHERE couponId = #{couponId}

+ 8 - 2
src/main/webapp/WEB-INF/views/modules/svip/cmSvipCouponList.jsp

@@ -138,8 +138,14 @@
 
             <td>
                 <a href="${ctx}/vip/cmCoupon/form?couponId1=${cmCoupon.svipCoupons.couponId1}">编辑</a>
-                <a href="${ctx}/vip/cmCoupon/close?couponId1=${cmCoupon.svipCoupons.couponId1}"
-                   onclick="return confirmx('确定关闭该该月份的优惠券吗?关闭后该月份将不赠送优惠券?', this.href)">关闭</a>
+                <c:if test="${cmCoupon.svipCoupons.status ne '2'}">
+                    <a href="${ctx}/vip/cmCoupon/close?couponId1=${cmCoupon.svipCoupons.couponId1}"
+                       onclick="return confirmx('确定关闭该该月份的优惠券吗?关闭后该月份将不赠送优惠券?', this.href)">关闭</a>
+                </c:if>
+                <c:if test="${cmCoupon.svipCoupons.status eq '2'}">
+                    <a href="${ctx}/vip/cmCoupon/open?couponId1=${cmCoupon.svipCoupons.couponId1}"
+                       onclick="return confirmx('确定重新开启该月份的优惠券吗?', this.href)">开启</a>
+                </c:if>
                 <a href="${ctx}/vip/cmCoupon/delete?couponId1=${cmCoupon.svipCoupons.couponId1}"
                    onclick="return confirmx('确定删除该月份的优惠券吗?删除后该月份将不赠送优惠券', this.href)">删除</a>
             </td>