feat(uapbd): 物料同步至艾普MES增加异常捕获
This commit is contained in:
		
							parent
							
								
									4de8c5b102
								
							
						
					
					
						commit
						50838e11bc
					
				|  | @ -46,39 +46,43 @@ public class MaterialToEpicMesListener implements IBusinessListener { | |||
|         Object[] objs = e.getObjs(); | ||||
| 
 | ||||
|         // EventType是事件编码 1002-新增后 1004-修改后 1071-状态由停用变为启用后 1069-状态由启用变为停用后 1061批改后 | ||||
|         if ("1002".equals(eventType) || "1004".equals(eventType) || "1061".equals(eventType) || | ||||
|                 "1071".equals(eventType) || "1069".equals(eventType)) { | ||||
|             MaterialVO[] useVOs = ArrayClassConvertUtil.convert(objs, MaterialVO.class); | ||||
|             configParams = MyHelper.getConfigParams("Dldz-config", null); | ||||
|             if (configParams.isEmpty()) { | ||||
|                 throw new BusinessException("电力电子的艾普MES接口缺少配置"); | ||||
|             } | ||||
|             buildSyncData(useVOs, eventType); | ||||
|         } else if ("1009".equals(eventType)) { | ||||
|             // 物料可见性范围-分配后 1009 | ||||
|             configParams = MyHelper.getConfigParams("Dldz-config", null); | ||||
|             if (configParams.isEmpty()) { | ||||
|                 throw new BusinessException("电力电子的艾普MES接口缺少配置"); | ||||
|             } | ||||
|             HYPubBO hyPub = new HYPubBO(); | ||||
|             List<MaterialVO> voList = new ArrayList<>(); | ||||
|             for (Object obj : objs) { | ||||
|                 MultiOrgAssignVO vo = (MultiOrgAssignVO) obj; | ||||
|                 String pkMaterial = vo.getPk_doc(); | ||||
|                 String pkOrg = vo.getPk_org(); | ||||
|                 String orgCode = (String) hyPub.findColValue(OrgVO.getDefaultTableName(), OrgVO.CODE, "dr =0 and pk_org = '" + pkOrg + "' "); | ||||
|                 // 检查当前组织是否为电力电子 | ||||
|                 if (MyHelper.checkIfDldzOrg(orgCode, configParams)) { | ||||
|                     continue; | ||||
|         try { | ||||
|             if ("1002".equals(eventType) || "1004".equals(eventType) || "1061".equals(eventType) || | ||||
|                     "1071".equals(eventType) || "1069".equals(eventType)) { | ||||
|                 MaterialVO[] useVOs = ArrayClassConvertUtil.convert(objs, MaterialVO.class); | ||||
|                 configParams = MyHelper.getConfigParams("Dldz-config", null); | ||||
|                 if (configParams.isEmpty()) { | ||||
|                     throw new BusinessException("电力电子的艾普MES接口缺少配置"); | ||||
|                 } | ||||
|                 MaterialVO materialVO = (MaterialVO) hyPub.queryByPrimaryKey(MaterialVO.class, pkMaterial); | ||||
|                 voList.add(materialVO); | ||||
|             } | ||||
|             if (!voList.isEmpty()) { | ||||
|                 MaterialVO[] useVOs = voList.toArray(new MaterialVO[0]); | ||||
|                 buildSyncData(useVOs, eventType); | ||||
|             } | ||||
|             } else if ("1009".equals(eventType)) { | ||||
|                 // 物料可见性范围-分配后 1009 | ||||
|                 configParams = MyHelper.getConfigParams("Dldz-config", null); | ||||
|                 if (configParams.isEmpty()) { | ||||
|                     throw new BusinessException("电力电子的艾普MES接口缺少配置"); | ||||
|                 } | ||||
|                 HYPubBO hyPub = new HYPubBO(); | ||||
|                 List<MaterialVO> voList = new ArrayList<>(); | ||||
|                 for (Object obj : objs) { | ||||
|                     MultiOrgAssignVO vo = (MultiOrgAssignVO) obj; | ||||
|                     String pkMaterial = vo.getPk_doc(); | ||||
|                     String pkOrg = vo.getPk_org(); | ||||
|                     String orgCode = (String) hyPub.findColValue(OrgVO.getDefaultTableName(), OrgVO.CODE, "dr =0 and pk_org = '" + pkOrg + "' "); | ||||
|                     // 检查当前组织是否为电力电子 | ||||
|                     if (MyHelper.checkIfDldzOrg(orgCode, configParams)) { | ||||
|                         continue; | ||||
|                     } | ||||
|                     MaterialVO materialVO = (MaterialVO) hyPub.queryByPrimaryKey(MaterialVO.class, pkMaterial); | ||||
|                     voList.add(materialVO); | ||||
|                 } | ||||
|                 if (!voList.isEmpty()) { | ||||
|                     MaterialVO[] useVOs = voList.toArray(new MaterialVO[0]); | ||||
|                     buildSyncData(useVOs, eventType); | ||||
|                 } | ||||
| 
 | ||||
|             } | ||||
|         } catch (BusinessException ex) { | ||||
|             logDl.error("EpicMes-Material-exp:" + ex.getMessage(), ex); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue