From 2427b05aeca08ee3c4998843bf749d35440d461b Mon Sep 17 00:00:00 2001
From: rentaiming <806181662@qq.com>
Date: 星期六, 15 六月 2024 21:33:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java |  115 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 76 insertions(+), 39 deletions(-)

diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
index fed4c43..c1c40df 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
@@ -6,16 +6,7 @@
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.collect.Lists;
-import com.ruoyi.system.api.constants.NotificationTypeConstant;
-import com.ruoyi.system.api.domain.*;
-import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO;
-import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO;
-import com.ruoyi.system.api.domain.vo.AuctionBidRecordVO;
-import com.ruoyi.system.api.domain.vo.AuctionSalesroomGoodsInfoVO;
-import com.ruoyi.system.api.domain.vo.AuctionSalesroomVO;
-import com.ruoyi.system.api.domain.vo.ForepartAuctionSalesroomGoodsVO;
 import com.ruoyi.auction.domain.AuctionBidRecord;
-import com.ruoyi.auction.domain.AuctionBrowseRecord;
 import com.ruoyi.auction.domain.AuctionSalesroomGoods;
 import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
 import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper;
@@ -29,24 +20,39 @@
 import com.ruoyi.common.core.enums.AuctionOrderTypeEnum;
 import com.ruoyi.common.core.enums.AuctionStartStatusEnum;
 import com.ruoyi.common.core.enums.BidStatusEnum;
+import com.ruoyi.common.core.enums.ClientTypeEnum;
 import com.ruoyi.common.core.enums.OrderFromEnum;
+import com.ruoyi.system.api.constants.NotificationTypeConstant;
+import com.ruoyi.system.api.domain.AuctionSalesroom;
+import com.ruoyi.system.api.domain.CustomConfig;
+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.GoodsSeries;
+import com.ruoyi.system.api.domain.GoodsSku;
+import com.ruoyi.system.api.domain.Member;
+import com.ruoyi.system.api.domain.MemberAddress;
+import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO;
+import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO;
 import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
 import com.ruoyi.system.api.domain.dto.OrderAuctionBondDTO;
 import com.ruoyi.system.api.domain.dto.OrderDTO;
+import com.ruoyi.system.api.domain.vo.AuctionBidRecordVO;
+import com.ruoyi.system.api.domain.vo.AuctionSalesroomGoodsInfoVO;
+import com.ruoyi.system.api.domain.vo.AuctionSalesroomVO;
+import com.ruoyi.system.api.domain.vo.ForepartAuctionSalesroomGoodsVO;
 import com.ruoyi.system.api.feignClient.GoodsSkuClient;
 import com.ruoyi.system.api.feignClient.MemberClient;
 import com.ruoyi.system.api.feignClient.OrderClient;
+import com.ruoyi.system.api.feignClient.SysUserClient;
+import com.ruoyi.system.api.util.WebSocketUsers;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import javax.annotation.Resource;
-
-import com.ruoyi.system.api.feignClient.SysUserClient;
-import com.ruoyi.system.api.util.WebSocketUsers;
 import org.springframework.stereotype.Service;
 
 
@@ -203,33 +209,64 @@
             wrapper.last("limit 1");
             AuctionSalesroomGoods auctionSalesroomGoods = this.getOne(wrapper);
             ForepartAuctionSalesroomGoodsVO currentAuctionSalesroomGoods=  new ForepartAuctionSalesroomGoodsVO();
