|
|
|
@ -121,6 +121,9 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesWorkOrderToSapRepository mesWorkOrderToSapRepository;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesPrintQueueRepository printQueueRepository;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public MesWorkOrder insert(MesWorkOrder bean) {
|
|
|
|
|
//校验产线与工位的关系
|
|
|
|
@ -408,7 +411,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartProdGroupCode(), "partProdGroupCode", ddlPackBean);
|
|
|
|
|
mesPartProdGroup = mesPartProdGroupRDao.getByProperty(ddlPackBean);
|
|
|
|
|
if(Objects.isNull(mesPartProdGroup)){
|
|
|
|
|
MesException.throwMesBusiException("生产线组【%s】信息不存在",item.getPartProdGroupCode());
|
|
|
|
|
MesException.throwMesBusiException("零件生产组【%s】信息不存在",item.getPartProdGroupCode());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -419,11 +422,36 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
if(!Objects.isNull(bomList)){
|
|
|
|
|
saveMesWorkOrderToWms.addAll(mesWorkOrderToWmsService.saveMesWorkOrderToWms(item, bomList));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 创建工单打印队列
|
|
|
|
|
insertPrintQueue(item, mesPartProdGroup);
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.CREATE.getValue());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private MesPrintQueue insertPrintQueue(MesWorkOrder workOrder, MesPartProdGroup mesPartProdGroup) {
|
|
|
|
|
|
|
|
|
|
if (workOrder.getWorkOrderType() != MesExtEnumUtil.ORDER_TYPE.SORT.getValue()) return null;
|
|
|
|
|
|
|
|
|
|
if (mesPartProdGroup == null) {
|
|
|
|
|
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(workOrder.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(workOrder.getPartProdGroupCode(), "partProdGroupCode", ddlPackBean);
|
|
|
|
|
mesPartProdGroup = mesPartProdGroupRDao.getByProperty(ddlPackBean);
|
|
|
|
|
if(Objects.isNull(mesPartProdGroup)){
|
|
|
|
|
MesException.throwMesBusiException("生产线组【%s】信息不存在",workOrder.getPartProdGroupCode());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
MesPrintQueue printQueue = new MesPrintQueue();
|
|
|
|
|
BeanUtils.copyProperties(workOrder, printQueue, MesExtConstWords.ID);
|
|
|
|
|
printQueue.setPrintQueueType(MesExtEnumUtil.PRINT_QUEUE_TYPE.WORK_ORDER.getValue());
|
|
|
|
|
printQueue.setPartProdGroupCode(mesPartProdGroup.getPartProdGroupCode());
|
|
|
|
|
printQueue.setPrintStatus(MesExtEnumUtil.PRINT_STATUS.UNPRINT.getValue());
|
|
|
|
|
return printQueueRepository.save(printQueue);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private MesPartProdGroup getMesPartProdGroup(MesWorkOrder item) {
|
|
|
|
|
MesPartProdGroupDetail mesPartProdGroupDetail = new MesPartProdGroupDetail();
|
|
|
|
|
mesPartProdGroupDetail.setWorkCenterCode(item.getWorkCenterCode());
|
|
|
|
@ -556,6 +584,10 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
|
|
|
|
|
MesWorkOrderLog workOrderLog = new MesWorkOrderLog();
|
|
|
|
|
BeanUtils.copyProperties(item, workOrderLog, "id");
|
|
|
|
|
mesWorkOrderLogList.add(workOrderLog);
|
|
|
|
|
|
|
|
|
|
// 如果工单为发布状态则新增打印队列
|
|
|
|
|
insertPrintQueue(copyMesWorkOrder, null);
|
|
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
} else if (item.getWorkOrderType() == MesExtEnumUtil.ORDER_TYPE.BTO.getValue()) {
|
|
|
|
|
Long produceSeq = 0L;
|
|
|
|
|