opt: 冲压空满交换优化

This commit is contained in:
yanps
2025-03-24 10:38:38 +08:00
parent cc9dc3c2b8
commit 7a93ff9cb1
2 changed files with 12 additions and 5 deletions

View File

@@ -1,5 +1,6 @@
package org.nl.wms.sch.task_manage.task.tasks.connector; package org.nl.wms.sch.task_manage.task.tasks.connector;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
@@ -30,6 +31,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -44,6 +46,7 @@ public class CNTTask extends AbstractTask {
private static final String TASK_CONFIG_CODE = "CNTTask"; private static final String TASK_CONFIG_CODE = "CNTTask";
private static final String[] EMPTY_POINT = {"13-01-01","13-01-04"}; private static final String[] EMPTY_POINT = {"13-01-01","13-01-04"};
private static final String[] CUSTOMIZE_POINT = {"CYXLDJW01","CYXLDJW02"};
@Autowired @Autowired
private ISchBasePointService pointService; private ISchBasePointService pointService;
@Autowired @Autowired
@@ -66,7 +69,10 @@ public class CNTTask extends AbstractTask {
}; };
tasks = tasks.stream().sorted(numericSuffixComparator).collect(Collectors.toList()); tasks = tasks.stream().sorted(numericSuffixComparator).collect(Collectors.toList());
for (SchBaseTask task : tasks) { for (SchBaseTask task : tasks) {
SchBasePoint schBasePoint = precedencePoint(); SchBasePoint schBasePoint = null;
if(CollUtil.contains(Arrays.asList(CUSTOMIZE_POINT),task.getPoint_code1())){
schBasePoint = precedencePoint();
}
if (ObjectUtil.isEmpty(schBasePoint) && TaskType.CARRY_TASK.getValue().equals(task.getTask_type())) { if (ObjectUtil.isEmpty(schBasePoint) && TaskType.CARRY_TASK.getValue().equals(task.getTask_type())) {
schBasePoint = schBasePointService.selectByRegionCode(RegionEnum.LAG_ROBOT_BEANDING_CELL.getRegion_code(), task.getVehicle_code(), "1"); schBasePoint = schBasePointService.selectByRegionCode(RegionEnum.LAG_ROBOT_BEANDING_CELL.getRegion_code(), task.getVehicle_code(), "1");
} }

View File

@@ -47,6 +47,7 @@ public class FTGTask extends AbstractTask {
private static final String TASK_CONFIG_CODE = "FTGTask"; private static final String TASK_CONFIG_CODE = "FTGTask";
private static final String[] EMPTY_POINT = {"13-01-02","13-01-03"}; private static final String[] EMPTY_POINT = {"13-01-02","13-01-03"};
private static final String[] CUSTOMIZE_POINT = {"CYXLDJW01","CYXLDJW02"};
@Autowired @Autowired
private ISchBasePointService pointService; private ISchBasePointService pointService;
@Autowired @Autowired
@@ -71,7 +72,10 @@ public class FTGTask extends AbstractTask {
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY); List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
for (SchBaseTask task : tasks) { for (SchBaseTask task : tasks) {
//获取空托盘点位 //获取空托盘点位
SchBasePoint schBasePoint = precedencePoint(); SchBasePoint schBasePoint = null;
if(CollUtil.contains(Arrays.asList(CUSTOMIZE_POINT),task.getPoint_code2())) {
schBasePoint = precedencePoint();
}
if(ObjectUtil.isEmpty(schBasePoint)) { if(ObjectUtil.isEmpty(schBasePoint)) {
schBasePoint = schBasePointService.selectEmpVehicleByRegionCode(RegionEnum.LAG_ROBOT_BEANDING_CELL.getRegion_code(), task.getVehicle_type()); schBasePoint = schBasePointService.selectEmpVehicleByRegionCode(RegionEnum.LAG_ROBOT_BEANDING_CELL.getRegion_code(), task.getVehicle_type());
} }
@@ -188,9 +192,6 @@ public class FTGTask extends AbstractTask {
/** /**
* 更新完成点位 * 更新完成点位
* @param startPoint
* @param schBasePoint
* @param pointStatus
*/ */
private void updateFinishPoint(String point, SchBaseTask taskObj, String pointStatus, int status) { private void updateFinishPoint(String point, SchBaseTask taskObj, String pointStatus, int status) {
SchBasePoint schBasePoint = pointService.selectByPointCode(point); SchBasePoint schBasePoint = pointService.selectByPointCode(point);