From 69598c46fa71a6800efd50a3949e12df1b4c716d Mon Sep 17 00:00:00 2001 From: zhangzhiguo <421587375@qq.com> Date: Tue, 21 Oct 2025 09:39:43 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=84=E9=87=91=E8=AE=A1=E5=88=92=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=E7=A7=91=E7=9B=AE=E4=BD=99=E9=A2=9D=E5=8F=96=E6=95=B0?= =?UTF-8?q?=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FundingplanapplyAccountBalancePlugin.java | 545 +++++++++--------- 1 file changed, 276 insertions(+), 269 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyAccountBalancePlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyAccountBalancePlugin.java index 04134ae..5577e9e 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyAccountBalancePlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyAccountBalancePlugin.java @@ -83,68 +83,70 @@ public class FundingplanapplyAccountBalancePlugin extends AbstractBillPlugIn imp if(customs!=null){ DynamicObject org = (DynamicObject)this.getModel().getValue("zcgj_org"); if(org == null){ - this.getView().showErrorNotification("请选择所属组织!"); - } - BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); - balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); - balanceQueryParamApi.setOrgNumber(org.getString("number")); - balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 - balanceQueryParamApi.setAccountTableNumber("0003");//科目表 + //this.getView().showErrorNotification("请选择所属组织!"); + }else{ + BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); + balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); + balanceQueryParamApi.setOrgNumber(org.getString("number")); + balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 + balanceQueryParamApi.setAccountTableNumber("0003");//科目表 - DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); - if(period == null){ - //this.getView().showErrMessage("请选择期间!"); - this.getView().showErrorNotification("请选择期间!"); - } - balanceQueryParamApi.setPeriodNumber(period.getString("number")); // - List groupBy = new ArrayList<>(); - - Map>> accountAssgrp = new HashMap<>(); - List> li = new ArrayList<>(); - for (DynamicObject custom : customs) { - Map map1 = new HashMap<>(); - DynamicObject basedataObj = custom.getDynamicObject("fbasedataid"); - DynamicObject customer = BusinessDataServiceHelper.loadSingle( basedataObj.getPkValue(), "bd_customer"); - map1.put("0001", customer.getString("number")); - li.add(map1); - } - accountAssgrp.put("1122", li); - balanceQueryParamApi.setAccountAssgrp(accountAssgrp); - groupBy.add("0001"); - groupBy.add("account"); - Gson gson = new Gson(); - String json = gson.toJson(balanceQueryParamApi); - Map params = gson.fromJson(json, - new TypeToken>() { - }.getType()); - OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); - - if (balanceData.isStatus()) { - String data = (String) balanceData.getData(); - Type listType = new TypeToken>() { - }.getType(); - List records = gson.fromJson(data, listType); - - BigDecimal totalbeginlocal = BigDecimal.ZERO; - BigDecimal totalendlocal = BigDecimal.ZERO; - BigDecimal totayeardebitfor = BigDecimal.ZERO; - BigDecimal totalyearcreditfor = BigDecimal.ZERO; - for (AccountRecord record : records) { - totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 - totalendlocal = totalendlocal.add(record.getEndlocal());//期初本位币金额 - totayeardebitfor = totayeardebitfor.add(record.getYeardebitfor());//yeardebitfor - totalyearcreditfor = totalyearcreditfor.add(record.getYearcreditfor());//yearcreditfor + DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); + if(period == null){ + //this.getView().showErrMessage("请选择期间!"); + this.getView().showErrorNotification("请选择期间!"); + } + balanceQueryParamApi.setPeriodNumber(period.getString("number")); // + List groupBy = new ArrayList<>(); + + Map>> accountAssgrp = new HashMap<>(); + List> li = new ArrayList<>(); + for (DynamicObject custom : customs) { + Map map1 = new HashMap<>(); + DynamicObject basedataObj = custom.getDynamicObject("fbasedataid"); + DynamicObject customer = BusinessDataServiceHelper.loadSingle( basedataObj.getPkValue(), "bd_customer"); + map1.put("0001", customer.getString("number")); + li.add(map1); + } + accountAssgrp.put("1122", li); + balanceQueryParamApi.setAccountAssgrp(accountAssgrp); + groupBy.add("0001"); + groupBy.add("account"); + Gson gson = new Gson(); + String json = gson.toJson(balanceQueryParamApi); + Map params = gson.fromJson(json, + new TypeToken>() { + }.getType()); + OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); + + if (balanceData.isStatus()) { + String data = (String) balanceData.getData(); + Type listType = new TypeToken>() { + }.getType(); + List records = gson.fromJson(data, listType); + + BigDecimal totalbeginlocal = BigDecimal.ZERO; + BigDecimal totalendlocal = BigDecimal.ZERO; + BigDecimal totayeardebitfor = BigDecimal.ZERO; + BigDecimal totalyearcreditfor = BigDecimal.ZERO; + for (AccountRecord record : records) { + totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 + totalendlocal = totalendlocal.add(record.getEndlocal());//期初本位币金额 + totayeardebitfor = totayeardebitfor.add(record.getYeardebitfor());//yeardebitfor + totalyearcreditfor = totalyearcreditfor.add(record.getYearcreditfor());//yearcreditfor + } + DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_infundproject_entry"); + DynamicObject dynamicObject = zcgjFinApprovedAmount.get(rowIndex); + //年初余额 = 期末余额-本年累计借方+本年累计贷方 + BigDecimal beginningbalanceofyear =totalendlocal.subtract(totayeardebitfor).add(totalyearcreditfor); + dynamicObject.set("zcgj_iinitialreceivable",beginningbalanceofyear);//年初余额取科目余额表年初数 + dynamicObject.set("zcgj_monthbeginreceivable",totalbeginlocal);//月初应收余额 + dynamicObject.set("zcgj_ytdoutputvalue",totayeardebitfor);//本年累计结算-借方 + dynamicObject.set("zcgj_ytdpaymentreceived",totalyearcreditfor);//本年累计回款-贷方 + this.getView().updateView("zcgj_infundproject_entry"); } - DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_infundproject_entry"); - DynamicObject dynamicObject = zcgjFinApprovedAmount.get(rowIndex); - //年初余额 = 期末余额-本年累计借方+本年累计贷方 - BigDecimal beginningbalanceofyear =totalendlocal.subtract(totayeardebitfor).add(totalyearcreditfor); - dynamicObject.set("zcgj_iinitialreceivable",beginningbalanceofyear);//年初余额取科目余额表年初数 - dynamicObject.set("zcgj_monthbeginreceivable",totalbeginlocal);//月初应收余额 - dynamicObject.set("zcgj_ytdoutputvalue",totayeardebitfor);//本年累计结算-借方 - dynamicObject.set("zcgj_ytdpaymentreceived",totalyearcreditfor);//本年累计回款-贷方 - this.getView().updateView("zcgj_infundproject_entry"); } + }else{ DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_infundproject_entry"); DynamicObject dynamicObject = zcgjFinApprovedAmount.get(rowIndex); @@ -160,67 +162,68 @@ public class FundingplanapplyAccountBalancePlugin extends AbstractBillPlugIn imp if(suppliers!=null){ DynamicObject org = (DynamicObject)this.getModel().getValue("zcgj_org"); if(org == null){ - this.getView().showErrorNotification("请选择所属组织!"); - } - BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); - balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); - balanceQueryParamApi.setOrgNumber(org.getString("number")); - balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 - balanceQueryParamApi.setAccountTableNumber("0003");//科目表 + //this.getView().showErrorNotification("请选择所属组织!"); + }else{ + BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); + balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); + balanceQueryParamApi.setOrgNumber(org.getString("number")); + balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 + balanceQueryParamApi.setAccountTableNumber("0003");//科目表 - DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); - if(period == null){ - //this.getView().showErrMessage("请选择期间!"); - this.getView().showErrorNotification("请选择期间!"); - } - balanceQueryParamApi.setPeriodNumber(period.getString("number")); // - List groupBy = new ArrayList<>(); - - Map>> accountAssgrp = new HashMap<>(); - List> li = new ArrayList<>(); - for (DynamicObject supplier : suppliers) { - Map map1 = new HashMap<>(); - DynamicObject basedataObj = supplier.getDynamicObject("fbasedataid"); - DynamicObject customer = BusinessDataServiceHelper.loadSingle( basedataObj.getPkValue(), "bd_supplier"); - map1.put("0005", customer.getString("number")); - li.add(map1); - } - accountAssgrp.put("2202", li); - balanceQueryParamApi.setAccountAssgrp(accountAssgrp); - groupBy.add("0005"); - groupBy.add("account"); - Gson gson = new Gson(); - String json = gson.toJson(balanceQueryParamApi); - Map params = gson.fromJson(json, - new TypeToken>() { - }.getType()); - OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); - - if (balanceData.isStatus()) { - String data = (String) balanceData.getData(); - Type listType = new TypeToken>() { - }.getType(); - List records = gson.fromJson(data, listType); - - BigDecimal totalbeginlocal = BigDecimal.ZERO; - BigDecimal totalendlocal = BigDecimal.ZERO; - BigDecimal totayeardebitfor = BigDecimal.ZERO; - BigDecimal totalyearcreditfor = BigDecimal.ZERO; - for (AccountRecord record : records) { - totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 - totalendlocal = totalendlocal.add(record.getEndlocal());//期初本位币金额 - totayeardebitfor = totayeardebitfor.add(record.getYeardebitfor());//yeardebitfor - totalyearcreditfor = totalyearcreditfor.add(record.getYearcreditfor());//yearcreditfor + DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); + if(period == null){ + //this.getView().showErrMessage("请选择期间!"); + this.getView().showErrorNotification("请选择期间!"); + } + balanceQueryParamApi.setPeriodNumber(period.getString("number")); // + List groupBy = new ArrayList<>(); + + Map>> accountAssgrp = new HashMap<>(); + List> li = new ArrayList<>(); + for (DynamicObject supplier : suppliers) { + Map map1 = new HashMap<>(); + DynamicObject basedataObj = supplier.getDynamicObject("fbasedataid"); + DynamicObject customer = BusinessDataServiceHelper.loadSingle( basedataObj.getPkValue(), "bd_supplier"); + map1.put("0005", customer.getString("number")); + li.add(map1); + } + accountAssgrp.put("2202", li); + balanceQueryParamApi.setAccountAssgrp(accountAssgrp); + groupBy.add("0005"); + groupBy.add("account"); + Gson gson = new Gson(); + String json = gson.toJson(balanceQueryParamApi); + Map params = gson.fromJson(json, + new TypeToken>() { + }.getType()); + OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); + + if (balanceData.isStatus()) { + String data = (String) balanceData.getData(); + Type listType = new TypeToken>() { + }.getType(); + List records = gson.fromJson(data, listType); + + BigDecimal totalbeginlocal = BigDecimal.ZERO; + BigDecimal totalendlocal = BigDecimal.ZERO; + BigDecimal totayeardebitfor = BigDecimal.ZERO; + BigDecimal totalyearcreditfor = BigDecimal.ZERO; + for (AccountRecord record : records) { + totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 + totalendlocal = totalendlocal.add(record.getEndlocal());//期初本位币金额 + totayeardebitfor = totayeardebitfor.add(record.getYeardebitfor());//yeardebitfor + totalyearcreditfor = totalyearcreditfor.add(record.getYearcreditfor());//yearcreditfor + } + DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_outfundproject_entry"); + DynamicObject dynamicObject = zcgjFinApprovedAmount.get(rowIndex); + //年初余额 = 期末余额-本年累计借方+本年累计贷方 + BigDecimal beginningbalanceofyear =totalendlocal.subtract(totalyearcreditfor).add(totayeardebitfor); + dynamicObject.set("zcgj_openingpayable",beginningbalanceofyear);//年初余额取科目余额表年初数 + dynamicObject.set("zcgj_monthbeginpayable",totalbeginlocal);//月初应付余额 + dynamicObject.set("zcgj_ytdtotalpayment",totayeardebitfor);//本年累计付款-借方 + dynamicObject.set("zcgj_ytdnetsettlement",totalyearcreditfor);//本年累计结算-贷方 + this.getView().updateView("zcgj_outfundproject_entry"); } - DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_outfundproject_entry"); - DynamicObject dynamicObject = zcgjFinApprovedAmount.get(rowIndex); - //年初余额 = 期末余额-本年累计借方+本年累计贷方 - BigDecimal beginningbalanceofyear =totalendlocal.subtract(totalyearcreditfor).add(totayeardebitfor); - dynamicObject.set("zcgj_openingpayable",beginningbalanceofyear);//年初余额取科目余额表年初数 - dynamicObject.set("zcgj_monthbeginpayable",totalbeginlocal);//月初应付余额 - dynamicObject.set("zcgj_ytdtotalpayment",totayeardebitfor);//本年累计付款-借方 - dynamicObject.set("zcgj_ytdnetsettlement",totalyearcreditfor);//本年累计结算-贷方 - this.getView().updateView("zcgj_outfundproject_entry"); } }else{ DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_outfundproject_entry"); @@ -243,172 +246,176 @@ public class FundingplanapplyAccountBalancePlugin extends AbstractBillPlugIn imp public void fundplyentryXJ(){ DynamicObject org = (DynamicObject)this.getModel().getValue("zcgj_org"); if(org == null){ - this.getView().showErrorNotification("请选择所属组织!"); - } - BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); - balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); - balanceQueryParamApi.setOrgNumber(org.getString("number")); - balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 - balanceQueryParamApi.setAccountTableNumber("0003");//科目表 - - DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); - if(period == null){ - //this.getView().showErrMessage("请选择期间!"); - this.getView().showErrorNotification("请选择期间!"); - } - balanceQueryParamApi.setPeriodNumber(period.getString("number")); // - List groupBy = new ArrayList<>(); - - Map>> accountAssgrp = new HashMap<>(); - List> li = new ArrayList<>(); - accountAssgrp.put("1001", li); //现金 - accountAssgrp.put("1002", li); //现金 - // accountAssgrp.put("11260101", li); //银行承兑 - //accountAssgrp.put("11260301", li); //供应链 - balanceQueryParamApi.setAccountAssgrp(accountAssgrp); - //groupBy.add("0005"); - groupBy.add("account"); - Gson gson = new Gson(); - String json = gson.toJson(balanceQueryParamApi); - Map params = gson.fromJson(json, - new TypeToken>() { - }.getType()); - OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); - - if (balanceData.isStatus()) { - String data = (String) balanceData.getData(); - Type listType = new TypeToken>() { - }.getType(); - List records = gson.fromJson(data, listType); - - BigDecimal totalbeginlocal = BigDecimal.ZERO; - for (AccountRecord record : records) { - totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 - } - - DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); - DynamicObject dynamicObject = fundplyentry.get(0); - dynamicObject.set("zcgj_cashamt",totalbeginlocal);//现金 - this.getView().updateView("zcgj_fundplyentry"); + //this.getView().showErrorNotification("请选择所属组织!"); }else{ - DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); - DynamicObject dynamicObject = fundplyentry.get(0); - dynamicObject.set("zcgj_cashamt",BigDecimal.ZERO);//现金 - this.getView().updateView("zcgj_fundplyentry"); + BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); + balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); + balanceQueryParamApi.setOrgNumber(org.getString("number")); + balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 + balanceQueryParamApi.setAccountTableNumber("0003");//科目表 + + DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); + if(period == null){ + //this.getView().showErrMessage("请选择期间!"); + this.getView().showErrorNotification("请选择期间!"); + } + balanceQueryParamApi.setPeriodNumber(period.getString("number")); // + List groupBy = new ArrayList<>(); + + Map>> accountAssgrp = new HashMap<>(); + List> li = new ArrayList<>(); + accountAssgrp.put("1001", li); //现金 + accountAssgrp.put("1002", li); //现金 + // accountAssgrp.put("11260101", li); //银行承兑 + //accountAssgrp.put("11260301", li); //供应链 + balanceQueryParamApi.setAccountAssgrp(accountAssgrp); + //groupBy.add("0005"); + groupBy.add("account"); + Gson gson = new Gson(); + String json = gson.toJson(balanceQueryParamApi); + Map params = gson.fromJson(json, + new TypeToken>() { + }.getType()); + OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); + + if (balanceData.isStatus()) { + String data = (String) balanceData.getData(); + Type listType = new TypeToken>() { + }.getType(); + List records = gson.fromJson(data, listType); + + BigDecimal totalbeginlocal = BigDecimal.ZERO; + for (AccountRecord record : records) { + totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 + } + + DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); + DynamicObject dynamicObject = fundplyentry.get(0); + dynamicObject.set("zcgj_cashamt",totalbeginlocal);//现金 + this.getView().updateView("zcgj_fundplyentry"); + }else{ + DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); + DynamicObject dynamicObject = fundplyentry.get(0); + dynamicObject.set("zcgj_cashamt",BigDecimal.ZERO);//现金 + this.getView().updateView("zcgj_fundplyentry"); + } } } public void fundplyentryYHCD(){ DynamicObject org = (DynamicObject)this.getModel().getValue("zcgj_org"); if(org == null){ - this.getView().showErrorNotification("请选择所属组织!"); - } - BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); - balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); - balanceQueryParamApi.setOrgNumber(org.getString("number")); - balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 - balanceQueryParamApi.setAccountTableNumber("0003");//科目表 - - DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); - if(period == null){ - //this.getView().showErrMessage("请选择期间!"); - this.getView().showErrorNotification("请选择期间!"); - } - balanceQueryParamApi.setPeriodNumber(period.getString("number")); // - List groupBy = new ArrayList<>(); - - Map>> accountAssgrp = new HashMap<>(); - List> li = new ArrayList<>(); - //accountAssgrp.put("1001", li); //现金 - //accountAssgrp.put("1002", li); //现金 - accountAssgrp.put("11260101", li); //银行承兑 - //accountAssgrp.put("11260301", li); //供应链 - balanceQueryParamApi.setAccountAssgrp(accountAssgrp); - //groupBy.add("0005"); - groupBy.add("account"); - Gson gson = new Gson(); - String json = gson.toJson(balanceQueryParamApi); - Map params = gson.fromJson(json, - new TypeToken>() { - }.getType()); - OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); - - if (balanceData.isStatus()) { - String data = (String) balanceData.getData(); - Type listType = new TypeToken>() { - }.getType(); - List records = gson.fromJson(data, listType); - - BigDecimal totalbeginlocal = BigDecimal.ZERO; - for (AccountRecord record : records) { - totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 - } - - DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); - DynamicObject dynamicObject = fundplyentry.get(0); - dynamicObject.set("zcgj_bankamt",totalbeginlocal);//银行承兑 + //this.getView().showErrorNotification("请选择所属组织!"); }else{ - DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); - DynamicObject dynamicObject = fundplyentry.get(0); - dynamicObject.set("zcgj_bankamt",BigDecimal.ZERO);//银行承兑 - this.getView().updateView("zcgj_fundplyentry"); + BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); + balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); + balanceQueryParamApi.setOrgNumber(org.getString("number")); + balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 + balanceQueryParamApi.setAccountTableNumber("0003");//科目表 + + DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); + if(period == null){ + //this.getView().showErrMessage("请选择期间!"); + this.getView().showErrorNotification("请选择期间!"); + } + balanceQueryParamApi.setPeriodNumber(period.getString("number")); // + List groupBy = new ArrayList<>(); + + Map>> accountAssgrp = new HashMap<>(); + List> li = new ArrayList<>(); + //accountAssgrp.put("1001", li); //现金 + //accountAssgrp.put("1002", li); //现金 + accountAssgrp.put("11260101", li); //银行承兑 + //accountAssgrp.put("11260301", li); //供应链 + balanceQueryParamApi.setAccountAssgrp(accountAssgrp); + //groupBy.add("0005"); + groupBy.add("account"); + Gson gson = new Gson(); + String json = gson.toJson(balanceQueryParamApi); + Map params = gson.fromJson(json, + new TypeToken>() { + }.getType()); + OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); + + if (balanceData.isStatus()) { + String data = (String) balanceData.getData(); + Type listType = new TypeToken>() { + }.getType(); + List records = gson.fromJson(data, listType); + + BigDecimal totalbeginlocal = BigDecimal.ZERO; + for (AccountRecord record : records) { + totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 + } + + DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); + DynamicObject dynamicObject = fundplyentry.get(0); + dynamicObject.set("zcgj_bankamt",totalbeginlocal);//银行承兑 + }else{ + DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); + DynamicObject dynamicObject = fundplyentry.get(0); + dynamicObject.set("zcgj_bankamt",BigDecimal.ZERO);//银行承兑 + this.getView().updateView("zcgj_fundplyentry"); + } } + } public void fundplyentryGYL(){ DynamicObject org = (DynamicObject)this.getModel().getValue("zcgj_org"); if(org == null){ - this.getView().showErrorNotification("请选择所属组织!"); - } - BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); - balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); - balanceQueryParamApi.setOrgNumber(org.getString("number")); - balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 - balanceQueryParamApi.setAccountTableNumber("0003");//科目表 - - DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); - if(period == null){ - //this.getView().showErrMessage("请选择期间!"); - this.getView().showErrorNotification("请选择期间!"); - } - balanceQueryParamApi.setPeriodNumber(period.getString("number")); // - List groupBy = new ArrayList<>(); - - Map>> accountAssgrp = new HashMap<>(); - List> li = new ArrayList<>(); - //accountAssgrp.put("1001", li); //现金 - //accountAssgrp.put("1002", li); //现金 - //accountAssgrp.put("11260101", li); //银行承兑 - accountAssgrp.put("11260301", li); //供应链 - balanceQueryParamApi.setAccountAssgrp(accountAssgrp); - //groupBy.add("0005"); - groupBy.add("account"); - Gson gson = new Gson(); - String json = gson.toJson(balanceQueryParamApi); - Map params = gson.fromJson(json, - new TypeToken>() { - }.getType()); - OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); - - if (balanceData.isStatus()) { - String data = (String) balanceData.getData(); - Type listType = new TypeToken>() { - }.getType(); - List records = gson.fromJson(data, listType); - - BigDecimal totalbeginlocal = BigDecimal.ZERO; - for (AccountRecord record : records) { - totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 - } - - DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); - DynamicObject dynamicObject = fundplyentry.get(0); - dynamicObject.set("zcgj_supplyamt",totalbeginlocal);//供应链 + //this.getView().showErrorNotification("请选择所属组织!"); }else{ - DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); - DynamicObject dynamicObject = fundplyentry.get(0); - dynamicObject.set("zcgj_supplyamt",BigDecimal.ZERO);//供应链 - this.getView().updateView("zcgj_fundplyentry"); + BalanceQueryParamApi balanceQueryParamApi = new BalanceQueryParamApi(); + balanceQueryParamApi.setSelectors(Arrays.asList(selectorsArray)); + balanceQueryParamApi.setOrgNumber(org.getString("number")); + balanceQueryParamApi.setBookTypeNumber("100002"); //账簿类型 + balanceQueryParamApi.setAccountTableNumber("0003");//科目表 + + DynamicObject period = (DynamicObject)this.getModel().getValue("zcgj_period"); + if(period == null){ + //this.getView().showErrMessage("请选择期间!"); + this.getView().showErrorNotification("请选择期间!"); + } + balanceQueryParamApi.setPeriodNumber(period.getString("number")); // + List groupBy = new ArrayList<>(); + + Map>> accountAssgrp = new HashMap<>(); + List> li = new ArrayList<>(); + //accountAssgrp.put("1001", li); //现金 + //accountAssgrp.put("1002", li); //现金 + //accountAssgrp.put("11260101", li); //银行承兑 + accountAssgrp.put("11260301", li); //供应链 + balanceQueryParamApi.setAccountAssgrp(accountAssgrp); + //groupBy.add("0005"); + groupBy.add("account"); + Gson gson = new Gson(); + String json = gson.toJson(balanceQueryParamApi); + Map params = gson.fromJson(json, + new TypeToken>() { + }.getType()); + OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params); + + if (balanceData.isStatus()) { + String data = (String) balanceData.getData(); + Type listType = new TypeToken>() { + }.getType(); + List records = gson.fromJson(data, listType); + + BigDecimal totalbeginlocal = BigDecimal.ZERO; + for (AccountRecord record : records) { + totalbeginlocal = totalbeginlocal.add(record.getBeginlocal());//期初本位币金额 + } + + DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); + DynamicObject dynamicObject = fundplyentry.get(0); + dynamicObject.set("zcgj_supplyamt",totalbeginlocal);//供应链 + }else{ + DynamicObjectCollection fundplyentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fundplyentry"); + DynamicObject dynamicObject = fundplyentry.get(0); + dynamicObject.set("zcgj_supplyamt",BigDecimal.ZERO);//供应链 + this.getView().updateView("zcgj_fundplyentry"); + } } } }