apzl_leasing/WebContent/WEB-INF/etc/sql/insertIntoCashFlow.xml
2021-08-20 10:12:25 +08:00

91 lines
6.1 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<table-root
xmlns="http://www.tracywindy.org/table"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.tracywindy.org/table http://www.tracywindy.org/table/table-1.0.xsd">
<table>
<data>
<MYSQL>
<table_sql>
<![CDATA[
INSERT INTO LC_CASH_FLOW (id, project_id, project_plan_number, contract_id, contract_plan_number, payment_number,
plan_date, fund_in, fund_in_details, fund_out, fund_out_details, net_flow)
select replace(uuid(), '-', '') id,
max(t.project_id),
max(t.project_plan_number),
max(t.contract_id),
max(t.contract_plan_number),
max(t.payment_number),
t.plan_date,
sum(t.flowin) fundin,
ifnull(group_concat(if(t.flowindetail = '', null, t.flowindetail)), '-') fundindetails,
sum(t.flowout) fundout,
ifnull(group_concat(if(t.flowoutdetail = '', null, t.flowoutdetail)), '-') fundoutdetails,
sum(t.cleanfow) netflow
from (
select cfrp.project_id,
cfrp.project_plan_number,
cfrp.contract_id,
cfrp.contract_plan_number,
cfrp.payment_number,
cfrp.plan_date,
ifnull(lpp.profit, 0) flowin,
concat('第', cfrp.plan_list, '期分润金额:', format(lpp.profit, 2)) flowindetail,
0 flowout,
'' flowoutdetail,
ifnull(lpp.profit, 0) - 0 cleanfow
from lc_rent_plan cfrp
left join lc_profit_plan lpp on lpp.rent_plan_id = cfrp.ID
where cfrp.CONTRACT_ID = :contractId
union all
select fundplan.project_id,
fundplan.project_plan_number,
fundplan.contract_id,
fundplan.contract_plan_number,
fundplan.payment_number,
fundplan.plan_date,
if(fundplan.pay_type = 'pay_type_in', fundplan.plan_money, 0) flowin,
if(fundplan.pay_type = 'pay_type_in', concat(tdd.itemname, ':', fundplan.plan_money), '') flowindetail,
if(fundplan.pay_type = 'pay_type_out', fundplan.plan_money, 0) flowout,
if(fundplan.pay_type = 'pay_type_out', concat(tdd.itemname, ':', fundplan.plan_money),'') flowoutdetail,
if(fundplan.pay_type = 'pay_type_in', fundplan.plan_money, -fundplan.plan_money) cleanfow
from lc_fund_plan fundplan
left join code_library tdd on fundplan.fee_type = tdd.itemno and tdd.codeno = 'FeeType'
where fundplan.CONTRACT_ID = :contractId
and fundplan.fee_type in
('feetype2', 'feetype1', 'feetype10', 'feetype16', 'feetype17', 'feetype33', 'feetype24')
union all
select lcc.PROJECT_ID,
lcc.PROJECT_PLAN_NUMBER,
lcc.CONTRACT_ID,
lcc.CONTRACT_PLAN_NUMBER,
lcc.PAYMENT_NUMBER,
DATE_FORMAT(substr(LOAN_DATE, 1, 8), '%Y/%m/%d') as plan_date,
ifnull(frl.TRANS_AMT,0) as flowin,
concat('邮储回款金额:', frl.TRANS_AMT) as flowindetail,
0 as flowout,
'' as flowoutdetail,
ifnull(frl.TRANS_AMT,0) as cleanfow
from fc_request_loan frl
left join fc_request fr on frl.FC_REQUEST_ID = fr.ID and frl.LOAN_NO = fr.FC_LOAN_ID
left join lc_calc_condition lcc on fr.CONTRACT_ID = lcc.CONTRACT_ID
where fr.CONTRACT_ID = :contractId
appendInfo
) t
group by t.plan_date;
]]>
</table_sql>
</MYSQL>
<ORACLE>
<table_sql>
<![CDATA[
]]>
</table_sql>
</ORACLE>
<dataSource>dataSource</dataSource>
<show_sql>false</show_sql>
</data>
</table>
</table-root>