opt: 一期分切行架下发指令优化,二期设备驱动优化
This commit is contained in:
@@ -678,6 +678,13 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!ObjectUtil.isEmpty(taskDto)) {
|
if (!ObjectUtil.isEmpty(taskDto)) {
|
||||||
|
if (taskDto.getStart_device_code().endsWith("X")) {
|
||||||
|
Boolean result = this.checkIsSafe(taskDto.getStart_device_code(), taskDto);
|
||||||
|
if (!result) {
|
||||||
|
notCreateInstMessage = "该设备存在上工位任务,此任务无法执行!";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
flag = this.executeReadyBusiness(taskDto, getDeviceCodeList, backGetDeviceCodeList);
|
flag = this.executeReadyBusiness(taskDto, getDeviceCodeList, backGetDeviceCodeList);
|
||||||
if (flag) {
|
if (flag) {
|
||||||
notCreateInstMessage = "";
|
notCreateInstMessage = "";
|
||||||
|
|||||||
@@ -245,10 +245,13 @@ public class XianGongAgvServiceImpl implements XianGongAgvService {
|
|||||||
String agvurl = paramService.findByCode(AcsConfig.AGVURL).getValue();
|
String agvurl = paramService.findByCode(AcsConfig.AGVURL).getValue();
|
||||||
String agvport = paramService.findByCode(AcsConfig.AGVPORT).getValue();
|
String agvport = paramService.findByCode(AcsConfig.AGVPORT).getValue();
|
||||||
|
|
||||||
agvurl = agvurl + ":" + agvport + "/api/route/transportOrders/" + instCode + "/withdrawal";
|
agvurl = agvurl + ":" + agvport + "/terminate";
|
||||||
|
JSONObject jsonObject = new JSONObject();
|
||||||
|
jsonObject.put("id", instCode);
|
||||||
|
jsonObject.put("disableVehicle", false);
|
||||||
log.info("删除agv指令请求agvurl:{}", agvurl);
|
log.info("删除agv指令请求agvurl:{}", agvurl);
|
||||||
HttpResponse result = HttpRequest.post(agvurl)
|
HttpResponse result = HttpRequest.post(agvurl)
|
||||||
//超时,毫秒
|
.body(jsonObject.toJSONString())
|
||||||
.timeout(20000)
|
.timeout(20000)
|
||||||
.execute();
|
.execute();
|
||||||
log.info("删除agv指令请求反馈:{}", result);
|
log.info("删除agv指令请求反馈:{}", result);
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ import org.nl.acs.task.enums.TaskStatusEnum;
|
|||||||
import org.nl.acs.task.enums.TaskTypeEnum;
|
import org.nl.acs.task.enums.TaskTypeEnum;
|
||||||
import org.nl.acs.task.service.TaskService;
|
import org.nl.acs.task.service.TaskService;
|
||||||
import org.nl.acs.task.service.dto.TaskDto;
|
import org.nl.acs.task.service.dto.TaskDto;
|
||||||
|
import org.nl.acs.utils.DeviceErrorUtil;
|
||||||
import org.nl.common.utils.SecurityUtils;
|
import org.nl.common.utils.SecurityUtils;
|
||||||
import org.nl.config.SpringContextHolder;
|
import org.nl.config.SpringContextHolder;
|
||||||
import org.nl.config.language.LangProcess;
|
import org.nl.config.language.LangProcess;
|
||||||
@@ -144,8 +145,8 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
/**
|
/**
|
||||||
* 下发命令
|
* 下发命令
|
||||||
*/
|
*/
|
||||||
int to_command = 0;
|
String to_command = null;
|
||||||
int last_to_command = 0;
|
String last_to_command = null;
|
||||||
/**
|
/**
|
||||||
* 下发目标站
|
* 下发目标站
|
||||||
*/
|
*/
|
||||||
@@ -335,13 +336,14 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
|
|
||||||
} catch (Exception var17) {
|
} catch (Exception var17) {
|
||||||
this.iserror = true;
|
this.iserror = true;
|
||||||
|
message = "读取信号值时出现异常";
|
||||||
|
String extracted = DeviceErrorUtil.extracted(var17);
|
||||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||||
.device_code(device_code)
|
.device_code(device_code)
|
||||||
.content(this.device_code + "读取信号值时出现异常:" + var17.getMessage() + ",this.itemProtocol is null")
|
.content(this.device_code + extracted + ",报错信息:" + var17.getMessage())
|
||||||
.build();
|
.build();
|
||||||
logDto.setLog_level(4);
|
logDto.setLog_level(4);
|
||||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||||
message = "读取信号值时出现异常";
|
|
||||||
var17.printStackTrace();
|
var17.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -121,8 +121,8 @@ public class ItemProtocol {
|
|||||||
return this.getOpcIntegerValue(item_to_target);
|
return this.getOpcIntegerValue(item_to_target);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getTo_command() {
|
public String getTo_command() {
|
||||||
return this.getOpcIntegerValue(item_to_command);
|
return this.getOpcStringValue(item_to_command);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getTo_container_type() {
|
public int getTo_container_type() {
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ import org.nl.acs.task.enums.TaskTypeEnum;
|
|||||||
import org.nl.acs.task.service.TaskService;
|
import org.nl.acs.task.service.TaskService;
|
||||||
import org.nl.acs.task.service.dto.TaskDto;
|
import org.nl.acs.task.service.dto.TaskDto;
|
||||||
import org.nl.acs.taskscreen.service.TaskScreenService;
|
import org.nl.acs.taskscreen.service.TaskScreenService;
|
||||||
|
import org.nl.acs.utils.DeviceErrorUtil;
|
||||||
import org.nl.common.exception.BadRequestException;
|
import org.nl.common.exception.BadRequestException;
|
||||||
import org.nl.common.utils.SecurityUtils;
|
import org.nl.common.utils.SecurityUtils;
|
||||||
import org.nl.config.SpringContextHolder;
|
import org.nl.config.SpringContextHolder;
|
||||||
@@ -114,11 +115,11 @@ public class ConveyorWithScannerWeightDeviceDriver extends AbstractOpcDeviceDriv
|
|||||||
int to_command = 0;
|
int to_command = 0;
|
||||||
int last_to_command = 0;
|
int last_to_command = 0;
|
||||||
|
|
||||||
int to_target = 0;
|
String to_target = null;
|
||||||
int last_to_target = 0;
|
String last_to_target = null;
|
||||||
|
|
||||||
int to_task = 0;
|
String to_task = null;
|
||||||
int last_to_task = 0;
|
String last_to_task = null;
|
||||||
|
|
||||||
int to_container_type = 0;
|
int to_container_type = 0;
|
||||||
int last_to_container_type = 0;
|
int last_to_container_type = 0;
|
||||||
@@ -144,7 +145,7 @@ public class ConveyorWithScannerWeightDeviceDriver extends AbstractOpcDeviceDriv
|
|||||||
String last_barcode = null;
|
String last_barcode = null;
|
||||||
|
|
||||||
|
|
||||||
//子卷条码
|
//木箱条码
|
||||||
String material_barcode = null;
|
String material_barcode = null;
|
||||||
String last_material_barcode = null;
|
String last_material_barcode = null;
|
||||||
|
|
||||||
@@ -409,9 +410,10 @@ public class ConveyorWithScannerWeightDeviceDriver extends AbstractOpcDeviceDriv
|
|||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
this.iserror = true;
|
this.iserror = true;
|
||||||
|
String extracted = DeviceErrorUtil.extracted(e);
|
||||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||||
.device_code(device_code)
|
.device_code(device_code)
|
||||||
.content(this.device_code + "读取信号值时出现异常:" + e.getMessage() + ",this.itemProtocol is null")
|
.content(this.device_code + extracted + ",报错信息:" + e.getMessage())
|
||||||
.build();
|
.build();
|
||||||
logDto.setLog_level(4);
|
logDto.setLog_level(4);
|
||||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||||
@@ -1102,7 +1104,7 @@ public class ConveyorWithScannerWeightDeviceDriver extends AbstractOpcDeviceDriv
|
|||||||
this.writing(list);
|
this.writing(list);
|
||||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||||
.device_code(device_code)
|
.device_code(device_code)
|
||||||
.content(device_code + inst.getInstruction_code() + "再次下发电气信号")
|
.content(device_code + instdto.getInstruction_code() + "再次下发电气信号")
|
||||||
.build();
|
.build();
|
||||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -132,16 +132,16 @@ public class ItemProtocol {
|
|||||||
public Float getWeight(){
|
public Float getWeight(){
|
||||||
return this.getOpcFloatValue(item_weight);
|
return this.getOpcFloatValue(item_weight);
|
||||||
}
|
}
|
||||||
public int getTo_task() {
|
public String getTo_task() {
|
||||||
return this.getOpcIntegerValue(item_to_task);
|
return this.getOpcStringValue(item_to_task);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getTo_command() {
|
public int getTo_command() {
|
||||||
return this.getOpcIntegerValue(item_to_command);
|
return this.getOpcIntegerValue(item_to_command);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getTo_target() {
|
public String getTo_target() {
|
||||||
return this.getOpcIntegerValue(item_to_target);
|
return this.getOpcStringValue(item_to_target);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getContainer_type(){
|
public int getContainer_type(){
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ import org.nl.acs.task.enums.TaskStatusEnum;
|
|||||||
import org.nl.acs.task.enums.TaskTypeEnum;
|
import org.nl.acs.task.enums.TaskTypeEnum;
|
||||||
import org.nl.acs.task.service.TaskService;
|
import org.nl.acs.task.service.TaskService;
|
||||||
import org.nl.acs.task.service.dto.TaskDto;
|
import org.nl.acs.task.service.dto.TaskDto;
|
||||||
|
import org.nl.acs.utils.DeviceErrorUtil;
|
||||||
import org.nl.common.exception.BadRequestException;
|
import org.nl.common.exception.BadRequestException;
|
||||||
import org.nl.common.utils.SecurityUtils;
|
import org.nl.common.utils.SecurityUtils;
|
||||||
import org.nl.config.SpringContextHolder;
|
import org.nl.config.SpringContextHolder;
|
||||||
@@ -228,9 +229,10 @@ public class ReturnGoodManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
|
|||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
this.iserror = true;
|
this.iserror = true;
|
||||||
|
String extracted = DeviceErrorUtil.extracted(e);
|
||||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||||
.device_code(device_code)
|
.device_code(device_code)
|
||||||
.content(this.device_code + "读取信号值时出现异常:" + e.getMessage() + ",this.itemProtocol is null")
|
.content(this.device_code + extracted + ",报错信息:" + e.getMessage())
|
||||||
.build();
|
.build();
|
||||||
logDto.setLog_level(4);
|
logDto.setLog_level(4);
|
||||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||||
|
|||||||
@@ -885,7 +885,8 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme
|
|||||||
} else {
|
} else {
|
||||||
//维修解警后重新向堆垛机下发指令
|
//维修解警后重新向堆垛机下发指令
|
||||||
Instruction instructionErro = checkInst();
|
Instruction instructionErro = checkInst();
|
||||||
if (ObjectUtil.isNotEmpty(instructionErro) && InstructionStatusEnum.BUSY.getIndex().equals(instructionErro.getInstruction_status()) && StrUtil.isNotEmpty(instructionErro.getExecute_code())) {
|
if (ObjectUtil.isNotEmpty(instructionErro) && InstructionStatusEnum.BUSY.getIndex().equals(instructionErro.getInstruction_status())
|
||||||
|
&& StrUtil.isNotEmpty(instructionErro.getExecute_code())) {
|
||||||
if (StrUtil.isEmpty(instructionErro.getExecute_message())) {
|
if (StrUtil.isEmpty(instructionErro.getExecute_message())) {
|
||||||
String start_device_code = instructionErro.getStart_device_code();
|
String start_device_code = instructionErro.getStart_device_code();
|
||||||
Device startDevice = deviceAppService.findDeviceByCode(start_device_code);
|
Device startDevice = deviceAppService.findDeviceByCode(start_device_code);
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
package org.nl.acs.utils;
|
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.common.logging.annotation.Log;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
public class DeviceErrorUtil {
|
||||||
|
|
||||||
|
public static String extracted(Exception var17) {
|
||||||
|
StringBuffer errorStack = new StringBuffer();
|
||||||
|
errorStack.append("<br/>【异常堆栈:");
|
||||||
|
int x = 0;
|
||||||
|
StackTraceElement[] stackTrace = var17.getStackTrace();
|
||||||
|
if (stackTrace != null && stackTrace.length > 0) {
|
||||||
|
for (StackTraceElement stack : stackTrace) {
|
||||||
|
x++;
|
||||||
|
errorStack.append(stack.toString().replaceAll("<", ">")).append("<br/>");
|
||||||
|
if (x > 10) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return errorStack.append("】").toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user