From 93004b6af39ba122c8cc74ed729ac7f44532b6e2 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期四, 27 六月 2024 09:06:10 +0800 Subject: [PATCH] bug修改 --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtOrderQuery.java | 2 - ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MgtBusinessDataService.java | 32 ++++++++-------- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java | 27 +++++++------ ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 6 ++- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderStaticsChartVO.java | 4 +- 5 files changed, 37 insertions(+), 34 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 08f2342..a42d4cf 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 @@ -778,18 +778,21 @@ List<MgtAuctionSalesroomVO> list = auctionSalesroomVOPageDTO.getList(); List<Long> auctionSalesroomIdList = list.stream().map(MgtAuctionSalesroomVO::getId) .collect(Collectors.toList()); - // 所有拍卖场的拍卖商品 - List<AuctionSalesroomGoods> auctionSalesroomGoods = auctionSalesroomGoodsMapper.selectList( - Wrappers.<AuctionSalesroomGoods>lambdaQuery() - .in(AuctionSalesroomGoods::getAuctionSalesroomId, auctionSalesroomIdList)); - // 计算每个拍卖场所有拍品数量 - Map<Long, Integer> map = auctionSalesroomGoods.stream() - .collect(Collectors.groupingBy(AuctionSalesroomGoods::getAuctionSalesroomId, - Collectors.summingInt(AuctionSalesroomGoods::getSalesroomStock))); - for (MgtAuctionSalesroomVO mgtAuctionSalesroomVO : list) { - Integer i = map.get(mgtAuctionSalesroomVO.getId()); - if (StringUtils.isNotNull(i)) { - mgtAuctionSalesroomVO.setAuctionGoodsNum(i); + if (StringUtils.isNotEmpty(auctionSalesroomIdList)) { + // 所有拍卖场的拍卖商品 + List<AuctionSalesroomGoods> auctionSalesroomGoods = auctionSalesroomGoodsMapper.selectList( + Wrappers.<AuctionSalesroomGoods>lambdaQuery() + .in(AuctionSalesroomGoods::getAuctionSalesroomId, + auctionSalesroomIdList)); + // 计算每个拍卖场所有拍品数量 + Map<Long, Integer> map = auctionSalesroomGoods.stream() + .collect(Collectors.groupingBy(AuctionSalesroomGoods::getAuctionSalesroomId, + Collectors.summingInt(AuctionSalesroomGoods::getSalesroomStock))); + for (MgtAuctionSalesroomVO mgtAuctionSalesroomVO : list) { + Integer i = map.get(mgtAuctionSalesroomVO.getId()); + if (StringUtils.isNotNull(i)) { + mgtAuctionSalesroomVO.setAuctionGoodsNum(i); + } } } return auctionSalesroomVOPageDTO; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtOrderQuery.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtOrderQuery.java index 93a77b3..c3c6c27 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtOrderQuery.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtOrderQuery.java @@ -6,7 +6,6 @@ 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; @@ -40,6 +39,5 @@ private OrderStatusEnum orderStatus; @ApiModelProperty(value = "订单类型 1=商城订单 2=拍卖订单") - @NotNull(message = "订单类型不能为空") private OrderTypeEnum queryType; } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderStaticsChartVO.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderStaticsChartVO.java index 7715e75..dee88a0 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderStaticsChartVO.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderStaticsChartVO.java @@ -20,10 +20,10 @@ private List<MgtAmountChartVO> mallOrderTotalAmountList; @ApiModelProperty(value = "拍卖订单总数", notes = "拍卖订单总数") - private List<MgtCountChartVO> auctionOrderCount; + private List<MgtCountChartVO> auctionOrderCountList; @ApiModelProperty(value = "拍卖订单总金额", notes = "拍卖订单总金额") - private List<MgtAmountChartVO> auctionOrderTotalAmount; + private List<MgtAmountChartVO> auctionOrderTotalAmountList; } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MgtBusinessDataService.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MgtBusinessDataService.java index 75fef99..d728c8d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MgtBusinessDataService.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MgtBusinessDataService.java @@ -201,23 +201,23 @@ CompletableFuture<List<MgtAmountChartVO>> auctionOrderTotalAmountFuture = CompletableFuture.supplyAsync( () -> getMgtAmountChartVOS(datesBetween, orderList, OrderTypeEnum.AUCTION_ORDER), executorService); - // 等待所有任务完成 - CompletableFuture<Void> futureAll = CompletableFuture.allOf(mallOrderCountFuture, - mallOrderTotalAmountFuture, auctionOrderCountFuture, auctionOrderTotalAmountFuture); + // 使用 join 方法阻塞当前线程,直到所有任务完成 + CompletableFuture.allOf(mallOrderCountFuture, + mallOrderTotalAmountFuture, auctionOrderCountFuture, auctionOrderTotalAmountFuture) + .join(); MgtOrderStaticsChartVO mgtOrderStaticsChartVO = new MgtOrderStaticsChartVO(); - futureAll.thenRun(() -> { - try { - mgtOrderStaticsChartVO.setMallOrderCountList(mallOrderCountFuture.get()); - mgtOrderStaticsChartVO.setMallOrderTotalAmountList( - mallOrderTotalAmountFuture.get()); - mgtOrderStaticsChartVO.setAuctionOrderCount(auctionOrderCountFuture.get()); - mgtOrderStaticsChartVO.setAuctionOrderTotalAmount( - auctionOrderTotalAmountFuture.get()); - } catch (InterruptedException | ExecutionException e) { - throw new RuntimeException(e); - } - executorService.shutdown(); // 关闭线程池 - }); + try { + // 设置结果 + mgtOrderStaticsChartVO.setMallOrderCountList(mallOrderCountFuture.get()); + mgtOrderStaticsChartVO.setMallOrderTotalAmountList(mallOrderTotalAmountFuture.get()); + mgtOrderStaticsChartVO.setAuctionOrderCountList(auctionOrderCountFuture.get()); + mgtOrderStaticsChartVO.setAuctionOrderTotalAmountList( + auctionOrderTotalAmountFuture.get()); + } catch (InterruptedException | ExecutionException e) { + throw new RuntimeException(e); + } finally { + executorService.shutdown(); // 确保关闭线程池 + } return mgtOrderStaticsChartVO; } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index 324d2ba..4211c47 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -884,9 +884,11 @@ } page = this.lambdaQuery() .in(StringUtils.isNotEmpty(memberIdSet), Order::getMemberId, memberIdSet) - .ne(query.getQueryType().equals(OrderTypeEnum.MALL_ODER), Order::getOrderFrom, + .ne(StringUtils.isNotNull(query.getQueryType()) && query.getQueryType() + .equals(OrderTypeEnum.MALL_ODER), Order::getOrderFrom, OrderFromEnum.AUCTION_ORDERS) - .eq(query.getQueryType().equals(OrderTypeEnum.AUCTION_ORDER), Order::getOrderFrom, + .eq(StringUtils.isNotNull(query.getQueryType()) && query.getQueryType() + .equals(OrderTypeEnum.AUCTION_ORDER), Order::getOrderFrom, OrderFromEnum.AUCTION_ORDERS) .like(StringUtils.isNotBlank(query.getOrderNo()), Order::getOrderNo, query.getOrderNo()) -- Gitblit v1.7.1