Merge branch 'uat-temp-nht-2503130000-chengdu-shipping' into uat-temp-wj-chongqingdaqu-dev

uat-temp-nht-2503220000-45859
jason 4 months ago
commit d9cf70a6f3

@ -228,9 +228,9 @@ public class MesShippingLoadingCheckService implements IMesShippingLoadingCheckS
//装车单明细
List<MesLoadingListDetail> vehiclesOrderDetailList = model.getDetailList();
vehiclesOrderDetailList.forEach(k -> {
if(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue() == k.getStatus()){
k.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.PUBLISHED.getValue()); // todo 不改变为发运状态
}
// if(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue() == k.getStatus()){
// k.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.PUBLISHED.getValue()); // todo 不改变为发运状态
// }
k.setSystemSyncStatus(CommonEnumUtil.FALSE);
ConvertBean.serviceModelUpdate(k, userInfo);
});

@ -150,6 +150,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
if (!StringUtils.isEmpty(orderManagement.getCheckSeqCode())) {
model.setIsScanLocationCode(true);
}
model.setVolvoRackNo(orderManagement.getRackNo());
//发运单号
model.setShippingCode(orderManagement.getShippingCode());
//零件发运组
@ -329,8 +330,6 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
shippingOrderManagementDetailRepository.update(detail);
break;
}
final String confirmPartType = getConfirmPartType(orderManagement);
}
if (!scanFlg) {
@ -617,7 +616,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
DdlPreparedPack.getStringEqualPack(model.getVolvoRackNo(), "barCode", rackPackBean);
MesVolvoRack volvoRack = mesVolvoRackRDao.getByProperty(rackPackBean);
if (volvoRack == null) {
throw new ImppBusiException(String.format("无效料架条码【%s】重新扫描", model.getVolvoRackNo()));
throw new ImppBusiException(String.format("无效料架条码【%s】检查数据", model.getVolvoRackNo()));
}
}
@ -638,24 +637,28 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
orderManagement.getStatus() == MesExtEnumUtil.SHIPPING_ORDER_STATUS.PUBLISHED.getValue()) {
orderManagement.setStartScanTime(TimeTool.getNowTime(true));
}
//根据发运单查询装车单明细信息
DdlPackBean packBean = DdlPackBean.getDdlPackBean(orderManagement.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(orderManagement.getShippingCode(),"shippingCode",packBean);
MesLoadingListDetail listDetail = listDetailRepository.getByProperty(packBean);
MesLoadingList loadingList = null;
if(!Objects.isNull(listDetail)){
packBean = DdlPackBean.getDdlPackBean(orderManagement.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(listDetail.getPid(), "id", packBean);
loadingList = listRepository.getByProperty(packBean);
//反填装车单信息到发运单
if(!Objects.isNull(loadingList)){
orderManagement.setOrderCode(loadingList.getOrderCode());
orderManagement.setLoadingListId(loadingList.getId());
//零件发运组
MesPartShippingGroup shippingGroup = Objects.isNull(model.getMesPartShippingGroup()) ? getMesPartShippingGroup(orderManagement.getOrganizeCode(), orderManagement.getShippingGroupCode()) : model.getMesPartShippingGroup();
//根据发运单查询装车单明细信息
if (Objects.equals(shippingGroup.getIsFirstInstall(), CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue())) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(orderManagement.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(orderManagement.getShippingCode(),"shippingCode",packBean);
MesLoadingListDetail listDetail = listDetailRepository.getByProperty(packBean);
if(!Objects.isNull(listDetail)){
packBean = DdlPackBean.getDdlPackBean(orderManagement.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(listDetail.getPid(), "id", packBean);
loadingList = listRepository.getByProperty(packBean);
//反填装车单信息到发运单
if(!Objects.isNull(loadingList)){
orderManagement.setOrderCode(loadingList.getOrderCode());
orderManagement.setLoadingListId(loadingList.getId());
}
//更新装车单明细对应的发运单状态=发运
listDetail.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue());
ConvertBean.serviceModelUpdate(listDetail, userInfo);
listDetailRepository.update(listDetail);
}
//更新装车单明细对应的发运单状态=发运
listDetail.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue());
ConvertBean.serviceModelUpdate(listDetail, userInfo);
listDetailRepository.update(listDetail);
}
//发运单状态修改为校验完成
orderManagement.setSystemSyncStatus(CommonEnumUtil.FALSE);

@ -89,6 +89,7 @@ public class mesShippingCheckVolvoRackNoAndPartNoStrategyServiceImpl implements
if (Objects.equals(detail.getVin(), workOrder.getVinCode())) {
throw new ImppBusiException(String.format("产品条码明细【%s】与发运单明细不匹配请重新扫描", model.getSn()));
}
checkDetailScanSeq(orderManagement, detail, workOrder);
//校验发运明细
checkShippingDetails(model, orderManagement, shippingGroup, produceSn, detail);
scanFlg = true;
@ -104,6 +105,16 @@ public class mesShippingCheckVolvoRackNoAndPartNoStrategyServiceImpl implements
return model;
}
private void checkDetailScanSeq(MesShippingOrderManagement orderManagement, MesShippingOrderManagementDetail detail, MesWorkOrder workOrder) {
if (StringUtils.isEmpty(workOrder.getWorkOrderSource())) {
throw new ImppBusiException(String.format("工单【%s】缺少来源", workOrder.getWorkOrderNo()));
}
MesCustSortInfo custSoftInfo = custSoftInfoRDao.getById(Long.parseLong(workOrder.getWorkOrderSource()));
if (custSoftInfo == null || !Objects.equals(detail.getCustInfoSeq(), custSoftInfo.getCustInfoSeq())) {
throw new ImppBusiException(String.format("发运单【%s】启用明细顺序防错序号【%s】前还有未扫描的发运单明细请检查数据", orderManagement.getShippingCode(), custSoftInfo.getCustInfoSeq()));
}
}
private void checkShippingDetails(MesSortShippingCheckModel model, MesShippingOrderManagement orderManagement, MesPartShippingGroup shippingGroup, MesProduceSn produceSn, MesShippingOrderManagementDetail detail) {
@ -124,14 +135,14 @@ public class mesShippingCheckVolvoRackNoAndPartNoStrategyServiceImpl implements
}
//校验客户零件信息是否存在 (默认需要验证, 值可能是[空/0/20])
// if (StringUtils.isEmpty(shippingGroup.getScanMethodJudgment()) || !shippingGroup.getScanMethodJudgment().equals(MesExtEnumUtil.SHIPPING_GROUP_SCAN_METHOD_JUDGMENT.PART_NO.getValueStr())) {
// DdlPackBean packBean = DdlPackBean.getDdlPackBean(model.getOrganizeCode());
// DdlPreparedPack.getStringEqualPack(detail.getPartNo(), "erpPartNo", packBean);
// DdlPreparedPack.getStringEqualPack(detail.getCustPartNo(), "custPartNo", packBean);
// if (!mesCustomerPartRepository.isExitByHql(packBean)) {
// throw new ImppBusiException(String.format("零件号【%s】客户零件号【%s】关系不存在请检查数据", detail.getPartNo(), detail.getCustPartNo()));
// }
// }
if (StringUtils.isEmpty(shippingGroup.getScanMethodJudgment()) || !shippingGroup.getScanMethodJudgment().equals(MesExtEnumUtil.SHIPPING_GROUP_SCAN_METHOD_JUDGMENT.PART_NO.getValueStr())) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(model.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(detail.getPartNo(), "erpPartNo", packBean);
DdlPreparedPack.getStringEqualPack(detail.getCustPartNo(), "custPartNo", packBean);
if (!mesCustomerPartRepository.isExitByHql(packBean)) {
throw new ImppBusiException(String.format("零件号【%s】客户零件号【%s】关系不存在请检查数据", detail.getPartNo(), detail.getCustPartNo()));
}
}
}

Loading…
Cancel
Save