From a15bdb229354feb9b646e797b7dd10f2228c5236 Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Tue, 15 Jul 2025 18:15:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BB=85=E9=92=88=E5=AF=B9?= =?UTF-8?q?=E7=9F=BF=E5=B1=B1=E4=B8=8B=E7=BB=84=E7=BB=87=E4=B8=8B=E7=9A=84?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/operate/PublicReimburPayeriOp.java | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/operate/PublicReimburPayeriOp.java b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/operate/PublicReimburPayeriOp.java index 8e2d4c0..35c3f38 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/operate/PublicReimburPayeriOp.java +++ b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/operate/PublicReimburPayeriOp.java @@ -7,6 +7,7 @@ import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.AddValidatorsEventArgs; import kd.bos.entity.plugin.PreparePropertysEventArgs; import kd.bos.entity.validate.AbstractValidator; +import zcgj.zcdev.zcdev.fs.utils.OrgCheckUtils; /* 对公报销单提交校验插件:校验往来单位与开票公司是否一致,不一致需填写特殊说明 @@ -34,21 +35,28 @@ public class PublicReimburPayeriOp extends AbstractOperationServicePlugIn { ExtendedDataEntity[] extendedDataEntities = this.getDataEntities(); for (ExtendedDataEntity extendedDataEntity : extendedDataEntities) { DynamicObject dataEntity = extendedDataEntity.getDataEntity(); - DynamicObjectCollection invoiceEntryCollection = dataEntity.getDynamicObjectCollection("invoiceentry");//发票信息 - if (invoiceEntryCollection.size() > 0) { - DynamicObject billPayerId = dataEntity.getDynamicObject("billpayerid");//往来单位 - String zcgj_invoiceremark = dataEntity.getString("zcgj_invoiceremark");//特殊说明 - if (billPayerId != null) { - String billPayerIdName = billPayerId.getString("name"); - for (DynamicObject invoiceEntry : invoiceEntryCollection) { - String makeOutCompName = invoiceEntry.getString("makeoutcompname");//开票公司 - if (!makeOutCompName.equals(billPayerIdName) && "".equals(zcgj_invoiceremark)) { - //开票公司与往来单位名称不一致,且特殊说明为空 - this.addFatalErrorMessage(extendedDataEntity, "开票公司与往来单位存在不一致!请填写特殊说明!"); + DynamicObject costCompany = dataEntity.getDynamicObject("costcompany");//费用承担公司 + if (costCompany != null) { + Long companyId = costCompany.getLong("id"); + if (OrgCheckUtils.isKS(companyId)) { + //仅针对矿山下组织下的逻辑 + DynamicObjectCollection invoiceEntryCollection = dataEntity.getDynamicObjectCollection("invoiceentry");//发票信息 + if (invoiceEntryCollection.size() > 0) { + DynamicObject billPayerId = dataEntity.getDynamicObject("billpayerid");//往来单位 + String zcgj_invoiceremark = dataEntity.getString("zcgj_invoiceremark");//特殊说明 + if (billPayerId != null) { + String billPayerIdName = billPayerId.getString("name"); + for (DynamicObject invoiceEntry : invoiceEntryCollection) { + String makeOutCompName = invoiceEntry.getString("makeoutcompname");//开票公司 + if (!makeOutCompName.equals(billPayerIdName) && "".equals(zcgj_invoiceremark)) { + //开票公司与往来单位名称不一致,且特殊说明为空 + this.addFatalErrorMessage(extendedDataEntity, "开票公司与往来单位存在不一致!请填写特殊说明!"); + } + } + } else { + this.addFatalErrorMessage(extendedDataEntity, "往来单位为空"); } } - } else { - this.addFatalErrorMessage(extendedDataEntity, "往来单位为空"); } } }