zhubaomin
2024-10-28 1e409f99905c894363248239b856bce6735fd3d5
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
@@ -1,323 +1,591 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveLastMapper">
  <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
    <!--@mbg.generated-->
    <!--@Table rm_open_close_valve_last-->
    <id column="id" jdbcType="BIGINT" property="id" />
    <result column="last_history_id" jdbcType="BIGINT" property="lastHistoryId" />
    <result column="controller_id" jdbcType="BIGINT" property="controllerId" />
    <result column="intake_id" jdbcType="BIGINT" property="intakeId" />
    <result column="rtu_addr" jdbcType="VARCHAR" property="rtuAddr" />
    <result column="op_dt" jdbcType="DATE" property="opDt" />
    <result column="op_type" jdbcType="TINYINT" property="opType" />
    <result column="op_total_amount" jdbcType="DOUBLE" property="opTotalAmount" />
    <result column="op_ic_card_no" jdbcType="VARCHAR" property="opIcCardNo" />
    <result column="op_ic_card_addr" jdbcType="VARCHAR" property="opIcCardAddr" />
    <result column="op_remain_money" jdbcType="DOUBLE" property="opRemainMoney" />
    <result column="open_dt" jdbcType="DATE" property="openDt" />
    <result column="cl_dt" jdbcType="DATE" property="clDt" />
    <result column="cl_type" jdbcType="TINYINT" property="clType" />
    <result column="cl_total_amount" jdbcType="DOUBLE" property="clTotalAmount" />
    <result column="cl_ic_card_no" jdbcType="VARCHAR" property="clIcCardNo" />
    <result column="cl_ic_card_addr" jdbcType="VARCHAR" property="clIcCardAddr" />
    <result column="cl_remain_money" jdbcType="DOUBLE" property="clRemainMoney" />
    <result column="cl_this_amount" jdbcType="DOUBLE" property="clThisAmount" />
    <result column="cl_this_money" jdbcType="DOUBLE" property="clThisMoney" />
    <result column="cl_this_time" jdbcType="INTEGER" property="clThisTime" />
    <result column="cl_open_dt" jdbcType="DATE" property="clOpenDt" />
    <result column="close_dt" jdbcType="DATE" property="closeDt" />
  </resultMap>
  <sql id="Base_Column_List">
    <!--@mbg.generated-->
    id, last_history_id, controller_id, intake_id, rtu_addr, op_dt, op_type, op_total_amount, op_ic_card_no,
    op_ic_card_addr, op_remain_money, open_dt, cl_dt, cl_type, cl_total_amount, cl_ic_card_no,
    cl_ic_card_addr, cl_remain_money, cl_this_amount, cl_this_money, cl_this_time, cl_open_dt,
    close_dt
  </sql>
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
    <!--@mbg.generated-->
    select
    <include refid="Base_Column_List" />
    from rm_open_close_valve_last
    where id = #{id,jdbcType=BIGINT}
  </select>
  <select id="selectByRtuAddr" parameterType="java.lang.String" resultMap="BaseResultMap">
    <!--@mbg.generated-->
    select
    <include refid="Base_Column_List" />
    from rm_open_close_valve_last
    where rtu_addr = #{rtuAddr,jdbcType=VARCHAR}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
    <!--@mbg.generated-->
    delete from rm_open_close_valve_last
    where id = #{id,jdbcType=BIGINT}
  </delete>
  <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
    <!--@mbg.generated-->
    insert into rm_open_close_valve_last (id, last_history_id, controller_id, intake_id,
      rtu_addr, op_dt, op_type,
      op_total_amount, op_ic_card_no, op_ic_card_addr,
      op_remain_money, open_dt, cl_dt,
      cl_type, cl_total_amount, cl_ic_card_no,
      cl_ic_card_addr, cl_remain_money, cl_this_amount,
      cl_this_money, cl_this_time, cl_open_dt,
      close_dt)
    values (#{id,jdbcType=BIGINT}, #{lastHistoryId,jdbcType=BIGINT}, #{controllerId,jdbcType=BIGINT},
      #{intakeId,jdbcType=BIGINT}, #{rtuAddr,jdbcType=VARCHAR}, #{opDt,jdbcType=DATE},
      #{opType,jdbcType=TINYINT}, #{opTotalAmount,jdbcType=DOUBLE}, #{opIcCardNo,jdbcType=VARCHAR},
      #{opIcCardAddr,jdbcType=VARCHAR}, #{opRemainMoney,jdbcType=DOUBLE}, #{openDt,jdbcType=DATE},
      #{clDt,jdbcType=DATE}, #{clType,jdbcType=TINYINT}, #{clTotalAmount,jdbcType=DOUBLE},
      #{clIcCardNo,jdbcType=VARCHAR}, #{clIcCardAddr,jdbcType=VARCHAR}, #{clRemainMoney,jdbcType=DOUBLE},
      #{clThisAmount,jdbcType=DOUBLE}, #{clThisMoney,jdbcType=DOUBLE}, #{clThisTime,jdbcType=INTEGER},
      #{clOpenDt,jdbcType=DATE}, #{closeDt,jdbcType=DATE})
  </insert>
  <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
    <!--@mbg.generated-->
    insert into rm_open_close_valve_last
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">
    <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
        <!--@mbg.generated-->
        <!--@Table rm_open_close_valve_last-->
        <id column="id" jdbcType="BIGINT" property="id"/>
        <result column="last_history_id" jdbcType="BIGINT" property="lastHistoryId"/>
        <result column="client_id" jdbcType="BIGINT" property="clientId"/>
        <result column="client_name" jdbcType="VARCHAR" property="clientName"/>
        <result column="controller_id" jdbcType="BIGINT" property="controllerId"/>
        <result column="intake_id" jdbcType="BIGINT" property="intakeId"/>
        <result column="rtu_addr" jdbcType="VARCHAR" property="rtuAddr"/>
        <result column="op_dt" jdbcType="TIMESTAMP" property="opDt"/>
        <result column="op_type" jdbcType="TINYINT" property="opType"/>
        <result column="op_total_amount" jdbcType="DOUBLE" property="opTotalAmount"/>
        <result column="op_ic_card_no" jdbcType="VARCHAR" property="opIcCardNo"/>
        <result column="op_ic_card_addr" jdbcType="VARCHAR" property="opIcCardAddr"/>
        <result column="op_remain_money" jdbcType="DOUBLE" property="opRemainMoney"/>
        <result column="open_dt" jdbcType="TIMESTAMP" property="openDt"/>
        <result column="op_order_no" jdbcType="VARCHAR" property="opOrderNo"/>
        <result column="op_ele_total_amount" jdbcType="FLOAT" property="opEleTotalAmount"/>
        <result column="op_water_remain_user" jdbcType="FLOAT" property="opWaterRemainUser"/>
        <result column="cl_dt" jdbcType="TIMESTAMP" property="clDt"/>
        <result column="cl_type" jdbcType="TINYINT" property="clType"/>
        <result column="cl_total_amount" jdbcType="DOUBLE" property="clTotalAmount"/>
        <result column="cl_ic_card_no" jdbcType="VARCHAR" property="clIcCardNo"/>
        <result column="cl_ic_card_addr" jdbcType="VARCHAR" property="clIcCardAddr"/>
        <result column="cl_remain_money" jdbcType="DOUBLE" property="clRemainMoney"/>
        <result column="cl_this_amount" jdbcType="DOUBLE" property="clThisAmount"/>
        <result column="cl_this_money" jdbcType="DOUBLE" property="clThisMoney"/>
        <result column="cl_this_time" jdbcType="INTEGER" property="clThisTime"/>
        <result column="cl_open_dt" jdbcType="TIMESTAMP" property="clOpenDt"/>
        <result column="close_dt" jdbcType="TIMESTAMP" property="closeDt"/>
        <result column="cl_order_no" jdbcType="VARCHAR" property="clOrderNo"/>
        <result column="cl_ele_total_amount" jdbcType="FLOAT" property="clEleTotalAmount"/>
        <result column="cl_water_remain_user" jdbcType="FLOAT" property="clWaterRemainUser"/>
        <result column="cl_this_ele" jdbcType="FLOAT" property="clThisEle"/>
    </resultMap>
    <sql id="Base_Column_List">
        <!--@mbg.generated-->
        id,
      </if>
      <if test="lastHistoryId != null">
        last_history_id,
      </if>
      <if test="controllerId != null">
        client_id,
        client_name,
        controller_id,
      </if>
      <if test="intakeId != null">
        intake_id,
      </if>
      <if test="rtuAddr != null">
        rtu_addr,
      </if>
      <if test="opDt != null">
        op_dt,
      </if>
      <if test="opType != null">
        op_type,
      </if>
      <if test="opTotalAmount != null">
        op_total_amount,
      </if>
      <if test="opIcCardNo != null">
        op_ic_card_no,
      </if>
      <if test="opIcCardAddr != null">
        op_ic_card_addr,
      </if>
      <if test="opRemainMoney != null">
        op_remain_money,
      </if>
      <if test="openDt != null">
        open_dt,
      </if>
      <if test="clDt != null">
        op_order_no,
        op_ele_total_amount,
        op_water_remain_user,
        cl_dt,
      </if>
      <if test="clType != null">
        cl_type,
      </if>
      <if test="clTotalAmount != null">
        cl_total_amount,
      </if>
      <if test="clIcCardNo != null">
        cl_ic_card_no,
      </if>
      <if test="clIcCardAddr != null">
        cl_ic_card_addr,
      </if>
      <if test="clRemainMoney != null">
        cl_remain_money,
      </if>
      <if test="clThisAmount != null">
        cl_this_amount,
      </if>
      <if test="clThisMoney != null">
        cl_this_money,
      </if>
      <if test="clThisTime != null">
        cl_this_time,
      </if>
      <if test="clOpenDt != null">
        cl_open_dt,
      </if>
      <if test="closeDt != null">
        close_dt,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="id != null">
        #{id,jdbcType=BIGINT},
      </if>
      <if test="lastHistoryId != null">
        #{lastHistoryId,jdbcType=BIGINT},
      </if>
      <if test="controllerId != null">
        #{controllerId,jdbcType=BIGINT},
      </if>
      <if test="intakeId != null">
        #{intakeId,jdbcType=BIGINT},
      </if>
      <if test="rtuAddr != null">
        #{rtuAddr,jdbcType=VARCHAR},
      </if>
      <if test="opDt != null">
        #{opDt,jdbcType=DATE},
      </if>
      <if test="opType != null">
        #{opType,jdbcType=TINYINT},
      </if>
      <if test="opTotalAmount != null">
        #{opTotalAmount,jdbcType=DOUBLE},
      </if>
      <if test="opIcCardNo != null">
        #{opIcCardNo,jdbcType=VARCHAR},
      </if>
      <if test="opIcCardAddr != null">
        #{opIcCardAddr,jdbcType=VARCHAR},
      </if>
      <if test="opRemainMoney != null">
        #{opRemainMoney,jdbcType=DOUBLE},
      </if>
      <if test="openDt != null">
        #{openDt,jdbcType=DATE},
      </if>
      <if test="clDt != null">
        #{clDt,jdbcType=DATE},
      </if>
      <if test="clType != null">
        #{clType,jdbcType=TINYINT},
      </if>
      <if test="clTotalAmount != null">
        #{clTotalAmount,jdbcType=DOUBLE},
      </if>
      <if test="clIcCardNo != null">
        #{clIcCardNo,jdbcType=VARCHAR},
      </if>
      <if test="clIcCardAddr != null">
        #{clIcCardAddr,jdbcType=VARCHAR},
      </if>
      <if test="clRemainMoney != null">
        #{clRemainMoney,jdbcType=DOUBLE},
      </if>
      <if test="clThisAmount != null">
        #{clThisAmount,jdbcType=DOUBLE},
      </if>
      <if test="clThisMoney != null">
        #{clThisMoney,jdbcType=DOUBLE},
      </if>
      <if test="clThisTime != null">
        #{clThisTime,jdbcType=INTEGER},
      </if>
      <if test="clOpenDt != null">
        #{clOpenDt,jdbcType=DATE},
      </if>
      <if test="closeDt != null">
        #{closeDt,jdbcType=DATE},
      </if>
    </trim>
  </insert>
  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
    <!--@mbg.generated-->
    update rm_open_close_valve_last
    <set>
      <if test="lastHistoryId != null">
        last_history_id = #{lastHistoryId,jdbcType=BIGINT},
      </if>
      <if test="controllerId != null">
        controller_id = #{controllerId,jdbcType=BIGINT},
      </if>
      <if test="intakeId != null">
        intake_id = #{intakeId,jdbcType=BIGINT},
      </if>
      <if test="rtuAddr != null">
        rtu_addr = #{rtuAddr,jdbcType=VARCHAR},
      </if>
      <if test="opDt != null">
        op_dt = #{opDt,jdbcType=DATE},
      </if>
      <if test="opType != null">
        op_type = #{opType,jdbcType=TINYINT},
      </if>
      <if test="opTotalAmount != null">
        op_total_amount = #{opTotalAmount,jdbcType=DOUBLE},
      </if>
      <if test="opIcCardNo != null">
        op_ic_card_no = #{opIcCardNo,jdbcType=VARCHAR},
      </if>
      <if test="opIcCardAddr != null">
        op_ic_card_addr = #{opIcCardAddr,jdbcType=VARCHAR},
      </if>
      <if test="opRemainMoney != null">
        op_remain_money = #{opRemainMoney,jdbcType=DOUBLE},
      </if>
      <if test="openDt != null">
        open_dt = #{openDt,jdbcType=DATE},
      </if>
      <if test="clDt != null">
        cl_dt = #{clDt,jdbcType=DATE},
      </if>
      <if test="clType != null">
        cl_type = #{clType,jdbcType=TINYINT},
      </if>
      <if test="clTotalAmount != null">
        cl_total_amount = #{clTotalAmount,jdbcType=DOUBLE},
      </if>
      <if test="clIcCardNo != null">
        cl_ic_card_no = #{clIcCardNo,jdbcType=VARCHAR},
      </if>
      <if test="clIcCardAddr != null">
        cl_ic_card_addr = #{clIcCardAddr,jdbcType=VARCHAR},
      </if>
      <if test="clRemainMoney != null">
        cl_remain_money = #{clRemainMoney,jdbcType=DOUBLE},
      </if>
      <if test="clThisAmount != null">
        cl_this_amount = #{clThisAmount,jdbcType=DOUBLE},
      </if>
      <if test="clThisMoney != null">
        cl_this_money = #{clThisMoney,jdbcType=DOUBLE},
      </if>
      <if test="clThisTime != null">
        cl_this_time = #{clThisTime,jdbcType=INTEGER},
      </if>
      <if test="clOpenDt != null">
        cl_open_dt = #{clOpenDt,jdbcType=DATE},
      </if>
      <if test="closeDt != null">
        close_dt = #{closeDt,jdbcType=DATE},
      </if>
    </set>
    where id = #{id,jdbcType=BIGINT}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
    <!--@mbg.generated-->
    update rm_open_close_valve_last
    set last_history_id = #{lastHistoryId,jdbcType=BIGINT},
      controller_id = #{controllerId,jdbcType=BIGINT},
      intake_id = #{intakeId,jdbcType=BIGINT},
      rtu_addr = #{rtuAddr,jdbcType=VARCHAR},
      op_dt = #{opDt,jdbcType=DATE},
      op_type = #{opType,jdbcType=TINYINT},
      op_total_amount = #{opTotalAmount,jdbcType=DOUBLE},
      op_ic_card_no = #{opIcCardNo,jdbcType=VARCHAR},
      op_ic_card_addr = #{opIcCardAddr,jdbcType=VARCHAR},
      op_remain_money = #{opRemainMoney,jdbcType=DOUBLE},
      open_dt = #{openDt,jdbcType=DATE},
      cl_dt = #{clDt,jdbcType=DATE},
      cl_type = #{clType,jdbcType=TINYINT},
      cl_total_amount = #{clTotalAmount,jdbcType=DOUBLE},
      cl_ic_card_no = #{clIcCardNo,jdbcType=VARCHAR},
      cl_ic_card_addr = #{clIcCardAddr,jdbcType=VARCHAR},
      cl_remain_money = #{clRemainMoney,jdbcType=DOUBLE},
      cl_this_amount = #{clThisAmount,jdbcType=DOUBLE},
      cl_this_money = #{clThisMoney,jdbcType=DOUBLE},
      cl_this_time = #{clThisTime,jdbcType=INTEGER},
      cl_open_dt = #{clOpenDt,jdbcType=DATE},
      close_dt = #{closeDt,jdbcType=DATE}
    where id = #{id,jdbcType=BIGINT}
  </update>
        cl_order_no,
        cl_ele_total_amount,
        cl_water_remain_user,
        cl_this_ele
    </sql>
    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
        <!--@mbg.generated-->
        select
        <include refid="Base_Column_List"/>
        from rm_open_close_valve_last
        where id = #{id,jdbcType=BIGINT}
    </select>
    <select id="selectByIntakeId" parameterType="java.lang.Long" resultMap="BaseResultMap">
        <!--@mbg.generated-->
        select
        <include refid="Base_Column_List"/>
        from rm_open_close_valve_last
        where intake_id = #{intakeId,jdbcType=BIGINT}
    </select>
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
        <!--@mbg.generated-->
        delete
        from rm_open_close_valve_last
        where id = #{id,jdbcType=BIGINT}
    </delete>
    <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
        <!--@mbg.generated-->
        insert into rm_open_close_valve_last (id, last_history_id,
                                              client_id, client_name, controller_id,
                                              intake_id, rtu_addr, op_dt,
                                              op_type, op_total_amount, op_ic_card_no,
                                              op_ic_card_addr, op_remain_money, open_dt,
                                              op_order_no, op_ele_total_amount, op_water_remain_user,
                                              cl_dt, cl_type, cl_total_amount,
                                              cl_ic_card_no, cl_ic_card_addr, cl_remain_money,
                                              cl_this_amount, cl_this_money, cl_this_time,
                                              cl_open_dt, close_dt, cl_order_no,
                                              cl_ele_total_amount, cl_water_remain_user, cl_this_ele)
        values (#{id,jdbcType=BIGINT}, #{lastHistoryId,jdbcType=BIGINT},
                #{clientId,jdbcType=BIGINT}, #{clientName,jdbcType=VARCHAR}, #{controllerId,jdbcType=BIGINT},
                #{intakeId,jdbcType=BIGINT}, #{rtuAddr,jdbcType=VARCHAR}, #{opDt,jdbcType=TIMESTAMP},
                #{opType,jdbcType=TINYINT}, #{opTotalAmount,jdbcType=DOUBLE}, #{opIcCardNo,jdbcType=VARCHAR},
                #{opIcCardAddr,jdbcType=VARCHAR}, #{opRemainMoney,jdbcType=DOUBLE}, #{openDt,jdbcType=TIMESTAMP},
                #{opOrderNo,jdbcType=VARCHAR}, #{opEleTotalAmount,jdbcType=FLOAT}, #{opWaterRemainUser,jdbcType=FLOAT},
                #{clDt,jdbcType=TIMESTAMP}, #{clType,jdbcType=TINYINT}, #{clTotalAmount,jdbcType=DOUBLE},
                #{clIcCardNo,jdbcType=VARCHAR}, #{clIcCardAddr,jdbcType=VARCHAR}, #{clRemainMoney,jdbcType=DOUBLE},
                #{clThisAmount,jdbcType=DOUBLE}, #{clThisMoney,jdbcType=DOUBLE}, #{clThisTime,jdbcType=INTEGER},
                #{clOpenDt,jdbcType=TIMESTAMP}, #{closeDt,jdbcType=TIMESTAMP}, #{clOrderNo,jdbcType=VARCHAR},
                #{clEleTotalAmount,jdbcType=FLOAT}, #{clWaterRemainUser,jdbcType=FLOAT}, #{clThisEle,jdbcType=FLOAT})
    </insert>
    <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
        <!--@mbg.generated-->
        insert into rm_open_close_valve_last
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">
                id,
            </if>
            <if test="lastHistoryId != null">
                last_history_id,
            </if>
            <if test="clientId != null">
                client_id,
            </if>
            <if test="clientName != null">
                client_name,
            </if>
            <if test="controllerId != null">
                controller_id,
            </if>
            <if test="intakeId != null">
                intake_id,
            </if>
            <if test="rtuAddr != null">
                rtu_addr,
            </if>
            <if test="opDt != null">
                op_dt,
            </if>
            <if test="opType != null">
                op_type,
            </if>
            <if test="opTotalAmount != null">
                op_total_amount,
            </if>
            <if test="opIcCardNo != null">
                op_ic_card_no,
            </if>
            <if test="opIcCardAddr != null">
                op_ic_card_addr,
            </if>
            <if test="opRemainMoney != null">
                op_remain_money,
            </if>
            <if test="openDt != null">
                open_dt,
            </if>
            <if test="opOrderNo != null">
                op_order_no,
            </if>
            <if test="opEleTotalAmount != null">
                op_ele_total_amount,
            </if>
            <if test="opWaterRemainUser != null">
                op_water_remain_user,
            </if>
            <if test="clDt != null">
                cl_dt,
            </if>
            <if test="clType != null">
                cl_type,
            </if>
            <if test="clTotalAmount != null">
                cl_total_amount,
            </if>
            <if test="clIcCardNo != null">
                cl_ic_card_no,
            </if>
            <if test="clIcCardAddr != null">
                cl_ic_card_addr,
            </if>
            <if test="clRemainMoney != null">
                cl_remain_money,
            </if>
            <if test="clThisAmount != null">
                cl_this_amount,
            </if>
            <if test="clThisMoney != null">
                cl_this_money,
            </if>
            <if test="clThisTime != null">
                cl_this_time,
            </if>
            <if test="clOpenDt != null">
                cl_open_dt,
            </if>
            <if test="closeDt != null">
                close_dt,
            </if>
            <if test="clOrderNo != null">
                cl_order_no,
            </if>
            <if test="clEleTotalAmount != null">
                cl_ele_total_amount,
            </if>
            <if test="clWaterRemainUser != null">
                cl_water_remain_user,
            </if>
            <if test="clThisEle != null">
                cl_this_ele,
            </if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">
                #{id,jdbcType=BIGINT},
            </if>
            <if test="lastHistoryId != null">
                #{lastHistoryId,jdbcType=BIGINT},
            </if>
            <if test="clientId != null">
                #{clientId,jdbcType=BIGINT},
            </if>
            <if test="clientName != null">
                #{clientName,jdbcType=VARCHAR},
            </if>
            <if test="controllerId != null">
                #{controllerId,jdbcType=BIGINT},
            </if>
            <if test="intakeId != null">
                #{intakeId,jdbcType=BIGINT},
            </if>
            <if test="rtuAddr != null">
                #{rtuAddr,jdbcType=VARCHAR},
            </if>
            <if test="opDt != null">
                #{opDt,jdbcType=TIMESTAMP},
            </if>
            <if test="opType != null">
                #{opType,jdbcType=TINYINT},
            </if>
            <if test="opTotalAmount != null">
                #{opTotalAmount,jdbcType=DOUBLE},
            </if>
            <if test="opIcCardNo != null">
                #{opIcCardNo,jdbcType=VARCHAR},
            </if>
            <if test="opIcCardAddr != null">
                #{opIcCardAddr,jdbcType=VARCHAR},
            </if>
            <if test="opRemainMoney != null">
                #{opRemainMoney,jdbcType=DOUBLE},
            </if>
            <if test="openDt != null">
                #{openDt,jdbcType=TIMESTAMP},
            </if>
            <if test="opOrderNo != null">
                #{opOrderNo,jdbcType=VARCHAR},
            </if>
            <if test="opEleTotalAmount != null">
                #{opEleTotalAmount,jdbcType=FLOAT},
            </if>
            <if test="opWaterRemainUser != null">
                #{opWaterRemainUser,jdbcType=FLOAT},
            </if>
            <if test="clDt != null">
                #{clDt,jdbcType=TIMESTAMP},
            </if>
            <if test="clType != null">
                #{clType,jdbcType=TINYINT},
            </if>
            <if test="clTotalAmount != null">
                #{clTotalAmount,jdbcType=DOUBLE},
            </if>
            <if test="clIcCardNo != null">
                #{clIcCardNo,jdbcType=VARCHAR},
            </if>
            <if test="clIcCardAddr != null">
                #{clIcCardAddr,jdbcType=VARCHAR},
            </if>
            <if test="clRemainMoney != null">
                #{clRemainMoney,jdbcType=DOUBLE},
            </if>
            <if test="clThisAmount != null">
                #{clThisAmount,jdbcType=DOUBLE},
            </if>
            <if test="clThisMoney != null">
                #{clThisMoney,jdbcType=DOUBLE},
            </if>
            <if test="clThisTime != null">
                #{clThisTime,jdbcType=INTEGER},
            </if>
            <if test="clOpenDt != null">
                #{clOpenDt,jdbcType=TIMESTAMP},
            </if>
            <if test="closeDt != null">
                #{closeDt,jdbcType=TIMESTAMP},
            </if>
            <if test="clOrderNo != null">
                #{clOrderNo,jdbcType=VARCHAR},
            </if>
            <if test="clEleTotalAmount != null">
                #{clEleTotalAmount,jdbcType=FLOAT},
            </if>
            <if test="clWaterRemainUser != null">
                #{clWaterRemainUser,jdbcType=FLOAT},
            </if>
            <if test="clThisEle != null">
                #{clThisEle,jdbcType=FLOAT},
            </if>
        </trim>
    </insert>
    <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
        <!--@mbg.generated-->
        update rm_open_close_valve_last
        <set>
            <if test="lastHistoryId != null">
                last_history_id = #{lastHistoryId,jdbcType=BIGINT},
            </if>
            <if test="clientId != null">
                client_id = #{clientId,jdbcType=BIGINT},
            </if>
            <if test="clientName != null">
                client_name = #{clientName,jdbcType=VARCHAR},
            </if>
            <if test="controllerId != null">
                controller_id = #{controllerId,jdbcType=BIGINT},
            </if>
            <if test="intakeId != null">
                intake_id = #{intakeId,jdbcType=BIGINT},
            </if>
            <if test="rtuAddr != null">
                rtu_addr = #{rtuAddr,jdbcType=VARCHAR},
            </if>
            <if test="opDt != null">
                op_dt = #{opDt,jdbcType=TIMESTAMP},
            </if>
            <if test="opType != null">
                op_type = #{opType,jdbcType=TINYINT},
            </if>
            <if test="opTotalAmount != null">
                op_total_amount = #{opTotalAmount,jdbcType=DOUBLE},
            </if>
            <if test="opIcCardNo != null">
                op_ic_card_no = #{opIcCardNo,jdbcType=VARCHAR},
            </if>
            <if test="opIcCardAddr != null">
                op_ic_card_addr = #{opIcCardAddr,jdbcType=VARCHAR},
            </if>
            <if test="opRemainMoney != null">
                op_remain_money = #{opRemainMoney,jdbcType=DOUBLE},
            </if>
            <if test="openDt != null">
                open_dt = #{openDt,jdbcType=TIMESTAMP},
            </if>
            <if test="opOrderNo != null">
                op_order_no = #{opOrderNo,jdbcType=VARCHAR},
            </if>
            <if test="opEleTotalAmount != null">
                op_ele_total_amount = #{opEleTotalAmount,jdbcType=FLOAT},
            </if>
            <if test="opWaterRemainUser != null">
                op_water_remain_user = #{opWaterRemainUser,jdbcType=FLOAT},
            </if>
            <if test="clDt != null">
                cl_dt = #{clDt,jdbcType=TIMESTAMP},
            </if>
            <if test="clType != null">
                cl_type = #{clType,jdbcType=TINYINT},
            </if>
            <if test="clTotalAmount != null">
                cl_total_amount = #{clTotalAmount,jdbcType=DOUBLE},
            </if>
            <if test="clIcCardNo != null">
                cl_ic_card_no = #{clIcCardNo,jdbcType=VARCHAR},
            </if>
            <if test="clIcCardAddr != null">
                cl_ic_card_addr = #{clIcCardAddr,jdbcType=VARCHAR},
            </if>
            <if test="clRemainMoney != null">
                cl_remain_money = #{clRemainMoney,jdbcType=DOUBLE},
            </if>
            <if test="clThisAmount != null">
                cl_this_amount = #{clThisAmount,jdbcType=DOUBLE},
            </if>
            <if test="clThisMoney != null">
                cl_this_money = #{clThisMoney,jdbcType=DOUBLE},
            </if>
            <if test="clThisTime != null">
                cl_this_time = #{clThisTime,jdbcType=INTEGER},
            </if>
            <if test="clOpenDt != null">
                cl_open_dt = #{clOpenDt,jdbcType=TIMESTAMP},
            </if>
            <if test="closeDt != null">
                close_dt = #{closeDt,jdbcType=TIMESTAMP},
            </if>
            <if test="clOrderNo != null">
                cl_order_no = #{clOrderNo,jdbcType=VARCHAR},
            </if>
            <if test="clEleTotalAmount != null">
                cl_ele_total_amount = #{clEleTotalAmount,jdbcType=FLOAT},
            </if>
            <if test="clWaterRemainUser != null">
                cl_water_remain_user = #{clWaterRemainUser,jdbcType=FLOAT},
            </if>
            <if test="clThisEle != null">
                cl_this_ele = #{clThisEle,jdbcType=FLOAT},
            </if>
        </set>
        where id = #{id,jdbcType=BIGINT}
    </update>
    <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast">
        <!--@mbg.generated-->
        update rm_open_close_valve_last
        set last_history_id      = #{lastHistoryId,jdbcType=BIGINT},
            client_id            = #{clientId,jdbcType=BIGINT},
            client_name          = #{clientName,jdbcType=VARCHAR},
            controller_id        = #{controllerId,jdbcType=BIGINT},
            intake_id            = #{intakeId,jdbcType=BIGINT},
            rtu_addr             = #{rtuAddr,jdbcType=VARCHAR},
            op_dt                = #{opDt,jdbcType=TIMESTAMP},
            op_type              = #{opType,jdbcType=TINYINT},
            op_total_amount      = #{opTotalAmount,jdbcType=DOUBLE},
            op_ic_card_no        = #{opIcCardNo,jdbcType=VARCHAR},
            op_ic_card_addr      = #{opIcCardAddr,jdbcType=VARCHAR},
            op_remain_money      = #{opRemainMoney,jdbcType=DOUBLE},
            open_dt              = #{openDt,jdbcType=TIMESTAMP},
            op_order_no          = #{opOrderNo,jdbcType=VARCHAR},
            op_ele_total_amount  = #{opEleTotalAmount,jdbcType=FLOAT},
            op_water_remain_user = #{opWaterRemainUser,jdbcType=FLOAT},
            cl_dt                = #{clDt,jdbcType=TIMESTAMP},
            cl_type              = #{clType,jdbcType=TINYINT},
            cl_total_amount      = #{clTotalAmount,jdbcType=DOUBLE},
            cl_ic_card_no        = #{clIcCardNo,jdbcType=VARCHAR},
            cl_ic_card_addr      = #{clIcCardAddr,jdbcType=VARCHAR},
            cl_remain_money      = #{clRemainMoney,jdbcType=DOUBLE},
            cl_this_amount       = #{clThisAmount,jdbcType=DOUBLE},
            cl_this_money        = #{clThisMoney,jdbcType=DOUBLE},
            cl_this_time         = #{clThisTime,jdbcType=INTEGER},
            cl_open_dt           = #{clOpenDt,jdbcType=TIMESTAMP},
            close_dt             = #{closeDt,jdbcType=TIMESTAMP},
            cl_order_no          = #{clOrderNo,jdbcType=VARCHAR},
            cl_ele_total_amount  = #{clEleTotalAmount,jdbcType=FLOAT},
            cl_water_remain_user = #{clWaterRemainUser,jdbcType=FLOAT},
            cl_this_ele          = #{clThisEle,jdbcType=FLOAT}
        where id = #{id,jdbcType=BIGINT}
    </update>
    <!--根据指定条件获取开关阀报最新记录数量-->
    <select id="getOpenCloseValveReportsCount_last" resultType="java.lang.Long">
        SELECT COUNT(*) AS recordCount
        FROM rm_open_close_valve_last oh
                 INNER JOIN pr_intake inta ON inta.id = oh.intake_id
        <where>
            <if test="intakeId != null and intakeId > 0">
                AND oh.intake_id = #{intakeId}
            </if>
            <if test="intakeNum != null and intakeNum != ''">
                AND inta.name LIKE CONCAT('%', #{intakeNum}, '%')
            </if>
            <if test="clientName != null and clientName != ''">
                AND oh.client_name LIKE CONCAT('%', #{clientName}, '%')
            </if>
            <if test="rtuAddr != null and rtuAddr != ''">
                AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%')
            </if>
            <if test="timeStart_open != null and timeStart_open != '' and timeStop_open != null and timeStop_open != ''">
                AND oh.open_dt BETWEEN #{timeStart_open} AND #{timeStop_open}
            </if>
            <if test="timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != ''">
                AND oh.close_dt BETWEEN #{timeStart_close} AND #{timeStop_close}
            </if>
        </where>
    </select>
    <!--根据指定条件获取开关阀报最新记录-->
    <select id="getOpenCloseValveReports_last" resultType="com.dy.pipIrrGlobal.voRm.VoOpenCloseValve">
        SELECT oh.intake_id            AS intakeId,
               inta.name               AS intakeNum,
               oh.rtu_addr             AS rtuAddr,
               oh.client_name          AS clientName,
               oh.op_ic_card_no        AS openIcNum,
               oh.op_ic_card_addr      AS openIcAddr,
               oh.open_dt              AS openTime,
               CASE
                   WHEN oh.op_type = 1 THEN '刷卡开阀'
                   WHEN oh.op_type = 3 THEN '中心站开阀'
                   WHEN oh.op_type = 5 THEN '余额不足关阀'
                   WHEN oh.op_type = 8 THEN '用户远程开阀'
                   WHEN oh.op_type = 11 THEN '巡检卡开阀'
                   ELSE '未知'
                   END                 AS openType,
               oh.op_order_no          AS openOrderNo,
               oh.op_total_amount      AS openTotalAmount,
               oh.op_remain_money      AS openRemainMoney,
               oh.op_water_remain_user AS openWaterRemain,
               oh.op_ele_total_amount  AS openEleTotalAmount,
               oh.cl_ic_card_no        AS closeIcNum,
               oh.cl_ic_card_addr      AS closeIcAddr,
               oh.close_dt             AS closeTime,
               CASE
                   WHEN oh.cl_type = 2 THEN '刷卡关阀'
                   WHEN oh.cl_type = 4 THEN '中心站关阀'
                   WHEN oh.cl_type = 5 THEN '余额不足关阀'
                   WHEN oh.cl_type = 6 THEN '流量计故障关阀'
                   WHEN oh.cl_type = 7 THEN '紧急关闭'
                   WHEN oh.cl_type = 9 THEN '用户远程关阀'
                   WHEN oh.cl_type = 10 THEN '巡检卡关阀'
                   WHEN oh.cl_type = 12 THEN '黑名单命令关阀'
                   WHEN oh.cl_type = 13 THEN '用户远程定时关阀'
                   WHEN oh.cl_type = 14 THEN '用户远程定量关阀'
                   ELSE '未知'
                   END                 AS closeType,
               oh.cl_this_amount       AS closeThisAmount,
               oh.cl_this_time         AS thisTime,
               oh.cl_this_money        AS thisMoney,
               oh.cl_remain_money      AS closeRemainMoney,
               oh.cl_total_amount      AS closeTotalAmount
        FROM rm_open_close_valve_last oh
                 INNER JOIN pr_intake inta ON inta.id = oh.intake_id
        <where>
            <if test="intakeId != null and intakeId > 0">
                AND oh.intake_id = #{intakeId}
            </if>
            <if test="intakeNum != null and intakeNum != ''">
                AND inta.name LIKE CONCAT('%', #{intakeNum}, '%')
            </if>
            <if test="clientName != null and clientName != ''">
                AND oh.client_name LIKE CONCAT('%', #{clientName}, '%')
            </if>
            <if test="rtuAddr != null and rtuAddr != ''">
                AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%')
            </if>
            <if test="timeStart_open != null and timeStart_open != '' and timeStop_open != null and timeStop_open != ''">
                AND oh.open_dt BETWEEN #{timeStart_open} AND #{timeStop_open}
            </if>
            <if test="timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != ''">
                AND oh.close_dt BETWEEN #{timeStart_close} AND #{timeStop_close}
            </if>
        </where>
        ORDER BY oh.op_dt DESC
        <trim prefix="limit ">
            <if test="start != null and count != null">
                #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
            </if>
        </trim>
    </select>
    <!--根据开阀方式获取操作次数-->
    <select id="getCountByOpenType" resultType="java.lang.Integer">
        SELECT COUNT(*) AS recordCount
        FROM rm_open_close_valve_history
        <where>
            <if test="openType != null">
                AND op_type = #{openType}
            </if>
            <if test="timeStart != null and timeStop != null">
                AND op_dt BETWEEN #{timeStart} AND #{timeStop}
            </if>
        </where>
    </select>
    <!--根据关阀方式获取操作次数-->
    <select id="getCountByCloseType" resultType="java.lang.Integer">
        SELECT COUNT(*) AS recordCount
        FROM rm_open_close_valve_history
        <where>
            <if test="closeType != null">
                AND cl_type = #{closeType}
            </if>
            <if test="timeStart != null and timeStop != null">
                AND cl_dt BETWEEN #{timeStart} AND #{timeStop}
            </if>
        </where>
    </select>
    <!--为指定(阀控器地址、水卡编号、无关阀记录)开关阀最新记录添加关阀时间,使之不在未关阀记录中显示-->
    <update id="addCloseTime">
        UPDATE rm_open_close_valve_last
        SET cl_dt = NOW()
        WHERE rtu_addr = #{rtuAddr} AND op_ic_card_no = #{icCardNo} AND cl_dt IS NULL
    </update>
</mapper>