From 09361264d6d87b8ce57b61a26c5507dbc0a01031 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期五, 28 八月 2026 23:16:47 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津_建诚恒商贸' into dev_天津_玮苓乐器

---
 src/main/java/com/ruoyi/home/controller/HomeController.java |   80 ++++++++++++++++++++++++----------------
 1 files changed, 48 insertions(+), 32 deletions(-)

diff --git a/src/main/java/com/ruoyi/home/controller/HomeController.java b/src/main/java/com/ruoyi/home/controller/HomeController.java
index 7878d28..e4ba711 100644
--- a/src/main/java/com/ruoyi/home/controller/HomeController.java
+++ b/src/main/java/com/ruoyi/home/controller/HomeController.java
@@ -61,7 +61,8 @@
     private static final Integer ORDER_STATUS_WAIT = 1;
     private static final Integer ORDER_STATUS_RUNNING = 2;
     private static final Integer ORDER_STATUS_COMPLETED = 3;
-    private static final Integer ORDER_STATUS_PAUSED = 4;
+    //private static final Integer ORDER_STATUS_END = 4;  // 宸插彇娑�
+    private static final Integer ORDER_STATUS_END = 5;
 
     /********************************************************鍩虹绫�*****************************************************/
     @GetMapping("/todos")
@@ -103,8 +104,10 @@
     /********************************************************钀ラ攢閲囪喘绫�**************************************************/
     @GetMapping("/supplierPurchaseRanking")
     @Operation(summary = "渚涘簲鍟嗛噰璐帓鍚�")
-    public R supplierPurchaseRanking(@DefaultType Integer type) {
-        List<SupplierPurchaseRankingDto> list = homeService.supplierPurchaseRanking(type);
+    public R supplierPurchaseRanking(@DefaultType Integer type,
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate) {
+        List<SupplierPurchaseRankingDto> list = homeService.supplierPurchaseRanking(type, startDate, endDate);
         return R.ok(list);
     }
 
@@ -117,22 +120,28 @@
 
     @GetMapping("/customerContributionRanking")
     @Operation(summary = "瀹㈡埛閲戦璐$尞鎺掑悕")
-    public R customerContributionRanking(@DefaultType Integer type) {
-        List<CustomerContributionRankingDto> list = homeService.customerContributionRanking(type);
+    public R customerContributionRanking(@DefaultType Integer type,
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate) {
+        List<CustomerContributionRankingDto> list = homeService.customerContributionRanking(type, startDate, endDate);
         return R.ok(list);
     }
 
     @GetMapping("/productSalesAnalysis")
     @Operation(summary = "鍚勪骇鍝侀攢鍞噾棰濆垎鏋�")
-    public R productSalesAnalysis() {
-        List<MapDto> list = homeService.productSalesAnalysis();
+    public R productSalesAnalysis(
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate) {
+        List<MapDto> list = homeService.productSalesAnalysis(startDate, endDate);
         return R.ok(list);
     }
 
     @GetMapping("/rawMaterialPurchaseAmountRatio")
     @Operation(summary = "鍘熸潗鏂欓噰璐噾棰濆崰姣�")
-    public R rawMaterialPurchaseAmountRatio(){
-        List<MapDto> list = homeService.rawMaterialPurchaseAmountRatio();
+    public R rawMaterialPurchaseAmountRatio(
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate){
+        List<MapDto> list = homeService.rawMaterialPurchaseAmountRatio(startDate, endDate);
         return R.ok(list);
     }
 
@@ -260,13 +269,14 @@
         }
         Integer statusFromParam = parseOrderStatus(status);
         if (!isBlank(status) && statusFromParam == null && !"all".equalsIgnoreCase(status.trim())) {
-            return R.fail("status鍙傛暟涓嶅悎娉曪紝鍙�夊�硷細all/waiting/inProgress/completed/paused 鎴� 1/2/3/4");
+            return R.fail("status鍙傛暟涓嶅悎娉曪紝鍙�夊�硷細all/waiting/inProgress/completed/end 鎴� 1/2/3/5");
         }
         Integer queryStatus = resolveOrderStatus(status, tab);
 
         long safePageNum = pageNum == null || pageNum < 1 ? 1 : pageNum;
-        long safePageSize = pageSize == null || pageSize < 1 ? 10 : Math.min(pageSize, 50);
-        long offset = (safePageNum - 1) * safePageSize;
+        boolean queryAll = pageSize != null && pageSize == -1;
+        long safePageSize = queryAll ? -1 : (pageSize == null || pageSize < 1 ? 10 : Math.min(pageSize, 50));
+        long offset = queryAll ? 0 : (safePageNum - 1) * safePageSize;
         LocalDateTime startTime = queryDate == null ? null : queryDate.atStartOfDay();
         LocalDateTime endTime = queryDate == null ? null : queryDate.plusDays(1).atStartOfDay();
 
@@ -281,7 +291,7 @@
         long waitingCount = 0L;
         long inProgressCount = 0L;
         long completedCount = 0L;
-        long pausedCount = 0L;
+        long endCount = 0L;
         List<Map<String, Object>> statusCountRows = productionOrderMapper.countHomeOrderProgressByStatus(startTime, endTime);
         if (statusCountRows != null) {
             for (Map<String, Object> countRow : statusCountRows) {
@@ -293,8 +303,8 @@
                     inProgressCount = cnt;
                 } else if (Objects.equals(statusKey, ORDER_STATUS_COMPLETED)) {
                     completedCount = cnt;
-                } else if (Objects.equals(statusKey, ORDER_STATUS_PAUSED)) {
-                    pausedCount = cnt;
+                } else if (Objects.equals(statusKey, ORDER_STATUS_END)) {
+                    endCount = cnt;
                 }
             }
         }
@@ -303,13 +313,13 @@
         result.put("tab", mapOrderTab(queryStatus));
         result.put("status", mapOrderStatus(queryStatus));
         result.put("bizDate", queryDate == null ? null : queryDate.format(DATE_FORMATTER));
-        result.put("total", toLong(productionOrderMapper.countHomeOrderProgress(queryStatus, startTime, endTime)));
+        result.put("total", toLong(productionOrderMapper.countHomeOrderProgress(null, startTime, endTime)));
         result.put("pageNum", safePageNum);
         result.put("pageSize", safePageSize);
         result.put("waitingCount", waitingCount);
         result.put("inProgressCount", inProgressCount);
         result.put("completedCount", completedCount);
-        result.put("pausedCount", pausedCount);
+        result.put("endCount", endCount);
         result.put("records", records);
         return R.ok(result);
     }
@@ -472,22 +482,28 @@
 
     @GetMapping("/salesPurchaseStorageProductCount")
     @Operation(summary = "閿�鍞�-閲囪喘-鍌ㄥ瓨浜у搧鏁�")
-    public R salesPurchaseStorageProductCount(){
-        List<MapDto> list = homeService.salesPurchaseStorageProductCount();
+    public R salesPurchaseStorageProductCount(
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate){
+        List<MapDto> list = homeService.salesPurchaseStorageProductCount(startDate, endDate);
         return R.ok(list);
     }
 
     @GetMapping("/productInOutAnalysis")
     @Operation(summary = "浜у搧鍑哄叆搴撳垎鏋�")
-    public R productInOutAnalysis(@DefaultType Integer type){
-        List<Map<String, Object>> result = homeService.productInOutAnalysis(type);
+    public R productInOutAnalysis(@DefaultType Integer type,
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate){
+        List<Map<String, Object>> result = homeService.productInOutAnalysis(type, startDate, endDate);
         return R.ok(result);
     }
 
     @GetMapping("/productTurnoverDays")
     @Operation(summary = "浜у搧鍛ㄨ浆澶╂暟")
-    public R productTurnoverDays(){
-        List<MapDto> list = homeService.productTurnoverDays();
+    public R productTurnoverDays(
+            @RequestParam(required = false) String startDate,
+            @RequestParam(required = false) String endDate){
+        List<MapDto> list = homeService.productTurnoverDays(startDate, endDate);
         return R.ok(list);
     }
 
@@ -529,8 +545,8 @@
         if ("3".equals(normalized) || "completed".equals(normalized)) {
             return ORDER_STATUS_COMPLETED;
         }
-        if ("4".equals(normalized) || "paused".equals(normalized)) {
-            return ORDER_STATUS_PAUSED;
+        if ("5".equals(normalized) || "end".equals(normalized)) {
+            return ORDER_STATUS_END;
         }
         return null;
     }
@@ -542,8 +558,8 @@
         if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
             return "completed";
         }
-        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
-            return "paused";
+        if (Objects.equals(status, ORDER_STATUS_END)) {
+            return "end";
         }
         if (Objects.equals(status, ORDER_STATUS_WAIT)) {
             return "waiting";
@@ -561,8 +577,8 @@
         if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
             return "completed";
         }
-        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
-            return "paused";
+        if (Objects.equals(status, ORDER_STATUS_END)) {
+            return "end";
         }
         return "all";
     }
@@ -577,8 +593,8 @@
         if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
             return "宸插畬鎴�";
         }
-        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
-            return "宸叉殏鍋�";
+        if (Objects.equals(status, ORDER_STATUS_END)) {
+            return "宸茬粨鏉�";
         }
         return "鏈煡";
     }
@@ -635,7 +651,7 @@
                 .select(ProductionOrder::getQuantity, ProductionOrder::getCompleteQuantity)
                 .ge(ProductionOrder::getCreateTime, day.atStartOfDay())
                 .lt(ProductionOrder::getCreateTime, day.plusDays(1).atStartOfDay())
-                .ne(ProductionOrder::getStatus, ORDER_STATUS_PAUSED));
+                .ne(ProductionOrder::getStatus, ORDER_STATUS_END));
 
         BigDecimal totalQuantity = BigDecimal.ZERO;
         BigDecimal totalCompleteQuantity = BigDecimal.ZERO;

--
Gitblit v1.9.3