From 3d9b4e6aa2030c3979c3bda49fcc3ace840e0304 Mon Sep 17 00:00:00 2001 From: "xiangwei.zhang" <752558143@qq.com> Date: Fri, 27 Sep 2024 14:32:52 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E5=88=A4=E6=96=AD=E5=8F=AF=E7=96=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java index f8f340e..75f9f16 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java @@ -238,7 +238,7 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService partInspection = createPartInspection(model, MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue(), org); if (model.getOptType() != null && model.getOptType() == 2) { - partInspection .setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + partInspection.setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); } partInspectionRepository.save(partInspection); From f9415668a3ede873fde8975c459ecde473f00841 Mon Sep 17 00:00:00 2001 From: "xiangwei.zhang" <752558143@qq.com> Date: Fri, 27 Sep 2024 18:26:37 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E5=88=A4=E6=96=AD=E5=8F=AF=E7=96=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java | 5 +++++ .../serviceimpl/step/MesProdCraftRouteCheckStepService.java | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java index 75f9f16..1ebd00d 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java @@ -323,6 +323,11 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService if (StringUtils.isEmpty(model.getPartInspection())) { partInspection = createPartInspection(model, MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue(), org); + + if (model.getOptType() != null && model.getOptType() == 2) { + partInspection.setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + } + model.setPartInspection(partInspectionRepository.save(partInspection)); List defectTypeNoExitList = new ArrayList<>(); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProdCraftRouteCheckStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProdCraftRouteCheckStepService.java index 2ea32c0..4fff481 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProdCraftRouteCheckStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProdCraftRouteCheckStepService.java @@ -124,7 +124,7 @@ public class MesProdCraftRouteCheckStepService extends BaseStepService { //查询工艺路线数据 private void handleProdCraftData(StationRequestBean reqBean, MesWorkCenter workCenter, String partNo, Map> craftRouteDataMap) { - List craftRouteDetailList = fsmRouteDataService.handleProdCraftData(reqBean, workCenter.getCenterType(), partNo); + List craftRouteDetailList = fsmRouteDataService.handleProdCraftData(reqBean, workCenter.getCenterType(), partNo, true); if (!CollectionUtils.isEmpty(craftRouteDetailList)) craftRouteDataMap.put(partNo, craftRouteDetailList); } From ccc52308e30dcdf7df707139c34ef1f84997a723 Mon Sep 17 00:00:00 2001 From: "xiangwei.zhang" <752558143@qq.com> Date: Fri, 27 Sep 2024 19:41:34 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E5=88=A4=E6=96=AD=E5=8F=AF=E7=96=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 0dc8741..1f9ba25 100644 --- a/pom.xml +++ b/pom.xml @@ -29,11 +29,11 @@ INFO true UTF-8 + - 1.0.0-yfai 1.0.0.1-patch 1.0.0-yfai From a05cd762bc334f0eebbc8dd15b445fe98425c365 Mon Sep 17 00:00:00 2001 From: "xiangwei.zhang" <752558143@qq.com> Date: Sun, 29 Sep 2024 09:32:11 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E6=9D=A1=E7=A0=81=E6=89=93=E5=8D=B0?= =?UTF-8?q?=E6=AC=A1=E6=95=B0=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apiservice/serviceimpl/busi/MesProduceSnPrintService.java | 2 ++ .../serviceimpl/step/MesProductSnPrintStepService.java | 10 +++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java index bbf41be..08e9463 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProduceSnPrintService.java @@ -171,6 +171,8 @@ public class MesProduceSnPrintService implements IMesProduceSnPrintService { resultModel.getMesProduceSnList().forEach(mesProduceSn -> { mesProduceSn.setWorkCenterCode(workCenterCode); + mesProduceSn.setPrintCount(MesPcnExtConstWords.ONE); + mesProduceSn.setPrintStatus(MesExtEnumUtil.PRINT_STATUS.PRINTED.getValue()); mesProduceSn.setFid(UUID.randomUUID().toString()); //保存条码 mesProduceSnRDao.insert(mesProduceSn); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnPrintStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnPrintStepService.java index a50c873..87ec2ab 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnPrintStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductSnPrintStepService.java @@ -143,9 +143,13 @@ public class MesProductSnPrintStepService extends BaseStepService { for (MesProductionPsOutContext outSn : productionPsOutContextList) { DdlPackBean packBean = DdlPackBean.getDdlPackBean(outSn.getOrganizeCode()); DdlPreparedPack.getNumEqualPack(outSn.getId(), MesPcnExtConstWords.ID, packBean); - mesProduceSnRao.updateByProperties( - new String[]{MesPcnExtConstWords.PRINT_STATUS, MesPcnExtConstWords.MODIFY_USER, MesPcnExtConstWords.MODIFY_DATE_TIME}, - new Object[]{MesExtEnumUtil.PRINT_STATUS.PRINTED.getValue(), reqBean.getUserInfo(), TimeTool.getNowTime(true)}, packBean); + + MesProduceSn produceSn = mesProduceSnRao.getByProperty(packBean); + if (produceSn!= null) { + mesProduceSnRao.updateByProperties( + new String[]{MesPcnExtConstWords.PRINT_STATUS, "printCount", MesPcnExtConstWords.MODIFY_USER, MesPcnExtConstWords.MODIFY_DATE_TIME}, + new Object[]{MesExtEnumUtil.PRINT_STATUS.PRINTED.getValue(),MesPcnExtConstWords.ONE, reqBean.getUserInfo(), TimeTool.getNowTime(true)}, packBean); + } } //保存打印条码记录 snLogRao.saveAll(snLogList); From 36ee2c007af626c9f60c43f83635868ab8d4042b Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Mon, 30 Sep 2024 17:15:02 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E4=B8=B4=E6=97=B6=E5=AD=98=E5=82=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dao/IMesWorkCellScanMonitorLogDao.java | 12 +++ .../daoimpl/MesWorkCellScanMonitorLogDao.java | 88 ++++++++++++++++++++++ .../MesWorkCellScanMonitorLogExtService.java | 16 ++-- 3 files changed, 109 insertions(+), 7 deletions(-) create mode 100644 modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java create mode 100644 modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java new file mode 100644 index 0000000..349be76 --- /dev/null +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java @@ -0,0 +1,12 @@ +package cn.estsh.i3plus.ext.mes.pcn.apiservice.dao; + +import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext; +import cn.estsh.i3plus.pojo.mes.model.StationResultBean; +import io.swagger.annotations.ApiOperation; + +public interface IMesWorkCellScanMonitorLogDao { + + @ApiOperation(value = "写入工位扫描监控信息") + void insertWorkCellScanMonitorLog(StationResultBean resultBean, MesScanMonitorContext scanMonitorContext); + +} diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java new file mode 100644 index 0000000..9fb31a1 --- /dev/null +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java @@ -0,0 +1,88 @@ +package cn.estsh.i3plus.ext.mes.pcn.apiservice.daoimpl; + + +import cn.estsh.i3plus.ext.mes.pcn.apiservice.dao.IMesWorkCellScanMonitorLogDao; +import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext; +import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; +import cn.estsh.i3plus.pojo.mes.model.StationResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; + +import javax.persistence.EntityManager; +import javax.persistence.Query; +import java.util.Map; + +@Service +public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogDao { + + @Autowired + private EntityManager entityManager; + + @Override + public void insertWorkCellScanMonitorLog(StationResultBean resultBean, MesScanMonitorContext scanMonitorContext) { + + if (null == resultBean || null == scanMonitorContext) return; + + StringBuffer builder = new StringBuffer(); + + builder.append(" insert into mes_work_cell_scan_monitor_"); + builder.append(resultBean.getWorkCenterCode().toLowerCase()); + builder.append("( id, organize_code, is_valid, is_deleted, create_user, create_date_time, modify_user, modify_date_time,"); + builder.append("( description, remark, system_sync_date_time, system_sync_status,"); + builder.append(" area_code, work_center_code, work_cell_code, equipment_code, equipment_name, process_code, process_name, craft_code, craft_name,"); + builder.append(" mould_record_id, scan_info, work_order_no, serial_number, product_sn, cust_sn, part_no, part_name,"); + builder.append(" step_code, log_type, message, message_type, deal_status, org_work_code)"); + builder.append(" values ( :id , :organizeCode , :isValid , :isDeleted , :createUser , :createDatetime , :modifyUser , :modifyDatetime ,"); + builder.append(" :description , :remark , :systemSyncDatetime , :systemSyncStatus ,"); + builder.append(" :areaCode , :workCenterCode , :workCellCode , :equipmentCode , :equipmentName , :processCode , :processName , :craftCode , :craftName ,"); + builder.append(" :mouldRecordId , :scanInfo , :workOrderNo , :serialNumber , :productSn , :custSn , :partNo , :partName ,"); + builder.append(" :stepCode , :logType , :message , :messageType , :dealStatus , :orgWorkCode )"); + + Query insert = entityManager.createNativeQuery(builder.toString()); + + + + + } + + @Override + public void updateEquipVariableStatus(String organizeCode, Integer equipId, Map equipmentLogIdMap, Integer equipVariableStatus) { + + if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(equipId) || CollectionUtils.isEmpty(equipmentLogIdMap) || StringUtils.isEmpty(equipVariableStatus)) return; + + StringBuffer builder = new StringBuffer(); + + for (int i = 0; i < equipmentLogIdMap.size(); i ++) { + + builder.append(" update mes_equipment_log_"); + builder.append(equipId); + builder.append(" set equip_variable_status = :equipVariableStatus_"); + builder.append(i); + builder.append(" where id = :id_"); + builder.append(i); + builder.append(" and modify_date_time = :modifyDatetime_"); + builder.append(i); + builder.append(" ;"); + + } + + Query update = entityManager.createNativeQuery(builder.toString()); + + Integer index = 0; + for (Map.Entry entry : equipmentLogIdMap.entrySet()) { + if (null == entry) continue; + update.setParameter(String.format("%s_%s", MesPcnExtConstWords.EQUIP_VARIABLE_STATUS, index), equipVariableStatus); + update.setParameter(String.format("%s_%s", MesPcnExtConstWords.ID, index), entry.getKey()); + update.setParameter(String.format("%s_%s", MesPcnExtConstWords.MODIFY_DATE_TIME, index), entry.getValue()); + index ++; + } + + update.executeUpdate(); + + } + + + +} diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java index 26e90d1..67e8229 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java @@ -54,6 +54,14 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic if (checkRepeat(resultBean, scanMonitorContext)) return; + if (null == scanMonitorContext) scanMonitorContext = new MesScanMonitorContext(); + + if (StringUtils.isEmpty(scanMonitorContext.getEquipmentCode())) { + MesWcEquipment wcEquipment = equipmentExtService.getWcEquipment(resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode()); + scanMonitorContext.setEquipmentCode(null != wcEquipment ? wcEquipment.getEquipmentCode() : null); + scanMonitorContext.setEquipmentName(null != wcEquipment ? wcEquipment.getEquipmentName() : null); + } + MesWorkCellScanMonitorLog workCellScanMonitorLog = new MesWorkCellScanMonitorLog(); if (null != scanMonitorContext) BeanUtils.copyProperties(scanMonitorContext, workCellScanMonitorLog); @@ -65,12 +73,6 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic workCellScanMonitorLog.setOrgWorkCode(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(workCellScanMonitorLog.getOrganizeCode()).add(workCellScanMonitorLog.getWorkCenterCode()).toString()); - if (StringUtils.isEmpty(workCellScanMonitorLog.getEquipmentCode())) { - MesWcEquipment wcEquipment = equipmentExtService.getWcEquipment(resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode()); - workCellScanMonitorLog.setEquipmentCode(null != wcEquipment ? wcEquipment.getEquipmentCode() : null); - workCellScanMonitorLog.setEquipmentName(null != wcEquipment ? wcEquipment.getEquipmentName() : null); - } - ConvertBean.serviceModelInitialize(workCellScanMonitorLog, resultBean.getUserInfo()); workCellScanMonitorLog.setCreateDatetime(resultBean.getCreateDatetime()); @@ -91,7 +93,7 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic initCellMsg2RepeatMap(resultBean); - Long mouldRecordId = null != scanMonitorContext ? scanMonitorContext.getMouldRecordId() : null; + Long mouldRecordId = (null != scanMonitorContext && !StringUtils.isEmpty(scanMonitorContext.getMouldRecordId())) ? scanMonitorContext.getMouldRecordId() : null; String mouldRecordIdStr = !StringUtils.isEmpty(mouldRecordId) ? mouldRecordId.toString() : MesPcnExtConstWords.EMPTY; if (!cellMsg2RepeatMap.get(resultBean.getClientInfo()).get(0).equals(mouldRecordIdStr)) { From cfed01aa5cf4e64201c47e9fcfe3103b113cb441 Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Mon, 30 Sep 2024 19:42:43 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E5=B7=A5=E4=BD=8D=E6=89=AB=E6=8F=8F=20?= =?UTF-8?q?=E6=97=A5=E5=BF=97=20=E5=8E=BB=E9=99=A4=E5=88=86=E8=A1=A8=20?= =?UTF-8?q?=E5=86=99DB=E6=94=B9=E6=88=90sql=E6=89=A7=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dao/IMesWorkCellScanMonitorLogDao.java | 9 ++ .../daoimpl/MesWorkCellScanMonitorLogDao.java | 133 ++++++++++++++++----- .../MesWorkCellScanMonitorLogExtService.java | 69 ++--------- .../ext/mes/pcn/pojo/util/MesPcnExtConstWords.java | 18 +++ 4 files changed, 141 insertions(+), 88 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java index 349be76..219503c 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/dao/IMesWorkCellScanMonitorLogDao.java @@ -1,12 +1,21 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.dao; +import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsOutContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext; import cn.estsh.i3plus.pojo.mes.model.StationResultBean; import io.swagger.annotations.ApiOperation; +import java.util.List; + public interface IMesWorkCellScanMonitorLogDao { @ApiOperation(value = "写入工位扫描监控信息") void insertWorkCellScanMonitorLog(StationResultBean resultBean, MesScanMonitorContext scanMonitorContext); + @ApiOperation(value = "修改工位扫描监控信息") + Integer updateWorkCellScanMonitorLog(String organizeCode, String workCenterCode, String workCellCode, Long mouldRecordId); + + @ApiOperation(value = "修改工位扫描监控信息") + Integer updateWorkCellScanMonitorLog(String organizeCode, String workCenterCode, String userInfo, Long mouldRecordId, List productionPsOutContextList); + } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java index 9fb31a1..ed78dea 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/daoimpl/MesWorkCellScanMonitorLogDao.java @@ -2,9 +2,15 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.daoimpl; import cn.estsh.i3plus.ext.mes.pcn.apiservice.dao.IMesWorkCellScanMonitorLogDao; +import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsOutContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; +import cn.estsh.i3plus.platform.common.tool.TimeTool; +import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil; import cn.estsh.i3plus.pojo.mes.model.StationResultBean; +import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -12,7 +18,9 @@ import org.springframework.util.StringUtils; import javax.persistence.EntityManager; import javax.persistence.Query; -import java.util.Map; +import java.util.List; +import java.util.StringJoiner; +import java.util.stream.Collectors; @Service public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogDao { @@ -20,6 +28,9 @@ public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogD @Autowired private EntityManager entityManager; + @Autowired + private SnowflakeIdMaker snowflakeIdMaker; + @Override public void insertWorkCellScanMonitorLog(StationResultBean resultBean, MesScanMonitorContext scanMonitorContext) { @@ -42,47 +53,115 @@ public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogD Query insert = entityManager.createNativeQuery(builder.toString()); + insert.setParameter(MesPcnExtConstWords.ID, snowflakeIdMaker.nextId()); + insert.setParameter(MesPcnExtConstWords.ORGANIZE_CODE, resultBean.getOrganizeCode()); + insert.setParameter(MesPcnExtConstWords.IS_VALID, CommonEnumUtil.IS_VAILD.VAILD.getValue()); + insert.setParameter(MesPcnExtConstWords.IS_DELETED, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + insert.setParameter(MesPcnExtConstWords.CREATE_USER, resultBean.getUserInfo()); + insert.setParameter(MesPcnExtConstWords.CREATE_DATE_TIME, TimeTool.getNowTime(true)); + insert.setParameter(MesPcnExtConstWords.MODIFY_USER, resultBean.getUserInfo()); + insert.setParameter(MesPcnExtConstWords.MODIFY_DATE_TIME, TimeTool.getNowTime(true)); + insert.setParameter(MesPcnExtConstWords.DESCRIPTION, null); + insert.setParameter(MesPcnExtConstWords.REMARK, null); + insert.setParameter(MesPcnExtConstWords.SYSTEM_SYNC_DATE_TIME, null); + insert.setParameter(MesPcnExtConstWords.AREA_CODE, resultBean.getAreaCode()); + insert.setParameter(MesPcnExtConstWords.WORK_CENTER_CODE, resultBean.getWorkCenterCode()); + insert.setParameter(MesPcnExtConstWords.WORK_CELL_CODE, resultBean.getWorkCellCode()); + insert.setParameter(MesPcnExtConstWords.EQUIPMENT_CODE, scanMonitorContext.getEquipmentCode()); + insert.setParameter(MesPcnExtConstWords.EQUIPMENT_NAME, scanMonitorContext.getEquipmentName()); + insert.setParameter(MesPcnExtConstWords.PROCESS_CODE, scanMonitorContext.getProcessCode()); + insert.setParameter(MesPcnExtConstWords.PROCESS_NAME, scanMonitorContext.getProcessName()); + insert.setParameter(MesPcnExtConstWords.CRAFT_CODE, scanMonitorContext.getCraftCode()); + insert.setParameter(MesPcnExtConstWords.CRAFT_NAME, scanMonitorContext.getCraftName()); + insert.setParameter(MesPcnExtConstWords.MOULD_RECORD_ID, scanMonitorContext.getMouldRecordId()); + insert.setParameter(MesPcnExtConstWords.SCAN_INFO, resultBean.getScanInfo()); + insert.setParameter(MesPcnExtConstWords.WORK_ORDER_NO, null); + insert.setParameter(MesPcnExtConstWords.SERIAL_NUMBER, null); + insert.setParameter(MesPcnExtConstWords.PRODUCT_SN, null); + insert.setParameter(MesPcnExtConstWords.CUST_SN, null); + insert.setParameter(MesPcnExtConstWords.PART_NO, null); + insert.setParameter(MesPcnExtConstWords.PART_NAME, null); + insert.setParameter(MesPcnExtConstWords.STEP_CODE, resultBean.getStepCode()); + insert.setParameter(MesPcnExtConstWords.LOG_TYPE, resultBean.getLogType()); + insert.setParameter(MesPcnExtConstWords.MESSAGE, resultBean.getMessage()); + insert.setParameter(MesPcnExtConstWords.MESSAGE_TYPE, MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_MESSAGE_TYPE.codeOfValue(resultBean.getDataType())); + insert.setParameter(MesPcnExtConstWords.ORG_WORK_CODE, new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(resultBean.getOrganizeCode()).add(resultBean.getWorkCenterCode()).toString()); + //存在开模ID的记录延迟同步 + if (!StringUtils.isEmpty(scanMonitorContext.getMouldRecordId())) { + insert.setParameter(MesPcnExtConstWords.SYSTEM_SYNC_STATUS, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + insert.setParameter(MesPcnExtConstWords.DEAL_STATUS, MesExtEnumUtil.MES_LOG_DEAL_STATUS.UNDEAL.getValue()); + } else { + insert.setParameter(MesPcnExtConstWords.SYSTEM_SYNC_STATUS, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + insert.setParameter(MesPcnExtConstWords.DEAL_STATUS, MesExtEnumUtil.MES_LOG_DEAL_STATUS.DEAL_SUCCESS.getValue()); + } - - + insert.executeUpdate(); } @Override - public void updateEquipVariableStatus(String organizeCode, Integer equipId, Map equipmentLogIdMap, Integer equipVariableStatus) { + public Integer updateWorkCellScanMonitorLog(String organizeCode, String workCenterCode, String workCellCode, Long mouldRecordId) { - if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(equipId) || CollectionUtils.isEmpty(equipmentLogIdMap) || StringUtils.isEmpty(equipVariableStatus)) return; + if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workCenterCode) || StringUtils.isEmpty(workCellCode)) return MesPcnExtConstWords.ZERO; StringBuffer builder = new StringBuffer(); - for (int i = 0; i < equipmentLogIdMap.size(); i ++) { - - builder.append(" update mes_equipment_log_"); - builder.append(equipId); - builder.append(" set equip_variable_status = :equipVariableStatus_"); - builder.append(i); - builder.append(" where id = :id_"); - builder.append(i); - builder.append(" and modify_date_time = :modifyDatetime_"); - builder.append(i); - builder.append(" ;"); - - } + builder.append(" update mes_work_cell_scan_monitor_"); + builder.append(workCenterCode.toLowerCase()); + builder.append(" set system_sync_status = :systemSyncStatus , deal_status = :dealStatus1 "); + builder.append(" where organize_code = :organizeCode and deal_status = :dealStatus2 and work_cell_code = :workCellCode "); + if (!StringUtils.isEmpty(mouldRecordId)) builder.append(" and mould_record_id != :mouldRecordId "); Query update = entityManager.createNativeQuery(builder.toString()); - Integer index = 0; - for (Map.Entry entry : equipmentLogIdMap.entrySet()) { - if (null == entry) continue; - update.setParameter(String.format("%s_%s", MesPcnExtConstWords.EQUIP_VARIABLE_STATUS, index), equipVariableStatus); - update.setParameter(String.format("%s_%s", MesPcnExtConstWords.ID, index), entry.getKey()); - update.setParameter(String.format("%s_%s", MesPcnExtConstWords.MODIFY_DATE_TIME, index), entry.getValue()); - index ++; - } + update.setParameter(MesPcnExtConstWords.SYSTEM_SYNC_STATUS, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + update.setParameter("dealStatus1", MesExtEnumUtil.MES_LOG_DEAL_STATUS.DEAL_SUCCESS.getValue()); - update.executeUpdate(); + update.setParameter(MesPcnExtConstWords.ORGANIZE_CODE, organizeCode); + update.setParameter("dealStatus2", MesExtEnumUtil.MES_LOG_DEAL_STATUS.UNDEAL.getValue()); + update.setParameter(MesPcnExtConstWords.WORK_CELL_CODE, workCellCode); + if (!StringUtils.isEmpty(mouldRecordId)) update.setParameter(MesPcnExtConstWords.MOULD_RECORD_ID, mouldRecordId); + return update.executeUpdate(); } + @Override + public Integer updateWorkCellScanMonitorLog(String organizeCode, String workCenterCode, String userInfo, Long mouldRecordId, List productionPsOutContextList) { + + if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workCenterCode) || StringUtils.isEmpty(mouldRecordId) || CollectionUtils.isEmpty(productionPsOutContextList)) return MesPcnExtConstWords.ZERO; + String workOrderNo = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getWorkOrderNo()))).map(MesProductionPsOutContext::getWorkOrderNo).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); + String serialNumber = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getSerialNumber()))).map(MesProductionPsOutContext::getSerialNumber).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); + String productSn = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getProductSn()))).map(MesProductionPsOutContext::getProductSn).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); + String custSn = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getCustSn()))).map(MesProductionPsOutContext::getCustSn).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); + String partNo = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getPartNo()))).map(MesProductionPsOutContext::getPartNo).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); + String partName = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getPartName()))).map(MesProductionPsOutContext::getPartName).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); + + StringBuffer builder = new StringBuffer(); + + builder.append(" update mes_work_cell_scan_monitor_"); + builder.append(workCenterCode.toLowerCase()); + builder.append(" set work_order_no = :workOrderNo , serial_number = :serialNumber , product_sn = :productSn , cust_sn = :custSn , part_no = :partNo , part_name = :partName ,"); + builder.append(" modify_user = :modifyUser , modify_date_time = :modifyDatetime , system_sync_status = :systemSyncStatus , deal_status = :dealStatus1 "); + builder.append(" where organize_code = :organizeCode and mould_record_id = :mouldRecordId "); + + Query update = entityManager.createNativeQuery(builder.toString()); + + update.setParameter(MesPcnExtConstWords.WORK_ORDER_NO, workOrderNo); + update.setParameter(MesPcnExtConstWords.SERIAL_NUMBER, serialNumber); + update.setParameter(MesPcnExtConstWords.PRODUCT_SN, productSn); + update.setParameter(MesPcnExtConstWords.CUST_SN, custSn); + update.setParameter(MesPcnExtConstWords.PART_NO, partNo); + update.setParameter(MesPcnExtConstWords.PART_NAME, partName); + update.setParameter(MesPcnExtConstWords.MODIFY_USER, userInfo); + update.setParameter(MesPcnExtConstWords.MODIFY_DATE_TIME, TimeTool.getNowTime(true)); + update.setParameter(MesPcnExtConstWords.SYSTEM_SYNC_STATUS, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + update.setParameter(MesPcnExtConstWords.DEAL_STATUS, MesExtEnumUtil.MES_LOG_DEAL_STATUS.DEAL_SUCCESS.getValue()); + + update.setParameter(MesPcnExtConstWords.ORGANIZE_CODE, organizeCode); + update.setParameter(MesPcnExtConstWords.MOULD_RECORD_ID, mouldRecordId); + + return update.executeUpdate(); + + } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java index 67e8229..d348667 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesWorkCellScanMonitorLogExtService.java @@ -2,23 +2,15 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.equiplog; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesEquipmentExtService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService; +import cn.estsh.i3plus.ext.mes.pcn.apiservice.dao.IMesWorkCellScanMonitorLogDao; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsOutContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords; import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.swslog.ISwsWriteDbLogService; -import cn.estsh.i3plus.platform.common.convert.ConvertBean; -import cn.estsh.i3plus.platform.common.tool.TimeTool; -import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; -import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.mes.bean.MesWcEquipment; -import cn.estsh.i3plus.pojo.mes.bean.MesWorkCellScanMonitorLog; import cn.estsh.i3plus.pojo.mes.model.StationResultBean; -import cn.estsh.i3plus.pojo.mes.repository.MesWorkCellScanMonitorLogRepository; -import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -26,10 +18,8 @@ import org.springframework.util.StringUtils; import java.util.List; import java.util.Map; -import java.util.StringJoiner; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CopyOnWriteArrayList; -import java.util.stream.Collectors; @Slf4j @Service @@ -42,7 +32,7 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic private IMesEquipmentExtService equipmentExtService; @Autowired - private MesWorkCellScanMonitorLogRepository workCellScanMonitorLogRepository; + private IMesWorkCellScanMonitorLogDao workCellScanMonitorLogDao; private final static Map> cellMsg2RepeatMap = new ConcurrentHashMap(); @@ -62,30 +52,10 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic scanMonitorContext.setEquipmentName(null != wcEquipment ? wcEquipment.getEquipmentName() : null); } - MesWorkCellScanMonitorLog workCellScanMonitorLog = new MesWorkCellScanMonitorLog(); + if (null == scanMonitorContext) + log.info("工厂{}生产线{}工位{}: MesWorkCellScanMonitorLogExtService --- 上下文当前不存在工位扫描监控信息 --- {}", resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode(), resultBean.toWriteDbString()); - if (null != scanMonitorContext) BeanUtils.copyProperties(scanMonitorContext, workCellScanMonitorLog); - else log.info("工厂{}生产线{}工位{}: MesWorkCellScanMonitorLogExtService --- 上下文当前不存在工位扫描监控信息 --- {}", resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode(), resultBean.toWriteDbString()); - - BeanUtils.copyProperties(resultBean, workCellScanMonitorLog); - - workCellScanMonitorLog.setMessageType(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_MESSAGE_TYPE.codeOfValue(resultBean.getDataType())); - - workCellScanMonitorLog.setOrgWorkCode(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(workCellScanMonitorLog.getOrganizeCode()).add(workCellScanMonitorLog.getWorkCenterCode()).toString()); - - ConvertBean.serviceModelInitialize(workCellScanMonitorLog, resultBean.getUserInfo()); - workCellScanMonitorLog.setCreateDatetime(resultBean.getCreateDatetime()); - - //存在开模ID的记录延迟同步 - if (!StringUtils.isEmpty(workCellScanMonitorLog.getMouldRecordId())) { - workCellScanMonitorLog.setSystemSyncStatus(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); - workCellScanMonitorLog.setDealStatus(MesExtEnumUtil.MES_LOG_DEAL_STATUS.UNDEAL.getValue()); - } else { - workCellScanMonitorLog.setSystemSyncStatus(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); - workCellScanMonitorLog.setDealStatus(MesExtEnumUtil.MES_LOG_DEAL_STATUS.DEAL_SUCCESS.getValue()); - } - - workCellScanMonitorLogRepository.insert(workCellScanMonitorLog); + workCellScanMonitorLogDao.insertWorkCellScanMonitorLog(resultBean, scanMonitorContext); } @@ -100,15 +70,8 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic cellMsg2RepeatMap.get(resultBean.getClientInfo()).clear(); cellMsg2RepeatMap.get(resultBean.getClientInfo()).add(0, mouldRecordIdStr); - //补偿数据 - DdlPackBean packBean = DdlPackBean.getDdlPackBean(resultBean.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(resultBean.getWorkCenterCode(), MesPcnExtConstWords.WORK_CENTER_CODE, packBean); - DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.MES_LOG_DEAL_STATUS.UNDEAL.getValue(), MesPcnExtConstWords.DEAL_STATUS, packBean); - if (!StringUtils.isEmpty(mouldRecordId)) DdlPreparedPack.getNumNOEqualPack(mouldRecordId, MesPcnExtConstWords.MOULD_RECORD_ID, packBean); - int count = workCellScanMonitorLogRepository.updateByPropertiesNoSync( - new String[]{MesPcnExtConstWords.SYSTEM_SYNC_STATUS, MesPcnExtConstWords.DEAL_STATUS}, - new Object[]{CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), MesExtEnumUtil.MES_LOG_DEAL_STATUS.DEAL_SUCCESS.getValue()}, - packBean); + //补偿数据: 将工位排除当前开模ID的未处理的的数据改成已处理,未同步 + Integer count = workCellScanMonitorLogDao.updateWorkCellScanMonitorLog(resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode(), mouldRecordId); log.info("工厂{}生产线{}工位{}: MesWorkCellScanMonitorLogExtService --- 补偿同步条数:{} ---", resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode(), count); @@ -157,23 +120,7 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic List productionPsOutContextList = resultBean.getResultList(); - String workOrderNo = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getWorkOrderNo()))).map(MesProductionPsOutContext::getWorkOrderNo).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); - String serialNumber = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getSerialNumber()))).map(MesProductionPsOutContext::getSerialNumber).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); - String productSn = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getProductSn()))).map(MesProductionPsOutContext::getProductSn).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); - String custSn = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getCustSn()))).map(MesProductionPsOutContext::getCustSn).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); - String partNo = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getPartNo()))).map(MesProductionPsOutContext::getPartNo).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); - String partName = productionPsOutContextList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getPartName()))).map(MesProductionPsOutContext::getPartName).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON)); - - DdlPackBean packBean = DdlPackBean.getDdlPackBean(resultBean.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(resultBean.getWorkCenterCode(), MesPcnExtConstWords.WORK_CENTER_CODE, packBean); - DdlPreparedPack.getNumEqualPack(Long.valueOf(resultBean.getScanInfo()), MesPcnExtConstWords.MOULD_RECORD_ID, packBean); - - workCellScanMonitorLogRepository.updateByProperties( - new String[]{MesPcnExtConstWords.WORK_ORDER_NO, MesPcnExtConstWords.SERIAL_NUMBER, MesPcnExtConstWords.PRODUCT_SN, MesPcnExtConstWords.CUST_SN, - MesPcnExtConstWords.PART_NO, MesPcnExtConstWords.PART_NAME, MesPcnExtConstWords.MODIFY_DATE_TIME, MesPcnExtConstWords.MODIFY_USER, MesPcnExtConstWords.DEAL_STATUS}, - new Object[]{workOrderNo, serialNumber, productSn, custSn, - partNo, partName, TimeTool.getNowTime(true), resultBean.getUserInfo(), MesExtEnumUtil.MES_LOG_DEAL_STATUS.DEAL_SUCCESS.getValue()}, - packBean); + workCellScanMonitorLogDao.updateWorkCellScanMonitorLog(resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getUserInfo(), Long.valueOf(resultBean.getScanInfo()), productionPsOutContextList); } diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java index 54fb717..5ac9c41 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java @@ -61,16 +61,24 @@ public class MesPcnExtConstWords { public static final String USER_NAME = "userName"; // 修改人 public static final String MODIFY_USER = "modifyUser"; + // 描述 + public static final String DESCRIPTION = "description"; + // 备注 + public static final String REMARK = "remark"; // 修改人 public static final String USER_INFO = "userInfo"; // 同步标志 public static final String SYSTEM_SYNC_STATUS = "systemSyncStatus"; + // 同步时间 + public static final String SYSTEM_SYNC_DATE_TIME = "systemSyncDatetime"; // 零件编码 public static final String PART_NO = "partNo"; // 零件名称 public static final String PART_NAME = "partName"; // 设备代码 public static final String EQUIPMENT_CODE = "equipmentCode"; + // 设备名称 + public static final String EQUIPMENT_NAME = "equipmentName"; // 设备数据变量ID public static final String EQUIP_VARIABLE_ID = "equipVariableId"; // 设备ID @@ -99,8 +107,12 @@ public class MesPcnExtConstWords { public static final String SHIFT_GROUP_NAME = "shiftGroupName"; // 工序代码 public static final String PROCESS_CODE = "processCode"; + // 工序名称 + public static final String PROCESS_NAME = "processName"; // 工艺代码 public static final String CRAFT_CODE = "craftCode"; + // 工艺名称 + public static final String CRAFT_NAME = "craftName"; // 生产工单号 public static final String WORK_ORDER_NO = "workOrderNo"; // 数据来源 @@ -177,6 +189,12 @@ public class MesPcnExtConstWords { public static final String COLOR = "color"; // 设备计数点位固定二级变量 public static final String SHOT_COUNTER = "shot_counter"; + // 日志类型 + public static final String LOG_TYPE = "logType"; + // 信息类型 + public static final String MESSAGE_TYPE = "messageType"; + // 工厂_工作中心 + public static final String ORG_WORK_CODE = "orgWorkCode"; // 时间格式 public static final String DATE_FORMAT_SSS = "yyyy-MM-dd HH:mm:ss.SSS";