| | |
| | | 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 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; |
| | | |
| | |
| | | public class IntkeCtrl { |
| | | private final IntakeSv intakeSv; |
| | | |
| | | /** |
| | | /** ok 111 |
| | | * 获取指定时间段内未上线的取水口 |
| | | * @param qo |
| | | * @return |
| | |
| | | @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()) ; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | /** ok 112 |
| | | * 最近未报数的取水口 |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping(path = "/getUnReportedIntakes") |
| | | @SsoAop() |
| | | 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<VoIntakeUnReported>> res = intakeSv.getUnReportedIntakes(qo); |
| | | return BaseResponseUtils.buildSuccess(res); |
| | | } catch (Exception e) { |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | /** ok 1 |
| | | * 获取累计流量超过指定值的取水口 |
| | | * @param qo |
| | | * @return |
| | |
| | | @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()); |
| | | return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); |
| | | } |
| | | try { |
| | | return BaseResponseUtils.buildSuccess(intakeSv.getLargeFlowIntakes(qo)); |
| | | } catch (Exception e) { |
| | | log.error("获取开卡记录异常", e); |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | /** ok 2 |
| | | * 获取累计流量低于指定值的取水口 |
| | | * @param qo |
| | | * @return |
| | |
| | | @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()); |
| | | return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); |
| | | } |
| | | try { |
| | | return BaseResponseUtils.buildSuccess(intakeSv.getSmallFlowIntakes(qo)); |
| | | } catch (Exception e) { |
| | | log.error("获取开卡记录异常", e); |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | |
| | | @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()); |
| | | return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); |
| | | } |
| | | try { |
| | | return BaseResponseUtils.buildSuccess(intakeSv.getUnderVoltIntakes(qo)); |
| | | } catch (Exception e) { |
| | | log.error("获取开卡记录异常", e); |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | |
| | | @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()); |
| | | return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); |
| | | } |
| | | try { |
| | | return BaseResponseUtils.buildSuccess(intakeSv.getSpecifiedSignalIntakes(qo)); |
| | | } catch (Exception e) { |
| | | log.error("获取开卡记录异常", 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) { |
| | | public BaseResponse<QueryResultVo<VoCountOfOpenType>> getCountByOpenType(@Valid OpenTypeQO qo, BindingResult bindingResult) throws Exception{ |
| | | 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(); |
| | | 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(qo)); |
| | | return BaseResponseUtils.buildSuccess(intakeSv.getCountByOpenType(startId, endId, qo.getOpenType())); |
| | | } catch (Exception e) { |
| | | log.error("获取开卡记录异常", 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) { |
| | | public BaseResponse<QueryResultVo<VoCountOfCloseType>> getCountByCloseType(@Valid CloseTypeQo qo, BindingResult bindingResult) throws Exception{ |
| | | 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(); |
| | | 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(qo)); |
| | | return BaseResponseUtils.buildSuccess(intakeSv.getCountByCloseType(startId, endId, qo.getCloseType())); |
| | | } catch (Exception e) { |
| | | log.error("获取开卡记录异常", e); |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | /** ok 13 |
| | | * 获取指定时间段内开阀次数超过指定值的取水口 |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping(path = "/getOpenValveGtIntakes") |
| | | @SsoAop() |
| | | 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); |
| | | } catch (Exception e) { |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | /** ok 14 |
| | | * 获取指定时间段内开阀次数低于指定值的取水口 |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping(path = "/getOpenValveLtIntakes") |
| | | @SsoAop() |
| | | 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); |
| | | } catch (Exception e) { |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取指定时间段内开阀次数超过指定值的取水口 |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping(path = "/getOpenValveGtIntakes") |
| | | @SsoAop() |
| | | public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(IntakeCountValueQO qo) { |
| | | try { |
| | | QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo); |
| | | return BaseResponseUtils.buildSuccess(res); |
| | | } catch (Exception e) { |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取指定时间段内开阀次数低于指定值的取水口 |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping(path = "/getOpenValveLtIntakes") |
| | | @SsoAop() |
| | | public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(IntakeCountValueQO qo) { |
| | | try { |
| | | QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo); |
| | | return BaseResponseUtils.buildSuccess(res); |
| | | } catch (Exception e) { |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 指定时间段内累积流量(定时报里的累积流量)超过指定值的取水口 |
| | | * @param |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | /** ok 3 |
| | | * 指定时间段内用水量超过指定值的取水口 |
| | | * @param |
| | | * @return |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | /** ok 4 |
| | | * 指定时间段内消费金额超过指定值的取水口 |
| | | * @param |
| | | * @return |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 指定时间段内用水次数超过指定值的取水口 |
| | | * @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()) ; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 指定时间段内用水时长超过指定值的取水口 |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | /** 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); |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | /** 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); |
| | |
| | | @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 { |
| | |
| | | @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 { |
| | |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | } |