From 15643b219ddf09703ff344289a0142afef0fac6d Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期五, 05 七月 2024 15:31:48 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java        |    3 +
 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/GroupStatusEnum.java                |    4 +
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java      |   30 ++++++++++++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java                   |   22 +++++-----
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java |    5 +-
 5 files changed, 49 insertions(+), 15 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java
index e0ba88d..5e62082 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java
@@ -95,4 +95,7 @@
     @ApiModelProperty(value = "是收藏 1未收藏,2收藏")
     @JsonInclude(JsonInclude.Include.ALWAYS)
     private Integer isCollection;
+
+    @ApiModelProperty(value = "商品说明")
+    private String detail;
 }
diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/GroupStatusEnum.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/GroupStatusEnum.java
index 50abb01..01695bf 100644
--- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/GroupStatusEnum.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/GroupStatusEnum.java
@@ -14,7 +14,9 @@
 
     TO_FORM_A_GROUP(0, "待成团"),
     FORMED_INTO_A_GROUP(1, "已成团"),
-    GROUP_FAILURE(2, "成团失败");
+    GROUP_FAILURE(2, "成团失败"),
+    MS_FAILURE(3, "马上成团"),
+    YCT_FAILURE(4, "已参加团购");
     @EnumValue
     private final int code;
     @JsonValue
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
index ca40629..e7e27f7 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
@@ -318,12 +318,13 @@
         goodsGroupPurchaseInfoVO.setGroupPurchasePrice(one.getGroupPurchasePrice());
         goodsGroupPurchaseInfoVO.setGroupSize(one.getGroupSize());
         goodsGroupPurchaseInfoVO.setLimitNumber(one.getLimitNumber());
+        goodsGroupPurchaseInfoVO.setCurrentNumber(one.getCurrentNumber());
         goodsGroupPurchaseInfoVO.setStartTime(one.getStartTime());
         goodsGroupPurchaseInfoVO.setEndTime(one.getEndTime());
         goodsGroupPurchaseInfoVO.setDescription(one.getDescription());
+        goodsGroupPurchaseInfoVO.setDetail(byId.getDescription());
         goodsGroupPurchaseInfoVO.setStartStatus(one.getStartStatus());
         goodsGroupPurchaseInfoVO.setListingStatus(one.getListingStatus());
-        goodsGroupPurchaseInfoVO.setGroupStatus(one.getGroupStatus());
 
         LambdaQueryWrapper<MemberGoodsCollection> wrapper4= Wrappers.lambdaQuery();
         wrapper4.eq(MemberGoodsCollection::getDelFlag,0);
@@ -343,7 +344,17 @@
         if (data!=null){
             goodsGroupPurchaseInfoVO.setIsGoodsGroupPurchase(2);
             goodsGroupPurchaseInfoVO.setOrder(data);
+            goodsGroupPurchaseInfoVO.setGroupStatus(GroupStatusEnum.YCT_FAILURE);
         }else{
+            if (one.getGroupStatus().getCode()==0){
+                if (one.getGroupSize()-one.getCurrentNumber()<5){
+                    goodsGroupPurchaseInfoVO.setGroupStatus(GroupStatusEnum.MS_FAILURE);
+                }else{
+                    goodsGroupPurchaseInfoVO.setGroupStatus(one.getGroupStatus());
+                }
+            }else {
+                goodsGroupPurchaseInfoVO.setGroupStatus(one.getGroupStatus());
+            }
             goodsGroupPurchaseInfoVO.setIsGoodsGroupPurchase(1);
         }
 
@@ -396,11 +407,28 @@
         List<Long> goodsSkuIdList = data.stream()
                 .map(OrderVO::getGoodsSkuId)
                 .collect(Collectors.toList());
+
+        LambdaQueryWrapper< GoodsSku> wrapper1= Wrappers.lambdaQuery();
+        if (homeGoodsSkuDTO.getSkuName()!=null&&homeGoodsSkuDTO.getSkuName()!=""){
+            wrapper1.like(GoodsSku::getSkuName,homeGoodsSkuDTO.getSkuName());
+        }
+        List<GoodsSku> list = goodsSkuService.list(wrapper1);
+
+        List<Long> goodsSkuIdList1 = list.stream()
+                .map(GoodsSku::getId)
+                .collect(Collectors.toList());
+
         Page<GoodsGroupPurchase> page = new Page<>(homeGoodsSkuDTO.getPageCurr(), homeGoodsSkuDTO.getPageSize());
         LambdaQueryWrapper< GoodsGroupPurchase> wrapper= Wrappers.lambdaQuery();
         if (goodsSkuIdList.size()>0){
             wrapper.in(GoodsGroupPurchase::getId,goodsSkuIdList);
         }
