opt:备货区任务校验

This commit is contained in:
2025-09-15 09:31:04 +08:00
parent 0d02b5ef37
commit 0fd2500e4f

View File

@@ -54,6 +54,7 @@ import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -701,23 +702,36 @@ public class AutoCallAirShaftTask extends Prun {
// 3.2 判断是否有单独拉出去的任务,有的话直接拉过来。
List<BstIvtStockingivt> stockingivts = stockingivtService.getMoveTaskPoints();
if (CollectionUtil.isNotEmpty(stockingivts)) {
BstIvtStockingivt bstIvtStockingivt = stockingivts.get(0);
// 直接搬过来即可
JSONObject param = new JSONObject();
param.put("point_code1", needPoint.getPoint_code());
param.put("point_code2", bstIvtStockingivt.getPoint_code());
param.put("vehicle_code", needPoint.getVehicle_code());
param.put("product_area", SlitterConstant.SLITTER_TASK_AREA);
param.put("task_type", SlitterEnum.TASK_TYPE.code("备货区送纸管"));
param.put("task_id", "1".equals(flag) ? needPoint.getTask_id() : "");
param.put("task_status", "1".equals(flag) ? TaskStatusEnum.SURE_START.getCode() : TaskStatusEnum.START_AND_POINT.getCode());
// 存储纸管信息
List<MdPbPapervehicle> paperList = mdPbPapervehicleService.list(new LambdaQueryWrapper<MdPbPapervehicle>()
.eq(MdPbPapervehicle::getVehicle_code, needPoint.getVehicle_code()));
doSavePaperInfos(paperList, param);
stockAreaCallTubeTask.createTask(param);
stepErrorInfo.add("备货区正在搬运管芯过来,托盘号:[" + needPoint.getVehicle_code() + "]。");
return 1;
// 判断当前这个拉出去的点位有没有拉进来的任务
BstIvtStockingivt bstIvtStockingivt = stockingivts.stream().filter(p -> {
int count = taskService.count(new LambdaQueryWrapper<SchBaseTask>()
.lt(SchBaseTask::getTask_status, "07")
.eq(SchBaseTask::getIs_delete, "0")
.and(lam2 -> lam2.eq(SchBaseTask::getPoint_code2, p.getPoint_code())
.or()
.eq(SchBaseTask::getPoint_code3, p.getPoint_code())));
return count == 0;
}).findFirst().orElse(null);
// BstIvtStockingivt bstIvtStockingivt = stockingivts.get(0);
if (ObjectUtil.isNotEmpty(bstIvtStockingivt)) {
// 直接搬过来即可
JSONObject param = new JSONObject();
param.put("point_code1", needPoint.getPoint_code());
param.put("point_code2", bstIvtStockingivt.getPoint_code());
param.put("vehicle_code", needPoint.getVehicle_code());
param.put("product_area", SlitterConstant.SLITTER_TASK_AREA);
param.put("task_type", SlitterEnum.TASK_TYPE.code("备货区送纸管"));
param.put("task_id", "1".equals(flag) ? needPoint.getTask_id() : "");
param.put("task_status", "1".equals(flag) ? TaskStatusEnum.SURE_START.getCode() : TaskStatusEnum.START_AND_POINT.getCode());
// 存储纸管信息
List<MdPbPapervehicle> paperList = mdPbPapervehicleService.list(new LambdaQueryWrapper<MdPbPapervehicle>()
.eq(MdPbPapervehicle::getVehicle_code, needPoint.getVehicle_code()));
doSavePaperInfos(paperList, param);
stockAreaCallTubeTask.createTask(param);
stepErrorInfo.add("备货区正在搬运管芯过来,托盘号:[" + needPoint.getVehicle_code() + "]。");
return 1;
}
// 继续往下查询
}
// 3.3 排序,获取最后的起点,需要根据下一趟需要套轴的管芯规格来进行过滤
if (plans.size() > 0) {