From b143bd5b7970a27c310de83bf0cf28dee6298307 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期三, 19 二月 2025 11:13:06 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java | 584 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 435 insertions(+), 149 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 6c4997e..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,29 +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.pipIrrGlobal.voSt.VoBatteryVolt; -import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; -import com.dy.pipIrrGlobal.voSt.VoIntake; -import com.dy.pipIrrGlobal.voSt.VoSignalIntensity; -import com.dy.pipIrrStatistics.intake.qo.BatteryVoltQO; -import com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount; -import com.dy.pipIrrStatistics.intake.qo.CumulativeFlowQO; -import com.dy.pipIrrStatistics.intake.qo.SignalIntensityQO; -import com.dy.pipIrrStatistics.intake.qo.IntakeCountValueQO; 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; @@ -41,7 +38,7 @@ public class IntkeCtrl { private final IntakeSv intakeSv; - /** + /** ok 111 * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙� * @param qo * @return @@ -50,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); @@ -194,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); @@ -211,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); @@ -247,8 +386,7 @@ } } - - /** + /** ok 3 * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙� * @param * @return @@ -265,8 +403,7 @@ } } - - /** + /** ok 4 * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙� * @param * @return @@ -283,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()) ; + } + } /** * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙� @@ -302,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); @@ -320,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); @@ -336,4 +525,101 @@ return BaseResponseUtils.buildException(e.getMessage()) ; } } + + /** + * 缁熻鎸囧畾鏈堜唤鍚勫ぉ鐢ㄦ按閲� + * @param qo + * @return + */ + @GetMapping(path = "/getDayIntakeAmount") + @SsoAop() + 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) { + log.error("鑾峰彇璁板綍寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()) ; + } + } + + /** + * 缁熻鎸囧畾骞翠唤鍚勬湀鐢ㄦ按閲� + * @param qo + * @return + */ + @GetMapping(path = "/getMonthIntakeAmount") + @SsoAop() + 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) { + log.error("鑾峰彇璁板綍寮傚父", e); + 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