From d5a62c975afbaff26d17b61fa7b9fde7e2cb035d Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期六, 27 七月 2024 11:44:03 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtAuctionSalesroomGoodsQuery.java |    2 
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java                                   |    4 +
 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml                                         |   12 ++++
 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml                                  |    2 
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java                |   24 +++----
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java                  |   32 ++++++----
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java                            |   29 +++++++--
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java                        |    5 +
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java                               |   21 ++++++
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/vo/GoodsGroupPurchaseVO.java               |    3 +
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java                              |    1 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml                                            |    2 
 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml                                   |   13 ++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java                  |   13 ++++
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java                             |    5 +
 15 files changed, 127 insertions(+), 41 deletions(-)

diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtAuctionSalesroomGoodsQuery.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtAuctionSalesroomGoodsQuery.java
index 918eaf5..415cc72 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtAuctionSalesroomGoodsQuery.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtAuctionSalesroomGoodsQuery.java
@@ -20,6 +20,6 @@
     private Long auctionSalesroomId;
 
     @ApiModelProperty(value = "商品名称")
-    private String goodsName;
+    private String goodsSkuName;
 
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
index ec32e41..72d7a4b 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
@@ -1210,7 +1210,7 @@
                 .between(StringUtils.isNotNull(query.getStartTime()) && StringUtils.isNotNull(
                                 query.getEndTime()), AuctionSalesroom::getStartTime, query.getStartTime(),
                         query.getEndTime())
