From 0f36c6976a6ca3dd6c07a27a2dd012837aa0c40e Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 14 一月 2025 14:01:25 +0800
Subject: [PATCH] 删除查询电池电压参数固定值配置与设置

---
 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java |  500 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 358 insertions(+), 142 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
index 0525e6f..b668470 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
@@ -1,6 +1,8 @@
 package com.dy.pipIrrStatistics.intake;
 
 import com.dy.common.aop.SsoAop;
+import com.dy.common.util.DateTime;
+import com.dy.common.util.IDLongGenerator;
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.common.webUtil.QueryResultVo;
@@ -16,6 +18,9 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.util.Date;
 import java.util.List;
 import java.util.Objects;
 
@@ -33,7 +38,7 @@
 public class IntkeCtrl {
     private final IntakeSv intakeSv;
 
-    /**
+    /** ok 111
      * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙�
      * @param qo
      * @return
@@ -42,142 +47,50 @@
     @SsoAop()
     public BaseResponse<QueryResultVo<List<VoIntake>>> getNotOnlineIntakes(@Valid CommonQO qo, BindingResult bindingResult) {
         if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
         }
-
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        Long startId = null ;
+        Long endId = null ;
+        if(timeStart != null && !timeStart.trim().equals("")){
+            int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+            startId = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        }
+        if(timeStop != null && !timeStop.trim().equals("")){
+            int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+            endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
+        }
+        if(startId != null && endId != null){
+            if(endId < startId){
+                return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+            }
+        }
         try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getNotOnlineIntakes(qo));
+            return BaseResponseUtils.buildSuccess(intakeSv.getNotOnlineIntakes(qo, startId, endId));
         } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+            log.error("鑾峰彇璁板綍寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage()) ;
         }
     }
 
-    /**
-     * 鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
-     * @param qo
-     * @return
-     */
-    @GetMapping(path = "/getLargeFlowIntakes")
-    @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getLargeFlowIntakes(@Valid CumulativeFlowQO qo, BindingResult bindingResult) {
-        if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
-        }
-        try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getLargeFlowIntakes(qo));
-        } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-    /**
-     * 鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�
-     * @param qo
-     * @return
-     */
-    @GetMapping(path = "/getSmallFlowIntakes")
-    @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getSmallFlowIntakes(@Valid CumulativeFlowQO qo, BindingResult bindingResult) {
-        if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
-        }
-        try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getSmallFlowIntakes(qo));
-        } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-    /**
-     * 鑾峰彇娆犲帇鍙栨按鍙�
-     * @param qo
-     * @return
-     */
-    @GetMapping(path = "/getUnderVoltIntakes")
-    @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoBatteryVolt>>> getUnderVoltIntakes(@Valid BatteryVoltQO qo, BindingResult bindingResult) {
-        if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
-        }
-        try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getUnderVoltIntakes(qo));
-        } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-    /**
-     * 鑾峰彇鎸囧畾淇″彿寮哄害鐨勫彇姘村彛
-     * @param qo
-     * @return
-     */
-    @GetMapping(path = "/getSpecifiedSignalIntakes")
-    @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoSignalIntensity>>> getSpecifiedSignalIntakes(@Valid SignalIntensityQO qo, BindingResult bindingResult) {
-        if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
-        }
-        try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getSpecifiedSignalIntakes(qo));
-        } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-    /**
-     * 鏍规嵁寮�闃�绫诲瀷鑾峰彇鎿嶄綔娆℃暟
-     * @param qo
-     * @return
-     */
-    @GetMapping(path = "/getCountByOpenType")
-    @SsoAop()
-    public BaseResponse<QueryResultVo<VoCountOfOpenType>> getCountByOpenType(@Valid OpenTypeQO qo, BindingResult bindingResult) {
-        if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
-        }
-        try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getCountByOpenType(qo));
-        } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-    /**
-     * 鏍规嵁鍏抽榾绫诲瀷鑾峰彇鎿嶄綔娆℃暟
-     * @param qo
-     * @return
-     */
-    @GetMapping(path = "/getCountByCloseType")
-    @SsoAop()
-    public BaseResponse<QueryResultVo<VoCountOfCloseType>> getCountByCloseType(@Valid CloseTypeQo qo, BindingResult bindingResult) {
-        if(bindingResult != null && bindingResult.hasErrors()){
-            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
-        }
-        try {
-            return BaseResponseUtils.buildSuccess(intakeSv.getCountByCloseType(qo));
-        } catch (Exception e) {
-            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-
-    /**
-     * 鑾峰彇浠庢湭寮�杩囬榾鐨勫彇姘村彛
+    /** ok 112
+     * 鏈�杩戞湭鎶ユ暟鐨勫彇姘村彛
      * @param
      * @return
      */
-    @GetMapping(path = "/getNeverOpenValveIntakes")
+    @GetMapping(path = "/getUnReportedIntakes")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoIntake>>> getNeverOpenValveIntakes(CommonQO qo) {
+    public BaseResponse<QueryResultVo<List<VoIntakeUnReported>>> getUnReportedIntakes(@Valid CommonQO qo, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        String timeStart = qo.getTimeStart();
+        if(timeStart != null && !timeStart.trim().equals("")) {
+            qo.setTimeStart(timeStart + " 00:00:00") ;
+        }
         try {
-            QueryResultVo<List<VoIntake>> res = intakeSv.getNeverOpenValveIntakes(qo);
+            QueryResultVo<List<VoIntakeUnReported>> res = intakeSv.getUnReportedIntakes(qo);
             return BaseResponseUtils.buildSuccess(res);
         } catch (Exception e) {
             log.error("鑾峰彇璁板綍寮傚父", e);
@@ -186,14 +99,227 @@
     }
 
 
-    /**
+
+    /** ok 113
+     * 鑾峰彇浠庢湭寮�杩囬榾鐨勫彇姘村彛
+     * @param
+     * @return
+     */
+    @GetMapping(path = "/getNeverOpenValveIntakes")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoIntakeUnOpenValve>>> getNeverOpenValveIntakes(@Valid CommonQO qo, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        Long startId = null ;
+        Long endId = null ;
+        if(timeStart != null && !timeStart.trim().equals("")){
+            int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+            startId = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        }
+        if(timeStop != null && !timeStop.trim().equals("")){
+            int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+            endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
+        }
+        if(startId != null && endId != null){
+            if(endId < startId){
+                return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+            }
+        }
+        try {
+            QueryResultVo<List<VoIntakeUnOpenValve>> res = intakeSv.getNeverOpenValveIntakes(qo, startId, endId) ;
+            return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+
+    /** ok 1
+     * 鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getLargeFlowIntakes")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getLargeFlowIntakes(@Valid CumulativeFlowQO qo, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        try {
+            return BaseResponseUtils.buildSuccess(intakeSv.getLargeFlowIntakes(qo));
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /** ok 2
+     * 鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getSmallFlowIntakes")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getSmallFlowIntakes(@Valid CumulativeFlowQO qo, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        try {
+            return BaseResponseUtils.buildSuccess(intakeSv.getSmallFlowIntakes(qo));
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /** ok 114
+     * 鑾峰彇娆犲帇鍙栨按鍙�
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getUnderVoltIntakes")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoBatteryVolt>>> getUnderVoltIntakes(@Valid BatteryVoltQO qo, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        try {
+            return BaseResponseUtils.buildSuccess(intakeSv.getUnderVoltIntakes(qo));
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /** ok 115
+     * 鑾峰彇鎸囧畾淇″彿寮哄害鐨勫彇姘村彛
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getSpecifiedSignalIntakes")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoSignalIntensity>>> getSpecifiedSignalIntakes(@Valid SignalIntensityQO qo, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        try {
+            return BaseResponseUtils.buildSuccess(intakeSv.getSpecifiedSignalIntakes(qo));
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /** ok 11
+     * 鏍规嵁寮�闃�绫诲瀷鑾峰彇鎿嶄綔娆℃暟
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getCountByOpenType")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<VoCountOfOpenType>> getCountByOpenType(@Valid OpenTypeQO qo, BindingResult bindingResult) throws Exception{
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+        }
+        if(timeStop == null || timeStop.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈢粨鏉熸椂闂�");
+        }
+        long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+        if(dur < 0){
+            return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+        }
+        if(dur > 366){
+            return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+        }
+        int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+        int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+        long startId = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        long endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
+        try {
+            return BaseResponseUtils.buildSuccess(intakeSv.getCountByOpenType(startId, endId, qo.getOpenType()));
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /** ok 12
+     * 鏍规嵁鍏抽榾绫诲瀷鑾峰彇鎿嶄綔娆℃暟
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "/getCountByCloseType")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<VoCountOfCloseType>> getCountByCloseType(@Valid CloseTypeQo qo, BindingResult bindingResult) throws Exception{
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+        }
+        if(timeStop == null || timeStop.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈢粨鏉熸椂闂�");
+        }
+        long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+        if(dur < 0){
+            return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+        }
+        if(dur > 366){
+            return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+        }
+        int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+        int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+        long startId = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        long endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
+        try {
+            return BaseResponseUtils.buildSuccess(intakeSv.getCountByCloseType(startId, endId, qo.getCloseType()));
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /** ok 13
      * 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
      * @param
      * @return
      */
     @GetMapping(path = "/getOpenValveGtIntakes")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(IntakeCountValueQO qo) {
+    public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) throws Exception {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+        }
+        if(timeStop == null || timeStop.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈢粨鏉熸椂闂�");
+        }
+        long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+        if(dur < 0){
+            return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+        }
+        if(dur > 366){
+            return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+        }
+        int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+        int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+        qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
         try {
             QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo);
             return BaseResponseUtils.buildSuccess(res);
@@ -203,15 +329,36 @@
         }
     }
 
-
-    /**
+    /** ok 14
      * 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�
      * @param
      * @return
      */
     @GetMapping(path = "/getOpenValveLtIntakes")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(IntakeCountValueQO qo) {
+    public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) throws Exception {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+        }
+        if(timeStop == null || timeStop.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈢粨鏉熸椂闂�");
+        }
+        long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+        if(dur < 0){
+            return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+        }
+        if(dur > 366){
+            return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+        }
+        int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+        int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+        qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
         try {
             QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo);
             return BaseResponseUtils.buildSuccess(res);
@@ -239,8 +386,7 @@
         }
     }
 
-
-    /**
+    /** ok 3
      * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙�
      * @param
      * @return
@@ -257,8 +403,7 @@
         }
     }
 
-
-    /**
+    /** ok 4
      * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
      * @param
      * @return
@@ -275,7 +420,22 @@
         }
     }
 
-
+    /**
+     * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按娆℃暟瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+     * @param
+     * @return
+     */
+    @GetMapping(path = "/getUseWaterTimesGtValueIntakes")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoIntakeAccumulateAmount>>> getUseWaterTimesGtValueIntakes(IntakeCountValueQO qo) {
+        try {
+            QueryResultVo<List<VoIntakeAccumulateAmount>> res = intakeSv.getUseWaterTimesGtValueIntakes(qo);
+            return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鑾峰彇璁板綍寮傚父", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
 
     /**
      * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
@@ -294,15 +454,33 @@
         }
     }
 
-
-    /**
+    /** ok 15
      * 鎸囧畾鏃堕棿娈� 鏈夊紑闃� 鏃犲叧闃�鐨勫彇姘村彛
      * @param
      * @return
      */
     @GetMapping(path = "/getHaveOpenNoCloseIntakes")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoIntake>>> getHaveOpenNoCloseIntakes(CommonQO qo) {
+    public BaseResponse<QueryResultVo<List<VoIntake>>> getHaveOpenNoCloseIntakes(IntakeCountValueQO qo) throws Exception {
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+        }
+        if(timeStop == null || timeStop.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈢粨鏉熸椂闂�");
+        }
+        long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+        if(dur < 0){
+            return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+        }
+        if(dur > 366){
+            return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+        }
+        int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+        int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+        qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
         try {
             QueryResultVo<List<VoIntake>> res = intakeSv.getHaveOpenNoCloseIntakes(qo);
             return BaseResponseUtils.buildSuccess(res);
@@ -312,14 +490,33 @@
         }
     }
 
-    /**
+    /** ok 16
      * 鎸囧畾鏃堕棿娈� 鏃犲紑闃� 鏈夊叧闃�鐨勫彇姘村彛
      * @param
      * @return
      */
     @GetMapping(path = "/getNoOpenHaveCloseIntakes")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoIntake>>> getNoOpenHaveCloseIntakes(CommonQO qo) {
+    public BaseResponse<QueryResultVo<List<VoIntake>>> getNoOpenHaveCloseIntakes(IntakeCountValueQO qo) throws Exception {
+        String timeStart = qo.getTimeStart();
+        String timeStop = qo.getTimeStop();
+        if(timeStart == null || timeStart.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+        }
+        if(timeStop == null || timeStop.trim().equals("")){
+            return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈢粨鏉熸椂闂�");
+        }
+        long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+        if(dur < 0){
+            return BaseResponseUtils.buildErrorMsg("缁撴潫鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+        }
+        if(dur > 366){
+            return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+        }
+        int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+        int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+        qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+        qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
         try {
             QueryResultVo<List<VoIntake>> res = intakeSv.getNoOpenHaveCloseIntakes(qo);
             return BaseResponseUtils.buildSuccess(res);
@@ -337,8 +534,17 @@
     @GetMapping(path = "/getDayIntakeAmount")
     @SsoAop()
     public BaseResponse<QueryResultVo<List<VoDayIntakeAmount>>> getDayIntakeAmount(@NotNull IntakeAmountQO qo) {
-        if(qo.getYearMonth() == null) {
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String yearMonth = qo.getYearMonth();
+        if(yearMonth == null) {
             return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_AND_MONTH_CANNOT_BE_NULL.getMessage());
+        }else {
+            yearMonth = yearMonth + "-01";
+            try {
+                Date date = dateFormat.parse(yearMonth);
+            } catch (Exception e) {
+                return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_OR_MONTH_IS_ERROR.getMessage());
+            }
         }
 
         try {
@@ -376,8 +582,17 @@
     @GetMapping(path = "/getDayLossAmount")
     @SsoAop()
     public BaseResponse<QueryResultVo<List<VoDayLoss>>> getDayLossAmount(IntakeAmountQO qo) {
-        if(qo.getYearMonth() == null) {
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String yearMonth = qo.getYearMonth();
+        if(yearMonth == null) {
             return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_AND_MONTH_CANNOT_BE_NULL.getMessage());
+        }else {
+            yearMonth = yearMonth + "-01";
+            try {
+                Date date = dateFormat.parse(yearMonth);
+            } catch (Exception e) {
+                return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_OR_MONTH_IS_ERROR.getMessage());
+            }
         }
 
         try {
@@ -406,4 +621,5 @@
             return BaseResponseUtils.buildException(e.getMessage()) ;
         }
     }
+
 }

--
Gitblit v1.8.0