From b181d08b9c8c4f3f4d8c475a60506ba4d93c8382 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期三, 09 四月 2025 11:38:23 +0800
Subject: [PATCH] 灌溉计划详情页,包含计划信息、轮灌组信息、取水口命令发布员结果信息
---
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java | 548 ++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 406 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 d6c8a55..8d28f5b 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,19 +1,26 @@
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;
import com.dy.pipIrrGlobal.voSt.*;
import com.dy.pipIrrStatistics.intake.qo.*;
+import com.dy.pipIrrStatistics.result.StatisticlResultCode;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.jetbrains.annotations.NotNull;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
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;
@@ -31,7 +38,7 @@
public class IntkeCtrl {
private final IntakeSv intakeSv;
- /**
+ /** ok 111
* 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙�
* @param qo
* @return
@@ -40,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.generateOneDayEndId(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);
@@ -184,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.generateOneDayEndId(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.generateOneDayEndId(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.generateOneDayEndId(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.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
@@ -201,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.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
@@ -237,8 +386,7 @@
}
}
-
- /**
+ /** ok 3
* 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙�
* @param
* @return
@@ -255,8 +403,7 @@
}
}
-
- /**
+ /** ok 4
* 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
* @param
* @return
@@ -273,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()) ;
+ }
+ }
/**
* 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
@@ -292,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.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getHaveOpenNoCloseIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
@@ -310,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.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getNoOpenHaveCloseIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
@@ -334,7 +533,20 @@
*/
@GetMapping(path = "/getDayIntakeAmount")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoDayIntakeAmount>>> getDayIntakeAmount(IntakeAmountQO qo) {
+ public BaseResponse<QueryResultVo<List<VoDayIntakeAmount>>> getDayIntakeAmount(@NotNull IntakeAmountQO qo) {
+ 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 {
return BaseResponseUtils.buildSuccess(intakeSv.getDayIntakeAmount(qo));
} catch (Exception e) {
@@ -350,7 +562,10 @@
*/
@GetMapping(path = "/getMonthIntakeAmount")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoMonthIntakeAmount>>> getMonthIntakeAmount(IntakeAmountQO qo) {
+ public BaseResponse<QueryResultVo<List<VoMonthAmount>>> getMonthIntakeAmount(IntakeAmountQO qo) {
+ if(qo.getYear() == null) {
+ return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_CANNOT_BE_NULL.getMessage());
+ }
try {
return BaseResponseUtils.buildSuccess(intakeSv.getMonthIntakeAmount(qo));
} catch (Exception e) {
@@ -358,4 +573,53 @@
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
+
+ /**
+ * 缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�
+ * @param qo
+ * @return
+ */
+ @GetMapping(path = "/getDayLossAmount")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoDayLoss>>> getDayLossAmount(IntakeAmountQO qo) {
+ 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 {
+ return BaseResponseUtils.buildSuccess(intakeSv.getDayLossAmount(qo));
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+ /**
+ * 缁熻鎸囧畾骞翠唤鍚勬湀婕忔崯閲�
+ * @param qo
+ * @return
+ */
+ @GetMapping(path = "/getMonthLossAmount")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoMonthAmount>>> getMonthLossAmount(IntakeAmountQO qo) {
+ if(qo.getYear() == null) {
+ return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_CANNOT_BE_NULL.getMessage());
+ }
+ try {
+ return BaseResponseUtils.buildSuccess(intakeSv.getMonthLossAmount(qo));
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
}
--
Gitblit v1.8.0