+        if (goodsSkuIdList1.size()>0){
+            wrapper.in(GoodsGroupPurchase::getGoodsSkuId,goodsSkuIdList1);
+        }else {
+            goodsSkuIdList1.add(0L);
+            wrapper.in(GoodsGroupPurchase::getGoodsSkuId,goodsSkuIdList1);
+        }
         wrapper.eq(GoodsGroupPurchase::getListingStatus,0);
         wrapper.eq( GoodsGroupPurchase::getDelFlag,0);
         Page< GoodsGroupPurchase> page1 = this.page(page, wrapper);
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java
index 5c6e94f..1ba0080 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java
@@ -5,6 +5,7 @@
 import com.ruoyi.common.redis.service.RedisService;
 import com.ruoyi.goods.domain.GoodsSeckillAppointment;
 import com.ruoyi.goods.mapper.GoodsSeckillAppointmentMapper;
+import com.ruoyi.goods.mapper.GoodsSeckillMapper;
 import com.ruoyi.goods.service.IGoodsSeckillAppointmentService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.goods.service.IGoodsSeckillService;
@@ -31,7 +32,7 @@
 @Service
 public class GoodsSeckillAppointmentServiceImpl extends ServiceImpl<GoodsSeckillAppointmentMapper, GoodsSeckillAppointment> implements IGoodsSeckillAppointmentService {
    @Resource
-    private  IGoodsSeckillService goodsSeckillService;
+    private GoodsSeckillMapper goodsSeckillMapper;
 
     @Resource
     private SysUserClient sysUserClient;
@@ -45,7 +46,7 @@
         goodsSeckillAppointment.setFormId(homeGoodsSkuDTO.getFormId());
         this.save(goodsSeckillAppointment);
 
-        GoodsSeckill byId = goodsSeckillService.getById(homeGoodsSkuDTO.getGoodsSkuId());
+        GoodsSeckill byId = goodsSeckillMapper.selectById(homeGoodsSkuDTO.getGoodsSkuId());
 
         DelayTask delayTask = new DelayTask();
         delayTask.setDelFlag(0);
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index e5123ad..a4d7764 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -872,25 +872,24 @@
 
     @Override
     public void delOrderOne(MemberOrderListDTO memberOrderListDTO) {
-        baseMapper.deleteById(memberOrderListDTO.getId());
-        Order order = baseMapper.selectById(memberOrderListDTO.getId());
+
         Order byId = this.getById(memberOrderListDTO.getId());
         goodsSkuClient.GroupPurchaseNum1(byId.getGoodsSkuId(), SecurityConstants.INNER);
         this.removeById(memberOrderListDTO.getId());
-        if (order.getOrderStatus().getCode() == 2) {
+        if (byId.getOrderStatus().getCode() == 2) {
 
             updMembeOneDTO MembeOneDTO = new updMembeOneDTO();
             MembeOneDTO.setType(2);
-            MembeOneDTO.setMemberId(order.getMemberId());
-            MembeOneDTO.setMoney(order.getTotalAmount());
-            MembeOneDTO.setTotalPoints(order.getPoints());
+            MembeOneDTO.setMemberId(byId.getMemberId());
+            MembeOneDTO.setMoney(byId.getTotalAmount());
+            MembeOneDTO.setTotalPoints(byId.getPoints());
             memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER);
 
 
-            if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 2) {//支付宝
+            if (byId.getPaymentMethod() != null && byId.getPaymentMethod().getCode() == 2) {//支付宝
                 //获取支付信息
                 LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery();
-                paylogEntityWrapper.eq(Paylog::getOutTradeNo, order.getOrderNo());
+                paylogEntityWrapper.eq(Paylog::getOutTradeNo, byId.getOrderNo());
                 Paylog paylog = iPaylogService.getOne(paylogEntityWrapper);
                 if (paylog != null) {
                     boolean bo = paylogService.refundForAlipay(paylog.getOutTradeNo(), paylog.getTradeNo(), paylog.getPayMoney());
@@ -899,10 +898,10 @@
                     }
                 }
 
-            } else if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 1) {//微信
+            } else if (byId.getPaymentMethod() != null && byId.getPaymentMethod().getCode() == 1) {//微信
                 //获取支付信息
                 LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery();
-                paylogEntityWrapper.eq(Paylog::getOutTradeNo, order.getOrderNo());
+                paylogEntityWrapper.eq(Paylog::getOutTradeNo, byId.getOrderNo());
                 Paylog paylog = iPaylogService.getOne(paylogEntityWrapper);
                 if (paylog != null) {
                     String refundMoney = SinataUtil.doubleRetainTwo(paylog.getPayMoney() * 100d);
@@ -913,7 +912,7 @@
 
                     String regEx = "[^0-9]";
                     Pattern p = Pattern.compile(regEx);
-                    Matcher m = p.matcher(order.getOrderNo());
+                    Matcher m = p.matcher(byId.getOrderNo());
                     String ma = m.replaceAll("").trim();
                     boolean bo = paylogService.refundForWxpay(4, paylog.getTradeNo(), paylog.getOutTradeNo(), "R" + ma, totalFee, refundFee, "2");
                     if (!bo) {
@@ -923,6 +922,7 @@
                 }
             }
         }
+        baseMapper.deleteById(memberOrderListDTO.getId());
     }
 
     @Override

--
Gitblit v1.7.1