资金计划申请科目余额取数插件
This commit is contained in:
		
							parent
							
								
									3198e70193
								
							
						
					
					
						commit
						69598c46fa
					
				| 
						 | 
				
			
			@ -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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
            Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
            List<Map<String, String>> li = new ArrayList<>();
 | 
			
		||||
            for (DynamicObject custom : customs) {
 | 
			
		||||
                Map<String, String> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                    new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                    }.getType());
 | 
			
		||||
            OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
            if (balanceData.isStatus()) {
 | 
			
		||||
                String data = (String) balanceData.getData();
 | 
			
		||||
                Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                }.getType();
 | 
			
		||||
                List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
                Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
                List<Map<String, String>> li = new ArrayList<>();
 | 
			
		||||
                for (DynamicObject custom : customs) {
 | 
			
		||||
                    Map<String, String> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                        new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                        }.getType());
 | 
			
		||||
                OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
                if (balanceData.isStatus()) {
 | 
			
		||||
                    String data = (String) balanceData.getData();
 | 
			
		||||
                    Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                    }.getType();
 | 
			
		||||
                    List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
            Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
            List<Map<String, String>> li = new ArrayList<>();
 | 
			
		||||
            for (DynamicObject supplier : suppliers) {
 | 
			
		||||
                Map<String, String> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                    new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                    }.getType());
 | 
			
		||||
            OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
            if (balanceData.isStatus()) {
 | 
			
		||||
                String data = (String) balanceData.getData();
 | 
			
		||||
                Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                }.getType();
 | 
			
		||||
                List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
                Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
                List<Map<String, String>> li = new ArrayList<>();
 | 
			
		||||
                for (DynamicObject supplier : suppliers) {
 | 
			
		||||
                    Map<String, String> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                        new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                        }.getType());
 | 
			
		||||
                OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
                if (balanceData.isStatus()) {
 | 
			
		||||
                    String data = (String) balanceData.getData();
 | 
			
		||||
                    Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                    }.getType();
 | 
			
		||||
                    List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
        Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
        List<Map<String, String>> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                }.getType());
 | 
			
		||||
        OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
        if (balanceData.isStatus()) {
 | 
			
		||||
            String data = (String) balanceData.getData();
 | 
			
		||||
            Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
            }.getType();
 | 
			
		||||
            List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
            Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
            List<Map<String, String>> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                    new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                    }.getType());
 | 
			
		||||
            OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
            if (balanceData.isStatus()) {
 | 
			
		||||
                String data = (String) balanceData.getData();
 | 
			
		||||
                Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                }.getType();
 | 
			
		||||
                List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
        Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
        List<Map<String, String>> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                }.getType());
 | 
			
		||||
        OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
        if (balanceData.isStatus()) {
 | 
			
		||||
            String data = (String) balanceData.getData();
 | 
			
		||||
            Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
            }.getType();
 | 
			
		||||
            List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
            Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
            List<Map<String, String>> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                    new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                    }.getType());
 | 
			
		||||
            OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
            if (balanceData.isStatus()) {
 | 
			
		||||
                String data = (String) balanceData.getData();
 | 
			
		||||
                Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                }.getType();
 | 
			
		||||
                List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
        Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
        List<Map<String, String>> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                }.getType());
 | 
			
		||||
        OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
        if (balanceData.isStatus()) {
 | 
			
		||||
            String data = (String) balanceData.getData();
 | 
			
		||||
            Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
            }.getType();
 | 
			
		||||
            List<AccountRecord> 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<String> groupBy = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
            Map<String, List<Map<String, String>>> accountAssgrp = new HashMap<>();
 | 
			
		||||
            List<Map<String, String>> 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<String, Object> params = gson.fromJson(json,
 | 
			
		||||
                    new TypeToken<Map<String, Object>>() {
 | 
			
		||||
                    }.getType());
 | 
			
		||||
            OpenApiResult balanceData = OpenApiSdkUtil.invoke("/v2/gl/getBalanceApi", params);
 | 
			
		||||
 | 
			
		||||
            if (balanceData.isStatus()) {
 | 
			
		||||
                String data = (String) balanceData.getData();
 | 
			
		||||
                Type listType = new TypeToken<List<AccountRecord>>() {
 | 
			
		||||
                }.getType();
 | 
			
		||||
                List<AccountRecord> 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");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue