diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordateFormPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordateFormPlugin.java index e3f31f7..15c64ce 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordateFormPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportfordateFormPlugin.java @@ -6,6 +6,7 @@ import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.dataentity.entity.LocaleString; import kd.bos.entity.datamodel.events.PackageDataEvent; import kd.bos.entity.report.*; +import kd.bos.form.ShowType; import kd.bos.form.events.HyperLinkClickEvent; import kd.bos.form.events.HyperLinkClickListener; import kd.bos.orm.query.QCP; @@ -29,7 +30,21 @@ import java.util.*; public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin implements HyperLinkClickListener { @Override public void hyperLinkClick(HyperLinkClickEvent hyperLinkClickEvent) { - + if ("shkd_org".equals(hyperLinkClickEvent.getFieldName())) { + String name = (String) hyperLinkClickEvent.getRowData().get("shkd_org");//公司名称 + DynamicObject selorg = QueryServiceHelper.queryOne("bos_org", "id,name,number", (new QFilter("name", QCP.equals, name)).toArray()); + Long pkValue = selorg.getLong("id"); + DynamicObject single = BusinessDataServiceHelper.loadSingle(pkValue, "bos_org"); + ReportShowParameter parameter = new ReportShowParameter(); + parameter.setCustomParam("shkd_selorg",single.getLong("id")); + parameter.setCustomParam("shkd_selstartdate",this.getModel().getValue("shkd_selstartdate")); + parameter.setCustomParam("shkd_selenddate",this.getModel().getValue("shkd_selenddate")); + parameter.setCustomParam("shkd_selmoney",this.getModel().getValue("shkd_selmoney")); + parameter.setCustomParam("shkd_isone",false); + parameter.setFormId("shkd_financereportfordate"); + parameter.getOpenStyle().setShowType(ShowType.MainNewTabPage); + this.getView().showForm(parameter); + } } @Override @@ -92,12 +107,14 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im super.afterBindData(e); ReportShowParameter formShowParameter = (ReportShowParameter) this.getView().getFormShowParameter(); Object shkd_selorg = formShowParameter.getCustomParam("shkd_selorg"); - Object shkd_seldate = formShowParameter.getCustomParam("shkd_seldate"); + Object shkd_selstartdate = formShowParameter.getCustomParam("shkd_selstartdate"); + Object shkd_selenddate = formShowParameter.getCustomParam("shkd_selenddate"); Object shkd_selmoney = formShowParameter.getCustomParam("shkd_selmoney"); if (shkd_selorg != null) { DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle((Long) shkd_selorg, "bos_org"); this.getView().getModel().setValue("shkd_selorg", dynamicObject); - this.getView().getModel().setValue("shkd_seldate", shkd_seldate); + this.getView().getModel().setValue("shkd_selstartdate", shkd_selstartdate); + this.getView().getModel().setValue("shkd_selenddate", shkd_selenddate); this.getView().getModel().setValue("shkd_selmoney", shkd_selmoney); this.getView().getModel().setValue("shkd_isone", false); this.getView().getModel().setValue("shkd_seluserpower", null); @@ -125,24 +142,19 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im reportColumnGroup = (ReportColumnGroup) child; } catch (Exception e) { String localeValue_zh_cn = child.getCaption().getLocaleValue_zh_CN(); - if (localeValue_zh_cn.contains("金额")){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - child.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + child.setCaption(l); continue; } List children = reportColumnGroup.getChildren(); for (AbstractReportColumn abstractReportColumn : children) { String localeValue_zh_cn = abstractReportColumn.getCaption().getLocaleValue_zh_CN(); - if ("金额".contains(localeValue_zh_cn)){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - abstractReportColumn.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + abstractReportColumn.setCaption(l); } } - //集团内债务融资 List jtnzwrz = ((ReportColumnGroup) columns.get(4)).getChildren(); for (AbstractReportColumn child : jtnzwrz) { @@ -151,24 +163,19 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im reportColumnGroup = (ReportColumnGroup) child; } catch (Exception e) { String localeValue_zh_cn = child.getCaption().getLocaleValue_zh_CN(); - if (localeValue_zh_cn.contains("金额")){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - child.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + child.setCaption(l); continue; } List children = reportColumnGroup.getChildren(); for (AbstractReportColumn abstractReportColumn : children) { String localeValue_zh_cn = abstractReportColumn.getCaption().getLocaleValue_zh_CN(); - if ("金额".contains(localeValue_zh_cn)){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - abstractReportColumn.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + abstractReportColumn.setCaption(l); } } - //债务融资 List zwrz = ((ReportColumnGroup) columns.get(5)).getChildren(); for (AbstractReportColumn child : zwrz) { @@ -177,24 +184,19 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im reportColumnGroup = (ReportColumnGroup) child; } catch (Exception e) { String localeValue_zh_cn = child.getCaption().getLocaleValue_zh_CN(); - if (localeValue_zh_cn.contains("金额")){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - child.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + child.setCaption(l); continue; } List children = reportColumnGroup.getChildren(); for (AbstractReportColumn abstractReportColumn : children) { String localeValue_zh_cn = abstractReportColumn.getCaption().getLocaleValue_zh_CN(); - if ("金额".contains(localeValue_zh_cn)){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - abstractReportColumn.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + abstractReportColumn.setCaption(l); } } - //权益融资 List qyrz = ((ReportColumnGroup) columns.get(6)).getChildren(); for (AbstractReportColumn child : qyrz) { @@ -203,24 +205,19 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im reportColumnGroup = (ReportColumnGroup) child; } catch (Exception e) { String localeValue_zh_cn = child.getCaption().getLocaleValue_zh_CN(); - if (localeValue_zh_cn.contains("金额")){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - child.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + child.setCaption(l); continue; } List children = reportColumnGroup.getChildren(); for (AbstractReportColumn abstractReportColumn : children) { String localeValue_zh_cn = abstractReportColumn.getCaption().getLocaleValue_zh_CN(); - if ("金额".contains(localeValue_zh_cn)){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - abstractReportColumn.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + abstractReportColumn.setCaption(l); } } - //融资(含权益) List rz = ((ReportColumnGroup) columns.get(7)).getChildren(); for (AbstractReportColumn child : rz) { @@ -229,24 +226,19 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im reportColumnGroup = (ReportColumnGroup) child; } catch (Exception e) { String localeValue_zh_cn = child.getCaption().getLocaleValue_zh_CN(); - if (localeValue_zh_cn.contains("金额")){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - child.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + child.setCaption(l); continue; } List children = reportColumnGroup.getChildren(); for (AbstractReportColumn abstractReportColumn : children) { String localeValue_zh_cn = abstractReportColumn.getCaption().getLocaleValue_zh_CN(); - if ("金额".contains(localeValue_zh_cn)){ - LocaleString l = new LocaleString(); - l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); - abstractReportColumn.setCaption(l); - } + LocaleString l = new LocaleString(); + l.put("zh_CN",localeValue_zh_cn+"("+ FinanceVarietyEnum.getshkd_selmoney(shkd_money)+")"); + abstractReportColumn.setCaption(l); } } - return columns; } @@ -263,8 +255,7 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im QFilter filter = new QFilter("shkd_org", QCP.equals, id); DynamicObject paixu = BusinessDataServiceHelper.loadSingle("shkd_orgorderby", filter.toArray()); if (paixu==null){ - //添加“集团内债务融资未抵消“合计行 - addheji(rowData); + }else { DynamicObjectCollection shkd_entryentity = paixu.getDynamicObjectCollection("shkd_entryentity"); // 创建一个HashMap来存储转换后的结果 @@ -286,30 +277,12 @@ public class FinanceReportfordateFormPlugin extends AbstractReportFormPlugin im } }); - //添加“集团内债务融资未抵消“合计行 - addheji(rowData); } } - private void addheji(DynamicObjectCollection rowData){ - BigDecimal shkd_jtnbjkamount=new BigDecimal(0);//⑩集团内部借款金额 - BigDecimal shkd_jtnbjkrzcb=new BigDecimal(0);//⑩集团内部借款融资成本(%) - BigDecimal shkd_jtnbjkqx=new BigDecimal(0);//⑩集团内部借款期限 - for (DynamicObject rowDatum : rowData) { - shkd_jtnbjkamount.subtract(rowDatum.getBigDecimal("shkd_jtnbjkamount")); - shkd_jtnbjkrzcb.subtract(rowDatum.getBigDecimal("shkd_jtnbjkrzcb")); - shkd_jtnbjkqx.subtract(rowDatum.getBigDecimal("shkd_jtnbjkqx")); - } - DynamicObject dynamicObject = new DynamicObject(rowData.getDynamicObjectType()); - dynamicObject.set("shkd_org","合并抵消"); - dynamicObject.set("shkd_jtnbjkamount",shkd_jtnbjkamount); - dynamicObject.set("shkd_jtnbjkrzcb",shkd_jtnbjkrzcb); - dynamicObject.set("shkd_jtnbjkqx",shkd_jtnbjkqx); - rowData.add(dynamicObject); - } private List getSuperOrg(List org){ //组织和其对应直接上级 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 0a71f15..86d4652 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 @@ -1,8 +1,6 @@ package shkd.sys.sys.plugin.report; -import kd.bos.algo.DataSet; -import kd.bos.algo.JoinDataSet; -import kd.bos.algo.JoinType; +import kd.bos.algo.*; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.db.DB; @@ -16,6 +14,7 @@ import kd.bos.logging.Log; import kd.bos.logging.LogFactory; import kd.bos.org.model.OrgTreeBuildType; 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.servicehelper.BusinessDataServiceHelper; @@ -111,8 +110,88 @@ public class FinanceReportfordatePlugin extends AbstractReportListDataPlugin { JoinDataSet join = res.join(balanceDataSet, JoinType.INNER);//连接组织 + DataSet dataSet = join.on("zz","id").select(new String[]{ + "shkd_orgnumber","shkd_org", + "shkd_zqrzqcye/ "+shkd_selmoney+" as shkd_zqrzqcye", "shkd_zqrzxzrze/ "+shkd_selmoney+" as shkd_zqrzxzrze", "shkd_zqrzxzhke/ "+shkd_selmoney+" as shkd_zqrzxzhke", "shkd_zqrzqmye/ "+shkd_selmoney+" as shkd_zqrzqmye",//①债券融资 + "shkd_dqjkqcye/ "+shkd_selmoney+" as shkd_dqjkqcye", "shkd_dqjkxzrze/ "+shkd_selmoney+" as shkd_dqjkxzrze", "shkd_dqjkxzhke/ "+shkd_selmoney+" as shkd_dqjkxzhke", "shkd_dqjkqmye/ "+shkd_selmoney+" as shkd_dqjkqmye",//②短期借款 + "shkd_zcqldqcye/ "+shkd_selmoney+" as shkd_zcqldqcye", "shkd_zcqldxzrze/ "+shkd_selmoney+" as shkd_zcqldxzrze", "shkd_zcqldxzhke/ "+shkd_selmoney+" as shkd_zcqldxzhke", "shkd_zcqldqmye/ "+shkd_selmoney+" as shkd_zcqldqmye",//③中长期流贷 + "shkd_xmdkqcye/ "+shkd_selmoney+" as shkd_xmdkqcye", "shkd_xmdkxzrze/ "+shkd_selmoney+" as shkd_xmdkxzrze", "shkd_xmdkxzhke/ "+shkd_selmoney+" as shkd_xmdkxzhke", "shkd_xmdkqmye/ "+shkd_selmoney+" as shkd_xmdkqmye",//④项目贷款 + "shkd_rzzlqcye/ "+shkd_selmoney+" as shkd_rzzlqcye", "shkd_rzzlxzrze/ "+shkd_selmoney+" as shkd_rzzlxzrze", "shkd_rzzlxzhke/ "+shkd_selmoney+" as shkd_rzzlxzhke", "shkd_rzzlqmye/ "+shkd_selmoney+" as shkd_rzzlqmye",//⑤融资租赁 + "shkd_bxzjrzqcye/ "+shkd_selmoney+" as shkd_bxzjrzqcye", "shkd_bxzjrzxzrze/ "+shkd_selmoney+" as shkd_bxzjrzxzrze", "shkd_bxzjrzxzhke/ "+shkd_selmoney+" as shkd_bxzjrzxzhke", "shkd_bxzjrzqmye/ "+shkd_selmoney+" as shkd_bxzjrzqmye",//⑥保险资金融资 + "shkd_yfpjqcye/ "+shkd_selmoney+" as shkd_yfpjqcye", "shkd_yfpjxzrze/ "+shkd_selmoney+" as shkd_yfpjxzrze", "shkd_yfpjxzhke/ "+shkd_selmoney+" as shkd_yfpjxzhke", "shkd_yfpjqmye/ "+shkd_selmoney+" as shkd_yfpjqmye",//⑦应付票据 + "shkd_fjrqyjkqcye/ "+shkd_selmoney+" as shkd_fjrqyjkqcye", "shkd_fjrqyjkxzrze/ "+shkd_selmoney+" as shkd_fjrqyjkxzrze", "shkd_fjrqyjkxzhke/ "+shkd_selmoney+" as shkd_fjrqyjkxzhke", "shkd_fjrqyjkqmye/ "+shkd_selmoney+" as shkd_fjrqyjkqmye",//⑧非金融企业借款 + "shkd_qtzwrzqcye/ "+shkd_selmoney+" as shkd_qtzwrzqcye", "shkd_qtzwrzxzrze/ "+shkd_selmoney+" as shkd_qtzwrzxzrze", "shkd_qtzwrzxzhke/ "+shkd_selmoney+" as shkd_qtzwrzxzhke", "shkd_qtzwrzqmye/ "+shkd_selmoney+" as shkd_qtzwrzqmye",//⑨其他债务融资 + "shkd_jtnbjkqcye/ "+shkd_selmoney+" as shkd_jtnbjkqcye", "shkd_jtnbjkxzrze/ "+shkd_selmoney+" as shkd_jtnbjkxzrze", "shkd_jtnbjkxzhke/ "+shkd_selmoney+" as shkd_jtnbjkxzhke", "shkd_jtnbjkqmye/ "+shkd_selmoney+" as shkd_jtnbjkqmye",//⑩集团内部借款 + "shkd_yxzqcye/ "+shkd_selmoney+" as shkd_yxzqcye", "shkd_yxzxzrze/ "+shkd_selmoney+" as shkd_yxzxzrze", "shkd_yxzxzhke/ "+shkd_selmoney+" as shkd_yxzxzhke", "shkd_yxzqmye/ "+shkd_selmoney+" as shkd_yxzqmye",//⑪永续债 + "shkd_yxxtqcye/ "+shkd_selmoney+" as shkd_yxxtqcye", "shkd_yxxtxzrze/ "+shkd_selmoney+" as shkd_yxxtxzrze", "shkd_yxxtxzhke/ "+shkd_selmoney+" as shkd_yxxtxzhke", "shkd_yxxtqmye/ "+shkd_selmoney+" as shkd_yxxtqmye",//⑫永续信托 + "shkd_qtqyrzqcye/ "+shkd_selmoney+" as shkd_qtqyrzqcye", "shkd_qtqyrzxzrze/ "+shkd_selmoney+" as shkd_qtqyrzxzrze", "shkd_qtqyrzxzhke/ "+shkd_selmoney+" as shkd_qtqyrzxzhke", "shkd_qtqyrzqmye/ "+shkd_selmoney+" as shkd_qtqyrzqmye",//⑬其他权益融资 + //1至9合计 + "(shkd_zqrzqcye+shkd_dqjkqcye+shkd_zcqldqcye+shkd_xmdkqcye+shkd_rzzlqcye+shkd_bxzjrzqcye+shkd_yfpjqcye+shkd_fjrqyjkqcye+shkd_qtzwrzqcye)/"+shkd_selmoney+" as shkd_1to9qcye", + "(shkd_zqrzxzrze+shkd_dqjkxzrze+shkd_zcqldxzrze+shkd_xmdkxzrze+shkd_rzzlxzrze+shkd_bxzjrzxzrze+shkd_yfpjxzrze+shkd_fjrqyjkxzrze+shkd_qtzwrzxzrze)/"+shkd_selmoney+" as shkd_1to9xzrze", + "(shkd_zqrzxzhke+shkd_dqjkxzhke+shkd_zcqldxzhke+shkd_xmdkxzhke+shkd_rzzlxzhke+shkd_bxzjrzxzhke+shkd_yfpjxzhke+shkd_fjrqyjkxzhke+shkd_qtzwrzxzhke)/"+shkd_selmoney+" as shkd_1to9xzhke", + "(shkd_zqrzqmye+shkd_dqjkqmye+shkd_zcqldqmye+shkd_xmdkqmye+shkd_rzzlqmye+shkd_bxzjrzqmye+shkd_yfpjqmye+shkd_fjrqyjkqmye+shkd_qtzwrzqmye)/"+shkd_selmoney+" as shkd_1to9qmye", + //1至10合计 + "(shkd_zqrzqcye+shkd_dqjkqcye+shkd_zcqldqcye+shkd_xmdkqcye+shkd_rzzlqcye+shkd_bxzjrzqcye+shkd_yfpjqcye+shkd_fjrqyjkqcye+shkd_qtzwrzqcye+shkd_jtnbjkqcye)/"+shkd_selmoney+" as shkd_1to10qcye", + "(shkd_zqrzxzrze+shkd_dqjkxzrze+shkd_zcqldxzrze+shkd_xmdkxzrze+shkd_rzzlxzrze+shkd_bxzjrzxzrze+shkd_yfpjxzrze+shkd_fjrqyjkxzrze+shkd_qtzwrzxzrze+shkd_jtnbjkxzrze)/"+shkd_selmoney+" as shkd_1to10xzrze", + "(shkd_zqrzxzhke+shkd_dqjkxzhke+shkd_zcqldxzhke+shkd_xmdkxzhke+shkd_rzzlxzhke+shkd_bxzjrzxzhke+shkd_yfpjxzhke+shkd_fjrqyjkxzhke+shkd_qtzwrzxzhke+shkd_jtnbjkxzhke)/"+shkd_selmoney+" as shkd_1to10xzhke", + "(shkd_zqrzqmye+shkd_dqjkqmye+shkd_zcqldqmye+shkd_xmdkqmye+shkd_rzzlqmye+shkd_bxzjrzqmye+shkd_yfpjqmye+shkd_fjrqyjkqmye+shkd_qtzwrzqmye+shkd_jtnbjkqmye)/"+shkd_selmoney+" as shkd_1to10qmye", + //11至13合计 + "(shkd_yxzqcye+shkd_yxxtqcye+shkd_qtqyrzqcye)/"+shkd_selmoney+" as shkd_11to13qcye", + "(shkd_yxzxzrze+shkd_yxxtxzrze+shkd_qtqyrzxzrze)/"+shkd_selmoney+" as shkd_11to13xzrze", + "(shkd_yxzxzhke+shkd_yxxtxzhke+shkd_qtqyrzxzhke)/"+shkd_selmoney+" as shkd_11to13xzhke", + "(shkd_yxzqmye+shkd_yxxtqmye+shkd_qtqyrzqmye)/"+shkd_selmoney+" as shkd_11to13qmye", + //1至13合计 + "(shkd_zqrzqcye+shkd_dqjkqcye+shkd_zcqldqcye+shkd_xmdkqcye+shkd_rzzlqcye+shkd_bxzjrzqcye+shkd_yfpjqcye+shkd_fjrqyjkqcye+shkd_qtzwrzqcye+shkd_jtnbjkqcye+shkd_yxzqcye+shkd_yxxtqcye+shkd_qtqyrzqcye)/"+shkd_selmoney+" as shkd_1to13qcye", + "(shkd_zqrzxzrze+shkd_dqjkxzrze+shkd_zcqldxzrze+shkd_xmdkxzrze+shkd_rzzlxzrze+shkd_bxzjrzxzrze+shkd_yfpjxzrze+shkd_fjrqyjkxzrze+shkd_qtzwrzxzrze+shkd_jtnbjkxzrze+shkd_yxzxzrze+shkd_yxxtxzrze+shkd_qtqyrzxzrze)/"+shkd_selmoney+" as shkd_1to13xzrze", + "(shkd_zqrzxzhke+shkd_dqjkxzhke+shkd_zcqldxzhke+shkd_xmdkxzhke+shkd_rzzlxzhke+shkd_bxzjrzxzhke+shkd_yfpjxzhke+shkd_fjrqyjkxzhke+shkd_qtzwrzxzhke+shkd_jtnbjkxzhke+shkd_yxzxzhke+shkd_yxxtxzhke+shkd_qtqyrzxzhke)/"+shkd_selmoney+" as shkd_1to13xzhke", + "(shkd_zqrzqmye+shkd_dqjkqmye+shkd_zcqldqmye+shkd_xmdkqmye+shkd_rzzlqmye+shkd_bxzjrzqmye+shkd_yfpjqmye+shkd_fjrqyjkqmye+shkd_qtzwrzqmye+shkd_jtnbjkqmye+shkd_yxzqmye+shkd_yxxtqmye+shkd_qtqyrzqmye)/"+shkd_selmoney+" as shkd_1to13qmye" + }).finish(); - return null; + DataSet dataSet2 = dataSet.groupBy(null).sum("shkd_jtnbjkqcye").sum("shkd_jtnbjkxzrze").sum("shkd_jtnbjkxzhke").sum("shkd_jtnbjkqmye").finish(); + + DataSet ds = dataSet2.addField("'合并抵消'","shkd_org").addField("''","shkd_orgnumber"); + ds.addFields(new String[]{},new String[]{}); + ds = ds.addNullField( + "shkd_zqrzqcye","shkd_zqrzxzrze","shkd_zqrzxzhke","shkd_zqrzqmye", + "shkd_dqjkqcye","shkd_dqjkxzrze","shkd_dqjkxzhke","shkd_dqjkqmye", + "shkd_zcqldqcye","shkd_zcqldxzrze","shkd_zcqldxzhke","shkd_zcqldqmye", + "shkd_xmdkqcye","shkd_xmdkxzrze","shkd_xmdkxzhke","shkd_xmdkqmye", + "shkd_rzzlqcye","shkd_rzzlxzrze","shkd_rzzlxzhke","shkd_rzzlqmye", + "shkd_bxzjrzqcye","shkd_bxzjrzxzrze","shkd_bxzjrzxzhke","shkd_bxzjrzqmye", + "shkd_yfpjqcye","shkd_yfpjxzrze","shkd_yfpjxzhke","shkd_yfpjqmye", + "shkd_fjrqyjkqcye","shkd_fjrqyjkxzrze","shkd_fjrqyjkxzhke","shkd_fjrqyjkqmye", + "shkd_qtzwrzqcye","shkd_qtzwrzxzrze","shkd_qtzwrzxzhke","shkd_qtzwrzqmye", + + "shkd_yxzqcye","shkd_yxzxzrze","shkd_yxzxzhke","shkd_yxzqmye", + "shkd_yxxtqcye","shkd_yxxtxzrze","shkd_yxxtxzhke","shkd_yxxtqmye", + "shkd_qtqyrzqcye","shkd_qtqyrzxzrze","shkd_qtqyrzxzhke","shkd_qtqyrzqmye", + "shkd_1to9qcye","shkd_1to9xzrze","shkd_1to9xzhke","shkd_1to9qmye", + "shkd_1to10qcye","shkd_1to10xzrze","shkd_1to10xzhke","shkd_1to10qmye", + "shkd_11to13qcye","shkd_11to13xzrze","shkd_11to13xzhke","shkd_11to13qmye", + "shkd_1to13qcye","shkd_1to13xzrze","shkd_1to13xzhke","shkd_1to13qmye" + ); + ds=ds.select( + "shkd_orgnumber","shkd_org", + "shkd_zqrzqcye","shkd_zqrzxzrze","shkd_zqrzxzhke","shkd_zqrzqmye", + "shkd_dqjkqcye","shkd_dqjkxzrze","shkd_dqjkxzhke","shkd_dqjkqmye", + "shkd_zcqldqcye","shkd_zcqldxzrze","shkd_zcqldxzhke","shkd_zcqldqmye", + "shkd_xmdkqcye","shkd_xmdkxzrze","shkd_xmdkxzhke","shkd_xmdkqmye", + "shkd_rzzlqcye","shkd_rzzlxzrze","shkd_rzzlxzhke","shkd_rzzlqmye", + "shkd_bxzjrzqcye","shkd_bxzjrzxzrze","shkd_bxzjrzxzhke","shkd_bxzjrzqmye", + "shkd_yfpjqcye","shkd_yfpjxzrze","shkd_yfpjxzhke","shkd_yfpjqmye", + "shkd_fjrqyjkqcye","shkd_fjrqyjkxzrze","shkd_fjrqyjkxzhke","shkd_fjrqyjkqmye", + "shkd_qtzwrzqcye","shkd_qtzwrzxzrze","shkd_qtzwrzxzhke","shkd_qtzwrzqmye", + "shkd_jtnbjkqcye*-1 as shkd_jtnbjkqcye","shkd_jtnbjkxzrze*-1 as shkd_jtnbjkxzrze","shkd_jtnbjkxzhke*-1 as shkd_jtnbjkxzhke","shkd_jtnbjkqmye*-1 as shkd_jtnbjkqmye", + "shkd_yxzqcye","shkd_yxzxzrze","shkd_yxzxzhke","shkd_yxzqmye", + "shkd_yxxtqcye","shkd_yxxtxzrze","shkd_yxxtxzhke","shkd_yxxtqmye", + "shkd_qtqyrzqcye","shkd_qtqyrzxzrze","shkd_qtqyrzxzhke","shkd_qtqyrzqmye", + "shkd_1to9qcye","shkd_1to9xzrze","shkd_1to9xzhke","shkd_1to9qmye", + "shkd_1to10qcye","shkd_1to10xzrze","shkd_1to10xzhke","shkd_1to10qmye", + "shkd_11to13qcye","shkd_11to13xzrze","shkd_11to13xzhke","shkd_11to13qmye", + "shkd_1to13qcye","shkd_1to13xzrze","shkd_1to13xzhke","shkd_1to13qmye"); + DataSet union = dataSet.union(ds); + + return union; } public StringBuilder getSQlBuilder(String shkd_selstartdate,String shkd_selenddate,HashMap> map,StringBuilder sqlBuilder){ @@ -151,10 +230,65 @@ public class FinanceReportfordatePlugin extends AbstractReportListDataPlugin { " SUM(CASE WHEN djlx='债券发行' AND rzpz in ("+zqrz+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_zqrzxzhke,\n" + " SUM(CASE WHEN djlx='债券发行' AND rzpz in ("+zqrz+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_zqrzqmye, \n");//①债券融资 - sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND starttime <= '"+shkd_selstartdate+" AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS ②短期借款期初余额,\n" + - " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS ②短期借款新增融资额,\n" + - " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS ②短期借款新增还款额,\n" + - " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS ②短期借款期末余额,");//②短期借款 + sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_dqjkqcye,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_dqjkxzrze,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_dqjkxzhke,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+dqjk+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_dqjkqmye,\n");//②短期借款 + + sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+zcqld+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_zcqldqcye,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+zcqld+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_zcqldxzrze,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+zcqld+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_zcqldxzhke,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+zcqld+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_zcqldqmye,\n");//③中长期流贷 + + sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+xmdk+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_xmdkqcye,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+xmdk+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_xmdkxzrze,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+xmdk+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_xmdkxzhke,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+xmdk+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_xmdkqmye,\n");//④项目贷款 + + sqlBuilder.append("SUM(CASE WHEN djlx='融资租赁合同' AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_rzzlqcye,\n" + + " SUM(CASE WHEN djlx='融资租赁合同' AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_rzzlxzrze,\n" + + " SUM(CASE WHEN djlx='融资租赁合同' AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_rzzlxzhke,\n" + + " SUM(CASE WHEN djlx='融资租赁合同' AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_rzzlqmye,\n");//⑤融资租赁 + + sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+bxzjrz+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_bxzjrzqcye,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+bxzjrz+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_bxzjrzxzrze,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+bxzjrz+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_bxzjrzxzhke,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+bxzjrz+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_bxzjrzqmye,\n");//⑥保险资金融资 + + sqlBuilder.append("SUM(CASE WHEN djlx='开票登记' AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_yfpjqcye,\n" + + " SUM(CASE WHEN djlx='开票登记' AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yfpjxzrze,\n" + + " SUM(CASE WHEN djlx='开票登记' AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yfpjxzhke,\n" + + " SUM(CASE WHEN djlx='开票登记' AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yfpjqmye,\n");//⑦应付票据 + + sqlBuilder.append("SUM(CASE WHEN djlx='企业借款合同' AND zqrlx<>'innerunit' AND rzpz in ("+fjrqyjk+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_fjrqyjkqcye,\n" + + " SUM(CASE WHEN djlx='企业借款合同' AND zqrlx<>'innerunit' AND rzpz in ("+fjrqyjk+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_fjrqyjkxzrze,\n" + + " SUM(CASE WHEN djlx='企业借款合同' AND zqrlx<>'innerunit' AND rzpz in ("+fjrqyjk+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_fjrqyjkxzhke,\n" + + " SUM(CASE WHEN djlx='企业借款合同' AND zqrlx<>'innerunit' AND rzpz in ("+fjrqyjk+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_fjrqyjkqmye,\n");//⑧非金融企业借款 + + sqlBuilder.append("SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtzwrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtzwrz.get("银行借款合同")+"))) AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_qtzwrzqcye,\n" + + " SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtzwrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtzwrz.get("银行借款合同")+"))) AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_qtzwrzxzrze,\n" + + " SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtzwrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtzwrz.get("银行借款合同")+"))) AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_qtzwrzxzhke,\n" + + " SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtzwrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtzwrz.get("银行借款合同")+"))) AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_qtzwrzqmye,\n");//⑨其他债务融资 + + sqlBuilder.append("SUM(CASE WHEN djlx='企业借款合同' AND zqrlx='innerunit' AND rzpz in ("+jtnbjk+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_jtnbjkqcye,\n" + + " SUM(CASE WHEN djlx='企业借款合同' AND zqrlx='innerunit' AND rzpz in ("+jtnbjk+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_jtnbjkxzrze,\n" + + " SUM(CASE WHEN djlx='企业借款合同' AND zqrlx='innerunit' AND rzpz in ("+jtnbjk+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_jtnbjkxzhke,\n" + + " SUM(CASE WHEN djlx='企业借款合同' AND zqrlx='innerunit' AND rzpz in ("+jtnbjk+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_jtnbjkqmye,\n");//⑩集团内部借款 + + sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxd+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_yxzqcye,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxd+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yxzxzrze,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxd+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yxzxzhke,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxd+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yxzqmye,\n");//⑪永续债 + + sqlBuilder.append("SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxxt+") AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_yxxtqcye,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxxt+") AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yxxtxzrze,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxxt+") AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yxxtxzhke,\n" + + " SUM(CASE WHEN djlx='银行借款合同' AND rzpz in ("+yxxt+") AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_yxxtqmye,\n");//⑫永续信托 + + sqlBuilder.append("SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtqyrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtqyrz.get("银行借款合同")+"))) AND starttime <= '"+shkd_selstartdate+"' AND endtime > '"+shkd_selstartdate+"' THEN je ELSE 0 END ) AS shkd_qtqyrzqcye,\n" + + " SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtqyrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtqyrz.get("银行借款合同")+"))) AND starttime > '"+shkd_selstartdate+"' AND starttime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_qtqyrzxzrze,\n" + + " SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtqyrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtqyrz.get("银行借款合同")+"))) AND endtime > '"+shkd_selstartdate+"' AND endtime <= '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_qtqyrzxzhke,\n" + + " SUM(CASE WHEN ((djlx='债券发行' AND rzpz in ("+qtqyrz.get("债券发行")+")) OR (djlx='银行借款合同' AND rzpz in ("+qtqyrz.get("银行借款合同")+"))) AND starttime <= '"+shkd_selenddate+"' AND endtime > '"+shkd_selenddate+"' THEN je ELSE 0 END ) AS shkd_qtqyrzqmye, \n");//⑨其他债务融资 sqlBuilder.append("zz \n"); @@ -224,7 +358,7 @@ public class FinanceReportfordatePlugin extends AbstractReportListDataPlugin { " t2.fbillstatus='C' AND e.floantype IN ('ec','entrust')\n" + " AND t3.fbillstatus='C'\n" + " ) AS hbb\n" + - " GROUP BY zz"); + " WHERE zz IS NOT NULL GROUP BY zz"); return sqlBuilder;