月度资金流入表取数逻辑优化(马亮)

This commit is contained in:
tangfutang 2020-09-30 11:27:34 +08:00
parent bd0a9ff529
commit e2dce5c5d2

View File

@ -47,13 +47,21 @@ public class ReportRentMonth implements Job{
String deleteSql="delete from report_rent_month where report_month='"+month+"'";
String insertSql="INSERT INTO report_rent_month ( report_month, report_date, rent, corpus, " +
"interest, all_remain_corpus, fact_rent, fact_corpus, fact_interest, fact_penalty, contract_count ) " +
"SELECT '"+month+"' as report_month,'"+today+"' as report_date," +
"sum(rrp.rent),sum( rrp.corpus ),sum( rrp.interest )," +
"sum( rrp.all_remain_corpus ),sum( rrp.fact_rent ),sum( rrp.fact_corpus )," +
"sum( rrp.fact_interest ),sum( rrp.fact_penalty ),count( rrp.contract_number ) " +
"SELECT '"+month+"' AS report_month,'"+today+"' AS report_date,a1.rent,a1.corpus,a1.interest," +
"a2.all_remain_corpus,a3.fact_rent,a3.fact_corpus,a3.fact_interest,a3.fact_penalty,a2.contract_count " +
"FROM (SELECT 'month' AS report_month,sum( rrp.rent ) rent,sum( rrp.corpus ) corpus,sum( rrp.interest ) interest " +
"FROM report_rent_plan rrp,lb_contract_info lci " +
"WHERE rrp.contract_number = lci.CONTRACT_NUMBER and lci.CONTRACT_STATUS>=31 and lci.CONTRACT_STATUS<100 " +
"and rrp.plan_date like '%"+month+"%'";
"WHERE rrp.contract_number = lci.CONTRACT_NUMBER AND lci.CONTRACT_STATUS >= 31 AND lci.CONTRACT_STATUS < 100 " +
"AND rrp.plan_date LIKE '%"+month+"%' ) a1," +
"(SELECT 'month' AS report_month,sum( vcorpusover ) all_remain_corpus,count( rrp.contract_number ) contract_count " +
"FROM contract_statis_car rrp,lb_contract_info lci " +
"WHERE rrp.contract_number = lci.CONTRACT_NUMBER " +
"AND lci.businesstype = '1' AND lci.CONTRACT_STATUS >= 31 AND lci.CONTRACT_STATUS < 100 ) a2," +
"(SELECT 'month' AS report_month,sum( lri.rent ) fact_rent,sum( lri.corpus ) fact_corpus," +
"sum( lri.interest ) fact_interest,sum( lri.penalty ) fact_penalty " +
"FROM LC_RENT_INCOME lri LEFT JOIN LB_CONTRACT_INFO lci ON lri.contract_id = lci.id " +
"WHERE lci.businesstype = '1' AND lri.hire_date LIKE '%"+month+"%' ) a3 " +
"WHERE a1.report_month = a2.report_month AND a1.report_month = a3.report_month";
Sqlca.executeSQL(new SqlObject(deleteSql));
Sqlca.executeSQL(new SqlObject(insertSql));
Sqlca.commit();