id,
        controller_id,
        intake_id,
        rtu_addr,
        dt,
        rtu_dt,
        valve_state,
        alarm_remain_water,
        alarm0_water_remain,
        alarm_exceed_year,
        alarm_water_meter_fault,
        alarm_loss,
        alarm_water_meter_break,
        alarm_ele_meter_fault,
        alarm0_money_remain,
        alarm_inner_door,
        alarm_outer_door,
        alarm_ele_miss,
        alarm_ele_exceed,
        alarm_ele_low_volt,
        state_ic_enable,
        alarm_battery_volt,
        alarm_valve,
        power_type
    
    
    
        
        delete
        from rm_alarm_state_history
        where id = #{id,jdbcType=BIGINT}
    
    
        
        insert into rm_alarm_state_history (id, controller_id, intake_id,
                                            rtu_addr, dt, rtu_dt,
                                            valve_state, alarm_remain_water, alarm0_water_remain,
                                            alarm_exceed_year, alarm_water_meter_fault,
                                            alarm_loss, alarm_water_meter_break, alarm_ele_meter_fault,
                                            alarm0_money_remain, alarm_inner_door, alarm_outer_door,
                                            alarm_ele_miss, alarm_ele_exceed, alarm_ele_low_volt,
                                            state_ic_enable, alarm_battery_volt, alarm_valve, power_type)
        values (#{id,jdbcType=BIGINT}, #{controllerId,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT},
                #{rtuAddr,jdbcType=VARCHAR}, #{dt,jdbcType=TIMESTAMP}, #{rtuDt,jdbcType=TIMESTAMP},
                #{valveState,jdbcType=TINYINT}, #{alarmRemainWater,jdbcType=TINYINT},
                #{alarm0WaterRemain,jdbcType=TINYINT},
                #{alarmExceedYear,jdbcType=TINYINT}, #{alarmWaterMeterFault,jdbcType=TINYINT},
                #{alarmLoss,jdbcType=TINYINT}, #{alarmWaterMeterBreak,jdbcType=TINYINT},
                #{alarmEleMeterFault,jdbcType=TINYINT},
                #{alarm0MoneyRemain,jdbcType=TINYINT}, #{alarmInnerDoor,jdbcType=TINYINT},
                #{alarmOuterDoor,jdbcType=TINYINT},
                #{alarmEleMiss,jdbcType=TINYINT}, #{alarmEleExceed,jdbcType=TINYINT},
                #{alarmEleLowVolt,jdbcType=TINYINT},
                #{stateIcEnable,jdbcType=TINYINT}, #{alarmBatteryVolt,jdbcType=TINYINT}, #{alarmValve,jdbcType=TINYINT},
                #{powerType,jdbcType=TINYINT})
    
    
        
        insert into rm_alarm_state_history
        
            
                id,
            
            
                controller_id,
            
            
                intake_id,
            
            
                rtu_addr,
            
            
                dt,
            
            
                rtu_dt,
            
            
                valve_state,
            
            
                alarm_remain_water,
            
            
                alarm0_water_remain,
            
            
                alarm_exceed_year,
            
            
                alarm_water_meter_fault,
            
            
                alarm_loss,
            
            
                alarm_water_meter_break,
            
            
                alarm_ele_meter_fault,
            
            
                alarm0_money_remain,
            
            
                alarm_inner_door,
            
            
                alarm_outer_door,
            
            
                alarm_ele_miss,
            
            
                alarm_ele_exceed,
            
            
                alarm_ele_low_volt,
            
            
                state_ic_enable,
            
            
                alarm_battery_volt,
            
            
                alarm_valve,
            
            
                power_type,
            
        
        
            
                #{id,jdbcType=BIGINT},
            
            
                #{controllerId,jdbcType=BIGINT},
            
            
                #{intakeId,jdbcType=BIGINT},
            
            
                #{rtuAddr,jdbcType=VARCHAR},
            
            
                #{dt,jdbcType=TIMESTAMP},
            
            
                #{rtuDt,jdbcType=TIMESTAMP},
            
            
                #{valveState,jdbcType=TINYINT},
            
            
                #{alarmRemainWater,jdbcType=TINYINT},
            
            
                #{alarm0WaterRemain,jdbcType=TINYINT},
            
            
                #{alarmExceedYear,jdbcType=TINYINT},
            
            
                #{alarmWaterMeterFault,jdbcType=TINYINT},
            
            
                #{alarmLoss,jdbcType=TINYINT},
            
            
                #{alarmWaterMeterBreak,jdbcType=TINYINT},
            
            
                #{alarmEleMeterFault,jdbcType=TINYINT},
            
            
                #{alarm0MoneyRemain,jdbcType=TINYINT},
            
            
                #{alarmInnerDoor,jdbcType=TINYINT},
            
            
                #{alarmOuterDoor,jdbcType=TINYINT},
            
            
                #{alarmEleMiss,jdbcType=TINYINT},
            
            
                #{alarmEleExceed,jdbcType=TINYINT},
            
            
                #{alarmEleLowVolt,jdbcType=TINYINT},
            
            
                #{stateIcEnable,jdbcType=TINYINT},
            
            
                #{alarmBatteryVolt,jdbcType=TINYINT},
            
            
                #{alarmValve,jdbcType=TINYINT},
            
            
                #{powerType,jdbcType=TINYINT},
            
        
    
    
        
        update rm_alarm_state_history
        
            
                controller_id = #{controllerId,jdbcType=BIGINT},
            
            
                intake_id = #{intakeId,jdbcType=BIGINT},
            
            
                rtu_addr = #{rtuAddr,jdbcType=VARCHAR},
            
            
                dt = #{dt,jdbcType=TIMESTAMP},
            
            
                rtu_dt = #{rtuDt,jdbcType=TIMESTAMP},
            
            
                valve_state = #{valveState,jdbcType=TINYINT},
            
            
                alarm_remain_water = #{alarmRemainWater,jdbcType=TINYINT},
            
            
                alarm0_water_remain = #{alarm0WaterRemain,jdbcType=TINYINT},
            
            
                alarm_exceed_year = #{alarmExceedYear,jdbcType=TINYINT},
            
            
                alarm_water_meter_fault = #{alarmWaterMeterFault,jdbcType=TINYINT},
            
            
                alarm_loss = #{alarmLoss,jdbcType=TINYINT},
            
            
                alarm_water_meter_break = #{alarmWaterMeterBreak,jdbcType=TINYINT},
            
            
                alarm_ele_meter_fault = #{alarmEleMeterFault,jdbcType=TINYINT},
            
            
                alarm0_money_remain = #{alarm0MoneyRemain,jdbcType=TINYINT},
            
            
                alarm_inner_door = #{alarmInnerDoor,jdbcType=TINYINT},
            
            
                alarm_outer_door = #{alarmOuterDoor,jdbcType=TINYINT},
            
            
                alarm_ele_miss = #{alarmEleMiss,jdbcType=TINYINT},
            
            
                alarm_ele_exceed = #{alarmEleExceed,jdbcType=TINYINT},
            
            
                alarm_ele_low_volt = #{alarmEleLowVolt,jdbcType=TINYINT},
            
            
                state_ic_enable = #{stateIcEnable,jdbcType=TINYINT},
            
            
                alarm_battery_volt = #{alarmBatteryVolt,jdbcType=TINYINT},
            
            
                alarm_valve = #{alarmValve,jdbcType=TINYINT},
            
            
                power_type = #{powerType,jdbcType=TINYINT},
            
        
        where id = #{id,jdbcType=BIGINT}
    
    
        
        update rm_alarm_state_history
        set controller_id           = #{controllerId,jdbcType=BIGINT},
            intake_id               = #{intakeId,jdbcType=BIGINT},
            rtu_addr                = #{rtuAddr,jdbcType=VARCHAR},
            dt                      = #{dt,jdbcType=TIMESTAMP},
            rtu_dt                  = #{rtuDt,jdbcType=TIMESTAMP},
            valve_state             = #{valveState,jdbcType=TINYINT},
            alarm_remain_water      = #{alarmRemainWater,jdbcType=TINYINT},
            alarm0_water_remain     = #{alarm0WaterRemain,jdbcType=TINYINT},
            alarm_exceed_year       = #{alarmExceedYear,jdbcType=TINYINT},
            alarm_water_meter_fault = #{alarmWaterMeterFault,jdbcType=TINYINT},
            alarm_loss              = #{alarmLoss,jdbcType=TINYINT},
            alarm_water_meter_break = #{alarmWaterMeterBreak,jdbcType=TINYINT},
            alarm_ele_meter_fault   = #{alarmEleMeterFault,jdbcType=TINYINT},
            alarm0_money_remain     = #{alarm0MoneyRemain,jdbcType=TINYINT},
            alarm_inner_door        = #{alarmInnerDoor,jdbcType=TINYINT},
            alarm_outer_door        = #{alarmOuterDoor,jdbcType=TINYINT},
            alarm_ele_miss          = #{alarmEleMiss,jdbcType=TINYINT},
            alarm_ele_exceed        = #{alarmEleExceed,jdbcType=TINYINT},
            alarm_ele_low_volt      = #{alarmEleLowVolt,jdbcType=TINYINT},
            state_ic_enable         = #{stateIcEnable,jdbcType=TINYINT},
            alarm_battery_volt      = #{alarmBatteryVolt,jdbcType=TINYINT},
            alarm_valve             = #{alarmValve,jdbcType=TINYINT},
            power_type              = #{powerType,jdbcType=TINYINT}
        where id = #{id,jdbcType=BIGINT}