发运写入发运队列

uat-temp-wj-shenshanorder
王杰 3 months ago
parent b768efd78d
commit b8ad4d5a8b

@ -17,10 +17,7 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.util.StringUtil;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesLoadingList;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesLoadingListDetail;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagementDetail;
import cn.estsh.i3plus.pojo.mes.bean.shipping.*;
import cn.estsh.i3plus.pojo.mes.model.MesEquipVariableRwResult;
import cn.estsh.i3plus.pojo.mes.repository.*;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
@ -117,6 +114,9 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
@Autowired
private IMesProduceSnExtService mesProduceSnExtService;
@Autowired
private MesShippingQueueRepository shippingQueueRDao;
@Override
public MesSortShippingCheckModel doShippingOrderNoQuery(MesShippingOrderManagement shippingOrderManagement) {
//校验发运单
@ -573,6 +573,8 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
workOrderNoList.add(detail.getVisualOrderNo());
//更新应急件库位管理库存出库
mesEmergencyLocationService.doShippingStockOutOnline(organizeCode, detail.getVisualOrderNo(), userInfo, true);
// 保存到发运队列,后续发运单的条码会拼接,而保存到发运队列中的为拼接前的数据,因此要在拼接前调用。
saveShippingQueue(orderManagement, detail, userInfo);
//条码格式(扫描目视单,扫描条码)
detail.setBarcode(new StringJoiner(MesPcnExtConstWords.COMMA).add(detail.getVisualOrderNo()).add(detail.getBarcode()).toString());
}
@ -695,6 +697,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
if (CollectionUtils.isEmpty(shippingOrderManagementDetails)) {
DdlPackBean detailPackBean = DdlPackBean.getDdlPackBean(mesShippingOrderManagement.getOrganizeCode());
DdlPreparedPack.getNumEqualPack(mesShippingOrderManagement.getId(), "pid", detailPackBean);
DdlPreparedPack.getNumberSmallerPack(MesExtEnumUtil.SHIPPING_ORDER_DETAIL_SHIPPING_STATUS.SKIP.getValue(), "status", detailPackBean);
shippingOrderManagementDetails = shippingOrderManagementDetailRepository.findByHqlWhere(detailPackBean);
}
//当前装车单所有发运单明细 需要报工的数据
@ -766,4 +769,24 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
}
}
}
private void saveShippingQueue(MesShippingOrderManagement orderManagement, MesShippingOrderManagementDetail detail, String userInfo) {
if (StringUtil.isEmpty(detail.getVin())) {
MesPcnException.throwMesBusiException("发运单【%s】零件号【%s】vin号为空请检查数据", orderManagement.getShippingCode(), detail.getPartNo());
}
MesShippingQueue mesShippingQueue = new MesShippingQueue();
mesShippingQueue.setOrganizeCode(orderManagement.getOrganizeCode());
mesShippingQueue.setShippingCode(orderManagement.getShippingCode());
mesShippingQueue.setShippingGroupCode(orderManagement.getShippingGroupCode());
mesShippingQueue.setShippingType(orderManagement.getShippingType());
mesShippingQueue.setWorkOrderNo(detail.getVisualOrderNo());
mesShippingQueue.setCustSn(detail.getBarcode());
mesShippingQueue.setPartNo(detail.getPartNo());
mesShippingQueue.setPartName(detail.getPartName());
mesShippingQueue.setVin(detail.getVin());
mesShippingQueue.setQueueStatus(1);
ConvertBean.serviceModelInitialize(mesShippingQueue, userInfo);
shippingQueueRDao.insert(mesShippingQueue);
}
}

Loading…
Cancel
Save