From f42983b35c738a28ed4b9d1732d1045c5f2a19bb Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 09 五月 2021 16:57:12 +0800
Subject: [PATCH] 优化代码

---
 java110-db/src/main/resources/mapper/report/ReportFeeServiceDaoImplMapper.xml |   51 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 40 insertions(+), 11 deletions(-)

diff --git a/java110-db/src/main/resources/mapper/report/ReportFeeServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/report/ReportFeeServiceDaoImplMapper.xml
old mode 100644
new mode 100755
index bf8b456..7414611
--- a/java110-db/src/main/resources/mapper/report/ReportFeeServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/report/ReportFeeServiceDaoImplMapper.xml
@@ -6,14 +6,31 @@
 
     <!-- 鏌ヨ瀹炴敹閲戦 -->
     <select id="getFeeReceivedAmount" parameterType="com.java110.dto.report.ReportFeeDetailDto" resultType="Map">
-        select SUM(t.received_amount) receivedAmount from pay_fee_detail t
+
+        select SUM(t.received_amount) receivedAmount
+        from pay_fee_detail t
+        <if test="configId != null and configId != ''">
+            inner join pay_fee pf on t.fee_id = pf.fee_id and pf.status_cd = '0'
+        </if>
         where 1=1
-        and t.fee_id = #{feeId}
+        <if test="configId != null and configId != ''">
+            and pf.config_id = #{configId}
+            and pf.payer_obj_id = #{payerObjId}
+        </if>
+        <if test="feeId !=null and feeId != ''">
+            and t.fee_id = #{feeId}
+        </if>
         <if test="startTime != null">
-        and t.create_time &gt; #{startTime}
+            and t.create_time &gt; #{startTime}
         </if>
         <if test="endTime != null">
             and t.create_time &lt; #{endTime}
+        </if>
+        <if test="curStartYear != null and curStartYear != ''">
+            and DATE_FORMAT(t.start_time,'%Y') = #{curStartYear}
+        </if>
+        <if test="curEndYear != null and curEndYear != ''">
+            and DATE_FORMAT(DATE_SUB(t.end_time,INTERVAL 1 DAY),'%Y') = #{curEndYear}
         </if>
     </select>
 
@@ -33,19 +50,28 @@
     <!-- 鏌ヨ 璐圭敤 -->
     <select id="getFees" parameterType="com.java110.dto.report.ReportFeeDto"
             resultType="com.java110.dto.report.ReportFeeDto">
-        select pfc.fee_name feeName,pfc.start_time configStartTime,pfc.end_time configEndTime,pfc.config_id configId,pfc.fee_type_cd feeTypeCd,
-        pfc.additional_amount additionalAmount,pfc.bill_type billType,pfc.computing_formula computingFormula,pfc.payment_cd paymentCd,
-        pfc.payment_cycle paymentCycle,pfc.square_price squarePrice,pfc.fee_flag feeFlag,t.payer_obj_id payerObjId,t.payer_obj_type payerObjType,
-        t.amount,t.create_time createTime,t.end_time endTime,t.fee_id feeId,t.income_obj_id incomeObjId,t.start_time startTime,t.state,
-        br.room_id roomId,br.room_num roomNum,oc.car_num carNum,ss.store_id storeId,ss.`name` storeName,ss.store_type_cd storeTypeCd,
-        t.community_id communityId,pfa.value importFeeName,ifd.end_time importFeeEndTime,mw.cur_degrees curDegrees,mw.pre_degrees preDegrees,
-        mw.pre_reading_time preReadingTime,mw.cur_reading_time curReadingTime
+        select pfc.fee_name feeName,pfc.start_time configStartTime,pfc.end_time configEndTime,pfc.config_id
+        configId,pfc.fee_type_cd feeTypeCd,
+        pfc.additional_amount additionalAmount,pfc.bill_type billType,pfc.computing_formula
+        computingFormula,pfc.computing_formula_text computingFormulaText,
+        pfc.payment_cd paymentCd,
+        pfc.payment_cycle paymentCycle,pfc.square_price squarePrice,pfc.fee_flag feeFlag,t.payer_obj_id
+        payerObjId,t.payer_obj_type payerObjType,
+        t.amount,t.create_time createTime,t.end_time endTime,t.fee_id feeId,t.income_obj_id incomeObjId,t.start_time
+        startTime,t.state,
+        br.room_id roomId,br.room_num roomNum,oc.car_num carNum,ss.store_id storeId,ss.`name` storeName,ss.store_type_cd
+        storeTypeCd,
+        t.community_id communityId,pfa.value importFeeName,ifd.end_time importFeeEndTime,mw.cur_degrees
+        curDegrees,mw.pre_degrees preDegrees,
+        mw.pre_reading_time preReadingTime,mw.cur_reading_time curReadingTime,pfa1.`value` deadlineTime
         from pay_fee t
         INNER JOIN pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0'
         left join building_room br on t.payer_obj_id = br.room_id and t.payer_obj_type = '3333' and br.status_cd = '0'
-        left join owner_car oc on t.payer_obj_id = oc.car_id and t.payer_obj_type = '6666' and oc.status_cd = '0'
+        left join owner_car oc on t.payer_obj_id = oc.car_id and t.payer_obj_type = '6666' and oc.status_cd = '0' and
+        oc.car_type_cd='1001'
         left join s_store ss on t.income_obj_id = ss.store_id and ss.status_cd = '0'
         LEFT JOIN pay_fee_attrs pfa on t.fee_id = pfa.fee_id and pfa.spec_cd = '390002' and pfa.status_cd = '0'
+        LEFT JOIN pay_fee_attrs pfa1 on t.fee_id = pfa1.fee_id and pfa1.spec_cd = '390010' and pfa1.status_cd = '0'
         left join import_fee_detail ifd on t.fee_id = ifd.fee_id and ifd.status_cd = '0' and t.fee_flag = '2006012'
         LEFT JOIN meter_water mw on t.fee_id = mw.fee_id and mw.status_cd = '0' and mw.community_id = t.community_id
         where t.status_cd = '0'
@@ -61,6 +87,9 @@
         <if test="communityId !=null and communityId != ''">
             and t.community_id= #{communityId}
         </if>
+        <if test="feeFlag !=null and feeFlag != ''">
+            and t.fee_flag= #{feeFlag}
+        </if>
         <if test="page != -1 and page != null ">
             limit #{page}, #{row}
         </if>

--
Gitblit v1.8.0