瀏覽代碼

奖品停用规则调整

Eric 2 年之前
父節點
當前提交
0a1a2ba758

+ 15 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/ActivityRewardServiceImpl.java

@@ -8,7 +8,6 @@ import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.dao.ActivityRewardChangeStockDao;
 import com.yonge.cooleshow.biz.dal.dao.ActivityRewardDao;
-import com.yonge.cooleshow.biz.dal.dto.ActivityPlanRewardDto;
 import com.yonge.cooleshow.biz.dal.dto.ActivityRewardDto;
 import com.yonge.cooleshow.biz.dal.dto.UserParam;
 import com.yonge.cooleshow.biz.dal.dto.search.ActivityRewardChangeStockSearch;
@@ -23,11 +22,11 @@ import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
-import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.mapper.CouponInfoMapper;
 import com.yonge.cooleshow.biz.dal.service.ActivityPlanRewardService;
 import com.yonge.cooleshow.biz.dal.service.ActivityPlanService;
 import com.yonge.cooleshow.biz.dal.service.ActivityRewardService;
+import com.yonge.cooleshow.biz.dal.service.CouponIssueService;
 import com.yonge.cooleshow.biz.dal.service.MemberPriceSettingsService;
 import com.yonge.cooleshow.biz.dal.service.PianoRoomChangeRecordService;
 import com.yonge.cooleshow.biz.dal.service.SysMessageService;
@@ -35,6 +34,7 @@ import com.yonge.cooleshow.biz.dal.vo.ActivityRewardChangeStockVo;
 import com.yonge.cooleshow.biz.dal.vo.ActivityRewardVo;
 import com.yonge.cooleshow.biz.dal.wrapper.StatGroupWrapper;
 import com.yonge.cooleshow.common.enums.CacheNameEnum;
+import com.yonge.cooleshow.common.enums.EStatus;
 import com.yonge.cooleshow.common.enums.RewardTypeEnum;
 import com.yonge.cooleshow.common.enums.UnitEnum;
 import com.yonge.toolset.base.exception.BizException;
@@ -52,13 +52,13 @@ import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.stream.Collectors;
-import java.util.*;
 
 
 @Service
@@ -190,6 +190,18 @@ public class ActivityRewardServiceImpl extends ServiceImpl<ActivityRewardDao, Ac
 
     @Override
     public Boolean updateStatus(Long id, Integer status, Long userId) {
+
+        // 更新奖品状态为禁用时,需要判断是否已经关联活动;若存在关联数据,提示用户先解除绑定关系
+        if (EStatus.ENABLE.match(status)) {
+
+            int rewardNums = activityPlanRewardService.count(Wrappers.<ActivityPlanReward>lambdaQuery()
+                    .eq(ActivityPlanReward::getRewardId, id));
+
+            if (rewardNums > 0) {
+                throw new BizException("奖品已被活动关联");
+            }
+        }
+
         ActivityReward activityReward = new ActivityReward();
         activityReward.setId(id);
         //更改活动状态