From f03ce905a572fe11b5ad7e21d89091962edcaac4 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期三, 22 十月 2025 08:57:50 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java
index 0007680..929f682 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java
@@ -115,9 +115,9 @@
             map.put("orderMoney", 0); // 订单金额
             map.put("commissionMoney", 0); // 分佣金额
         } else {
-            BigDecimal orderMoney = orderQuantity.stream().map(TErpProcurement::getPayMoney).filter(Objects::nonNull).reduce(BigDecimal::add).get();
+            BigDecimal orderMoney = orderQuantity.stream().map(TErpProcurement::getPayMoney).reduce(BigDecimal.ZERO,BigDecimal::add);
             map.put("orderMoney", orderMoney);
-            BigDecimal commissionMoney = orderQuantity.stream().map(TErpProcurement::getSupplierMoney).filter(Objects::nonNull).reduce(BigDecimal::add).get();
+            BigDecimal commissionMoney = orderQuantity.stream().map(TErpProcurement::getSupplierMoney).reduce(BigDecimal.ZERO,BigDecimal::add);
             map.put("commissionMoney", commissionMoney);
         }
         return R.ok(map);
@@ -126,7 +126,7 @@
     /**
      * 供应商采购统计
      */
-    @ApiOperation(value = "供应商最近额30天采购统计", notes = "supplierThirtyProcurementStatistics:订单,supplierThirtyMoneyProcurementStatistics:金额")
+    @ApiOperation(value = "诊所/供应商最近30天采购统计", notes = "supplierThirtyProcurementStatistics:订单,supplierThirtyMoneyProcurementStatistics:金额")
     @PostMapping(value = "/supplierThirtyProcurementStatistics")
     public R<Map<String, Object>> supplierThirtyProcurementStatistics() {
         Long userId = tokenService.getLoginUser().getUserId();
@@ -156,7 +156,7 @@
         SimpleDateFormat format = new SimpleDateFormat("MM.dd");
         for (int i = 0; i < 30; i++) {
             LocalDateTime timeNow = localDateTime.plusDays(i);
-            List<SupplierThirtyProcurementStatisticsVO> vos = supplierThirtyProcurementStatistics.stream().filter(vo -> timeNow.toLocalDate().isEqual(vo.getPayTime())).collect(Collectors.toList());
+            List<SupplierThirtyProcurementStatisticsVO> vos = supplierThirtyProcurementStatistics.stream().filter(vo -> Objects.nonNull(vo.getPayTime()) && timeNow.toLocalDate().isEqual(vo.getPayTime())).collect(Collectors.toList());
             if (CollectionUtils.isEmpty(vos)) {
                 SupplierThirtyProcurementStatisticsVO vo = new SupplierThirtyProcurementStatisticsVO();
                 String time = format.format(DateUtils.localDateTimeToDate(timeNow));
@@ -164,7 +164,7 @@
                 vo.setOrderCount(0);
                 supplierThirtyProcurementStatistics.add(vo);
             }
-            List<SupplierThirtyMoneyProcurementStatisticsVO> moneyVOS = supplierThirtyMoneyProcurementStatistics.stream().filter(vo -> timeNow.toLocalDate().isEqual(vo.getPayTime())).collect(Collectors.toList());
+            List<SupplierThirtyMoneyProcurementStatisticsVO> moneyVOS = supplierThirtyMoneyProcurementStatistics.stream().filter(vo -> Objects.nonNull(vo.getPayTime()) && timeNow.toLocalDate().isEqual(vo.getPayTime())).collect(Collectors.toList());
             if (CollectionUtils.isEmpty(moneyVOS)) {
                 SupplierThirtyMoneyProcurementStatisticsVO vo = new SupplierThirtyMoneyProcurementStatisticsVO();
                 String time = format.format(DateUtils.localDateTimeToDate(timeNow));
@@ -440,7 +440,7 @@
         clinicSalesStatisticsVO.setSalesMoney(totalMoney);
 
         // 查询销售前十占比
-        List<ClinicSalesStatisticsGoodsTypeVO> clinicSalesStatisticsGoodsTypeVOS = sysOrderService.supplierSalesStatisticsGoodsType(crmClinic.getId(), startTime, endTime);
+        List<ClinicSalesStatisticsGoodsTypeVO> clinicSalesStatisticsGoodsTypeVOS = sysOrderService.clinicSalesStatisticsGoodsType(crmClinic.getId(), startTime, endTime);
         // 判断集合是否大于9
         if (clinicSalesStatisticsGoodsTypeVOS.size() > 9) {
             // 其余的添加到其他
@@ -455,9 +455,9 @@
         // 查询30天销售统计
         List<ClinicSalesStatisticsGoodsCountVO> clinicSalesStatisticsGoodsCountVOS;
         if (query.getTimeType() == 1 || query.getTimeType() == 2 || query.getTimeType() == 3) {
-            clinicSalesStatisticsGoodsCountVOS = sysOrderService.supplierSalesStatisticsGoodsCount(crmClinic.getId(), startTime, endTime, query.getGoodsName());
+            clinicSalesStatisticsGoodsCountVOS = sysOrderService.clinicSalesStatisticsGoodsCount(crmClinic.getId(), startTime, endTime, query.getGoodsName());
         } else {
-            clinicSalesStatisticsGoodsCountVOS = sysOrderService.supplierSalesStatisticsGoodsCountMonth(crmClinic.getId(), startTime, endTime, query.getGoodsName());
+            clinicSalesStatisticsGoodsCountVOS = sysOrderService.clinicSalesStatisticsGoodsCountMonth(crmClinic.getId(), startTime, endTime, query.getGoodsName());
         }
         SimpleDateFormat format = new SimpleDateFormat("MM.dd");
         SimpleDateFormat formatMonth = new SimpleDateFormat("yyyy.MM");
@@ -976,8 +976,11 @@
                         break;
                 }
 
-                branchAdminStatisticsOneVo.setBranchMoney(list1.stream().filter(e -> e.getCommissionType() == 1).map(TErpProcurementCommission::getMoney).reduce(BigDecimal::add).get());
-                branchAdminStatisticsOneVo.setStaffMoney(list1.stream().filter(e -> e.getCommissionType() == 2).map(TErpProcurementCommission::getMoney).reduce(BigDecimal::add).get());
+                if(!collect3.isEmpty()){
+
+                    branchAdminStatisticsOneVo.setBranchMoney(collect3.stream().filter(e -> e.getCommissionType() == 1).map(TErpProcurementCommission::getMoney).reduce(BigDecimal::add).get());
+                    branchAdminStatisticsOneVo.setStaffMoney(collect3.stream().filter(e -> e.getCommissionType() == 2).map(TErpProcurementCommission::getMoney).reduce(BigDecimal::add).get());
+                }
             }
 
 

--
Gitblit v1.7.1