From ee9688b912bb993b54252a26f8ad9e0e04df21c3 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 21 六月 2024 18:11:21 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java |  136 ++++++++++++++++++++++++++++-----------------
 1 files changed, 85 insertions(+), 51 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 9401896..296d067 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;
@@ -30,23 +21,38 @@
 import com.ruoyi.common.core.enums.AuctionStartStatusEnum;
 import com.ruoyi.common.core.enums.BidStatusEnum;
 import com.ruoyi.common.core.enums.OrderFromEnum;
+import com.ruoyi.common.core.utils.DateUtils;
+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.Order;
+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 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;
 
 
@@ -241,9 +247,11 @@
                     currentAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoodss.getStatus());
                     currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoodss.getListingDuration());
                     auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods);
+                    wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum());
+                    list.add(auctionSalesroomGoodss.getSortNum());
                 }
-                wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum());
-                list.add(auctionSalesroomGoodss.getSortNum());
+
+
             }
             wrapper1.last("limit 1");
             AuctionSalesroomGoods auctionSalesroomGoods1 = this.getOne(wrapper1);
@@ -260,9 +268,9 @@
                 auctionSalesroomVO.setNextAuctionSalesroomGoods(nextAuctionSalesroomGoods);
             }
             LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery();
-            wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
-            wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
-            wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0);
+            if(list.size()>0){
+                wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
+            }
             wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
             wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum);
             wrapper2.orderByAsc(AuctionSalesroomGoods::getStatus);
@@ -311,20 +319,25 @@
         wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum);
         wrapper2.last("limit 1");
         AuctionSalesroomGoods auctionSalesroomGoods = this.getOne(wrapper2);
-        auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
-        auctionSalesroomGoods.setStartTime(LocalDateTime.now());
-        this.updateById(auctionSalesroomGoods);
+        if(auctionSalesroomGoods!=null){
+            auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
+            auctionSalesroomGoods.setStartTime(LocalDateTime.now());
+            this.updateById(auctionSalesroomGoods);
+        }
+
 
         Map<String, Object> map = new ConcurrentHashMap<>();
         map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM);
         map.put("auctionSalesroomId", auctionSalesroom.getId());
+        map.put("AuctionTypeEnum",auctionSalesroom.getStatus());
         map.put("message_type", "start");
+        map.put("type", "1");
         String msg = null;
         try {
             msg = objectMapper.writeValueAsString(map);
         } catch (JsonProcessingException e) {
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);
+        sysUserClient.pushAll(msg, SecurityConstants.INNER);
 
     }
 
@@ -379,14 +392,16 @@
 
         Map<String, Object> map = new ConcurrentHashMap<>();
         map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM);
+        map.put("AuctionTypeEnum",auctionSalesroom.getStatus());
         map.put("auctionSalesroomId", auctionSalesroom.getId());
         map.put("message_type", "end");
+        map.put("type", "1");
         String msg = null;
         try {
             msg = objectMapper.writeValueAsString(map);
         } catch (JsonProcessingException e) {
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);
+        sysUserClient.pushAll(msg, SecurityConstants.INNER);
     }
 
 
@@ -417,20 +432,23 @@
         wrapper2.eq(AuctionSalesroomGoods::getGoodsSkuId,auctionSalesroomGoodsDTO.getGoodsSkuId());
         AuctionSalesroomGoods auctionSalesroomGoods=this.getOne(wrapper2);
         auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
+        auctionSalesroomGoods.setStartTime(LocalDateTime.now());
         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("notification_time", DateUtils.dateTimeNow("yyyy-MM-dd HH:mm:ss"));
         map.put("goodsSkuId", auctionSalesroomGoods.getId());
         map.put("message_type", "start");
+        map.put("type",1);
+        map.put("AuctionGoodsStatusEnum",auctionSalesroomGoods.getStatus());
         String msg = null;
         try {
             msg = objectMapper.writeValueAsString(map);
         } catch (JsonProcessingException e) {
             throw new RuntimeException(e);
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);*/
+        sysUserClient.pushAll(msg, SecurityConstants.INNER);
     }
 
 
@@ -487,18 +505,20 @@
         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("notification_time", DateUtils.dateTimeNow("yyyy-MM-dd HH:mm:ss"));
         map.put("goodsSkuId", auctionSalesroomGoods.getId());
         map.put("message_type", "end");
+        map.put("type",2);
+        map.put("AuctionGoodsStatusEnum",auctionSalesroomGoods.getStatus());
         String msg = null;
         try {
             msg = objectMapper.writeValueAsString(map);
         } catch (JsonProcessingException e) {
             throw new RuntimeException(e);
         }
-        WebSocketUsers.sendMessageToUsersByText(msg);*/
+        sysUserClient.pushAll(msg, SecurityConstants.INNER);
 
     }
 
@@ -521,6 +541,8 @@
         AuctionSalesroomGoodsInfoVO.setUnit(goodsSku.getUnit());
         AuctionSalesroomGoodsInfoVO.setDescription(goodsSku.getDescription());
         AuctionSalesroomGoodsInfoVO.setDetail(goodsSku.getDetail());
