liurunyu
2025-02-07 123ed266760b75e0ffb89e24b3cec57d564419a4
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
@@ -38,7 +38,7 @@
public class IntkeCtrl {
    private final IntakeSv intakeSv;
    /**
    /** ok 111
     * 获取指定时间段内未上线的取水口
     * @param qo
     * @return
@@ -49,14 +49,94 @@
        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 {
            return BaseResponseUtils.buildSuccess(intakeSv.getNotOnlineIntakes(qo));
            return BaseResponseUtils.buildSuccess(intakeSv.getNotOnlineIntakes(qo, startId, endId));
        } catch (Exception 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 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
     * 获取累计流量超过指定值的取水口
@@ -96,7 +176,7 @@
        }
    }
    /**
    /** ok 114
     * 获取欠压取水口
     * @param qo
     * @return
@@ -115,7 +195,7 @@
        }
    }
    /**
    /** ok 115
     * 获取指定信号强度的取水口
     * @param qo
     * @return
@@ -151,11 +231,11 @@
            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("时间跨度不能超过一年");
@@ -163,7 +243,7 @@
        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) {
@@ -189,11 +269,11 @@
            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("时间跨度不能超过一年");
@@ -201,7 +281,7 @@
        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) {
@@ -227,11 +307,11 @@
            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("时间跨度不能超过一年");
@@ -239,7 +319,7 @@
        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);
@@ -266,11 +346,11 @@
            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("时间跨度不能超过一年");
@@ -278,7 +358,7 @@
        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);
@@ -288,23 +368,6 @@
        }
    }
    /**
     * 获取从未开过阀的取水口
     * @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()) ;
        }
    }
    /**
     * 指定时间段内累积流量(定时报里的累积流量)超过指定值的取水口
@@ -405,11 +468,11 @@
            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("时间跨度不能超过一年");
@@ -417,7 +480,7 @@
        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);
@@ -441,11 +504,11 @@
            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("时间跨度不能超过一年");
@@ -453,7 +516,7 @@
        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);
@@ -559,20 +622,4 @@
        }
    }
    /**
     * 最近未报数的取水口
     * @param
     * @return
     */
    @GetMapping(path = "/getUnReportedIntakes")
    @SsoAop()
    public BaseResponse<QueryResultVo<List<VoIntakeUnReported>>> getUnReportedIntakes(CommonQO qo) {
        try {
            QueryResultVo<List<VoIntakeUnReported>> res = intakeSv.getUnReportedIntakes(qo);
            return BaseResponseUtils.buildSuccess(res);
        } catch (Exception e) {
            log.error("获取记录异常", e);
            return BaseResponseUtils.buildException(e.getMessage()) ;
        }
    }
}