mitao
2025-03-11 ab34ef62429262bcde69186f1e5edecc5f66c001
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java
@@ -7,11 +7,20 @@
import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper;
import com.ruoyi.auction.service.IAuctionBidRecordService;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.enums.AuctionOrderTypeEnum;
import com.ruoyi.common.core.enums.BidStatusEnum;
import com.ruoyi.common.core.enums.DisabledEnum;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.system.api.domain.AuctionSalesroomGoods;
import com.ruoyi.system.api.domain.Member;
import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO;
import com.ruoyi.system.api.domain.vo.PopUpVO;
import com.ruoyi.system.api.feignClient.MemberClient;
import com.ruoyi.system.api.model.LoginUser;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
@@ -29,6 +38,8 @@
    @Resource
    private AuctionSalesroomGoodsMapper auctionSalesroomGoodsMapper;
    @Resource
    private MemberClient memberClient;
    @Override
    public List<AuctionBidRecord> getAuctionBidRecordList(AuctionSalesroomDTO auctionSalesroomGoodsDTO) {
@@ -43,8 +54,8 @@
                wrapper.orderByAsc(AuctionBidRecord::getLastBidTime);
                auctionBidRecordList = this.list(wrapper);
                //判断
                if (auctionBidRecordList.size()>=auctionSalesroomGoods.getSalesroomStock()){
                    for (int i=0;i<auctionSalesroomGoods.getSalesroomStock();i++){
                if (auctionBidRecordList.size() >= auctionSalesroomGoods.getBidNum()) {
                    for (int i = 0; i < auctionSalesroomGoods.getBidNum(); i++) {
                        AuctionBidRecord auctionBidRecord= auctionBidRecordList.get(i);
                        auctionBidRecord.setStatus(BidStatusEnum.LEAD);
                    }
@@ -78,4 +89,32 @@
                        AuctionOrderTypeEnum.REGULAR_ITEMS)
                .orderByDesc(AuctionBidRecord::getLastBidAmount).list();
    }
    /**
     * 标记已弹出弹窗
     * @param auctionBidRecordId
     */
    @Override
    public void setPopup(Long auctionBidRecordId) {
        this.lambdaUpdate()
                .set(AuctionBidRecord::getNotifyFlag, DisabledEnum.YES.getCode())
                .eq(AuctionBidRecord::getId, auctionBidRecordId).update();
    }
    /**
     * 【2024.12.31】查询用户弹窗
     * @return
     */
    @Override
    public List<PopUpVO> popupList() {
        LoginUser loginUser = SecurityUtils.getLoginUser();
        R<Member> member = memberClient.getMemberByUserId(loginUser.getUserid(),
                SecurityConstants.INNER);
        List<PopUpVO> res = Collections.emptyList();
        if (R.isSuccess(member)) {
            Member memberData = member.getData();
            res = baseMapper.popupList(memberData.getId());
        }
        return res;
    }
}