|  |  | 
 |  |  |         } | 
 |  |  |         if(timeStop != null && !timeStop.trim().equals("")){ | 
 |  |  |             int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ; | 
 |  |  |             endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |             endId = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         } | 
 |  |  |         if(startId != null && endId != null){ | 
 |  |  |             if(endId < startId){ | 
 |  |  |                 return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |                 return BaseResponseUtils.buildErrorMsg("结束时间不能早于开始时间"); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         try { | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildException(e.getMessage()) ; | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** 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 | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |     /** ok 114 | 
 |  |  |      * 获取欠压取水口 | 
 |  |  |      * @param qo | 
 |  |  |      * @return | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |     /** ok 115 | 
 |  |  |      * 获取指定信号强度的取水口 | 
 |  |  |      * @param qo | 
 |  |  |      * @return | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询开始时间"); | 
 |  |  |         } | 
 |  |  |         if(timeStop == null || timeStop.trim().equals("")){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询截止时间"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询结束时间"); | 
 |  |  |         } | 
 |  |  |         long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ; | 
 |  |  |         if(dur < 0){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |             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]) ; | 
 |  |  |         long endId = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         try { | 
 |  |  |             return BaseResponseUtils.buildSuccess(intakeSv.getCountByOpenType(startId, endId, qo.getOpenType())); | 
 |  |  |         } catch (Exception e) { | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询开始时间"); | 
 |  |  |         } | 
 |  |  |         if(timeStop == null || timeStop.trim().equals("")){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询截止时间"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询结束时间"); | 
 |  |  |         } | 
 |  |  |         long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ; | 
 |  |  |         if(dur < 0){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |             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]) ; | 
 |  |  |         long endId = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         try { | 
 |  |  |             return BaseResponseUtils.buildSuccess(intakeSv.getCountByCloseType(startId, endId, qo.getCloseType())); | 
 |  |  |         } catch (Exception e) { | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询开始时间"); | 
 |  |  |         } | 
 |  |  |         if(timeStop == null || timeStop.trim().equals("")){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询截止时间"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询结束时间"); | 
 |  |  |         } | 
 |  |  |         long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ; | 
 |  |  |         if(dur < 0){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |             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]) ; | 
 |  |  |         qo.idEnd = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         try { | 
 |  |  |             QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo); | 
 |  |  |             return BaseResponseUtils.buildSuccess(res); | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询开始时间"); | 
 |  |  |         } | 
 |  |  |         if(timeStop == null || timeStop.trim().equals("")){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询截止时间"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询结束时间"); | 
 |  |  |         } | 
 |  |  |         long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ; | 
 |  |  |         if(dur < 0){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |             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]) ; | 
 |  |  |         qo.idEnd = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         try { | 
 |  |  |             QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo); | 
 |  |  |             return BaseResponseUtils.buildSuccess(res); | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取从未开过阀的取水口 | 
 |  |  |      * @param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @GetMapping(path = "/getNeverOpenValveIntakes") | 
 |  |  |     @SsoAop() | 
 |  |  |     public BaseResponse<QueryResultVo<List<VoIntake>>> getNeverOpenValveIntakes(CommonQO qo) { | 
 |  |  |         try { | 
 |  |  |             QueryResultVo<List<VoIntake>> res = intakeSv.getNeverOpenValveIntakes(qo); | 
 |  |  |             return BaseResponseUtils.buildSuccess(res); | 
 |  |  |         } catch (Exception e) { | 
 |  |  |             log.error("获取记录异常", e); | 
 |  |  |             return BaseResponseUtils.buildException(e.getMessage()) ; | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 指定时间段内累积流量(定时报里的累积流量)超过指定值的取水口 | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询开始时间"); | 
 |  |  |         } | 
 |  |  |         if(timeStop == null || timeStop.trim().equals("")){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询截止时间"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询结束时间"); | 
 |  |  |         } | 
 |  |  |         long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ; | 
 |  |  |         if(dur < 0){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |             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]) ; | 
 |  |  |         qo.idEnd = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         try { | 
 |  |  |             QueryResultVo<List<VoIntake>> res = intakeSv.getHaveOpenNoCloseIntakes(qo); | 
 |  |  |             return BaseResponseUtils.buildSuccess(res); | 
 |  |  | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询开始时间"); | 
 |  |  |         } | 
 |  |  |         if(timeStop == null || timeStop.trim().equals("")){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询截止时间"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("请设置查询结束时间"); | 
 |  |  |         } | 
 |  |  |         long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ; | 
 |  |  |         if(dur < 0){ | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("截止时间不能早于开始时间"); | 
 |  |  |             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]) ; | 
 |  |  |         qo.idEnd = IDLongGenerator.generateOneDayEndId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ; | 
 |  |  |         try { | 
 |  |  |             QueryResultVo<List<VoIntake>> res = intakeSv.getNoOpenHaveCloseIntakes(qo); | 
 |  |  |             return BaseResponseUtils.buildSuccess(res); |