diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InPerFormRecordsListPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InPerFormRecordsListPlugin.java new file mode 100644 index 0000000..bbf5d94 --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InPerFormRecordsListPlugin.java @@ -0,0 +1,47 @@ +package zcgj.zcdev.zcdev.pr.plugin.form; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.form.ShowType; +import kd.bos.form.events.HyperLinkClickArgs; +import kd.bos.list.ListShowParameter; +import kd.bos.list.plugin.AbstractListPlugin; +import kd.bos.mvc.list.ListView; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.QueryServiceHelper; + +import java.util.ArrayList; +import java.util.List; + +/** + * 收入合同履约记录列表插件 + */ +public class InPerFormRecordsListPlugin extends AbstractListPlugin { + public void billListHyperLinkClick(HyperLinkClickArgs args) { + super.billListHyperLinkClick(args); + String fieldName = args.getHyperLinkClickEvent().getFieldName(); + if ("zcgj_taxperformflot".equals(fieldName)) { + //已冲销金额 + args.setCancel(true); + ListView viewList = (ListView) this.getView(); + Object measureId = viewList.getFocusRowPkId(); + String billFormId = viewList.getBillFormId(); + DynamicObject measure = BusinessDataServiceHelper.loadSingle(measureId, billFormId, "id");//收入合同履约记录 + QFilter filter = new QFilter("zcgj_performrec.zcgj_performrecid", QCP.equals, measure.getPkValue()); + filter.and(new QFilter("billstatus", QCP.equals, "C")); + DynamicObjectCollection zcgj_ec_in_finaceconfirms = QueryServiceHelper.query("zcgj_ec_in_finaceconfirm", "id", new QFilter[]{filter}); + List dailyLoanBillDataIds = new ArrayList<>(); + 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); + } + } +} diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractSettleListPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractSettleListPlugin.java new file mode 100644 index 0000000..d7cf41b --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractSettleListPlugin.java @@ -0,0 +1,48 @@ +package zcgj.zcdev.zcdev.pr.plugin.form; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.form.ShowType; +import kd.bos.form.events.HyperLinkClickArgs; +import kd.bos.list.ListShowParameter; +import kd.bos.list.plugin.AbstractListPlugin; +import kd.bos.mvc.list.ListView; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.QueryServiceHelper; + +import java.util.ArrayList; +import java.util.List; + +/** + * 支出合同结算列表插件 + */ +public class OutContractSettleListPlugin extends AbstractListPlugin { + + public void billListHyperLinkClick(HyperLinkClickArgs args) { + super.billListHyperLinkClick(args); + String fieldName = args.getHyperLinkClickEvent().getFieldName(); + if ("zcgj_taxinclcontractrev".equals(fieldName)) { + //已冲销金额 + args.setCancel(true); + ListView viewList = (ListView) this.getView(); + Object measureId = viewList.getFocusRowPkId(); + String billFormId = viewList.getBillFormId(); + DynamicObject measure = BusinessDataServiceHelper.loadSingle(measureId, billFormId, "id");//支出合同结算 + QFilter filter = new QFilter("zcgj_expensereversal.zcgj_expensereversaid", QCP.equals, measure.getPkValue()); + filter.and(new QFilter("billstatus", QCP.equals, "C")); + DynamicObjectCollection zcgj_ec_in_finaceconfirms = QueryServiceHelper.query("zcgj_ec_in_finaceconfirm", "id", new QFilter[]{filter}); + List dailyLoanBillDataIds = new ArrayList<>(); + 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); + } + } +}