opt: 优化内包间行架任务下发

This commit is contained in:
yanps
2023-12-26 21:55:40 +08:00
parent 116f8a0cfe
commit adc6d7f74d
2 changed files with 14 additions and 37 deletions

View File

@@ -781,25 +781,7 @@ public class IndoorManipulatorDeviceDriver extends AbstractOpcDeviceDriver imple
if (ObjectUtil.isNotEmpty(taskDtos)) { if (ObjectUtil.isNotEmpty(taskDtos)) {
//按照优先级排序 优先级相等按照创建时间排序 //按照优先级排序 优先级相等按照创建时间排序
taskDtos = this.sortTask(taskDtos); taskDtos = this.sortTask(taskDtos);
TaskDto taskDto = null; TaskDto taskDto = taskDtos.get(0);
for (int i1 = 0; i1 < taskDtos.size(); i1++) {
taskDto = taskDtos.get(i1);
Boolean flag;
if ("6".equals(taskDto.getTruss_type())) {
flag = checkAgv(taskDto);
if (flag){
break;
}
if (!flag && i1 == taskDtos.size()-1) {
notCreateInstMessage = "rgv条件不匹配"+"任务号为:"+taskDto.getTask_code();
return false;
}
}else {
break;
}
}
//存在行架->暂存的AGV任务 需要过滤 //存在行架->暂存的AGV任务 需要过滤
// 9 行架任务 // 9 行架任务
if (!StrUtil.equals(taskDto.getTask_type(), "9")) { if (!StrUtil.equals(taskDto.getTask_type(), "9")) {
@@ -845,26 +827,16 @@ public class IndoorManipulatorDeviceDriver extends AbstractOpcDeviceDriver imple
return true; return true;
} else { } else {
List<TaskDto> taskDtoList = taskserver.queryTaskByDeviceCode(startDeviceCode); List<TaskDto> taskDtoList = taskserver.queryTaskByDeviceCode(startDeviceCode);
//按照优先级排序 优先级相等按照创建时间排序
taskDtoList = this.sortTask(taskDtoList);
if (ObjectUtil.isNotEmpty(taskDtoList)) { if (ObjectUtil.isNotEmpty(taskDtoList)) {
for (int j = 0; j < taskDtoList.size(); j++) { for (int j = 0; j < taskDtoList.size(); j++) {
//按照优先级排序 优先级相等按照创建时间排序 task = taskDtoList.get(j);
taskDtoList = this.sortTask(taskDtoList); if ("6".equals(task.getTruss_type())) {
for (int i1 = 0; i1 < taskDtoList.size(); i1++) { Boolean aBoolean = checkAgv(task);
task = taskDtoList.get(i1); if (!aBoolean) {
Boolean flag; continue;
if ("6".equals(task.getTruss_type())) {
flag = checkAgv(task);
if (flag){
break;
}
if (!flag && i1 == taskDtos.size()-1) {
notCreateInstMessage = "rgv条件不匹配"+"任务号为:"+task.getTask_code();
return false;
}
}else {
break;
} }
} }
// 9 行架任务 // 9 行架任务
if (!StrUtil.equals(task.getTask_type(), "9")) { if (!StrUtil.equals(task.getTask_type(), "9")) {
@@ -986,8 +958,12 @@ public class IndoorManipulatorDeviceDriver extends AbstractOpcDeviceDriver imple
if (agv1.getDeviceDriver() instanceof RgvDeviceDriver && agv2.getDeviceDriver() instanceof RgvDeviceDriver) { if (agv1.getDeviceDriver() instanceof RgvDeviceDriver && agv2.getDeviceDriver() instanceof RgvDeviceDriver) {
rgv1 = (RgvDeviceDriver) agv1.getDeviceDriver(); rgv1 = (RgvDeviceDriver) agv1.getDeviceDriver();
rgv2 = (RgvDeviceDriver) agv2.getDeviceDriver(); rgv2 = (RgvDeviceDriver) agv2.getDeviceDriver();
if ((rgv1.getMode() == 2 && rgv1.getMove1() == 1 && rgv1.getMove2() == 0 ) || (rgv2.getMode() == 2 && rgv2.getMove1() == 1 && rgv2.getMove2() == 0 )) { if ((rgv1.getMode() == 2 && rgv1.getMove1() == 1 && rgv1.getMove2() == 0) || (rgv2.getMode() == 2 && rgv2.getMove1() == 1 && rgv2.getMove2() == 0)) {
return true; return true;
} else if (rgv1.getMode() != 2) {
logServer.deviceExecuteLog(this.device_code, "", "", "创建不了指令的原因,mode:" + mode + "不等于2");
} else if (rgv1.getMove1() != 1) {
logServer.deviceExecuteLog(this.device_code, "", "", "创建不了指令的原因,move1:" + rgv1.getMove1() + "不等于1");
} }
} }
} }

View File

@@ -418,6 +418,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
@Override @Override
public ApplyManipulatorActionResponse applyManipulatorActionRequest(ApplyManipulatorActionRequest param) { public ApplyManipulatorActionResponse applyManipulatorActionRequest(ApplyManipulatorActionRequest param) {
log.info("向LMS申请反馈,请求参数{}",param);
try { try {
MDC.put(log_file_type, log_type); MDC.put(log_file_type, log_type);
ApplyManipulatorActionResponse applyManipulatorActionResponse = new ApplyManipulatorActionResponse(); ApplyManipulatorActionResponse applyManipulatorActionResponse = new ApplyManipulatorActionResponse();