ソースを参照

代金券代码提交

wuchen 2 ヶ月 前
コミット
deb5d32aca

+ 7 - 10
alien-entity/src/main/java/shop/alien/mapper/LifeDiscountCouponFriendRuleDetailMapper.java

@@ -44,17 +44,14 @@ public interface LifeDiscountCouponFriendRuleDetailMapper extends BaseMapper<Lif
             "ORDER BY endDate DESC")
     List<LifeDiscountCouponFriendRuleVo> getRuleList(@Param("storeId") String storeId);
 
-    @Select("SELECT a.*, c.name as couponName, c.id as couponId,si.store_name storeName, " +
-            "(SELECT\n" +
-            "\t\tsum( single_qty ) \n" +
-            "\tFROM\n" +
-            "\t\tlife_discount_coupon_store_friend b\n" +
-            "\tWHERE\n" +
-            "\t\tb.friend_store_user_id = a.friend_store_user_id \n" +
-            "\t\tAND b.coupon_id = a.coupon_id \n" +
-            "\t\tAND b.store_user_id = a.store_id) couponNum " +
+    @Select("SELECT a.*, c.name as couponName, c.id as couponId, " +
+            "si_friend.store_name AS storeName, " +
+            "(SELECT sum(single_qty) FROM life_discount_coupon_store_friend b " +
+            "WHERE b.friend_store_user_id = a.friend_store_user_id AND b.coupon_id = a.coupon_id AND b.store_user_id = a.store_id) couponNum " +
             "FROM life_discount_coupon_friend_rule_detail a " +
-            "LEFT JOIN life_discount_coupon c ON a.coupon_id = c.id LEFT JOIN store_info si on c.store_id = si.id " +
+            "LEFT JOIN life_discount_coupon c ON a.coupon_id = c.id " +
+            "LEFT JOIN store_user su ON a.friend_store_user_id = su.store_id "+
+            "LEFT JOIN store_info si_friend ON su.store_id = si_friend.id " +
             "WHERE a.rule_id = #{ruleId}")
     List<LifeDiscountCouponFriendRuleDetailVo> getDetailList(@Param("ruleId")String ruleId);
 }

+ 44 - 0
alien-store/src/main/java/shop/alien/store/controller/LifeDiscountCouponController.java

@@ -275,6 +275,50 @@ public class LifeDiscountCouponController {
         }
     }
 
+    @ApiOperation("我创建的优惠券列表(当前店铺创建的 life_discount_coupon)")
+    @ApiOperationSupport(order = 12)
+    @GetMapping("/getMyCreatedDiscountCouponList")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "storeId", value = "商户id", dataType = "String", paramType = "query", required = true),
+            @ApiImplicitParam(name = "status", value = "状态筛选", dataType = "String", paramType = "query", required = false),
+            @ApiImplicitParam(name = "couponStatus", value = "优惠券状态:0草稿,1正式", dataType = "int", paramType = "query", required = false),
+    })
+    public R<List<LifeDiscountCouponVo>> getMyCreatedDiscountCouponList(@ApiIgnore @TokenInfo UserLoginInfo userLoginInfo,
+                                                                         @RequestParam(value = "storeId") String storeId,
+                                                                         @RequestParam(value = "status", required = false) String status,
+                                                                         @RequestParam(value = "couponStatus", defaultValue = "1", required = false) int couponStatus) {
+        log.info("LifeDiscountCouponController.getMyCreatedDiscountCouponList?storeId={}", storeId);
+        try {
+            List<LifeDiscountCouponVo> list = lifeDiscountCouponService.getStoreAllCouponListPaginateNot(status, storeId, userLoginInfo, couponStatus, 1);
+            return R.data(list);
+        } catch (Exception e) {
+            log.error("LifeDiscountCouponController.getMyCreatedDiscountCouponList ERROR Msg={}", e.getMessage());
+            return R.fail("查询失败");
+        }
+    }
+
+    @ApiOperation("我创建的代金券列表(当前店铺创建的 life_coupon,type=1 代金券)")
+    @ApiOperationSupport(order = 12)
+    @GetMapping("/getMyCreatedVoucherList")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "storeId", value = "商户id", dataType = "String", paramType = "query", required = true),
+            @ApiImplicitParam(name = "status", value = "状态筛选", dataType = "String", paramType = "query", required = false),
+            @ApiImplicitParam(name = "couponStatus", value = "代金券状态:0草稿,1正式", dataType = "int", paramType = "query", required = false),
+    })
+    public R<List<LifeDiscountCouponVo>> getMyCreatedVoucherList(@ApiIgnore @TokenInfo UserLoginInfo userLoginInfo,
+                                                                 @RequestParam(value = "storeId") String storeId,
+                                                                 @RequestParam(value = "status", required = false) String status,
+                                                                 @RequestParam(value = "couponStatus", defaultValue = "1", required = false) int couponStatus) {
+        log.info("LifeDiscountCouponController.getMyCreatedVoucherList?storeId={}", storeId);
+        try {
+            List<LifeDiscountCouponVo> list = lifeDiscountCouponService.getStoreAllCouponListPaginateNot(status, storeId, userLoginInfo, couponStatus, 4);
+            return R.data(list);
+        } catch (Exception e) {
+            log.error("LifeDiscountCouponController.getMyCreatedVoucherList ERROR Msg={}", e.getMessage());
+            return R.fail("查询失败");
+        }
+    }
+
     @ApiOperation("获取优惠券状态")
     @ApiOperationSupport(order = 13)
     @GetMapping("/getCouponStatus")

