rev:修改

This commit is contained in:
2026-03-24 20:15:21 +08:00
parent 92ae1388e5
commit 5b37012b43
6 changed files with 80 additions and 31 deletions

View File

@@ -192,7 +192,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
agv_status = 1;
//到达普通站点
if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) {
log.info("到达{}取货点开始取货", device_code);
log.info("到达{}取货点开始取货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -200,7 +200,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
}
// 到达货架
if (device.getDeviceDriver() instanceof StandardStorageDeviceDriver) {
log.info("到达{}取货点开始取货", device_code);
log.info("到达{}取货点开始取货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -209,7 +209,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
//到达称重平台
if (device.getDeviceDriver() instanceof WeightPlatformDeviceDriver) {
log.info("到达{}取货点开始取货", device_code);
log.info("到达{}取货点开始取货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -226,7 +226,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
// 判断是否允许取货
if (deviceDriver.getAction() == 1) {
log.info("到达{}取货点开始取货", device_code);
inst.setExecute_status("1");
inst.setExecute_status("1"+"指令号:"+ikey);
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
@@ -241,7 +241,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
Map<String, Object> param = new HashMap<>();
param.put(org.nl.acs.device_driver.basedriver.robot_arm.ItemProtocol.to_out, 1);
deviceDriver.writing(param);
log.info("到达{}取货点开始取货", device_code);
log.info("到达{}取货点开始取货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -258,7 +258,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
Map<String, Object> param = new HashMap<>();
param.put(org.nl.acs.device_driver.basedriver.pallet_dispenser.ItemProtocol.to_out, 1);
deviceDriver.writing(param);
log.info("到达{}取货点开始取货", device_code);
log.info("到达{}取货点开始取货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -316,7 +316,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
}
if (deviceDriver.getIs_put_confirm()) {
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("agv进入" + device_code + "取货完成");
log.info("agv进入" + device_code + "取货完成"+"指令号:"+ikey);
flag = true;
deviceDriver.setIs_put_confirm(false);
} else {
@@ -327,14 +327,14 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
//到达货架取货完成
if (device.getDeviceDriver() instanceof StandardStorageDeviceDriver) {
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("agv进入" + device_code + "取货完成");
log.info("agv进入" + device_code + "取货完成"+"指令号:"+ikey);
flag = true;
}
//到达称重平台取货完成
if (device.getDeviceDriver() instanceof WeightPlatformDeviceDriver) {
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("agv进入" + device_code + "取货完成");
log.info("agv进入" + device_code + "取货完成"+"指令号:"+ikey);
flag = true;
}
@@ -345,7 +345,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
param.put(ItemProtocol.to_out_finish, 1);
deviceDriver.writing(param);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("agv进入" + device_code + "取货完成");
log.info("agv进入" + device_code + "取货完成"+"指令号:"+ikey);
flag = true;
}
@@ -357,7 +357,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
param.put("to_out", 0);
deviceDriver.writing(param);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("agv进入" + device_code + "取货完成");
log.info("agv进入" + device_code + "取货完成"+"指令号:"+ikey);
flag = true;
}
@@ -368,7 +368,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
param.put("to_out", 0);
deviceDriver.writing(param);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("agv进入" + device_code + "取货完成");
log.info("agv进入" + device_code + "取货完成"+"指令号:"+ikey);
flag = true;
}
@@ -412,19 +412,19 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
agv_status = 3;
//普通站点
if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) {
log.info("到达{}放货点", device_code);
log.info("到达{}放货点", device_code+"指令号:"+ikey);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
}
// 货架
if (device.getDeviceDriver() instanceof StandardStorageDeviceDriver) {
log.info("到达{}放货点", device_code);
log.info("到达{}放货点", device_code+"指令号:"+ikey);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
}
// 称重平台
if (device.getDeviceDriver() instanceof WeightPlatformDeviceDriver) {
log.info("到达{}放货点", device_code);
log.info("到达{}放货点", device_code+"指令号:"+ikey);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
}
@@ -437,7 +437,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
deviceDriver.writing(param);
// 判断是否允许放货
if (deviceDriver.getAction() == 1) {
log.info("到达{}放货点开始放货", device_code);
log.info("到达{}放货点开始放货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -451,7 +451,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
if (deviceDriver.getHeartbeat() == 1) {
// 下发请求放货
deviceDriver.writing(org.nl.acs.device_driver.basedriver.robot_arm.ItemProtocol.to_in, "1");
log.info("到达{}放货点开始放货", device_code);
log.info("到达{}放货点开始放货", device_code+"指令号:"+ikey);
inst.setExecute_status("1");
instructionService.update(inst);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
@@ -504,7 +504,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
deviceDriver.setIs_get_confirm(true);
}
if (deviceDriver.getIs_get_confirm()) {
log.info("{}放货完成", device_code);
log.info("{}放货完成", device_code+"指令号:"+ikey);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
deviceDriver.setIs_get_confirm(false);
@@ -515,13 +515,13 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
}
//agv货架放货完成
if (device.getDeviceDriver() instanceof StandardStorageDeviceDriver) {
log.info("{}放货完成", device_code);
log.info("{}放货完成", device_code+"指令号:"+ikey);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
}
//称重平台放货完成
if (device.getDeviceDriver() instanceof WeightPlatformDeviceDriver) {
log.info("{}放货完成", device_code);
log.info("{}放货完成", device_code+"指令号:"+ikey);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
flag = true;
}
@@ -532,7 +532,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
param.put(ItemProtocol.to_in_finish, 1);
deviceDriver.writing(param);
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("{}放货完成", device_code);
log.info("{}放货完成", device_code+"指令号:"+ikey);
flag = true;
}
@@ -541,7 +541,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
RobotArmDeviceDriver deviceDriver = (RobotArmDeviceDriver) device.getDeviceDriver();
deviceDriver.writing("to_in", "0");
data = ndcAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("{}放货完成", device_code);
log.info("{}放货完成", device_code+"指令号:"+ikey);
flag = true;
}
}

View File

@@ -17,19 +17,19 @@ public class ItemProtocol {
this.driver = driver;
}
public String getWeight() {
public Integer getWeight() {
return this.getStringgerValue(weight);
}
public String getStringgerValue(String protocol) {
String value = this.driver.getStringgerValue(protocol);
public Integer getStringgerValue(String protocol) {
Integer value = this.driver.getIntegeregerValue(protocol);
if (value == null) {
// log.error("读取错误!");
} else {
return value;
}
return "0";
return 0;
}

View File

@@ -64,13 +64,13 @@ public class WeightPlatformDeviceDriver extends AbstractOpcDeviceDriver implemen
protected boolean has_goods_tag = false;
String devicecode;
// 重量
String weight = "0";
Integer weight = 0;
Boolean iserror = false;
int move = 0;
int last_error = 0;
String last_weight = "0";
Integer last_weight = 0;
boolean hasVehicle = false;
boolean isReady = false;

View File

@@ -128,4 +128,12 @@ public class WmsToAcsController {
return new ResponseEntity<>(wmstoacsService.isGetPut(param), HttpStatus.OK);
}
@PostMapping("/getDevice")
@Log("wms获取设备")
/** wms获取设备 */
@SaIgnore
public ResponseEntity<Object> getDevice(@RequestBody JSONObject param) {
return new ResponseEntity<>(wmstoacsService.getDevice(param), HttpStatus.OK);
}
}

View File

@@ -132,4 +132,6 @@ public interface WmsToAcsService {
CreateTaskResponse getEmpReady(JSONObject param);
CreateTaskResponse isGetPut(JSONObject param);
CreateTaskResponse getDevice(JSONObject param);
}

View File

@@ -465,14 +465,14 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
response.setMessage("设备【" + device_code + "】不存在");
}
WeightPlatformDeviceDriver driver = (WeightPlatformDeviceDriver) device.getDeviceDriver();
String weight = driver.getWeight();
if (ObjectUtil.isEmpty(weight) || Double.parseDouble(weight) == 0) {
Integer weight = driver.getWeight();
if (ObjectUtil.isEmpty(weight) || weight == 0) {
weight = driver.getWeight();
}
// 返回wms重量
HashMap<String, String> data = new HashMap<>();
data.put("weigh", NumberUtil.div(weight, "100").toString());
data.put("weigh", NumberUtil.div(String.valueOf(weight), "100").toString());
response.setStatus(200);
response.setParameters(data);
log.info("ACS接收WMS任务获取重量--------------:输出参数:" + JSON.toJSONString(response));
@@ -551,6 +551,12 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
response.setStatus(200);
deviceDriver.setIs_put_confirm(true);
}
if (type.equals("3")) {
// 放货完成
response.setStatus(200);
deviceDriver.setIs_put_confirm(false);
deviceDriver.setIs_get_confirm(false);
}
} else {
response.setStatus(400);
response.setMessage("当前点位不需要下发取放货完成信号!");
@@ -565,4 +571,37 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
return response;
}
@Override
public CreateTaskResponse getDevice(JSONObject param) {
MDC.put(log_file_type, log_type);
log.info("ACS接收WMS获取设备-----输入参数{}", param);
CreateTaskResponse response = new CreateTaskResponse();
try {
String device_code = param.getString("device_code");
if (ObjectUtil.isEmpty(device_code)) {
response.setStatus(400);
response.setMessage("设备不能为空");
}
// 根据设备编码
DeviceAppService deviceAppService = SpringContextHolder.getBean(DeviceAppService.class);
Device device = deviceAppService.findDeviceByCode(device_code);
if (ObjectUtil.isEmpty(device)) {
response.setStatus(400);
response.setMessage("设备【" + device_code + "】不存在");
}
StandardOrdinarySiteDeviceDriver driver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver();
// 返回状态
HashMap<String, String> data = new HashMap<>();
data.put("get_status", driver.getIs_get_confirm().toString());
data.put("put_status", driver.getIs_put_confirm().toString());
response.setStatus(200);
response.setParameters(data);
log.info("ACS接收WMS获取设备--------------:输出参数:" + JSON.toJSONString(response));
return response;
} finally {
MDC.remove(log_file_type);
}
}
}