-            R<GoodsSku> goodsSkuOne = goodsSkuClient.getGoodsSkuOne(
-                    auctionSalesroomGoods.getGoodsSkuId(), SecurityConstants.INNER);
-            GoodsSku goodsSku=goodsSkuOne.getData();
-            currentAuctionSalesroomGoods.setGoodsSkuName(goodsSku.getSkuName());
-            currentAuctionSalesroomGoods.setCoverPic(goodsSku.getCoverPic());
-            currentAuctionSalesroomGoods.setStartTime(auctionSalesroomGoods.getStartTime());
-            currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoods.getListingDuration());
-            auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods);
-
-            list.add(auctionSalesroomGoods.getSortNum());
-
+            if (auctionSalesroomGoods!=null){
+                R<GoodsSku> goodsSkuOne = goodsSkuClient.getGoodsSkuOne(
+                        auctionSalesroomGoods.getGoodsSkuId(), SecurityConstants.INNER);
+                GoodsSku goodsSku=goodsSkuOne.getData();
+                currentAuctionSalesroomGoods.setGoodsSkuName(goodsSku.getSkuName());
+                currentAuctionSalesroomGoods.setGoodsSkuId(auctionSalesroomGoods.getGoodsSkuId());
+                currentAuctionSalesroomGoods.setCoverPic(goodsSku.getCoverPic());
+                currentAuctionSalesroomGoods.setStartTime(auctionSalesroomGoods.getStartTime());
+                currentAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoods.getStatus());
+                currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoods.getListingDuration());
+                auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods);
+                list.add(auctionSalesroomGoods.getSortNum());
+            }
             LambdaQueryWrapper<AuctionSalesroomGoods> wrapper1=Wrappers.lambdaQuery();
             wrapper1.eq(AuctionSalesroomGoods::getDelFlag,0);
-            wrapper1.eq(AuctionSalesroomGoods::getSortNum,auctionSalesroomGoods.getSortNum()+1);
+            wrapper1.eq(AuctionSalesroomGoods::getStatus,0);
+            if (auctionSalesroomGoods!=null) {
+                wrapper1.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoods.getSortNum() + 1);
+                list.add(auctionSalesroomGoods.getSortNum()+1);
+            }else{
+                LambdaQueryWrapper<AuctionSalesroomGoods> wrappers=Wrappers.lambdaQuery();
+                wrappers.eq(AuctionSalesroomGoods::getStatus,0);
+                wrappers.eq(AuctionSalesroomGoods::getDelFlag,0);
+                wrappers.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
+                wrappers.orderByAsc(AuctionSalesroomGoods::getSortNum);
+                wrappers.last("limit 1");
+                AuctionSalesroomGoods auctionSalesroomGoodss = this.getOne(wrappers);
+                if (auctionSalesroomGoodss!=null){
+                    R<GoodsSku> goodsSkuOne = goodsSkuClient.getGoodsSkuOne(
+                            auctionSalesroomGoodss.getGoodsSkuId(), SecurityConstants.INNER);
+                    GoodsSku goodsSku=goodsSkuOne.getData();
+                    currentAuctionSalesroomGoods.setGoodsSkuName(goodsSku.getSkuName());
+                    currentAuctionSalesroomGoods.setGoodsSkuId(auctionSalesroomGoodss.getGoodsSkuId());
+                    currentAuctionSalesroomGoods.setCoverPic(goodsSku.getCoverPic());
+                    currentAuctionSalesroomGoods.setStartTime(auctionSalesroomGoodss.getStartTime());
+                    currentAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoodss.getStatus());
+                    currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoodss.getListingDuration());
+                    auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods);
+                }
+                wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum());
+                list.add(auctionSalesroomGoodss.getSortNum());
+            }
             wrapper1.last("limit 1");
             AuctionSalesroomGoods auctionSalesroomGoods1 = this.getOne(wrapper1);
             ForepartAuctionSalesroomGoodsVO nextAuctionSalesroomGoods=  new ForepartAuctionSalesroomGoodsVO();
             if (auctionSalesroomGoods1!=null){
-                list.add(auctionSalesroomGoods.getSortNum()+1);
+
                 R<GoodsSku> goodsSkuOne1 = goodsSkuClient.getGoodsSkuOne(
-                        auctionSalesroomGoods.getGoodsSkuId(), SecurityConstants.INNER);
+                        auctionSalesroomGoods1.getGoodsSkuId(), SecurityConstants.INNER);
                 GoodsSku goodsSku1=goodsSkuOne1.getData();
                 nextAuctionSalesroomGoods.setNextGoodsSkuName(goodsSku1.getSkuName());
                 nextAuctionSalesroomGoods.setCoverPic(goodsSku1.getCoverPic());
+                nextAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoods1.getStatus());
+                nextAuctionSalesroomGoods.setGoodsSkuId(auctionSalesroomGoods1.getGoodsSkuId());
                 auctionSalesroomVO.setNextAuctionSalesroomGoods(nextAuctionSalesroomGoods);
             }
             LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery();
