From fbc7e749abe186ea874d06e93e50465429fcd832 Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期一, 22 七月 2024 16:46:00 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java                       |    1 
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java            |   15 +++--
 ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml                             |   23 +++++++
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java     |   35 ++++++++---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java        |   23 +++----
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java |   28 +++++++--
 6 files changed, 91 insertions(+), 34 deletions(-)

diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java
index 92a6aa5..ee87ae2 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java
@@ -22,4 +22,5 @@
 public interface AuctionGoodsMapper extends BaseMapper<AuctionGoods> {
     List<AuctionGoods> getAuctionGoodsPgeList(Page page, @Param("param") AuctionGoodsListPageDTO auctionGoodsListPageDTO);
 
+    List<AuctionGoods> getAuctionGoodsPgeList1(Page page, @Param("param") AuctionGoodsListPageDTO auctionGoodsListPageDTO);
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java
index 418faaa..5cd94ed 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java
@@ -83,11 +83,31 @@
             goodsSkuIdList1 = goodsSku.stream().map(GoodsSku::getId)
                     .collect(Collectors.toSet());
         }
-        Set<Long> goodsSkuIdList2 =null;
+
+        Set<Long> goodsSkuIdList3 =new HashSet<>();
         if (StringUtils.isNotEmpty(goodsSkuIdList1)){
-            goodsSkuIdList.retainAll(goodsSkuIdList1);
-            goodsSkuIdList2=goodsSkuIdList;
-        }else {
+            for (Long i:goodsSkuIdList1){
+                LambdaQueryWrapper<AuctionGoods> wrapper= Wrappers.lambdaQuery();
+                wrapper.eq(AuctionGoods::getGoodsSkuId,i);
+                wrapper.eq(AuctionGoods::getDelFlag,0);
+                List<AuctionGoods> auctionGoods = auctionGoodsMapper.selectList(wrapper);
+                for (AuctionGoods a:auctionGoods){
+                    goodsSkuIdList3.add(a.getId());
+                }
+
+            }
+
+        }
+        Set<Long> goodsSkuIdList2 =new HashSet<>();
+        if (StringUtils.isNotEmpty(auctionGoodsListDTO.getGoodsSkuName())) {
+            if (goodsSkuIdList3.size() > 0) {
+                goodsSkuIdList2 = goodsSkuIdList.stream()
+                        .filter(goodsSkuIdList3::contains)
+                        .collect(Collectors.toSet());
+            } else {
+               goodsSkuIdList2.add(0L);;
+            }
+        }else{
             goodsSkuIdList2=goodsSkuIdList;
         }
 
@@ -96,16 +116,13 @@
         page.setSize(auctionGoodsListDTO.getPageSize());
         page.setCurrent(auctionGoodsListDTO.getPageCurr());
         AuctionGoodsListPageDTO auctionGoodsListPageDTO=new AuctionGoodsListPageDTO();
