From b15920d5a66d379c9fd9cb15fcc48f0f078e7c77 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期一, 28 十月 2024 14:52:53 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml |  187 +++++++++++++++++++++++++++++++++++++---------
 1 files changed, 150 insertions(+), 37 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 5b247fb..c68b2b7 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml
@@ -211,10 +211,10 @@
             </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="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>
@@ -234,7 +234,12 @@
     <select id="getDayIntakeAmountCount" resultType="java.lang.Long">
         SELECT COUNT(*) AS recordCount
         FROM pr_intake inta
-        WHERE inta.deleted = 0
+        <where>
+            AND inta.deleted = 0
+            <if test="intakeNum != null and intakeNum != ''">
+                AND inta.name = #{intakeNum}
+            </if>
+        </where>
     </select>
 
     <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鐢ㄦ按閲�-->
@@ -242,193 +247,301 @@
         SELECT inta.id                                 AS intakeId,
                inta.name                               AS intakeNum,
                IFNULL((SELECT IFNULL(amount, 0)
-                       FROM rm_intake_amount_day intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 intaDay
+                       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 inta.deleted = 0
+        <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">

--
Gitblit v1.8.0