diff --git a/src_tenwa/com/tenwa/lease/app/quartzmession/DynamicPoolDetailRunBatch.java b/src_tenwa/com/tenwa/lease/app/quartzmession/DynamicPoolDetailRunBatch.java new file mode 100644 index 000000000..a51c15baf --- /dev/null +++ b/src_tenwa/com/tenwa/lease/app/quartzmession/DynamicPoolDetailRunBatch.java @@ -0,0 +1,54 @@ +package com.tenwa.lease.app.quartzmession; + +import java.text.SimpleDateFormat; +import java.util.Date; +import org.apache.log4j.LogManager; +import org.apache.log4j.Logger; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.awe.util.Transaction; + +/** + * 1:动态池数明细表跑批 + * @author xiezhiwen + */ +public class DynamicPoolDetailRunBatch implements Job{ + private static final Logger logger = LogManager.getLogger(DynamicPoolDetailRunBatch.class);// 引入logger日志 + + public void execute(JobExecutionContext arg0) throws JobExecutionException { + Transaction Sqlca=null; + try{ + Sqlca = Transaction.createTransaction("als"); + String create_time = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss").format(new Date()); + // 删除当月跑批记录 + String deleteSql="DELETE FROM LV_DYNAMIC_POOL_DETAIL WHERE DATE_FORMAT(CREATE_TIME,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m')"; + Sqlca.executeSQL(deleteSql); + // 将当月跑批数据插入静态池表 + String insertSql="INSERT INTO LV_DYNAMIC_POOL_DETAIL(SELECT REPLACE(UUID(), '-', '') AS ID,DATE_FORMAT(NOW(),'%Y/%m/%d') AS F1,SUM(IFNULL(LRP1.F2,0)) AS F2,SUM(IFNULL(LRP2.F3,0)) AS F3,SUM(IFNULL(LRP1.F4,0)) AS F4,SUM(IFNULL(LRP2.F5,0)) AS F5,SUM(IFNULL(LRP3.F6,0)) AS F6,'0.00' AS F7,SUM(IFNULL(LFRA.F8,0)) AS F8,SUM(IFNULL(VOC1.F9,0)) AS F9,SUM(IFNULL(VOC2.F10,0)) AS F10,SUM(IFNULL(VOC3.F11,0)) AS F11,SUM(IFNULL(VOC4.F12,0)) AS F12,SUM(IFNULL(VOC5.F13,0)) AS F13,SUM(IFNULL(VOC6.F14,0)) AS F14,SUM(IFNULL(LRP3.F15,0)) AS F15,SUM(IFNULL(VOC6.F16,0)) AS F16,SUM(IFNULL(LFRA.F17,0)) AS F17,'0.00' AS F18,'0.00' AS F19,'0.00' AS F20,'0.00' AS F21, '0.00' AS F22,SUM(IFNULL(LRP4.F23,0.00)) AS F23,DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS CREATE_TIME FROM (SELECT CONTRACT_ID FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype10' AND EBANK_STATUS = '05' GROUP BY CONTRACT_ID)LFI LEFT JOIN (SELECT LFI.CONTRACT_ID,LRP.F2,COUNT(LRP.CONTRACT_ID) AS F4 FROM (SELECT CONTRACT_ID FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype10' AND EBANK_STATUS = '05' AND DATE_FORMAT(FACT_DATE,'%Y/%m')DATE_FORMAT(NOW(),'%Y/%m')))) GROUP BY LFI.CONTRACT_ID)LRP1 ON LRP1.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LFI.CONTRACT_ID,IFNULL(LRP.CORPUS,0) AS F3,COUNT(LFI.CONTRACT_ID) AS F5 FROM (SELECT CONTRACT_ID FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype10' AND EBANK_STATUS = '05' AND DATE_FORMAT(FACT_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID)LFI LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID)LRP ON LRP.CONTRACT_ID=LFI.CONTRACT_ID GROUP BY LFI.CONTRACT_ID)LRP2 ON LRP2.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS F6,SUM(INTEREST) AS F15 FROM LC_RENT_PLAN WHERE DATE_FORMAT(PLAN_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID)LRP3 ON LRP3.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS_OVERAGE) AS F8,SUM(IFNULL(HANDLING_CHARGE,0)) AS F17 FROM LC_FUND_RENT_ADJUST WHERE DATE_FORMAT(PAYDAY_ADJUST,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID)LFRA ON LFRA.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS F9 FROM (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST)LRI LEFT JOIN VI_OVERDUE_CONTRACT VOC ON VOC.CONTRACT_ID=LRI.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 1 AND 30 GROUP BY LRI.CONTRACT_ID)VOC1 ON VOC1.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS F10 FROM (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST)LRI LEFT JOIN VI_OVERDUE_CONTRACT VOC ON VOC.CONTRACT_ID=LRI.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 31 AND 60 GROUP BY LRI.CONTRACT_ID)VOC2 ON VOC2.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS F11 FROM (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST)LRI LEFT JOIN VI_OVERDUE_CONTRACT VOC ON VOC.CONTRACT_ID=LRI.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 61 AND 90 GROUP BY LRI.CONTRACT_ID)VOC3 ON VOC3.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS F12 FROM (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST)LRI LEFT JOIN VI_OVERDUE_CONTRACT VOC ON VOC.CONTRACT_ID=LRI.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 91 AND 120 GROUP BY LRI.CONTRACT_ID)VOC4 ON VOC4.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS F13 FROM (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST)LRI LEFT JOIN VI_OVERDUE_CONTRACT VOC ON VOC.CONTRACT_ID=LRI.CONTRACT_ID WHERE VOC.OVERDUE_DAY >120 GROUP BY LRI.CONTRACT_ID)VOC5 ON VOC5.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS F14,SUM(LRI.INTEREST) AS F16 FROM (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS,SUM(INTEREST) AS INTEREST FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST)LRI LEFT JOIN VI_OVERDUE_CONTRACT VOC ON VOC.CONTRACT_ID=LRI.CONTRACT_ID WHERE VOC.CONTRACT_ID IS NOT NULL GROUP BY LRI.CONTRACT_ID)VOC6 ON VOC6.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRP.CONTRACT_ID,SUM(LRP.CORPUS)-SUM(IFNULL(LRI.CORPUS,0)) AS F23 FROM (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS,SUM(IFNULL(PENALTY,0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID)LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID GROUP BY LRP.CONTRACT_ID)LRP4 ON LRP4.CONTRACT_ID=LFI.CONTRACT_ID) "; + int con = Sqlca.executeSQL(insertSql); + Sqlca.commit(); + logger.info("动态池明细数据跑批成功,《《《条数:"+con+"《《《《时间:"+create_time+"《《《"+insertSql); + }catch(Exception e){ + logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池明细数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池明细数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池明细数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + try { + Sqlca.rollback(); + } catch (JBOException e1) { + e1.printStackTrace(); + } + e.printStackTrace(); + }finally { + if(Sqlca!=null) { + try { + Sqlca.commit(); + Sqlca.disConnect(); + } catch (JBOException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src_tenwa/com/tenwa/lease/app/quartzmession/DynamicPoolTotalRunBatch.java b/src_tenwa/com/tenwa/lease/app/quartzmession/DynamicPoolTotalRunBatch.java new file mode 100644 index 000000000..8be4c3367 --- /dev/null +++ b/src_tenwa/com/tenwa/lease/app/quartzmession/DynamicPoolTotalRunBatch.java @@ -0,0 +1,55 @@ +package com.tenwa.lease.app.quartzmession; + +import java.text.SimpleDateFormat; +import java.util.Date; +import org.apache.log4j.LogManager; +import org.apache.log4j.Logger; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.awe.util.Transaction; + + +/** + * 1:动态池数总表跑批 + * @author xiezhiwen + */ +public class DynamicPoolTotalRunBatch implements Job{ + private static final Logger logger = LogManager.getLogger(DynamicPoolTotalRunBatch.class);// 引入logger日志 + + public void execute(JobExecutionContext arg0) throws JobExecutionException { + Transaction Sqlca=null; + try{ + Sqlca = Transaction.createTransaction("als"); + String create_time = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss").format(new Date()); + // 删除当月跑批记录 + String deleteSql="DELETE FROM LV_DYNAMIC_POOL_TOTAL WHERE DATE_FORMAT(CREATE_TIME,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m')"; + Sqlca.executeSQL(deleteSql); + // 将当月跑批数据插入静态池表 + String insertSql="INSERT INTO LV_DYNAMIC_POOL_TOTAL(SELECT REPLACE(UUID(), '-', '') AS ID,DATE_FORMAT(NOW(),'%Y/%m/%d') AS F1,SUM(IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00)) AS F2,SUM(IFNULL(LRP2.ZC_LOAN_SURPLUS_MONEY,0.00)) AS F3,SUM(CASE WHEN VOC1.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F4,SUM(CASE WHEN VOC2.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F5,SUM(CASE WHEN VOC3.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F6,SUM(CASE WHEN VOC4.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F7,SUM(CASE WHEN VOC5.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F8,SUM(CASE WHEN VOC6.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F9,SUM(CASE WHEN VOC7.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F10,DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS CREATE_TIME FROM (SELECT CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype10' AND EBANK_STATUS = '05' GROUP BY CONTRACT_ID) LFI LEFT JOIN (SELECT LRP.CONTRACT_ID,SUM(LRP.CORPUS)-SUM(IFNULL(LRI.CORPUS,0)) AS QB_LOAN_SURPLUS_MONEY FROM (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS,SUM(IFNULL(PENALTY,0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID)LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID GROUP BY LRP.CONTRACT_ID)LRP1 ON LRP1.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRP.CONTRACT_ID,SUM(LRP.CORPUS)-SUM(IFNULL(LRI.CORPUS,0)) AS ZC_LOAN_SURPLUS_MONEY FROM LC_RENT_PLAN LRP LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,PLAN_LIST)LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID AND LRI.PLAN_LIST=LRP.PLAN_LIST WHERE DATE_FORMAT(LRP.PLAN_DATE,'%Y/%m/%d')>=DATE_FORMAT(NOW(),'%Y/%m/%d') AND LRP.CORPUS-IFNULL(LRI.CORPUS,0)<>0 AND NOT EXISTS(SELECT 1 FROM VI_OVERDUE_CONTRACT VOC WHERE VOC.CONTRACT_ID=LRP.CONTRACT_ID)GROUP BY LRP.CONTRACT_ID)LRP2 ON LRP2.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 1 AND 30 GROUP BY CONTRACT_ID)VOC1 ON VOC1.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 31 AND 60 GROUP BY CONTRACT_ID)VOC2 ON VOC2.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 61 AND 90 GROUP BY CONTRACT_ID)VOC3 ON VOC3.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 91 AND 120 GROUP BY CONTRACT_ID)VOC4 ON VOC4.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 121 AND 150 GROUP BY CONTRACT_ID)VOC5 ON VOC5.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 151 AND 180 GROUP BY CONTRACT_ID)VOC6 ON VOC6.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY>180 GROUP BY CONTRACT_ID)VOC7 ON VOC7.CONTRACT_ID=LRP1.CONTRACT_ID ) "; + int con = Sqlca.executeSQL(insertSql); + Sqlca.commit(); + logger.info("动态池汇总数据跑批成功,《《《条数:"+con+"《《《《时间:"+create_time+"《《《"+insertSql); + }catch(Exception e){ + logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池汇总数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池汇总数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池汇总数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + try { + Sqlca.rollback(); + } catch (JBOException e1) { + e1.printStackTrace(); + } + e.printStackTrace(); + }finally { + if(Sqlca!=null) { + try { + Sqlca.commit(); + Sqlca.disConnect(); + } catch (JBOException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src_tenwa/com/tenwa/lease/app/quartzmession/StaticDataRunBatch.java b/src_tenwa/com/tenwa/lease/app/quartzmession/StaticDataRunBatch.java new file mode 100644 index 000000000..6c1772ee5 --- /dev/null +++ b/src_tenwa/com/tenwa/lease/app/quartzmession/StaticDataRunBatch.java @@ -0,0 +1,54 @@ +package com.tenwa.lease.app.quartzmession; + +import java.text.SimpleDateFormat; +import java.util.Date; +import org.apache.log4j.LogManager; +import org.apache.log4j.Logger; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.awe.util.Transaction; + +/** + * 每月跑批静态池数据 + * @author xiezhiwen + */ +public class StaticDataRunBatch implements Job{ + private static final Logger logger = LogManager.getLogger(StaticDataRunBatch.class);// 引入logger日志 + + public void execute(JobExecutionContext arg0) throws JobExecutionException { + Transaction Sqlca=null; + try{ + // Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource()); + Sqlca = Transaction.createTransaction("als"); + String create_time = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss").format(new Date()); + String deleteSql="DELETE FROM LV_STATIC_POOL WHERE DATE_FORMAT(CREATE_TIME,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m')"; + Sqlca.executeSQL(deleteSql); + // 将当月跑批数据插入静态池表 + String insertSql="INSERT INTO LV_STATIC_POOL (SELECT REPLACE(UUID(),'-',''),LFI.FACT_DATE AS F1,B1.REPORT_MONTH AS F2,CASE WHEN LFI.FACT_DATE = DATE_FORMAT(NOW(), '%Y/%m') THEN IFNULL(LFI.NEW_CORPUS, 0.00) ELSE '0.00' END AS F3,CASE WHEN LFI.FACT_DATE = DATE_FORMAT(NOW(), '%Y/%m') THEN IFNULL(LFI.NEW_CORPUS_SUM,0) ELSE '0' END AS F4,IFNULL(LFI.YMWCBJ, 0.00) AS F5,IFNULL(LFI.OVER_CON, 0) AS F6,IFNULL(LFI.ZCDKYE, 0.00) AS F7,IFNULL(LFI.YQ_1_30_MONEY, 0.00) AS F8,IFNULL(LFI.YQ_1_30_SUM, 0) AS F9,IFNULL(LFI.YQ_31_60_MONEY, 0.00) AS F10,IFNULL(LFI.YQ_31_60_SUM, 0) AS F11,IFNULL(LFI.YQ_61_90_MONEY, 0.00) AS F12,IFNULL(LFI.YQ_61_90_SUM, 0) AS F13,IFNULL(LFI.YQ_91_120_MONEY, 0.00) AS F14,IFNULL(LFI.YQ_91_120_SUM, 0) AS F15,IFNULL(LFI.YQ_121_150_MONEY, 0.00) AS F16,IFNULL(LFI.YQ_121_150_SUM, 0) AS F17,IFNULL(LFI.YQ_151_180_MONEY, 0.00) AS F18,IFNULL(LFI.YQ_151_180_SUM, 0) AS F19,IFNULL(LFI.YQ_180_MONEY, 0.00) AS F20,IFNULL(LFI.YQ_180_SUM, 0) AS F21,IFNULL(LFI.YNBJHSK, 0.00) AS F22,IFNULL(LFI.YNBFZCJE, 0.00) AS F23,IFNULL(LFI.YNQBZCJE, 0.00) AS F24,IFNULL(LFI.XNBJCHJE, 0.00) AS F25,'0.00' AS F26,'0.00' AS F27,'0.00' AS F28,IFNULL(LFI.DYHSKZE, 0.00) AS F29,'0.00' AS F30,'"+create_time+"' AS CREATE_TIME FROM (SELECT DATE_FORMAT(NOW(), '%Y/%m') AS REPORT_MONTH FROM DUAL)B1 LEFT JOIN (SELECT DATE_FORMAT(LFI.FACT_DATE, '%Y/%m') FACT_DATE,SUM(IFNULL(LRP.CORPUS, 0)) AS NEW_CORPUS,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YMWCBJ,COUNT(LFI.CONTRACT_ID) AS NEW_CORPUS_SUM,COUNT(LCI.ID) AS OVER_CON,SUM(LRP2.CORPUS) AS ZCDKYE,SUM(IFNULL(LRP3.YQ_1_30_MONEY, 0.00)) AS YQ_1_30_MONEY,SUM(IFNULL(LRP3.YQ_1_30_SUM, 0)) AS YQ_1_30_SUM,SUM(IFNULL(LRP4.YQ_31_60_MONEY, 0.00)) AS YQ_31_60_MONEY,SUM(IFNULL(LRP4.YQ_31_60_SUM, 0)) AS YQ_31_60_SUM,SUM(IFNULL(LRP5.YQ_61_90_MONEY, 0.00)) AS YQ_61_90_MONEY,SUM(IFNULL(LRP5.YQ_61_90_SUM, 0)) AS YQ_61_90_SUM,SUM(IFNULL(LRP6.YQ_91_120_MONEY, 0.00)) AS YQ_91_120_MONEY,SUM(IFNULL(LRP6.YQ_91_120_SUM, 0)) AS YQ_91_120_SUM,SUM(IFNULL(LRP7.YQ_121_150_MONEY, 0.00)) AS YQ_121_150_MONEY,SUM(IFNULL(LRP7.YQ_121_150_SUM, 0)) AS YQ_121_150_SUM,SUM(IFNULL(LRP8.YQ_151_180_MONEY, 0.00)) AS YQ_151_180_MONEY,SUM(IFNULL(LRP8.YQ_151_180_SUM, 0)) AS YQ_151_180_SUM,SUM(IFNULL(LRP9.YQ_180_MONEY, 0.00)) AS YQ_180_MONEY,SUM(IFNULL(LRP9.YQ_180_SUM, 0)) AS YQ_180_SUM,SUM(IFNULL(LRP10.YNBJHSK, 0.00)) AS YNBJHSK,SUM(IFNULL(LRI2.YNBFZCJE, 0.00)) AS YNBFZCJE,SUM(IFNULL(LFRA.YNQBZCJE, 0.00)) AS YNQBZCJE,SUM(IFNULL(LRI3.XNBJCHJE, 0.00)) AS XNBJCHJE,SUM(IFNULL(LRI4.DYHSKZE, 0.00)) AS DYHSKZE FROM (SELECT CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype10' AND EBANK_STATUS = '05' GROUP BY CONTRACT_ID) LFI LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LFI.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE,'%Y/%m')<=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT ID FROM LB_CONTRACT_INFO WHERE (CONTRACT_STATUS = '31' OR (CONTRACT_STATUS = '100' AND EXISTS(SELECT 1 FROM LC_FUND_RENT_ADJUST WHERE DATE_FORMAT(PAYDAY_ADJUST,'%Y/%m')>DATE_FORMAT(NOW(),'%Y/%m')))) GROUP BY ID ) LCI ON LCI.ID = LFI.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN LRP WHERE NOT EXISTS (SELECT 1 FROM VI_OVERDUE_CONTRACT VOC WHERE VOC.CONTRACT_ID = LRP.CONTRACT_ID) AND LRP.PLAN_DATE >= DATE_FORMAT(NOW(), '%Y/%m/%d') GROUP BY LRP.CONTRACT_ID) LRP2 ON LRP2.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_1_30_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_1_30_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 1 AND 30 GROUP BY VOC.CONTRACT_ID) LRP3 ON LRP3.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_31_60_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_31_60_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 31 AND 60 GROUP BY VOC.CONTRACT_ID) LRP4 ON LRP4.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_61_90_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_61_90_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 61 AND 90 GROUP BY VOC.CONTRACT_ID) LRP5 ON LRP5.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_91_120_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_91_120_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 91 AND 120 GROUP BY VOC.CONTRACT_ID) LRP6 ON LRP6.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_121_150_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_121_150_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 121 AND 150 GROUP BY VOC.CONTRACT_ID) LRP7 ON LRP7.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_151_180_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_151_180_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY BETWEEN 151 AND 180 GROUP BY VOC.CONTRACT_ID) LRP8 ON LRP8.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT VOC.CONTRACT_ID,SUM(IFNULL(LRP.CORPUS, 0)) - SUM(IFNULL(LRI.CORPUS, 0)) AS YQ_180_MONEY,COUNT(VOC.CONTRACT_ID) AS YQ_180_SUM FROM VI_OVERDUE_CONTRACT VOC LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = VOC.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID WHERE VOC.OVERDUE_DAY > 180 GROUP BY VOC.CONTRACT_ID) LRP9 ON LRP9.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS YNBJHSK FROM LC_RENT_PLAN WHERE DATE_FORMAT(PLAN_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') GROUP BY CONTRACT_ID) LRP10 ON LRP10.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT LRI.CONTRACT_ID,SUM(LRI.CORPUS) AS YNBFZCJE FROM(SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST) LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = LRI.CONTRACT_ID AND LRP.PLAN_LIST = LRI.PLAN_LIST WHERE DATE_FORMAT(LRP.PLAN_DATE, '%Y/%m') > DATE_FORMAT(NOW(), '%Y/%m') GROUP BY LRI.CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT LFRA.CONTRACT_ID,SUM(IFNULL(LRI2.CORPUS, 0))-SUM(IFNULL(HIS.CORPUS, 0)) AS YNQBZCJE FROM LC_FUND_RENT_ADJUST LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI ON LRI.CONTRACT_ID = LFRA.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,HIRE_DATE,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,HIRE_DATE) LRI2 ON LRI2.CONTRACT_ID = LRI.CONTRACT_ID AND DATE_FORMAT(LRI2.HIRE_DATE,'%Y/%m')=DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m') LEFT JOIN (SELECT CONTRACT_ID,PLAN_DATE,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN_HIS GROUP BY CONTRACT_ID,PLAN_DATE)HIS ON HIS.CONTRACT_ID=LRI2.CONTRACT_ID AND DATE_FORMAT(HIS.PLAN_DATE,'%Y/%m')=DATE_FORMAT(LRI2.HIRE_DATE,'%Y/%m') WHERE DATE_FORMAT(LRI.HIRE_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') GROUP BY LFRA.CONTRACT_ID) LFRA ON LFRA.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT LRP.CONTRACT_ID,SUM(IFNULL(LRI.CORPUS, 0.00)) AS XNBJCHJE FROM(SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') GROUP BY CONTRACT_ID,PLAN_LIST) LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = LRI.CONTRACT_ID AND LRP.PLAN_LIST = LRI.PLAN_LIST WHERE DATE_FORMAT(LRP.PLAN_DATE, '%Y/%m') < DATE_FORMAT(NOW(), '%Y/%m') GROUP BY LRP.CONTRACT_ID) LRI3 ON LRI3.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(IFNULL(CORPUS, 0)) AS DYHSKZE FROM LC_RENT_INCOME WHERE DATE_FORMAT(HIRE_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') GROUP BY CONTRACT_ID) LRI4 ON LRI4.CONTRACT_ID = LRP.CONTRACT_ID GROUP BY DATE_FORMAT(LFI.FACT_DATE, '%Y/%m')) LFI ON LFI.FACT_DATE <= B1.REPORT_MONTH)"; + int con = Sqlca.executeSQL(insertSql); + Sqlca.commit(); + logger.info("静态池数据跑批成功,《《《条数:"+con+"《《《《时间:"+create_time+"《《《"+insertSql); + }catch(Exception e){ + logger.info("<<<<<<<<<<<<<<<<<<<<<<静态池数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<<<<<<<静态池数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<<<<<<<静态池数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>"); + try { + Sqlca.rollback(); + } catch (JBOException e1) { + e1.printStackTrace(); + } + e.printStackTrace(); + }finally { + if(Sqlca!=null) { + try { + Sqlca.commit(); + Sqlca.disConnect(); + } catch (JBOException e) { + e.printStackTrace(); + } + } + } + } +}