From c9bdc58a6a9130f1c83962f114a9593a7af37014 Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期一, 28 七月 2025 19:05:08 +0800 Subject: [PATCH] bug修改 --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 44 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 42 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index defa9b3..0e0d98d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -93,6 +93,7 @@ import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.LocalTime; import java.time.ZoneOffset; import java.time.format.DateTimeFormatter; import java.util.*; @@ -3279,6 +3280,17 @@ if (merMemberNoClearOrderVo.getUnPaidMoney().compareTo(zeroBig) < 0) { merMemberNoClearOrderVo.setUnPaidMoney(zeroBig); } + String orderId = merMemberNoClearOrderVo.getOrderId(); + List<OrderGoods> list = orderGoodsService.list(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderId, orderId)); + List<AppGoodsInfoVo> goodsInfoVos = new ArrayList<>(); + for (OrderGoods orderGoods : list) { + AppGoodsInfoVo info = new AppGoodsInfoVo(); + info.setGoodsName(orderGoods.getGoodsName()); + info.setSalesNum(orderGoods.getBuyNum()); + info.setGoodsType(orderGoods.getGoodsType()); + goodsInfoVos.add(info); + } + merMemberNoClearOrderVo.setGoodsList(goodsInfoVos); } } return merMemberNoClearOrderVoList; @@ -4030,7 +4042,7 @@ Map<Long, MgtSimpleShopVo> shopMap = null; Map<Long, MgtSimpleMemberVo> userMap = null; if (shopIdSet != null && !shopIdSet.isEmpty()) { - String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList())); + String shopJoinedString = String.join(",", shopIdSet.stream().filter(Objects::nonNull).map(Object::toString).collect(Collectors.toList())); MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); mgtBaseBathDto.setIds(shopJoinedString); List<MgtSimpleShopVo> simpleShopVoList = remoteShopService.listShopSimpleVoByIds(mgtBaseBathDto).getData(); @@ -4940,8 +4952,31 @@ //获取来源销售排名 List<MgtMapBigTotalVo> orderFromList = orderMapper.listPlTotalOrderTotalOrderFrom(mgtBasePlatformDto); if (orderFromList != null && orderFromList.size() > 0) { + + MgtMapBigTotalVo duoyin = new MgtMapBigTotalVo(); + duoyin.setMapKey("抖音"); + duoyin.setMapValue(totalOrderTotalVo.getDouyinAmount()); + + MgtMapBigTotalVo kauishou = new MgtMapBigTotalVo(); + kauishou.setMapKey("快手"); + kauishou.setMapValue(totalOrderTotalVo.getKuaishouAmount()); + + MgtMapBigTotalVo meituan = new MgtMapBigTotalVo(); + meituan.setMapKey("美团"); + meituan.setMapValue(totalOrderTotalVo.getMeituanAmount()); + orderFromList.add(duoyin); + orderFromList.add(kauishou); + orderFromList.add(meituan); orderFromList = bigListRemoveNull(orderFromList); - mgtTotalOrderTotalVo.setOrderFromRankList(orderFromList); + //排行 + List<MgtMapBigTotalVo> sortedList = orderFromList.stream() + // 按 mapValue 降序排序,处理 null 值(若 mapValue 可能为 null) + .sorted(Comparator.comparing( + MgtMapBigTotalVo::getMapValue, + Comparator.nullsLast(BigDecimal::compareTo).reversed() + )) + .collect(Collectors.toList()); + mgtTotalOrderTotalVo.setOrderFromRankList(sortedList); } //订单分布 //日期全部时固定为5天 @@ -7294,6 +7329,11 @@ } mgtBasePlatformDto.setShopIdList(shopIdList); // 从数据库中获取第三方订单统计 + DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + mgtBasePlatformDto.setStartTime(LocalDate.parse(mgtBasePlatformDto.getStartDate(), dateFormatter) + .atStartOfDay()); + mgtBasePlatformDto.setEndTime(LocalDate.parse(mgtBasePlatformDto.getEndDate(), dateFormatter) + .atTime(LocalTime.MAX)); vo = orderMapper.getPlTotalThirdOrderStatics(mgtBasePlatformDto); return vo; } -- Gitblit v1.7.1