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;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -30,6 +31,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
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[] EMPTY_POINT = {"13-01-01","13-01-04"};
private static final String[] CUSTOMIZE_POINT = {"CYXLDJW01","CYXLDJW02"};
@Autowired
private ISchBasePointService pointService;
@Autowired
@@ -66,7 +69,10 @@ public class CNTTask extends AbstractTask {
};
tasks = tasks.stream().sorted(numericSuffixComparator).collect(Collectors.toList());
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())) {
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[] EMPTY_POINT = {"13-01-02","13-01-03"};
private static final String[] CUSTOMIZE_POINT = {"CYXLDJW01","CYXLDJW02"};
@Autowired
private ISchBasePointService pointService;
@Autowired
@@ -71,7 +72,10 @@ public class FTGTask extends AbstractTask {
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
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)) {
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) {
SchBasePoint schBasePoint = pointService.selectByPointCode(point);