opt: 优化内包间行架任务下发
This commit is contained in:
@@ -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");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
Reference in New Issue
Block a user