diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportFormPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportFormPlugin.java index ffa3168..5b5cd07 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportFormPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/FinanceReportFormPlugin.java @@ -1,5 +1,6 @@ package shkd.sys.sys.plugin.report; +import com.alibaba.fastjson.JSONObject; import kd.bos.bill.BillShowParameter; import kd.bos.bill.OperationStatus; import kd.bos.dataentity.entity.DynamicObject; @@ -7,14 +8,12 @@ import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.dataentity.entity.LocaleString; import kd.bos.entity.datamodel.IDataModel; import kd.bos.entity.datamodel.events.PackageDataEvent; -import kd.bos.entity.report.FilterInfo; -import kd.bos.entity.report.FilterItemInfo; -import kd.bos.entity.report.ReportColumn; -import kd.bos.entity.report.ReportQueryParam; +import kd.bos.entity.report.*; import kd.bos.entity.report.queryds.ReportFilterField; import kd.bos.entity.report.queryds.ReportFilterFieldConfig; import kd.bos.filter.FilterColumn; import kd.bos.form.ClientProperties; +import kd.bos.form.CloseCallBack; import kd.bos.form.FormShowParameter; import kd.bos.form.ShowType; import kd.bos.form.control.events.BeforeItemClickEvent; @@ -22,16 +21,21 @@ import kd.bos.form.control.events.FilterContainerInitEvent; import kd.bos.form.events.HyperLinkClickEvent; import kd.bos.form.events.HyperLinkClickListener; import kd.bos.form.plugin.AbstractFormPlugin; +import kd.bos.mvc.form.FormView; +import kd.bos.mvc.report.ReportView; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.report.ReportList; +import kd.bos.report.ReportShowParameter; +import kd.bos.report.events.CreateColumnEvent; +import kd.bos.report.events.SortAndFilterEvent; import kd.bos.report.filter.ReportFilter; import kd.bos.report.plugin.AbstractReportFormPlugin; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.QueryServiceHelper; import kd.bos.servicehelper.org.OrgUnitServiceHelper; import kd.bos.servicehelper.org.OrgViewType; -import org.apache.commons.lang3.time.DateUtils; +import shkd.sys.sys.plugin.report.domain.FinanceVarietyEnum; import java.text.SimpleDateFormat; import java.util.*; @@ -40,17 +44,6 @@ public class FinanceReportFormPlugin extends AbstractReportFormPlugin implement @Override public void packageData(PackageDataEvent evt) { -// if ("shkd_orgnumber".equals(((ReportColumn)evt.getSource()).getFieldKey())){ -// String formatValue = (String)evt.getFormatValue(); -// DynamicObject selorg = QueryServiceHelper.queryOne("bos_org", "id,name,number", (new QFilter("number", QCP.equals, formatValue)).toArray()); -// Long pkValue = selorg.getLong("id"); -// List orgIds = new ArrayList<>(1); -// orgIds.add(pkValue); -// List allSubordinateOrgs = OrgUnitServiceHelper.getAllSubordinateOrgs(OrgViewType.OrgUnit, orgIds, false);//不包括自己 -// if (allSubordinateOrgs.size()==0){ -// evt.getNoLinkKey().add(((ReportColumn)evt.getSource()).getFieldKey()); -// } -// } if ("shkd_org".equals(((ReportColumn)evt.getSource()).getFieldKey())){ String formatValue = (String)evt.getFormatValue(); DynamicObject selorg = QueryServiceHelper.queryOne("bos_org", "id,name,number", (new QFilter("name", QCP.equals, formatValue)).toArray()); @@ -106,13 +99,16 @@ public class FinanceReportFormPlugin extends AbstractReportFormPlugin implement this.getModel().setValue("shkd_selorg",single); filter.search(); } else if ("shkd_org".equals(hyperLinkClickEvent.getFieldName())) { - ReportFilter filter =this.getView().getControl("reportfilterap"); 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"); - this.getModel().setValue("shkd_selorg",single); - filter.search(); + ReportShowParameter parameter = new ReportShowParameter(); + parameter.setCustomParam("shkd_selorg",single.getLong("id")); + parameter.setCustomParam("shkd_seldate",this.getModel().getValue("shkd_seldate")); + parameter.setFormId("shkd_financereport"); + parameter.getOpenStyle().setShowType(ShowType.MainNewTabPage); + this.getView().showForm(parameter); } } @@ -121,4 +117,207 @@ public class FinanceReportFormPlugin extends AbstractReportFormPlugin implement protected void filterContainerInit(FilterContainerInitEvent contInitEvent, ReportQueryParam queryParam) { super.filterContainerInit(contInitEvent, queryParam); } + + @Override + public void afterBindData(EventObject e) { + super.afterBindData(e); + ReportShowParameter formShowParameter = (ReportShowParameter) this.getView().getFormShowParameter(); + Object shkd_selorg = formShowParameter.getCustomParam("shkd_selorg"); + Object shkd_seldate = formShowParameter.getCustomParam("shkd_seldate"); + if (shkd_selorg != null) { + this.getModel().setValue("shkd_selorg", shkd_selorg); + this.getModel().setValue("shkd_seldate", shkd_seldate); + ReportFilter filter = this.getView().getControl("reportfilterap");//调用页面的自动查询 + filter.search(); + } + } + + @Override + public void afterCreateColumn(CreateColumnEvent event) { + super.afterCreateColumn(event); + ReportQueryParam queryParam = event.getQueryParam(); + FilterInfo filter = queryParam.getFilter(); + String shkd_money = filter.getString("shkd_selmoney"); + List columns = event.getColumns(); + getColumns( columns,shkd_money); + } + + public List getColumns(List columns,String shkd_money) { + //集团外债务融资 + List jtwzwrz = ((ReportColumnGroup) columns.get(3)).getChildren(); + for (AbstractReportColumn child : jtwzwrz) { + ReportColumnGroup reportColumnGroup= null; + try { + 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); + } + 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); + } + } + } + + //集团内债务融资 + List jtnzwrz = ((ReportColumnGroup) columns.get(4)).getChildren(); + for (AbstractReportColumn child : jtnzwrz) { + ReportColumnGroup reportColumnGroup= null; + try { + 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); + } + 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); + } + } + } + + //债务融资 + List zwrz = ((ReportColumnGroup) columns.get(5)).getChildren(); + for (AbstractReportColumn child : zwrz) { + ReportColumnGroup reportColumnGroup= null; + try { + 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); + } + 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); + } + } + } + + //权益融资 + List qyrz = ((ReportColumnGroup) columns.get(6)).getChildren(); + for (AbstractReportColumn child : qyrz) { + ReportColumnGroup reportColumnGroup= null; + try { + 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); + } + 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); + } + } + } + + //融资(含权益) + List rz = ((ReportColumnGroup) columns.get(7)).getChildren(); + for (AbstractReportColumn child : rz) { + ReportColumnGroup reportColumnGroup= null; + try { + 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); + } + 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); + } + } + } + + return columns; + } + + @Override + public void processRowData(String gridPK, DynamicObjectCollection rowData, ReportQueryParam queryParam) { + super.processRowData(gridPK, rowData, queryParam); + + if (rowData.size()==0){ + return; + } + //获取排序配置 + DynamicObject shkd_selorg = (DynamicObject) this.getModel().getValue("shkd_selorg"); + long id = shkd_selorg.getLong("id"); + QFilter filter = new QFilter("shkd_org", QCP.equals, id); + DynamicObject paixu = BusinessDataServiceHelper.loadSingle("shkd_orgorderby", filter.toArray()); + if (paixu==null){ + return; + } + DynamicObjectCollection shkd_entryentity = paixu.getDynamicObjectCollection("shkd_entryentity"); + // 创建一个HashMap来存储转换后的结果 + Map map = new HashMap<>(); + int s=0; + // 假设你可以通过遍历DynamicObjectCollection,来获取其中的元素 + for (DynamicObject obj : shkd_entryentity) { + DynamicObject key = obj.getDynamicObject("shkd_ywdy"); + int value = s++; + map.put(key.getString("number"), value); // 将键值对放入HashMap + } + + //按字段 组织配置 排序 + + Collections.sort(rowData , new Comparator(){ + + @Override + + public int compare(DynamicObject dynamicObject1, DynamicObject dynamicObject2) { + + return (map.get(dynamicObject1.getString("shkd_orgnumber"))==null?100:map.get(dynamicObject1.getString("shkd_orgnumber")))-(map.get(dynamicObject2.getString("shkd_orgnumber"))==null?100:map.get(dynamicObject2.getString("shkd_orgnumber"))); + +// return dynamicObject1.getInt("menuindex")-dynamicObject2.getInt("menuindex"); + + } + + }); + } + } + 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 bb9f883..bdb0fdf 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 @@ -5,13 +5,11 @@ import kd.bos.algo.JoinDataSet; import kd.bos.algo.JoinType; 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.MainEntityType; -import kd.bos.entity.report.AbstractReportListDataPlugin; -import kd.bos.entity.report.FastFilter; -import kd.bos.entity.report.FilterItemInfo; -import kd.bos.entity.report.ReportQueryParam; +import kd.bos.entity.report.*; import kd.bos.entity.tree.TreeNode; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; @@ -67,12 +65,15 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { List listQFilter = getListQFilter(reportQueryParam); List dateList = new ArrayList<>(); DynamicObject selorgDy = null; + Double shkd_selmoney=0.0; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); for (QFilter filter : listQFilter) { if (filter.getProperty().contains("shkd_selorg")) { selorgDy= (DynamicObject) filter.getValue(); } else if (filter.getProperty().contains("shkd_seldate")) { dateList.add(sdf.format(filter.getValue())); + } else if (filter.getProperty().contains("shkd_selmoney")) { + shkd_selmoney= Double.parseDouble((String) filter.getValue()); } } @@ -109,44 +110,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_zqrzrzcb","shkd_zqrzqx", - "shkd_dqjkamount","shkd_dqjkrzcb","shkd_dqjkqx", - "shkd_zcqldamount","shkd_zcqldrzcb","shkd_zcqldqx", - "shkd_xmdkamount","shkd_xmdkrzcb","shkd_xmdkqx", - "shkd_rzzlamount","shkd_rzzlrzcb","shkd_rzzlqx", - "shkd_bxzjrzamount","shkd_bxzjrzrzcb","shkd_bxzjrzqx", - "shkd_yfpjamount","shkd_yfpjrzcb","shkd_yfpjqx", - "shkd_fjrqyjkamount","shkd_fjrqyjkrzcb","shkd_fjrqyjkqx", - "shkd_qtzwrzamount","shkd_qtzwrzrzcb","shkd_qtzwrzqx", - "shkd_jtnbjkamount","shkd_jtnbjkrzcb","shkd_jtnbjkqx", - "shkd_yxzamount","shkd_yxzrzcb","shkd_yxzqx", - "shkd_yxxtamount","shkd_yxxtrzcb","shkd_yxxtqx", - "shkd_qtqyrzamount","shkd_qtqyrzrzcb","shkd_qtqyrzqx", + "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", //1至9合计 - "shkd_zqrzamount+shkd_dqjkamount+shkd_zcqldamount+shkd_xmdkamount+shkd_rzzlamount+shkd_bxzjrzamount+shkd_yfpjamount+shkd_fjrqyjkamount+shkd_qtzwrzamount as shkd_oneotnineje", + "(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)/(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)*100/(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 as shkd_oneottenje", + "(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)/(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)*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", "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 as shkd_11to13je", + "(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)/(shkd_yxzamount+shkd_yxxtamount+shkd_qtqyrzamount) end as shkd_11to13rzcb", + "(shkd_yxzamount*shkd_yxzrzcb+shkd_yxxtamount*shkd_yxxtrzcb+shkd_qtqyrzamount*shkd_qtqyrzrzcb)*100/(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 as shkd_1to13je", + "(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)/(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)*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", "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(); @@ -331,7 +332,6 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { " and rpentry.fexrepaymentdate > '"+dateList.get(0)+"' \n");//企业借款合同 sqlBuilder.append(") AS hbb"); - return sqlBuilder; } @@ -386,4 +386,5 @@ public class FinanceReportPlugin extends AbstractReportListDataPlugin { return resmap; } + } diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/domain/FinanceVarietyEnum.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/domain/FinanceVarietyEnum.java index 67cd093..d0d8323 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/domain/FinanceVarietyEnum.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/report/domain/FinanceVarietyEnum.java @@ -47,4 +47,23 @@ public class FinanceVarietyEnum { put("债券发行", new ArrayList<>(Arrays.asList("并表ABN"))); put("银行借款合同", new ArrayList<>(Arrays.asList("其他权益融资"))); }}; + + public static String getshkd_selmoney( String shkd_selmoney ){ + if ("1".equals(shkd_selmoney)){ + return "元"; + } else if ("1000".equals(shkd_selmoney)) { + return "千元"; + }else if ("10000".equals(shkd_selmoney)) { + return "万元"; + }else if ("1000000".equals(shkd_selmoney)) { + return "百万元"; + }else if ("10000000".equals(shkd_selmoney)) { + return "千万元"; + }else if ("100000000".equals("shkd_selmoney")) { + return "亿元"; + } + else { + return "元"; + } + } }