指定时间段内用水量超过指定值的取水口,修改上一次提交查询为查累积流量
| | |
| | | List<VoIntake> getNotOnlineIntakes(Map<?, ?> params); |
| | | |
| | | /** |
| | | * 指定时间段内用水量超过指定值的取水口数量 |
| | | * 指定时间段内累积流量超过指定值的取水口数量 |
| | | * @param params |
| | | * @return |
| | | */ |
| | | Long getUseWaterGtValueIntakesCount(Map<String, Object> params); |
| | | Long getTotalFlowGtValueIntakesCount(Map<String, Object> params); |
| | | |
| | | /** |
| | | * 指定时间段内用水量超过指定值的取水口 |
| | | * 指定时间段内累积流量超过指定值的取水口 |
| | | * @param params |
| | | * @return |
| | | */ |
| | | List<VoIntakeAccumulateAmount> getUseWaterGtValueIntakes(Map<String, Object> params); |
| | | List<VoIntakeAccumulateAmount> getTotalFlowGtValueIntakes(Map<String, Object> params); |
| | | } |
| | |
| | | import com.dy.pipIrrGlobal.voRm.VoOpenCloseValve; |
| | | import com.dy.pipIrrGlobal.voSt.VoClient; |
| | | import com.dy.pipIrrGlobal.voSt.VoIntake; |
| | | import com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount; |
| | | import com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | |
| | | * @return |
| | | */ |
| | | List<VoClient> getLargeWaterDurationClients(Map<String, Object> params); |
| | | |
| | | /** |
| | | * 指定时间段用水量超过指定值的取水口数量 |
| | | * @param params |
| | | * @return |
| | | */ |
| | | Long getUseWaterGtValueIntakesCount(Map<String, Object> params); |
| | | |
| | | /** |
| | | * 指定时间段用水量超过指定值的取水口 |
| | | * @param params |
| | | * @return |
| | | */ |
| | | List<VoIntakeAccumulateAmount> getUseWaterGtValueIntakes(Map<String, Object> params); |
| | | } |
| | |
| | | |
| | | pipIrr: |
| | | global: |
| | | dev: false #是否开发阶段,true或false |
| | | dev: true #是否开发阶段,true或false |
| | | dsName: ym #开发阶段,设置临时的数据库名称 |
| | | mw: |
| | | webPort: 8070 |
| | |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | <!--指定时间段内用水量超过指定值的取水口数量--> |
| | | <select id="getUseWaterGtValueIntakesCount" resultType="java.lang.Long"> |
| | | <!--指定时间段内累积流量超过指定值的取水口数量--> |
| | | <select id="getTotalFlowGtValueIntakesCount" resultType="java.lang.Long"> |
| | | select |
| | | count(*) |
| | | from |
| | |
| | | WHERE IFNULL(b.total_amount, 0)-IFNULL(a.total_amount, 0) > #{value} AND inta.deleted = 0 |
| | | ) c |
| | | </select> |
| | | <!--指定时间段内用水量超过指定值的取水口--> |
| | | <select id="getUseWaterGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount"> |
| | | <!--指定时间段内累积流量超过指定值的取水口--> |
| | | <select id="getTotalFlowGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount"> |
| | | SELECT |
| | | inta.id AS intakeId, |
| | | inta.NAME AS intakeNum, |
| | |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | <!--指定时间段用水量超过指定值的取水口数量--> |
| | | <select id="getUseWaterGtValueIntakesCount" resultType="java.lang.Long"> |
| | | select |
| | | count(*) |
| | | from |
| | | ( SELECT |
| | | inta.id AS intakeId, |
| | | inta.NAME AS intakeNum, |
| | | blo.NAME AS blockName , |
| | | IFNULL(SUM(rocvh.cl_this_amount),0) AS value |
| | | FROM |
| | | pr_intake inta |
| | | INNER JOIN ba_block blo ON blo.id = inta.blockId |
| | | LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id |
| | | WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0 |
| | | GROUP BY inta.id |
| | | HAVING IFNULL(SUM(rocvh.cl_this_amount),0) > #{value}) c |
| | | </select> |
| | | <!--指定时间段用水量超过指定值的取水口--> |
| | | <select id="getUseWaterGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount"> |
| | | SELECT |
| | | inta.id AS intakeId, |
| | | inta.NAME AS intakeNum, |
| | | blo.NAME AS blockName , |
| | | IFNULL(SUM(rocvh.cl_this_amount),0) AS value |
| | | FROM |
| | | pr_intake inta |
| | | INNER JOIN ba_block blo ON blo.id = inta.blockId |
| | | LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id |
| | | WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0 |
| | | GROUP BY inta.id |
| | | HAVING IFNULL(SUM(rocvh.cl_this_amount),0) > #{value} |
| | | ORDER BY inta.id |
| | | <trim prefix="limit " > |
| | | <if test="start != null and count != null"> |
| | | #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | </mapper> |
| | |
| | | } |
| | | |
| | | /** |
| | | * 指定时间段内累积流量超过指定值的取水口 |
| | | * @param qo |
| | | * @return |
| | | */ |
| | | public QueryResultVo<List<VoIntakeAccumulateAmount>> getTotalFlowGtValueIntakes(IntakeAmountValueQO qo) { |
| | | String timeStart = qo.getTimeStart(); |
| | | String timeStop = qo.getTimeStop(); |
| | | if(timeStart != null && timeStart != "") { |
| | | timeStart = timeStart + " 00:00:00"; |
| | | } else { |
| | | timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); |
| | | } |
| | | qo.setTimeStart(timeStart); |
| | | |
| | | if(timeStop != null && timeStop != "") { |
| | | timeStop = timeStop + " 23:59:59"; |
| | | }else { |
| | | timeStop = LocalDate.now() + " 23:59:59"; |
| | | } |
| | | qo.setTimeStop(timeStop); |
| | | |
| | | if (qo.getValue() == null){ |
| | | qo.setValue(0.0); |
| | | } |
| | | |
| | | |
| | | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); |
| | | Long itemTotal = rmOnHourReportHistoryMapper.getTotalFlowGtValueIntakesCount(params); |
| | | |
| | | QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ; |
| | | rsVo.pageSize = qo.pageSize ; |
| | | rsVo.pageCurr = qo.pageCurr ; |
| | | |
| | | rsVo.calculateAndSet(itemTotal, params); |
| | | rsVo.obj = rmOnHourReportHistoryMapper.getTotalFlowGtValueIntakes(params); |
| | | return rsVo ; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 指定时间段内用水量超过指定值的取水口 |
| | | * @param qo |
| | | * @return |
| | |
| | | |
| | | |
| | | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); |
| | | Long itemTotal = rmOnHourReportHistoryMapper.getUseWaterGtValueIntakesCount(params); |
| | | Long itemTotal = rmOpenCloseValveHistoryMapper.getUseWaterGtValueIntakesCount(params); |
| | | |
| | | QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ; |
| | | rsVo.pageSize = qo.pageSize ; |
| | | rsVo.pageCurr = qo.pageCurr ; |
| | | |
| | | rsVo.calculateAndSet(itemTotal, params); |
| | | rsVo.obj = rmOnHourReportHistoryMapper.getUseWaterGtValueIntakes(params); |
| | | rsVo.obj = rmOpenCloseValveHistoryMapper.getUseWaterGtValueIntakes(params); |
| | | return rsVo ; |
| | | } |
| | | } |
| | |
| | | |
| | | |
| | | /** |
| | | * 指定时间段内累积流量(定时报里的累积流量)超过指定值的取水口 |
| | | * @param |
| | | * @return |
| | | */ |
| | | @GetMapping(path = "/getTotalFlowGtValueIntakes") |
| | | @SsoAop() |
| | | public BaseResponse<QueryResultVo<List<VoIntakeAccumulateAmount>>> getTotalFlowGtValueIntakes(IntakeAmountValueQO qo) { |
| | | try { |
| | | QueryResultVo<List<VoIntakeAccumulateAmount>> res = intakeSv.getTotalFlowGtValueIntakes(qo); |
| | | if(res.itemTotal == 0) { |
| | | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); |
| | | } |
| | | return BaseResponseUtils.buildSuccess(res); |
| | | } catch (Exception e) { |
| | | log.error("获取记录异常", e); |
| | | return BaseResponseUtils.buildException(e.getMessage()) ; |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 指定时间段内用水量超过指定值的取水口 |
| | | * @param |
| | | * @return |