diff --git a/modules/i3plus-ext-mes-apiservice/src/groovy/Pisces2Mes/PiscesToMesProductionAssembly.groovy b/modules/i3plus-ext-mes-apiservice/src/groovy/Pisces2Mes/PiscesToMesProductionAssembly.groovy index eeaadee..8183b1a 100644 --- a/modules/i3plus-ext-mes-apiservice/src/groovy/Pisces2Mes/PiscesToMesProductionAssembly.groovy +++ b/modules/i3plus-ext-mes-apiservice/src/groovy/Pisces2Mes/PiscesToMesProductionAssembly.groovy @@ -1,8 +1,10 @@ import cn.estsh.i3plus.pojo.base.bean.DdlPackBean import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack import cn.estsh.i3plus.pojo.mes.bean.MesEquipment +import cn.estsh.i3plus.pojo.mes.bean.MesProductionRecord import cn.estsh.i3plus.pojo.mes.dbinterface.MesInterfaceDataMapper import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentRepository +import cn.estsh.i3plus.pojo.mes.repository.MesProductionRecordRepository import org.slf4j.Logger import org.slf4j.LoggerFactory import org.springframework.beans.factory.annotation.Autowired @@ -22,11 +24,15 @@ class PiscesToMesProductionAssembly { @Autowired private MesEquipmentRepository mesEquipmentRepository; + @Autowired + private MesProductionRecordRepository mesProductionRecordRepository; + def filterData(MesInterfaceDataMapper mapper, List> srcData) throws Exception { if (srcData == null || srcData.size() == 0) { return srcData } Map mesEquipmentMap = new HashMap<>(); + Map mesProductionRecordMap = new HashMap<>(); String organizeCode = mapper.getOrganizeCode(); for (Map rowMap : srcData) { //获取设备名称&设备代码 @@ -39,6 +45,18 @@ class PiscesToMesProductionAssembly { LOGGER.info("EQUIPMENT_FID:{}信息不存在", String.valueOf(rowMap.get("EQUIPMENT_FID"))) } } + + if (!StringUtils.isEmpty(rowMap.get("PRODUCTION_LOG_FID"))) { + MesProductionRecord record = getMesProductionRecord(organizeCode, String.valueOf(rowMap.get("PRODUCTION_LOG_FID")), mesProductionRecordMap) + if (!Objects.isNull(record)) { + rowMap.put("PRODUCTION_RECORD_ID", record.getId()) + } else { + LOGGER.info("加工记录FID:{}信息不存在", String.valueOf(rowMap.get("PRODUCTION_LOG_FID"))) + rowMap.put("PRODUCTION_RECORD_ID", 0) + } + } else { + rowMap.put("PRODUCTION_RECORD_ID", 0) + } } return srcData; } @@ -51,4 +69,13 @@ class PiscesToMesProductionAssembly { } return mesEquipmentMap.get(equipmentFid); } + + private MesProductionRecord getMesProductionRecord(String organizeCode, String fid, Map mesProductionRecordMap) { + if (Objects.isNull(mesProductionRecordMap) || !mesProductionRecordMap.containsKey(fid)) { + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(fid, "fid", ddlPackBean); + mesProductionRecordMap.put(fid, mesProductionRecordRepository.getByProperty(ddlPackBean)) + } + return mesProductionRecordMap.get(fid); + } } \ No newline at end of file diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java index 0f045c2..60f348f 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java @@ -2334,7 +2334,7 @@ public class MesWorkOrderService extends BaseMesService implements DdlPackBean reportRuleSortPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getStringEqualPack(workCenterCode, "workCenterCode", reportRuleSortPackBean); DdlPreparedPack.getStringEqualPack(vehicleNo, "vehicleNo", reportRuleSortPackBean); - DdlPreparedPack.getNotInPack(partNoList, "assemblyPartNo", reportRuleSortPackBean); + DdlPreparedPack.getNotInPackList(partNoList, "assemblyPartNo", reportRuleSortPackBean); //查询当前产线的所有排序生产规则--分为当前工单清单的装配件 List prodCfgList = mesProdRuleSortCfgRao.findByHqlWhere(reportRuleSortPackBean); for (MesProdRuleSortCfg ruleSortCfg : prodCfgList) {