|
@@ -109,10 +109,13 @@ public class OrderTaskServiceImpl extends SuperServiceImpl<OrderTaskMapper, Orde
|
|
|
return true;
|
|
return true;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- //任务初始化
|
|
|
|
|
- //OrderProduct orderProduct = orderProductService.getOne(Wraps.<OrderProduct>lbQ().eq(OrderProduct::getOrderId, orderTask.getOrderId()).last("limit 1"));
|
|
|
|
|
//获取所属零件的工艺
|
|
//获取所属零件的工艺
|
|
|
List<TTask> taskList = taskService.list(new LambdaQueryWrapper<TTask>().eq(TTask::getOrderId, orderTask.getOrderId()).orderByAsc(TTask::getProcedureSort));
|
|
List<TTask> taskList = taskService.list(new LambdaQueryWrapper<TTask>().eq(TTask::getOrderId, orderTask.getOrderId()).orderByAsc(TTask::getProcedureSort));
|
|
|
|
|
+ if(taskList.size()==0 || taskList.size()!=4){
|
|
|
|
|
+ msgUtil.createWarnLog("自定义订单默认工艺任务不存在或任务格式不符合规范","DataException");
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
List<String> procedureIds = taskList.stream().map(item->item.getProcedureId().toString()).collect(Collectors.toList());
|
|
List<String> procedureIds = taskList.stream().map(item->item.getProcedureId().toString()).collect(Collectors.toList());
|
|
|
List<Long> businessIds = bomProcedureProductionresourceService.list(new LambdaQueryWrapper<BomProcedureProductionresource>().in(BomProcedureProductionresource::getProcedureId, procedureIds)
|
|
List<Long> businessIds = bomProcedureProductionresourceService.list(new LambdaQueryWrapper<BomProcedureProductionresource>().in(BomProcedureProductionresource::getProcedureId, procedureIds)
|
|
|
.last(" order by field(procedure_id, "+ String.join(",", procedureIds) +")")
|
|
.last(" order by field(procedure_id, "+ String.join(",", procedureIds) +")")
|
|
@@ -153,9 +156,10 @@ public class OrderTaskServiceImpl extends SuperServiceImpl<OrderTaskMapper, Orde
|
|
|
//节点编排处理
|
|
//节点编排处理
|
|
|
TaskNode startNode = this.nodeHandle(orderTask, startType, startResourceId, startList, true);
|
|
TaskNode startNode = this.nodeHandle(orderTask, startType, startResourceId, startList, true);
|
|
|
|
|
|
|
|
|
|
+ //从立库取工装预处理
|
|
|
if(startType.eq(TaskTypeEnum.BZLK)){
|
|
if(startType.eq(TaskTypeEnum.BZLK)){
|
|
|
endList.stream().forEach(item -> {
|
|
endList.stream().forEach(item -> {
|
|
|
- item.setCompleteBatchSort(item.getCompleteBatchSort() + 3);
|
|
|
|
|
|
|
+ item.setCompleteBatchSort(item.getCompleteBatchSort() + 2);
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -180,10 +184,11 @@ public class OrderTaskServiceImpl extends SuperServiceImpl<OrderTaskMapper, Orde
|
|
|
endNode.setExeStatus("5");
|
|
endNode.setExeStatus("5");
|
|
|
taskNodeService.updateById(endNode);
|
|
taskNodeService.updateById(endNode);
|
|
|
}else if(goalType.getCode().contains("SB")){
|
|
}else if(goalType.getCode().contains("SB")){
|
|
|
- //TaskNode pauseNode = taskNodeService.getNextNTaskNode(endNode, 1);
|
|
|
|
|
- //pauseNode.setExeStatus("4");
|
|
|
|
|
- endNode.setExeStatus("4");
|
|
|
|
|
- taskNodeService.updateById(endNode);
|
|
|
|
|
|
|
+ TaskNode pauseNode = taskNodeService.getNextNTaskNode(endNode, 1);
|
|
|
|
|
+ if(pauseNode!=null) {
|
|
|
|
|
+ pauseNode.setExeStatus("4");
|
|
|
|
|
+ taskNodeService.updateById(pauseNode);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
JSONObject jsonObject = new JSONObject();
|
|
@@ -355,7 +360,9 @@ public class OrderTaskServiceImpl extends SuperServiceImpl<OrderTaskMapper, Orde
|
|
|
UpdateWrapper<TTask> updateWrapper2 = new UpdateWrapper<TTask>();
|
|
UpdateWrapper<TTask> updateWrapper2 = new UpdateWrapper<TTask>();
|
|
|
//加工设备更新设备ID
|
|
//加工设备更新设备ID
|
|
|
if(isMachine){
|
|
if(isMachine){
|
|
|
- List<TaskNode> taskNodes = taskNodeService.list(new LbqWrapper<TaskNode>().eq(TaskNode::getTaskId, taskNode.getTaskId()));
|
|
|
|
|
|
|
+ //获取加工任务(procedureSort=1)
|
|
|
|
|
+ TTask task = taskService.getOne(new LambdaQueryWrapper<TTask>().eq(TTask::getCompleteBatchNo, taskNode.getCompleteBatchNo()).eq(TTask::getProcedureSort, 1).last("limit 1"));
|
|
|
|
|
+ List<TaskNode> taskNodes = taskNodeService.list(new LbqWrapper<TaskNode>().eq(TaskNode::getTaskId, task.getId()));
|
|
|
//更新节点目的设备
|
|
//更新节点目的设备
|
|
|
taskNodes.stream().forEach(item->{
|
|
taskNodes.stream().forEach(item->{
|
|
|
if(null != item.getTargetResourceId()){
|
|
if(null != item.getTargetResourceId()){
|
|
@@ -365,11 +372,13 @@ public class OrderTaskServiceImpl extends SuperServiceImpl<OrderTaskMapper, Orde
|
|
|
item.setTargetResourceId(resourceId);
|
|
item.setTargetResourceId(resourceId);
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
+ taskNodeService.updateBatchById(taskNodes);
|
|
|
|
|
+ updateWrapper2.lambda().set(TTask::getResourceId, resourceId).eq(TTask::getId, task.getId());
|
|
|
}else{
|
|
}else{
|
|
|
updateWrapper.lambda().set(TaskNode::getResourceId, resourceId).eq(TaskNode::getId, taskNode.getId());
|
|
updateWrapper.lambda().set(TaskNode::getResourceId, resourceId).eq(TaskNode::getId, taskNode.getId());
|
|
|
taskNodeService.update(null, updateWrapper);
|
|
taskNodeService.update(null, updateWrapper);
|
|
|
|
|
+ updateWrapper2.lambda().set(TTask::getResourceId, resourceId).eq(TTask::getId, taskNode.getTaskId());
|
|
|
}
|
|
}
|
|
|
- updateWrapper2.lambda().set(TTask::getResourceId, resourceId).eq(TTask::getId, taskNode.getTaskId());
|
|
|
|
|
taskService.update(null, updateWrapper2);
|
|
taskService.update(null, updateWrapper2);
|
|
|
|
|
|
|
|
}
|
|
}
|
|
@@ -453,8 +462,10 @@ public class OrderTaskServiceImpl extends SuperServiceImpl<OrderTaskMapper, Orde
|
|
|
this.updateNode(taskNodeList, taskNode);
|
|
this.updateNode(taskNodeList, taskNode);
|
|
|
}
|
|
}
|
|
|
}else if(StringUtil.isNotEmpty(productionresource.getModeSpecification())){
|
|
}else if(StringUtil.isNotEmpty(productionresource.getModeSpecification())){
|
|
|
|
|
+ //加工设备只能在产线
|
|
|
|
|
+ //起点产线取 终点产线放
|
|
|
|
|
+ taskNode = isStart? taskNodeList.stream().filter(item->item.getNodeName().equals("从物料位置取料")).collect(Collectors.toList()).get(1) : taskNodeList.stream().filter(item->item.getNodeName().equals("放本序设备")).collect(Collectors.toList()).get(0);
|
|
|
//循链寻找加工设备 替换执行程序节点
|
|
//循链寻找加工设备 替换执行程序节点
|
|
|
- taskNode = taskNodeList.stream().filter(item->item.getNodeName().equals("放本序设备")).collect(Collectors.toList()).get(0);
|
|
|
|
|
this.updateResource(taskNode, resourceId, true);
|
|
this.updateResource(taskNode, resourceId, true);
|
|
|
if(isStart) {
|
|
if(isStart) {
|
|
|
this.updateNode(taskNodeList, taskNode);
|
|
this.updateNode(taskNodeList, taskNode);
|