From b672cafe6a447c9b19691b583df9542ad84bce2c Mon Sep 17 00:00:00 2001
From: ke <893754509@qq.com>
Date: Tue, 26 Nov 2024 16:02:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtdev' into jtdev

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml |  188 ++++++++++++++++++++++++++++++++---------------
 1 files changed, 128 insertions(+), 60 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml
index 3894bda..8e26b23 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbProjectMapper.xml
@@ -48,10 +48,21 @@
     <select id="getList" resultType="cn.gistack.sm.sjztmd.vo.TbProjectVO">
 
         SELECT
-            *
+            tb.*,b."actual_fund"
         FROM SJZT_MD."tb_project" tb
+        left join (
+            SELECT "tb_project_id",sum("actual_fund") as "actual_fund" from SJZT_MD."tb_project_schedule"
+            <if test="vo.tbYear != null and vo.tbYear != ''">
+                where "year" = #{vo.tbYear}
+            </if>
+            group by "tb_project_id"
+        ) b
+        on (tb."guid" = b."tb_project_id")
         where
             tb."is_deleted" = 0
+        <if test="vo.tbYear != null and vo.tbYear != ''">
+            and tb."tb_year" = #{vo.tbYear}
+        </if>
         <if test="vo.cityCode != null and vo.cityCode != ''">
             and tb."city_code" = #{vo.cityCode}
         </if>
@@ -96,6 +107,11 @@
         <result property="contractUrl" column="contract_url"/>
         <result property="checkDate" column="check_date"/>
         <result property="planCheckDate" column="plan_check_date"/>
+        <result property="planName" column="plan_name"/>
+        <result property="planFeedBackName" column="plan_feed_back_name"/>
+        <result property="govName" column="gov_name"/>
+        <result property="contractName" column="contract_name"/>
+        <result property="checkName" column="check_name"/>
 
         <result property="isCheck" column="is_check"/>
         <result property="checkUrl" column="check_url"/>
@@ -111,6 +127,8 @@
             <result property="year" column="year"/>
             <result property="month" column="month"/>
             <result property="actualFund" column="actual_fund"/>
+            <result property="payOrderUrl" column="pay_order_url"/>
+            <result property="payOrderName" column="pay_order_name"/>
         </collection>
     </resultMap>
 
@@ -123,7 +141,7 @@
             TPS."guid" as scheduleId,
             TPS."year",
             TPS."month",
-            TPS."actual_fund"
+            TPS."actual_fund",TPS."pay_order_name",TPS."pay_order_url"
         from sjzt_md."tb_project" tb
         LEFT JOIN SJZT_MD."tb_project_schedule" TPS ON TPS."tb_project_id" = tb."guid"
         where
@@ -157,7 +175,13 @@
             levelTwoLength,
             levelThreeLength,
             levelFourLength,
-            levelFiveLength
+            levelFiveLength,
+            dykeLengthAll,
+            levelOneLengthAll,
+            levelTwoLengthAll,
+            levelThreeLengthAll,
+            levelFourLengthAll,
+            levelFiveLengthAll
         FROM YWXT."att_ad_base" aab
         left join (
             SELECT
@@ -175,9 +199,12 @@
              ) arb ON ((arb.townCode = aab."guid")or(arb.countyCode = aab."guid") or (arb.cityCode = aab."guid") or (arb.provinceCode = aab."guid") )
             right join sjzt_md."tb_res_general_investigation_state" trgis on trgis."res_guid" = arb."code"
                     <!--统计待审核和已审核的-->
-                and (trgis."check_state" = 2)
+                and (trgis."check_state" >= 2)
                 <if test="params.tbYear != null and params.tbYear != ''">
                     and trgis."tb_year" = #{params.tbYear}
+                </if>
+                <if test="params.tbQuarter != null and params.tbQuarter != ''">
+                    and trgis."tb_quarter" = #{params.tbQuarter}
                 </if>
             group by aab."guid",aab."ad_name"
         )res on res."guid" = aab."guid"
