fix:RGV任务下发异常任务时不需要校验

This commit is contained in:
zhouz
2025-07-23 14:22:24 +08:00
parent 99babf99ac
commit 20aecf5d73

View File

@@ -25,6 +25,7 @@ import org.springframework.util.CollectionUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* 堆垛机点位至行架点位任务(出库) * 堆垛机点位至行架点位任务(出库)
@@ -113,6 +114,14 @@ public class TwoOutHeapTask extends AbstractAcsTask {
List<JSONObject> pointJson = wo_Task.query("handle_class = '" + THIS_CLASS + "' AND task_status IN ('05','06') AND is_delete = '0' ORDER BY point_code2") List<JSONObject> pointJson = wo_Task.query("handle_class = '" + THIS_CLASS + "' AND task_status IN ('05','06') AND is_delete = '0' ORDER BY point_code2")
.getResultJSONArray(0).toJavaList(JSONObject.class); .getResultJSONArray(0).toJavaList(JSONObject.class);
// 下发两个的任务
List<JSONObject> err_list = taskArrAll.stream()
.filter(row -> row.getString("point_code2").equals(IOSEnum.EXCEP_OUT.code("异常出库口")))
.collect(Collectors.toList());
if (ObjectUtil.isNotEmpty(err_list)) {
taskArr.addAll(err_list);
}
if (ObjectUtil.isEmpty(pointJson)) { if (ObjectUtil.isEmpty(pointJson)) {
// 下发两个的任务 // 下发两个的任务
JSONObject oneJson = taskArrAll.stream() JSONObject oneJson = taskArrAll.stream()
@@ -152,7 +161,7 @@ public class TwoOutHeapTask extends AbstractAcsTask {
JSONObject jsonOne = pointTab.query("point_code = '" + IOSEnum.OUT_HANGER.code("行架位2") + "'") JSONObject jsonOne = pointTab.query("point_code = '" + IOSEnum.OUT_HANGER.code("行架位2") + "'")
.uniqueResult(0); .uniqueResult(0);
if (jsonOne.getString("is_used").equals("1")) { if (jsonOne.getString("is_used").equals("1")) {
twoJsonOne.put("point_code2",IOSEnum.OUT_HANGER.code("行架位2")); twoJsonOne.put("point_code2", IOSEnum.OUT_HANGER.code("行架位2"));
wo_Task.update(twoJsonOne); wo_Task.update(twoJsonOne);
taskArr.add(twoJsonOne); taskArr.add(twoJsonOne);
} }
@@ -178,7 +187,7 @@ public class TwoOutHeapTask extends AbstractAcsTask {
JSONObject jsonTwo = pointTab.query("point_code = '" + IOSEnum.OUT_HANGER.code("行架位1") + "'") JSONObject jsonTwo = pointTab.query("point_code = '" + IOSEnum.OUT_HANGER.code("行架位1") + "'")
.uniqueResult(0); .uniqueResult(0);
if (jsonTwo.getString("is_used").equals("1")) { if (jsonTwo.getString("is_used").equals("1")) {
twoJsonTwo.put("point_code2",IOSEnum.OUT_HANGER.code("行架位1")); twoJsonTwo.put("point_code2", IOSEnum.OUT_HANGER.code("行架位1"));
wo_Task.update(twoJsonTwo); wo_Task.update(twoJsonTwo);
taskArr.add(twoJsonTwo); taskArr.add(twoJsonTwo);
} }
@@ -206,20 +215,20 @@ public class TwoOutHeapTask extends AbstractAcsTask {
JSONObject param = new JSONObject(); JSONObject param = new JSONObject();
param.put("is_delete", "1"); param.put("is_delete", "1");
param.put("update_time", DateUtil.now()); param.put("update_time", DateUtil.now());
taskTab.update(param,"task_id = '" + task_id+ "'"); taskTab.update(param, "task_id = '" + task_id + "'");
} }
if (TaskStatusEnum.EXECUTING.getCode().equals(status)) { if (TaskStatusEnum.EXECUTING.getCode().equals(status)) {
JSONObject param = new JSONObject(); JSONObject param = new JSONObject();
param.put("task_status", TaskStatusEnum.EXECUTING.getCode()); param.put("task_status", TaskStatusEnum.EXECUTING.getCode());
param.put("update_time", DateUtil.now()); param.put("update_time", DateUtil.now());
taskTab.update(param,"task_id = '" + task_id+ "'"); taskTab.update(param, "task_id = '" + task_id + "'");
} }
if (StrUtil.equals(status, TaskStatusEnum.FINISHED.getCode())) { if (StrUtil.equals(status, TaskStatusEnum.FINISHED.getCode())) {
// 更新任务完成 // 更新任务完成
JSONObject param = new JSONObject(); JSONObject param = new JSONObject();
param.put("task_status", TaskStatusEnum.FINISHED.getCode()); param.put("task_status", TaskStatusEnum.FINISHED.getCode());
param.put("update_time", DateUtil.now()); param.put("update_time", DateUtil.now());
taskTab.update(param,"task_id = '" + task_id+ "'"); taskTab.update(param, "task_id = '" + task_id + "'");
// 如果是异常出库口则不需要下发行架任务 // 如果是异常出库口则不需要下发行架任务
if (jsonTask.getString("point_code2").equals(IOSEnum.EXCEP_OUT.code("异常出库口"))) { if (jsonTask.getString("point_code2").equals(IOSEnum.EXCEP_OUT.code("异常出库口"))) {
WQLObject veExtTab = WQLObject.getWQLObject("md_pb_storagevehicleext"); WQLObject veExtTab = WQLObject.getWQLObject("md_pb_storagevehicleext");
@@ -300,13 +309,13 @@ public class TwoOutHeapTask extends AbstractAcsTask {
} }
@Transactional @Transactional
public void sendTaskAcs(String groupTaskId,boolean retry) { public void sendTaskAcs(String groupTaskId, boolean retry) {
WQLObject wo_Task = WQLObject.getWQLObject("sch_base_task"); WQLObject wo_Task = WQLObject.getWQLObject("sch_base_task");
List<JSONObject> taskArrAll = wo_Task List<JSONObject> taskArrAll = wo_Task
.query("handle_class = '" + THIS_CLASS + "' and task_status = '" + TaskStatusEnum.START_AND_POINT.getCode() + "' and is_delete ='0' ORDER BY create_time") .query("handle_class = '" + THIS_CLASS + "' and task_status = '" + TaskStatusEnum.START_AND_POINT.getCode() + "' and is_delete ='0' ORDER BY create_time")
.getResultJSONArray(0).toJavaList(JSONObject.class); .getResultJSONArray(0).toJavaList(JSONObject.class);
// 是否下发多个AGV输送出库任务 // 是否下发多个AGV输送出库任务
if (CollectionUtils.isEmpty(taskArrAll)){ if (CollectionUtils.isEmpty(taskArrAll)) {
return; return;
} }
List<JSONObject> taskArr; List<JSONObject> taskArr;