From a5c5fc7c86c37519dbe42b148b47ebfc00f89ca9 Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期三, 09 七月 2025 10:56:42 +0800 Subject: [PATCH] bug修改 --- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java | 42 +++++++++++++++++++++++++++++------------- 1 files changed, 29 insertions(+), 13 deletions(-) diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java index 3fa41a3..d8c41c3 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java @@ -91,7 +91,7 @@ //答题正确率 if (5 == lotteryEvent.getActivityType()) { TUserLotteryEventQuestions questionsServiceOne = userLotteryEventQuestionsAnswersService.getOne(new QueryWrapper<TUserLotteryEventQuestions>().eq("lottery_event_id", id).eq("user_id", userId)); - if (null == questionsServiceOne) { + if (null != questionsServiceOne) { vo.setCorrectAnswerRate(questionsServiceOne.getCorrectAnswerRate()); } } @@ -102,10 +102,12 @@ userLotteryEventVo.setName(s.getObjectName()); userLotteryEventVo.setPrizeType(s.getPrizeType()); userLotteryEventVo.setNumber(s.getNumber()); - MemberGiftRecord memberGiftRecord = remoteMemberService.getVerifyPrizeByGiftId(s.getId()).getData(); - userLotteryEventVo.setVerifyCode("3-" + memberGiftRecord.getPrizeId()); - userLotteryEventVo.setIsVerify(1 == memberGiftRecord.getVerifyStatus() ? 0 : 1); - userLotteryEventVo.setVerifyTime(null == memberGiftRecord.getVerifyTime() ? "" : sdf.format(memberGiftRecord.getVerifyTime())); + if (Arrays.asList(2, 3).contains(s.getPrizeType())) { + MemberGiftRecord memberGiftRecord = remoteMemberService.getVerifyPrizeByGiftId(s.getId()).getData(); + userLotteryEventVo.setVerifyCode("3-" + memberGiftRecord.getPrizeId()); + userLotteryEventVo.setIsVerify(1 == memberGiftRecord.getVerifyStatus() ? 0 : 1); + userLotteryEventVo.setVerifyTime(null == memberGiftRecord.getVerifyTime() ? "" : sdf.format(memberGiftRecord.getVerifyTime())); + } Member member = remoteMemberService.getMember(userId).getData(); userLotteryEventVo.setVerifyShop("全部门店"); if (null != member && null != member.getRelationShopId()) { @@ -126,7 +128,7 @@ * @return */ @Override - public R lotteryDraw(String id) { + public R<TLotteryEventPrize> lotteryDraw(String id) { Long userId = SecurityUtils.getUserId(); Member member = remoteMemberService.getMember(userId).getData(); TLotteryEvent lotteryEvent = this.getById(id); @@ -163,7 +165,7 @@ Collections.shuffle(list); //开始获取随机数 int random = new Random().nextInt(list.size()); - TLotteryEventPrize lotteryEventPrize = lotteryEventPrizeList.get(random); + TLotteryEventPrize lotteryEventPrize = list.get(random); //添加中奖商品 TUserLotteryEvent userLotteryEvent = new TUserLotteryEvent(); userLotteryEvent.setId(IdUtils.simpleUUID()); @@ -218,7 +220,7 @@ memberGiftRecord.setCreateTime(new Date()); memberGiftRecord.setVerifyStatus(1); remoteMemberService.saveMemberGiftRecord(memberGiftRecord); - return R.ok(); + return R.ok(lotteryEventPrize); } } catch (Exception e) { e.printStackTrace(); @@ -263,6 +265,8 @@ .eq(TLotteryEvent::getActivityType, dto.getActivityType())//类型相同的 .between(TLotteryEvent::getStartTime, dto.getStartTime(), dto.getEndTime())//开始时间在这个活动的(开始-结束)范围内的 .or() + .eq(TLotteryEvent::getDelFlag, 0)//未删除的 + .eq(TLotteryEvent::getActivityType, dto.getActivityType())//类型相同的 .between(TLotteryEvent::getEndTime, dto.getStartTime(), dto.getEndTime())//结束时间在这个活动的(开始-结束)范围内的 ); if (null != lotteryEvents && !lotteryEvents.isEmpty()) { @@ -364,9 +368,14 @@ } @Override - public List<MgtLotteryEventPageVo> pageMgtLotteryEvent(Page<MgtLotteryEventPageVo> page, MgtLotteryEventPageDto dto) { + public Page<MgtLotteryEventPageVo> pageMgtLotteryEvent( MgtLotteryEventPageDto dto) { Map<Long,Shop> map; List<Shop> shopList; + Page<MgtLotteryEventPageVo> page = new Page<>(); + page.setSize(dto.getPageSize()); + page.setCurrent(dto.getPageNum()); + page.setOptimizeCountSql(false); + if (dto.getCreateObject()!=null){ //根据 条件-创建对象 模糊查找门店集合 shopList=remoteShopService.getShopListByShopName(dto.getCreateObject()); @@ -385,12 +394,17 @@ } else { map = new HashMap<>(); } - + //获取分页数据 + Long total=this.baseMapper.pageMgtLotteryEventCount( dto); + page.setTotal(total); + page.setCurrent(dto.getPageNum()); + page.setPages(total/dto.getPageSize()); //获取分页信息 - List<MgtLotteryEventPageVo> voList = this.baseMapper.pageMgtLotteryEvent(page, dto); + dto.setOffset((dto.getPageNum() - 1) * dto.getPageSize()); + List<MgtLotteryEventPageVo> voList = this.baseMapper.pageMgtLotteryEvent(dto); //填充创建对象 voList.forEach(x->{ - if (x.getActivityType()!=6){ + if (null == x.getShopId()){ x.setCreateObject("平台创建"); }else { //线下抽奖,获取门店名称 @@ -406,7 +420,8 @@ } }); - return voList; + page.setRecords(voList); + return page; } @Override @@ -469,6 +484,7 @@ //1.奖品数据删除 /* lotteryEventPrizeService.remove(new LambdaQueryWrapper<TLotteryEventPrize>() .eq(TLotteryEventPrize::getLotteryEventId,lotteryEvent.getId()));*/ + lotteryEventPrizeService.deleteByLotteryEventId(lotteryEvent.getId()); //2.答题类型 if (lotteryEvent.getActivityType().equals(5)) { -- Gitblit v1.7.1