opt: 异常处理无点位创建半条任务

This commit is contained in:
2025-06-17 17:49:12 +08:00
parent 02cd276f87
commit 094b7104fc
2 changed files with 48 additions and 19 deletions

View File

@@ -121,7 +121,9 @@ public class SendNBJExceptionPointTask extends AbstractAcsTask {
SchBaseTask task = new SchBaseTask();
task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr());
task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr());
task.setTask_status(TaskStatusEnum.START_AND_POINT.getCode());
task.setTask_status(ObjectUtil.isNotEmpty(form.getString("task_status"))
? form.getString("task_status")
: TaskStatusEnum.START_AND_POINT.getCode());
task.setPoint_code1(form.getString("point_code1"));
task.setPoint_code2(form.getString("point_code2"));
task.setVehicle_code(form.getString("vehicle_code1"));

View File

@@ -366,7 +366,20 @@ public class SlitterServiceImpl implements SlitterService {
} else {
stepTipLogs.add("套轴完成->[" + collect + "]对应的分切计划状态已更改,无暂存位置,创建任务失败!");
redisUtils.set("ERROR" + deviceCode, stepTipLogs);
throw new BadRequestException("[" + collect + "]对应的分切计划状态已更改,无暂存位置!");
JSONObject exParam = new JSONObject();
exParam.put("point_code1", startPoint.getPoint_code());
exParam.put("point_code2", "-");
exParam.put("vehicle_code1", collect);
exParam.put("task_type", SlitterEnum.TASK_TYPE.code("套轴异常处理桁架任务"));
exParam.put("product_area", SlitterConstant.SLITTER_TASK_AREA);
exParam.put("task_status", TaskStatusEnum.SURE_START.getCode());
exParam.put("acs_task_type", "6");
sendNBJExceptionPointTask.createTask(exParam);
res.put("status", HttpStatus.HTTP_OK);
res.put("message", "请求成功");
res.put("msg", msg);
return res;
// throw new BadRequestException("[" + collect + "]对应的分切计划状态已更改,无暂存位置!");
}
}
// 分切计划设置纸卷重量
@@ -1142,13 +1155,29 @@ public class SlitterServiceImpl implements SlitterService {
// 判断是不是内包间的点位
if (task.getPoint_code1().startsWith("TZZC")) {
// 查找半条任务,并创建下发
List<SchBaseTask> list = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
.eq(SchBaseTask::getTask_type, "010814")
.eq(SchBaseTask::getTask_status, TaskStatusEnum.SURE_START.getCode())
.eq(SchBaseTask::getIs_delete, "0")
.orderByAsc(SchBaseTask::getCreate_time));
if (list.size() > 0) {
SchBaseTask schBaseTask = list.get(0);
doCreatTrussSendShaftTask(task);
}
startPointObj.setPoint_status("1");
startPointObj.setQzz_no1("");
startPointObj.setQzz_no2("");
startPointObj.setRemark("");
TaskUtils.updateOptMessageByBCutPoint(startPointObj);
bcutpointivtService.updateById(startPointObj);
task.setTask_status(TaskStatusEnum.PICK_UP_COMPLETED.getCode());
TaskUtils.updateOptMessageByTask(task);
taskService.updateById(task);
return result;
}
public void doCreatTrussSendShaftTask(SchBaseTask task) {
List<SchBaseTask> list = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
.in(SchBaseTask::getTask_type, "010814", "010812")
.eq(SchBaseTask::getTask_status, TaskStatusEnum.SURE_START.getCode())
.eq(SchBaseTask::getIs_delete, "0")
.orderByAsc(SchBaseTask::getCreate_time));
if (list.size() > 0) {
SchBaseTask schBaseTask = list.get(0);
if ("010814".equals(schBaseTask.getTask_type())) {
JSONObject requestParam = JSONObject.parseObject(schBaseTask.getRequest_param());
if (ObjectUtil.isNotEmpty(requestParam.getString("needPosition")) && "A".equals(requestParam.getString("needPosition"))) {
schBaseTask.setPoint_code2(task.getPoint_code1() + "_" + requestParam.getString("needPosition"));
@@ -1161,18 +1190,16 @@ public class SlitterServiceImpl implements SlitterService {
schBaseTask.setTask_status(TaskStatusEnum.START_AND_POINT.getCode());
taskService.updateById(schBaseTask);
trussSendAirShaftTask.immediateNotifyAcs(schBaseTask.getTask_id());
} else if ("010812".equals(schBaseTask.getTask_type())) {
schBaseTask.setRemark("AGV取货完成触发!");
schBaseTask.setPoint_code2(task.getPoint_code1() + "_A");
schBaseTask.setUpdate_time(DateUtil.now());
schBaseTask.setTask_status(TaskStatusEnum.START_AND_POINT.getCode());
taskService.updateById(schBaseTask);
sendNBJExceptionPointTask.immediateNotifyAcs(schBaseTask.getTask_id());
}
}
startPointObj.setPoint_status("1");
startPointObj.setQzz_no1("");
startPointObj.setQzz_no2("");
startPointObj.setRemark("");
TaskUtils.updateOptMessageByBCutPoint(startPointObj);
bcutpointivtService.updateById(startPointObj);
task.setTask_status(TaskStatusEnum.PICK_UP_COMPLETED.getCode());
TaskUtils.updateOptMessageByTask(task);
taskService.updateById(task);
return result;
}
@Override