diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmePlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmePlugin.java index 2f5f9d7..6ffa113 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmePlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmePlugin.java @@ -26,6 +26,7 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.permission.api.HasPermOrgResult; import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.QueryServiceHelper; import kd.bos.servicehelper.permission.PermissionServiceHelper; import kd.ec.contract.common.enums.DirectionEnum; import kd.sdk.plugin.Plugin; @@ -239,30 +240,52 @@ public class InContractFinaceConfirmePlugin extends AbstractBillPlugIn implement } this.addItemClickListeners("zcgj_entrytoolbar111"); this.addItemClickListeners("zcgj_entrytoolbar1111"); + EntryGrid entryGrid = this.getView().getControl("zcgj_performrec");//冲销履约记录 + entryGrid.addHyperClickListener(this); } @Override public void hyperLinkClick(HyperLinkClickEvent hyperLinkClickEvent) { String fieldName = hyperLinkClickEvent.getFieldName(); - EntryGrid entryGrid = getView().getControl("zcgj_entryentity"); - int[] selectRows = entryGrid.getSelectRows(); - if(selectRows != null && selectRows.length == 1){ - DynamicObjectCollection dynamicObjectCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_entryentity"); - DynamicObject dynamicObject = dynamicObjectCollection.get(selectRows[0]); - DynamicObject zcgjInvoice = dynamicObject.getDynamicObject("zcgj_invoice"); - long invoiceId = zcgjInvoice.getLong("id"); - if(invoiceId != 0){ - //弹出发票详情 - BillShowParameter showParameter = new BillShowParameter(); - showParameter.setPkId(invoiceId); - showParameter.setFormId("ec_out_invoice"); - showParameter.getOpenStyle().setShowType(ShowType.MainNewTabPage); //打开方式 - getView().showForm(showParameter); + if (StringUtils.equals(fieldName, "zcgj_invoice")) { + EntryGrid entryGrid = getView().getControl("zcgj_entryentity"); + int[] selectRows = entryGrid.getSelectRows(); + if (selectRows != null && selectRows.length == 1) { + DynamicObjectCollection dynamicObjectCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_entryentity"); + DynamicObject dynamicObject = dynamicObjectCollection.get(selectRows[0]); + DynamicObject zcgjInvoice = dynamicObject.getDynamicObject("zcgj_invoice"); + long invoiceId = zcgjInvoice.getLong("id"); + if (invoiceId != 0) { + //弹出发票详情 + BillShowParameter showParameter = new BillShowParameter(); + showParameter.setPkId(invoiceId); + showParameter.setFormId("ec_out_invoice"); + showParameter.getOpenStyle().setShowType(ShowType.MainNewTabPage); //打开方式 + getView().showForm(showParameter); + } + } else { + this.getView().showTipNotification("请选择一条发票数据。"); } - }else{ - this.getView().showTipNotification("请选择一条发票数据。"); + } else if (StringUtils.equals(fieldName, "zcgj_reversedamount")) { + //冲销履约记录-已冲销金额 + List dailyLoanBillDataIds = new ArrayList<>(); + int rowIndex = hyperLinkClickEvent.getRowIndex(); + DynamicObjectCollection perFormRecCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_performrec");//冲销履约记录 + DynamicObject perFormRec = perFormRecCollection.get(rowIndex); + long zcgj_performrecid = perFormRec.getLong("zcgj_performrecid"); + QFilter filter = new QFilter("zcgj_performrec.zcgj_performrecid", QCP.equals, zcgj_performrecid); + filter.and(new QFilter("billstatus", QCP.equals, "C")); + DynamicObjectCollection zcgj_ec_in_finaceconfirms = QueryServiceHelper.query("zcgj_ec_in_finaceconfirm", "id", new QFilter[]{filter}); + for (DynamicObject zcgj_ec_in_finaceconfirm : zcgj_ec_in_finaceconfirms) { + dailyLoanBillDataIds.add((Long) zcgj_ec_in_finaceconfirm.get("id")); + } + ListShowParameter listShowParameter = new ListShowParameter(); + listShowParameter.setFormId("bos_list"); //列表界面 + listShowParameter.setBillFormId("zcgj_ec_in_finaceconfirm"); //单据的标识 + listShowParameter.getOpenStyle().setShowType(ShowType.MainNewTabPage); + dailyLoanBillDataIds.forEach(listShowParameter::addLinkQueryPkId); + this.getView().showForm(listShowParameter); } - } @Override