Browse Source

修改

master
dimengzhe 2 months ago
parent
commit
ef638192ef
  1. 149
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduebank/LoanOverdueBankMapper.xml

149
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoverduebank/LoanOverdueBankMapper.xml

@ -43,17 +43,17 @@
<select id="selectPageVo" resultType="com.yxt.anrui.riskcenter.api.loanoverduebank.LoanOverdueBankVo"> <select id="selectPageVo" resultType="com.yxt.anrui.riskcenter.api.loanoverduebank.LoanOverdueBankVo">
select lob.sid, select lob.sid,
lob.useOrgName, lob.useOrgName,
lob.createDept, lob.createDept,
DATE_FORMAT(lob.createTime, '%Y-%m-%d') as createTime, DATE_FORMAT(lob.createTime, '%Y-%m-%d') as createTime,
lob.closeDate, lob.closeDate,
lob.stopDate, lob.stopDate,
lob.remarks, lob.remarks,
lob.createBySid, lob.createBySid,
if(length(lob.nodeState) > 0, lob.nodeState, '待提交') as nodeState, if(length(lob.nodeState) > 0, lob.nodeState, '待提交') as nodeState,
lob.procDefId, lob.procDefId,
lob.procInstId, lob.procInstId,
lob.createByName lob.createByName
from loan_overdue_bank lob from loan_overdue_bank lob
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}
@ -62,70 +62,75 @@
<select id="detailsList" resultType="com.yxt.anrui.riskcenter.api.loanoverduebankdetails.LoanOverdueBankDetailsDto"> <select id="detailsList" resultType="com.yxt.anrui.riskcenter.api.loanoverduebankdetails.LoanOverdueBankDetailsDto">
SELECT SELECT
<!--贷款合同编号--> a1.loanContractNo,
a1.`loanContractNo`, a1.borrowerName AS loanName,
<!--贷款人--> a1.borrowerSid AS loanSid,
a1.borrowerName loanName, a1.bankName,
a1.borrowerSid loanSid, a1.bankContractNo,
<!--资方--> COUNT(a1.sid) AS period, -- 逾期期数
a1.`bankName`,
<!--资方合同编号-->
a1.`bankContractNo`,
<!--逾期期数-->
COUNT(a1.sid) AS period,
<!--逾期金额-->
( (
SUM(a1.yq_total) + IFNULL( a1.yq_total
(SELECT SUM(lbpv.`bankBeInter`) + IFNULL(lbpv_total.bankBeInter, 0)
FROM loan_be_padsincere_veh lbpv + IFNULL(fin_total.overdueMoney, 0)
WHERE lbpv.saleVehSid = a1.busVinSid), ) AS overdueMoney,
0
) + IFNULL(
(select ifnull(SUM(a.reveivableMoney), 0) - IFNULL(sum(a.m), 0)
FROM (
select fjj.reveivableMoney,
(select IFNULL(SUM(s.subscriptionMoney), 0)
FROM anrui_fin.fin_selected_receivables_detailed AS s
WHERE s.auditState = '3'
AND s.receivablesSid = fjj.sid) as m
from anrui_fin.fin_uncollected_receivables_detailed_jr fjj
where fjj.busSid in (SELECT lrpd.sid
FROM loan_repayment_plan_details lrpd
WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') &lt; #{stopDate}
and lrpd.busVinSid = a1.busVinSid)
and fjj.payCostTitleKey = '006') a),
0
)
) AS overdueMoney,
a1.customerSid, a1.customerSid,
a1.customer customerName a1.customer AS customerName
FROM (SELECT lrpd.sid, FROM (
-- ✅ 计算逾期金额 yq_total
lrpd.`loanContractNo`, SELECT
lrpd.borrowerName, lrpd.sid,
lrpd.loanContractNo,
lrpd.`bankName`, lrpd.borrowerName,
lrpd.`bankContractNo`, lrpd.bankName,
lrpd.dueMoney, lrpd.bankContractNo,
( lrpd.dueMoney,
lrpd.`dueMoney` - SUM(IFNULL(lrh.actualMoney, 0)) (lrpd.dueMoney - COALESCE(SUM(lrh.actualMoney), 0)) AS yq_total,
) AS yq_total, lrpd.customer,
lrpd.customer, lrpd.customerSid,
lrpd.customerSid, lrpd.borrowerSid,
lrpd.borrowerSid, lrpd.busVinSid
lrpd.busVinSid FROM loan_repayment_plan_details lrpd
FROM `loan_repayment_plan_details` lrpd LEFT JOIN loan_repayment_history lrh
LEFT JOIN `loan_repayment_history` lrh ON lrh.planDetailSid = lrpd.sid
ON lrh.planDetailSid = lrpd.`sid` WHERE
LEFT JOIN anrui_buscenter.`bus_sales_order_vehicle` bv lrpd.dueDate
ON lrpd.busVinSid = bv.sid &lt;
WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') &lt; #{stopDate} #{stopDate} -- ✅ 避免 DATE_FORMAT 影响索引
and lrpd.useOrgSid = #{useOrgSid} AND lrpd.useOrgSid = #{useOrgSid}
GROUP BY lrpd.`sid` GROUP BY lrpd.sid, lrpd.loanContractNo, lrpd.borrowerName, lrpd.bankName,
HAVING (yq_total > 0)) a1 lrpd.bankContractNo, lrpd.dueMoney, lrpd.customer,
lrpd.customerSid, lrpd.borrowerSid, lrpd.busVinSid
HAVING yq_total > 0
) a1
LEFT JOIN (
-- ✅ 计算 bankBeInter 总金额
SELECT saleVehSid, SUM(bankBeInter) AS bankBeInter
FROM loan_be_padsincere_veh
GROUP BY saleVehSid
) lbpv_total ON lbpv_total.saleVehSid = a1.busVinSid
LEFT JOIN (
-- ✅ 计算 overdueMoney
SELECT
lrpd.busVinSid,
IFNULL(SUM(fjj.reveivableMoney), 0) - IFNULL(SUM(fin_sub.m), 0) AS overdueMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr fjj
JOIN loan_repayment_plan_details lrpd
ON fjj.busSid = lrpd.sid
AND lrpd.dueDate
&lt;
#{stopDate} -- ✅ 避免 DATE_FORMAT
LEFT JOIN (
SELECT receivablesSid, SUM(subscriptionMoney) AS m
FROM anrui_fin.fin_selected_receivables_detailed
WHERE auditState = '3'
GROUP BY receivablesSid
) fin_sub ON fin_sub.receivablesSid = fjj.sid
WHERE fjj.payCostTitleKey = '006'
GROUP BY lrpd.busVinSid
) fin_total ON fin_total.busVinSid = a1.busVinSid
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment} -- ✅ 保留动态查询条件
</where> </where>;
</select> </select>
<select id="getAppDetails" resultType="com.yxt.anrui.riskcenter.api.loanoverduebank.LoanOverdueBankAppDetailsVo"> <select id="getAppDetails" resultType="com.yxt.anrui.riskcenter.api.loanoverduebank.LoanOverdueBankAppDetailsVo">

Loading…
Cancel
Save