From 0904adc5bf8e308064dd388da07a5e883e65dbfa Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 03 六月 2024 12:51:59 +0800
Subject: [PATCH] 提交【管理后台】-大屏操作台相关接口

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionGoodsVO.java           |    4 +
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java      |   26 ++++++
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionSalesroomController.java  |    7 +
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtScreenBidPage.java           |   24 ++++++
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java                 |   39 +++++++++
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java              |    2 
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java                     |   15 ++-
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionScreenController.java     |   30 ++++++-
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java                         |   13 +++
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java             |   53 +++++++++++--
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionSalesroomScreenVO.java |    5 
 11 files changed, 190 insertions(+), 28 deletions(-)

diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java
index 693e5ff..800240a 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionGoodsController.java
@@ -7,8 +7,10 @@
 import com.ruoyi.auction.service.IAuctionGoodsService;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.system.api.domain.dto.ListStatusDTO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
 import lombok.RequiredArgsConstructor;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -56,7 +58,8 @@
      */
     @ApiOperation(value = "查看详情", notes = "查看详情")
     @GetMapping("/{id}")
-    public R<MgtAuctionGoodsVO> getAuctionGoods(@PathVariable("id") Long id) {
+    public R<MgtAuctionGoodsVO> getAuctionGoods(
+            @ApiParam(name = "id", value = "拍卖商品id", required = true) @PathVariable("id") Long id) {
         return R.ok(auctionGoodsService.getAuctionGoodsById(id));
     }
 
@@ -72,10 +75,29 @@
         return R.ok();
     }
 
+    /**
+     * 立即结束
+     *
+     * @param id 拍卖商品id
+     */
     @ApiOperation("立即结束")
     @PutMapping("/stop/{id}")