@@ -247,11 +274,14 @@
                              <if test="params.tbYear != null and params.tbYear != ''">
                                  AND  tdi."tb_year" = #{params.tbYear}
                             </if>
+                            <if test="params.tbQuarter != null and params.tbQuarter != ''">
+                                and tdi."tb_quarter" = #{params.tbQuarter}
+                            </if>
                             group by tdi."tb_state_id",tdi."dyke_guid",tdi."unit"
                         )TEMP1
                     ) tdi on tdi."tb_state_id" = tdis."guid"
                     <!--统计待审核和已审核的-->
-                    where (tdis."check_state" = 1 or tdis."check_state" = 2)
+                    where (tdis."check_state" >= 2)
                 ) trd
                 LEFT JOIN YWXT."att_ad_base" county ON county."ad_code" = trd."ad_code"
                 LEFT JOIN YWXT."att_ad_base" city ON city."ad_code" = county."p_ad_code"
@@ -259,29 +289,62 @@
             )trd on ((trd.countyCode = aab."guid") or (trd.cityCode = aab."guid") or (trd.provinceCode = aab."guid"))
             group by aab."guid",aab."ad_name"
         )dyke on dyke."guid" = aab."guid"
+
         left join (
             SELECT
                 aab."guid",
                 aab."ad_name",
-                SUM(CASE WHEN tb."actual_fund" then tb."actual_fund" else 0 end) as totalActualFund
+                SUM(CASE WHEN trd."guid" is not null then trd."dyke_length" else 0 END) as dykeLengthAll,
+                SUM(CASE WHEN trd."dyke_level" = '1级' THEN trd."dyke_length" ELSE 0 END) AS levelOneLengthAll,
+                SUM(CASE WHEN trd."dyke_level" = '2级' THEN trd."dyke_length" ELSE 0 END) AS levelTwoLengthAll,
+                SUM(CASE WHEN trd."dyke_level" = '3级' THEN trd."dyke_length" ELSE 0 END)AS levelThreeLengthAll,
+                SUM(CASE WHEN trd."dyke_level" = '4级' THEN trd."dyke_length" ELSE 0 END) AS levelFourLengthAll,
+                SUM(CASE WHEN trd."dyke_level" = '5级' THEN trd."dyke_length" ELSE 0 END) AS levelFiveLengthAll
+            FROM YWXT."att_ad_base" aab
+            left join (
+                select trd."guid",
+                trd."dyke_length",
+                trd."dyke_level",
+                county."guid" as countyCode,
+                city."guid" as cityCode,
+                province."guid" as provinceCode
+                from sjzt_md."tb_res_dyke" trd
+                LEFT JOIN YWXT."att_ad_base" county ON county."ad_code" = trd."ad_code"
+                LEFT JOIN YWXT."att_ad_base" city ON city."ad_code" = county."p_ad_code"
+                LEFT JOIN YWXT."att_ad_base" province ON province."ad_code" = city."p_ad_code"
+            ) trd on ((trd.countyCode = aab."guid") or (trd.cityCode = aab."guid") or (trd.provinceCode = aab."guid"))
+            group by aab."guid",aab."ad_name"
+        ) dykeAll on dykeAll."guid" = aab."guid"
+
+        left join (
+            SELECT
+                aab."guid",
+                aab."ad_name",
+                SUM(CASE WHEN tb."center_fund" then tb."center_fund" else 0 end) + SUM(CASE WHEN tb."local_fund" then tb."local_fund" else 0 end) as totalActualFund
             FROM YWXT."att_ad_base" aab
             LEFT JOIN (
                 select
                 tb."city_code" cityCode,
                 tb."county_code" countyCode,
                 province."guid" provinceCode,
-                tps."actual_fund"
+                tb."center_fund",
+                tb."local_fund"
                 from sjzt_md."tb_project" tb
-                LEFT JOIN SJZT_MD."tb_project_schedule" tps on tps."tb_project_id" = tb."guid"
                 LEFT JOIN YWXT."att_ad_base" province ON province."ad_code" = tb."city_code"
+                <where>
+                    <if test="params.tbYear != null and params.tbYear !=''">
+                        AND tb."tb_year" = #{params.tbYear}
+                    </if>
+                </where>
             )tb on ((tb.countyCode = aab."guid") or (tb.cityCode = aab."guid") or (tb.provinceCode = aab."guid"))
             group by aab."guid",aab."ad_name"
         ) project on project."guid" = aab."guid"
+
         left join (
             SELECT
-            aab."guid",
-            aab."ad_name",
-            tb."actual_fund" curMonthActualFund
+                aab."guid",
+                aab."ad_name",
+                sum(CASE WHEN tb."actual_fund" then tb."actual_fund" else 0 end) curMonthActualFund
             FROM YWXT."att_ad_base" aab
             LEFT JOIN (
                 select
@@ -289,18 +352,15 @@
                 tb."county_code" countyCode,
                 province."guid" provinceCode,
                 tps."actual_fund"
-                from sjzt_md."tb_project" tb
-                LEFT JOIN SJZT_MD."tb_project_schedule" tps on tps."tb_project_id" = tb."guid"
-                LEFT JOIN YWXT."att_ad_base" province ON province."ad_code" = tb."city_code"
-                where
-                    1=1
-                    <if test="params.tbYear != null and params.tbYear !=''">
-                    AND tps."year" = #{params.tbYear}
-                    </if>
-                  <if test="params.tbMonth != null and params.tbMonth != ''">
-                      and tps."month" = #{params.tbMonth}
-                  </if>
+            from sjzt_md."tb_project" tb
+            LEFT JOIN SJZT_MD."tb_project_schedule" tps on tps."tb_project_id" = tb."guid"
+            LEFT JOIN YWXT."att_ad_base" province ON province."ad_code" = tb."city_code"
+            where 1=1
+            <if test="params.tbYear != null and params.tbYear !=''">
+                AND tps."year" = #{params.tbYear}
+            </if>
             )tb on ((tb.countyCode = aab."guid") or (tb.cityCode = aab."guid") or (tb.provinceCode = aab."guid"))
+            group by aab."guid",aab."ad_name"
         ) tps on tps."guid" = aab."guid"
         left join ywxt."att_ad_base" paab on paab."guid" = aab."p_ad_code"
         where
@@ -325,25 +385,27 @@
         </if>
     </select>
     <select id="getStatisticsPie" resultType="cn.gistack.sm.sjztmd.vo.StatisticsPrice">
-        SELECT
-	sum(
-	NVL ( a."center_fund", 0 )+ NVL ( a."local_fund", 0 )) AS sumPrice,
-	sum(
-	NVL ( b."actual_fund", 0 )) sumPay,
-	sum(
-		NVL ( a."center_fund", 0 )+ NVL ( a."local_fund", 0 ))- sum(
-	NVL ( b."actual_fund", 0 )) noPay
-FROM
+    SELECT
+        sum(
+        NVL ( a."center_fund", 0 )+ NVL ( a."local_fund", 0 )) AS sumPrice,
+        sum(
+        NVL ( b."actual_fund", 0 )) sumPay,
+        sum(
+            NVL ( a."center_fund", 0 )+ NVL ( a."local_fund", 0 ))- sum(
+        NVL ( b."actual_fund", 0 )) noPay
+    FROM
 	sjzt_md."tb_project" a
-	LEFT JOIN ( SELECT * FROM sjzt_md."tb_project_schedule"
-	WHERE 1=1
-	<if test="params.tbYear != null and params.tbYear !=''">
-      AND  "year" = #{params.tbYear}
-    </if>
-    <if test="params.tbMonth != null and params.tbMonth !=''">
-        AND "month" = #{params.tbMonth}
-    </if>
-	) b ON a."guid" = b."tb_project_id" and a."check_state" = 3
+	LEFT JOIN (
+	    SELECT "tb_project_id",sum("actual_fund") "actual_fund" FROM sjzt_md."tb_project_schedule"
+	    WHERE 1=1
+        <if test="params.tbYear != null and params.tbYear !=''">
+          AND  "year" = #{params.tbYear}
+        </if>
+        <if test="params.tbMonth != null and params.tbMonth !=''">
+            AND "month" = #{params.tbMonth}
+        </if>
+        group by "tb_project_id"
+	) b ON a."guid" = b."tb_project_id"
     </select>
     <select id="getStatisticsPies" resultType="cn.gistack.sm.sjztmd.vo.StatisticsPrice">
         SELECT
@@ -356,7 +418,8 @@
 	NVL ( b."actual_fund", 0 )) noPay
 FROM
 	sjzt_md."tb_project" a
-	LEFT JOIN ( SELECT * FROM sjzt_md."tb_project_schedule"
+	LEFT JOIN (
+        SELECT "tb_project_id",sum("actual_fund") "actual_fund" FROM sjzt_md."tb_project_schedule"
         WHERE 1=1
         <if test="params.tbYear != null and params.tbYear !=''">
             AND  "year" = #{params.tbYear}
@@ -364,7 +427,8 @@
         <if test="params.tbMonth != null and params.tbMonth !=''">
             AND "month" = #{params.tbMonth}
         </if>
-        ) b ON a."guid" = b."tb_project_id" and a."check_state" = 3
+        group by "tb_project_id"
+        ) b ON a."guid" = b."tb_project_id"
 	LEFT JOIN YWXT."att_ad_base" c ON ( a."city_code" = c."guid" )
 	OR ( a."county_code" = c."guid" )
 WHERE
@@ -384,15 +448,17 @@
 		NVL ( b."actual_fund", 0 )) noPay
 	FROM
 		sjzt_md."tb_project" a
-		LEFT JOIN  ( SELECT * FROM sjzt_md."tb_project_schedule"
-        WHERE 1=1
-        <if test="params.tbYear != null and params.tbYear !=''">
-            AND  "year" = #{params.tbYear}
-        </if>
-        <if test="params.tbMonth != null and params.tbMonth !=''">
-            AND "month" = #{params.tbMonth}
-        </if>
-        ) b ON a."guid" = b."tb_project_id" and a."check_state" = 3
+		LEFT JOIN  (
+            SELECT "tb_project_id",sum("actual_fund") "actual_fund" FROM sjzt_md."tb_project_schedule"
+            WHERE 1=1
+            <if test="params.tbYear != null and params.tbYear !=''">
+                AND  "year" = #{params.tbYear}
+            </if>
+            <if test="params.tbMonth != null and params.tbMonth !=''">
+                AND "month" = #{params.tbMonth}
+            </if>
+            group by "tb_project_id"
+        ) b ON a."guid" = b."tb_project_id"
 		RIGHT JOIN YWXT."att_ad_base" c on c."ad_code" = a."city_code"
 		where c."p_ad_code" = #{params.adCode}
 	GROUP BY
@@ -421,15 +487,17 @@
 		NVL ( b."actual_fund", 0 )) noPay
 	FROM
 		sjzt_md."tb_project" a
-		LEFT JOIN ( SELECT * FROM sjzt_md."tb_project_schedule"
-        WHERE  1=1
-        <if test="params.tbYear != null and params.tbYear !=''">
-            AND  "year" = #{params.tbYear}
-        </if>
-        <if test="params.tbMonth != null and params.tbMonth !=''">
-            AND "month" = #{params.tbMonth}
-        </if>
-        ) b ON a."guid" = b."tb_project_id" and a."check_state" = 3
+		LEFT JOIN (
+            SELECT "tb_project_id",sum("actual_fund") "actual_fund" FROM sjzt_md."tb_project_schedule"
+            WHERE  1=1
+            <if test="params.tbYear != null and params.tbYear !=''">
+                AND  "year" = #{params.tbYear}
+            </if>
+            <if test="params.tbMonth != null and params.tbMonth !=''">
+                AND "month" = #{params.tbMonth}
+            </if>
+            group by "tb_project_id"
+        ) b ON a."guid" = b."tb_project_id"
 	GROUP BY
 		a."county_code",
 		a."county_name",

--
Gitblit v1.9.3