From fb3397410ffc141bd67fcb9f6617f5c776902464 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=AE=E7=AC=91=E7=9D=80=E9=9D=A2=E5=AF=B9=E6=98=8E?= =?UTF-8?q?=E5=A4=A9?= <752558143@qq.com> Date: Wed, 14 Aug 2024 18:51:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E5=B7=A5=E5=BF=BD=E7=95=A5=E8=AF=95?= =?UTF-8?q?=E5=88=B6=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/base/MesEquipmentLogService.java | 3 ++- .../serviceimpl/busi/MesInputDefectRecordService.java | 11 ++++++++++- .../serviceimpl/busi/MesWorkOrderService.java | 17 ++++++++++++++++- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java index 298a72e..bb6eb59 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java @@ -118,7 +118,7 @@ public class MesEquipmentLogService implements IMesEquipmentLogService { DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.RECORD_STATUS.RECORD_STATUS_10.getValue(), "recordStatus", ddlPackBean); DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"createDatetime"}, ddlPackBean); - List mesEquipmentRecords = mesEquipmentRecordRepository.findByHqlWhere(ddlPackBean); + List mesEquipmentRecords = mesEquipmentRecordRepository.findByHqlTopWhere(ddlPackBean, 10); if (CollectionUtils.isEmpty(mesEquipmentRecords)) { LOGGER.info("没有设备记录需要同步"); } @@ -159,6 +159,7 @@ public class MesEquipmentLogService implements IMesEquipmentLogService { mesEquipmentLogDetail.setExtend(mesEquipmentRecord.getProduceSnJson()); } + ConvertBean.serviceModelInitialize(mesEquipmentLogDetail, "job"); mesEquipmentLogDetails.add(mesEquipmentLogDetail); } mesEquipmentLogDetailRepository.saveAll(mesEquipmentLogDetails); 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 8b51643..1b2ad59 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 @@ -13,6 +13,7 @@ import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; 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.MesEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.mes.bean.*; import cn.estsh.i3plus.pojo.mes.bean.nc.MesPartInspection; @@ -353,7 +354,6 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue()); ConvertBean.serviceModelUpdate(model.getPartInspection(), AuthUtil.getSessionUser().getUserName()); - partInspectionRepository.save(model.getPartInspection()); //查询当前单据明细 List resultDetailList = queryResultDetailList(model, org); @@ -387,10 +387,19 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService if (model.getSourceType() == MesExtEnumUtil.PART_INSPECTION_SOURCE_TYPE.SINGLE.getValue()) { checkProduceSn(produceSn, model.getSn()); produceSn.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SUSPICIOUS.getValue()); + String defectTypeCode = MesEnumUtil.DEFECT_TYPE_CODE.DETERMIND.getValue(); + //根据页面上选择的位置 查询位置,若不存在则提示 位置不存在,请检查数据 + DdlPackBean packBean = DdlPackBean.getDdlPackBean(org); + DdlPreparedPack.getStringEqualPack("QX130", "defectTypeCode", packBean); + MesDefectType defectType = defectTypeRepository.getByProperty(packBean); + + model.getPartInspection().setDefectTypeCode(defectType.getDefectTypeCode()); + model.getPartInspection().setDefectTypeId(defectType.getId()); ConvertBean.serviceModelInitialize(produceSn, AuthUtil.getSessionUser().getUserName()); produceSnExtService.update(produceSn); } + partInspectionRepository.save(model.getPartInspection()); partInspectionDetailRepository.saveAll(resultDetailList); partInspectionDetailRepository.saveAll(model.getPartInspectionDetailList()); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java index 97d85e2..5484251 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java @@ -462,6 +462,14 @@ public class MesWorkOrderService implements IMesWorkOrderService { try { List oldMesWorkOrderList = getMesWorkOrder(productionRecord, organizeCode); if (CollectionUtils.isEmpty(oldMesWorkOrderList)) { + if (Objects.equals(productionRecord.getReportStatus(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_30.getValue())) { + LOGGER.warn("报工条码:{}工单为试制单,更新成无需报工", productionRecord.getProductSn()); + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getNumEqualPack(productionRecord.getId(), "id", ddlPackBean); + productionRecordRao.updateByProperties(new String[]{"modifyUser", "modifyDatetime", "reportStatus"}, + new Object[]{userName, TimeTool.getNowTime(true), productionRecord.getReportStatus()},ddlPackBean); + return; + } LOGGER.error("报工条码:{}找不到加工单", productionRecord.getProductSn()); updateProductionRecord(organizeCode, userName, productionRecord.getId()); return; @@ -782,6 +790,9 @@ public class MesWorkOrderService implements IMesWorkOrderService { List oldMesWorkOrders = workOrderRepository.findByHqlWhere(ddlPackBean); if (!CollectionUtils.isEmpty(oldMesWorkOrders)) { oldMesWorkOrders = oldMesWorkOrders.stream().filter(mesWorkOrder -> !Objects.equals(MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue(), mesWorkOrder.getOrderFlag())).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(oldMesWorkOrders)) { + productionRecord.setReportStatus(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_30.getValue()); + } } return oldMesWorkOrders; } @@ -875,7 +886,11 @@ public class MesWorkOrderService implements IMesWorkOrderService { DdlPreparedPack.getNotInPack(centerList, "workCenterCode", ddlPackBean); } DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"modifyDatetime"}, ddlPackBean); - List mesProductionRecordList = productionRecordRao.findByHqlTopWhere(ddlPackBean, 50); + + String numStr = configService.getCfgValue(organizeCode, "MES_PCN_REPORT_NUM"); + int num = StringUtils.isEmpty(numStr) ? 50 : Integer.valueOf(numStr); + + List mesProductionRecordList = productionRecordRao.findByHqlTopWhere(ddlPackBean, num); List recordList = new ArrayList<>(); // 根据零件号分组 /*if(!CollectionUtils.isEmpty(mesProductionRecordList)) {