From 566635436c125a5ce266b33631cdba2029f9616b Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期四, 01 六月 2023 10:24:30 +0800
Subject: [PATCH] 优化就餐
---
java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml | 152 +++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 141 insertions(+), 11 deletions(-)
diff --git a/java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml
index 8687111..7fdafd4 100644
--- a/java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/report/ReportFeeStatisticsServiceDaoImplMapper.xml
@@ -795,7 +795,7 @@
<!-- 浼樻儬璐圭敤-->
<select id="getDiscountFee" parameterType="Map" resultType="Map">
- select SUM(t.discount_amount) discountFee
+ select ifnull(SUM(t.discount_amount),0.0) discountFee
from pay_fee_detail_month t
where 1=1
and t.status_cd = '0'
@@ -808,7 +808,7 @@
<!-- 婊炵撼閲戣垂鐢�-->
<select id="getLateFee" parameterType="Map" resultType="Map">
- select SUM(t.discount_amount) lateFee
+ select ifnull(SUM(t.discount_amount),0.0) lateFee
from pay_fee_detail_month t
where 1=1
and t.status_cd = '0'
@@ -821,7 +821,7 @@
<!-- 鏌ヨ棰勫瓨璐︽埛-->
<select id="getPrestoreAccount" parameterType="Map" resultType="Map">
- select SUM(t.discount_amount) prestoreAccount lateFee
+ select ifnull(SUM(t.amount),0.0) prestoreAccount
from account_detail t
INNER JOIN account ac on t.acct_id = ac.acct_id and ac.status_cd = '0'
where 1=1
@@ -835,7 +835,7 @@
<!-- 鏌ヨ璐︽埛鎵f-->
<select id="getWithholdAccount" parameterType="Map" resultType="Map">
- select SUM(t.discount_amount) withholdAccount lateFee
+ select ifnull(SUM(t.amount),0.0) withholdAccount
from account_detail t
INNER JOIN account ac on t.acct_id = ac.acct_id and ac.status_cd = '0'
where 1=1
@@ -849,10 +849,10 @@
<!-- 鏌ヨ涓存椂杞﹁垂 -->
<select id="getTempCarFee" parameterType="Map" resultType="Map">
- select sum(t.pay_charge) tempCarFee
+ select ifnull(sum(t.pay_charge),0.0) tempCarFee
from car_inout_payment t
where 1=1
- and ac.part_id= #{communityId}
+ and t.community_id = #{communityId}
and t.create_time > #{startDate}
and t.create_time < #{endDate}
and t.status_cd = '0'
@@ -860,7 +860,7 @@
<!-- 鎶奸噾閫�娆鹃噾棰� -->
<select id="geRefundDeposit" parameterType="Map" resultType="Map">
- select sum(t.received_amount) refundDeposit from return_pay_fee t
+ select ifnull(sum(t.received_amount),0.0) refundDeposit from return_pay_fee t
where t.fee_type_cd = '888800010006'
and t.status_cd = '0'
and t.state = '1001'
@@ -872,7 +872,7 @@
<!-- 閫�娆捐鍗曟暟 -->
<select id="geRefundOrderCount" parameterType="Map" resultType="Map">
select count(1) refundOrderCount from return_pay_fee t
- where t.status_cd = '0'
+ where t.status_cd = '0'
and t.state = '1001'
and t.community_id = #{communityId}
and t.create_time > #{startDate}
@@ -881,8 +881,8 @@
<!-- 閫�娆鹃噾棰� -->
<select id="geRefundFee" parameterType="Map" resultType="Map">
- select sum(t.received_amount) refundFee from return_pay_fee t
- where t.status_cd = '0'
+ select ifnull(sum(t.received_amount),0.0) refundFee from return_pay_fee t
+ where t.status_cd = '0'
and t.state = '1001'
and t.community_id = #{communityId}
and t.create_time > #{startDate}
@@ -891,7 +891,7 @@
<!-- 鏌ヨ鍏呯數璐圭敤-->
<select id="getChargeFee" parameterType="Map" resultType="Map">
- select sum(t.amount) chargeFee
+ select ifnull(sum(t.amount),0.0) chargeFee
from charge_machine_order t
where t.status_cd = '0'
and t.community_id = #{communityId}
@@ -899,5 +899,135 @@
and t.create_time < #{endDate}
</select>
+ <!-- 鏌ヨ妤兼爧瀹炴敹-->
+ <select id="getReceivedFeeByFloor" parameterType="Map" resultType="Map">
+ select a.floor_id floorId,a.floor_num floorNum,a.name floorName,td.status_cd feeTypeCd,
+ (
+ select count(1)
+ from building_room br
+ left join building_unit bu on bu.unit_id = br.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and a.status_cd = '0'
+ and br.status_cd = '0'
+ and bu.floor_id = a.floor_id
+ ) roomCount,
+ (
+ select count(1) from (
+ select bu.floor_id,br.room_id
+ from building_room br
+ INNER JOIN pay_fee pf on br.room_id = pf.payer_obj_id and pf.payer_obj_type = '3333' and pf.status_cd = '0'
+ left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and br.status_cd = '0'
+ and br.community_id= #{communityId}
+ group by bu.floor_id,br.room_id
+ ) b
+ where b.floor_id = a.floor_id
+ ) feeRoomCount,
+ (
+ select ifnull(sum(t.received_amount),0.0) receivedFee
+ from pay_fee_detail t
+ INNER JOIN pay_fee pf1 on t.fee_id = pf1.fee_id and pf1.payer_obj_type='3333' and pf1.status_cd = '0'
+ LEFT JOIN building_room br on pf1.payer_obj_id = br.room_id and br.status_cd = '0'
+ left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and bu.floor_id = a.floor_id
+ and t.status_cd = '0'
+ and t.community_id = #{communityId}
+ and t.create_time > #{startDate}
+ and t.create_time < #{endDate}
+ and pf1.fee_type_cd = td.status_cd
+ ) receivedFee
+ from f_floor a
+ left join t_dict td on td.table_name='pay_fee_config' and td.table_columns = 'fee_type_cd_show'
+ where 1=1
+ and a.status_cd = '0'
+ and a.community_id = #{communityId}
+ order by a.seq
+ </select>
+
+ <!-- 鎸夌即璐规柟寮忕粺璁� -->
+ <select id="getReceivedFeeByPrimeRate" parameterType="Map" resultType="Map">
+ select td.`name`,td.status_cd primeRate,ifnull(SUM(t.received_amount),0) receivedAmount
+ from t_dict td
+ left join pay_fee_detail t on td.status_cd = t.prime_rate and t.status_cd = '0'
+ where
+ 1=1
+ and td.table_name = 'pay_fee_detail'
+ and td.table_columns = 'prime_rate'
+ and t.community_id = #{communityId}
+ and t.create_time > #{startDate}
+ and t.create_time < #{endDate}
+ group by td.status_cd,td.`name`
+ </select>
+
+ <!-- 鎸夋ゼ鏍嬬粺璁℃瑺璐� -->
+ <select id="getOweFeeByFloor" parameterType="Map" resultType="Map">
+ select a.floor_id floorId,a.floor_num floorNum,a.name floorName,td.status_cd feeTypeCd,
+ (
+ select count(1)
+ from building_room br
+ left join building_unit bu on bu.unit_id = br.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and a.status_cd = '0'
+ and br.status_cd = '0'
+ and bu.floor_id = a.floor_id
+ ) roomCount,
+ (
+ select count(1) from (
+ select bu.floor_id,br.room_id
+ from building_room br
+ INNER JOIN pay_fee pf on br.room_id = pf.payer_obj_id and pf.payer_obj_type = '3333' and pf.status_cd = '0'
+ left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and br.status_cd = '0'
+ and br.community_id= #{communityId}
+ group by bu.floor_id,br.room_id
+ ) b
+ where b.floor_id = a.floor_id
+ ) feeRoomCount,
+ (
+ select count(1) from (
+ select bu.floor_id,br.room_id
+ from building_room br
+ INNER JOIN pay_fee_detail_month pf on br.room_id = pf.obj_id and pf.status_cd = '0'
+ left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and br.status_cd = '0'
+ and br.community_id= #{communityId}
+ and pf.detail_id = '-1'
+ and pf.cur_month_time < #{endDate}
+ group by bu.floor_id,br.room_id
+ ) b
+ where b.floor_id = a.floor_id
+ ) oweRoomCount,
+ (
+ select ifnull(sum(t.received_amount),0.0) oweFee
+ from pay_fee_detail_month t
+ INNER JOIN pay_fee pf1 on t.fee_id = pf1.fee_id and pf1.payer_obj_type='3333' and pf1.status_cd = '0'
+ LEFT JOIN building_room br on pf1.payer_obj_id = br.room_id and br.status_cd = '0'
+ left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0'
+ where
+ 1=1
+ and bu.floor_id = a.floor_id
+ and t.status_cd = '0'
+ and t.community_id = #{communityId}
+ and t.detail_id = '-1'
+ and t.cur_month_time < #{endDate}
+ and pf1.fee_type_cd = td.status_cd
+ ) oweFee
+ from f_floor a
+ left join t_dict td on td.table_name='pay_fee_config' and td.table_columns = 'fee_type_cd_show'
+ where 1=1
+ and a.status_cd = '0'
+ and a.community_id = #{communityId}
+ order by a.seq
+ </select>
</mapper>
--
Gitblit v1.8.0