From b625c2ccaa9c22b5f6837f1b43bec40b6f308121 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 09 一月 2025 11:32:31 +0800
Subject: [PATCH] 修改bug

---
 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java |  409 +++++++++++++++++++++++++++------------------------------
 1 files changed, 193 insertions(+), 216 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
index 5d50de4..30360d9 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
@@ -1,5 +1,6 @@
 package com.dy.pipIrrStatistics.intake;
 
+import com.dy.common.util.DateTime;
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pipIrrGlobal.daoRm.*;
 import com.dy.pipIrrGlobal.voSt.*;
@@ -12,11 +13,9 @@
 
 import java.text.DecimalFormat;
 import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.time.LocalDate;
-import java.util.Calendar;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
+import java.util.*;
 
 /**
  * @author ZhuBaoMin
@@ -63,13 +62,16 @@
          */
         String timeStart = qo.getTimeStart();
         String timeStop = qo.getTimeStop();
-        if(timeStart != null) {
-            timeStart = timeStart + " 00:00:00";
-        }else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
+
         if(timeStop != null) {
             timeStop = timeStop + " 23:59:59";
+            if(timeStart != null) {
+                timeStart = timeStart + " 00:00:00";
+            }else {
+                timeStart = LocalDate.now() + " 00:00:00";
+            }
+        }else {
+            timeStart = null;
         }
         qo.setTimeStart(timeStart);
         qo.setTimeStop(timeStop);
@@ -90,7 +92,7 @@
         return rsVo ;
     }
 
