From f2a453f549bdd5a32c4fa3a639249314a05bc8d6 Mon Sep 17 00:00:00 2001 From: "xiangwei.zhang" <752558143@qq.com> Date: Fri, 27 Sep 2024 12:40:02 +0800 Subject: [PATCH 1/2] =?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 --- .../busi/MesInputDefectRecordService.java | 10 +++++++++ .../serviceimpl/busi/MesNcProcessingService.java | 26 +++++++++++++++++----- pom.xml | 4 +++- 3 files changed, 34 insertions(+), 6 deletions(-) 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 9413beb..f8f340e 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 @@ -237,6 +237,9 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService if (StringUtils.isEmpty(model.getPartInspection())) { 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()); + } partInspectionRepository.save(partInspection); if (model.getSourceType() == MesExtEnumUtil.PART_INSPECTION_SOURCE_TYPE.SINGLE.getValue()) { @@ -253,6 +256,10 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService if (model.getPartInspection().getInspectionStatus() == MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue()) { model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue()); ConvertBean.serviceModelUpdate(model.getPartInspection(), AuthUtil.getSessionUser().getUserName()); + + if (model.getOptType() != null && model.getOptType() == 2) { + model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + } partInspectionRepository.save(model.getPartInspection()); //查询当前单据明细 @@ -368,6 +375,9 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue()); ConvertBean.serviceModelUpdate(model.getPartInspection(), AuthUtil.getSessionUser().getUserName()); + if (model.getOptType() != null && model.getOptType() == 2) { + model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + } partInspectionRepository.save(model.getPartInspection()); //查询当前单据明细 List resultDetailList = queryResultDetailList(model, org); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java index aa04ec6..1ea2a41 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java @@ -116,6 +116,7 @@ public class MesNcProcessingService implements IMesNcProcessingService { DdlPreparedPack.getNumEqualPack(partInspection.getQty(), "qty", packBean); DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue(), "inspectionStatus", packBean); DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.CREATE.getValue(), "ncStatus", packBean); + DdlPreparedPack.getNumEqualPack(partInspection.getRefundFlag(), "refundFlag", packBean); DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean); pager = PagerHelper.getPager(pager, partInspectionRepository.findByHqlWhereCount(packBean)); @@ -360,11 +361,15 @@ public class MesNcProcessingService implements IMesNcProcessingService { model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue()); model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.NORMAL.getValue()); ConvertBean.serviceModelUpdate(model.getPartInspection(), model.getUserName()); - partInspectionRepository.save(model.getPartInspection()); String sourceValue = configService.getCfgValue(org, "UMLGO"); + if (model.getOptType() == 2) { sourceValue = refundSource; + model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); } + + partInspectionRepository.save(model.getPartInspection()); + //移库 转正常、放行:8000移至2000 MesMove move = createMove(model, sourceValue, configService.getCfgValue(org, "LGORT"), org, null == sn ? workCenterCode : sn.getWorkCenterCode(), MesExtEnumUtil.MOVE_TYPE.NORMAL_MOVE); ConvertBean.serviceModelInitialize(move,model.getUserName()); @@ -417,12 +422,15 @@ public class MesNcProcessingService implements IMesNcProcessingService { model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.REWORK.getValue()); model.getPartInspection().setReworkTaskId(reworkTask.getId()); ConvertBean.serviceModelUpdate(model.getPartInspection(),model.getUserName()); - partInspectionRepository.save(model.getPartInspection()); - String sourceValue = configService.getCfgValue(org, "UMLGO"); + if (model.getOptType() == 2) { sourceValue = refundSource; + model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); } + partInspectionRepository.save(model.getPartInspection()); + + MesMove move = createMove(model, sourceValue, areaCode, org, null == sn ? workCenterCode : sn.getWorkCenterCode(), MesExtEnumUtil.MOVE_TYPE.RETURN_MOVE); ConvertBean.serviceModelInitialize(move,model.getUserName()); @@ -448,6 +456,11 @@ public class MesNcProcessingService implements IMesNcProcessingService { model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.SCRAP.getValue()); model.getPartInspection().setRejectQty(model.getPartInspection().getQty()); ConvertBean.serviceModelUpdate(model.getPartInspection(), model.getUserName()); + + if (model.getOptType() == 2) { + model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + } + partInspectionRepository.save(model.getPartInspection()); if (isOrder) { String sourceValue = source; @@ -486,12 +499,15 @@ public class MesNcProcessingService implements IMesNcProcessingService { model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue()); model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.RELEASE.getValue()); ConvertBean.serviceModelUpdate(model.getPartInspection(), model.getUserName()); - partInspectionRepository.save(model.getPartInspection()); - String sourceValue = configService.getCfgValue(org, "UMLGO"); + if (model.getOptType() == 2) { sourceValue = refundSource; + + model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); } + partInspectionRepository.save(model.getPartInspection()); + //移库 转正常、放行:8000移至2000 MesMove move = createMove(model, sourceValue, configService.getCfgValue(org, "LGORT"), org, null == sn ? workCenterCode : sn.getWorkCenterCode(), MesExtEnumUtil.MOVE_TYPE.NORMAL_MOVE); ConvertBean.serviceModelInitialize(move,model.getUserName()); diff --git a/pom.xml b/pom.xml index 300c220..0dc8741 100644 --- a/pom.xml +++ b/pom.xml @@ -29,9 +29,11 @@ INFO true UTF-8 - + 1.0.0.4-patch + 1.0.0-yfai 1.0.0.1-patch 1.0.0-yfai From 947fa99b483c0e4ff7b60a3742112286112c4ffa Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Fri, 27 Sep 2024 13:29:04 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=B7=A5=E4=BD=8D=E6=89=AB=E6=8F=8F=20?= =?UTF-8?q?=E7=9B=91=E6=8E=A7=E6=97=A5=E5=BF=97=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E4=BB=A3=E7=A0=81=E5=88=A4=E7=A9=BA=E8=A1=A5?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mes/pcn/api/base/IMesEquipmentExtService.java | 6 ++++++ .../serviceimpl/base/MesEquipmentExtService.java | 21 ++++++++++++++++++--- .../MesWorkCellScanMonitorLogExtService.java | 11 +++++++++++ 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesEquipmentExtService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesEquipmentExtService.java index 8551207..7892143 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesEquipmentExtService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/base/IMesEquipmentExtService.java @@ -11,6 +11,12 @@ public interface IMesEquipmentExtService { @ApiOperation(value = "根据生产线代码,工位代码查询工位设备集合") List getCellEquipmentList(String organizeCode, String workCenterCode, String workCellCode); + @ApiOperation(value = "根据生产线代码,工位代码查询工位设备集合") + List getWcEquipmentList(String organizeCode, String workCenterCode, String workCellCode); + + @ApiOperation(value = "根据生产线代码,工位代码查询工位设备") + MesWcEquipment getWcEquipment(String organizeCode, String workCenterCode, String workCellCode); + @ApiOperation(value = "根据设备变量配置类型查询设备数据变量接口逻辑集合") List getEquipmentVariableCfgList(String organizeCode, String variableCfgType); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentExtService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentExtService.java index 5b7a78f..50782a2 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentExtService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentExtService.java @@ -16,6 +16,7 @@ import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import java.util.ArrayList; +import java.util.Comparator; import java.util.List; import java.util.stream.Collectors; @@ -44,9 +45,7 @@ public class MesEquipmentExtService implements IMesEquipmentExtService { @Override public List getCellEquipmentList(String organizeCode, String workCenterCode, String workCellCode) { if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workCenterCode) || StringUtils.isEmpty(workCellCode)) return null; - List wcEquipmentDbList = wcEquipmentRepository.findByProperty( - new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.WORK_CENTER_CODE, MesPcnExtConstWords.WORK_CELL_CODE}, - new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), workCenterCode, workCellCode}); + List wcEquipmentDbList = getWcEquipmentList(organizeCode, workCenterCode, workCellCode); if (CollectionUtils.isEmpty(wcEquipmentDbList)) return null; List cellEquipmentContextList = null; for (MesWcEquipment wcEquipmentDb : wcEquipmentDbList) { @@ -65,6 +64,22 @@ public class MesEquipmentExtService implements IMesEquipmentExtService { } @Override + public List getWcEquipmentList(String organizeCode, String workCenterCode, String workCellCode) { + return wcEquipmentRepository.findByProperty( + new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.WORK_CENTER_CODE, MesPcnExtConstWords.WORK_CELL_CODE}, + new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), workCenterCode, workCellCode}); + } + + @Override + public MesWcEquipment getWcEquipment(String organizeCode, String workCenterCode, String workCellCode) { + List wcEquipmentDbList = getWcEquipmentList(organizeCode, workCenterCode, workCellCode); + if (CollectionUtils.isEmpty(wcEquipmentDbList)) return null; + if (wcEquipmentDbList.size() == 1) return wcEquipmentDbList.get(0); + List wcEquipmentDbListSort = wcEquipmentDbList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getSeq()))).sorted(Comparator.comparing(MesWcEquipment::getSeq)).collect(Collectors.toList()); + return !CollectionUtils.isEmpty(wcEquipmentDbListSort) ? wcEquipmentDbListSort.get(0) : wcEquipmentDbList.get(0); + } + + @Override public List getEquipmentVariableCfgList(String organizeCode, String variableCfgType) { if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(variableCfgType)) return null; return equipmentVariableCfgRepository.findByProperty( 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 250bf53..26e90d1 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 @@ -1,5 +1,6 @@ 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.pojo.context.MesProductionPsOutContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext; @@ -11,6 +12,7 @@ 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; @@ -37,6 +39,9 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic private IMesProductionProcessContextStepService productionProcessContextStepService; @Autowired + private IMesEquipmentExtService equipmentExtService; + + @Autowired private MesWorkCellScanMonitorLogRepository workCellScanMonitorLogRepository; private final static Map> cellMsg2RepeatMap = new ConcurrentHashMap(); @@ -60,6 +65,12 @@ 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());