From 316e41f21ab885eca7a97f4e1a11f16a75d330a4 Mon Sep 17 00:00:00 2001 From: mzr <1562242162@qq.com> Date: Wed, 16 Oct 2024 16:34:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A3=80=E9=AA=8C=E5=8D=95=E5=90=AB=E4=B8=8D?= =?UTF-8?q?=E5=90=88=E6=A0=BC=E6=95=B0=E9=87=8F=E6=97=B6=EF=BC=8C=E4=B8=8D?= =?UTF-8?q?=E5=85=81=E8=AE=B8=E5=AE=A1=E6=89=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dhjydmaster/DhjydMasterVOServiceImpl.java | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/ic/pu/src/private/nc/impl/pu/dhjyd/dhjydmaster/DhjydMasterVOServiceImpl.java b/ic/pu/src/private/nc/impl/pu/dhjyd/dhjydmaster/DhjydMasterVOServiceImpl.java index cc72be5..3c25242 100644 --- a/ic/pu/src/private/nc/impl/pu/dhjyd/dhjydmaster/DhjydMasterVOServiceImpl.java +++ b/ic/pu/src/private/nc/impl/pu/dhjyd/dhjydmaster/DhjydMasterVOServiceImpl.java @@ -9,12 +9,15 @@ import java.util.UUID; import java.lang.String; import java.util.stream.Stream; import nc.vo.pub.lang.UFDateTime; +import nc.vo.pub.lang.UFDouble; import nc.uap.utils.InSQLCreator; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; import com.informix.util.stringUtil; +import cn.hutool.core.util.NumberUtil; + import org.apache.commons.beanutils.PropertyUtils; import nc.vo.pub.BusinessException; @@ -31,6 +34,7 @@ import nc.vo.pu.dhjyd.AggDhjydMasterVO; import nc.itf.pu.dhjyd.dhjydmaster.IDhjydMasterVOService; import nc.jdbc.framework.processor.ColumnProcessor; import nc.vo.pub.pf.BillStatusEnum; +import nc.vo.pubapp.pattern.pub.MathTool; import nc.bs.dao.BaseDAO; import nc.bs.framework.common.InvocationInfoProxy; import nccloud.framework.core.exception.ExceptionUtils; @@ -424,6 +428,30 @@ public class DhjydMasterVOServiceImpl extends ServiceSupport implements IDhjydMa throw new BusinessException(errors); } + /** + * 提交前校验: 检验单含不合格数量时,不允许审批 + * + * @throws BusinessException + */ + private void validateCommitDhjydNum(AggDhjydMasterVO... vos) throws BusinessException { + if (ArrayUtils.isEmpty(vos)) { + return; + } + String errors = ""; + for (AggDhjydMasterVO vo : vos) { + DhjydMasterVO jydMasterVO = vo.getParentVO(); + // 如果不合格检验数量>0,则给出提示 + UFDouble brecheck = (UFDouble) jydMasterVO.getAttributeValue("brecheck"); + // System.out.println("brecheck = " + brecheck); + if (MathTool.compareTo(brecheck, UFDouble.ZERO_DBL) > 0) { + errors += "单据号:[" + jydMasterVO.getAttributeValue("code") + "]提交失败,失败原因:含有不合格数量,请检查。\n"; + } + } + if (!"".equals(errors)) { + throw new BusinessException(errors); + } + } + /** * 收回前校验: 检查单据状态 * @@ -447,6 +475,11 @@ public class DhjydMasterVOServiceImpl extends ServiceSupport implements IDhjydMa throw new BusinessException(errors); } + /** + * 收回前校验: 检验单弃审时验证到货单是否已入库 + * + * @throws BusinessException + */ private void validateUnCommitInOrder(AggDhjydMasterVO... vos) throws BusinessException { if (ArrayUtils.isEmpty(vos)) { return; @@ -486,6 +519,7 @@ public class DhjydMasterVOServiceImpl extends ServiceSupport implements IDhjydMa validateTs(tsMap, vos); // 提交前校验及业务逻辑 validateCommitAggDhjydMasterVO(vos); + validateCommitDhjydNum(vos); Map res = this.execFlows(actionName, "DHJY", assign, vos); // 提交后业务逻辑 return res; @@ -497,6 +531,7 @@ public class DhjydMasterVOServiceImpl extends ServiceSupport implements IDhjydMa validateTs(tsMap, vos); // 批量提交前校验及业务逻辑 validateCommitAggDhjydMasterVO(vos); + validateCommitDhjydNum(vos); Map res = this.execFlows(actionName, "DHJY", vos); // 批量提交后业务逻辑 return res;