From 1faf8499d4c1c9d45c461b580224e06deac5bef1 Mon Sep 17 00:00:00 2001 From: sez Date: Thu, 20 Nov 2025 15:09:28 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=87=E8=B4=AD=E5=85=A5=E5=BA=93=E5=8D=95?= =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=AE=A1=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/operate/im/OtherInYdthPlugin.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/lc123/cloud/app/plugin/operate/im/OtherInYdthPlugin.java b/lc123/cloud/app/plugin/operate/im/OtherInYdthPlugin.java index 2573b34..266872d 100644 --- a/lc123/cloud/app/plugin/operate/im/OtherInYdthPlugin.java +++ b/lc123/cloud/app/plugin/operate/im/OtherInYdthPlugin.java @@ -1,11 +1,13 @@ package tqq9.lc123.cloud.app.plugin.operate.im; import com.alibaba.fastjson.JSONObject; +import kd.bos.dataentity.OperateOption; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.entity.botp.runtime.ConvertOperationResult; import kd.bos.entity.botp.runtime.PushArgs; import kd.bos.entity.botp.runtime.SourceBillReport; +import kd.bos.entity.operate.result.OperationResult; import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.PreparePropertysEventArgs; import kd.bos.entity.plugin.args.AfterOperationArgs; @@ -15,8 +17,10 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.botp.ConvertServiceHelper; +import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.util.StringUtils; import kd.sdk.plugin.Plugin; +import tqq9.lc123.cloud.app.api.utils.Constants; import tqq9.lc123.cloud.app.plugin.utils.BotpParamUtils; import java.math.BigDecimal; @@ -149,6 +153,38 @@ public class OtherInYdthPlugin extends AbstractOperationServicePlugIn implements } } + + //获取下推单据id准备提交审核操作 + Set targetBillIds = pushResult.getTargetBillIds(); + DynamicObject[] load = new DynamicObject[targetBillIds.size()]; + Iterator iterator = targetBillIds.iterator(); + for (int i = 0; iterator.hasNext(); i++) { + Object next = iterator.next(); + DynamicObject dynamicObject1 = BusinessDataServiceHelper.loadSingle(IM_PURINBILL, new QFilter[]{new QFilter("id", QCP.equals, next)}); + load[i] = dynamicObject1; + } + //开始提交 + OperateOption operateOption = OperateOption.create(); + OperationResult sumbitResult = OperationServiceHelper.executeOperate(Constants.TYPE_SUBMIT, IM_PURINBILL, load, operateOption); + if (!sumbitResult.isSuccess()) { + if (Objects.nonNull(sumbitResult.getAllErrorOrValidateInfo())) { + logger.info("采购入库单提交失败: " + sumbitResult.getAllErrorOrValidateInfo().toString()); + } + OperationResult deleteResult = OperationServiceHelper.executeOperate(Constants.TYPE_DELETE, IM_PURINBILL, load, operateOption); + } else { + //开始审核 + OperationResult auditResult = OperationServiceHelper.executeOperate(Constants.TYPE_AUDIT, IM_PURINBILL, load, operateOption); + if (!auditResult.isSuccess()) { + if (Objects.nonNull(auditResult.getAllErrorOrValidateInfo())) { + logger.info("采购入库单审核失败: " + auditResult.getAllErrorOrValidateInfo().toString()); + } + + OperationResult unsubmitResult = OperationServiceHelper.executeOperate(Constants.TYPE_UNSUBMIT, IM_PURINBILL, load, operateOption); + OperationResult deleteResult = OperationServiceHelper.executeOperate(Constants.TYPE_DELETE, IM_PURINBILL, load, operateOption); + } + + + } } }