diff --git a/uapbd/src/private/nc/impl/bd/material/plan/MaterialSaveBeforeCheckJMListener.java b/uapbd/src/private/nc/impl/bd/material/plan/MaterialSaveBeforeCheckJMListener.java index edf0e69f..16a29f5e 100644 --- a/uapbd/src/private/nc/impl/bd/material/plan/MaterialSaveBeforeCheckJMListener.java +++ b/uapbd/src/private/nc/impl/bd/material/plan/MaterialSaveBeforeCheckJMListener.java @@ -12,8 +12,6 @@ import nc.vo.bd.material.plan.MaterialPlanVO; import nc.vo.org.OrgVO; import nc.vo.pub.BusinessException; -import java.util.Map; - /** * 精密-物料计划信息保存前校验 * @@ -35,12 +33,13 @@ public class MaterialSaveBeforeCheckJMListener implements IBusinessListener { for (Object obj : objs) { if (obj instanceof MaterialPlanVO planVO) { String pkOrg = planVO.getPk_org(); + String pkMaterialplan = planVO.getPk_materialplan(); // 组织判断,精密的才需校验 if (MMValueCheck.isNotEmpty(orgId) && orgId.equals(pkOrg)) { String def2 = planVO.getDef2();// 启源物料编码/原系统物料编码 if (MMValueCheck.isNotEmpty(def2)) { - String countSql = "select count(1) from bd_materialplan where pk_org = '[pk_org]' and def2 = '[def2]'"; - countSql = countSql.replace("[pk_org]", pkOrg).replace("[def2]", def2); + String countSql = "select count(1) from bd_materialplan where pk_org = '[pk_org]' and pk_materialplan != '[pkMaterialplan]' and def2 = '[def2]'"; + countSql = countSql.replace("[pk_org]", pkOrg).replace("[def2]", def2).replace("[pkMaterialplan]", pkMaterialplan); Integer num = (Integer) baseDAO.executeQuery(countSql, new ColumnProcessor()); if (num > 0) { throw new BusinessException("原系统物料编码重复,请检查!");