浏览代码

fix:活动id

liujunchi 2 年之前
父节点
当前提交
5174472008

+ 12 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/req/OrderReq.java

@@ -43,7 +43,7 @@ public class OrderReq {
     @ApiModelProperty(value = "推荐用户id(有推荐人的情况)")
     private Long recomUserId;
 
-    @ApiModelProperty(value = "活动id",hidden = true)
+    @ApiModelProperty(value = "活动id")
     private Long activityId;
     @NotNull(message = "订单金额不能为空")
     @ApiModelProperty(value = "订单金额", required = true)
@@ -75,6 +75,17 @@ public class OrderReq {
         @ApiModelProperty(value = "调用业务创建方法返回", hidden = true)
         private OrderCreateRes createRes;
 
+        @ApiModelProperty(value = "活动id")
+        private Long activityId;
+
+        public Long getActivityId() {
+            return activityId;
+        }
+
+        public void setActivityId(Long activityId) {
+            this.activityId = activityId;
+        }
+
         public Long getUserId() {
             return userId;
         }

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MemberPriceSettingsSearch.java

@@ -15,6 +15,17 @@ public class MemberPriceSettingsSearch extends QueryInfo{
 	@ApiModelProperty("分享老师id")
 	private Long userId;
 
+	@ApiModelProperty("活动id")
+	private Long  activityId;
+
+	public Long getActivityId() {
+		return activityId;
+	}
+
+	public void setActivityId(Long activityId) {
+		this.activityId = activityId;
+	}
+
 	public Long getUserId() {
 		return userId;
 	}

+ 9 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityPlanService.java

@@ -14,6 +14,7 @@ import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
 import com.yonge.cooleshow.biz.dal.vo.res.OrderCreateRes;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.enums.ActivityShareEnum;
+import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 
 /**
  * 活动计划表 服务类
@@ -111,4 +112,12 @@ public interface ActivityPlanService extends IService<ActivityPlan>  {
 	 * @return
 	 */
 	ActivityPlanVo activityShare(ActivityShareEnum type, Long userId);
+
+	/**
+	 * 检查活动是否进行中
+	 *
+	 * @param activityId 活动id
+	 * @return
+	 */
+	YesOrNoEnum state(Long activityId);
 }

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/ActivityPlanServiceImpl.java

@@ -116,6 +116,9 @@ public class ActivityPlanServiceImpl extends ServiceImpl<ActivityPlanDao, Activi
 
     @Override
     public ActivityPlanVo detail(Long id) {
+        if (id == null) {
+            return null;
+        }
         ActivityPlanVo detail = baseMapper.detail(id);
         if (null != detail) {
             if (ActivityTypeEnum.EVALUATION.equals(detail.getActivityType())) {
@@ -500,6 +503,16 @@ public class ActivityPlanServiceImpl extends ServiceImpl<ActivityPlanDao, Activi
         return detail;
     }
 
+    @Override
+    public YesOrNoEnum state(Long activityId) {
+        List<ActivityPlan> list = this.lambdaQuery()
+                                      .eq(ActivityPlan::getId, activityId)
+                                      .eq(ActivityPlan::getActivityStart, 1)
+                                      .list();
+        return CollectionUtils.isEmpty(list)?YesOrNoEnum.NO:YesOrNoEnum.YES;
+
+    }
+
     /**
      * 参与活动消息
      */

+ 8 - 8
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MemberPriceSettingsServiceImpl.java

@@ -90,10 +90,9 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
 
         OrderCreateRes orderCreateRes = new OrderCreateRes();
         BigDecimal couponAmount = BigDecimal.ZERO;
-        // 获取活动的优惠信息
-        ActivityPlanVo activityPlanVo = activityPlanService.activityShare(ActivityShareEnum.VIP,
-                                                                          orderReqInfo.getRecomUserId());
-        if (activityPlanVo != null) {
+        ActivityPlanVo activityPlanVo = activityPlanService.detail(orderReqInfo.getActivityId());
+
+        if (activityPlanVo != null && activityPlanVo.getActivityState() == 1) {
             for (ActivityPlanRewardDto activityPlanRewardDto : activityPlanVo.getActivityRewardList()) {
                 if (activityPlanRewardDto.getActivityReward().getUnit().getCode().equals(detail.getPeriod().getCode())) {
                     couponAmount = activityPlanRewardDto.getActivityReward().getDiscountPrice();
@@ -210,9 +209,11 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
     public MemberPriceVo getVipShare(MemberPriceSettingsSearch query) {
         MemberPriceVo memberPriceVo = new MemberPriceVo();
         List<MemberPriceSettingsVo> memberPriceSettingsVos = baseMapper.selectList(query);
-        ActivityPlanVo activityPlan = activityPlanService.activityShare(ActivityShareEnum.VIP, query.getUserId());
-        if (activityPlan == null) {
-            memberPriceVo.setList(memberPriceSettingsVos);
+
+        memberPriceVo.setList(memberPriceSettingsVos);
+        ActivityPlanVo activityPlan = activityPlanService.detail(query.getActivityId());
+
+        if (activityPlan == null || activityPlan.getActivityState() != 1) {
             return memberPriceVo;
         }
 
@@ -230,7 +231,6 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
                 }
             }
         }
-        memberPriceVo.setList(memberPriceSettingsVos);
         return memberPriceVo;
     }
 

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

@@ -978,10 +978,18 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
 
         YesOrNoEnum discount = YesOrNoEnum.NO;
         if (ChargeTypeEnum.VIP.equals(musicSheet.getChargeType())) {
-            discount = activityPlanService.activityShare(ActivityShareEnum.VIP, sysUser.getId()) ==null?YesOrNoEnum.NO:YesOrNoEnum.YES;
+            ActivityPlanVo activityPlanVo = activityPlanService.activityShare(ActivityShareEnum.VIP, sysUser.getId());
+            if (activityPlanVo != null) {
+                result.setActivityId(activityPlanVo.getId());
+                discount = YesOrNoEnum.YES;
+            }
         } else if (ChargeTypeEnum.CHARGE.equals(musicSheet.getChargeType())) {
-            discount = activityPlanService.activityShare(ActivityShareEnum.MUSIC_SHEET,
-                                                                          sysUser.getId()) ==null?YesOrNoEnum.NO:YesOrNoEnum.YES;
+            ActivityPlanVo activityPlanVo = activityPlanService.activityShare(ActivityShareEnum.MUSIC_SHEET,
+                                                                              sysUser.getId());
+            if (activityPlanVo != null) {
+                result.setActivityId(activityPlanVo.getId());
+                discount = YesOrNoEnum.YES;
+            }
         }
         result.setDiscount(discount);
         result.setTeacherId(sysUser.getId());

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderServiceImpl.java

@@ -294,6 +294,7 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
             info.setSubOrderNo(Long.toString(subOrderNo));
             info.setUserId(orderReq.getUserId());
             info.setRecomUserId(orderReq.getRecomUserId());
+            info.setActivityId(orderReq.getActivityId());
 
             HttpResponseResult<OrderCreateRes> createResult = createFunction.apply(info);
             OrderCreateRes createRes = createResult.getData();
@@ -316,7 +317,6 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
             actualPrice = actualPrice.add(createRes.getActualPrice());
 
             info.setCreateRes(createRes);
-            orderReq.setActivityId(createRes.getActivityId());
         }
 
         //验证金额

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/ShareProfitVo.java

@@ -32,6 +32,9 @@ public class ShareProfitVo {
     @ApiModelProperty("专属优惠 0:否 1:是")
     private YesOrNoEnum discount;
 
+    @ApiModelProperty("活动id")
+    private Long activityId;
+
     @ApiModelProperty("乐谱信息")
     private MusicSheetDetailVo musicSheet;
 
@@ -44,6 +47,14 @@ public class ShareProfitVo {
     @ApiModelProperty("会员信息")
     private MemberPriceSettingsVo vip;
 
+    public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+
     public Long getTeacherId() {
         return teacherId;
     }

+ 15 - 0
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/open/OpenShareController.java

@@ -4,11 +4,13 @@ import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.dto.search.ShareProfitParam;
 import com.yonge.cooleshow.biz.dal.service.*;
+import com.yonge.cooleshow.biz.dal.vo.CheckVo;
 import com.yonge.cooleshow.biz.dal.vo.MusicActivityVo;
 import com.yonge.cooleshow.biz.dal.vo.ShareProfitVo;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.enums.ActivityShareEnum;
+import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.slf4j.Logger;
@@ -99,4 +101,17 @@ public class OpenShareController extends BaseController {
 
         return succeed(activityVo);
     }
+
+
+    @ApiOperation(value = "检查活动状态", notes = "活动id")
+    @PostMapping(value = "/activity/state/{id}")
+    public HttpResponseResult<CheckVo> state(@PathVariable Long id) {
+        // SysUser user = sysUserFeignService.queryUserInfo();
+
+        YesOrNoEnum state = activityPlanService.state(id);
+
+        CheckVo checkVo = new CheckVo();
+        checkVo.setCheck(state);
+        return succeed(checkVo);
+    }
 }