+            wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
             wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
             wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0);
             wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
@@ -243,6 +280,7 @@
                 GoodsSku goodsSku2=goodsSkuOne2.getData();
                 forepartAuctionSalesroomGoodsVO1.setGoodsSkuName(goodsSku2.getSkuName());
                 forepartAuctionSalesroomGoodsVO1.setCoverPic(goodsSku2.getCoverPic());
+                forepartAuctionSalesroomGoodsVO1.setGoodsSkuId(salesroomGoods.getGoodsSkuId());
                 forepartAuctionSalesroomGoodsVO1.setGoodsSkustatus(salesroomGoods.getStatus());
                 auctionSalesroomGoodsVOS.add(forepartAuctionSalesroomGoodsVO1);
             }
@@ -292,7 +330,7 @@
             msg = objectMapper.writeValueAsString(map);
         } catch (JsonProcessingException e) {
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);
+        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);
 
     }
 
@@ -354,7 +392,7 @@
             msg = objectMapper.writeValueAsString(map);
         } catch (JsonProcessingException e) {
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);
+        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);
     }
 
 
@@ -365,7 +403,7 @@
     @Override
     public List<AuctionSalesroomGoods> isAuctionSalesroom(AuctionSalesroomDTO ationSalesroomGoodsDTO) {
         LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery();
-        wrapper2.eq(AuctionSalesroomGoods::getStatus,0);
+        wrapper2.eq(AuctionSalesroomGoods::getStatus,1);
         wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0);
         wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
         List<AuctionSalesroomGoods> auctionSalesroomGoods = this.list(wrapper2);
@@ -387,7 +425,7 @@
         auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
         this.updateById(auctionSalesroomGoods);
 
-        Map<String, Object> map = new ConcurrentHashMap<>();
+     /*   Map<String, Object> map = new ConcurrentHashMap<>();
         map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS);
         map.put("notification_time", LocalDateTime.now());
         map.put("goodsSkuId", auctionSalesroomGoods.getId());
@@ -398,7 +436,7 @@
         } catch (JsonProcessingException e) {
             throw new RuntimeException(e);
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);
+        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);*/
     }
 
 
@@ -413,10 +451,9 @@
         wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,auctionSalesroomGoodsDTO.getAuctionSalesroomId());
         wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0);
         wrapper2.eq(AuctionSalesroomGoods::getGoodsSkuId,auctionSalesroomGoodsDTO.getGoodsSkuId());
-        AuctionSalesroomGoods auctionSalesroomGood=this.getOne(wrapper2);
-        AuctionSalesroom auctionSalesroom=iAuctionSalesroomService.getById(auctionSalesroomGood.getAuctionSalesroomId());
+        AuctionSalesroomGoods auctionSalesroomGoods=this.getOne(wrapper2);
+        AuctionSalesroom auctionSalesroom=iAuctionSalesroomService.getById(auctionSalesroomGoodsDTO.getAuctionSalesroomId());
 
-        AuctionSalesroomGoods auctionSalesroomGoods=this.getById(auctionSalesroomGoodsDTO.getGoodsSkuId());
         List<AuctionBidRecord> auctionBidRecordList=new ArrayList<>();
 
         if (auctionSalesroomGoods.getStatus().getCode()==1) {
@@ -453,10 +490,10 @@
             }
         }
 
-        auctionSalesroomGood.setStatus(AuctionGoodsStatusEnum.ENDED);
-        this.updateById(auctionSalesroomGood);
+        auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.ENDED);
+        this.updateById(auctionSalesroomGoods);
 
-        Map<String, Object> map = new ConcurrentHashMap<>();
+      /*  Map<String, Object> map = new ConcurrentHashMap<>();
         map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS);
         map.put("notification_time", LocalDateTime.now());
         map.put("goodsSkuId", auctionSalesroomGoods.getId());
@@ -467,7 +504,7 @@
         } catch (JsonProcessingException e) {
             throw new RuntimeException(e);
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);
+        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);*/
 
     }
 

--
Gitblit v1.7.1