From c2028968a72482249491afd2c94fdd583e1eff94 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期三, 26 二月 2025 14:26:49 +0800 Subject: [PATCH] 解决控制器报警与状态的bug --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml | 221 +++++++++++++++++++++++++++--------------------------- 1 files changed, 110 insertions(+), 111 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml index 5604c9a..1dad843 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml @@ -350,12 +350,12 @@ where id = #{id,jdbcType=BIGINT} </update> <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍鎬绘暟--> -<select id="getRecordCount" resultType="java.lang.Long"> - select count(*) - from rm_alarm_state_history rash - Left join pr_intake pint on rash.intake_id = pint.id - <where> - <if test="alarmState == 1"> + <select id="getRecordCount" resultType="java.lang.Long"> + select count(*) + from rm_alarm_state_history rash + Left join pr_intake pint on rash.intake_id = pint.id + <where> + <if test="alarmState == 1"> and ( alarm_remain_water = 1 or alarm0_water_remain = 1 @@ -373,124 +373,123 @@ or alarm_battery_volt = 1 or alarm_valve = 1 ) - </if> - <if test="alarmState == 0"> - and ( - alarm_remain_water = 0 - and alarm0_water_remain = 0 - and alarm_exceed_year = 0 - and alarm_water_meter_fault = 0 - and alarm_loss = 0 - and alarm_water_meter_break = 0 - and alarm_ele_meter_fault = 0 - and alarm0_money_remain = 0 - and alarm_inner_door = 0 - and alarm_outer_door = 0 - and alarm_ele_miss = 0 - and alarm_ele_exceed = 0 - and alarm_ele_low_volt = 0 - and alarm_battery_volt = 0 - and alarm_valve = 0 - ) - </if> - <if test="valveState != null"> - and rash.valve_state = #{valveState,jdbcType=TINYINT} - </if> - <if test="intakeId != null and intakeId != '' "> - and rash.intake_id = #{intakeId} - </if> - <if test="intakeName != null and intakeName != '' "> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') - </if> - <if test="startDt != null and startDt != ''"> - and rasl.dt >= #{startDt,jdbcType=TIMESTAMP} - </if> - <if test="endDt != null and endDt != ''"> - and rasl.dt <= #{endDt,jdbcType=TIMESTAMP} - </if> - </where> - </select> - <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍--> - <select id="getControllerAlarmStateHistory" resultType="com.dy.pipIrrGlobal.voRm.VoControllerAlarmState"> - select - CAST(rash.controller_id AS char)AS controllerId, - CAST(rash.intake_id AS char)AS intakeId, - pint.name as intakeName, - rash.rtu_addr as rtuAddr, - rash.dt as dt, - rash.valve_state as valveState, - rash.alarm_remain_water as alarmRemainWater, - rash.alarm0_water_remain as alarm0WaterRemain, - rash.alarm_exceed_year as alarmExceedYear, - rash.alarm_water_meter_fault as alarmWaterMeterFault, - rash.alarm_loss as alarmLoss, - rash.alarm_water_meter_break as alarmWaterMeterBreak, - rash.alarm_ele_meter_fault as alarmEleMeterFault, - rash.alarm0_money_remain as alarm0MoneyRemain, - rash.alarm_inner_door as alarmInnerDoor, - rash.alarm_outer_door as alarmOuterDoor, - rash.alarm_ele_miss as alarmEleMiss, - rash.alarm_ele_exceed as alarmEleExceed, - rash.alarm_ele_low_volt as alarmEleLowVolt, - rash.state_ic_enable as stateIcEnable, - rash.alarm_battery_volt as alarmBatteryVolt, - rash.alarm_valve as alarmValve, - rash.power_type as powerType - from rm_alarm_state_history rash - Left join pr_intake pint on rash.intake_id = pint.id - <where> - <if test="alarmState == 1"> - and ( - alarm_remain_water = 1 - or alarm0_water_remain = 1 - or alarm_exceed_year = 1 - or alarm_water_meter_fault = 1 - or alarm_loss = 1 - or alarm_water_meter_break = 1 - or alarm_ele_meter_fault = 1 - or alarm0_money_remain = 1 - or alarm_inner_door = 1 - or alarm_outer_door = 1 - or alarm_ele_miss = 1 - or alarm_ele_exceed = 1 - or alarm_ele_low_volt = 1 - or alarm_battery_volt = 1 - or alarm_valve = 1 - ) </if> <if test="alarmState == 0"> and ( - alarm_remain_water = 0 - and alarm0_water_remain = 0 - and alarm_exceed_year = 0 - and alarm_water_meter_fault = 0 - and alarm_loss = 0 - and alarm_water_meter_break = 0 - and alarm_ele_meter_fault = 0 - and alarm0_money_remain = 0 - and alarm_inner_door = 0 - and alarm_outer_door = 0 - and alarm_ele_miss = 0 - and alarm_ele_exceed = 0 - and alarm_ele_low_volt = 0 - and alarm_battery_volt = 0 - and alarm_valve = 0 - ) + alarm_remain_water = 0 + and alarm0_water_remain = 0 + and alarm_exceed_year = 0 + and alarm_water_meter_fault = 0 + and alarm_loss = 0 + and alarm_water_meter_break = 0 + and alarm_ele_meter_fault = 0 + and alarm0_money_remain = 0 + and alarm_inner_door = 0 + and alarm_outer_door = 0 + and alarm_ele_miss = 0 + and alarm_ele_exceed = 0 + and alarm_ele_low_volt = 0 + and alarm_battery_volt = 0 + and alarm_valve = 0 + ) </if> <if test="valveState != null"> and rash.valve_state = #{valveState,jdbcType=TINYINT} </if> - <if test="intakeId != null and intakeId != '' "> + <if test="intakeId != null and intakeId != ''"> and rash.intake_id = #{intakeId} </if> - <if test="intakeName != null and intakeName != '' "> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeName != null and intakeName != ''"> + and pint.name like CONCAT('%', #{intakeName,jdbcType=VARCHAR}, '%') </if> <if test="startDt != null and startDt != ''"> - and rasl.dt >= #{startDt,jdbcType=TIMESTAMP} + and rash.dt >= #{startDt,jdbcType=TIMESTAMP} </if> <if test="endDt != null and endDt != ''"> - and rasl.dt <= #{endDt,jdbcType=TIMESTAMP} + and rash.dt <= #{endDt,jdbcType=TIMESTAMP} + </if> + </where> + </select> + <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍--> + <select id="getControllerAlarmStateHistory" resultType="com.dy.pipIrrGlobal.voRm.VoControllerAlarmState"> + select CAST(rash.controller_id AS char) AS controllerId, + CAST(rash.intake_id AS char) AS intakeId, + pint.name as intakeName, + rash.rtu_addr as rtuAddr, + rash.dt as dt, + rash.valve_state as valveState, + rash.alarm_remain_water as alarmRemainWater, + rash.alarm0_water_remain as alarm0WaterRemain, + rash.alarm_exceed_year as alarmExceedYear, + rash.alarm_water_meter_fault as alarmWaterMeterFault, + rash.alarm_loss as alarmLoss, + rash.alarm_water_meter_break as alarmWaterMeterBreak, + rash.alarm_ele_meter_fault as alarmEleMeterFault, + rash.alarm0_money_remain as alarm0MoneyRemain, + rash.alarm_inner_door as alarmInnerDoor, + rash.alarm_outer_door as alarmOuterDoor, + rash.alarm_ele_miss as alarmEleMiss, + rash.alarm_ele_exceed as alarmEleExceed, + rash.alarm_ele_low_volt as alarmEleLowVolt, + rash.state_ic_enable as stateIcEnable, + rash.alarm_battery_volt as alarmBatteryVolt, + rash.alarm_valve as alarmValve, + rash.power_type as powerType + from rm_alarm_state_history rash + Left join pr_intake pint on rash.intake_id = pint.id + <where> + <if test="alarmState == 1"> + and ( + alarm_remain_water = 1 + or alarm0_water_remain = 1 + or alarm_exceed_year = 1 + or alarm_water_meter_fault = 1 + or alarm_loss = 1 + or alarm_water_meter_break = 1 + or alarm_ele_meter_fault = 1 + or alarm0_money_remain = 1 + or alarm_inner_door = 1 + or alarm_outer_door = 1 + or alarm_ele_miss = 1 + or alarm_ele_exceed = 1 + or alarm_ele_low_volt = 1 + or alarm_battery_volt = 1 + or alarm_valve = 1 + ) + </if> + <if test="alarmState == 0"> + and ( + alarm_remain_water = 0 + and alarm0_water_remain = 0 + and alarm_exceed_year = 0 + and alarm_water_meter_fault = 0 + and alarm_loss = 0 + and alarm_water_meter_break = 0 + and alarm_ele_meter_fault = 0 + and alarm0_money_remain = 0 + and alarm_inner_door = 0 + and alarm_outer_door = 0 + and alarm_ele_miss = 0 + and alarm_ele_exceed = 0 + and alarm_ele_low_volt = 0 + and alarm_battery_volt = 0 + and alarm_valve = 0 + ) + </if> + <if test="valveState != null"> + and rash.valve_state = #{valveState,jdbcType=TINYINT} + </if> + <if test="intakeId != null and intakeId != ''"> + and rash.intake_id = #{intakeId} + </if> + <if test="intakeName != null and intakeName != ''"> + and pint.name like CONCAT('%', #{intakeName,jdbcType=VARCHAR}, '%') + </if> + <if test="startDt != null and startDt != ''"> + and rash.dt >= #{startDt,jdbcType=TIMESTAMP} + </if> + <if test="endDt != null and endDt != ''"> + and rash.dt <= #{endDt,jdbcType=TIMESTAMP} </if> </where> ORDER BY rash.id DESC -- Gitblit v1.8.0