diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java index 9fe2ff85f..3670b4001 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java @@ -198,6 +198,10 @@ public class WxCouponController extends BaseController { if (CollectionUtils.isNotEmpty(wxCouponChannelMapper.findList(query))) { return new ResultData(ResultData.ERROR, "有活动正在上架,请先下架。"); } + query.setStatus(EnumCouponChannelStatus.STATUS_BEFORE.getCode()); + if (CollectionUtils.isNotEmpty(wxCouponChannelMapper.findList(query))) { + return new ResultData(ResultData.ERROR, "有活动正在预审核."); + } } WxCoupon coupon = wxCouponService.getById(wxCoupon.getId(),wxCoupon.getTenantId()); diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCoupon.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCoupon.java index 4cd44e360..9ce53d899 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCoupon.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCoupon.java @@ -45,6 +45,9 @@ public class WxCoupon extends TenantEntity { @TableField(exist = false) protected String channels; + @TableField(exist = false) + protected String planChannels; + @TableField(exist = false) @SortColumn(column = "sale_price") private String salePriceStr; diff --git a/mallinkService/src/main/java/com/iformall/service/impl/TtCouponGoodsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/TtCouponGoodsServiceImpl.java index 6825254d6..ccf0b8f37 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/TtCouponGoodsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/TtCouponGoodsServiceImpl.java @@ -69,31 +69,52 @@ public class TtCouponGoodsServiceImpl implements TtCouponGoodsService { WxCouponChannel wxCouponChannel = new WxCouponChannel(); wxCouponChannel.updateTenantInfo(ttCouponVo); wxCouponChannel.setCouponIds(ids); - wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode()); //上架状态 - List list = wxCouponChannelMapper.findList(wxCouponChannel); - if (!list.isEmpty()) { - Map> groupBy = list.stream().collect(Collectors.groupingBy(WxCouponChannel::getCouponId)); - for (TtCouponVo temp : couponList) { - if (groupBy.get(temp.getId()) != null) { - List channels = new ArrayList<>(); - for (WxCouponChannel tempchannel : groupBy.get(temp.getId())) { - if (!channels.contains(tempchannel.getTargetAd())) { - channels.add(tempchannel.getTargetAd()); - } + wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode()); + List channellist = wxCouponChannelMapper.findList(wxCouponChannel); + Map> channelGroupCoupon = new HashMap<>(); + if(!channellist.isEmpty()){ + channelGroupCoupon = channellist.stream().collect(Collectors.groupingBy(WxCouponChannel::getCouponId)); + } + + //预审状态 + wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_BEFORE.getCode()); + List planchannellist = wxCouponChannelMapper.findList(wxCouponChannel); + Map> planChannelGroupCoupon = new HashMap<>(); + if(!planchannellist.isEmpty()){ + planChannelGroupCoupon = planchannellist.stream().collect(Collectors.groupingBy(WxCouponChannel::getCouponId)); + } + + for (TtCouponVo temp : couponList) { + List channels = new ArrayList<>(); + List couponChannels = channelGroupCoupon.get(temp.getId()); + if(couponChannels != null && !couponChannels.isEmpty()){ + for (WxCouponChannel tempchannel : couponChannels) { + if (!channels.contains(tempchannel.getTargetAd())) { + channels.add(tempchannel.getTargetAd()); } - String sss = JSON.toJSONString(channels); - temp.setChannels(sss); - } else { - temp.setChannels(""); } - } - } else { - for (TtCouponVo temp : couponList) { + if(!channels.isEmpty()){ + temp.setChannels(JSON.toJSONString(channels)); + }else{ temp.setChannels(""); } + List planChannels = new ArrayList<>(); + List planCouponChannels = planChannelGroupCoupon.get(temp.getId()); + if(planCouponChannels != null && !planCouponChannels.isEmpty()){ + for (WxCouponChannel tempchannel : planCouponChannels) { + if (!planChannels.contains(tempchannel.getTargetAd())) { + planChannels.add(tempchannel.getTargetAd()); + } + } + } + if(!planChannels.isEmpty()){ + temp.setPlanChannels(JSON.toJSONString(planChannels)); + }else{ + temp.setPlanChannels(""); + } } } return new ResultData(pageInfo);