-    public R<?> stopAuctionGoods(@PathVariable("id") Long id) {
+    public R<?> stopAuctionGoods(
+            @ApiParam(name = "id", value = "拍卖商品id", required = true) @PathVariable("id") Long id) {
         auctionGoodsService.stopAuctionGoods(id);
         return R.ok();
     }
+
+    /**
+     * 下架/上架 拍卖商品
+     *
+     * @param dto 商品上下架状态对象
+     */
+    @ApiOperation(value = "下架/上架 拍卖商品", notes = "下架/上架 拍卖商品")
+    @PutMapping("/upd-status")
+    public R<?> updStatus(@Validated @RequestBody ListStatusDTO dto) {
+        auctionGoodsService.updStatus(dto);
+        return R.ok();
+    }
+
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionSalesroomController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionSalesroomController.java
index f80f3db..20f8810 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionSalesroomController.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionSalesroomController.java
@@ -11,6 +11,7 @@
 import com.ruoyi.common.core.utils.page.PageDTO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.validation.annotation.Validated;
@@ -59,7 +60,8 @@
      */
     @GetMapping("/qr-code/{id}")
     @ApiOperation(value = "查看二维码", notes = "查看二维码")
-    public R<String> getQrCode(@PathVariable("id") Long id) {
+    public R<String> getQrCode(
+            @ApiParam(name = "id", value = "拍卖场id", required = true) @PathVariable("id") Long id) {
         try {
             return R.ok(auctionSalesroomService.getQrCode(id));
         } catch (Exception e) {
@@ -89,7 +91,8 @@
      */
     @GetMapping("/{id}")
     @ApiOperation(value = "查看详情", notes = "查看详情")
-    public R<MgtAuctionSalesroomVO> getAuctionSalesroom(@PathVariable("id") Long id) {
+    public R<MgtAuctionSalesroomVO> getAuctionSalesroom(
+            @ApiParam(name = "id", value = "拍卖会id", required = true) @PathVariable("id") Long id) {
         return R.ok(auctionSalesroomService.getAuctionSalesroom(id));
     }
 
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionScreenController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionScreenController.java
index 5b8ff62..5512069 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionScreenController.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/MgtAuctionScreenController.java
@@ -2,19 +2,23 @@
 
 
 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.MgtAuctionSalesroomScreenVO;
 import com.ruoyi.auction.controller.management.vo.MgtAuctionSalesroomVO;
 import com.ruoyi.auction.service.IAuctionSalesroomService;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
-import com.ruoyi.common.core.web.page.BasePage;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
 import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 /**
@@ -52,10 +56,24 @@
      * @param id 拍卖会id
      * @return 大屏操作台拍卖场视图对象
      */
-    @PostMapping("/detail/{id}")
+    @GetMapping("/detail/{id}")
     @ApiOperation(value = "进入详情", notes = "进入详情")
-    public R<MgtAuctionSalesroomScreenVO> getAuctionSalesroomDetail(@PathVariable("id") Long id,
-            @RequestParam("basePage") BasePage basePage) {
-        return R.ok(auctionSalesroomService.getAuctionSalesroomDetail(id, basePage));
+    public R<MgtAuctionSalesroomScreenVO> getAuctionSalesroomDetail(
+            @ApiParam(name = "id", value = "拍卖会id", required = true) @PathVariable("id") Long id) {
+        return R.ok(auctionSalesroomService.getAuctionSalesroomDetail(id));
     }
+
+    /**
+     * 进入详情-出价会员列表
+     *
+     * @param mgtScreenBidPage 分页参数对象
+     * @return PageDTO<MgtAuctionBidRecordVO>
+     */
+    @PostMapping("/bid-list")
+    @ApiOperation(value = "进入详情-出价会员列表", notes = "进入详情-出价会员列表")
+    public R<PageDTO<MgtAuctionBidRecordVO>> getAuctionSalesroomDetail(
+            @Validated @RequestBody MgtScreenBidPage mgtScreenBidPage) {
+        return R.ok(auctionSalesroomService.getScreenBidRecordList(mgtScreenBidPage));
+    }
+    
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtScreenBidPage.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtScreenBidPage.java
new file mode 100644
index 0000000..fb9bc45
--- /dev/null
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/dto/MgtScreenBidPage.java
@@ -0,0 +1,24 @@
+package com.ruoyi.auction.controller.management.dto;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import javax.validation.constraints.NotNull;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author mitao
+ * @date 2024/6/3
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel(value = "分页参数对象")
+public class MgtScreenBidPage extends BasePage {
+
+    private static final long serialVersionUID = 5385286841730866302L;
+
+    @ApiModelProperty(value = "拍卖会id")
+    @NotNull(message = "拍卖会id不能为空")
+    private Long id;
+}
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionGoodsVO.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionGoodsVO.java
index fdcd811..8451660 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionGoodsVO.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionGoodsVO.java
@@ -44,6 +44,9 @@
 
     @ApiModelProperty(value = "拍品数量")
     private Integer auctionStock;
+    
+    @ApiModelProperty(value = "商品规格")
+    private String spec;
 
     @ApiModelProperty(value = "保证金")
     private BigDecimal bond;
@@ -59,6 +62,7 @@
 
     @ApiModelProperty(value = "开始状态 0=预展中 1=拍卖中 2=已结束")
     private AuctionStartStatusEnum startStatus;
+
     @ApiModelProperty(value = "出价记录")
     private List<MgtAuctionBidRecordVO> recordList;
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionSalesroomScreenVO.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionSalesroomScreenVO.java
index 9a14628..9062a0b 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionSalesroomScreenVO.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/management/vo/MgtAuctionSalesroomScreenVO.java
@@ -2,7 +2,6 @@
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.common.core.enums.AuctionStartStatusEnum;
-import com.ruoyi.common.core.utils.page.PageDTO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import java.io.Serializable;
@@ -44,6 +43,6 @@
     @ApiModelProperty(value = "拍卖信息")
     private List<MgtAuctionSalesroomGoodsVO> auctionSalesroomGoodsVOS;
 
-    @ApiModelProperty(value = "当前拍品出价信息")
-    private PageDTO<MgtAuctionBidRecordVO> mgtAuctionBidRecordVOPageDTO;
+    @ApiModelProperty(value = "出价会员列表")
+    private List<MgtAuctionBidRecordVO> mgtAuctionBidRecordVOList;
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
index 649b04a..b3ae255 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
@@ -8,6 +8,7 @@
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.system.api.domain.AuctionGoods;
 import com.ruoyi.system.api.domain.dto.AuctionGoodsListDTO;
+import com.ruoyi.system.api.domain.dto.ListStatusDTO;
 import com.ruoyi.system.api.domain.vo.AuctionGoodsListVO;
 import com.ruoyi.system.api.domain.vo.AuctionGoodsinfoVO;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -44,6 +45,11 @@
      */
     MgtAuctionGoodsVO getAuctionGoodsById(Long id);
 
+    /**
+     * 立即结束
+     *
+     * @param id 拍卖商品id
+     */
     void stopAuctionGoods(Long id);
 
     PageDTO<AuctionGoodsListVO> getAuctionGoodsList(AuctionGoodsListDTO auctionGoodsListDTO);
@@ -55,4 +61,11 @@
     void endAuctionGoods(Long id) throws JsonProcessingException;
 
     void startAuctionGoods(Long id) throws JsonProcessingException;
+
+    /**
+     * 下架/上架 拍卖商品
+     *
+     * @param dto 商品上下架状态对象
+     */
+    void updStatus(ListStatusDTO dto);
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java
index d4dcef1..8632483 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java
@@ -9,11 +9,11 @@
 import com.ruoyi.auction.controller.management.dto.MgtAuctionSaleroomBidRecordQuery;
 import com.ruoyi.auction.controller.management.dto.MgtAuctionSalesroomDTO;
 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.MgtAuctionSalesroomScreenVO;
 import com.ruoyi.auction.controller.management.vo.MgtAuctionSalesroomVO;
 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.AuctionSalesroom;
 import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO;
@@ -112,9 +112,16 @@
     /**
      * 进入详情
      *
-     * @param id   拍卖会id
-     * @param page
+     * @param id 拍卖会id
      * @return 大屏操作台拍卖场视图对象
      */
-    MgtAuctionSalesroomScreenVO getAuctionSalesroomDetail(Long id, BasePage basePage);
+    MgtAuctionSalesroomScreenVO getAuctionSalesroomDetail(Long id);
+
+    /**
+     * 进入详情-出价会员列表
+     *
+     * @param mgtScreenBidPage
+     * @return PageDTO<MgtAuctionBidRecordVO>
+     */
+    PageDTO<MgtAuctionBidRecordVO> getScreenBidRecordList(MgtScreenBidPage mgtScreenBidPage);
 }
diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
index 5973f5b..e5d9bda 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
@@ -44,6 +44,7 @@
 import com.ruoyi.system.api.domain.dto.AuctionGoodsListDTO;
 import com.ruoyi.system.api.domain.dto.AuctionGoodsListPageDTO;
 import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
+import com.ruoyi.system.api.domain.dto.ListStatusDTO;
 import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomDTO;
 import com.ruoyi.system.api.domain.dto.OrderDTO;
 import com.ruoyi.system.api.domain.dto.RefundDTO;
@@ -127,7 +128,28 @@
                 .eq(StringUtils.isNotNull(query.getStartStatus()), AuctionGoods::getStartStatus,
                         query.getStartStatus())
                 .page(new Page<>(query.getPageCurr(), query.getPageSize()));
-        return PageDTO.of(page, MgtAuctionGoodsVO.class);
+        if (StringUtils.isEmpty(page.getRecords())) {
+            return PageDTO.empty(page.getTotal(), page.getPages());
+        }
+        // 查询商品信息
+        Set<Long> goodsIdList = page.getRecords().stream().map(AuctionGoods::getGoodsSkuId)
+                .collect(Collectors.toSet());
+        List<GoodsSku> data = goodsSkuClient.getGoodsListByIds(goodsIdList, SecurityConstants.INNER)
+                .getData();
+        PageDTO<MgtAuctionGoodsVO> pageDTO = PageDTO.of(page,
+                MgtAuctionGoodsVO.class);
+        if (StringUtils.isNotEmpty(data)) {
+            Map<Long, GoodsSku> goodsSkuMap = data.stream()
+                    .collect(Collectors.toMap(GoodsSku::getId, e -> e));
+            for (MgtAuctionGoodsVO mgtAuctionGoodsVO : pageDTO.getList()) {
+                GoodsSku goodsSku = goodsSkuMap.get(mgtAuctionGoodsVO.getGoodsSkuId());
+                if (StringUtils.isNotNull(goodsSku)) {
+                    mgtAuctionGoodsVO.setGoodsSkuName(goodsSku.getSkuName());
+                    mgtAuctionGoodsVO.setSpec(goodsSku.getSpec());
+                }
+            }
+        }
+        return pageDTO;
     }
 
     @Override
@@ -567,4 +589,19 @@
             log.info("===================>发送websocket通知,消息体{}", msg);
         }
     }
+
+    /**
+     * 下架/上架 拍卖商品
+     *
+     * @param dto 商品上下架状态对象
+     */
+    @Override
+    public void updStatus(ListStatusDTO dto) {
+        AuctionGoods auctionGoods = this.getById(dto.getId());
+        if (StringUtils.isNull(auctionGoods)) {
+            throw new ServiceException("拍卖商品不存在");
+        }
+        auctionGoods.setListingStatus(dto.getListingStatus());
+        this.updateById(auctionGoods);
+    }
 }
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);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java
index fee2a8c..ce8a7ec 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java
@@ -158,7 +158,7 @@
      */
     @ApiOperation(value = "下架/上架 商品", notes = "下架/上架 商品")
     @PutMapping("/upd-status")
-    public R<Void> updStatus(@RequestBody ListStatusDTO dto) {
+    public R<Void> updStatus(@Validated @RequestBody ListStatusDTO dto) {
         goodsSkuService.updStatus(dto);
         return R.ok();
     }

--
Gitblit v1.7.1