-        if (StringUtils.isNotEmpty(auctionGoodsListDTO.getGoodsSkuName())) {
-        if (StringUtils.isNotEmpty(goodsSkuIdList2)){
+        if (goodsSkuIdList2.size()>0){
             auctionGoodsListPageDTO.setGoodsSkuIdList(goodsSkuIdList2);
         }else{
-            goodsSkuIdList2=new HashSet<>();
             goodsSkuIdList2.add(0L);
             auctionGoodsListPageDTO.setGoodsSkuIdList(goodsSkuIdList2);
         }
-        }
-        List<AuctionGoods> auctionGoodsPgeList = auctionGoodsMapper.getAuctionGoodsPgeList(page, auctionGoodsListPageDTO);
+        List<AuctionGoods> auctionGoodsPgeList = auctionGoodsMapper.getAuctionGoodsPgeList1(page, auctionGoodsListPageDTO);
         List<AuctionGoodsListVO> auctionGoodsVOS=new ArrayList<>();
         for (AuctionGoods auctionGoods:auctionGoodsPgeList){
             AuctionGoodsListVO auctionGoodsVO=new AuctionGoodsListVO();
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
index 987e1c0..f521136 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
@@ -565,11 +565,14 @@
             auctionGoodsinfoVO.setIsCollection(1);
         }
         List<OrderAuctionBond> datas = orderClient.getAuctionGoodsOrderAuctionBondList(auctionGoodsListDTO, SecurityConstants.INNER).getData();
-        if (datas.size()>0){
-            auctionGoodsinfoVO.setIsApply(2);
-        }else{
-            auctionGoodsinfoVO.setIsApply(1);
-        }
+       if(datas!=null){
+           if (datas.size()>0){
+               auctionGoodsinfoVO.setIsApply(2);
+           }else{
+               auctionGoodsinfoVO.setIsApply(1);
+           }
+
+       }
 
         LocalDateTime now = LocalDateTime.now();
         LocalDateTime newTime7 = now.minusDays(7);
@@ -651,7 +654,7 @@
         Page<AuctionGoodsListVO> page = new Page<>();
         page.setSize(auctionGoodsListDTO.getPageSize());
         page.setCurrent(auctionGoodsListDTO.getPageCurr());
-        List<AuctionGoods> auctionGoodsPgeList = auctionGoodsMapper.getAuctionGoodsPgeList(page, auctionGoodsListPageDTO);
+        List<AuctionGoods> auctionGoodsPgeList = auctionGoodsMapper.getAuctionGoodsPgeList1(page, auctionGoodsListPageDTO);
         List<AuctionGoodsListVO> auctionGoodsVOS=new ArrayList<>();
         for (AuctionGoods auctionGoods:auctionGoodsPgeList){
             AuctionGoodsListVO auctionGoodsVO=new AuctionGoodsListVO();
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 62f0852..184b2b6 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
@@ -260,9 +260,12 @@
         wrapper.eq(AuctionSalesroom::getAuctionSalesroomNo,arepartAuctionBidRecordDTO.getAuctionSalesroomQrcode());
         wrapper.eq(AuctionSalesroom::getDelFlag,0);
         AuctionSalesroom auctionBidRecord = this.getOne(wrapper);
-        if(auctionBidRecord.getType().getCode()==0){
-            throw new ServiceException("当前扫码是线下拍卖会");
+        if (auctionBidRecord!=null){
+            if(auctionBidRecord.getType().getCode()==0){
+                throw new ServiceException("当前扫码是线下拍卖会");
+            }
         }
+
         return auctionBidRecord;
     }
 
@@ -409,12 +412,12 @@
             List<OrderAuctionBond> data1 = orderClient.getOrderAuctionBondList1(memberAuctionSalesroomDTO1, SecurityConstants.INNER).getData();
             if(data1!=null){
                 memberAuctionSalesroomVO.setApplyNum(data1.size());
-                List.add(memberAuctionSalesroomVO);
+
             }else{
                 memberAuctionSalesroomVO.setApplyNum(0);
             }
 
-
+            List.add(memberAuctionSalesroomVO);
         }
         page.setRecords(List);
         return PageDTO.of(page);
@@ -1063,18 +1066,12 @@
         PageDTO<WdMemberAuctionSalesroomVO> wdMemberAuctionSalesroomVOPageDTO = PageDTO.of(auctionSalesroomList, WdMemberAuctionSalesroomVO.class);
         List<WdMemberAuctionSalesroomVO> list = wdMemberAuctionSalesroomVOPageDTO.getList();
         for (WdMemberAuctionSalesroomVO auctionSalesroom:list){
-            WdMemberAuctionSalesroomVO  memberAuctionSalesroomVO=new WdMemberAuctionSalesroomVO();
-            memberAuctionSalesroomVO.setSalesroomName(auctionSalesroom.getSalesroomName());
-            memberAuctionSalesroomVO.setDescription(auctionSalesroom.getDescription());
-            memberAuctionSalesroomVO.setStatus(auctionSalesroom.getStatus());
-            memberAuctionSalesroomVO.setSalesroomId(auctionSalesroom.getId());
-            memberAuctionSalesroomVO.setCoverPic(auctionSalesroom.getCoverPic());
             MemberAuctionSalesroomDTO memberAuctionSalesroomDTO1=new MemberAuctionSalesroomDTO();
-            memberAuctionSalesroomDTO1.setAuctionSalesroomId(auctionSalesroom.getSalesroomId());
-            memberAuctionSalesroomDTO1.setMemberId(auctionSalesroom.getId());
+            memberAuctionSalesroomDTO1.setAuctionSalesroomId(auctionSalesroom.getId());
+            memberAuctionSalesroomDTO1.setMemberId(MemberAuctionSalesroomDTO.getMemberId());
             List<OrderAuctionBond> data1 = orderClient.getOrderAuctionBondList1(memberAuctionSalesroomDTO1, SecurityConstants.INNER).getData();
             if (data1.size()>0){
-                memberAuctionSalesroomVO.setBondTime(data1.get(0).getCreateTime());
+                auctionSalesroom.setBondTime(data1.get(0).getCreateTime());
             }
         }
         return wdMemberAuctionSalesroomVOPageDTO;
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java
index 9ccd9e4..552c596 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java
@@ -91,21 +91,37 @@
         }
         AuctionGoodsListPageDTO auctionGoodsListPageDTO=new AuctionGoodsListPageDTO();
         auctionGoodsListPageDTO.setGoodsSkuIdList(goodsSkuIdList);
