应收台账取数以及显示优化
This commit is contained in:
wenlukang1 2025-07-30 14:52:06 +08:00
parent 7e8eb690cb
commit b6e3f7f8cb
1 changed files with 80 additions and 70 deletions

View File

@ -100,65 +100,68 @@ public class BillReceivableReportFormPlugin extends AbstractReportListDataPlugin
//贴现
private DataSet getDisCountData(){
return DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"),
"/*dialect*/ SELECT \n" +
"/*dialect*/ SELECT\n" +
" pjid3,\n" +
" MAX(discountid) AS discountid,\n" +
" MAX(discountid) AS discountid,\n" +
" MAX(discounttradetype) AS discounttradetype,\n" +
" LISTAGG(TO_CHAR(bizdate, 'YYYY-MM-DD'),';') WITHIN GROUP (ORDER BY bizdate) AS shkd_txrq, \n" +
" LISTAGG(disfrecbodyname || ';' || TO_CHAR(discamt, '999,999,999,999.99'),';') \n" +
" WITHIN GROUP (ORDER BY bizdate) AS shkd_txjg,\n" +
" LISTAGG(TO_CHAR(bizdate, 'YYYY-MM-DD'), '\n')\n" +
" WITHIN GROUP (ORDER BY bizdate) AS shkd_txrq,\n" +
" LISTAGG(\n" +
" disfrecbodyname || ';¥' ||\n" +
" TRIM(TO_CHAR(TRUNC(discamt), 'FM999,999,999,990')) || '.' ||\n" +
" LPAD(TO_CHAR(MOD(ROUND(discamt * 100), 100)), 2, '0'),\n" +
" '\n'\n" +
" ) WITHIN GROUP (ORDER BY bizdate) AS shkd_txjg,\n" +
" SUM(discamt) AS shkd_txje\n" +
" FROM (\n" +
" SELECT \n" +
" t1.fid AS pjid3,\n" +
" t2.fid AS discountid,\n" +
" t2.ftradetype AS discounttradetype,\n" +
" t2.frecbodyname AS disfrecbodyname,\n" +
" t2.FBIZDATE AS bizdate,\n" +
" t3.fdis_discamt AS discamt\n" +
" FROM \n" +
" CTSK0414_FI.t_cdm_draftbill t1\n" +
" LEFT JOIN \n" +
" CTSK0414_FI.t_cdm_discountentry t3 ON t1.fid = t3.fdis_selectbillid\n" +
" LEFT JOIN \n" +
" CTSK0414_FI.t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" WHERE \n" +
" t1.fsource <> 'cdm'\n" +
" AND t2.ftradetype = 'discount'\n" +
" ) src\n" +
" GROUP BY pjid3;");
"FROM (\n" +
" SELECT\n" +
" t1.fid AS pjid3,\n" +
" t2.fid AS discountid,\n" +
" t2.ftradetype AS discounttradetype,\n" +
" t2.frecbodyname AS disfrecbodyname,\n" +
" t2.FBIZDATE AS bizdate,\n" +
" t3.fdis_discamt AS discamt\n" +
" FROM t_cdm_draftbill t1\n" +
" JOIN t_cdm_discountentry t3 ON t1.fid = t3.fdis_selectbillid\n" +
" JOIN t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" WHERE t1.fsource <> 'cdm'\n" +
" AND t2.ftradetype = 'discount'\n" +
") src\n" +
"GROUP BY pjid3;");
}
//背书
private DataSet getEndorseData() {
return DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"),
"/*dialect*/ SELECT \n" +
"/*dialect*/ SELECT\n" +
" pjid2,\n" +
" MAX(discountid) AS discountid,\n" +
" MAX(discountid) AS discountid,\n" +
" MAX(discounttradetype) AS discounttradetype,\n" +
" LISTAGG(TO_CHAR(bizdate, 'YYYY-MM-DD'), '\n') WITHIN GROUP (ORDER BY bizdate ASC) AS shkd_bsrq,\n" +
" LISTAGG(endorsename || ';' || TO_CHAR(endorseamt, '999,999,999,999.99'), '\n') WITHIN GROUP " +
" (ORDER BY bizdate ASC) AS shkd_bsr,\n" +
" LISTAGG(TO_CHAR(bizdate, 'YYYY-MM-DD'), CHR(10))\n" +
" WITHIN GROUP (ORDER BY bizdate) AS shkd_bsrq,\n" +
" LISTAGG(\n" +
" endorsename || ';¥' ||\n" +
" TRIM(TO_CHAR(TRUNC(endorseamt), 'FM999,999,999,990')) || '.' ||\n" +
" LPAD(TO_CHAR(MOD(ROUND(endorseamt * 100), 100)), 2, '0'),\n" +
" CHR(10)\n" +
" ) WITHIN GROUP (ORDER BY bizdate) AS shkd_bsr,\n" +
" SUM(endorseamt) AS shkd_bsje\n" +
" FROM (\n" +
" SELECT \n" +
" t1.fid AS pjid2,\n" +
" t2.fid AS discountid,\n" +
" t2.ftradetype AS discounttradetype,\n" +
"FROM (\n" +
" SELECT\n" +
" t1.fid AS pjid2,\n" +
" t2.fid AS discountid,\n" +
" t2.ftradetype AS discounttradetype,\n" +
" t2.fbeendorsortext AS endorsename,\n" +
" t2.FBIZDATE AS bizdate,\n" +
" t3.fs_billamount AS endorseamt\n" +
" FROM t_cdm_draftbill t1\n" +
" LEFT JOIN t_cdm_drafttrdbill_entry t3 \n" +
" ON t1.fid = t3.fdraftbillid\n" +
" LEFT JOIN t_cdm_drafttradebill t2 \n" +
" ON t2.fid = t3.fid\n" +
" WHERE \n" +
" t1.fsource <> 'cdm' \n" +
" AND t2.ftradetype = 'endorse'\n" +
" ) src\n" +
" GROUP BY pjid2;");
" t2.FBIZDATE AS bizdate,\n" +
" t3.fs_billamount AS endorseamt\n" +
" FROM t_cdm_draftbill t1\n" +
" JOIN t_cdm_drafttrdbill_entry t3 ON t1.fid = t3.fdraftbillid\n" +
" JOIN t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" WHERE t1.fsource <> 'cdm'\n" +
" AND t2.ftradetype = 'endorse'\n" +
") src\n" +
"GROUP BY pjid2;");
}
//托收
@ -182,29 +185,33 @@ public class BillReceivableReportFormPlugin extends AbstractReportListDataPlugin
//质押
private DataSet getPledgeData(){
return DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"),
"/*dialect*/ SELECT \n" +
"/*dialect*/ SELECT\n" +
" pjid4,\n" +
" MAX(t2id4) AS t2id4,\n" +
" MAX(t2id4) AS t2id4,\n" +
" MAX(tradetype4) AS tradetype4,\n" +
" LISTAGG(\n" +
" TO_CHAR(bizdate, 'YYYY-MM-DD'),'\n' \n" +
" ) WITHIN GROUP (ORDER BY bizdate ASC) AS shkd_zyrq,\n" +
" TO_CHAR(bizdate, 'YYYY-MM-DD'), '\n'\n" +
" ) WITHIN GROUP (ORDER BY bizdate) AS shkd_zyrq,\n" +
" LISTAGG(\n" +
" pledgename || ';' || TO_CHAR(pledgeamt, '999,999,999,999.99'),'\n'\n" +
" ) WITHIN GROUP (ORDER BY bizdate ASC) AS shkd_zyr,\n" +
" pledgename || ';¥' ||\n" +
" TRIM(TO_CHAR(TRUNC(pledgeamt), 'FM999,999,999,990')) || '.' ||\n" +
" LPAD(TO_CHAR(MOD(ROUND(pledgeamt * 100), 100)), 2, '0'),\n" +
" '\n'\n" +
" ) WITHIN GROUP (ORDER BY bizdate) AS shkd_zyr,\n" +
" SUM(pledgeamt) AS shkd_yzyje\n" +
" FROM (\n" +
" SELECT \n" +
" t1.fid AS pjid4,\n" +
" t2.fid AS t2id4,\n" +
" t2.ftradetype AS tradetype4,\n" +
" t2.fpledgeetext AS pledgename,\n" +
" t2.FBIZDATE AS bizdate,\n" +
" t3.fs_billamount AS pledgeamt\n" +
" FROM t_cdm_draftbill t1\n" +
" SELECT\n" +
" t1.fid AS pjid4,\n" +
" t2.fid AS t2id4,\n" +
" t2.ftradetype AS tradetype4,\n" +
" t2.fpledgeetext AS pledgename,\n" +
" t2.FBIZDATE AS bizdate,\n" +
" t3.fs_billamount AS pledgeamt\n" +
" FROM t_cdm_draftbill t1\n" +
" LEFT JOIN t_cdm_drafttrdbill_entry t3 ON t1.fid = t3.fdraftbillid\n" +
" LEFT JOIN t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" WHERE t1.fsource <> 'cdm' AND t2.ftradetype = 'pledge'\n" +
" LEFT JOIN t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" WHERE t1.fsource <> 'cdm'\n" +
" AND t2.ftradetype = 'pledge'\n" +
" ) src\n" +
" GROUP BY pjid4;");
@ -218,10 +225,13 @@ public class BillReceivableReportFormPlugin extends AbstractReportListDataPlugin
" MAX(t2id6) AS t2id6,\n" +
" MAX(tradetype4) AS tradetype4,\n" +
" LISTAGG(\n" +
" TO_CHAR(bizdate, 'YYYY-MM-DD'),'\n' \n" +
" TO_CHAR(bizdate, 'YYYY-MM-DD'),';' \n" +
" ) WITHIN GROUP (ORDER BY bizdate) AS shkd_zyjcrq,\n" +
" LISTAGG(\n" +
" TO_CHAR(pledgeamt, '999,999,999,999.99'),'\n' \n" +
" '¥' ||\n" +
" TRIM(TO_CHAR(TRUNC(pledgeamt), 'FM999,999,999,990')) || '.' ||\n" +
" LPAD(TO_CHAR(MOD(ROUND(pledgeamt*100), 100)), 2, '0'),\n" +
" ';'\n" +
" ) WITHIN GROUP (ORDER BY bizdate) AS shkd_zyjcje\n" +
" FROM (\n" +
" SELECT \n" +
@ -231,9 +241,9 @@ public class BillReceivableReportFormPlugin extends AbstractReportListDataPlugin
" t2.fpledgeetext AS pledgename,\n" +
" t2.FBIZDATE AS bizdate,\n" +
" t3.fs_billamount AS pledgeamt\n" +
" FROM CTSK0414_FI.t_cdm_draftbill t1\n" +
" LEFT JOIN CTSK0414_FI.t_cdm_drafttrdbill_entry t3 ON t1.fid = t3.fdraftbillid\n" +
" LEFT JOIN CTSK0414_FI.t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" FROM t_cdm_draftbill t1\n" +
" LEFT JOIN t_cdm_drafttrdbill_entry t3 ON t1.fid = t3.fdraftbillid\n" +
" LEFT JOIN t_cdm_drafttradebill t2 ON t2.fid = t3.fid\n" +
" WHERE t1.fsource <> 'cdm' AND t2.ftradetype = 'rlspledge'\n" +
" ) src\n" +
" GROUP BY pjid6;");
@ -258,10 +268,10 @@ public class BillReceivableReportFormPlugin extends AbstractReportListDataPlugin
" t2.fbizdate,\n" +
" t3.fs_billamount,\n" +
" t2.ftradetype\n" +
" FROM CTSK0414_FI.t_cdm_draftbill t1\n" +
" LEFT JOIN CTSK0414_FI.t_cdm_drafttrdbill_entry t3 \n" +
" FROM t_cdm_draftbill t1\n" +
" LEFT JOIN t_cdm_drafttrdbill_entry t3 \n" +
" ON t1.fid = t3.fdraftbillid\n" +
" LEFT JOIN CTSK0414_FI.t_cdm_drafttradebill t2 \n" +
" LEFT JOIN t_cdm_drafttradebill t2 \n" +
" ON t2.fid = t3.fid\n" +
" WHERE \n" +
" t1.fsource <> 'cdm' \n" +