From 66a4d910a33d1273427b513e008bd9cd4c5d4054 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 23 九月 2024 19:04:15 +0800
Subject: [PATCH] 修改接口

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java |   90 +++++++++++++++++++++++++++++++-------------
 1 files changed, 63 insertions(+), 27 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
index 4a2dc22..2aadbc9 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
@@ -69,33 +69,35 @@
 
     @Override
     public PageInfo<TOrderSaleVO> pageList(TOrderSaleQuery query) {
-        if(Objects.nonNull(query.getTimeType())){
-            LocalDateTime startTime = null;
-            LocalDateTime endTime = null;
-            switch (query.getTimeType()){
-                case 1:
-                    // 今日
-                    startTime = DateUtils.getDayStart(LocalDateTime.now());
-                    endTime = DateUtils.getDayEnd(LocalDateTime.now());
-                    break;
-                case 2:
-                    // 昨日
-                    startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(1));
-                    endTime = DateUtils.getDayEnd(LocalDateTime.now().minusDays(1));
-                    break;
-                case 3:
-                    // 近7天
-                    startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(7));
-                    endTime = DateUtils.getDayEnd(LocalDateTime.now());
-                    break;
-                case 4:
-                    // 近30天
-                    startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(30));
-                    endTime = DateUtils.getDayEnd(LocalDateTime.now());
-                    break;
+        if(Objects.nonNull(query.getStartTime()) && Objects.nonNull(query.getEndTime())){
+            if(Objects.nonNull(query.getTimeType())){
+                LocalDateTime startTime = null;
+                LocalDateTime endTime = null;
+                switch (query.getTimeType()){
+                    case 1:
+                        // 今日
+                        startTime = DateUtils.getDayStart(LocalDateTime.now());
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now());
+                        break;
+                    case 2:
+                        // 昨日
+                        startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(1));
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now().minusDays(1));
+                        break;
+                    case 3:
+                        // 近7天
+                        startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(7));
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now());
+                        break;
+                    case 4:
+                        // 近30天
+                        startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(30));
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now());
+                        break;
+                }
+                query.setStartTime(DateUtils.localDateTimeToDate(startTime));
+                query.setEndTime(DateUtils.localDateTimeToDate(endTime));
             }
-            query.setStartTime(DateUtils.localDateTimeToDate(startTime));
-            query.setEndTime(DateUtils.localDateTimeToDate(endTime));
         }
         PageInfo<TOrderSaleVO> pageInfo = new PageInfo<>(query.getPageNum(),query.getPageSize());
         List<TOrderSaleVO> list = this.baseMapper.pageList(query,pageInfo);
@@ -106,7 +108,11 @@
             list.forEach(e->{
                 List<TOrderSaleGoods> collect = list1.stream().filter(m -> m.getOrderId().equals(e.getId())).collect(Collectors.toList());
                 if(!CollectionUtils.isEmpty(collect)){
-                    e.setGoodsAmount(collect.stream().map(TOrderSaleGoods::getGoodsSalePrice).reduce(BigDecimal::add).get());
+                    BigDecimal goodsAmount = BigDecimal.ZERO;
+                    for (TOrderSaleGoods tOrderSaleGoods : collect) {
+                        goodsAmount = goodsAmount.add(tOrderSaleGoods.getThisSalePrice().multiply(new BigDecimal(tOrderSaleGoods.getGoodsCount())));
+                    }
+                    e.setGoodsAmount(goodsAmount);
                     e.setOrderSaleGoods(collect);
                 }
             });
@@ -201,6 +207,36 @@
 
     @Override
     public Map<String, Double> getDataGeneratorSaleDetail(TDataGeneratorSaleQuery query) {
+        if(Objects.nonNull(query.getStartTime()) && Objects.nonNull(query.getEndTime())){
+            if(Objects.nonNull(query.getTimeType())){
+                LocalDateTime startTime = null;
+                LocalDateTime endTime = null;
+                switch (query.getTimeType()){
+                    case 1:
+                        // 今日
+                        startTime = DateUtils.getDayStart(LocalDateTime.now());
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now());
+                        break;
+                    case 2:
+                        // 昨日
+                        startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(1));
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now().minusDays(1));
+                        break;
+                    case 3:
+                        // 近7天
+                        startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(7));
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now());
+                        break;
+                    case 4:
+                        // 近30天
+                        startTime = DateUtils.getDayStart(LocalDateTime.now().minusDays(30));
+                        endTime = DateUtils.getDayEnd(LocalDateTime.now());
+                        break;
+                }
+                query.setStartTime(DateUtils.localDateTimeToDate(startTime));
+                query.setEndTime(DateUtils.localDateTimeToDate(endTime));
+            }
+        }
         return this.baseMapper.getDataGeneratorSaleDetail(query);
     }
 

--
Gitblit v1.7.1