rentaiming
2024-08-01 499ab5e5815d4f53ec27e0524c1c9896d1552e25
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
@@ -8,7 +8,6 @@
import com.google.common.collect.Lists;
import com.ruoyi.auction.domain.AuctionBidRecord;
import com.ruoyi.auction.domain.AuctionBondJl;
import com.ruoyi.auction.domain.AuctionSalesroomGoods;
import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
import com.ruoyi.auction.mapper.AuctionBondJlMapper;
import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper;
@@ -26,13 +25,28 @@
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.system.api.constants.NotificationTypeConstant;
import com.ruoyi.system.api.domain.*;
import com.ruoyi.system.api.domain.AuctionSalesroom;
import com.ruoyi.system.api.domain.AuctionSalesroomGoods;
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.*;
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.domain.vo.GoodsInfoTitleValueVO;
import com.ruoyi.system.api.domain.vo.getHomeGoodsSkuXxiVO;
import com.ruoyi.system.api.feignClient.GoodsSkuClient;
import com.ruoyi.system.api.feignClient.MemberClient;
import com.ruoyi.system.api.feignClient.OrderClient;
@@ -40,7 +54,13 @@
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.util.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
@@ -224,34 +244,12 @@
            wrapper1.eq(AuctionSalesroomGoods::getStatus,0);
            wrapper1.eq(AuctionSalesroomGoods::getBackupStatus,false);
            wrapper1.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
            if (auctionSalesroomGoods!=null) {
                wrapper1.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoods.getSortNum() - 1);
            }else{
                LambdaQueryWrapper<AuctionSalesroomGoods> wrappers=Wrappers.lambdaQuery();
                wrappers.eq(AuctionSalesroomGoods::getStatus,0);
                wrappers.eq(AuctionSalesroomGoods::getDelFlag,0);
                wrappers.eq(AuctionSalesroomGoods::getBackupStatus,false);
                wrappers.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
                wrappers.orderByDesc(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.getId());
                    currentAuctionSalesroomGoods.setCoverPic(goodsSku.getCoverPic());
                    currentAuctionSalesroomGoods.setStartTime(auctionSalesroomGoodss.getStartTime());
                    currentAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoodss.getStatus().getCode());
                    currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoodss.getListingDuration());
                    auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods);
                    wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum());
                    list.add(auctionSalesroomGoodss.getId());
                }
                wrapper.orderByDesc(AuctionSalesroomGoods::getSortNum);
            }
            wrapper1.last("limit 1");
            AuctionSalesroomGoods auctionSalesroomGoods1 = this.getOne(wrapper1);