opt: 优化内包间行架任务下发
This commit is contained in:
@@ -781,25 +781,7 @@ public class IndoorManipulatorDeviceDriver extends AbstractOpcDeviceDriver imple
|
||||
if (ObjectUtil.isNotEmpty(taskDtos)) {
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
taskDtos = this.sortTask(taskDtos);
|
||||
TaskDto taskDto = null;
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TaskDto taskDto = taskDtos.get(0);
|
||||
//存在行架->暂存的AGV任务 需要过滤
|
||||
// 9 行架任务
|
||||
if (!StrUtil.equals(taskDto.getTask_type(), "9")) {
|
||||
@@ -845,26 +827,16 @@ public class IndoorManipulatorDeviceDriver extends AbstractOpcDeviceDriver imple
|
||||
return true;
|
||||
} else {
|
||||
List<TaskDto> taskDtoList = taskserver.queryTaskByDeviceCode(startDeviceCode);
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
taskDtoList = this.sortTask(taskDtoList);
|
||||
if (ObjectUtil.isNotEmpty(taskDtoList)) {
|
||||
for (int j = 0; j < taskDtoList.size(); j++) {
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
taskDtoList = this.sortTask(taskDtoList);
|
||||
for (int i1 = 0; i1 < taskDtoList.size(); i1++) {
|
||||
task = taskDtoList.get(i1);
|
||||
Boolean flag;
|
||||
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;
|
||||
task = taskDtoList.get(j);
|
||||
if ("6".equals(task.getTruss_type())) {
|
||||
Boolean aBoolean = checkAgv(task);
|
||||
if (!aBoolean) {
|
||||
continue;
|
||||
}
|
||||
|
||||
}
|
||||
// 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) {
|
||||
rgv1 = (RgvDeviceDriver) agv1.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;
|
||||
} 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");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -418,6 +418,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
|
||||
@Override
|
||||
public ApplyManipulatorActionResponse applyManipulatorActionRequest(ApplyManipulatorActionRequest param) {
|
||||
log.info("向LMS申请反馈,请求参数{}",param);
|
||||
try {
|
||||
MDC.put(log_file_type, log_type);
|
||||
ApplyManipulatorActionResponse applyManipulatorActionResponse = new ApplyManipulatorActionResponse();
|
||||
|
||||
Reference in New Issue
Block a user