huliguo
7 天以前 8059e9b991c15edbac508e6b658a0d9571d11b1c
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/business/MerLotteryEventController.java
@@ -5,8 +5,8 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.goods.api.domain.LotteryEvent;
import com.ruoyi.goods.api.domain.LotteryEventPrize;
import com.ruoyi.goods.api.domain.TLotteryEvent;
import com.ruoyi.goods.api.domain.TLotteryEventPrize;
import com.ruoyi.goods.domain.dto.DelShopLotteryDrawDto;
import com.ruoyi.goods.domain.dto.ShopLotteryDrawListDto;
import com.ruoyi.goods.domain.dto.ShopWinningRecordDto;
@@ -19,9 +19,11 @@
import com.ruoyi.goods.service.lottery.IUserLotteryEventService;
import com.ruoyi.system.api.domain.poji.goods.Goods;
import com.ruoyi.system.api.domain.poji.shop.Shop;
import com.ruoyi.system.api.service.RemoteMemberService;
import com.ruoyi.system.api.service.RemoteShopService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -36,6 +38,7 @@
 * @author zhibing.pu
 * @Date 2025/5/8 18:13
 */
@Slf4j
@Api(value = "商户端商户相关接口", tags = "商户端商户相关接口", description = "商户端商户相关接口")
@RestController
@RequestMapping("/mer/lotteryEvent")
@@ -56,6 +59,9 @@
   @Resource
   private GoodsService goodsService;
   
   @Resource
   private RemoteMemberService remoteMemberService;
   
   @RequestMapping(value = "/getShopLotteryDrawList", method = RequestMethod.POST)
   @ApiOperation(value = "获取门店抽奖活动列表【2.0】")
@@ -75,15 +81,15 @@
   @RequestMapping(value = "/delShopLotteryDraw", method = RequestMethod.POST)
   @ApiOperation(value = "门店删除抽奖活动【2.0】")
   public R delShopLotteryDraw(@RequestBody DelShopLotteryDrawDto dto) {
      LotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
      TLotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
      if (null == lotteryEvent) {
         return R.fail("抽奖活动不存在");
      }
      if (LocalDateTime.now().isAfter(lotteryEvent.getStartTime())) {
         return R.fail("删除失败");
         return R.fail("活动已开始,不能删除!");
      }
      if (!lotteryEvent.getShopId().equals(dto.getShopId())) {
         return R.fail("删除失败");
         return R.fail("删除失败,该活动不属于该店铺");
      }
      lotteryEvent.setDelFlag(1);
      lotteryEventService.updateById(lotteryEvent);
@@ -93,15 +99,15 @@
   
   @RequestMapping(value = "/getShopLotteryDrawInfo", method = RequestMethod.POST)
   @ApiOperation(value = "获取门店抽奖详情【2.0】")
   public R<LotteryEvent> getShopLotteryDrawInfo(@RequestBody DelShopLotteryDrawDto dto) {
      LotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
      if (null == lotteryEvent) {
   public R<TLotteryEvent> getShopLotteryDrawInfo(@RequestBody DelShopLotteryDrawDto dto) {
      TLotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
      if (null == lotteryEvent || 1 == lotteryEvent.getDelFlag()) {
         return R.fail("抽奖活动不存在");
      }
      if (!lotteryEvent.getShopId().equals(dto.getShopId())) {
      if (!lotteryEvent.getShopId().equals(dto.getShopId().intValue())) {
         return R.fail("查询失败");
      }
      List<LotteryEventPrize> list = lotteryEventPrizeService.list(new LambdaQueryWrapper<LotteryEventPrize>().eq(LotteryEventPrize::getLotteryEventId, dto.getId()));
      List<TLotteryEventPrize> list = lotteryEventPrizeService.list(new LambdaQueryWrapper<TLotteryEventPrize>().eq(TLotteryEventPrize::getLotteryEventId, dto.getId()));
      lotteryEvent.setPrizes(list);
      return R.ok(lotteryEvent);
   }
@@ -109,17 +115,21 @@
   
   @RequestMapping(value = "/editShopLotteryDraw", method = RequestMethod.POST)
   @ApiOperation(value = "保存门店抽奖【2.0】")
   public R editShopLotteryDraw(@RequestBody LotteryEvent lotteryEvent) {
   public R editShopLotteryDraw(@RequestBody TLotteryEvent lotteryEvent) {
      if (lotteryEvent.getId() == null) {
         lotteryEvent.setId(IdUtils.simpleUUID());
         String weiXinQrCode = remoteMemberService.getWeiXinQrCode("id=" + lotteryEvent.getId() + "&activityType=" + lotteryEvent.getActivityType(), "/pages/turntable/index");
         lotteryEvent.setWxMiniProgramQrCode(weiXinQrCode);
         lotteryEvent.setCreateTime(LocalDateTime.now());
         lotteryEvent.setCreateUserId(lotteryEvent.getCreateUserId());
      }
      lotteryEvent.setUpdateTime(LocalDateTime.now());
      lotteryEvent.setUpdateUserId(SecurityUtils.getUserId());
      lotteryEventService.saveOrUpdate(lotteryEvent);
      //先删除原有的奖品
      lotteryEventPrizeService.remove(new LambdaQueryWrapper<LotteryEventPrize>().eq(LotteryEventPrize::getLotteryEventId, lotteryEvent.getId()));
      lotteryEventPrizeService.remove(new LambdaQueryWrapper<TLotteryEventPrize>().eq(TLotteryEventPrize::getLotteryEventId, lotteryEvent.getId()));
      //添加新的奖品
      List<LotteryEventPrize> prizes = lotteryEvent.getPrizes();
      List<TLotteryEventPrize> prizes = lotteryEvent.getPrizes();
      prizes.forEach(s -> {
         s.setId(IdUtils.simpleUUID());
         if (s.getPrizeType() == 2 && StringUtils.isEmpty(s.getObjectName())) {
@@ -135,11 +145,11 @@
   @RequestMapping(value = "/getShopWinningRecord", method = RequestMethod.POST)
   @ApiOperation(value = "获取中奖记录列表【2.0】")
   public R<Page<ShopWinningRecordVo>> getShopWinningRecord(@RequestBody ShopWinningRecordDto dto) {
      LotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
      TLotteryEvent lotteryEvent = lotteryEventService.getById(dto.getId());
      if (null == lotteryEvent) {
         return R.fail("抽奖活动不存在");
      }
      if (!lotteryEvent.getShopId().equals(dto.getShopId())) {
      if (!lotteryEvent.getShopId().equals(dto.getShopId().intValue())) {
         return R.fail("查询失败");
      }
      Page<ShopWinningRecordVo> page = new Page<>();