Administrator
2024-07-26 af61e5f6de17791b5f8a07d3324c272a62eca5bf
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml
@@ -19,11 +19,19 @@
  </sql>
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
    <!--@mbg.generated-->
    select
    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
@@ -39,11 +47,11 @@
  <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}
      )
    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-->
@@ -67,7 +75,7 @@
      <if test="dtLast != null">
        dt_last,
      </if>
     <if test="dtRtu != null">
      <if test="dtRtu != null">
        dt_rtu,
      </if>
      <if test="lossAmount != null">
@@ -133,20 +141,71 @@
    <!--@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}
    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="statisticsByIntake" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeLossStatistics">
    select intake_id, sum(loss_amount) as amount
    from rm_loss_day
    where id <![CDATA[>=]]> #{startId,jdbcType=BIGINT} and id <![CDATA[<]]> #{endId,jdbcType=BIGINT}
    group by intake_id
  <!--根据指定条件获取记录总数-->
  <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="intakeName != null">
        and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%')
      </if>
      <if test="intakeId != null">
        and rld.intake_id = #{intakeId}
      </if>
      <if test="startDt != null">
        and rld.dt &gt;= #{startDt,jdbcType=DATE}
      </if>
      <if test="endDt != null">
        and rld.dt &lt;= #{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="intakeName != null">
        and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%')
      </if>
      <if test="intakeId != null">
        and rld.intake_id = #{intakeId}
      </if>
      <if test="startDt != null">
        and rld.dt &gt;= #{startDt,jdbcType=DATE}
      </if>
      <if test="endDt != null">
        and rld.dt &lt;= #{endDt,jdbcType=DATE}
      </if>
    </where>
    ORDER BY rld.id 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>