diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesAssemblyExtService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesAssemblyExtService.java index f5d4ed7..f040b3a 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesAssemblyExtService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesAssemblyExtService.java @@ -31,6 +31,9 @@ public interface IMesAssemblyExtService { @ApiOperation(value = "获取装配件绑定记录") List getProductionAssemblyList(String organizeCode, String assemblySn); + @ApiOperation(value = "获取装配件绑定记录") + public List getProductionAssemblyById(String organizeCode, Long id); + @ApiOperation(value = "获取装配件规则且唯一绑定记录") List getProductionAssemblyUniqueList(String organizeCode, String assemblySn); diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionRecordService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionRecordService.java index 43b280c..d9555da 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionRecordService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesProductionRecordService.java @@ -40,6 +40,8 @@ public interface IMesProductionRecordService { void updateProductionRecord(String organizeCode, String userName, Long id, String errorMsg); + void updateProductionRecordList(String organizeCode, String userName, List id, String errorMsg); + @ApiOperation(value = "查询加工记录信息PDA报表") ResultBean queryMesProductionRecordReport(String organizeCode, String productSn); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java index f76ac77..f4bc6ce 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java @@ -875,7 +875,7 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { } } else if (assemblyModel.getFlag() == CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()) { //装配解绑 - saveProductionAssembly(organizeCode, userName, assemblyModel.getAssemblySn()); + saveProductionAssembly(organizeCode, userName, assemblyModel.getId()); //自制件更新条码状态 条码状态可用 if(MesExtEnumUtil.ASSEMBLY_MATCH_TYPE.MATCH_TYPE_10.getValue() == assemblyModel.getMatchType()){ updateOldSn(organizeCode,assemblyModel.getAssemblySn(), userName, null); @@ -917,8 +917,8 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { } } - private void saveProductionAssembly(String organizeCode,String userName, String assemblySN) { - List assemblyList = mesAssemblyExtService.getProductionAssemblyList(organizeCode, assemblySN); + private void saveProductionAssembly(String organizeCode,String userName, Long id) { + List assemblyList = mesAssemblyExtService.getProductionAssemblyById(organizeCode, id); if(CollectionUtils.isEmpty(assemblyList)){ return; } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesAssemblyExtService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesAssemblyExtService.java index bbdfb4b..9f80904 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesAssemblyExtService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesAssemblyExtService.java @@ -253,6 +253,14 @@ public class MesAssemblyExtService implements IMesAssemblyExtService { new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), assemblySn}); } + + @Override + public List getProductionAssemblyById(String organizeCode, Long id) { + return productionAssemblyRepository.findByProperty( + new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.ID}, + new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), id}); + } + @Override public List getProductionAssemblyUniqueList(String organizeCode, String assemblySn) { return productionAssemblyUniqueRepository.findByProperty( diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProductionRecordService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProductionRecordService.java index aef56de..2de51c3 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProductionRecordService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesProductionRecordService.java @@ -145,6 +145,35 @@ public class MesProductionRecordService implements IMesProductionRecordService { } } + + @Override + public void updateProductionRecordList(String organizeCode, String userName, List ids, String errorMsg) { + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getInPackList(ids, "id", ddlPackBean); + + List mesProductionRecordList = productionRecordRepository.findByHqlWhere(ddlPackBean); + + List failList = new ArrayList<>(); + List noFailList = new ArrayList<>(); + if (!CollectionUtils.isEmpty(mesProductionRecordList)) { + failList = mesProductionRecordList.stream().filter(mesProductionRecord -> Objects.equals(mesProductionRecord.getReportStatus(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue())).map(MesProductionRecord::getId).collect(Collectors.toList()); + noFailList = mesProductionRecordList.stream().filter(mesProductionRecord -> !Objects.equals(mesProductionRecord.getReportStatus(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue())).map(MesProductionRecord::getId).collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(failList)) { + DdlPackBean failPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getInPackList(failList, "id", failPackBean); + + productionRecordRepository.updateByPropertiesNoSync(new String[]{"modifyUser", "modifyDatetime", "reportStatus", "remark"}, + new Object[]{userName, DateUtil.format(new Date(), MesPcnExtConstWords.DATE_FORMAT_SSS), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue(), errorMsg}, failPackBean); + } + if (!CollectionUtils.isEmpty(noFailList)) { + DdlPackBean nofailPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getInPackList(noFailList, "id", nofailPackBean); + + productionRecordRepository.updateByProperties(new String[]{"modifyUser", "modifyDatetime","reportStatus", "remark"}, + new Object[]{userName, DateUtil.format(new Date(), MesPcnExtConstWords.DATE_FORMAT_SSS), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_40.getValue(), errorMsg }, nofailPackBean); + } + } + } @Override public ResultBean queryMesProductionRecordReport(String organizeCode, String productSn) {