From 093b73aadb022895a02dbbcd64b87613e19b547b Mon Sep 17 00:00:00 2001
From: 1098226878@qq.com <1098226878@qq.com>
Date: 星期一, 10 一月 2022 18:05:21 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity
---
java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml | 250 +++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 206 insertions(+), 44 deletions(-)
diff --git a/java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml
old mode 100644
new mode 100755
index cdf2973..42fc8d1
--- a/java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml
@@ -7,10 +7,10 @@
<!-- 淇濆瓨璐圭敤淇℃伅 add by wuxw 2018-07-03 -->
<insert id="saveBusinessFeeInfo" parameterType="Map">
insert into business_pay_fee(
- amount,operate,income_obj_id,fee_type_cd,start_time,end_time,community_id,b_id,fee_id,user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type
+ amount,operate,income_obj_id,fee_type_cd,start_time,end_time,community_id,b_id,fee_id,user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type,batch_id
) values (
#{amount},#{operate},#{incomeObjId},#{feeTypeCd},#{startTime},#{endTime},#{communityId},#{bId},#{feeId},#{userId},#{payerObjId},
- #{feeFlag},#{state},#{configId},#{payerObjType}
+ #{feeFlag},#{state},#{configId},#{payerObjType},#{batchId}
)
</insert>
@@ -21,7 +21,7 @@
feeTypeCd,t.start_time,t.start_time startTime,t.end_time,t.end_time endTime,t.community_id,t.community_id
communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId,t.user_id,t.user_id userId,t.payer_obj_id,t.payer_obj_id
payerObjId,t.fee_flag,t.fee_flag feeFlag,t.state,t.config_id,t.config_id
- configId,t.payer_obj_type,t.payer_obj_type payerObjType
+ configId,t.payer_obj_type,t.payer_obj_type payerObjType,t.batch_id,t.batch_id batchId
from business_pay_fee t
where 1 =1
<if test="amount !=null and amount != ''">
@@ -76,10 +76,10 @@
<!-- 淇濆瓨璐圭敤淇℃伅鑷� instance琛ㄤ腑 add by wuxw 2018-07-03 -->
<insert id="saveFeeInfoInstance" parameterType="Map">
insert into pay_fee(
- amount,income_obj_id,fee_type_cd,start_time,status_cd,end_time,community_id,b_id,fee_id,user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type
+ amount,income_obj_id,fee_type_cd,start_time,status_cd,end_time,community_id,b_id,fee_id,user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type,batch_id
) select
t.amount,t.income_obj_id,t.fee_type_cd,t.start_time,'0',t.end_time,t.community_id,t.b_id,t.fee_id,t.user_id,t.payer_obj_id
- ,t.fee_flag,t.state,t.config_id,t.payer_obj_type
+ ,t.fee_flag,t.state,t.config_id,t.payer_obj_type,t.batch_id
from business_pay_fee t where 1=1
<if test="amount !=null and amount != ''">
and t.amount= #{amount}
@@ -136,26 +136,39 @@
endTime,t.community_id,t.community_id communityId,t.b_id,t.b_id bId,t.fee_id,t.fee_id feeId,t.user_id,t.user_id
userId,t.payer_obj_id,t.payer_obj_id payerObjId,pfc.square_price squarePrice,pfc.additional_amount
additionalAmount,t.fee_flag,t.fee_flag feeFlag,t.state,t.config_id,t.config_id configId,
- pfc.fee_name feeName,td1.name feeTypeCdName,td2.name stateName,td3.name feeFlagName,pfc.computing_formula,pfc.bill_type billType
- computingFormula,
- t.payer_obj_type,t.payer_obj_type payerObjType,pfc.is_default isDefault,pfc.start_time
- configStartTime,pfc.end_time configEndTime,pfc.payment_cd paymentCd,pfc.payment_cycle paymentCycle
- from pay_fee t,pay_fee_config pfc,t_dict td1,t_dict td2,t_dict td3
+ pfc.fee_name feeName,td1.name feeTypeCdName,td2.name stateName,td3.name feeFlagName,pfc.computing_formula
+ computingFormula,pfc.computing_formula_text computingFormulaText,
+ pfc.bill_type billType,t.payer_obj_type,t.payer_obj_type payerObjType,pfc.is_default isDefault,pfc.start_time
+ configStartTime,pfc.end_time configEndTime,pfc.payment_cd paymentCd,pfc.payment_cycle paymentCycle,td4.name
+ billTypeName,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,mw.price
+ mwPrice,
+ pfa2.`value` ownerName,t.batch_id,t.batch_id batchId
+ from pay_fee t
+ INNER join pay_fee_config pfc on t.config_id = pfc.config_id and
+ pfc.status_cd = '0'
+ left join t_dict td1 on pfc.fee_type_cd = td1.status_cd and td1.table_name = 'pay_fee_config' and
+ td1.table_columns = 'fee_type_cd'
+ left join t_dict td2 on t.state = td2.status_cd and td2.table_name = 'pay_fee' and td2.table_columns = 'state'
+ left join t_dict td3 on t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns =
+ 'fee_flag'
+ left join t_dict td4 on pfc.bill_type = td4.status_cd and td4.table_name = 'pay_fee_config' and
+ td4.table_columns = 'bill_type'
+ 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 pay_fee_attrs pfa2 on t.fee_id = pfa2.fee_id and pfa2.spec_cd = '390008' and pfa2.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
+ <if test="ownerId != null and ownerId != ''">
+ LEFT JOIN pay_fee_attrs pfao on t.fee_id = pfao.fee_id and pfao.spec_cd = '390007' and pfao.status_cd = '0'
+ </if>
where 1 =1
- and t.fee_type_cd = pfc.fee_type_cd
- and t.config_id = pfc.config_id
- and pfc.status_cd = '0'
- and pfc.fee_type_cd = td1.status_cd
- and td1.table_name = 'pay_fee_config'
- and td1.table_columns = 'fee_type_cd'
- and t.state = td2.status_cd
- and td2.table_name = 'pay_fee'
- and td2.table_columns = 'state'
- and t.fee_flag = td3.status_cd
- and td3.table_name = 'pay_fee'
- and td3.table_columns = 'fee_flag'
<if test="amount !=null and amount != ''">
and t.amount= #{amount}
+ </if>
+ <if test="ownerId !=null and ownerId != ''">
+ and pfao.value= #{ownerId}
</if>
<if test="incomeObjId !=null and incomeObjId != ''">
and t.income_obj_id= #{incomeObjId}
@@ -181,9 +194,12 @@
<if test="arrearsEndTime != null">
and t.end_time < #{arrearsEndTime}
</if>
+ <if test="nowDate != null">
+ and t.end_time > #{nowDate}
+ </if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
- and pfc.community_id= #{communityId}
+ and pfc.community_id in (#{communityId},'9999')
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -272,7 +288,10 @@
<!-- 鏌ヨ璐圭敤鏁伴噺 add by wuxw 2018-07-03 -->
<select id="queryFeesCount" parameterType="Map" resultType="Map">
select count(1) count
- from pay_fee t,pay_fee_config pfc,t_dict td1,t_dict td2,t_dict td3
+ from pay_fee t,pay_fee_config pfc,t_dict td1,t_dict td2,t_dict td3,t_dict td4
+ <if test="ownerId != null and ownerId != ''">
+ ,pay_fee_attrs pfao
+ </if>
where 1 =1
and t.fee_type_cd = pfc.fee_type_cd
and t.config_id = pfc.config_id
@@ -286,6 +305,15 @@
and t.fee_flag = td3.status_cd
and td3.table_name = 'pay_fee'
and td3.table_columns = 'fee_flag'
+ and pfc.bill_type = td4.status_cd
+ and td4.table_name = 'pay_fee_config'
+ and td4.table_columns = 'bill_type'
+ <if test="ownerId != null and ownerId != ''">
+ and t.fee_id = pfao.fee_id
+ and pfao.spec_cd = '390007'
+ and pfao.status_cd = '0'
+ and pfao.value= #{ownerId}
+ </if>
<if test="amount !=null and amount != ''">
and t.amount= #{amount}
</if>
@@ -366,15 +394,18 @@
t.community_id communityId,
t.config_id configId,
t.cur_bill curBill,
+ td.name curBillName,
c.fee_name feeName
from bill t
- left join pay_fee_config c on t.config_id = c.config_id and c.community_id = t.community_id and c.status_cd = '0'
- where 1 =1
+ left join pay_fee_config c on t.config_id = c.config_id and c.community_id = t.community_id and c.status_cd =
+ '0'
+ left join t_dict td on td.table_name = 'bill' and td.table_columns = 'cur_bill' and t.cur_bill = td.status_cd
+ where 1 = 1
<if test="billId !=null and billId != ''">
and t.bill_id= #{billId}
</if>
<if test="billName !=null and billName != ''">
- and t.bill_name= #{billName}
+ and t.bill_name like '%${billName}%'
</if>
<if test="receivable !=null and receivable != ''">
and t.receivable= #{receivable}
@@ -407,13 +438,14 @@
<select id="queryBillCount" parameterType="Map" resultType="Map">
select count(1) count
from bill t
- left join pay_fee_config c on t.config_id = c.config_id and c.community_id = t.community_id and c.status_cd = '0'
+ left join pay_fee_config c on t.config_id = c.config_id and c.community_id = t.community_id and c.status_cd =
+ '0'
where 1 =1
<if test="billId !=null and billId != ''">
and t.bill_id= #{billId}
</if>
<if test="billName !=null and billName != ''">
- and t.bill_name= #{billName}
+ and t.bill_name like '%${billName}%'
</if>
<if test="receivable !=null and receivable != ''">
and t.receivable= #{receivable}
@@ -455,9 +487,21 @@
t.payer_obj_type payerObjType,
t.community_id communityId,
t.state,
- t.create_time createTime
+ t.create_time createTime,
+ t.deadline_time deadlineTime,
+ pf.payer_obj_id payObjId,
+ td.name feeTypeName,
+ td2.name stateName
from bill_owe_fee t
- where 1 =1
+ <if test="curBill !=null and curBill != ''">
+ inner join bill b on t.bill_id = b.bill_id and b.community_id = t.community_id and b.cur_bill = #{curBill}
+ </if>
+ left join pay_fee pf on t.fee_id = pf.fee_id and t.community_id = pf.community_id and pf.status_cd = '0'
+ left join t_dict td on pf.fee_type_cd = td.status_cd and td.table_name = 'pay_fee_config' and td.table_columns =
+ 'fee_type_cd'
+ left join t_dict td2 on t.state = td2.status_cd and td2.table_name = 'bill_owe_fee' and td2.table_columns =
+ 'state'
+ where 1 = 1
<if test="oweId !=null and oweId != ''">
and t.owe_id= #{oweId}
</if>
@@ -482,12 +526,12 @@
<if test="ownerIds !=null">
and t.owner_id in
<foreach collection="ownerIds" open="(" close=")"
- separator="," item="item">
+ separator="," item="item">
#{item}
</foreach>
</if>
<if test="ownerName != null and ownerName != ''">
- and t.owner_name = #{ownerName}
+ and t.owner_name like '%${ownerName}%'
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
@@ -528,7 +572,7 @@
and t.owner_id = #{ownerId}
</if>
<if test="ownerName != null and ownerName != ''">
- and t.owner_name = #{ownerName}
+ and t.owner_name like '%${ownerName}%'
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
@@ -542,15 +586,20 @@
<insert id="insertBillOweFees" parameterType="Map">
INSERT INTO bill_owe_fee
(`owe_id`, `bill_id`, `fee_id`, `bill_amount_owed`, `amount_owed`, `fee_end_time`, `owner_id`, `owner_name`,
- `owner_tel`, `payer_obj_name`, `payer_obj_type`, `community_id`, `state`)
+ `owner_tel`, `payer_obj_name`, `payer_obj_type`, `community_id`, `state`,deadline_time)
VALUES (#{oweId}, #{billId}, #{feeId}, #{billAmountOwed}, #{amountOwed}, #{feeEndTime}, #{ownerId},
#{ownerName},
- #{ownerTel}, #{payerObjName}, #{payerObjType}, #{communityId}, #{state})
+ #{ownerTel}, #{payerObjName}, #{payerObjType}, #{communityId}, #{state},#{deadlineTime})
</insert>
+
+ <update id="updateBillOweFees" parameterType="Map">
+ update bill_owe_fee t set t.state = #{state} where t.fee_id = #{feeId} and t.community_id=#{communityId}
+ and t.bill_id=#{billId}
+ </update>
<insert id="insertBill" parameterType="Map">
INSERT INTO bill (`bill_id`, `bill_name`, `receivable`, `receipts`, `bill_time`, `community_id`, `config_id`,
- `remark`, `cur_bill`, `cur_receivable`)
+ `remark`, `cur_bill`, `cur_receivable`)
VALUES (#{billId}, #{billName}, #{receivable}, #{receipts}, #{billTime}, #{communityId}, #{configId},
#{remark}, #{curBill}, #{curReceivable})
</insert>
@@ -564,10 +613,13 @@
<select id="queryFeeByAttrCount" parameterType="Map" resultType="Map">
select count(1) count
from pay_fee t
- left join pay_fee_config pfc on t.fee_type_cd = pfc.fee_type_cd and t.config_id = pfc.config_id and pfc.status_cd = '0'
- left join t_dict td1 on pfc.fee_type_cd = td1.status_cd and td1.table_columns = 'fee_type_cd' and td1.table_name = 'pay_fee_config'
+ left join pay_fee_config pfc on t.fee_type_cd = pfc.fee_type_cd and t.config_id = pfc.config_id and
+ pfc.status_cd = '0'
+ left join t_dict td1 on pfc.fee_type_cd = td1.status_cd and td1.table_columns = 'fee_type_cd' and td1.table_name
+ = 'pay_fee_config'
left join t_dict td2 on t.state = td2.status_cd and td2.table_name = 'pay_fee' and td2.table_columns = 'state'
- left join t_dict td3 on t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns = 'fee_flag'
+ left join t_dict td3 on t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns =
+ 'fee_flag'
left join pay_fee_attrs pfa on t.fee_id = pfa.fee_id and pfa.status_cd='0'
where pfa.spec_cd = #{specCd}
and pfa.value = #{value}
@@ -647,14 +699,17 @@
userId,t.payer_obj_id,t.payer_obj_id payerObjId,pfc.square_price squarePrice,pfc.additional_amount
additionalAmount,t.fee_flag,t.fee_flag feeFlag,t.state,t.config_id,t.config_id configId,
pfc.fee_name feeName,td1.name feeTypeCdName,td2.name stateName,td3.name feeFlagName,pfc.computing_formula
- computingFormula,
+ computingFormula,pfc.computing_formula_text computingFormulaText,
t.payer_obj_type,t.payer_obj_type payerObjType,pfc.is_default isDefault,pfc.start_time
configStartTime,pfc.end_time configEndTime,pfc.payment_cd paymentCd,pfc.payment_cycle paymentCycle
from pay_fee t
- left join pay_fee_config pfc on t.fee_type_cd = pfc.fee_type_cd and t.config_id = pfc.config_id and pfc.status_cd = '0'
- left join t_dict td1 on pfc.fee_type_cd = td1.status_cd and td1.table_columns = 'fee_type_cd' and td1.table_name = 'pay_fee_config'
+ left join pay_fee_config pfc on t.fee_type_cd = pfc.fee_type_cd and t.config_id = pfc.config_id and
+ pfc.status_cd = '0'
+ left join t_dict td1 on pfc.fee_type_cd = td1.status_cd and td1.table_columns = 'fee_type_cd' and td1.table_name
+ = 'pay_fee_config'
left join t_dict td2 on t.state = td2.status_cd and td2.table_name = 'pay_fee' and td2.table_columns = 'state'
- left join t_dict td3 on t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns = 'fee_flag'
+ left join t_dict td3 on t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns =
+ 'fee_flag'
left join pay_fee_attrs pfa on t.fee_id = pfa.fee_id and pfa.status_cd='0'
where pfa.spec_cd = #{specCd}
and pfa.value = #{value}
@@ -726,5 +781,112 @@
</select>
+ <!-- 鎵归噺鎻掑叆璐圭敤 -->
+ <insert id="insertFees" parameterType="Map">
+ insert into pay_fee (amount,status_cd,income_obj_id,fee_type_cd,start_time,end_time,community_id,b_id,fee_id,
+ user_id,payer_obj_id,fee_flag,state,config_id,payer_obj_type,batch_id)
+ VALUES
+ <foreach collection="payFeePos" item="item" separator=",">
+ (#{item.amount},'0',#{item.incomeObjId},#{item.feeTypeCd},#{item.startTime},#{item.endTime},#{item.communityId},
+ '-1',#{item.feeId},#{item.userId},#{item.payerObjId},#{item.feeFlag},#{item.state},#{item.configId},#{item.payerObjType},#{item.batchId})
+ </foreach>
+ </insert>
+
+ <select id="computeBillOweFeeCount" parameterType="Map" resultType="Map">
+ select count(1) count
+ from pay_fee pf
+ INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type in ('001','002','003') and
+ pfc.status_cd = '0' and pf.community_id = pfc.community_id
+ inner join bill_owe_fee bof on pf.fee_id = bof.fee_id and bof.community_id = pf.community_id and bof.state
+ ='1000' and bof.amount_owed > 0
+ inner join bill b on bof.bill_id = b.bill_id and b.community_id = bof.community_id and b.cur_bill = 'T'
+ where pf.status_cd = '0'
+ and pf.state = '2008001'
+ and pf.community_id = #{communityId}
+ <if test="payerObjId !=null and payerObjId != ''">
+ and pf.payer_obj_id= #{payerObjId}
+ </if>
+ <if test="payerObjType !=null and payerObjType != ''">
+ and pf.payer_obj_type = #{payerObjType}
+ </if>
+ </select>
+
+ <select id="computeBillOweFee" parameterType="Map" resultType="Map">
+ select pfc.fee_name feeName,pf.fee_id feeId,pf.end_time endTime,bof.amount_owed amountOwed,bof.payer_obj_name
+ roomName,bof.owner_name ownerName,bof.owner_tel ownerTel,pf.payer_obj_id payerObjId,pf.payer_obj_type
+ payerObjType,
+ pf.community_id communityId
+ from pay_fee pf
+ INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type in ('001','002','003') and
+ pfc.status_cd = '0' and pf.community_id = pfc.community_id
+ inner join bill_owe_fee bof on pf.fee_id = bof.fee_id and bof.community_id = pf.community_id and bof.state
+ ='1000' and bof.amount_owed > 0
+ inner join bill b on bof.bill_id = b.bill_id and b.community_id = bof.community_id and b.cur_bill = 'T'
+ where pf.status_cd = '0'
+ and pf.state = '2008001'
+ and pf.community_id = #{communityId}
+ <if test="payerObjId !=null and payerObjId != ''">
+ and pf.payer_obj_id= #{payerObjId}
+ </if>
+ <if test="payerObjType !=null and payerObjType != ''">
+ and pf.payer_obj_type = #{payerObjType}
+ </if>
+ <if test="page != -1 and page != null ">
+ limit #{page}, #{row}
+ </if>
+ </select>
+
+
+ <select id="computeEveryOweFeeCount" parameterType="Map" resultType="Map">
+ select count(1) count
+ from pay_fee pf
+ INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type = '004' and pfc.status_cd = '0'
+ and pf.community_id = pfc.community_id
+ where pf.end_time < NOW()
+ and pf.status_cd = '0'
+ and pf.state = '2008001'
+ and pf.community_id = #{communityId}
+ <if test="payerObjId !=null and payerObjId != ''">
+ and pf.payer_obj_id= #{payerObjId}
+ </if>
+ <if test="payerObjType !=null and payerObjType != ''">
+ and pf.payer_obj_type = #{payerObjType}
+ </if>
+ </select>
+
+ <select id="computeEveryOweFee" parameterType="Map" resultType="Map">
+ select pfc.fee_name feeName,pf.fee_id feeId,pf.end_time endTime,pf.payer_obj_id payerObjId,pf.payer_obj_type
+ payerObjType,
+ pf.community_id communityId,pfc.computing_formula computingFormula,pfc.computing_formula_text
+ computingFormulaText,
+ pfc.square_price
+ squarePrice,pfc.additional_amount additionalAmount
+ from pay_fee pf
+ INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type = '004' and pfc.status_cd = '0'
+ and pf.community_id = pfc.community_id
+ where pf.end_time < NOW()
+ and pf.status_cd = '0'
+ and pf.state = '2008001'
+ and pf.community_id = #{communityId}
+ <if test="payerObjId !=null and payerObjId != ''">
+ and pf.payer_obj_id= #{payerObjId}
+ </if>
+ <if test="payerObjType !=null and payerObjType != ''">
+ and pf.payer_obj_type = #{payerObjType}
+ </if>
+ <if test="page != -1 and page != null ">
+ limit #{page}, #{row}
+ </if>
+ </select>
+
+
+ <!-- 鏍规嵁鎵规鍒犻櫎璐圭敤 add by wuxw 2018-07-03 -->
+ <update id="deleteFeesByBatch" parameterType="Map">
+ update pay_fee t set t.status_cd = '1'
+ where 1=1
+ and t.batch_id= #{batchId}
+ and t.community_id= #{communityId}
+
+ </update>
</mapper>
--
Gitblit v1.8.0