Browse Source

金融未放款报表sql修改

master
dimengzhe 1 year ago
parent
commit
131fbabc02
  1. 536
      doc/databases/统计报表更新.sql

536
doc/databases/统计报表更新.sql

@ -1574,7 +1574,541 @@ BEGIN
-- 金融未放款 统计规则调整:包含担保和非担保。 金融未放款(已开票):截止当日贷款业务已开票的,融资放款应收未认款金额+未生成融资放款的总贷款金额。
-- 金融未放款(已终审):截止当日贷款业务的已开票且信审终审已通过,统计融资放款未认款金额。
-- 台数:
update daily_report r inner join (
SELECT sum(b.scount) AS scount,
b.useOrgSid,
b.NAME,
b.contractNo,
b.vehMConfigSid,
b.vehModelSid
FROM (
SELECT count(a.id) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
SUM(s.reveivableMoney),
SUM(s.subscriptionMoney),
bo.contractNo
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
left join anrui_fin.fin_vehicle_invoice ffi
on ffi.vehicleSid = bbv.sid and ffi.contractNo = bo.contractNo
LEFT JOIN (
SELECT fd.reveivableMoney,
fd.busVinSid,
IFNULL(SUM(fs.subscriptionMoney), 0) AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
LEFT JOIN anrui_fin.fin_selected_receivables_detailed fs
ON fs.receivablesSid = fd.sid
WHERE fd.kxState = '01'
AND fs.auditState = 3
AND fd.receivablesName = '融资放款'
GROUP BY fd.sid
UNION ALL
SELECT fd.reveivableMoney,
fd.busVinSid,
0 AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
WHERE fd.kxState = '01'
AND fd.receivablesName = '融资放款'
AND fd.sid NOT IN (SELECT fs.`receivablesSid`
FROM anrui_fin.fin_selected_receivables_detailed fs
WHERE fs.`auditState` = 3
AND fs.`receivablesName` = '融资放款')
GROUP BY fd.sid
) s ON s.busVinSid = bv.sid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
WHERE bo.payTypeKey = 2
AND ffi.billingStateKey = '002'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING SUM(s.reveivableMoney) > SUM(s.subscriptionMoney)) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
UNION ALL
SELECT count(a.id) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
bo.contractNo,
IFNULL(sss.money, '0') AS money
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
LEFT JOIN (SELECT furd.busVinSid
FROM anrui_fin.fin_uncollected_receivables_detailed furd
WHERE furd.receivablesName = '融资放款'
GROUP BY furd.busVinSid) ss ON ss.busVinSid = bv.sid
LEFT JOIN (
SELECT (ls.loanTotal - lo.loanDownPay) AS money,
ls.salesOrderSid
FROM anrui_riskcenter.loan_solutions ls
LEFT JOIN anrui_riskcenter.loan_solutions_otherpolicy lo
ON lo.solutionsSid = ls.sid
) sss ON sss.salesOrderSid = bv.salesOrderSid
left join anrui_fin.fin_vehicle_invoice ffi
on ffi.vehicleSid = bbv.sid and ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND ss.busVinSid IS NULL
AND ffi.billingStateKey = '002'
AND bo.nodeState = '已办结'
AND bo.contractNo NOT LIKE '%2023%'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING money > 0
) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
) b
GROUP BY b.useOrgSid,
b.vehModelSid,
b.vehMConfigSid) as s on
r.useOrgSid = s.useOrgSid AND r.vehModelSid = s.vehModelSid AND r.vehMConfigSid = s.vehMConfigSid
SET r.`loan_not_count`=s.scount
WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 金融未放款已开票金额
update daily_report r inner join (
SELECT SUM(b.scount) AS scount,
b.useOrgSid,
b.NAME,
b.contractNo,
b.vehMConfigSid,
b.vehModelSid
FROM (
SELECT SUM(a.scount) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
SUM(s.reveivableMoney),
SUM(s.subscriptionMoney),
bo.contractNo,
(
SUM(s.reveivableMoney) - SUM(s.subscriptionMoney)) AS scount
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN (
SELECT fd.reveivableMoney,
fd.busVinSid,
IFNULL(SUM(fs.subscriptionMoney), 0) AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
LEFT JOIN anrui_fin.fin_selected_receivables_detailed fs
ON fs.receivablesSid = fd.sid
WHERE fd.kxState = '01'
AND fs.auditState = 3
AND fd.receivablesName = '融资放款'
GROUP BY fd.sid
UNION ALL
SELECT fd.reveivableMoney,
fd.busVinSid,
0 AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
WHERE fd.kxState = '01'
AND fd.receivablesName = '融资放款'
AND fd.sid NOT IN (SELECT fs.`receivablesSid`
FROM anrui_fin.fin_selected_receivables_detailed fs
WHERE fs.`auditState` = 3
AND fs.`receivablesName` = '融资放款')
GROUP BY fd.sid
) s ON s.busVinSid = bv.sid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
left join anrui_fin.fin_vehicle_invoice ffi
on ffi.vehicleSid = bbv.sid and ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND ffi.billingStateKey = '002'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING SUM(s.reveivableMoney) > SUM(s.subscriptionMoney)) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
UNION ALL
SELECT sum(a.money) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
bo.contractNo,
IFNULL(sss.money, '0') AS money
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
LEFT JOIN (SELECT furd.busVinSid
FROM anrui_fin.fin_uncollected_receivables_detailed furd
WHERE furd.receivablesName = '融资放款'
GROUP BY furd.busVinSid) ss ON ss.busVinSid = bv.sid
LEFT JOIN (
SELECT (ls.loanTotal - lo.loanDownPay) AS money,
ls.salesOrderSid
FROM anrui_riskcenter.loan_solutions ls
LEFT JOIN anrui_riskcenter.loan_solutions_otherpolicy lo
ON lo.solutionsSid = ls.sid
) sss ON sss.salesOrderSid = bv.salesOrderSid
left join anrui_fin.fin_vehicle_invoice ffi
on ffi.vehicleSid = bbv.sid and ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND ss.busVinSid IS NULL
AND ffi.billingStateKey = '002'
AND bo.nodeState = '已办结'
AND bo.contractNo NOT LIKE '%2023%'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING money > 0
) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
) b
GROUP BY b.useOrgSid,
b.vehModelSid,
b.vehMConfigSid) as s on
r.useOrgSid = s.useOrgSid AND r.vehModelSid = s.vehModelSid AND r.vehMConfigSid = s.vehMConfigSid
SET r.`loan_not_amount`=ROUND(s.scount / 10000, 2)
WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 金融未放款(已终审):截止当日贷款业务的已开票且信审终审已通过,统计融资放款未认款金额。
-- 已终审台数
update daily_report r inner join (
SELECT sum(b.scount) AS scount,
b.useOrgSid,
b.NAME,
b.contractNo,
b.vehMConfigSid,
b.vehModelSid
FROM (
SELECT count(a.id) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
SUM(s.reveivableMoney),
SUM(s.subscriptionMoney),
bo.contractNo
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN (
SELECT fd.reveivableMoney,
fd.busVinSid,
IFNULL(SUM(fs.subscriptionMoney), 0) AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
LEFT JOIN anrui_fin.fin_selected_receivables_detailed fs
ON fs.receivablesSid = fd.sid
WHERE fd.kxState = '01'
AND fs.auditState = 3
AND fd.receivablesName = '融资放款'
GROUP BY fd.sid
UNION ALL
SELECT fd.reveivableMoney,
fd.busVinSid,
0 AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
WHERE fd.kxState = '01'
AND fd.receivablesName = '融资放款'
AND fd.sid NOT IN (SELECT fs.`receivablesSid`
FROM anrui_fin.fin_selected_receivables_detailed fs
WHERE fs.`auditState` = 3
AND fs.`receivablesName` = '融资放款')
GROUP BY fd.sid
) s ON s.busVinSid = bv.sid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
LEFT JOIN anrui_riskcenter.loan_capital_credit_result lr
ON lr.loanContractSid = bv.loanContractSid
LEFT JOIN anrui_fin.fin_vehicle_invoice ffi ON ffi.vehicleSid = bbv.sid
AND ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND lr.capCarefulResult = '通过'
AND ffi.billingStateKey = '002'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING SUM(s.reveivableMoney) > SUM(s.subscriptionMoney)) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
UNION ALL
SELECT count(a.id) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
SUM(s.reveivableMoney),
SUM(s.subscriptionMoney),
bo.contractNo
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN (
SELECT fd.reveivableMoney,
fd.busVinSid,
IFNULL(SUM(fs.subscriptionMoney), 0) AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
LEFT JOIN anrui_fin.fin_selected_receivables_detailed fs
ON fs.receivablesSid = fd.sid
WHERE fd.kxState = '01'
AND fs.auditState = 3
AND fd.receivablesName = '融资放款'
GROUP BY fd.sid
UNION ALL
SELECT fd.reveivableMoney,
fd.busVinSid,
0 AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
WHERE fd.kxState = '01'
AND fd.receivablesName = '融资放款'
AND fd.sid NOT IN (SELECT fs.`receivablesSid`
FROM anrui_fin.fin_selected_receivables_detailed fs
WHERE fs.`auditState` = 3
AND fs.`receivablesName` = '融资放款')
GROUP BY fd.sid
) s ON s.busVinSid = bv.sid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
LEFT JOIN anrui_riskcenter.loan_noguarantee_credit_review lr
ON lr.borrowerSid = bv.borrowerSid
LEFT JOIN anrui_fin.fin_vehicle_invoice ffi ON ffi.vehicleSid = bbv.sid
AND ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND lr.creditReview = '通过'
AND ffi.billingStateKey = '002'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING SUM(s.reveivableMoney) > SUM(s.subscriptionMoney)) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
) b
GROUP BY b.useOrgSid,
b.vehModelSid,
b.vehMConfigSid) as s on
r.useOrgSid = s.useOrgSid AND r.vehModelSid = s.vehModelSid AND r.vehMConfigSid = s.vehMConfigSid
SET r.`loan_not_counts`=s.scount
WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 已终审已开票金额
update daily_report r inner join (
SELECT SUM(b.scount) AS scount,
b.useOrgSid,
b.NAME,
b.contractNo,
b.vehMConfigSid,
b.vehModelSid
FROM (
SELECT SUM(a.scount) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
SUM(s.reveivableMoney),
SUM(s.subscriptionMoney),
bo.contractNo,
(
SUM(s.reveivableMoney) - SUM(s.subscriptionMoney)) AS scount
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN (
SELECT fd.reveivableMoney,
fd.busVinSid,
IFNULL(SUM(fs.subscriptionMoney), 0) AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
LEFT JOIN anrui_fin.fin_selected_receivables_detailed fs
ON fs.receivablesSid = fd.sid
WHERE fd.kxState = '01'
AND fs.auditState = 3
AND fd.receivablesName = '融资放款'
GROUP BY fd.sid
UNION ALL
SELECT fd.reveivableMoney,
fd.busVinSid,
0 AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
WHERE fd.kxState = '01'
AND fd.receivablesName = '融资放款'
AND fd.sid NOT IN (SELECT fs.`receivablesSid`
FROM anrui_fin.fin_selected_receivables_detailed fs
WHERE fs.`auditState` = 3
AND fs.`receivablesName` = '融资放款')
GROUP BY fd.sid
) s ON s.busVinSid = bv.sid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
LEFT JOIN anrui_riskcenter.loan_capital_credit_result lr
ON lr.loanContractSid = bv.loanContractSid
LEFT JOIN anrui_fin.fin_vehicle_invoice ffi ON ffi.vehicleSid = bbv.sid
AND ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND lr.capCarefulResult = '通过'
AND ffi.billingStateKey = '002'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING SUM(s.reveivableMoney) > SUM(s.subscriptionMoney)) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
UNION ALL
SELECT SUM(a.scount) AS scount,
a.useOrgSid,
a.NAME,
a.contractNo,
a.vehMConfigSid,
a.vehModelSid
FROM (
SELECT bv.id,
bo.useOrgSid,
bm.modelConfigSid AS vehMConfigSid,
bm.modelSid AS vehModelSid,
so.NAME,
SUM(s.reveivableMoney),
SUM(s.subscriptionMoney),
bo.contractNo,
(
SUM(s.reveivableMoney) - SUM(s.subscriptionMoney)) AS scount
FROM anrui_buscenter.bus_sales_order_vehicle bv
LEFT JOIN anrui_buscenter.bus_sales_order bo ON bo.sid = bv.salesOrderSid
LEFT JOIN anrui_base.base_vehicle bbv ON bbv.sid = bv.linkSid
LEFT JOIN anrui_buscenter.bus_sales_order_model bm
ON bm.salesOrderSid = bv.salesOrderSid
LEFT JOIN (
SELECT fd.reveivableMoney,
fd.busVinSid,
IFNULL(SUM(fs.subscriptionMoney), 0) AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
LEFT JOIN anrui_fin.fin_selected_receivables_detailed fs
ON fs.receivablesSid = fd.sid
WHERE fd.kxState = '01'
AND fs.auditState = 3
AND fd.receivablesName = '融资放款'
GROUP BY fd.sid
UNION ALL
SELECT fd.reveivableMoney,
fd.busVinSid,
0 AS subscriptionMoney
FROM anrui_fin.fin_uncollected_receivables_detailed fd
WHERE fd.kxState = '01'
AND fd.receivablesName = '融资放款'
AND fd.sid NOT IN (SELECT fs.`receivablesSid`
FROM anrui_fin.fin_selected_receivables_detailed fs
WHERE fs.`auditState` = 3
AND fs.`receivablesName` = '融资放款')
GROUP BY fd.sid
) s ON s.busVinSid = bv.sid
LEFT JOIN anrui_portal.sys_organization so ON so.sid = bo.useOrgSid
LEFT JOIN anrui_riskcenter.loan_noguarantee_credit_review lr
ON lr.borrowerSid = bv.borrowerSid
LEFT JOIN anrui_fin.fin_vehicle_invoice ffi ON ffi.vehicleSid = bbv.sid
AND ffi.contractNo = bo.contractNo
WHERE bo.payTypeKey = 2
AND lr.creditReview = '通过'
AND ffi.billingStateKey = '002'
GROUP BY bv.sid,
bo.useOrgSid,
bm.modelSid,
bm.modelConfigSid
HAVING SUM(s.reveivableMoney) > SUM(s.subscriptionMoney)) a
GROUP BY a.contractNo,
a.useOrgSid,
a.vehMConfigSid,
a.vehModelSid
) b
GROUP BY b.useOrgSid,
b.vehModelSid,
b.vehMConfigSid) as s on
r.useOrgSid = s.useOrgSid AND r.vehModelSid = s.vehModelSid AND r.vehMConfigSid = s.vehMConfigSid
SET r.`loan_not_amounts`=ROUND(s.scount / 10000, 2)
WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
END
Loading…
Cancel
Save