<?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.RmLossDayMapper"> 
 | 
  <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmLossDay"> 
 | 
    <!--@mbg.generated--> 
 | 
    <!--@Table rm_loss_day--> 
 | 
    <id column="id" jdbcType="BIGINT" property="id" /> 
 | 
    <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="dt" jdbcType="DATE" property="dt" /> 
 | 
    <result column="dt_last" jdbcType="TIMESTAMP" property="dtLast" /> 
 | 
    <result column="dt_rtu" jdbcType="TIMESTAMP" property="dtRtu" /> 
 | 
    <result column="loss_amount" jdbcType="DOUBLE" property="lossAmount" /> 
 | 
  </resultMap> 
 | 
  <sql id="Base_Column_List"> 
 | 
    <!--@mbg.generated--> 
 | 
    id, controller_id, intake_id, rtu_addr, dt, dt_last, dt_rtu, loss_amount 
 | 
  </sql> 
 | 
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 
 | 
    <!--@mbg.generated--> 
 | 
    select 
 | 
    <include refid="Base_Column_List" /> 
 | 
    from rm_loss_day 
 | 
    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_loss_day 
 | 
    where intake_id = #{intakeId,jdbcType=BIGINT} 
 | 
  </select> 
 | 
  
 | 
  <select id="selectByDate" parameterType="java.util.Date" resultMap="BaseResultMap"> 
 | 
    <!--@mbg.generated--> 
 | 
    select 
 | 
    <include refid="Base_Column_List" /> 
 | 
    from rm_loss_day 
 | 
    where dt = #{dt,jdbcType=DATE} 
 | 
  </select> 
 | 
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> 
 | 
    <!--@mbg.generated--> 
 | 
    delete from rm_loss_day 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </delete> 
 | 
  <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmLossDay"> 
 | 
    <!--@mbg.generated--> 
 | 
    insert into rm_loss_day (id, controller_id, intake_id, 
 | 
    rtu_addr, dt, dt_last, dt_rtu, loss_amount 
 | 
    ) 
 | 
    values (#{id,jdbcType=BIGINT}, #{controllerId,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, 
 | 
    #{rtuAddr,jdbcType=VARCHAR}, #{dt,jdbcType=DATE}, #{dtLast,jdbcType=TIMESTAMP}, #{dtRtu,jdbcType=TIMESTAMP}, #{lossAmount,jdbcType=DOUBLE} 
 | 
    ) 
 | 
  </insert> 
 | 
  <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmLossDay"> 
 | 
    <!--@mbg.generated--> 
 | 
    insert into rm_loss_day 
 | 
    <trim prefix="(" suffix=")" suffixOverrides=","> 
 | 
      <if test="id != null"> 
 | 
        id, 
 | 
      </if> 
 | 
      <if test="controllerId != null"> 
 | 
        controller_id, 
 | 
      </if> 
 | 
      <if test="intakeId != null"> 
 | 
        intake_id, 
 | 
      </if> 
 | 
      <if test="rtuAddr != null"> 
 | 
        rtu_addr, 
 | 
      </if> 
 | 
      <if test="dt != null"> 
 | 
        dt, 
 | 
      </if> 
 | 
      <if test="dtLast != null"> 
 | 
        dt_last, 
 | 
      </if> 
 | 
      <if test="dtRtu != null"> 
 | 
        dt_rtu, 
 | 
      </if> 
 | 
      <if test="lossAmount != null"> 
 | 
        loss_amount, 
 | 
      </if> 
 | 
    </trim> 
 | 
    <trim prefix="values (" suffix=")" suffixOverrides=","> 
 | 
      <if test="id != null"> 
 | 
        #{id,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="dt != null"> 
 | 
        #{dt,jdbcType=DATE}, 
 | 
      </if> 
 | 
      <if test="dtLast != null"> 
 | 
        #{dtLast,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
      <if test="dtRtu != null"> 
 | 
        #{dtRtu,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
      <if test="lossAmount != null"> 
 | 
        #{lossAmount,jdbcType=DOUBLE}, 
 | 
      </if> 
 | 
    </trim> 
 | 
  </insert> 
 | 
  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmLossDay"> 
 | 
    <!--@mbg.generated--> 
 | 
    update rm_loss_day 
 | 
    <set> 
 | 
      <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="dt != null"> 
 | 
        dt = #{dt,jdbcType=DATE}, 
 | 
      </if> 
 | 
      <if test="dtLast != null"> 
 | 
        dt_last = #{dtLast,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
      <if test="dtRtu != null"> 
 | 
        dt_rtu = #{dtRtu,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
      <if test="lossAmount != null"> 
 | 
        loss_amount = #{lossAmount,jdbcType=DOUBLE}, 
 | 
      </if> 
 | 
    </set> 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </update> 
 | 
  <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmLossDay"> 
 | 
    <!--@mbg.generated--> 
 | 
    update rm_loss_day 
 | 
    set controller_id = #{controllerId,jdbcType=BIGINT}, 
 | 
    intake_id = #{intakeId,jdbcType=BIGINT}, 
 | 
    rtu_addr = #{rtuAddr,jdbcType=VARCHAR}, 
 | 
    dt = #{dt,jdbcType=DATE}, 
 | 
    dt_last = #{dtLast,jdbcType=TIMESTAMP}, 
 | 
    dt_rtu = #{dtRtu,jdbcType=TIMESTAMP}, 
 | 
    loss_amount = #{lossAmount,jdbcType=DOUBLE} 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </update> 
 | 
  <!--根据指定条件获取记录总数--> 
 | 
  <select id="getRecordCount" resultType="java.lang.Long"> 
 | 
    select count(*) 
 | 
    from rm_loss_day rld 
 | 
    Left join pr_intake pint on pint.id = rld.intake_id 
 | 
    <where> 
 | 
      <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 rld.dt >= #{startDt,jdbcType=DATE} 
 | 
      </if> 
 | 
      <if test="endDt != null"> 
 | 
        and rld.dt <= #{endDt,jdbcType=DATE} 
 | 
      </if> 
 | 
    </where> 
 | 
  </select> 
 | 
  <!--根据指定条件获取记录--> 
 | 
  <select id="getLossDayHistory" resultType="com.dy.pipIrrGlobal.voRm.VoLossDay"> 
 | 
    select 
 | 
    CAST(rld.intake_id AS char)AS intakeId, 
 | 
    CAST(rld.controller_id AS char)AS controllerId, 
 | 
    pint.name as intakeName, 
 | 
    rld.rtu_addr as rtuAddr, 
 | 
    rld.dt as dt, 
 | 
    rld.dt_last as dtLast, 
 | 
    rld.dt_rtu as dtRtu, 
 | 
    rld.loss_amount as lossAmount 
 | 
    from rm_loss_day rld 
 | 
    Left join pr_intake pint on pint.id = rld.intake_id 
 | 
    <where> 
 | 
      <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 rld.dt >= #{startDt,jdbcType=DATE} 
 | 
      </if> 
 | 
      <if test="endDt != null"> 
 | 
        and rld.dt <= #{endDt,jdbcType=DATE} 
 | 
      </if> 
 | 
    </where> 
 | 
    ORDER BY rld.dt DESC , rld.loss_amount DESC 
 | 
    <if test="pageCurr != null and pageSize != null"> 
 | 
      LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} 
 | 
    </if> 
 | 
  </select> 
 | 
  
 | 
  <select id="statisticsByIntake" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeLossStatistics"> 
 | 
    select intake_id, sum(loss_amount) amount 
 | 
    from rm_loss_day 
 | 
    where id <![CDATA[>=]]> #{startId, jdbcType=BIGINT} and id <![CDATA[<]]> #{endId, jdbcType=BIGINT} 
 | 
    group by intake_id 
 | 
  </select> 
 | 
</mapper> 
 |