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