From 97aab3d1b5a32c627df2b8bce58606879c47292f Mon Sep 17 00:00:00 2001 From: chenshaoxin <1981897232@qq.com> Date: Tue, 22 Apr 2025 17:44:06 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A?= =?UTF-8?q?=E9=99=88=E7=BB=8D=E9=91=AB=20=E6=97=A5=E6=9C=9F=EF=BC=9A2025/4?= =?UTF-8?q?/22=2016=EF=BC=9A30=20=E5=86=85=E5=AE=B9:=E4=B8=8A=E5=88=92?= =?UTF-8?q?=E4=B8=8B=E6=8B=A8=EF=BC=88new=EF=BC=89=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/report/FinanceReportPlugin.java | 70 +++++++++++-------- .../report/transbillreportnewPlugin.java | 2 +- 2 files changed, 40 insertions(+), 32 deletions(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java index c8ef605..16d23af 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java @@ -3,13 +3,11 @@ package shkd.sys.sys.plugin.report; import kd.bos.algo.DataSet; import kd.bos.algo.JoinDataSet; import kd.bos.algo.JoinType; -import kd.bos.context.RequestContext; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.dataentity.entity.LocaleString; import kd.bos.db.DB; import kd.bos.db.DBRoute; -import kd.bos.entity.AppMetadataCache; import kd.bos.entity.MainEntityType; import kd.bos.entity.report.*; import kd.bos.entity.tree.TreeNode; @@ -20,14 +18,11 @@ import kd.bos.org.model.OrgTreeParam; import kd.bos.orm.ORM; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; -import kd.bos.permission.api.HasPermOrgResult; -import kd.bos.permission.cache.constant.PermItemConst; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.MetadataServiceHelper; import kd.bos.servicehelper.QueryServiceHelper; import kd.bos.servicehelper.org.OrgUnitServiceHelper; import kd.bos.servicehelper.org.OrgViewType; -import kd.bos.servicehelper.permission.PermissionServiceHelper; import kd.bos.util.CollectionUtils; import shkd.sys.sys.plugin.form.PaymentProcessingBillPlugin; import shkd.sys.sys.plugin.report.domain.FinanceVarietyEnum; @@ -133,44 +128,44 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { // DynamicObjectCollection srcCollection = ORM.create().toPlainDynamicObjectCollection(res.copy()); // System.out.println(srcCollection); DataSet dataSet = join.on("shkd_orgnumber","shkd_orgnumber").select(new String[]{"shkd_orgnumber","shkd_org", - "shkd_zqrzamount/ "+shkd_selmoney+" as shkd_zqrzamount","shkd_zqrzrzcb * 100 as shkd_zqrzrzcb","shkd_zqrzqx", - "shkd_dqjkamount/ "+shkd_selmoney+" as shkd_dqjkamount","shkd_dqjkrzcb * 100 as shkd_dqjkrzcb","shkd_dqjkqx", - "shkd_zcqldamount/ "+shkd_selmoney+" as shkd_zcqldamount","shkd_zcqldrzcb * 100 as shkd_zcqldrzcb","shkd_zcqldqx", - "shkd_xmdkamount/ "+shkd_selmoney+" as shkd_xmdkamount","shkd_xmdkrzcb * 100 as shkd_xmdkrzcb","shkd_xmdkqx", - "shkd_rzzlamount/ "+shkd_selmoney+" as shkd_rzzlamount","shkd_rzzlrzcb * 100 as shkd_rzzlrzcb","shkd_rzzlqx", - "shkd_bxzjrzamount/ "+shkd_selmoney+" as shkd_bxzjrzamount","shkd_bxzjrzrzcb * 100 as shkd_bxzjrzrzcb","shkd_bxzjrzqx", - "shkd_yfpjamount/ "+shkd_selmoney+" as shkd_yfpjamount","shkd_yfpjrzcb * 100 as shkd_yfpjrzcb","shkd_yfpjqx", - "shkd_fjrqyjkamount/ "+shkd_selmoney+" as shkd_fjrqyjkamount","shkd_fjrqyjkrzcb * 100 as shkd_fjrqyjkrzcb","shkd_fjrqyjkqx", - "shkd_qtzwrzamount/ "+shkd_selmoney+" as shkd_qtzwrzamount","shkd_qtzwrzrzcb * 100 as shkd_qtzwrzrzcb","shkd_qtzwrzqx", - "shkd_jtnbjkamount/ "+shkd_selmoney+" as shkd_jtnbjkamount","shkd_jtnbjkrzcb * 100 as shkd_jtnbjkrzcb","shkd_jtnbjkqx", - "shkd_yxzamount/ "+shkd_selmoney+" as shkd_yxzamount","shkd_yxzrzcb * 100 as shkd_yxzrzcb","shkd_yxzqx", - "shkd_yxxtamount/ "+shkd_selmoney+" as shkd_yxxtamount","shkd_yxxtrzcb * 100 as shkd_yxxtrzcb","shkd_yxxtqx", - "shkd_qtqyrzamount/ "+shkd_selmoney+" as shkd_qtqyrzamount","shkd_qtqyrzrzcb * 100 as shkd_qtqyrzrzcb","shkd_qtqyrzqx", + "shkd_zqrzamount/ "+shkd_selmoney+" as shkd_zqrzamount","shkd_zqrzrzcb","shkd_zqrzqx", + "shkd_dqjkamount/ "+shkd_selmoney+" as shkd_dqjkamount","shkd_dqjkrzcb","shkd_dqjkqx", + "shkd_zcqldamount/ "+shkd_selmoney+" as shkd_zcqldamount","shkd_zcqldrzcb","shkd_zcqldqx", + "shkd_xmdkamount/ "+shkd_selmoney+" as shkd_xmdkamount","shkd_xmdkrzcb","shkd_xmdkqx", + "shkd_rzzlamount/ "+shkd_selmoney+" as shkd_rzzlamount","shkd_rzzlrzcb","shkd_rzzlqx", + "shkd_bxzjrzamount/ "+shkd_selmoney+" as shkd_bxzjrzamount","shkd_bxzjrzrzcb","shkd_bxzjrzqx", + "shkd_yfpjamount/ "+shkd_selmoney+" as shkd_yfpjamount","shkd_yfpjrzcb","shkd_yfpjqx", + "shkd_fjrqyjkamount/ "+shkd_selmoney+" as shkd_fjrqyjkamount","shkd_fjrqyjkrzcb","shkd_fjrqyjkqx", + "shkd_qtzwrzamount/ "+shkd_selmoney+" as shkd_qtzwrzamount","shkd_qtzwrzrzcb","shkd_qtzwrzqx", + "shkd_jtnbjkamount/ "+shkd_selmoney+" as shkd_jtnbjkamount","shkd_jtnbjkrzcb","shkd_jtnbjkqx", + "shkd_yxzamount/ "+shkd_selmoney+" as shkd_yxzamount","shkd_yxzrzcb","shkd_yxzqx", + "shkd_yxxtamount/ "+shkd_selmoney+" as shkd_yxxtamount","shkd_yxxtrzcb","shkd_yxxtqx", + "shkd_qtqyrzamount/ "+shkd_selmoney+" as shkd_qtqyrzamount","shkd_qtqyrzrzcb","shkd_qtqyrzqx", //1至9合计 "(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount)/"+shkd_selmoney+" as shkd_oneotnineje", "case when (shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount)=0 then 0 else " + - "(shkd_zqrzamount*shkd_zqrzrzcb+shkd_dqjkamount*shkd_dqjkrzcb+shkd_zcqldamount*shkd_zcqldrzcb+shkd_xmdkamount*shkd_xmdkrzcb+shkd_rzzlamount*shkd_rzzlrzcb+shkd_bxzjrzamount*shkd_bxzjrzrzcb+shkd_yfpjamount*shkd_yfpjrzcb+shkd_fjrqyjkamount*shkd_fjrqyjkrzcb+shkd_qtzwrzamount*shkd_qtzwrzrzcb)*100/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount) end as shkd_oneotninerzcb", + "(shkd_zqrzamount*shkd_zqrzrzcb+shkd_dqjkamount*shkd_dqjkrzcb+shkd_zcqldamount*shkd_zcqldrzcb+shkd_xmdkamount*shkd_xmdkrzcb+shkd_rzzlamount*shkd_rzzlrzcb+shkd_bxzjrzamount*shkd_bxzjrzrzcb+shkd_yfpjamount*shkd_yfpjrzcb+shkd_fjrqyjkamount*shkd_fjrqyjkrzcb+shkd_qtzwrzamount*shkd_qtzwrzrzcb)/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount) end as shkd_oneotninerzcb", "case when (shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount)=0 then 0 else " + "(shkd_zqrzamount*shkd_zqrzqx+shkd_dqjkamount*shkd_dqjkqx+shkd_zcqldamount*shkd_zcqldqx+shkd_xmdkamount*shkd_xmdkqx+shkd_rzzlamount*shkd_rzzlqx+shkd_bxzjrzamount*shkd_bxzjrzqx+shkd_yfpjamount*shkd_yfpjqx+shkd_fjrqyjkamount*shkd_fjrqyjkqx+shkd_qtzwrzamount*shkd_qtzwrzqx)/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount) end as shkd_oneotnineqx", //1至10合计 "(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount)/"+shkd_selmoney+" as shkd_oneottenje", "case when (shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount)=0 then 0 else " + - "(shkd_zqrzamount*shkd_zqrzrzcb+shkd_dqjkamount*shkd_dqjkrzcb+shkd_zcqldamount*shkd_zcqldrzcb+shkd_xmdkamount*shkd_xmdkrzcb+shkd_rzzlamount*shkd_rzzlrzcb+shkd_bxzjrzamount*shkd_bxzjrzrzcb+shkd_yfpjamount*shkd_yfpjrzcb+shkd_fjrqyjkamount*shkd_fjrqyjkrzcb+shkd_qtzwrzamount*shkd_qtzwrzrzcb+shkd_jtnbjkamount*shkd_jtnbjkrzcb)*100/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount) end as shkd_oneottenrzcb", + "(shkd_zqrzamount*shkd_zqrzrzcb+shkd_dqjkamount*shkd_dqjkrzcb+shkd_zcqldamount*shkd_zcqldrzcb+shkd_xmdkamount*shkd_xmdkrzcb+shkd_rzzlamount*shkd_rzzlrzcb+shkd_bxzjrzamount*shkd_bxzjrzrzcb+shkd_yfpjamount*shkd_yfpjrzcb+shkd_fjrqyjkamount*shkd_fjrqyjkrzcb+shkd_qtzwrzamount*shkd_qtzwrzrzcb+shkd_jtnbjkamount*shkd_jtnbjkrzcb)/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount) end as shkd_oneottenrzcb", "case when (shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount)=0 then 0 else " + "(shkd_zqrzamount*shkd_zqrzqx+shkd_dqjkamount*shkd_dqjkqx+shkd_zcqldamount*shkd_zcqldqx+shkd_xmdkamount*shkd_xmdkqx+shkd_rzzlamount*shkd_rzzlqx+shkd_bxzjrzamount*shkd_bxzjrzqx+shkd_yfpjamount*shkd_yfpjqx+shkd_fjrqyjkamount*shkd_fjrqyjkqx+shkd_qtzwrzamount*shkd_qtzwrzqx+shkd_jtnbjkamount*shkd_jtnbjkqx)/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount) end as shkd_oneottenqx", //11至13合计 "(shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount)/"+shkd_selmoney+" as shkd_11to13je", "case when (shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount)=0 then 0 else " + - "(shkd_yxzamount*shkd_yxzrzcb+shkd_yxxtamount*shkd_yxxtrzcb+shkd_qtqyrzamount*shkd_qtqyrzrzcb)*100/(shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_11to13rzcb", + "(shkd_yxzamount*shkd_yxzrzcb+shkd_yxxtamount*shkd_yxxtrzcb+shkd_qtqyrzamount*shkd_qtqyrzrzcb)/(shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_11to13rzcb", "case when (shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount)=0 then 0 else " + "(shkd_yxzamount*shkd_yxzqx+shkd_yxxtamount*shkd_yxxtqx+shkd_qtqyrzamount*shkd_qtqyrzqx)/(shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_11to13qx", //1至13合计 "(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount+shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount)/"+shkd_selmoney+" as shkd_1to13je", "case when (shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount+shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount)=0 then 0 else " + - "(shkd_zqrzamount*shkd_zqrzrzcb+shkd_dqjkamount*shkd_dqjkrzcb+shkd_zcqldamount*shkd_zcqldrzcb+shkd_xmdkamount*shkd_xmdkrzcb+shkd_rzzlamount*shkd_rzzlrzcb+shkd_bxzjrzamount*shkd_bxzjrzrzcb+shkd_yfpjamount*shkd_yfpjrzcb+shkd_fjrqyjkamount*shkd_fjrqyjkrzcb+shkd_qtzwrzamount*shkd_qtzwrzrzcb+shkd_jtnbjkamount*shkd_jtnbjkrzcb+shkd_yxzamount*shkd_yxzrzcb+shkd_yxxtamount*shkd_yxxtrzcb+shkd_qtqyrzamount*shkd_qtqyrzrzcb)*100/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount+shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_1to13jrcb", + "(shkd_zqrzamount*shkd_zqrzrzcb+shkd_dqjkamount*shkd_dqjkrzcb+shkd_zcqldamount*shkd_zcqldrzcb+shkd_xmdkamount*shkd_xmdkrzcb+shkd_rzzlamount*shkd_rzzlrzcb+shkd_bxzjrzamount*shkd_bxzjrzrzcb+shkd_yfpjamount*shkd_yfpjrzcb+shkd_fjrqyjkamount*shkd_fjrqyjkrzcb+shkd_qtzwrzamount*shkd_qtzwrzrzcb+shkd_jtnbjkamount*shkd_jtnbjkrzcb+shkd_yxzamount*shkd_yxzrzcb+shkd_yxxtamount*shkd_yxxtrzcb+shkd_qtqyrzamount*shkd_qtqyrzrzcb)/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount+shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_1to13jrcb", "case when (shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount+shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount)=0 then 0 else " + "(shkd_zqrzamount*shkd_zqrzqx+shkd_dqjkamount*shkd_dqjkqx+shkd_zcqldamount*shkd_zcqldqx+shkd_xmdkamount*shkd_xmdkqx+shkd_rzzlamount*shkd_rzzlqx+shkd_bxzjrzamount*shkd_bxzjrzqx+shkd_yfpjamount*shkd_yfpjqx+shkd_fjrqyjkamount*shkd_fjrqyjkqx+shkd_qtzwrzamount*shkd_qtzwrzqx+shkd_jtnbjkamount*shkd_jtnbjkqx+shkd_yxzamount*shkd_yxzqx+shkd_yxxtamount*shkd_yxxtqx+shkd_qtqyrzamount*shkd_qtqyrzqx)/(shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount+shkd_jtnbjkamount+shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_1to13qx" }).finish(); @@ -253,7 +248,7 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { sqlBuilder.append("FROM ( \n"); sqlBuilder.append("SELECT\n" + - "t1.fbillno,t1.ffinproductid as rzpz,rpentry.fexdrawamount as je,e.forgid as zz,t.flatestrate/100.0 as zxll,e.fterm AS qx,\n" + + "t1.fbillno,t1.ffinproductid as rzpz,rpentry.fexdrawamount as je,e.forgid as zz,raentry.frayearrate as zxll,e.fterm AS qx,\n" + "CASE WHEN POSITION ( 'y' IN e.fterm ) > 0 THEN CAST ( SUBSTRING ( e.fterm FROM 1 FOR POSITION ( 'y' IN e.fterm ) - 1 ) AS INT ) ELSE 0 END AS y,\n" + "CASE WHEN POSITION ( 'm' IN e.fterm ) > 0 THEN CAST ( SUBSTRING ( e.fterm FROM CASE WHEN POSITION ( 'y' IN e.fterm ) > 0 THEN POSITION ( 'y' IN e.fterm ) + 1 ELSE 1 END FOR POSITION ( 'm' IN e.fterm ) - CASE WHEN POSITION ( 'y' IN e.fterm ) > 0 THEN POSITION ( 'y' IN e.fterm ) + 1 ELSE 1 END ) AS INT ) ELSE 0 END AS M,\n" + "CASE WHEN POSITION ( 'd' IN e.fterm ) > 0 THEN CAST ( SUBSTRING ( e.fterm FROM CASE WHEN POSITION ( 'm' IN e.fterm ) > 0 THEN POSITION ( 'm' IN e.fterm ) + 1 WHEN POSITION ( 'y' IN e.fterm ) > 0 THEN POSITION ( 'y' IN e.fterm ) + 1 ELSE 1 END FOR POSITION ( 'd' IN e.fterm ) - CASE WHEN POSITION ( 'm' IN e.fterm ) > 0 THEN POSITION ( 'm' IN e.fterm ) + 1 WHEN POSITION ( 'y' IN e.fterm ) > 0 THEN POSITION ( 'y' IN e.fterm ) + 1 ELSE 1 END ) AS INT ) ELSE 0 END AS d,\n" + @@ -262,8 +257,10 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { "FROM\n" + " t_cfm_loanbill t1 -- 债券发行\n" + " INNER JOIN t_cfm_loanbill_e e ON e.fid = t1.fid -- 内连接组织拆分表\n" + - " INNER JOIN t_cfm_loanbill_t t ON t.fid = t1.fid -- 内连接最新利率拆分表\n" + " INNER JOIN t_cfm_loanbill_rp_entry rpentry ON rpentry.fid = t1.fid -- 债券发行明细表\n" + + " LEFT JOIN (SELECT t_cfm_loanbill_ra_entry.fid, t_cfm_loanbill_ra_entry.fraeffectdate, t_cfm_loanbill_ra_entry.frayearrate FROM t_cfm_loanbill_ra_entry\n" + + "JOIN (SELECT fid, MAX(fraeffectdate) AS latest_date FROM t_cfm_loanbill_ra_entry WHERE fraeffectdate < CURRENT_DATE GROUP BY fid) AS latest_dates\n" + + "ON t_cfm_loanbill_ra_entry.fid = latest_dates.fid AND t_cfm_loanbill_ra_entry.fraeffectdate = latest_dates.latest_date) AS raentry ON raentry.fid = t1.fid -- 最新利率 \n"+ "WHERE\n" + " t1.fbillstatus='C' \n" + " and e.forgid IN ( "+result+" )\n" + @@ -273,7 +270,7 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { sqlBuilder.append("UNION ALL \n"); sqlBuilder.append("SELECT \n" + - " t2.fbillno as fbillno,COALESCE( NULLIF ( t2.fk_shkd_basedatafield, 0 ), t2.ffinproductid ) AS rzpz,rpentry.fexdrawamount as je,e.forgid as zz ,t.flatestrate/100.0 as zxll,CONCAT(TIMESTAMPDIFF(YEAR, t3.fbizdate, rpentry.fexrepaymentdate), 'y',TIMESTAMPDIFF(MONTH, t3.fbizdate, rpentry.fexrepaymentdate) % 12, 'm',DATEDIFF(DAY,t3.fbizdate, rpentry.fexrepaymentdate) % 30, 'd') AS qx,\n" + + " t2.fbillno as fbillno,COALESCE( NULLIF ( t2.fk_shkd_basedatafield, 0 ), t2.ffinproductid ) AS rzpz,rpentry.fexdrawamount as je,e.forgid as zz ,raentry.frayearrate as zxll,CONCAT(TIMESTAMPDIFF(YEAR, t3.fbizdate, rpentry.fexrepaymentdate), 'y',TIMESTAMPDIFF(MONTH, t3.fbizdate, rpentry.fexrepaymentdate) % 12, 'm',DATEDIFF(DAY,t3.fbizdate, rpentry.fexrepaymentdate) % 30, 'd') AS qx,\n" + " TIMESTAMPDIFF(YEAR, t3.fbizdate, rpentry.fexrepaymentdate) AS y,\n" + " TIMESTAMPDIFF(MONTH, t3.fbizdate, rpentry.fexrepaymentdate) % 12 AS m,\n" + " DATEDIFF(DAY,t3.fbizdate, rpentry.fexrepaymentdate) % 30 AS d,\n" + @@ -285,7 +282,9 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { " INNER JOIN t_cfm_loanbill_e e1 ON e1.floancontractbillid = t2.fid -- 内连接合同拆分表\n" + " INNER JOIN t_cfm_loanbill t3 ON t3.fid = e1.fid -- 银行提款处理表\n" + " INNER JOIN t_cfm_loanbill_rp_entry rpentry ON rpentry.fid = t3.fid -- 银行提款处理明细表\n" + - " INNER JOIN t_cfm_loanbill_t t ON t.fid = t3.fid -- 内连接最新利率拆分表\n" + + " LEFT JOIN (SELECT t_cfm_loanbill_ra_entry.fid, t_cfm_loanbill_ra_entry.fraeffectdate, t_cfm_loanbill_ra_entry.frayearrate FROM t_cfm_loanbill_ra_entry\n" + + "JOIN (SELECT fid, MAX(fraeffectdate) AS latest_date FROM t_cfm_loanbill_ra_entry WHERE fraeffectdate < CURRENT_DATE GROUP BY fid) AS latest_dates\n" + + "ON t_cfm_loanbill_ra_entry.fid = latest_dates.fid AND t_cfm_loanbill_ra_entry.fraeffectdate = latest_dates.latest_date) AS raentry ON raentry.fid = t3.fid -- 最新利率\n" + "WHERE\n" + " t2.fbillstatus='C' AND e.floantype IN ('loan','sl')\n" + " AND t3.fbillstatus='C'\n" + @@ -296,7 +295,13 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { sqlBuilder.append("UNION ALL \n"); sqlBuilder.append("SELECT\n" + - " t4.fbillno,t4.ffinproductid as rzpz,planmx.frentamt as je,e.forgid as zz,f.flatestrate/100.0 as zxll,CONCAT(TIMESTAMPDIFF(YEAR, t4.fstartdate, planmx.fpaydate), 'y',TIMESTAMPDIFF(MONTH, t4.fstartdate, planmx.fpaydate) % 12, 'm',DATEDIFF(DAY,t4.fstartdate, planmx.fpaydate) % 30, 'd') AS qx,\n" + + " t4.fbillno,t4.ffinproductid as rzpz,planmx.frentamt as je,e.forgid as zz," + + " CASE \n" + + " WHEN t4.finteresttype='fixed' THEN (SELECT fstartinterestrate FROM t_cfm_loancontractbill_f WHERE fid= t4.fid)\n" + + " WHEN t4.finteresttype='float' THEN (SELECT fendprice FROM t_md_datarate WHERE fbizdate < GETDATE() AND e.freferrateid = freferrateid ORDER BY fbizdate DESC LIMIT 1)+ e.fratefloatpoint*IF( e.fratesign='add', 0.01, -0.01)\n" + + " WHEN t4.finteresttype='agree' THEN (SELECT fstartinterestrate FROM t_cfm_loancontractbill_f WHERE fid= t4.fid)\n" + + " END AS zxll," + + "CONCAT(TIMESTAMPDIFF(YEAR, t4.fstartdate, planmx.fpaydate), 'y',TIMESTAMPDIFF(MONTH, t4.fstartdate, planmx.fpaydate) % 12, 'm',DATEDIFF(DAY,t4.fstartdate, planmx.fpaydate) % 30, 'd') AS qx,\n" + " TIMESTAMPDIFF(YEAR, t4.fstartdate, planmx.fpaydate) AS y,\n" + " TIMESTAMPDIFF(MONTH, t4.fstartdate, planmx.fpaydate) % 12 AS m,\n" + " DATEDIFF(DAY,t4.fstartdate, planmx.fpaydate) % 30 AS d,\n" + @@ -305,7 +310,6 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { "FROM\n" + " t_cfm_loancontractbill t4 -- 融资租赁合同\n" + " INNER JOIN t_cfm_loancontractbill_e e ON e.fid = t4.fid -- 内连接组织拆分表\n" + - " INNER JOIN t_cfm_loancontractbill_f f ON f.fid = t4.fid -- 内连接最新利率拆分表\n" + " INNER JOIN t_cfm_contractbill_plan planmx ON planmx.fid = t4.fid -- 融资租赁合同明细表\n" + "WHERE\n" + " t4.fbillstatus='C' AND e.floantype='finlease'\n" + @@ -316,7 +320,7 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { sqlBuilder.append("UNION ALL \n"); sqlBuilder.append("SELECT\n" + - " t5.fbillno, 6666666666666666666 as rzpz,t5.famount as je,t5.fcompanyid as zz,0/100.0 as zxll,CONCAT(TIMESTAMPDIFF(YEAR, t5.fissuedate, t5.fdraftbillexpiredate), 'y',TIMESTAMPDIFF(MONTH, t5.fissuedate, t5.fdraftbillexpiredate) % 12, 'm',DATEDIFF(DAY,t5.fissuedate, t5.fdraftbillexpiredate) % 30, 'd') AS qx,\n" + + " t5.fbillno, 6666666666666666666 as rzpz,t5.famount as je,t5.fcompanyid as zz,0.0 as zxll,CONCAT(TIMESTAMPDIFF(YEAR, t5.fissuedate, t5.fdraftbillexpiredate), 'y',TIMESTAMPDIFF(MONTH, t5.fissuedate, t5.fdraftbillexpiredate) % 12, 'm',DATEDIFF(DAY,t5.fissuedate, t5.fdraftbillexpiredate) % 30, 'd') AS qx,\n" + " TIMESTAMPDIFF(YEAR, t5.fissuedate, t5.fdraftbillexpiredate) AS y,\n" + " TIMESTAMPDIFF(MONTH, t5.fissuedate, t5.fdraftbillexpiredate) % 12 AS m,\n" + " DATEDIFF(DAY,t5.fissuedate, t5.fdraftbillexpiredate) % 30 AS d,\n" + @@ -333,7 +337,9 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { sqlBuilder.append("UNION ALL \n"); sqlBuilder.append(" SELECT \n" + - " t2.fbillno as fbillno,COALESCE( NULLIF ( t2.fk_shkd_basedatafield, 0 ), t2.ffinproductid ) AS rzpz,rpentry.fexdrawamount as je,e.forgid as zz ,t.flatestrate/100.0 as zxll,CONCAT(TIMESTAMPDIFF(YEAR, t3.fbizdate, rpentry.fexrepaymentdate), 'y',TIMESTAMPDIFF(MONTH, t3.fbizdate, rpentry.fexrepaymentdate) % 12, 'm',DATEDIFF(DAY,t3.fbizdate, rpentry.fexrepaymentdate) % 30, 'd') AS qx,\n" + + " t2.fbillno as fbillno,COALESCE( NULLIF ( t2.fk_shkd_basedatafield, 0 ), t2.ffinproductid ) AS rzpz,rpentry.fexdrawamount as je,e.forgid as zz ," + + "raentry.frayearrate as zxll," + + "CONCAT(TIMESTAMPDIFF(YEAR, t3.fbizdate, rpentry.fexrepaymentdate), 'y',TIMESTAMPDIFF(MONTH, t3.fbizdate, rpentry.fexrepaymentdate) % 12, 'm',DATEDIFF(DAY,t3.fbizdate, rpentry.fexrepaymentdate) % 30, 'd') AS qx,\n" + " TIMESTAMPDIFF(YEAR, t3.fbizdate, rpentry.fexrepaymentdate) AS y,\n" + " TIMESTAMPDIFF(MONTH, t3.fbizdate, rpentry.fexrepaymentdate) % 12 AS m,\n" + " DATEDIFF(DAY,t3.fbizdate, rpentry.fexrepaymentdate) % 30 AS d,\n" + @@ -345,7 +351,9 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { " INNER JOIN t_cfm_loanbill_e e1 ON e1.floancontractbillid = t2.fid -- 内连接合同拆分表\n" + " INNER JOIN t_cfm_loanbill t3 ON t3.fid = e1.fid -- 银行提款处理表\n" + " INNER JOIN t_cfm_loanbill_rp_entry rpentry ON rpentry.fid = t3.fid -- 银行提款处理明细表\n" + - " INNER JOIN t_cfm_loanbill_t t ON t.fid = t3.fid -- 内连接最新利率拆分表\n" + + " LEFT JOIN (SELECT t_cfm_loanbill_ra_entry.fid, t_cfm_loanbill_ra_entry.fraeffectdate, t_cfm_loanbill_ra_entry.frayearrate FROM t_cfm_loanbill_ra_entry\n" + + "JOIN (SELECT fid, MAX(fraeffectdate) AS latest_date FROM t_cfm_loanbill_ra_entry WHERE fraeffectdate < CURRENT_DATE GROUP BY fid) AS latest_dates\n" + + "ON t_cfm_loanbill_ra_entry.fid = latest_dates.fid AND t_cfm_loanbill_ra_entry.fraeffectdate = latest_dates.latest_date) AS raentry ON raentry.fid = t3.fid -- 最新利率\n" + "WHERE\n" + " t2.fbillstatus='C' AND e.floantype IN ('ec','entrust')\n" + " AND t3.fbillstatus='C'\n" + diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java index ff84bfe..a0925b5 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java @@ -125,7 +125,7 @@ public class transbillreportnewPlugin extends AbstractTmcTreeReportDataPlugin { sumAmountFieldList1.add("downamount"); sumAmountFieldList1.add("shkd_qmye"); sumAmountFieldList1.add("shkd_qmkyye"); - this.setSumAmountFieldList(sumAmountFieldList1); +// this.setSumAmountFieldList(sumAmountFieldList1); //期末余额 dataSet = dataSet.addField("shkd_qcye+upamount- downamount", "shkd_qmye"); dataSet = dataSet.addField("shkd_qckyye+upamount- downamount", "shkd_qmkyye"); From d138467ac697ce20a9da529d95dd03f4abb80693 Mon Sep 17 00:00:00 2001 From: chenshaoxin <1981897232@qq.com> Date: Wed, 23 Apr 2025 10:15:24 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A?= =?UTF-8?q?=E9=99=88=E7=BB=8D=E9=91=AB=20=E6=97=A5=E6=9C=9F=EF=BC=9A2025/4?= =?UTF-8?q?/22=2016=EF=BC=9A30=20=E5=86=85=E5=AE=B9:=E4=B8=8A=E5=88=92?= =?UTF-8?q?=E4=B8=8B=E6=8B=A8=EF=BC=88new=EF=BC=89=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sys/sys/plugin/report/transbillreportnewFormPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewFormPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewFormPlugin.java index 6b5b707..4d637f0 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewFormPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewFormPlugin.java @@ -37,7 +37,7 @@ import kd.tmc.fca.common.enums.StatisCycleEnum; public class transbillreportnewFormPlugin extends AbstractReportFormPlugin implements HyperLinkClickListener { - private static final String[] BANK_DIMENSION = new String[]{"sumlevel", "parentorg", "parentorgid", "bank", "bankid", "sonorg", "sonorgid", "shkd_subacct", "statcurrency", "shkd_qcye","shkd_qckyye", "upamount", "downamount", "differenceamount","shkd_qmye","shkd_qmkyye"}; + private static final String[] BANK_DIMENSION = new String[]{"sumlevel", "parentorg", "parentorgid", "bank", "bankid", "sonorg", "sonorgid", "shkd_subacct", "shkd_subacctnumber","statcurrency", "shkd_qcye","shkd_qckyye", "upamount", "downamount", "differenceamount","shkd_qmye","shkd_qmkyye"}; private static final String[] SON_ORG_DIMENSION = new String[]{"sumlevel", "parentorg", "parentorgid", "sonorg", "sonorgid", "statcurrency", "upamount", "downamount", "differenceamount","shkd_qcamount","shkd_qmamount"}; @Override public void hyperLinkClick(HyperLinkClickEvent evt) { From 11c0e27a8a5b9092dcd141fa36c98094aaf87847 Mon Sep 17 00:00:00 2001 From: chenshaoxin <1981897232@qq.com> Date: Wed, 23 Apr 2025 11:22:13 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A?= =?UTF-8?q?=E9=99=88=E7=BB=8D=E9=91=AB=20=E6=97=A5=E6=9C=9F=EF=BC=9A2025/4?= =?UTF-8?q?/23=2016=EF=BC=9A30=20=E5=86=85=E5=AE=B9:=E4=B8=8A=E5=88=92?= =?UTF-8?q?=E4=B8=8B=E6=8B=A8=EF=BC=88new=EF=BC=89=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sys/plugin/report/transbillreportnewPlugin.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java index a0925b5..ece9585 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/transbillreportnewPlugin.java @@ -118,14 +118,15 @@ public class transbillreportnewPlugin extends AbstractTmcTreeReportDataPlugin { //期末 - List sumAmountFieldList1 = new ArrayList(5); + List sumAmountFieldList1 = new ArrayList(6); sumAmountFieldList1.add("shkd_qcye"); sumAmountFieldList1.add("shkd_qckyye"); sumAmountFieldList1.add("upamount"); sumAmountFieldList1.add("downamount"); sumAmountFieldList1.add("shkd_qmye"); sumAmountFieldList1.add("shkd_qmkyye"); -// this.setSumAmountFieldList(sumAmountFieldList1); + sumAmountFieldList1.add("differenceamount"); + this.setSumAmountFieldList(sumAmountFieldList1); //期末余额 dataSet = dataSet.addField("shkd_qcye+upamount- downamount", "shkd_qmye"); dataSet = dataSet.addField("shkd_qckyye+upamount- downamount", "shkd_qmkyye"); @@ -314,12 +315,12 @@ public class transbillreportnewPlugin extends AbstractTmcTreeReportDataPlugin { // GroupbyDataSet group = dataSet.groupBy(new String[]{"parentorg", "parentorgid", "bank", "bankid","sonorg","sonorgid","shkd_subacct"}); // dataSet = group.sum("shkd_qcamount").finish(); StringBuilder sqlBuilder = new StringBuilder("/*dialect*/ "); - sqlBuilder.append("SELECT faccountbankid as shkd_subacct, fmodifytime,famount as downamount, fvalibalance as upamount,fcurrencyid as currency \n" + + sqlBuilder.append("SELECT faccountbankid as shkd_subacct, fcreatetime,famount as downamount, fvalibalance as upamount,fcurrencyid as currency \n" + "FROM t_bei_bankbalance\n" + - "WHERE (faccountbankid, fmodifytime) IN (\n" + - " SELECT faccountbankid, MAX(fmodifytime)\n" + + "WHERE (faccountbankid, fcreatetime) IN (\n" + + " SELECT faccountbankid, MAX(fcreatetime)\n" + " FROM t_bei_bankbalance\n" + - " WHERE fmodifytime < '"+startdate+"'\n" + + " WHERE fcreatetime < '"+startdate+"'\n" + " GROUP BY faccountbankid\n" + ")"); DataSet res = DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"), sqlBuilder.toString());//财务云 From 48a94c6c6894aa0f3289f41b2b50926756d5c67a Mon Sep 17 00:00:00 2001 From: chenshaoxin <1981897232@qq.com> Date: Wed, 23 Apr 2025 15:39:26 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A?= =?UTF-8?q?=E9=99=88=E7=BB=8D=E9=91=AB=20=E6=97=A5=E6=9C=9F=EF=BC=9A2025/4?= =?UTF-8?q?/23=2016=EF=BC=9A30=20=E5=86=85=E5=AE=B9:=E4=B8=8A=E5=88=92?= =?UTF-8?q?=E4=B8=8B=E6=8B=A8=EF=BC=88new=EF=BC=89=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sys/plugin/report/FinanceReportfordatePlugin.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordatePlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordatePlugin.java index 86d4652..77e7e85 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordatePlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordatePlugin.java @@ -81,6 +81,7 @@ public class FinanceReportfordatePlugin extends AbstractReportListDataPlugin { } HashMap> map = new HashMap<>();//组织层级关系 + List ids = new ArrayList<>(); //如果有组织则单独处理,没有则走getOrgrelate方法 if (shkd_seluserpower==null){ getOrgrelate(map, selorgDy); @@ -95,6 +96,9 @@ public class FinanceReportfordatePlugin extends AbstractReportListDataPlugin { } } + for (Long key : map.keySet()) { + ids.add(key); + } //根据组织关系配置sql StringBuilder sqlBuilder = new StringBuilder("/*dialect*/ "); @@ -104,11 +108,12 @@ public class FinanceReportfordatePlugin extends AbstractReportListDataPlugin { DataSet res = DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"), sqlBuilder.toString());//财务云 + QFilter filter = new QFilter("id", QCP.in, ids); //业务单元数据集 - DataSet balanceDataSet = QueryServiceHelper.queryDataSet(this.getClass().getSimpleName(),"bos_org","id,number as shkd_orgnumber,name as shkd_org", null, null); + DataSet balanceDataSet = QueryServiceHelper.queryDataSet(this.getClass().getSimpleName(),"bos_org","id,number as shkd_orgnumber,name as shkd_org", filter.toArray(), null); - JoinDataSet join = res.join(balanceDataSet, JoinType.INNER);//连接组织 + JoinDataSet join = res.join(balanceDataSet, JoinType.RIGHT);//连接组织 DataSet dataSet = join.on("zz","id").select(new String[]{ "shkd_orgnumber","shkd_org", From 0c671f638f579dd99ea50c91fe14568de1e9a1d4 Mon Sep 17 00:00:00 2001 From: chenshaoxin <1981897232@qq.com> Date: Thu, 24 Apr 2025 10:54:01 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A?= =?UTF-8?q?=E9=99=88=E7=BB=8D=E9=91=AB=20=E6=97=A5=E6=9C=9F=EF=BC=9A2025/4?= =?UTF-8?q?/23=2016=EF=BC=9A30=20=E5=86=85=E5=AE=B9:=E4=B8=8A=E5=88=92?= =?UTF-8?q?=E4=B8=8B=E6=8B=A8=EF=BC=88new=EF=BC=89=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sys/sys/plugin/report/FinanceReportPlugin.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java index 16d23af..aa80a06 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportPlugin.java @@ -21,6 +21,7 @@ import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.MetadataServiceHelper; import kd.bos.servicehelper.QueryServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; import kd.bos.servicehelper.org.OrgUnitServiceHelper; import kd.bos.servicehelper.org.OrgViewType; import kd.bos.util.CollectionUtils; @@ -115,7 +116,15 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { } } - logger.info("sqlBuilder信息:{}", sqlBuilder); + try { + QFilter filter = new QFilter("billno", QCP.equals, "shkd_financereport"); + DynamicObject dataEntity = BusinessDataServiceHelper.loadSingle("shkd_bbrz", filter.toArray()); + dataEntity.set("shkd_sel_tag",listQFilter.toString()); + dataEntity.set("shkd_sqlrizhi_tag",sqlBuilder.toString()); + SaveServiceHelper.save(new DynamicObject[]{dataEntity}); + } catch (Exception e) { + logger.info("sqlBuilder信息:{}", sqlBuilder); + } DataSet res = DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"), sqlBuilder.toString());//财务云