mitao
2024-09-21 f44e4d609e7efaed9eac545137970b1e334f8106
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
@@ -7,7 +7,6 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.Lists;
import com.ruoyi.auction.domain.AuctionBidRecord;
import com.ruoyi.auction.domain.AuctionBondJl;
import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
import com.ruoyi.auction.mapper.AuctionBondJlMapper;
import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper;
@@ -25,6 +24,7 @@
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.AuctionBondJl;
import com.ruoyi.system.api.domain.AuctionSalesroom;
import com.ruoyi.system.api.domain.AuctionSalesroomGoods;
import com.ruoyi.system.api.domain.CustomConfig;
@@ -155,13 +155,15 @@
        forepartAuctionSalesroomGoodsVO.setSalesroomStock(auctionSalesroomGoods.getSalesroomStock());
        forepartAuctionSalesroomGoodsVO.setListingDuration(auctionSalesroomGoods.getListingDuration());
        forepartAuctionSalesroomGoodsVO.setStartTime(auctionSalesroomGoods.getStartTime());
        forepartAuctionSalesroomGoodsVO.setCoverPic(goodsSku.getCoverPic());
        forepartAuctionSalesroomGoodsVO.setCoverPic(goodsSku.getScreenCoverPic());
        forepartAuctionSalesroomGoodsVO.setDescription(goodsSku.getDescription());
        forepartAuctionSalesroomGoodsVO.setDetail(goodsSku.getDetail());
        forepartAuctionSalesroomGoodsVO.setYears(String.valueOf(goodsSku.getYears().getYear()));
        forepartAuctionSalesroomGoodsVO.setUnit(goodsSku.getUnit());
        forepartAuctionSalesroomGoodsVO.setSpec(goodsSku.getSpec());
        forepartAuctionSalesroomGoodsVO.setSpecUnit(goodsSku.getSpecUnit());
        forepartAuctionSalesroomGoodsVO.setMinimumMarkupAmount(
                auctionSalesroomGoods.getMinimumMarkupAmount());
        if (auctionSalesroomGoods.getStatus().getCode()==0 || auctionSalesroomGoods.getStatus().getCode()==2){
            LambdaQueryWrapper<AuctionSalesroomGoods> wrapper1=Wrappers.lambdaQuery();
            wrapper1.eq(AuctionSalesroomGoods::getDelFlag,0);
@@ -244,34 +246,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);
@@ -520,6 +500,7 @@
            wrapper.eq(AuctionBidRecord::getTargetId, auctionSalesroomGoodsDTO.getGoodsSkuId());
            wrapper.eq(AuctionBidRecord::getDelFlag, 0);
            wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount);
            wrapper.orderByAsc(AuctionBidRecord::getLastBidTime);
            auctionBidRecordList = auctionBidRecordMapper.selectList(wrapper);
            if(auctionBidRecordList.size()>0){
                //判断
@@ -791,7 +772,7 @@
        CustomConfig memberPointsMoney = sysUserClient.getconfig("MEMBER_POINTS_MONEY").getData();
        CustomConfig memberPointsPoints = sysUserClient.getconfig("MEMBER_POINTS_POINTS").getData();
        if (lastBidAmount.intValue()>0){
        if (lastBidAmount.compareTo(BigDecimal.ZERO) > 0) {
            BigDecimal divide = lastBidAmount.divide(new BigDecimal(memberPointsMoney.getConfigValue()));
            BigDecimal roundedDown = divide.setScale(0, RoundingMode.DOWN);
            BigDecimal aDouble= roundedDown.multiply(new BigDecimal(memberPointsPoints.getConfigValue()));
@@ -815,6 +796,7 @@
        order.setSkuName(goodsSku.getSkuName());
        order.setCoverPic(goodsSku.getCoverPic());
        order.setPrice(lastBidAmount);
        order.setGoodsId(auctionSalesroomGoods.getGoodsSkuId());
        orderClient.saveOrderOne(order,SecurityConstants.INNER);
    }