+        AuctionSalesroomGoodsInfoVO.setSharePic(goodsSku.getSharePic());
+        AuctionSalesroomGoodsInfoVO.setShareTitle(goodsSku.getShareTitle());
         AuctionSalesroomGoodsInfoVO.setYears(String.valueOf(goodsSku.getYears().getYear()));
         GoodsBrand data = goodsSkuClient.getBrandOne(goodsSku.getBrandId(), SecurityConstants.INNER).getData();
         GoodsCategory data1 = goodsSkuClient.getCategoryOne(goodsSku.getCategoryId(), SecurityConstants.INNER).getData();
@@ -534,6 +556,9 @@
         AuctionSalesroomGoodsInfoVO.setAlbum(goodsSku.getAlbum());
         AuctionSalesroomGoodsInfoVO.setSpec(goodsSku.getSpec());
         AuctionSalesroomGoodsInfoVO.setSpecUnit(goodsSku.getSpecUnit());
+
+        CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData();
+        AuctionSalesroomGoodsInfoVO.setExplain(returnAddressUserName.getConfigValue());
         AuctionSalesroomGoodsInfoVO.setMinimumMarkupAmount(byId1.getMinimumMarkupAmount());
         LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery();
         wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId());
@@ -547,6 +572,15 @@
             AuctionSalesroomGoodsInfoVO.setPresentBid(list1.getLastBidAmount());
             if (list1.getStatus().getCode()==2){
                 AuctionSalesroomGoodsInfoVO.setIsStatus(2);
+                OrderDTO orderDTO =new OrderDTO();
+                orderDTO.setMemberId(auctionSalesroomGoodsInfoDTO.getMemberId());
+                orderDTO.setGoodsSkuId(byId1.getId());
+                Order data4 = orderClient.getOrderOne(orderDTO, SecurityConstants.INNER).getData();
+                if (data4!=null){
+                    AuctionSalesroomGoodsInfoVO.setOrderId(data4.getId());
+                    AuctionSalesroomGoodsInfoVO.setOrderNo(data4.getOrderNo());
+                }
+
             }else{
                 AuctionSalesroomGoodsInfoVO.setIsStatus(1);
             }
@@ -573,10 +607,8 @@
             auctionBidRecordVO.setSort(i+1);
             auctionBidRecordVO.setLastBidAmount(auctionBidRecordList.get(i).getLastBidAmount());
             auctionBidRecordVO.setLastBidTime(auctionBidRecordList.get(i).getLastBidTime());
-            Member data = emberClient.getMembeOne(auctionBidRecordList.get(i).getMemberId(),
-                    SecurityConstants.INNER).getData();
-            auctionBidRecordVO.setMemberName(data.getNickname());
-            auctionBidRecordVO.setMemberId(data.getId());
+            auctionBidRecordVO.setMemberName(auctionBidRecordList.get(i).getNickname());
+            auctionBidRecordVO.setMemberId(auctionBidRecordList.get(i).getId());
             auctionBidRecordVOList.add(auctionBidRecordVO);
         }
         LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery();
@@ -586,25 +618,27 @@
         wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId());
         wrapper.last("limit 1");
         AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper);
-
-        LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery();
-        wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId());
-        wrapper3.eq(AuctionBidRecord::getDelFlag,0);
-        wrapper3.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId());
-        wrapper3.le(AuctionBidRecord::getId,auctionBidRecord.getId());
-        wrapper3.orderByDesc(AuctionBidRecord::getLastBidAmount);
-        Long count = auctionBidRecordMapper.selectCount(wrapper);
-        if (count>0){
-            AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO();
-            auctionBidRecordVO.setSort(Integer.valueOf(count.intValue()));
-            auctionBidRecordVO.setLastBidAmount(auctionBidRecord.getLastBidAmount());
-            auctionBidRecordVO.setLastBidTime(auctionBidRecord.getLastBidTime());
-            Member data = emberClient.getMembeOne(auctionBidRecord.getMemberId(),
-                    SecurityConstants.INNER).getData();
-            auctionBidRecordVO.setMemberName(data.getNickname());
-            auctionBidRecordVO.setMemberId(data.getId());
-            auctionBidRecordVOList.add(auctionBidRecordVO);
+        if (auctionBidRecord!=null){
+            LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery();
+            wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId());
+            wrapper3.eq(AuctionBidRecord::getDelFlag,0);
+            wrapper3.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId());
+            wrapper3.le(AuctionBidRecord::getId,auctionBidRecord.getId());
+            wrapper3.orderByDesc(AuctionBidRecord::getLastBidAmount);
+            Long count = auctionBidRecordMapper.selectCount(wrapper);
+            if (count>0){
+                AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO();
+                auctionBidRecordVO.setSort(Integer.valueOf(count.intValue()));
+                auctionBidRecordVO.setLastBidAmount(auctionBidRecord.getLastBidAmount());
+                auctionBidRecordVO.setLastBidTime(auctionBidRecord.getLastBidTime());
+                Member data = emberClient.getMembeOne(auctionBidRecord.getMemberId(),
+                        SecurityConstants.INNER).getData();
+                auctionBidRecordVO.setMemberName(data.getNickname());
+                auctionBidRecordVO.setMemberId(data.getId());
+                auctionBidRecordVOList.add(auctionBidRecordVO);
+            }
         }
+
         return auctionBidRecordVOList;
     }
 

--
Gitblit v1.7.1