+ 9 - 4
alien-store/src/main/java/shop/alien/store/controller/LifeDiscountCouponStoreFriendController.java

@@ -133,17 +133,22 @@ public class LifeDiscountCouponStoreFriendController {
 
     @ApiOperation("保存好友赠券规则")
     @PostMapping("/saveFriendCouponRule")
-    public R saveFriendCouponRule(@RequestBody LifeDiscountCouponFriendRule lifeDiscountCouponFriendRule) {
+    public R<LifeDiscountCouponFriendRuleVo> saveFriendCouponRule(@RequestBody LifeDiscountCouponFriendRule lifeDiscountCouponFriendRule) {
         log.info("LifeDiscountCouponStoreFriendController.saveFriendCouponRule?lifeDiscountCouponFriendRule={}", lifeDiscountCouponFriendRule.toString());
-        LifeDiscountCouponFriendRuleVo lifeDiscountCouponFriendRuleVo = lifeDiscountCouponStoreFriendService.saveFriendCouponRule(lifeDiscountCouponFriendRule);
-        return R.data(lifeDiscountCouponFriendRuleVo);
+        try {
+            LifeDiscountCouponFriendRuleVo lifeDiscountCouponFriendRuleVo = lifeDiscountCouponStoreFriendService.saveFriendCouponRule(lifeDiscountCouponFriendRule);
+            return R.data(lifeDiscountCouponFriendRuleVo, "保存成功");
+        } catch (Exception e) {
+            log.error("LifeDiscountCouponStoreFriendController.saveFriendCouponRule ERROR Msg={}", e.getMessage());
+            return R.fail("保存失败");
+        }
     }
 
     @ApiOperation("删除赠券规则")
     @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "id", dataType = "String", paramType = "query", required = true)
     })
     @GetMapping("/delFriendCouponRule")
-    private R delFriendCouponRule(@RequestParam(value = "id") String id) {
+    public R delFriendCouponRule(@RequestParam(value = "id") String id) {
         log.info("LifeDiscountCouponStoreFriendController.delFriendCouponRule?id={}", id);
         lifeDiscountCouponStoreFriendService.delFriendCouponRule(id);
         return R.success("删除成功");

+ 5 - 2
alien-store/src/main/java/shop/alien/store/service/impl/LifeDiscountCouponStoreFriendServiceImpl.java

@@ -509,7 +509,7 @@ public class LifeDiscountCouponStoreFriendServiceImpl extends ServiceImpl<LifeDi
                 lifeDiscountCouponFriendRuleDetailMapper.insertList(details);
             }
         }
-        return null;
+        return getRuleById(lifeDiscountCouponFriendRule.getId().toString());
     }
 
     @Override
@@ -530,8 +530,9 @@ public class LifeDiscountCouponStoreFriendServiceImpl extends ServiceImpl<LifeDi
         QueryWrapper<LifeDiscountCouponFriendRuleDetailVo> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("ldcsf.store_user_id", storeId);
         queryWrapper.eq("ldcsf.delete_flag", 0);
-        queryWrapper.eq("ldcsf.release_type", 1);
         if (Integer.valueOf(4).equals(type)) {
+            // 代金券:创建时为启用状态 2,需查出 release_type=1 与 2 的 LifeDiscountCouponStoreFriend 数据
+            queryWrapper.in("ldcsf.release_type", 1, 2);
             queryWrapper.isNotNull("ldcsf.voucher_id");
             if (StringUtils.isEmpty(friendStoreUserId)) {
                 queryWrapper.groupBy("ldcsf.friend_store_user_id").orderByDesc("couponNum");
@@ -540,6 +541,8 @@ public class LifeDiscountCouponStoreFriendServiceImpl extends ServiceImpl<LifeDi
             }
             return lifeDiscountCouponFriendRuleDetailMapper.getReceivedFriendVoucherList(queryWrapper);
         }
+        // 优惠券:保持原逻辑,只查 release_type=1
+        queryWrapper.eq("ldcsf.release_type", 1);
         queryWrapper.isNotNull("ldcsf.coupon_id");
         if (StringUtils.isEmpty(friendStoreUserId)) {
             queryWrapper.groupBy("ldcsf.friend_store_user_id").orderByDesc("couponNum");