From 52cc5d7dfde3e653f283a51b2bb162f966ce2336 Mon Sep 17 00:00:00 2001 From: gongbaoxiong <751575283@qq.com> Date: Thu, 11 Jul 2024 09:39:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E5=A2=9E=E5=8A=A0=E4=BA=8C=E6=AC=A1?= =?UTF-8?q?=E5=88=86=E9=85=8D=E4=BB=BB=E5=8A=A1=E5=AE=8C=E6=88=90=E6=83=85?= =?UTF-8?q?=E5=86=B5=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auto/AutoSendVehicleToKzj.java | 39 ++++--------------- 1 file changed, 8 insertions(+), 31 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java index 050ce41e9..66eae5485 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java @@ -6,6 +6,7 @@ import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.nl.b_lms.sch.point.dao.BstIvtPackageinfoivt; +import org.nl.b_lms.sch.point.dao.mapper.BstIvtPackageinfoivtMapper; import org.nl.b_lms.sch.point.service.IbstIvtPackageinfoivtService; import org.nl.b_lms.sch.tasks.first_floor_area.DjqToKzjhcwTask; import org.nl.b_lms.sch.tasks.first_floor_area.GzqToKzjhcwTask; @@ -15,8 +16,6 @@ import org.redisson.api.RedissonClient; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.math.BigDecimal; -import java.util.Comparator; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @@ -34,6 +33,8 @@ public class AutoSendVehicleToKzj { private DjqToKzjhcwTask djqToKzjhcwTask; @Resource private GzqToKzjhcwTask gzqToKzjhcwTask; + @Resource + private BstIvtPackageinfoivtMapper bstIvtPackageinfoivtMapper; @Resource private IbstIvtPackageinfoivtService packageinfoivtService; @@ -85,41 +86,17 @@ public class AutoSendVehicleToKzj { boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS); try { if (tryLock) { - //存在空载具缓存位无空载具的点位 - List kzjIvtList = packageinfoivtService.checkEndPointTask(PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"), null, PackageInfoIvtEnum.TASK_POINT_TYPE.code("放货分配"), PackageInfoIvtEnum.SORT_TYPE.code("降序"), ""); - if (CollectionUtils.isEmpty(kzjIvtList)) { - return; - } JSONObject task = new JSONObject(); String pointCode1 = null; String pointCode2; - boolean hasEmptyVehicle; - //判断有空载具 - List vehicleList = kzjIvtList.stream() - .filter(n -> n.getIvt_status().equals(PackageInfoIvtEnum.IVT_STATUS.code("空载具"))) - .sorted(Comparator.comparing(BstIvtPackageinfoivt::getSort_seq)) - .collect(Collectors.toList()); - //判断空载具点位外层是否有空载具 - if (CollectionUtils.isNotEmpty(vehicleList)) { - BigDecimal sortSeq = vehicleList.get(0).getSort_seq(); - hasEmptyVehicle = kzjIvtList.stream() - .noneMatch(r -> r.getSort_seq().compareTo(sortSeq) < 0 && - r.getIvt_status().equals(PackageInfoIvtEnum.IVT_STATUS.code("空载具"))); - //有阻挡 - if (!hasEmptyVehicle) { + List kzjIvtList = packageinfoivtService.checkEndPointTask(PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"), null, PackageInfoIvtEnum.TASK_POINT_TYPE.code("空载具放货"), PackageInfoIvtEnum.SORT_TYPE.code("降序"), PackageInfoIvtEnum.TASK_TYPE.code("补空(待检区->空载具缓存位)")); + if (CollectionUtils.isNotEmpty(kzjIvtList)) { + pointCode2 = kzjIvtList.get(0).getPoint_code(); + if (pointCode2 == null) { return; - } else { - List pointCodeList = kzjIvtList.stream() - .filter(r -> r.getSort_seq().compareTo(sortSeq) < 0) - .sorted(Comparator.comparing(BstIvtPackageinfoivt::getSort_seq).reversed()) - .collect(Collectors.toList()); - if (CollectionUtils.isEmpty(pointCodeList)) { - return; - } - pointCode2 = pointCodeList.get(0).getPoint_code(); } } else { - pointCode2 = kzjIvtList.get(0).getPoint_code(); + return; } //待检区有空载具且过滤未完成任务 List djqPackageinfoivtList = packageinfoivtService.checkEndPointTask(PackageInfoIvtEnum.POINT_STATUS.code("待检区"), PackageInfoIvtEnum.IVT_STATUS.code("空载具"), PackageInfoIvtEnum.TASK_POINT_TYPE.code("取货任务"), PackageInfoIvtEnum.SORT_TYPE.code("升序"), "");