From 2084896e403112f62528160b3a2c64282dc6bc4c Mon Sep 17 00:00:00 2001 From: wwb <782276617@qq.com> Date: Mon, 16 Mar 2026 16:44:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../saleorder/SaleOrderServiceImpl.java | 36 +++++++++++++++++-- .../views/Home/components/TradeTrendCard.vue | 2 +- 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java index 5f9919b..0840d8f 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java @@ -816,17 +816,49 @@ public class SaleOrderServiceImpl implements SaleOrderService { @Override public List> getOrderCountTrendComparison(TradeOrderTrendReqVO reqVO) { // 查询当前数据 - List value = getOrderCountTrend(reqVO.getType(), reqVO.getBeginTime(), reqVO.getEndTime()); + if(reqVO.getType() == 1){//30日 + reqVO.setBeginTime(DateUtil.beginOfDay(DateUtil.offsetDay(new Date(),-30)).toLocalDateTime()); + reqVO.setEndTime(DateUtil.endOfDay(new Date()).toLocalDateTime()); + }else if(reqVO.getType() == 7){//周 + reqVO.setBeginTime(DateUtil.beginOfWeek(new Date()).toLocalDateTime()); + reqVO.setEndTime(DateUtil.endOfWeek(new Date()).toLocalDateTime()); + }else if(reqVO.getType() == 30){//月 + reqVO.setBeginTime(DateUtil.beginOfMonth(new Date()).toLocalDateTime()); + reqVO.setEndTime(DateUtil.endOfMonth(new Date()).toLocalDateTime()); + }else if(reqVO.getType() == 365){//年 + reqVO.setBeginTime(DateUtil.beginOfYear(new Date()).toLocalDateTime()); + reqVO.setEndTime(DateUtil.endOfYear(new Date()).toLocalDateTime()); + } + List value = getOrderCountTrend(reqVO.getType(),reqVO.getBeginTime() , reqVO.getEndTime()); // 查询对照数据 LocalDateTime referenceEndTime = reqVO.getBeginTime().minusDays(1); LocalDateTime referenceBeginTime = referenceEndTime.minus(Duration.between(reqVO.getBeginTime(), reqVO.getEndTime())); +// if(reqVO.getType() == 7){//周 +// referenceEndTime = DateUtil.beginOfWeek(new Date()).toLocalDateTime(); +// referenceBeginTime = DateUtil.endOfWeek(new Date()).toLocalDateTime(); +// }else if(reqVO.getType() == 30){//月 +// referenceEndTime = DateUtil.beginOfMonth(new Date()).toLocalDateTime(); +// referenceBeginTime = DateUtil.endOfMonth(new Date()).toLocalDateTime(); +// }else if(reqVO.getType() == 365){//年 +// referenceEndTime = DateUtil.beginOfYear(new Date()).toLocalDateTime(); +// referenceBeginTime = DateUtil.endOfYear(new Date()).toLocalDateTime(); +// } + + List reference = getOrderCountTrend(reqVO.getType(), referenceBeginTime, referenceEndTime); // 顺序对比返回 - return IntStream.range(0, value.size()) + List> collect = IntStream.range(0, value.size()) .mapToObj(index -> new DataComparisonRespVO() .setValue(CollUtil.get(value, index)) .setReference(CollUtil.get(reference, index))) .collect(Collectors.toList()); + + // 降序排序 + collect.sort(Comparator.comparing( + vo -> DateUtil.parseDate(vo.getValue().getDate()), // 根据实际字段调整 + Comparator.reverseOrder() + )); + return collect; } public static void main(String[] args) { diff --git a/hangtag-ui/hangtag-ui-admin/src/views/Home/components/TradeTrendCard.vue b/hangtag-ui/hangtag-ui-admin/src/views/Home/components/TradeTrendCard.vue index 9cc96bb..f736788 100644 --- a/hangtag-ui/hangtag-ui-admin/src/views/Home/components/TradeTrendCard.vue +++ b/hangtag-ui/hangtag-ui-admin/src/views/Home/components/TradeTrendCard.vue @@ -118,7 +118,7 @@ const eChartOptions = reactive({ case TimeRangeTypeEnum.DAY30: return formatDate(date, 'MM-DD') case TimeRangeTypeEnum.WEEK: - let weekDay = formatDate(date, 'ddd') + let weekDay = formatDate(date, 'DDD') if (weekDay == '0') weekDay = '日' return '周' + weekDay case TimeRangeTypeEnum.MONTH: