From 56e93995da774627fc275bfd433151a1b3b26f5f Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期六, 22 八月 2026 16:02:17 +0800
Subject: [PATCH] refactor(database): 优化多处查询排序字段

---
 src/main/java/com/ruoyi/home/controller/HomeController.java |   73 +++++++++++++++++++++---------------
 1 files changed, 43 insertions(+), 30 deletions(-)

diff --git a/src/main/java/com/ruoyi/home/controller/HomeController.java b/src/main/java/com/ruoyi/home/controller/HomeController.java
index 35c3954..e5f8513 100644
--- a/src/main/java/com/ruoyi/home/controller/HomeController.java
+++ b/src/main/java/com/ruoyi/home/controller/HomeController.java
@@ -61,8 +61,7 @@
     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_END = 4;  // 宸插彇娑�
-    private static final Integer ORDER_STATUS_END = 5;
+    private static final Integer ORDER_STATUS_PAUSED = 4;
 
     /********************************************************鍩虹绫�*****************************************************/
     @GetMapping("/todos")
@@ -104,8 +103,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);
     }
 
@@ -118,22 +119,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);
     }
 
@@ -261,7 +268,7 @@
         }
         Integer statusFromParam = parseOrderStatus(status);
         if (!isBlank(status) && statusFromParam == null && !"all".equalsIgnoreCase(status.trim())) {
-            return R.fail("status鍙傛暟涓嶅悎娉曪紝鍙�夊�硷細all/waiting/inProgress/completed/end 鎴� 1/2/3/5");
+            return R.fail("status鍙傛暟涓嶅悎娉曪紝鍙�夊�硷細all/waiting/inProgress/completed/paused 鎴� 1/2/3/4");
         }
         Integer queryStatus = resolveOrderStatus(status, tab);
 
@@ -283,7 +290,7 @@
         long waitingCount = 0L;
         long inProgressCount = 0L;
         long completedCount = 0L;
-        long endCount = 0L;
+        long pausedCount = 0L;
         List<Map<String, Object>> statusCountRows = productionOrderMapper.countHomeOrderProgressByStatus(startTime, endTime);
         if (statusCountRows != null) {
             for (Map<String, Object> countRow : statusCountRows) {
@@ -295,8 +302,8 @@
                     inProgressCount = cnt;
                 } else if (Objects.equals(statusKey, ORDER_STATUS_COMPLETED)) {
                     completedCount = cnt;
-                } else if (Objects.equals(statusKey, ORDER_STATUS_END)) {
-                    endCount = cnt;
+                } else if (Objects.equals(statusKey, ORDER_STATUS_PAUSED)) {
+                    pausedCount = cnt;
                 }
             }
         }
@@ -311,7 +318,7 @@
         result.put("waitingCount", waitingCount);
         result.put("inProgressCount", inProgressCount);
         result.put("completedCount", completedCount);
-        result.put("endCount", endCount);
+        result.put("pausedCount", pausedCount);
         result.put("records", records);
         return R.ok(result);
     }
@@ -474,22 +481,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);
     }
 
@@ -531,8 +544,8 @@
         if ("3".equals(normalized) || "completed".equals(normalized)) {
             return ORDER_STATUS_COMPLETED;
         }
-        if ("5".equals(normalized) || "end".equals(normalized)) {
-            return ORDER_STATUS_END;
+        if ("4".equals(normalized) || "paused".equals(normalized)) {
+            return ORDER_STATUS_PAUSED;
         }
         return null;
     }
@@ -544,8 +557,8 @@
         if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
             return "completed";
         }
-        if (Objects.equals(status, ORDER_STATUS_END)) {
-            return "end";
+        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
+            return "paused";
         }
         if (Objects.equals(status, ORDER_STATUS_WAIT)) {
             return "waiting";
@@ -563,8 +576,8 @@
         if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
             return "completed";
         }
-        if (Objects.equals(status, ORDER_STATUS_END)) {
-            return "end";
+        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
+            return "paused";
         }
         return "all";
     }
@@ -579,8 +592,8 @@
         if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
             return "宸插畬鎴�";
         }
-        if (Objects.equals(status, ORDER_STATUS_END)) {
-            return "宸茬粨鏉�";
+        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
+            return "宸叉殏鍋�";
         }
         return "鏈煡";
     }
@@ -637,7 +650,7 @@
                 .select(ProductionOrder::getQuantity, ProductionOrder::getCompleteQuantity)
                 .ge(ProductionOrder::getCreateTime, day.atStartOfDay())
                 .lt(ProductionOrder::getCreateTime, day.plusDays(1).atStartOfDay())
-                .ne(ProductionOrder::getStatus, ORDER_STATUS_END));
+                .ne(ProductionOrder::getStatus, ORDER_STATUS_PAUSED));
 
         BigDecimal totalQuantity = BigDecimal.ZERO;
         BigDecimal totalCompleteQuantity = BigDecimal.ZERO;

--
Gitblit v1.9.3