-    /**
+    /** ok 1
      * 鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
      * @param qo
      * @return
@@ -112,7 +114,7 @@
         return rsVo ;
     }
 
-    /**
+    /** ok 2
      * 鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�
      * @param qo
      * @return
@@ -226,23 +228,6 @@
      * @return
      */
     public QueryResultVo<List<VoIntakeOpenCount>> getOpenValveGtIntakes(IntakeCountValueQO qo) {
-
-        String timeStart = qo.getTimeStart();
-        String timeStop = qo.getTimeStop();
-        if(timeStart != null && timeStart != "") {
-            timeStart = timeStart + " 00:00:00";
-        } else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
-        qo.setTimeStart(timeStart);
-
-        if(timeStop != null && timeStop != "") {
-            timeStop = timeStop + " 23:59:59";
-        }else {
-            timeStop = LocalDate.now() + " 23:59:59";
-        }
-        qo.setTimeStop(timeStop);
-
         // 鐢熸垚鏌ヨ鍙傛暟
         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
 
@@ -265,25 +250,8 @@
      * @return
      */
     public QueryResultVo<List<VoIntakeOpenCount>> getOpenValveLtIntakes(IntakeCountValueQO qo) {
-
-        String timeStart = qo.getTimeStart();
-        String timeStop = qo.getTimeStop();
-        if(timeStart != null && timeStart != "") {
-            timeStart = timeStart + " 00:00:00";
-        } else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
-        qo.setTimeStart(timeStart);
-
-        if(timeStop != null && timeStop != "") {
-            timeStop = timeStop + " 23:59:59";
-        }else {
-            timeStop = LocalDate.now() + " 23:59:59";
-        }
-        qo.setTimeStop(timeStop);
-
         // 鐢熸垚鏌ヨ鍙傛暟
-        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
 
         // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
         Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getOpenValveLtIntakesCount(params)).orElse(0L);
@@ -300,122 +268,99 @@
 
     /**
      * 鏍规嵁寮�闃�绫诲瀷鑾峰彇鎿嶄綔娆℃暟
-     * @param qo
+     * @param idStart
+     * @param idEnd
+     * @param openType
      * @return
      */
-    public VoCountOfOpenType getCountByOpenType(OpenTypeQO qo) {
-        /**
-         * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
-         */
-        String timeStart = qo.getTimeStart();
-        String timeStop = qo.getTimeStop();
-        if(timeStart != null) {
-            timeStart = timeStart + " 00:00:00";
-        }else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
-        if(timeStop != null) {
-            timeStop = timeStop + " 23:59:59";
-        }
-        qo.setTimeStart(timeStart);
-        qo.setTimeStop(timeStop);
-
-        Integer openType = qo.getOpenType();
-        String openTypeName = "";
-        switch (openType) {
-            case 1:
-                openTypeName = "鍒峰崱寮�闃�";
-                break;
-            case 3:
-                openTypeName = "涓績绔欏紑闃�";
-                break;
-            case 8:
-                openTypeName = "鐢ㄦ埛杩滅▼寮�闃�";
-                break;
-            case 11:
-                openTypeName = "寮�鍏抽榾鍗″紑闃�";
-                break;
-            case 13:
-                openTypeName = "寮�鍏抽榾鍗″紑闃�";
-                break;
-        }
-
+    public List<VoCountOfOpenType> getCountByOpenType(Long idStart, Long idEnd, Integer openType) {
         // 鐢熸垚鏌ヨ鍙傛暟
-        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+        Map<String, Object> params = new HashMap<>() ;
+        params.put("idStart", idStart);
+        params.put("idEnd", idEnd);
+        params.put("openType", openType);
 
-        Integer openTypeCount = Optional.ofNullable(rmOpenCloseValveLastMapper.getCountByOpenType(params)).orElse(0);
-
-        VoCountOfOpenType vo = new VoCountOfOpenType();
-        vo.setOpenTypeName(openTypeName);
-        vo.setOpenTypeCount(openTypeCount);
-        return vo;
+        List<VoCountOfOpenType> list = rmOpenCloseValveLastMapper.getCountByOpenType(params) ;
+        if(list != null){
+            for (VoCountOfOpenType vo : list) {
+                if (vo.openType != null){
+                    switch (vo.openType) {
+                        case 1:
+                            vo.openTypeName = "鍒峰崱寮�闃�";
+                            break;
+                        case 3:
+                            vo.openTypeName = "涓績绔欏紑闃�";
+                            break;
+                        case 8:
+                            vo.openTypeName = "鐢ㄦ埛杩滅▼寮�闃�";
+                            break;
+                        case 11:
+                            vo.openTypeName = "宸℃鍗″紑闃�";
+                            break;
+                        default:
+                            vo.openTypeName = "鏈煡绫诲瀷寮�闃�";
+                    }
+                }
+            }
+        }
+        return list ;
     }
 
     /**
      * 鏍规嵁鍏抽榾绫诲瀷鑾峰彇鎿嶄綔娆℃暟
-     * @param qo
+     * @param idStart
+     * @param idEnd
+     * @param closeType
      * @return
      */
-    public VoCountOfCloseType getCountByCloseType(CloseTypeQo qo) {
-        /**
-         * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
-         */
-        String timeStart = qo.getTimeStart();
-        String timeStop = qo.getTimeStop();
-        if(timeStart != null) {
-            timeStart = timeStart + " 00:00:00";
-        }else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
-        if(timeStop != null) {
-            timeStop = timeStop + " 23:59:59";
-        }
-        qo.setTimeStart(timeStart);
-        qo.setTimeStop(timeStop);
+    public List<VoCountOfCloseType> getCountByCloseType(Long idStart, Long idEnd, Integer closeType) {
+        Map<String, Object> params = new HashMap<>() ;
+        params.put("idStart", idStart);
+        params.put("idEnd", idEnd);
+        params.put("closeType", closeType);
 
-        Integer closeType = qo.getCloseType();
-        String closeTypeName = "";
-        switch (closeType) {
-            case 2:
-                closeTypeName = "鍒峰崱鍏抽榾";
-                break;
-            case 4:
-                closeTypeName = "涓績绔欏叧闃�";
-                break;
-            case 5:
-                closeTypeName = "娆犺垂鍏抽榾";
-                break;
-            case 6:
-                closeTypeName = "娴侀噺璁℃晠闅滃叧闃�";
-                break;
-            case 7:
-                closeTypeName = "绱ф�ュ叧闃�";
-                break;
-            case 9:
-                closeTypeName = "鐢ㄦ埛杩滅▼鍏抽榾";
-                break;
-            case 10:
-                closeTypeName = "寮�鍏抽榾鍗″叧闃�";
-                break;
-            case 12:
-                closeTypeName = "榛戝悕鍗曞懡浠ゅ叧闃�";
-                break;
-            case 13:
-                closeTypeName = "杩滅▼瀹氭椂鍏抽榾";
-                break;
-            case 14:
-                closeTypeName = "杩滅▼瀹氶噺鍏抽榾";
-                break;
+        List<VoCountOfCloseType> list = rmOpenCloseValveLastMapper.getCountByCloseType(params) ;
+        if(list != null) {
+            for (VoCountOfCloseType vo : list) {
+                if (vo.closeType != null) {
+                    switch (vo.closeType) {
+                        case 2:
+                            vo.closeTypeName = "鍒峰崱鍏抽榾";
+                            break;
+                        case 4:
+                            vo.closeTypeName = "涓績绔欏叧闃�";
+                            break;
+                        case 5:
+                            vo.closeTypeName = "娆犺垂鍏抽榾";
+                            break;
+                        case 6:
+                            vo.closeTypeName = "娴侀噺璁℃晠闅滃叧闃�";
+                            break;
+                        case 7:
+                            vo.closeTypeName = "绱ф�ュ叧闃�";
+                            break;
+                        case 9:
+                            vo.closeTypeName = "鐢ㄦ埛杩滅▼鍏抽榾";
+                            break;
+                        case 10:
+                            vo.closeTypeName = "宸℃鍗″叧闃�";
+                            break;
+                        case 12:
+                            vo.closeTypeName = "榛戝悕鍗曞懡浠ゅ叧闃�";
+                            break;
+                        case 13:
+                            vo.closeTypeName = "杩滅▼瀹氭椂鍏抽榾";
+                            break;
+                        case 14:
+                            vo.closeTypeName = "杩滅▼瀹氶噺鍏抽榾";
+                            break;
+                        default:
+                            vo.closeTypeName = "鏈煡鍏抽榾绫诲瀷";
+                    }
+                }
+            }
         }
-
-        // 鐢熸垚鏌ヨ鍙傛暟
-        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
-        Integer closeTypeCount = Optional.ofNullable(rmOpenCloseValveLastMapper.getCountByCloseType(params)).orElse(0);
-
-        VoCountOfCloseType vo = new VoCountOfCloseType();
-        vo.setCloseTypeName(closeTypeName);
-        vo.setCloseTypeCount(closeTypeCount);
-        return vo;
+        return list ;
     }
 
     /**
@@ -457,7 +402,7 @@
         return rsVo ;
     }
 
-    /**
+    /** ok 3
      * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙�
      * @param qo
      * @return
@@ -465,37 +410,31 @@
     public QueryResultVo<List<VoIntakeAccumulateAmount>> getUseWaterGtValueIntakes(IntakeAmountValueQO qo) {
         String timeStart = qo.getTimeStart();
         String timeStop = qo.getTimeStop();
-        if(timeStart != null && timeStart != "") {
-            timeStart = timeStart + " 00:00:00";
-        } else {
-            timeStart = LocalDate.now() + " 00:00:00";
+        if(timeStart == null || timeStart.trim().equals("")) {
+            timeStart = DateTime.yyyy_MM_dd() ;
+            qo.setTimeStart(timeStart);
         }
-        qo.setTimeStart(timeStart);
-
-        if(timeStop != null && timeStop != "") {
-            timeStop = timeStop + " 23:59:59";
-        }else {
-            timeStop = LocalDate.now() + " 23:59:59";
+        if(timeStop == null || timeStop.trim().equals("")) {
+            timeStop = DateTime.yyyy_MM_dd() ;
+            qo.setTimeStop(timeStop);
         }
-        qo.setTimeStop(timeStop);
-
         if (qo.getValue() == null){
             qo.setValue(0.0);
         }
 
         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
-        Long itemTotal = rmOpenCloseValveHistoryMapper.getUseWaterGtValueIntakesCount(params);
+        Long itemTotal = rmIntakeAmountDayMapper.getUseWaterGtValueIntakesCount(params);
 
         QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ;
         rsVo.pageSize = qo.pageSize ;
         rsVo.pageCurr = qo.pageCurr ;
 
         rsVo.calculateAndSet(itemTotal, params);
-        rsVo.obj = rmOpenCloseValveHistoryMapper.getUseWaterGtValueIntakes(params);
+        rsVo.obj = rmIntakeAmountDayMapper.getUseWaterGtValueIntakes(params);
         return rsVo ;
     }
 
-    /**
+    /** ok 4
      * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
      * @param qo
      * @return
@@ -503,35 +442,63 @@
     public QueryResultVo<List<VoIntakeAccumulateAmount>> getExpenseGtValueIntakes(IntakeAmountValueQO qo) {
         String timeStart = qo.getTimeStart();
         String timeStop = qo.getTimeStop();
-        if(timeStart != null && timeStart != "") {
-            timeStart = timeStart + " 00:00:00";
-        } else {
-            timeStart = LocalDate.now() + " 00:00:00";
+        if(timeStart == null || timeStart.trim().equals("")) {
+            timeStart = DateTime.yyyy_MM_dd() ;
+            qo.setTimeStart(timeStart);
         }
-        qo.setTimeStart(timeStart);
-
-        if(timeStop != null && timeStop != "") {
-            timeStop = timeStop + " 23:59:59";
-        }else {
-            timeStop = LocalDate.now() + " 23:59:59";
+        if(timeStop == null || timeStop.trim().equals("")) {
+            timeStop = DateTime.yyyy_MM_dd() ;
+            qo.setTimeStop(timeStop);
         }
-        qo.setTimeStop(timeStop);
-
         if (qo.getValue() == null){
             qo.setValue(0.0);
         }
 
         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
-        Long itemTotal = rmOpenCloseValveHistoryMapper.getExpenseGtValueIntakesCount(params);
+        Long itemTotal = rmIntakeAmountDayMapper.getExpenseGtValueIntakesCount(params);
 
         QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ;
         rsVo.pageSize = qo.pageSize ;
         rsVo.pageCurr = qo.pageCurr ;
 
         rsVo.calculateAndSet(itemTotal, params);
-        rsVo.obj = rmOpenCloseValveHistoryMapper.getExpenseGtValueIntakes(params);
+        rsVo.obj = rmIntakeAmountDayMapper.getExpenseGtValueIntakes(params);
         return rsVo ;
     }
+
+    /** ok 4
+     * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+     * @param qo
+     * @return
+     */
+    public QueryResultVo<List<VoIntakeAccumulateAmount>> getUseWaterTimesGtValueIntakes(IntakeCountValueQO qo) {
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")) {
+            timeStart = DateTime.yyyy_MM_dd() ;
+            qo.setTimeStart(timeStart);
+        }
+        if(timeStop == null || timeStop.trim().equals("")) {
+            timeStop = DateTime.yyyy_MM_dd() ;
+            qo.setTimeStop(timeStop);
+        }
+        if (qo.getValue() == null){
+            qo.setValue(0);
+        }
+
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+        Long itemTotal = rmIntakeAmountDayMapper.getUseWaterTimesGtValueIntakesCount(params);
+
+        QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ;
+        rsVo.pageSize = qo.pageSize ;
+        rsVo.pageCurr = qo.pageCurr ;
+
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = rmIntakeAmountDayMapper.getUseWaterTimesGtValueIntakes(params);
+        return rsVo ;
+    }
+
+
 
     /**
      * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
@@ -573,24 +540,7 @@
      * @param qo
      * @return
      */
-    public QueryResultVo<List<VoIntake>> getHaveOpenNoCloseIntakes(CommonQO qo) {
-        String timeStart = qo.getTimeStart();
-        String timeStop = qo.getTimeStop();
-        if(timeStart != null && timeStart != "") {
-            timeStart = timeStart + " 00:00:00";
-        } else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
-        qo.setTimeStart(timeStart);
-
-        if(timeStop != null && timeStop != "") {
-            timeStop = timeStop + " 23:59:59";
-        }else {
-            timeStop = LocalDate.now() + " 23:59:59";
-        }
-        qo.setTimeStop(timeStop);
-
-
+    public QueryResultVo<List<VoIntake>> getHaveOpenNoCloseIntakes(IntakeCountValueQO qo) {
         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
         Long itemTotal = rmOpenCloseValveHistoryMapper.getHaveOpenNoCloseIntakesCount(params);
 
@@ -608,24 +558,7 @@
      * @param qo
      * @return
      */
-    public QueryResultVo<List<VoIntake>> getNoOpenHaveCloseIntakes(CommonQO qo) {
-        String timeStart = qo.getTimeStart();
-        String timeStop = qo.getTimeStop();
-        if(timeStart != null && timeStart != "") {
-            timeStart = timeStart + " 00:00:00";
-        } else {
-            timeStart = LocalDate.now() + " 00:00:00";
-        }
-        qo.setTimeStart(timeStart);
-
-        if(timeStop != null && timeStop != "") {
-            timeStop = timeStop + " 23:59:59";
-        }else {
-            timeStop = LocalDate.now() + " 23:59:59";
-        }
-        qo.setTimeStop(timeStop);
-
-
+    public QueryResultVo<List<VoIntake>> getNoOpenHaveCloseIntakes(IntakeCountValueQO qo) {
         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
         Long itemTotal = rmOpenCloseValveHistoryMapper.getNoOpenHaveCloseIntakesCount(params);
 
@@ -644,7 +577,11 @@
      * @return
      */
     public QueryResultVo<List<VoDayIntakeAmount>> getDayIntakeAmount(IntakeAmountQO qo) throws ParseException {
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
         String yearMonth = qo.getYearMonth();
+        yearMonth = yearMonth + "-01";
+        yearMonth = dateFormat.format(dateFormat.parse(yearMonth));
+
         Integer year = Integer.parseInt(yearMonth.substring(0,4));
         Integer month = Integer.parseInt(yearMonth.substring(5,7));
         qo.setYear(year);
@@ -698,7 +635,10 @@
      * @return
      */
     public QueryResultVo<List<VoDayLoss>> getDayLossAmount(IntakeAmountQO qo) throws ParseException {
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
         String yearMonth = qo.getYearMonth();
+        yearMonth = yearMonth + "-01";
+        yearMonth = dateFormat.format(dateFormat.parse(yearMonth));
         Integer year = Integer.parseInt(yearMonth.substring(0,4));
         Integer month = Integer.parseInt(yearMonth.substring(5,7));
         qo.setYear(year);
@@ -745,4 +685,41 @@
         rsVo.obj = rmLossDayLastMapper.getMonthLossAmount(params);
         return rsVo ;
     }
+
+    /**
+     * 鏈�杩戞湭鎶ユ暟鐨勫彇姘村彛
+     * @param qo
+     * @return
+     */
+    public QueryResultVo<List<VoIntakeUnReported>> getUnReportedIntakes(CommonQO qo) {
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == "") {
+            timeStart = null;
+        }
+        if(timeStop == "") {
+            timeStop = null;
+        }
+        if(timeStart != null && timeStart != "") {
+            timeStart = timeStart + " 00:00:00";
+        }
+        qo.setTimeStart(timeStart);
+
+        if(timeStop != null && timeStop != "") {
+            timeStop = timeStop + " 23:59:59";
+        }
+        qo.setTimeStop(timeStop);
+
+
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+        Long itemTotal = rmOnHourReportLastMapper.getUnReportedIntakesCount(params);
+
+        QueryResultVo<List<VoIntakeUnReported>> rsVo = new QueryResultVo<>() ;
+        rsVo.pageSize = qo.pageSize ;
+        rsVo.pageCurr = qo.pageCurr ;
+
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = rmOnHourReportLastMapper.getUnReportedIntakes(params);
+        return rsVo ;
+    }
 }

--
Gitblit v1.8.0