From 001f24d4efd7b818bc2224b976c82faf4f9e564c Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 01 十一月 2024 11:25:00 +0800
Subject: [PATCH] 1、通信协议要增加版本号(目的为远程升级准备),原来没有版本号的协议默认为版本号为1,所以调整了程序命名; 2、流浪控制器与控制器数据库表都增加了协议版本号字段; 3、VO中Double和Float类型的属性增加注解@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml | 741 +++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 537 insertions(+), 204 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml
index 96ecc72..c68b2b7 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml
@@ -1,219 +1,552 @@
<?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.RmIntakeAmountDayMapper">
- <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
- <!--@mbg.generated-->
- <!--@Table rm_intake_amount_day-->
- <id column="id" jdbcType="BIGINT" property="id" />
- <result column="intake_id" jdbcType="BIGINT" property="intakeId" />
- <result column="dt" jdbcType="DATE" property="dt" />
- <result column="amount" jdbcType="DOUBLE" property="amount" />
- <result column="dt_last" jdbcType="TIMESTAMP" property="dtLast" />
- <result column="rtu_addr_last" jdbcType="VARCHAR" property="rtuAddrLast" />
- <result column="controller_id_last" jdbcType="BIGINT" property="controllerIdLast" />
- <result column="total_amount_last" jdbcType="FLOAT" property="totalAmountLast" />
- <result column="rtu_dt_last" jdbcType="TIMESTAMP" property="rtuDtLast" />
- </resultMap>
- <sql id="Base_Column_List">
- <!--@mbg.generated-->
- id, intake_id, dt, amount, dt_last, rtu_addr_last, controller_id_last, total_amount_last,
- rtu_dt_last
- </sql>
- <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
- <!--@mbg.generated-->
- select
- <include refid="Base_Column_List" />
- from rm_intake_amount_day
- where id = #{id,jdbcType=BIGINT}
- </select>
- <select id="selectByDate" parameterType="java.util.Date" resultMap="BaseResultMap">
- <!--@mbg.generated-->
- select
- <include refid="Base_Column_List" />
- from rm_intake_amount_day
- where dt = #{dt,jdbcType=DATE}
- </select>
- <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
- <!--@mbg.generated-->
- delete from rm_intake_amount_day
- where id = #{id,jdbcType=BIGINT}
- </delete>
- <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
- <!--@mbg.generated-->
- insert into rm_intake_amount_day (id, intake_id, dt,
- amount, dt_last,
- rtu_addr_last, controller_id_last, total_amount_last,
- rtu_dt_last)
- values (#{id,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, #{dt,jdbcType=DATE},
- #{amount,jdbcType=DOUBLE}, #{dtLast,jdbcType=TIMESTAMP},
- #{rtuAddrLast,jdbcType=VARCHAR}, #{controllerIdLast,jdbcType=BIGINT}, #{totalAmountLast,jdbcType=FLOAT},
- #{rtuDtLast,jdbcType=TIMESTAMP})
- </insert>
- <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
- <!--@mbg.generated-->
- insert into rm_intake_amount_day
- <trim prefix="(" suffix=")" suffixOverrides=",">
- <if test="id != null">
+ <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
+ <!--@mbg.generated-->
+ <!--@Table rm_intake_amount_day-->
+ <id column="id" jdbcType="BIGINT" property="id"/>
+ <result column="intake_id" jdbcType="BIGINT" property="intakeId"/>
+ <result column="dt" jdbcType="DATE" property="dt"/>
+ <result column="amount" jdbcType="DOUBLE" property="amount"/>
+ <result column="dt_last" jdbcType="TIMESTAMP" property="dtLast"/>
+ <result column="rtu_addr_last" jdbcType="VARCHAR" property="rtuAddrLast"/>
+ <result column="controller_id_last" jdbcType="BIGINT" property="controllerIdLast"/>
+ <result column="total_amount_last" jdbcType="FLOAT" property="totalAmountLast"/>
+ <result column="rtu_dt_last" jdbcType="TIMESTAMP" property="rtuDtLast"/>
+ </resultMap>
+ <sql id="Base_Column_List">
+ <!--@mbg.generated-->
id,
- </if>
- <if test="intakeId != null">
intake_id,
- </if>
- <if test="dt != null">
dt,
- </if>
- <if test="amount != null">
amount,
- </if>
- <if test="dtLast != null">
dt_last,
- </if>
- <if test="rtuAddrLast != null">
rtu_addr_last,
- </if>
- <if test="controllerIdLast != null">
controller_id_last,
- </if>
- <if test="totalAmountLast != null">
total_amount_last,
- </if>
- <if test="rtuDtLast != null">
- rtu_dt_last,
- </if>
- </trim>
- <trim prefix="values (" suffix=")" suffixOverrides=",">
- <if test="id != null">
- #{id,jdbcType=BIGINT},
- </if>
- <if test="intakeId != null">
- #{intakeId,jdbcType=BIGINT},
- </if>
- <if test="dt != null">
- #{dt,jdbcType=DATE},
- </if>
- <if test="amount != null">
- #{amount,jdbcType=DOUBLE},
- </if>
- <if test="dtLast != null">
- #{dtLast,jdbcType=TIMESTAMP},
- </if>
- <if test="rtuAddrLast != null">
- #{rtuAddrLast,jdbcType=VARCHAR},
- </if>
- <if test="controllerIdLast != null">
- #{controllerIdLast,jdbcType=BIGINT},
- </if>
- <if test="totalAmountLast != null">
- #{totalAmountLast,jdbcType=FLOAT},
- </if>
- <if test="rtuDtLast != null">
- #{rtuDtLast,jdbcType=TIMESTAMP},
- </if>
- </trim>
- </insert>
- <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
- <!--@mbg.generated-->
- update rm_intake_amount_day
- <set>
- <if test="intakeId != null">
- intake_id = #{intakeId,jdbcType=BIGINT},
- </if>
- <if test="dt != null">
- dt = #{dt,jdbcType=DATE},
- </if>
- <if test="amount != null">
- amount = #{amount,jdbcType=DOUBLE},
- </if>
- <if test="dtLast != null">
- dt_last = #{dtLast,jdbcType=TIMESTAMP},
- </if>
- <if test="rtuAddrLast != null">
- rtu_addr_last = #{rtuAddrLast,jdbcType=VARCHAR},
- </if>
- <if test="controllerIdLast != null">
- controller_id_last = #{controllerIdLast,jdbcType=BIGINT},
- </if>
- <if test="totalAmountLast != null">
- total_amount_last = #{totalAmountLast,jdbcType=FLOAT},
- </if>
- <if test="rtuDtLast != null">
- rtu_dt_last = #{rtuDtLast,jdbcType=TIMESTAMP},
- </if>
- </set>
- where id = #{id,jdbcType=BIGINT}
- </update>
- <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
- <!--@mbg.generated-->
- update rm_intake_amount_day
- set intake_id = #{intakeId,jdbcType=BIGINT},
- dt = #{dt,jdbcType=DATE},
- amount = #{amount,jdbcType=DOUBLE},
- dt_last = #{dtLast,jdbcType=TIMESTAMP},
- rtu_addr_last = #{rtuAddrLast,jdbcType=VARCHAR},
- controller_id_last = #{controllerIdLast,jdbcType=BIGINT},
- total_amount_last = #{totalAmountLast,jdbcType=FLOAT},
- rtu_dt_last = #{rtuDtLast,jdbcType=TIMESTAMP}
- where id = #{id,jdbcType=BIGINT}
- </update>
- <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍鎬绘暟-->
- <select id="getRecordCount" resultType="java.lang.Long">
- select count(*)
- from rm_intake_amount_day riad
- Left join pr_intake pint on pint.id = riad.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 riad.dt >= #{startDt,jdbcType=DATE}
- </if>
- <if test="endDt != null">
- and riad.dt <= #{endDt,jdbcType=DATE}
- </if>
- </where>
+ rtu_dt_last
+ </sql>
+ <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+ <!--@mbg.generated-->
+ select
+ <include refid="Base_Column_List"/>
+ from rm_intake_amount_day
+ where id = #{id,jdbcType=BIGINT}
</select>
- <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍-->
- <select id="getIntakeAmountDayHistory" resultType="com.dy.pipIrrGlobal.voRm.VoIntakeAmountDay">
- select
- CAST(riad.intake_id AS char)AS intakeId,
- pint.name as intakeName,
- riad.dt as dt,
- riad.amount as amount,
- riad.dt_last as dtLast,
- riad.rtu_addr_last as rtuAddrLast,
- CAST(riad.controller_id_last AS char)AS controllerIdLast,
- riad.total_amount_last as totalAmountLast,
- riad.rtu_dt_last as rtuDtLast
- from rm_intake_amount_day riad
- Left join pr_intake pint on pint.id = riad.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 riad.dt >= #{startDt,jdbcType=DATE}
- </if>
- <if test="endDt != null">
- and riad.dt <= #{endDt,jdbcType=DATE}
- </if>
- </where>
- ORDER BY riad.id DESC
- <if test="pageCurr != null and pageSize != null">
- LIMIT ${(pageCurr-1)*pageSize}, ${pageSize}
- </if>
- </select>
+ <select id="selectByDate" parameterType="java.util.Date" resultMap="BaseResultMap">
+ <!--@mbg.generated-->
+ select
+ <include refid="Base_Column_List"/>
+ from rm_intake_amount_day
+ where dt = #{dt,jdbcType=DATE}
+ </select>
+ <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+ <!--@mbg.generated-->
+ delete
+ from rm_intake_amount_day
+ where id = #{id,jdbcType=BIGINT}
+ </delete>
+ <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
+ <!--@mbg.generated-->
+ insert into rm_intake_amount_day (id, intake_id, dt,
+ amount, dt_last,
+ rtu_addr_last, controller_id_last, total_amount_last,
+ rtu_dt_last)
+ values (#{id,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, #{dt,jdbcType=DATE},
+ #{amount,jdbcType=DOUBLE}, #{dtLast,jdbcType=TIMESTAMP},
+ #{rtuAddrLast,jdbcType=VARCHAR}, #{controllerIdLast,jdbcType=BIGINT}, #{totalAmountLast,jdbcType=FLOAT},
+ #{rtuDtLast,jdbcType=TIMESTAMP})
+ </insert>
+ <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
+ <!--@mbg.generated-->
+ insert into rm_intake_amount_day
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ id,
+ </if>
+ <if test="intakeId != null">
+ intake_id,
+ </if>
+ <if test="dt != null">
+ dt,
+ </if>
+ <if test="amount != null">
+ amount,
+ </if>
+ <if test="dtLast != null">
+ dt_last,
+ </if>
+ <if test="rtuAddrLast != null">
+ rtu_addr_last,
+ </if>
+ <if test="controllerIdLast != null">
+ controller_id_last,
+ </if>
+ <if test="totalAmountLast != null">
+ total_amount_last,
+ </if>
+ <if test="rtuDtLast != null">
+ rtu_dt_last,
+ </if>
+ </trim>
+ <trim prefix="values (" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ #{id,jdbcType=BIGINT},
+ </if>
+ <if test="intakeId != null">
+ #{intakeId,jdbcType=BIGINT},
+ </if>
+ <if test="dt != null">
+ #{dt,jdbcType=DATE},
+ </if>
+ <if test="amount != null">
+ #{amount,jdbcType=DOUBLE},
+ </if>
+ <if test="dtLast != null">
+ #{dtLast,jdbcType=TIMESTAMP},
+ </if>
+ <if test="rtuAddrLast != null">
+ #{rtuAddrLast,jdbcType=VARCHAR},
+ </if>
+ <if test="controllerIdLast != null">
+ #{controllerIdLast,jdbcType=BIGINT},
+ </if>
+ <if test="totalAmountLast != null">
+ #{totalAmountLast,jdbcType=FLOAT},
+ </if>
+ <if test="rtuDtLast != null">
+ #{rtuDtLast,jdbcType=TIMESTAMP},
+ </if>
+ </trim>
+ </insert>
+ <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
+ <!--@mbg.generated-->
+ update rm_intake_amount_day
+ <set>
+ <if test="intakeId != null">
+ intake_id = #{intakeId,jdbcType=BIGINT},
+ </if>
+ <if test="dt != null">
+ dt = #{dt,jdbcType=DATE},
+ </if>
+ <if test="amount != null">
+ amount = #{amount,jdbcType=DOUBLE},
+ </if>
+ <if test="dtLast != null">
+ dt_last = #{dtLast,jdbcType=TIMESTAMP},
+ </if>
+ <if test="rtuAddrLast != null">
+ rtu_addr_last = #{rtuAddrLast,jdbcType=VARCHAR},
+ </if>
+ <if test="controllerIdLast != null">
+ controller_id_last = #{controllerIdLast,jdbcType=BIGINT},
+ </if>
+ <if test="totalAmountLast != null">
+ total_amount_last = #{totalAmountLast,jdbcType=FLOAT},
+ </if>
+ <if test="rtuDtLast != null">
+ rtu_dt_last = #{rtuDtLast,jdbcType=TIMESTAMP},
+ </if>
+ </set>
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+ <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay">
+ <!--@mbg.generated-->
+ update rm_intake_amount_day
+ set intake_id = #{intakeId,jdbcType=BIGINT},
+ dt = #{dt,jdbcType=DATE},
+ amount = #{amount,jdbcType=DOUBLE},
+ dt_last = #{dtLast,jdbcType=TIMESTAMP},
+ rtu_addr_last = #{rtuAddrLast,jdbcType=VARCHAR},
+ controller_id_last = #{controllerIdLast,jdbcType=BIGINT},
+ total_amount_last = #{totalAmountLast,jdbcType=FLOAT},
+ rtu_dt_last = #{rtuDtLast,jdbcType=TIMESTAMP}
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍鎬绘暟-->
+ <select id="getRecordCount" resultType="java.lang.Long">
+ select count(*)
+ from rm_intake_amount_day riad
+ Left join pr_intake pint on pint.id = riad.intake_id
+ <where>
+ <if test="intakeId != null and intakeId != ''">
+ and riad.intake_id = #{intakeId}
+ </if>
+ <if test="intakeName != null and intakeName != ''">
+ and pint.name like CONCAT('%', #{intakeName,jdbcType=VARCHAR}, '%')
+ </if>
+ <if test="startDt != null">
+ and riad.dt >= #{startDt,jdbcType=DATE}
+ </if>
+ <if test="endDt != null">
+ and riad.dt <= #{endDt,jdbcType=DATE}
+ </if>
+ </where>
+ </select>
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇璁板綍-->
+ <select id="getIntakeAmountDayHistory" resultType="com.dy.pipIrrGlobal.voRm.VoIntakeAmountDay">
+ select CAST(riad.intake_id AS char) AS intakeId,
+ pint.name as intakeName,
+ riad.dt as dt,
+ riad.amount as amount,
+ riad.dt_last as dtLast,
+ riad.rtu_addr_last as rtuAddrLast,
+ CAST(riad.controller_id_last AS char) AS controllerIdLast,
+ riad.total_amount_last as totalAmountLast,
+ riad.rtu_dt_last as rtuDtLast
+ from rm_intake_amount_day riad
+ Left join pr_intake pint on pint.id = riad.intake_id
+ <where>
+ <if test="intakeId != null and intakeId != ''">
+ and riad.intake_id = #{intakeId}
+ </if>
+ <if test="intakeName != null and intakeName != ''">
+ and pint.name like CONCAT('%', #{intakeName,jdbcType=VARCHAR}, '%')
+ </if>
+ <if test="startDt != null">
+ and riad.dt >= #{startDt,jdbcType=DATE}
+ </if>
+ <if test="endDt != null">
+ and riad.dt <= #{endDt,jdbcType=DATE}
+ </if>
+ </where>
+ ORDER BY riad.id DESC
+ <!-- <if test="pageCurr != null and pageSize != null">-->
+ <!-- LIMIT ${(pageCurr-1)*pageSize}, ${pageSize}-->
+ <!-- </if>-->
+ <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="statisticsByIntake" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAmountStatistics">
- select intake_id, sum(amount) amount
- from rm_intake_amount_day
- where id <![CDATA[>=]]> #{startId, jdbcType=BIGINT} and id <![CDATA[<]]> #{endId, jdbcType=BIGINT}
- group by intake_id
- </select>
+ <select id="statisticsByIntake" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAmountStatistics">
+ select intake_id, sum(amount) amount
+ from rm_intake_amount_day
+ where id <![CDATA[>=]]> #{startId, jdbcType=BIGINT}
+ and id <![CDATA[<]]> #{endId, jdbcType=BIGINT}
+ group by intake_id
+ </select>
+
+ <!--鎸囧畾鏈堜唤鍚勫ぉ鐢ㄦ按閲忚褰曟暟閲�-->
+ <select id="getDayIntakeAmountCount" resultType="java.lang.Long">
+ SELECT COUNT(*) AS recordCount
+ FROM pr_intake inta
+ <where>
+ AND inta.deleted = 0
+ <if test="intakeNum != null and intakeNum != ''">
+ AND inta.name = #{intakeNum}
+ </if>
+ </where>
+ </select>
+
+ <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鐢ㄦ按閲�-->
+ <select id="getDayIntakeAmount" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount">
+ SELECT inta.id AS intakeId,
+ inta.name AS intakeNum,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 1), 0) AS amount1,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 2), 0) AS amount2,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 3), 0) AS amount3,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 4), 0) AS amount4,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 5), 0) AS amount5,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 6), 0) AS amount6,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 7), 0) AS amount7,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 8), 0) AS amount8,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 9), 0) AS amount9,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 10), 0) AS amount10,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 11), 0) AS amount11,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 12), 0) AS amount12,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 13), 0) AS amount13,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 14), 0) AS amount14,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 15), 0) AS amount15,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 16), 0) AS amount16,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 17), 0) AS amount17,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 18), 0) AS amount18,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 19), 0) AS amount19,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 20), 0) AS amount20,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 21), 0) AS amount21,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 22), 0) AS amount22,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 23), 0) AS amount23,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 24), 0) AS amount24,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 25), 0) AS amount25,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 26), 0) AS amount26,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 27), 0) AS amount27,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 28), 0) AS amount28,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 29), 0) AS amount29,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 30), 0) AS amount30,
+ IFNULL((SELECT IFNULL(amount, 0)
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = #{month}
+ AND DAY(intaDay.dt) = 31), 0) AS amount31
+ FROM pr_intake inta
+ <where>
+ AND inta.deleted = 0
+ <if test="intakeNum != null and intakeNum != ''">
+ AND inta.name = #{intakeNum}
+ </if>
+ </where>
+ ORDER BY inta.id
+ <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="getMonthIntakeAmountCount" resultType="java.lang.Long">
+ SELECT COUNT(*) AS recordCount
+ FROM pr_intake inta
+ <where>
+ AND inta.deleted = 0
+ <if test="intakeNum != null and intakeNum != ''">
+ AND inta.name = #{intakeNum}
+ </if>
+ </where>
+ </select>
+
+ <!--缁熻鎸囧畾骞翠唤鍚勬湀鐢ㄦ按閲�-->
+ <select id="getMonthIntakeAmount" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount">
+ SELECT inta.id AS intakeId,
+ inta.name AS intakeNum,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 1
+ GROUP BY(intaDay.intake_id)), 0) AS month1,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 2
+ GROUP BY(intaDay.intake_id)), 0) AS month2,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 3
+ GROUP BY(intaDay.intake_id)), 0) AS month3,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 4
+ GROUP BY(intaDay.intake_id)), 0) AS month4,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 5
+ GROUP BY(intaDay.intake_id)), 0) AS month5,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 6
+ GROUP BY(intaDay.intake_id)), 0) AS month6,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 7
+ GROUP BY(intaDay.intake_id)), 0) AS month7,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 8
+ GROUP BY(intaDay.intake_id)), 0) AS month8,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 9
+ GROUP BY(intaDay.intake_id)), 0) AS month9,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 10
+ GROUP BY(intaDay.intake_id)), 0) AS month10,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 11
+ GROUP BY(intaDay.intake_id)), 0) AS month11,
+ IFNULL((SELECT SUM(amount) AS amount
+ FROM rm_intake_amount_day_last intaDay
+ WHERE intaDay.intake_id = inta.id
+ AND YEAR(intaDay.dt) = #{year}
+ AND MONTH(intaDay.dt) = 12
+ GROUP BY(intaDay.intake_id)), 0) AS month12
+ FROM pr_intake inta
+ <where>
+ AND inta.deleted = 0
+ <if test="intakeNum != null and intakeNum != ''">
+ AND inta.name = #{intakeNum}
+ </if>
+ </where>
+ ORDER BY inta.id
+ <trim prefix="limit ">
+ <if test="start != null and count != null">
+ #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+ </if>
+ </trim>
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0