rentaiming
2024-05-21 c1a07846cdcd18352f3ec849841fe848c5dcb9d7
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java
@@ -1,10 +1,24 @@
package com.ruoyi.auction.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.auction.domain.pojo.AuctionBidRecord;
import com.ruoyi.auction.domain.pojo.AuctionSalesroomGoods;
import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
import com.ruoyi.auction.service.IAuctionBidRecordService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.auction.service.IAuctionSalesroomGoodsService;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.enums.BidStatusEnum;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
 * <p>
@@ -16,5 +30,44 @@
 */
@Service
public class AuctionBidRecordServiceImpl extends ServiceImpl<AuctionBidRecordMapper, AuctionBidRecord> implements IAuctionBidRecordService {
    @Resource
    private IAuctionBidRecordService iAuctionBidRecordService;
    @Resource
    private IAuctionSalesroomGoodsService iAuctionSalesroomGoodsService;
    @Override
    public List<AuctionBidRecord> getAuctionBidRecordList(Integer goodsSkuId) {
            AuctionSalesroomGoods auctionSalesroomGoods=iAuctionSalesroomGoodsService.getById(goodsSkuId);
            List<AuctionBidRecord> auctionBidRecordList=new ArrayList<>();
            if (auctionSalesroomGoods.getStatus().getCode()==1){
                LambdaQueryWrapper<AuctionBidRecord> wrapper=Wrappers.lambdaQuery();
                wrapper.eq(AuctionBidRecord::getGoodsSkuId,goodsSkuId);
                wrapper.eq(AuctionBidRecord::getDelFlag,0);
                wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount);
                auctionBidRecordList=iAuctionBidRecordService.list(wrapper);
                //判断
                if (auctionBidRecordList.size()>=auctionSalesroomGoods.getItemQuantity()){
                    for (int i=0;i<=auctionSalesroomGoods.getItemQuantity();i++){
                        AuctionBidRecord auctionBidRecord= auctionBidRecordList.get(i);
                        auctionBidRecord.setStatus(BidStatusEnum.LEAD);
                    }
                }else{
                    for (int i=0;i<=auctionBidRecordList.size();i++){
                        AuctionBidRecord auctionBidRecord= auctionBidRecordList.get(i);
                        auctionBidRecord.setStatus(BidStatusEnum.LEAD);
                    }
                }
            }if (auctionSalesroomGoods.getStatus().getCode()==2){
                LambdaQueryWrapper<AuctionBidRecord> wrapper=Wrappers.lambdaQuery();
                wrapper.eq(AuctionBidRecord::getGoodsSkuId,goodsSkuId);
                wrapper.eq(AuctionBidRecord::getStatus,2);
                wrapper.eq(AuctionBidRecord::getDelFlag,0);
                wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount);
                auctionBidRecordList=iAuctionBidRecordService.list(wrapper);
            }
            return auctionBidRecordList;
    }
}