+        Set<Long> goodsSkuIdList1 = new HashSet<>();
+        if (StringUtils.isNotEmpty(goodsSkuIdList)){
+            for (Long i:goodsSkuIdList){
+                LambdaQueryWrapper<AuctionGoods> wrapper= Wrappers.lambdaQuery();
+                wrapper.eq(AuctionGoods::getGoodsSkuId,i);
+                wrapper.eq(AuctionGoods::getDelFlag,0);
+                List<AuctionGoods> auctionGoods = auctionGoodsMapper.selectList(wrapper);
+                for (AuctionGoods a:auctionGoods){
+                    goodsSkuIdList1.add(a.getId());
+                }
+
+            }
+
+        }
+
 
         Page<AuctionGoodsListVO> page = new Page<>();
         page.setSize(auctionCollectionDTO.getPageSize());
         page.setCurrent(auctionCollectionDTO.getPageCurr());
-        LambdaQueryWrapper< MemberAuctionCollection> wrapper= Wrappers.lambdaQuery();
+        LambdaQueryWrapper<MemberAuctionCollection> wrapper= Wrappers.lambdaQuery();
         wrapper.eq(MemberAuctionCollection::getMemberId,auctionCollectionDTO.getMemberId());
         if (StringUtils.isNotEmpty(auctionCollectionDTO.getGoodsSkuName())){
-            if (goodsSkuIdList.size()>0){
-                wrapper.in(MemberAuctionCollection::getTargetId,goodsSkuIdList);
+            if (goodsSkuIdList1.size()>0){
+                wrapper.in(MemberAuctionCollection::getTargetId,goodsSkuIdList1);
             }else{
-                goodsSkuIdList=new HashSet<>();
-                goodsSkuIdList.add(0L);
-                wrapper.in(MemberAuctionCollection::getTargetId,goodsSkuIdList);
+                goodsSkuIdList1=new HashSet<>();
+                goodsSkuIdList1.add(0L);
+                wrapper.in(MemberAuctionCollection::getTargetId,goodsSkuIdList1);
             }
         }
+        wrapper.orderByDesc(MemberAuctionCollection::getCreateTime);
         List<MemberAuctionCollection> list = this.list(wrapper);
 
         List<AuctionGoodsListVO> auctionGoodsVOS=new ArrayList<>();
diff --git a/ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml b/ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml
index 4b81e95..aee9bd3 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml
+++ b/ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml
@@ -23,4 +23,27 @@
         WHEN start_status = 2 THEN 3
         END,start_status
     </select>
+
+    <select id="getAuctionGoodsPgeList1" resultType="com.ruoyi.system.api.domain.AuctionGoods">
+        SELECT * FROM t_auction_goods ta
+        WHERE del_flag = 0 and listing_status=0
+        <if test="param.startStatus!=null and param.startStatus!= 5">
+            AND ta.start_status=#{param.startStatus}
+        </if>
+        <if test="param.startStatus == 5">
+            AND ta.start_status=0
+        </if>
+        <if test="param.goodsSkuIdList != null and param.goodsSkuIdList.size()>0">
+            AND ta.id IN
+            <foreach collection="param.goodsSkuIdList" item="item" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        ORDER BY
+        CASE
+        WHEN start_status = 0 THEN 2
+        WHEN start_status = 1 THEN 1
+        WHEN start_status = 2 THEN 3
+        END,start_status
+    </select>
 </mapper>

--
Gitblit v1.7.1