From 9aedfea0f2ea46b5400e1d0232c1654f3d96ed5a Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期一, 17 二月 2025 14:39:03 +0800
Subject: [PATCH] #移库任务
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/NyShuttleThread.java | 74 +++++++++++++++++++++++++------------
1 files changed, 50 insertions(+), 24 deletions(-)
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/NyShuttleThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/NyShuttleThread.java
index 705c89c..ee3af41 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/NyShuttleThread.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/NyShuttleThread.java
@@ -31,6 +31,7 @@
import com.zy.asrs.wcs.rcs.constant.DeviceRedisConstant;
import com.zy.asrs.wcs.rcs.entity.Device;
import com.zy.asrs.wcs.rcs.entity.DeviceDataLog;
+import com.zy.asrs.wcs.rcs.model.CommandResponse;
import com.zy.asrs.wcs.rcs.model.command.NyShuttleHttpCommand;
import com.zy.asrs.wcs.rcs.model.enums.ShuttleProtocolStatusType;
import com.zy.asrs.wcs.rcs.model.enums.SlaveType;
@@ -123,6 +124,8 @@
//灏忚溅绌洪棽涓旀湁璺戝簱绋嬪簭
shuttleAction.moveLoc(device);
+
+ Thread.sleep(200);
} catch (Exception e) {
e.printStackTrace();
}
@@ -434,12 +437,14 @@
}
@Override
- public boolean movePath(List<NavigateNode> nodes, Integer taskNo) {
- return true;
+ public CommandResponse movePath(List<NavigateNode> nodes, Integer taskNo) {
+ CommandResponse response = new CommandResponse(true);
+ return response;
}
@Override
- public boolean move(ShuttleCommand command) {
+ public CommandResponse move(ShuttleCommand command) {
+ CommandResponse response = new CommandResponse(false);
try {
//鍙戝嚭璇锋眰
NyShuttleHttpCommand httpCommand = JSON.parseObject(command.getBody(), NyShuttleHttpCommand.class);
@@ -479,73 +484,85 @@
for (NyShuttleHttpCommand requestCommand : commandList) {
JSONObject result = requestCommand(requestCommand);
if (result == null) {
- return false;//璇锋眰澶辫触
+ return response;//璇锋眰澶辫触
}
this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿
+ response.setMessage(JSON.toJSONString(result));
+ response.setResult(true);
}
- return true;
+ return response;
} catch (Exception e) {
e.printStackTrace();
- return false;
+ response.setMessage(e.getMessage());
+ return response;
}
}
@Override
- public boolean lift(ShuttleCommand command) {
+ public CommandResponse lift(ShuttleCommand command) {
+ CommandResponse response = new CommandResponse(false);
try {
//鍙戝嚭璇锋眰
NyShuttleHttpCommand httpCommand = JSON.parseObject(command.getBody(), NyShuttleHttpCommand.class);
JSONObject result = requestCommand(httpCommand);
if (result == null) {
- return false;//璇锋眰澶辫触
+ return response;//璇锋眰澶辫触
}
this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿
- return true;
+ response.setMessage(JSON.toJSONString(result));
+ response.setResult(true);
+ return response;
} catch (Exception e) {
e.printStackTrace();
- return false;
+ return response;
}
}
@Override
- public boolean charge(ShuttleCommand command) {
+ public CommandResponse charge(ShuttleCommand command) {
+ CommandResponse response = new CommandResponse(false);
try {
//鍙戝嚭璇锋眰
NyShuttleHttpCommand httpCommand = JSON.parseObject(command.getBody(), NyShuttleHttpCommand.class);
JSONObject result = requestCommand(httpCommand);
if (result == null) {
- return false;//璇锋眰澶辫触
+ return response;//璇锋眰澶辫触
}
this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿
- return true;
+ response.setMessage(JSON.toJSONString(result));
+ response.setResult(true);
+ return response;
} catch (Exception e) {
e.printStackTrace();
- return false;
+ return response;
}
}
@Override
- public boolean reset(ShuttleCommand command) {
+ public CommandResponse reset(ShuttleCommand command) {
setSyncTaskNo(0);
setProtocolStatus(ShuttleProtocolStatusType.IDLE);
enableMoveLoc(null, false);
- return true;
+ return new CommandResponse(true, JSON.toJSONString(command));
}
@Override
- public boolean updateLocation(ShuttleCommand command) {
+ public CommandResponse updateLocation(ShuttleCommand command) {
+ CommandResponse response = new CommandResponse(false);
try {
//鍙戝嚭璇锋眰
NyShuttleHttpCommand httpCommand = JSON.parseObject(command.getBody(), NyShuttleHttpCommand.class);
JSONObject result = requestCommand(httpCommand);
if (result == null) {
- return false;//璇锋眰澶辫触
+ return response;//璇锋眰澶辫触
}
this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿
- return true;
+ response.setMessage(JSON.toJSONString(result));
+ response.setResult(true);
+ return response;
} catch (Exception e) {
e.printStackTrace();
- return false;
+ return response;
}
}
@@ -812,9 +829,10 @@
ArrayList<HashMap<String, Object>> path = new ArrayList<>();
+ Integer taskId = getTaskId();
HashMap<String, Object> body = new HashMap<>();
body.put("requestType", "move");//绉诲姩鍛戒护
- body.put("taskId", getTaskId());//TaskID闇�瑕侀殢鏈�
+ body.put("taskId", taskId);//TaskID闇�瑕侀殢鏈�
// body.put("start", navigateNodeToNyPointNode(NavigatePositionConvert.codeToNode(startCodeNum, device.getHostId())));//璧风偣
// body.put("target", navigateNodeToNyPointNode(NavigatePositionConvert.codeToNode(distCodeNum, device.getHostId())));//缁堢偣
body.put("path", path);
@@ -857,6 +875,7 @@
command.setBody(JSON.toJSONString(httpStandard));
command.setMode(ShuttleCommandModeType.MOVE.id);
command.setTargetLocNo(loc.getLocNo());
+ command.setTaskNo(taskId);
return command;
}
@@ -865,9 +884,10 @@
NyShuttleHttpCommand httpStandard = getHttpStandard(Integer.parseInt(device.getDeviceNo()), taskNo);
NyShuttleHttpCommand.NyRequest request = httpStandard.getRequest();
+ Integer taskId = getTaskId();//TaskID闇�瑕侀殢鏈�
HashMap<String, Object> body = new HashMap<>();
body.put("requestType", lift ? "liftUp" : "liftDown");//椤跺崌鎴栦笅闄嶅懡浠�
- body.put("taskId", getTaskId());//TaskID闇�瑕侀殢鏈�
+ body.put("taskId", taskId);
request.setBody(body);
httpStandard.setRequest(request);
@@ -876,6 +896,7 @@
command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo()));
command.setBody(JSON.toJSONString(httpStandard));
command.setMode(lift ? ShuttleCommandModeType.PALLET_LIFT.id : ShuttleCommandModeType.PALLET_DOWN.id);
+ command.setTaskNo(taskId);
return command;
}
@@ -884,9 +905,10 @@
NyShuttleHttpCommand httpStandard = getHttpStandard(Integer.parseInt(device.getDeviceNo()), taskNo);
NyShuttleHttpCommand.NyRequest request = httpStandard.getRequest();
+ Integer taskId = getTaskId();//TaskID闇�瑕侀殢鏈�
HashMap<String, Object> body = new HashMap<>();
body.put("requestType", charge ? "charge" : "stopCharge");//鍏呯數鎴栧仠姝㈠厖鐢�
- body.put("taskId", getTaskId());//TaskID闇�瑕侀殢鏈�
+ body.put("taskId", taskId);
request.setBody(body);
httpStandard.setRequest(request);
@@ -895,6 +917,7 @@
command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo()));
command.setBody(JSON.toJSONString(httpStandard));
command.setMode(charge ? ShuttleCommandModeType.CHARGE_OPEN.id : ShuttleCommandModeType.CHARGE_CLOSE.id);
+ command.setTaskNo(taskId);
return command;
}
@@ -914,6 +937,7 @@
command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo()));
command.setBody(JSON.toJSONString(httpStandard));
command.setMode(ShuttleCommandModeType.UPDATE_LOCATION.id);
+ command.setTaskNo(taskNo);
return command;
}
@@ -968,6 +992,7 @@
command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo()));
command.setBody(JSON.toJSONString(httpStandard));
command.setMode(ShuttleCommandModeType.RESET.id);
+ command.setTaskNo(taskNo);
return command;
}
@@ -1068,8 +1093,9 @@
} catch (Exception e) {
e.printStackTrace();
}
+ }else {
+ break;
}
- break;
}
return result;//杩斿洖Body缁撴灉闆�
}
--
Gitblit v1.9.1