-                .orderByAsc(AuctionSalesroom::getCreateTime)
+                .orderByDesc(AuctionSalesroom::getCreateTime)
                 .page(new Page<>(query.getPageCurr(), query.getPageSize()));
         List<AuctionSalesroom> records = page.getRecords();
         if (StringUtils.isNull(records)) {
@@ -1256,7 +1256,7 @@
                 vo.setAuctionSalesroomGoodsVOS(collect);
                 if (StringUtils.isNotNull(vo.getCurrentAuctionSalesroomGoods())) {
                     int index = collect.indexOf(vo.getCurrentAuctionSalesroomGoods());
-                    if (collect.size() > 1) {
+                    if (collect.size() > 1 && index < collect.size() - 1) {
                         vo.setNextAuctionSalesroomGoods(collect.get(index + 1));
                     }
                     // 分页查询当前拍品出价信息
@@ -1371,8 +1371,8 @@
     public PageDTO<MgtAuctionSalesroomGoodsVO> backupGoods(MgtAuctionSalesroomGoodsQuery query) {
         Page<AuctionSalesroomGoods> page = new Page<>(query.getPageCurr(), query.getPageSize());
         Set<Long> goodsSkuIdSet = null;
-        if (StringUtils.isNotBlank(query.getGoodsName())) {
-            List<GoodsSku> data = goodsSkuClient.getGoodsByName(query.getGoodsName(),
+        if (StringUtils.isNotBlank(query.getGoodsSkuName())) {
+            List<GoodsSku> data = goodsSkuClient.getGoodsByName(query.getGoodsSkuName(),
                     SecurityConstants.INNER).getData();
             if (StringUtils.isNotEmpty(data)) {
                 goodsSkuIdSet = data.stream().map(GoodsSku::getId)
@@ -1650,7 +1650,6 @@
     public void stopCurrentAuctionSalesroom(Long auctionSalesroomId)
             throws JsonProcessingException {
         LambdaQueryWrapper<AuctionSalesroomGoods> wrapper = Wrappers.lambdaQuery();
-        wrapper.eq(AuctionSalesroomGoods::getStatus, AuctionGoodsStatusEnum.WAITING);
         wrapper.eq(AuctionSalesroomGoods::getAuctionSalesroomId, auctionSalesroomId);
         wrapper.orderByDesc(AuctionSalesroomGoods::getSortNum);
         List<AuctionSalesroomGoods> auctionSalesroomGoods = auctionSalesroomGoodsMapper.selectList(
@@ -1666,19 +1665,18 @@
         auctionSalesroom.setStatus(AuctionStartStatusEnum.ENDED);
         auctionSalesroom.setEndTime(LocalDateTime.now());
         auctionSalesroomMapper.updateById(auctionSalesroom);
-
+        auctionSalesroomGoods = auctionSalesroomGoods.stream()
+                .filter(goods -> goods.getStatus().equals(AuctionGoodsStatusEnum.WAITING)).collect(
+                        Collectors.toList());
         if (StringUtils.isNotEmpty(auctionSalesroomGoods)) {
             List<GoodsStockUpdDTO> dtoList = new ArrayList<>();
             for (AuctionSalesroomGoods salesroomGoods : auctionSalesroomGoods) {
                 salesroomGoods.setStatus(AuctionGoodsStatusEnum.ENDED);
                 // 等待中的商品退库存
-                if (salesroomGoods.getStatus().equals(AuctionGoodsStatusEnum.WAITING)) {
-                    GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
-                    goodsStockUpdDTO.setGoodsSkuId(salesroomGoods.getGoodsSkuId());
-                    goodsStockUpdDTO.setAuctionStock(salesroomGoods.getSalesroomStock());
-                    dtoList.add(goodsStockUpdDTO);
-                }
-
+                GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
+                goodsStockUpdDTO.setGoodsSkuId(salesroomGoods.getGoodsSkuId());
+                goodsStockUpdDTO.setAuctionStock(salesroomGoods.getSalesroomStock());
+                dtoList.add(goodsStockUpdDTO);
             }
             // 批量更新商品库存
             auctionSalesroomGoodsMapper.updateBatchById(auctionSalesroomGoods);
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/vo/GoodsGroupPurchaseVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/vo/GoodsGroupPurchaseVO.java
index 674e34a..bca0a71 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/vo/GoodsGroupPurchaseVO.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/vo/GoodsGroupPurchaseVO.java
@@ -41,6 +41,9 @@
     @ApiModelProperty(value = "已购商品数")
     private Integer buyNumber;
 
+    @ApiModelProperty(value = "已参团人数")
+    private Integer groupedMemberNumber;
+
     @ApiModelProperty(value = "团购开始时间")
     private LocalDateTime startTime;
 
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java
index 4da224a..377a542 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.goods.controller.management.vo.GoodsGroupPurchaseVO;
 import com.ruoyi.system.api.domain.GoodsGroupPurchase;
+import java.util.List;
 import org.apache.ibatis.annotations.Param;
 
 /**
@@ -23,4 +24,8 @@
      */
     Page<GoodsGroupPurchaseVO> getGoodsGroupPurchasePage(@Param("goodsSkuName") String goodsSkuName,
             @Param("page") Page<GoodsGroupPurchaseVO> page);
+
+    void updateListingStatusBatch(
+            @Param("listingStatus") Integer listingStatus,
+            @Param("goodsGroupPurchaseList") List<GoodsGroupPurchase> goodsGroupPurchaseList);
 }
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java
index 4f64e79..21ccdd6 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.goods.controller.management.vo.GoodsSeckillVO;
 import com.ruoyi.system.api.domain.GoodsSeckill;
+import java.util.List;
 import org.apache.ibatis.annotations.Param;
 
 /**
@@ -18,4 +19,7 @@
 
     Page<GoodsSeckillVO> getGoodsSeckillPage(@Param("goodsSkuName") String goodsSkuName,
             @Param("page") Page<GoodsSeckillVO> page);
+
+    void updateListingStatusBatch(@Param("listingStatus") Integer listingStatus,
+            @Param("goodsSeckillList") List<GoodsSeckill> goodsSeckillList);
 }
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 7a5bdd3..aa0f0fa 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
@@ -8,8 +8,12 @@
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.collect.Lists;
 import com.ruoyi.common.core.constant.SecurityConstants;
-import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.enums.*;
+import com.ruoyi.common.core.enums.ClientTypeEnum;
+import com.ruoyi.common.core.enums.GroupStatusEnum;
+import com.ruoyi.common.core.enums.ListingStatusEnum;
+import com.ruoyi.common.core.enums.OrderFromEnum;
+import com.ruoyi.common.core.enums.OrderStatusEnum;
+import com.ruoyi.common.core.enums.StartStatusEnum;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.StringUtils;
@@ -34,7 +38,12 @@
 import com.ruoyi.system.api.domain.GoodsSku;
 import com.ruoyi.system.api.domain.Order;
 import com.ruoyi.system.api.domain.WebsocketMessageDTO;
-import com.ruoyi.system.api.domain.dto.*;
+import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
+import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
+import com.ruoyi.system.api.domain.dto.ListStatusDTO;
+import com.ruoyi.system.api.domain.dto.OrderDTO;
+import com.ruoyi.system.api.domain.dto.OrderUpdDTO;
+import com.ruoyi.system.api.domain.dto.RefundDTO;
 import com.ruoyi.system.api.domain.vo.GoodsGroupPurchaseInfoVO;
 import com.ruoyi.system.api.domain.vo.OrderVO;
 import com.ruoyi.system.api.domain.vo.WdGoodsGroupPurchaseVO;
@@ -102,7 +111,7 @@
             queryWrapper.eq(GoodsGroupPurchase::getListingStatus,
                     ListingStatusEnum.ON_SHELVES.getCode());
             queryWrapper.le(GoodsGroupPurchase::getStartTime, dto.getStartTime());
-            queryWrapper.ge(GoodsGroupPurchase::getEndTime, dto.getEndTime());
+            queryWrapper.ge(GoodsGroupPurchase::getEndTime, dto.getStartTime());
             long count = this.count(queryWrapper);
             if (count > 0) {
                 throw new ServiceException("添加失败,当前商品在该时间段内有其他团购活动");
@@ -117,10 +126,6 @@
                 throw new ServiceException(String.format("团购商品【%s】剩余库存不足,请修改团购库存",
                         goodsSku.getSkuName()));
             }
-            GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
-            goodsStockUpdDTO.setAuctionStock(groupPurchaseStock * -1);
-            goodsStockUpdDTO.setGoodsSkuId(goodsSku.getId());
-            goodsSkuService.updGoodsStock(Lists.newArrayList(goodsStockUpdDTO));
         } else {
             GoodsGroupPurchase groupPurchase = this.getById(dto.getId());
             if (StringUtils.isNull(groupPurchase)) {
@@ -143,11 +148,6 @@
                 throw new ServiceException(String.format("团购商品%s剩余库存不足,请修改团购库存",
                         goodsSku.getSkuName()));
             }
-            GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
-            goodsStockUpdDTO.setAuctionStock(latestStock);
-            goodsStockUpdDTO.setGoodsSkuId(goodsSku.getId());
-            goodsSkuService.updGoodsStock(Lists.newArrayList(goodsStockUpdDTO));
-            this.updateById(goodsGroupPurchase);
         }
         if (goodsGroupPurchase.getListingStatus().equals(ListingStatusEnum.ON_SHELVES)) {
             asyncMethodService.groupPurchaseScheduleTask(Lists.newArrayList(goodsGroupPurchase));
@@ -172,6 +172,12 @@
         Integer num = orderClient.getGroupPurchasesGoodsNum(groupPurchase.getId(),
                 SecurityConstants.INNER).getData();
         vo.setBuyNumber(num);
+        List<GoodsGroupPurchaseInfo> list = goodsGroupPurchaseInfoService.lambdaQuery()
+                .eq(GoodsGroupPurchaseInfo::getGroupPurchaseId, id).list();
+        Integer count = list.stream().map(GoodsGroupPurchaseInfo::getCurrentNumber)
+                .reduce(Integer::sum)
+                .orElse(0);
+        vo.setGroupedMemberNumber(count);
         return vo;
     }
 
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
index 250a8fa..9c30ad2 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
@@ -109,7 +109,7 @@
                 .ne(GoodsSeckill::getStartStatus, StartStatusEnum.ENDED)
                 .eq(GoodsSeckill::getListingStatus, ListingStatusEnum.ON_SHELVES)
                 .le(GoodsSeckill::getStartTime, dto.getStartTime())
-                .ge(GoodsSeckill::getEndTime, dto.getEndTime()).list();
+                .ge(GoodsSeckill::getEndTime, dto.getStartTime()).list();
         Set<Long> existGoodsSkuIdSet = list.stream().map(GoodsSeckill::getGoodsSkuId)
                 .collect(Collectors.toSet());
         if (!existGoodsSkuIdSet.isEmpty()) {
@@ -125,7 +125,8 @@
                             return goodsSkuMap.get(item.getGoodsSkuId());
                         }).filter(Objects::nonNull)
                         .collect(Collectors.joining(","));
-                throw new ServiceException("添加失败,当前商品在该时间段内有其他秒杀活动");
+                throw new ServiceException(
+                        String.format("添加失败,商品%s在该时间段内有其他秒杀活动", goodsSkuNames));
             }
         }
         this.saveBatch(goodsSeckills);
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java
index 8574295..5bbb2e4 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java
@@ -29,7 +29,14 @@
 import com.ruoyi.goods.service.IGoodsInfoTitleValueService;
 import com.ruoyi.goods.service.IGoodsSkuService;
 import com.ruoyi.goods.service.IMemberGoodsCollectionService;
-import com.ruoyi.system.api.domain.*;
+import com.ruoyi.system.api.domain.GoodsBrand;
+import com.ruoyi.system.api.domain.GoodsCategory;
+import com.ruoyi.system.api.domain.GoodsFlavorType;
+import com.ruoyi.system.api.domain.GoodsGroupPurchase;
+import com.ruoyi.system.api.domain.GoodsSeckill;
+import com.ruoyi.system.api.domain.GoodsSeries;
+import com.ruoyi.system.api.domain.GoodsSku;
+import com.ruoyi.system.api.domain.Order;
 import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
 import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
 import com.ruoyi.system.api.domain.dto.ListStatusDTO;
@@ -48,6 +55,7 @@
 import java.util.List;
 import java.util.Objects;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -225,20 +233,25 @@
                 .eq(GoodsSeckill::getGoodsSkuId, dto.getId());
         List<GoodsSeckill> goodsSeckillList = goodsSeckillMapper.selectList(queryWrapper);
         if (StringUtils.isNotNull(goodsSeckillList)) {
-            for (GoodsSeckill goodsSeckill : goodsSeckillList) {
+            goodsSeckillList = goodsSeckillList.stream().peek(goodsSeckill -> {
                 goodsSeckill.setListingStatus(ListingStatusEnum.REMOVED_FROM_THE_SHELF);
-                goodsSeckillMapper.updateById(goodsSeckill);
-            }
+            }).collect(Collectors.toList());
+            goodsSeckillMapper.updateListingStatusBatch(
+                    ListingStatusEnum.REMOVED_FROM_THE_SHELF.getCode(), goodsSeckillList);
         }
 
         LambdaQueryWrapper<GoodsGroupPurchase> queryWrapper1 =new LambdaQueryWrapper<>();
         queryWrapper1.eq(GoodsGroupPurchase::getListingStatus,
                         ListingStatusEnum.ON_SHELVES)
                 .eq(GoodsGroupPurchase::getGoodsSkuId, dto.getId());
-        GoodsGroupPurchase goodsGroupPurchase = goodsGroupPurchaseMapper.selectOne(queryWrapper1);
-        if (StringUtils.isNotNull(goodsGroupPurchase)) {
-            goodsGroupPurchase.setListingStatus(ListingStatusEnum.REMOVED_FROM_THE_SHELF);
-            goodsGroupPurchaseMapper.updateById(goodsGroupPurchase);
+        List<GoodsGroupPurchase> goodsGroupPurchaseList = goodsGroupPurchaseMapper.selectList(
+                queryWrapper1);
+        if (CollUtils.isNotEmpty(goodsGroupPurchaseList)) {
+            goodsGroupPurchaseList = goodsGroupPurchaseList.stream().peek(goodsGroupPurchase -> {
+                goodsGroupPurchase.setListingStatus(ListingStatusEnum.REMOVED_FROM_THE_SHELF);
+            }).collect(Collectors.toList());
+            goodsGroupPurchaseMapper.updateListingStatusBatch(
+                    ListingStatusEnum.REMOVED_FROM_THE_SHELF.getCode(), goodsGroupPurchaseList);
         }
     }
 
diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml
index 965d060..378103e 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml
+++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml
@@ -1,6 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.goods.mapper.GoodsGroupPurchaseMapper">
+  <update id="updateListingStatusBatch">
+    UPDATE t_goods_group_purchase
+    SET listing_status = #{listingStatus}
+    <where>
+      <if test="goodsGroupPurchaseList != null and goodsGroupPurchaseList.size() > 0">
+        id IN
+        <foreach collection="goodsGroupPurchaseList" item="item" open="(" separator="," close=")">
+          #{item.id}
+        </foreach>
+      </if>
+    </where>
+  </update>
 
   <select id="getGoodsGroupPurchasePage"
     resultType="com.ruoyi.goods.controller.management.vo.GoodsGroupPurchaseVO">
@@ -17,4 +29,5 @@
     </where>
     ORDER BY tgp.create_time DESC
   </select>
+
 </mapper>
diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml
index 3fb1922..76d19e7 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml
+++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml
@@ -21,7 +21,7 @@
   </select>
 
 
-  <select id="listByGoodsId"
+  <select id="listByGoodsId1"
           resultType="com.ruoyi.system.api.domain.vo.GoodsInfoTitleValueVO"
           parameterType="java.lang.Long">
     SELECT titv.goods_info_title_id,
diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml
index edc088e..da55ab0 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml
+++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml
@@ -1,6 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.goods.mapper.GoodsSeckillMapper">
+  <update id="updateListingStatusBatch">
+    UPDATE t_goods_seckill
+    SET listing_status = #{listingStatus}
+    <where>
+      <if test="goodsSeckillList != null and goodsSeckillList.size() > 0">
+        id IN
+        <foreach collection="goodsSeckillList" item="item" open="(" separator="," close=")">
+          #{item.id}
+        </foreach>
+      </if>
+    </where>
+  </update>
   <select id="getGoodsSeckillPage"
     resultType="com.ruoyi.goods.controller.management.vo.GoodsSeckillVO">
     SELECT
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java
index 391b0ac..c563bc6 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.constant.SecurityConstants;
 import com.ruoyi.common.core.enums.AuditStatusEnum;
+import com.ruoyi.common.core.enums.CouponUseEnum;
 import com.ruoyi.common.core.enums.OrderStatusEnum;
 import com.ruoyi.common.core.enums.PaymentMethodEnum;
 import com.ruoyi.common.core.enums.PointStatusEnum;
@@ -27,6 +28,7 @@
 import com.ruoyi.system.api.domain.CustomConfig;
 import com.ruoyi.system.api.domain.Member;
 import com.ruoyi.system.api.domain.Order;
+import com.ruoyi.system.api.domain.dto.CouponMemberDTO;
 import com.ruoyi.system.api.domain.dto.LogisticsDTO;
 import com.ruoyi.system.api.domain.dto.MemberDTO;
 import com.ruoyi.system.api.domain.dto.MemberPointsDTO;
@@ -35,6 +37,7 @@
 import com.ruoyi.system.api.domain.vo.Express100VO;
 import com.ruoyi.system.api.domain.vo.OrderReturnVO;
 import com.ruoyi.system.api.feignClient.MemberClient;
+import com.ruoyi.system.api.feignClient.PromotionClient;
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import io.seata.spring.annotation.GlobalTransactional;
 import java.time.LocalDateTime;
@@ -73,6 +76,10 @@
     private LogisticsServiceImpl logisticsService;
     @Resource
     private PaylogServiceImpl paylogService;
+
+    @Resource
+    private PromotionClient promotionClient;
+    
     @Override
     public OrderReturnVO saveOrderReturnRequest(OrderReturnDTO OrderReturnDTO) {
 
@@ -330,6 +337,12 @@
             updMembeOneDTO.setTotalPoints(Math.max(member.getTotalPoints() - order.getPoints(), 0));
             memberClient.updMembeOne(updMembeOneDTO, SecurityConstants.INNER);
         }
+        if (Objects.nonNull(order.getCouponId())) {
+            CouponMemberDTO dto = new CouponMemberDTO();
+            dto.setId(order.getCouponId());
+            dto.setCouponStatus(CouponUseEnum.UNUSED.getCode());
+            promotionClient.updCouponMember(dto, SecurityConstants.INNER);
+        }
     }
 
     private boolean handleRefund(PaymentMethodEnum paymentMethod, Paylog paylog, String orderNo) {
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 31c0363..3033b5b 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
@@ -8,6 +8,17 @@
 import com.ruoyi.common.core.constant.CacheConstants;
 import com.ruoyi.common.core.constant.SecurityConstants;
 import com.ruoyi.common.core.enums.*;
+import com.ruoyi.common.core.enums.AuctionOrderTypeEnum;
+import com.ruoyi.common.core.enums.AuditStatusEnum;
+import com.ruoyi.common.core.enums.BondStatusEnum;
+import com.ruoyi.common.core.enums.CouponUseEnum;
+import com.ruoyi.common.core.enums.OrderFromEnum;
+import com.ruoyi.common.core.enums.OrderStatusEnum;
+import com.ruoyi.common.core.enums.OrderTypeEnum;
+import com.ruoyi.common.core.enums.PaymentMethodEnum;
+import com.ruoyi.common.core.enums.PointStatusEnum;
+import com.ruoyi.common.core.enums.RequestTypeEnum;
+import com.ruoyi.common.core.enums.ReturnRequestStatusEnum;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.page.BeanUtils;
@@ -18,7 +29,6 @@
 import com.ruoyi.order.controller.management.dto.MgtOrderQuery;
 import com.ruoyi.order.controller.management.vo.MgtOrderReturnRequestVO;
 import com.ruoyi.order.controller.management.vo.MgtOrderVO;
-import com.ruoyi.order.domain.MemberInvoiceOrder;
 import com.ruoyi.order.domain.OrderReturnRequest;
 import com.ruoyi.order.domain.Paylog;
 import com.ruoyi.order.mapper.OrderAuctionBondMapper;
@@ -69,6 +79,7 @@
 import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Function;
@@ -228,7 +239,7 @@
      */
     @Override
     public Integer getGroupPurchasesGoodsNum(Long id) {
-        List<Order> list = this.lambdaQuery().eq(Order::getId, id)
+        List<Order> list = this.lambdaQuery().eq(Order::getGoodsSkuId, id)
                 .in(Order::getOrderStatus, OrderStatusEnum.TO_BE_SHIPPED,
                         OrderStatusEnum.GOODS_TO_BE_RECEIVED, OrderStatusEnum.FINISHED).list();
         return list.stream().map(Order::getGoodsQuantity).reduce(0, Integer::sum);
@@ -1655,6 +1666,12 @@
             updMembeOneDTO.setTotalPoints(Math.max(member.getTotalPoints() - order.getPoints(), 0));
             memberClient.updMembeOne(updMembeOneDTO, SecurityConstants.INNER);
         }
+        if (Objects.nonNull(order.getCouponId())) {
+            CouponMemberDTO dto = new CouponMemberDTO();
+            dto.setId(order.getCouponId());
+            dto.setCouponStatus(CouponUseEnum.UNUSED.getCode());
+            promotionClient.updCouponMember(dto, SecurityConstants.INNER);
+        }
     }
 
     private boolean handleRefund(PaymentMethodEnum paymentMethod, Paylog paylog, String orderNo) {
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
index 2eea06d..c80acde 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -189,6 +189,7 @@
         userService.checkUserDataScope(user.getUserId());
         SysUser sysUser = userService.getOne(Wrappers.lambdaQuery(SysUser.class)
                 .eq(SysUser::getPhonenumber, user.getPhonenumber())
+                .in(SysUser::getUserType, "00", "01", "04")
                 .eq(SysUser::getDelFlag,0)
                 .last("LIMIT 1"));
 
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 8eb9f50..f9e12e6 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -130,7 +130,7 @@
 		from sys_user
 		where phonenumber = #{phonenumber}
 			and del_flag = '0'
-			and user_type in ('00', '04')
+			and user_type in ('00', '01', '04')
 		limit 1
 	</select>
 	

--
Gitblit v1.7.1