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