diff --git a/ic/src/private/nc/bs/ic/m45/insert/rule/NoItemsDeliverMaterialRule.java b/ic/src/private/nc/bs/ic/m45/insert/rule/NoItemsDeliverMaterialRule.java index 0ca7ea2f..ae306b61 100644 --- a/ic/src/private/nc/bs/ic/m45/insert/rule/NoItemsDeliverMaterialRule.java +++ b/ic/src/private/nc/bs/ic/m45/insert/rule/NoItemsDeliverMaterialRule.java @@ -42,6 +42,7 @@ import nc.vo.pub.lang.UFDate; import nc.vo.pub.lang.UFDouble; import nc.vo.pubapp.pattern.exception.ExceptionUtils; import nc.vo.pubapp.pattern.pub.SqlBuilder; +import nc.vo.vorg.StockOrgVersionVO; import java.util.ArrayList; import java.util.List; @@ -79,9 +80,12 @@ public class NoItemsDeliverMaterialRule implements IRule { } private void noItemsDeliverMaterial(PurchaseInVO[] inVOS) throws BusinessException { - String OrgCondition = "code = 'C038' and enablestate = '2' and isbusinessunit='Y'"; + String orgCondition = "code = 'C038' and enablestate = '2' and isbusinessunit='Y'"; HYPubBO hyPub = new HYPubBO(); - String orgId = hyPub.findColValue(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, OrgCondition) + ""; + String orgId = hyPub.findColValue(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, orgCondition) + ""; + // 组织版本id + orgCondition = "code = 'C038' and enablestate = '2'"; + String org_vid = hyPub.findColValue(StockOrgVersionVO.getDefaultTableName(), StockOrgVersionVO.PK_VID, orgCondition) + ""; // 精密铸造,生成采购入库成功后再进行无备料领料 for (PurchaseInVO inVO : inVOS) { PurchaseInHeadVO head = inVO.getHead(); @@ -94,6 +98,10 @@ public class NoItemsDeliverMaterialRule implements IRule { if (configParams.isEmpty()) { ExceptionUtils.wrappBusinessException("自定义档案中的jm-config参数未配置"); } + String warehouseId = getWarehouseInfo(pkOrg, configParams); + if (MMValueCheck.isEmpty(warehouseId) || "~".equals(warehouseId)) { + ExceptionUtils.wrappBusinessException("请检查仓库编码是否配置正确"); + } for (PurchaseInBodyVO body : bodys) { String cmaterialvid = body.getCmaterialvid(); String condition = "pk_material = '" + cmaterialvid + "'"; @@ -172,10 +180,7 @@ public class NoItemsDeliverMaterialRule implements IRule { PickmHeadVO pickmHeadVO = pickmVO.getParentVO(); String cpickmid = pickmHeadVO.getCpickmid(); List itemVOS = new ArrayList<>(); - String warehouseId = getWarehouseInfo(pkOrg, configParams); - if (MMValueCheck.isEmpty(warehouseId) || "~".equals(warehouseId)) { - ExceptionUtils.wrappBusinessException("请检查仓库编码是否配置正确"); - } + Map materialMap = getMaterialInfo(cmaterialvid); String pkMeasdoc = ""; if (materialMap != null) { @@ -185,8 +190,8 @@ public class NoItemsDeliverMaterialRule implements IRule { itemVO.setCpickmid(cpickmid); itemVO.setPk_group("00"); itemVO.setPk_org(pkOrg); - itemVO.setPk_org_v(pkOrg); - itemVO.setCdeliverorgvid(pkOrg);// 发料组织 + itemVO.setPk_org_v(org_vid); + itemVO.setCdeliverorgvid(org_vid);// 发料组织 itemVO.setCdeliverorgid(pkOrg);// 发料组织 itemVO.setVrowno("10");// 行号 itemVO.setCbmaterialid(cmaterialvid);