diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/controller/busi/MesSortShippingCheckController.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/controller/busi/MesSortShippingCheckController.java index 76a166f..6366f2e 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/controller/busi/MesSortShippingCheckController.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/controller/busi/MesSortShippingCheckController.java @@ -64,7 +64,7 @@ public class MesSortShippingCheckController { shippingOrderManagement.setOrganizeCode(organizeCode); ConvertBean.serviceModelUpdate(shippingOrderManagement, userInfo); MesSortShippingCheckModel model = sortShippingCheckService.doShippingOrderNoQuery(shippingOrderManagement); - return ResultBean.success("查询成功").setResultObject(model); + return ResultBean.success(model.getMsg()).setResultObject(model); } catch (ImppBusiException imppException) { return ResultBean.fail(imppException); } catch (Exception e) { @@ -110,7 +110,7 @@ public class MesSortShippingCheckController { model.setOrganizeCode(organizeCode); model.setUserInfo(userInfo); sortShippingCheckService.saveSn(model); - return ResultBean.success("扫描成功").setResultObject(model); + return ResultBean.success(model.getMsg()).setResultObject(model); } catch (ImppBusiException imppException) { return ResultBean.fail(imppException); } catch (Exception e) { diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java index de8a1e6..ec8830d 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java @@ -124,6 +124,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService if (!Objects.isNull(lastShippingOrder)) { model.setRecentlyScanShippingCode(lastShippingOrder.getShippingCode()); } + model.setMsg(String.format("发运单【%s】扫描成功,请扫描条码",model.getShippingCode())); return model; } @@ -145,6 +146,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService if (model.getIsScanCount() == model.getDetailList().size() && StringUtils.isEmpty(orderManagement.getCheckSeqCode())) { //保存数据库 saveDate(orderManagement, model, model.getOrganizeCode(), model.getUserInfo()); + model.setMsg(String.format("发运单【%s】已发运完成,请扫描下一个发运单",model.getShippingCode())); } return model; } @@ -213,7 +215,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService } //校验发运单状态 必须是未装车条码 if (!Stream.of(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPING.getValue(),MesExtEnumUtil.SHIPPING_ORDER_STATUS.PUBLISHED.getValue()).collect(Collectors.toList()).contains(orderManagement.getStatus())) { - throw new ImppBusiException(String.format("【%s】此发运单状态为【%s】,请选择状态为【%s】或【%s】状态的发运单", shippingOrderManagement.getShippingCode(), + throw new ImppBusiException(String.format("【%s】此发运单状态为【%s】,请选择状态为【%s】或【%s】状态的发运单,请检查数据!", shippingOrderManagement.getShippingCode(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.valueOfDescription(orderManagement.getStatus()), MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPING.getDescription(), MesExtEnumUtil.SHIPPING_ORDER_STATUS.PUBLISHED.getDescription())); } @@ -281,7 +283,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService if (Objects.equals(orderManagement.getIsFirstInstall(), MesCommonConstant.TRUE_INTEGER)) { //若没进行装车校验,则提示【%s】此发运单对应的【%s】此装车单状态为【%s】,请选择状态为【%s】的数据 if (loadingList.getStatus() != MesExtEnumUtil.MES_LOADING_STATUS.SCANNED.getValue()) { - throw new ImppBusiException(String.format("【%s】此发运单对应的【%s】此装车单状态为【%s】,请选择状态为【%s】的数据!", + throw new ImppBusiException(String.format("【%s】此发运单对应的【%s】此装车单状态为【%s】,请选择状态为【%s】的数据!请检查数据!", shippingOrderManagement.getShippingCode(), loadingList.getOrderCode(), MesExtEnumUtil.MES_LOADING_STATUS.valueOfDescription(loadingList.getStatus()), MesExtEnumUtil.MES_LOADING_STATUS.SCANNED.getDescription())); @@ -405,12 +407,12 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService private void checkStatus(MesSortShippingCheckModel model, MesProduceSn produceSn) { //校验产品条码状态 必须是状态为已下线条码 if (produceSn.getSnStatus() != MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getValue() && produceSn.getSnStatus() != MesExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getValue()) { - throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择状态为【%s】或【%s】状态的条码", model.getSn(), MesExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(produceSn.getSnStatus()), + throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择状态为【%s】或【%s】状态的条码,请检查数据!", model.getSn(), MesExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(produceSn.getSnStatus()), MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getDescription(),MesExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getDescription())); } //校验产品质量状态 必须是状态为合格条码 if (produceSn.getQcStatus() != MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()) { - throw new ImppBusiException(String.format("【%s】此条码质量状态为【%s】,请选择【%s】状态的条码", model.getSn(), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(produceSn.getQcStatus()), + throw new ImppBusiException(String.format("【%s】此条码质量状态为【%s】,请选择【%s】状态的条码,请检查数据!", model.getSn(), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(produceSn.getQcStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getDescription())); } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnAndOrderStrategyServiceImpl.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnAndOrderStrategyServiceImpl.java index 7d999f9..5e8d0e7 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnAndOrderStrategyServiceImpl.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnAndOrderStrategyServiceImpl.java @@ -60,9 +60,6 @@ public class MesShippingScanSnAndOrderStrategyServiceImpl implements IMesShippin private MesCustomerPartRepository mesCustomerPartRepository; @Autowired - private IMesConfigService mesConfigService; - - @Autowired private IMesWorkOrderExtService mesWorkOrderExtService; @Override @@ -76,10 +73,12 @@ public class MesShippingScanSnAndOrderStrategyServiceImpl implements IMesShippin checkVisualOrderNoIsScan(model); detail.setVisualOrderNo(model.getSn()); model.setSn(detail.getBarcode()); + model.setMsg(String.format("条码【%s】扫描成功,请扫描下一个目视单",model.getSn())); } else { //校验条码是否已经扫描 checkIsScan(model); detail.setBarcode(model.getSn()); + model.setMsg(String.format("目视单【%s】扫描成功,请扫描下一个条码",model.getSn())); } MesProduceSn produceSn = checkSn(model); updateOrderManagementDetails(orderManagement, detail, getMesWorkOrder(model, produceSn, detail), produceSn, model.getUserInfo()); @@ -109,6 +108,12 @@ public class MesShippingScanSnAndOrderStrategyServiceImpl implements IMesShippin if (!scanFlg) { throw new ImppBusiException(String.format("【%s】此目视单对应的【%s】物料号与发运单中物料号不匹配,请检查数据!", model.getSn(), partNo)); } + //提示信息 + if(Objects.isNull(workOrder)){ + model.setMsg(String.format("条码【%s】扫描成功,请扫描目视单",model.getSn())); + }else{ + model.setMsg(String.format("目视单【%s】扫描成功,请扫描条码",model.getSn())); + } } return model; @@ -125,7 +130,7 @@ public class MesShippingScanSnAndOrderStrategyServiceImpl implements IMesShippin checkVisualOrderNoIsScan(model); //校验目视单状态 if (MesExtEnumUtil.ORDER_STATUS.COMPLETE.getValue() != workOrder.getWorkOrderStatus() || MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue() != workOrder.getQcStatus()) { - throw new ImppBusiException(String.format("目视单【%s】状态为【%s】质量状态为【%s】,不允许发运!", model.getSn(), MesExtEnumUtil.ORDER_STATUS.valueOfDescription(workOrder.getWorkOrderStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(workOrder.getQcStatus()))); + throw new ImppBusiException(String.format("目视单【%s】状态为【%s】质量状态为【%s】,不允许发运!请检查数据!", model.getSn(), MesExtEnumUtil.ORDER_STATUS.valueOfDescription(workOrder.getWorkOrderStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(workOrder.getQcStatus()))); } return workOrder.getCustPartNo(); } @@ -138,15 +143,15 @@ public class MesShippingScanSnAndOrderStrategyServiceImpl implements IMesShippin } //校验目视单状态 if (MesExtEnumUtil.ORDER_STATUS.COMPLETE.getValue() != workOrder.getWorkOrderStatus() || MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue() != workOrder.getQcStatus()) { - throw new ImppBusiException(String.format("目视单【%s】状态为【%s】质量状态为【%s】,不允许发运!", detail.getVisualOrderNo(), MesExtEnumUtil.ORDER_STATUS.valueOfDescription(workOrder.getWorkOrderStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(workOrder.getQcStatus()))); + throw new ImppBusiException(String.format("目视单【%s】状态为【%s】质量状态为【%s】,不允许发运!请检查数据!", detail.getVisualOrderNo(), MesExtEnumUtil.ORDER_STATUS.valueOfDescription(workOrder.getWorkOrderStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(workOrder.getQcStatus()))); } //校验条码是否匹配 if (!Objects.equals(produceSn.getCustSn(), workOrder.getCustSn())) { - throw new ImppBusiException(String.format("目视单【%s】条码【%s】与扫描条码【%s】,不匹配!", detail.getVisualOrderNo(), workOrder.getCustSn(), produceSn.getCustSn())); + throw new ImppBusiException(String.format("目视单【%s】条码【%s】与扫描条码【%s】,不匹配!请检查数据!", detail.getVisualOrderNo(), workOrder.getCustSn(), produceSn.getCustSn())); } //校验零件是否匹配 if (!Objects.equals(produceSn.getCustPartNo(), workOrder.getCustPartNo())) { - throw new ImppBusiException(String.format("目视单【%s】零件【%s】与发运单零件【%s】,不匹配!", detail.getVisualOrderNo(), workOrder.getCustPartNo(), detail.getCustPartNo())); + throw new ImppBusiException(String.format("目视单【%s】零件【%s】与发运单零件【%s】,不匹配!请检查数据!", detail.getVisualOrderNo(), workOrder.getCustPartNo(), detail.getCustPartNo())); } return workOrder; } @@ -213,12 +218,12 @@ public class MesShippingScanSnAndOrderStrategyServiceImpl implements IMesShippin private void checkStatus(MesSortShippingCheckModel model, MesProduceSn produceSn) { //校验产品条码状态 必须是状态为已下线条码 if (produceSn.getSnStatus() != MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getValue() && produceSn.getSnStatus() != MesExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getValue()) { - throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择状态为【%s】或【%s】状态的条码", model.getSn(), MesExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(produceSn.getSnStatus()), + throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择状态为【%s】或【%s】状态的条码,请检查数据!", model.getSn(), MesExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(produceSn.getSnStatus()), MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getDescription(), MesExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getDescription())); } //校验产品质量状态 必须是状态为合格条码 if (produceSn.getQcStatus() != MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()) { - throw new ImppBusiException(String.format("【%s】此条码质量状态为【%s】,请选择【%s】状态的条码", model.getSn(), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(produceSn.getQcStatus()), + throw new ImppBusiException(String.format("【%s】此条码质量状态为【%s】,请选择【%s】状态的条码,请检查数据!", model.getSn(), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(produceSn.getQcStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getDescription())); } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnStrategyServiceImpl.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnStrategyServiceImpl.java index c76b283..c4dcce1 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnStrategyServiceImpl.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/shippingscan/strategy/MesShippingScanSnStrategyServiceImpl.java @@ -86,6 +86,7 @@ public class MesShippingScanSnStrategyServiceImpl implements IMesShippingScanStr if (!scanFlg) { throw new ImppBusiException(String.format("【%s】此条码对应的【%s】物料号与发运单中物料号不匹配,请检查数据!", model.getSn(), produceSn.getPartNo())); } + model.setMsg(String.format("条码【%s】扫描完成,请扫描下一个条码",model.getSn())); return model; } @@ -143,12 +144,12 @@ public class MesShippingScanSnStrategyServiceImpl implements IMesShippingScanStr private void checkStatus(MesSortShippingCheckModel model, MesProduceSn produceSn) { //校验产品条码状态 必须是状态为已下线条码 if (produceSn.getSnStatus() != MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getValue() && produceSn.getSnStatus() != MesExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getValue()) { - throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择状态为【%s】或【%s】状态的条码", model.getSn(), MesExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(produceSn.getSnStatus()), + throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择状态为【%s】或【%s】状态的条码,请检查数据!", model.getSn(), MesExtEnumUtil.PRODUCE_SN_STATUS.valueOfDescription(produceSn.getSnStatus()), MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getDescription(), MesExtEnumUtil.PRODUCE_SN_STATUS.CREATE.getDescription())); } //校验产品质量状态 必须是状态为合格条码 if (produceSn.getQcStatus() != MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()) { - throw new ImppBusiException(String.format("【%s】此条码质量状态为【%s】,请选择【%s】状态的条码", model.getSn(), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(produceSn.getQcStatus()), + throw new ImppBusiException(String.format("【%s】此条码质量状态为【%s】,请选择【%s】状态的条码,请检查数据!", model.getSn(), MesExtEnumUtil.PRODUCE_QC_STATUS.valueOfDescription(produceSn.getQcStatus()), MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getDescription())); } } diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/model/MesSortShippingCheckModel.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/model/MesSortShippingCheckModel.java index 8fe0cbd..aea5c1f 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/model/MesSortShippingCheckModel.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/model/MesSortShippingCheckModel.java @@ -51,6 +51,9 @@ public class MesSortShippingCheckModel { @ApiParam("最后扫描的发运单明细ID") private Long lastShippingDetailId; + @ApiParam("提示引导信息") + private String msg; + public void setDetailList(List detailList) { this.detailList = detailList; this.isScanCount = (int) detailList.stream().filter(k -> Objects.equals(k.getIsScanFlg(), MesCommonConstant.TRUE_INTEGER)).count();