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,7 +702,18 @@ 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 -> {
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(); JSONObject param = new JSONObject();
param.put("point_code1", needPoint.getPoint_code()); param.put("point_code1", needPoint.getPoint_code());
@@ -719,6 +731,8 @@ public class AutoCallAirShaftTask extends Prun {
stepErrorInfo.add("备货区正在搬运管芯过来,托盘号:[" + needPoint.getVehicle_code() + "]。"); stepErrorInfo.add("备货区正在搬运管芯过来,托盘号:[" + needPoint.getVehicle_code() + "]。");
return 1; return 1;
} }
// 继续往下查询
}
// 3.3 排序,获取最后的起点,需要根据下一趟需要套轴的管芯规格来进行过滤 // 3.3 排序,获取最后的起点,需要根据下一趟需要套轴的管芯规格来进行过滤
if (plans.size() > 0) { if (plans.size() > 0) {
PdmBiSlittingproductionplan needDemoPlan = needPlans.get(0); PdmBiSlittingproductionplan needDemoPlan = needPlans.get(0);