From 618d84889f07d23a1316816736f587ccca816496 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 28 七月 2025 18:49:53 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java |    5 ++++-
 ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml                      |    2 +-
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java      |   12 +++++++++++-
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppLotteryEventController.java |    9 +++++++--
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java          |    2 +-
 5 files changed, 24 insertions(+), 6 deletions(-)

diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppLotteryEventController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppLotteryEventController.java
index 06010bc..ed19f7b 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppLotteryEventController.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppLotteryEventController.java
@@ -270,7 +270,12 @@
 		TLotteryEvent lotteryEvent = lotteryEventService.getById(id);
 		TUserLotteryEventQuestions questionsServiceOne = userLotteryEventQuestionsService.getOne(new QueryWrapper<TUserLotteryEventQuestions>().eq("lottery_event_id", id).eq("user_id", userId));
 		if (null == questionsServiceOne) {
-			return R.fail("请先进行答题操作");
+			questionsServiceOne = new TUserLotteryEventQuestions();
+			questionsServiceOne.setId(IdUtils.simpleUUID());
+			questionsServiceOne.setUserId(userId);
+			questionsServiceOne.setLotteryEventId(id);
+			questionsServiceOne.setStatus(1);
+			questionsServiceOne.setCreateTime(LocalDateTime.now());
 		}
 		questionsServiceOne.setStatus(2);
 		questionsServiceOne.setEndTime(LocalDateTime.now());
@@ -280,7 +285,7 @@
 		int right = list.stream().filter(item -> 1 == item.getIsCorrect()).collect(Collectors.toList()).size();
 		BigDecimal multiply = new BigDecimal(right).divide(new BigDecimal(count), 4, BigDecimal.ROUND_HALF_UP).setScale(4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
 		questionsServiceOne.setCorrectAnswerRate(multiply);
-		userLotteryEventQuestionsService.updateById(questionsServiceOne);
+		userLotteryEventQuestionsService.saveOrUpdate(questionsServiceOne);
 		if (multiply.compareTo(lotteryEvent.getAccuracy()) >= 0) {
 			return R.ok(true);
 		}
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 65e76ea..15b1351 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
@@ -16,6 +16,7 @@
 import com.ruoyi.goods.domain.vo.*;
 import com.ruoyi.goods.mapper.lottery.LotteryEventMapper;
 import com.ruoyi.goods.service.lottery.*;
+import com.ruoyi.system.api.domain.dto.IntegralChangeDto;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord;
 import com.ruoyi.system.api.domain.poji.shop.Shop;
@@ -194,11 +195,13 @@
 				memberGiftRecord.setGiftId(userLotteryEvent.getId());
 				memberGiftRecord.setGiftFrom(1);
 				memberGiftRecord.setShopId(member.getRelationShopId());
+				memberGiftRecord.setVerifyStatus(1);
 				switch (lotteryEventPrize.getPrizeType()) {
 					case 1:
 						memberGiftRecord.setGiftType(1);
 						memberGiftRecord.setCouponId(userLotteryEvent.getObjectId());
 						memberGiftRecord.setCouponNumber(userLotteryEvent.getNumber());
+						memberGiftRecord.setVerifyStatus(2);
 						break;
 					case 2:
 						memberGiftRecord.setGiftType(2);
@@ -214,11 +217,11 @@
 					case 4:
 						memberGiftRecord.setGiftType(5);
 						memberGiftRecord.setIntegralNumber(userLotteryEvent.getNumber());
+						memberGiftRecord.setVerifyStatus(2);
 						break;
 				}
 				memberGiftRecord.setPrizeFrom(2);
 				memberGiftRecord.setCreateTime(new Date());
-				memberGiftRecord.setVerifyStatus(1);
 				remoteMemberService.saveMemberGiftRecord(memberGiftRecord);
 				return R.ok(lotteryEventPrize);
 			}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
index f263cf8..ecff163 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -2182,7 +2182,7 @@
         integralRecord.setUserId(integralChangeDto.getUserId());
         integralRecord.setChangeType(integralType);
         integralRecord.setCreateTime(new Date());
-        //1分享获取2平台建议获取3门店建议获取4每日签到5消费得积分
+        //1分享获取2平台建议获取3门店建议获取4每日签到5消费得积分6抽奖获得积分
         switch(integralType){
             case 1:
                 changeIntegral = appOtherConfigGetVo.getShareIntegral();
@@ -2230,6 +2230,16 @@
                 memberTotal.setUseableIntegral(memberTotal.getUseableIntegral()+changeIntegral);
                 memberTotal.setBuyFlag(1);
                 break;
+            case 6:
+                integralRecord.setChangeIntegral(changeIntegral);
+                integralRecord.setSurpIntegral(memberTotal.getUseableIntegral()+changeIntegral);
+                integralRecord.setChangeReason("抽奖获得积分");
+                integralRecord.setOrderId(integralChangeDto.getOrderId());
+                integralRecord.setOrderNo(integralChangeDto.getOrderNo());
+                memberTotal.setTotalIntegral(memberTotal.getTotalIntegral()+changeIntegral);
+                memberTotal.setUseableIntegral(memberTotal.getUseableIntegral()+changeIntegral);
+                memberTotal.setBuyFlag(1);
+                break;
             default:
                 break;
         }
diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml
index 5f11326..864f529 100644
--- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml
+++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml
@@ -37,6 +37,6 @@
         FROM t_member_gift_record
         WHERE del_flag = 0
           AND user_id = #{userId}
-        ORDER BY verify_status ASC
+        ORDER BY verify_status ASC,create_time desc
     </select>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
index 9d6ea99..4448186 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -3221,7 +3221,7 @@
         order.setOrderFrom(4);
         order.setShopId(shopId);
         order.setUserId(userId);
-        order.setOrderMoney(BigDecimal.ZERO);
+        order.setOrderMoney(goods.getSalesPrice());
         order.setCouponMoney(BigDecimal.ZERO);
         order.setDiscountMoney(BigDecimal.ZERO);
         order.setReceivableMoney(BigDecimal.ZERO);

--
Gitblit v1.7.1