From 91b7e532e7c785bf4a891dc416a6094a14fa7acb Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期一, 03 六月 2024 14:05:25 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java |   53 ++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 44 insertions(+), 9 deletions(-)

diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
index a0614d2..bfb52e2 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
@@ -24,6 +24,7 @@
 import com.ruoyi.auction.controller.management.dto.MgtAuctionSalesroomDTO;
 import com.ruoyi.auction.controller.management.dto.MgtAuctionSalesroomGoodsDTO;
 import com.ruoyi.auction.controller.management.dto.MgtAuctionSalesroomQuery;
+import com.ruoyi.auction.controller.management.dto.MgtScreenBidPage;
 import com.ruoyi.auction.controller.management.vo.MgtAuctionBidRecordVO;
 import com.ruoyi.auction.controller.management.vo.MgtAuctionSalesroomGoodsVO;
 import com.ruoyi.auction.controller.management.vo.MgtAuctionSalesroomScreenVO;
@@ -55,7 +56,6 @@
 import com.ruoyi.common.core.utils.page.Checker;
 import com.ruoyi.common.core.utils.page.CollUtils;
 import com.ruoyi.common.core.utils.page.PageDTO;
-import com.ruoyi.common.core.web.page.BasePage;
 import com.ruoyi.system.api.domain.AppMiniLoginVO;
 import com.ruoyi.system.api.domain.AuctionGoods;
 import com.ruoyi.system.api.domain.AuctionSalesroom;
@@ -84,6 +84,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.concurrent.atomic.AtomicReference;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 import javax.annotation.Resource;
@@ -930,12 +931,11 @@
     /**
      * 进入详情
      *
-     * @param id       拍卖会id
-     * @param basePage
+     * @param id 拍卖会id
      * @return 大屏操作台拍卖场视图对象
      */
     @Override
-    public MgtAuctionSalesroomScreenVO getAuctionSalesroomDetail(Long id, BasePage basePage) {
+    public MgtAuctionSalesroomScreenVO getAuctionSalesroomDetail(Long id) {
         MgtAuctionSalesroomVO mgtAuctionSalesroomVO = this.getAuctionSalesroom(id);
         MgtAuctionSalesroomScreenVO vo = BeanUtils.copyBean(
                 mgtAuctionSalesroomVO, MgtAuctionSalesroomScreenVO.class);
@@ -966,20 +966,55 @@
                 int index = collect.indexOf(vo.getCurrentAuctionSalesroomGoods());
                 vo.setNextAuctionSalesroomGoods(collect.get(index + 1));
                 // 分页查询当前拍品出价信息
-                Page<AuctionBidRecord> page = auctionBidRecordService.lambdaQuery()
+                List<AuctionBidRecord> list = auctionBidRecordService.lambdaQuery()
                         .eq(AuctionBidRecord::getTargetId,
                                 vo.getCurrentAuctionSalesroomGoods().getId())
                         .eq(AuctionBidRecord::getAuctionType,
                                 AuctionOrderTypeEnum.AUCTION_ITEMS)
-                        .page(new Page<>(basePage.getPageCurr(), basePage.getPageSize()));
-                if (StringUtils.isNotEmpty(page.getRecords())) {
-                    vo.setMgtAuctionBidRecordVOPageDTO(PageDTO.empty(page));
+                        .list();
+                if (StringUtils.isNotEmpty(list)) {
+                    vo.setMgtAuctionBidRecordVOList(CollUtils.emptyList());
                 }
-                vo.setMgtAuctionBidRecordVOPageDTO(PageDTO.of(page, MgtAuctionBidRecordVO.class));
+                vo.setMgtAuctionBidRecordVOList(
+                        BeanUtils.copyList(list, MgtAuctionBidRecordVO.class));
             } else {
                 vo.setNextAuctionSalesroomGoods(collect.get(0));
             }
         }
         return vo;
     }
+
+    /**
+     * 进入详情-出价会员列表
+     *
+     * @param mgtScreenBidPage
+     * @return PageDTO<MgtAuctionBidRecordVO>
+     */
+    @Override
+    public PageDTO<MgtAuctionBidRecordVO> getScreenBidRecordList(
+            MgtScreenBidPage mgtScreenBidPage) {
+        MgtAuctionSalesroomVO mgtAuctionSalesroomVO = this.getAuctionSalesroom(
+                mgtScreenBidPage.getId());
+        List<MgtAuctionSalesroomGoodsVO> auctionSalesroomGoodsVOS = mgtAuctionSalesroomVO.getAuctionSalesroomGoodsVOS();
+        if (StringUtils.isEmpty(auctionSalesroomGoodsVOS)) {
+            throw new ServiceException("该拍卖会暂无拍卖商品");
+        }
+        AtomicReference<Long> currentAuctionGoodsId = new AtomicReference<>();
+        auctionSalesroomGoodsVOS.stream()
+                .filter(item -> item.getStatus().equals(AuctionGoodsStatusEnum.IN_PROGRESS))
+                .findFirst().ifPresent(goods -> {
+                    currentAuctionGoodsId.set(goods.getId());
+                });
+        Page<AuctionBidRecord> page = auctionBidRecordService.lambdaQuery()
+                .eq(StringUtils.isNotNull(currentAuctionGoodsId.get()),
+                        AuctionBidRecord::getTargetId,
+                        currentAuctionGoodsId.get())
+                .eq(AuctionBidRecord::getAuctionType,
+                        AuctionOrderTypeEnum.AUCTION_ITEMS)
+                .page(new Page<>(mgtScreenBidPage.getPageCurr(), mgtScreenBidPage.getPageSize()));
+        if (StringUtils.isNotEmpty(page.getRecords())) {
+            return PageDTO.empty(page);
+        }
+        return PageDTO.of(page, MgtAuctionBidRecordVO.class);
+    }
 }

--
Gitblit v1.7.1