From 3d1cf55e874a5b79c74725af946bfe235c3b06fd Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 13 九月 2024 18:15:34 +0800
Subject: [PATCH] 修改接口

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java |   33 ++++++++++++++++++++++++---------
 1 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
index 837f187..3d40bdc 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
@@ -136,6 +136,7 @@
                             tOrderMealGoods.setGoodsSalePrice(typeGood.getSalePrice());
                             tOrderMealGoods.setGoodsCount(1);
                             tOrderMealGoods.setTypeId(typeGood.getTypeId());
+                            tOrderMealGoods.setGoodsId(typeGood.getId());
                             orderMealGoods.add(tOrderMealGoods);
                         }
                     }
@@ -293,6 +294,7 @@
                     tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                     tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
+                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods.add(tOrderStockGoods);
                 });
@@ -329,6 +331,7 @@
                     tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                     tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
+                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods.add(tOrderStockGoods);
                 });
@@ -358,6 +361,7 @@
                     tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                     tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
+                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods1.add(tOrderStockGoods);
                 });
@@ -387,6 +391,7 @@
                     tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                     tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
+                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods.add(tOrderStockGoods);
                 });
@@ -439,13 +444,15 @@
             List<TOrderMeal> orderMeals = orderMealService.list(Wrappers.lambdaQuery(TOrderMeal.class)
                     .in(TOrderMeal::getGeneratorId, ids));
             List<Long> mealIds = orderMeals.stream().map(TOrderMeal::getId).collect(Collectors.toList());
-            List<TOrderMealGoods> mealGoods = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class)
-                    .in(TOrderMealGoods::getOrderId, mealIds));
-            for (TDataGeneratorVO tDataGeneratorVO : list) {
-                List<Long> collect = orderMeals.stream().filter(e -> e.getGeneratorId().equals(tDataGeneratorVO.getId())).map(TOrderMeal::getId).collect(Collectors.toList());
-                BigDecimal money = mealGoods.stream().filter(e -> collect.contains(e.getOrderId()))
-                        .reduce(BigDecimal.ZERO, (x, y) -> x.add(y.getGoodsSalePrice().multiply(new BigDecimal(y.getGoodsCount()))), BigDecimal::add);
-                tDataGeneratorVO.setTotalRevenue(money);
+            if(!CollectionUtils.isEmpty(mealIds)){
+                List<TOrderMealGoods> mealGoods = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class)
+                        .in(TOrderMealGoods::getOrderId, mealIds));
+                for (TDataGeneratorVO tDataGeneratorVO : list) {
+                    List<Long> collect = orderMeals.stream().filter(e -> e.getGeneratorId().equals(tDataGeneratorVO.getId())).map(TOrderMeal::getId).collect(Collectors.toList());
+                    BigDecimal money = mealGoods.stream().filter(e -> collect.contains(e.getOrderId()))
+                            .reduce(BigDecimal.ZERO, (x, y) -> x.add(y.getGoodsSalePrice().multiply(new BigDecimal(y.getGoodsCount()))), BigDecimal::add);
+                    tDataGeneratorVO.setTotalRevenue(money);
+                }
             }
         }else {
             List<TOrderSale> orderSales = orderSaleService.list(Wrappers.lambdaQuery(TOrderSale.class)
@@ -457,8 +464,10 @@
 //                List<Long> collect = orderSales.stream().filter(e -> e.getGeneratorId().equals(tDataGeneratorVO.getId())).map(TOrderSale::getId).collect(Collectors.toList());
 //                BigDecimal money = orderSaleGoods.stream().filter(e -> collect.contains(e.getOrderId()))
 //                        .reduce(BigDecimal.ZERO, (x, y) -> x.add(y.getGoodsCostPrice().multiply(new BigDecimal(y.getGoodsCount()))), BigDecimal::add);
-                BigDecimal money = orderSales.stream().map(TOrderSale::getPayMoney).reduce(BigDecimal::add).get();
-                tDataGeneratorVO.setTotalRevenue(money);
+                if(!CollectionUtils.isEmpty(orderSales)){
+                    BigDecimal money = orderSales.stream().map(TOrderSale::getPayMoney).reduce(BigDecimal::add).get();
+                    tDataGeneratorVO.setTotalRevenue(money);
+                }
             }
         }
         pageInfo.setRecords(list);
@@ -477,9 +486,15 @@
             // 修改覆盖类型为已覆盖
             orderMealService.update(Wrappers.lambdaUpdate(TOrderMeal.class).set(TOrderMeal::getIsCover, 1).eq(TOrderMeal::getGeneratorId, id));
         }else {
+            // 删除时间段的数据
+            orderStockService.remove(Wrappers.lambdaQuery(TOrderStock.class)
+                    .gt(TOrderStock::getCreateTime, dataGenerator.getStartTime())
+                    .lt(TOrderStock::getCreateTime, dataGenerator.getEndTime()));
             // 修改覆盖类型为已覆盖
             orderStockService.update(Wrappers.lambdaUpdate(TOrderStock.class).set(TOrderStock::getIsCover, 1).eq(TOrderStock::getGeneratorId, id));
         }
+        dataGenerator.setStatus(3);
+        this.updateById(dataGenerator);
     }
 
     @Override

--
Gitblit v1.7.1