From e434fa401ed6875bbb96cbd63bbd1aa2834de0c9 Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Wed, 7 Jan 2026 11:12:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E5=85=A5=E6=94=AF=E5=87=BA=E5=90=88?= =?UTF-8?q?=E5=90=8C=E9=A1=B9=E7=9B=AE=E8=B4=9F=E8=B4=A3=E4=BA=BA=E8=B5=8B?= =?UTF-8?q?=E5=80=BC=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pr/plugin/operate/InInvoiceUseCkOp.java | 2 +- .../ContractManagerAssignerTaskPlugin.java | 53 +++++++++++++++++++ 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/ContractManagerAssignerTaskPlugin.java diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InInvoiceUseCkOp.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InInvoiceUseCkOp.java index a984222..61f4ce5 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InInvoiceUseCkOp.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InInvoiceUseCkOp.java @@ -65,7 +65,7 @@ public class InInvoiceUseCkOp extends AbstractOperationServicePlugIn { this.addFatalErrorMessage(extendedDataEntity, String.format("当前发票已被入库单%s绑定,不允许反审核!", ecma_materialinbill.getString("billno"))); return; } - DynamicObject zcgj_maintenanceackbill = QueryServiceHelper.queryOne("zcgj_maintenanceackbill", "billno", new QFilter[]{filter});//入库单 + DynamicObject zcgj_maintenanceackbill = QueryServiceHelper.queryOne("zcgj_maintenanceackbill", "billno", new QFilter[]{filter});//设备维修确认单 if (zcgj_maintenanceackbill != null) { this.addFatalErrorMessage(extendedDataEntity, String.format("当前发票已被设备维修确认单%s绑定,不允许反审核!", zcgj_maintenanceackbill.getString("billno"))); return; diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/ContractManagerAssignerTaskPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/ContractManagerAssignerTaskPlugin.java new file mode 100644 index 0000000..3c4fa0e --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/ContractManagerAssignerTaskPlugin.java @@ -0,0 +1,53 @@ +package zcgj.zcdev.zcdev.pr.task; + +import kd.bos.context.RequestContext; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.exception.KDException; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.schedule.executor.AbstractTask; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; + +import java.util.Map; + +/** + * 收入支出合同项目负责人赋值定时任务 + */ +public class ContractManagerAssignerTaskPlugin extends AbstractTask { + + @Override + public void execute(RequestContext requestContext, Map map) throws KDException { + + QFilter qFilter1 = new QFilter("project", QCP.not_equals, null); + DynamicObject[] ec_in_contracts = BusinessDataServiceHelper.load("ec_in_contract", + "id,project,zcgj_projectmanager", new QFilter[]{qFilter1});//收入合同 + if (ec_in_contracts != null && ec_in_contracts.length > 0) { + for (DynamicObject ec_in_contract : ec_in_contracts) { + String projectNumber = ec_in_contract.getDynamicObject("project").getString("number");//收入合同-项目-项目编号 + QFilter[] qFilter11 = new QFilter[]{new QFilter("billno", QCP.equals, projectNumber)}; + DynamicObject ec_project = BusinessDataServiceHelper.loadSingle("ec_project", "id,zcgj_pm", qFilter11);//项目 + DynamicObject zcgj_pm = ec_project.getDynamicObject("zcgj_pm");//项目-项目负责人 + ec_in_contract.set("zcgj_projectmanager", zcgj_pm);//收入合同-项目负责人 + } + } + if (ec_in_contracts != null) { + SaveServiceHelper.save(ec_in_contracts); + } + QFilter qFilter2 = new QFilter("project", QCP.not_equals, null); + DynamicObject[] ec_out_contracts = BusinessDataServiceHelper.load("ec_out_contract", + "id,project,zcgj_projectmanager", new QFilter[]{qFilter2});//支出合同 + if (ec_out_contracts != null && ec_out_contracts.length > 0) { + for (DynamicObject ec_out_contract : ec_out_contracts) { + String projectNumber = ec_out_contract.getDynamicObject("project").getString("number");//支出合同-项目-项目编号 + QFilter[] qFilter22 = new QFilter[]{new QFilter("billno", QCP.equals, projectNumber)}; + DynamicObject ec_project = BusinessDataServiceHelper.loadSingle("ec_project", "id,zcgj_pm", qFilter22);//项目 + DynamicObject zcgj_pm = ec_project.getDynamicObject("zcgj_pm");//项目-项目负责人 + ec_out_contract.set("zcgj_projectmanager", zcgj_pm);//支出合同-项目负责人 + } + } + if (ec_out_contracts != null) { + SaveServiceHelper.save(ec_out_contracts); + } + } +}