From cab87dcfaa7b1e2bc1298572b775026bb17ef38b Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期四, 17 十月 2024 13:54:41 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java | 84 ++++++++++++++++++++++++++---------------- 1 files changed, 52 insertions(+), 32 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java index cfd9ac3..58c11a3 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java @@ -28,6 +28,7 @@ import com.zy.asrs.wcs.rcs.cache.OutputQueue; import com.zy.asrs.wcs.rcs.constant.DeviceRedisConstant; import com.zy.asrs.wcs.rcs.entity.DeviceDataLog; +import com.zy.asrs.wcs.rcs.model.CommandResponse; import com.zy.asrs.wcs.rcs.model.enums.ShuttleProtocolStatusType; import com.zy.asrs.wcs.rcs.model.enums.SlaveType; import com.zy.asrs.wcs.rcs.model.protocol.ShuttleProtocol; @@ -240,7 +241,8 @@ } @Override - public synchronized boolean movePath(List<NavigateNode> nodes, Integer taskNo) { + public synchronized CommandResponse movePath(List<NavigateNode> nodes, Integer taskNo) { + CommandResponse response = new CommandResponse(false); try { //榛樿鍦板浘姣嶈建鏂瑰悜x String mapDirection = "x"; @@ -254,7 +256,7 @@ String loginToken = requestLoginToken(); if (loginToken == null) { - return false; + return response; } HashMap<String, Object> headers = new HashMap<>(); @@ -310,7 +312,7 @@ param.put("taskId", taskNo); param.put("nodeNum", nodes.size()); param.put("modes", modes); - String response = new HttpHandler.Builder() + String responseStr = new HttpHandler.Builder() .setUri(API_URL) .setPath("/RDS/runRoute") .setHeaders(headers) @@ -318,33 +320,36 @@ .setTimeout(60, TimeUnit.SECONDS) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); + JSONObject jsonObject = JSON.parseObject(responseStr); Integer code = jsonObject.getInteger("code"); System.out.println("璺緞涓嬪彂" + taskNo); System.out.println(JSON.toJSONString(jsonObject)); System.out.println(JSON.toJSONString(param)); if (code.equals(200)) { System.out.println("璺緞涓嬪彂" + taskNo); - return true; + response.setResult(true); + response.setMessage(responseStr); + return response; } } catch (Exception e) { e.printStackTrace(); } - return false; + return response; } @Override - public synchronized boolean move(ShuttleCommand command) { + public synchronized CommandResponse move(ShuttleCommand command) { + CommandResponse response = new CommandResponse(false); try { String loginToken = requestLoginToken(); if (loginToken == null) { - return false; + return response; } HashMap<String, Object> headers = new HashMap<>(); headers.put("Authorization", "Bearer " + loginToken); - String response = new HttpHandler.Builder() + String responseStr = new HttpHandler.Builder() .setUri(API_URL) .setPath("/RDS/runOrder") .setHeaders(headers) @@ -352,31 +357,34 @@ .setTimeout(60, TimeUnit.SECONDS) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); + JSONObject jsonObject = JSON.parseObject(responseStr); Integer code = jsonObject.getInteger("code"); System.out.println(JSON.toJSONString(command.getBody())); if (code.equals(200)) { this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿 - return true; + response.setResult(true); + response.setMessage(responseStr); + return response; } } catch (Exception e) { e.printStackTrace(); } - return false; + return response; } @Override - public synchronized boolean lift(ShuttleCommand command) { + public synchronized CommandResponse lift(ShuttleCommand command) { + CommandResponse response = new CommandResponse(false); try { String loginToken = requestLoginToken(); if (loginToken == null) { - return false; + return response; } HashMap<String, Object> headers = new HashMap<>(); headers.put("Authorization", "Bearer " + loginToken); - String response = new HttpHandler.Builder() + String responseStr = new HttpHandler.Builder() .setUri(API_URL) .setPath("/RDS/actionOrder") .setHeaders(headers) @@ -384,30 +392,33 @@ .setTimeout(60, TimeUnit.SECONDS) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); + JSONObject jsonObject = JSON.parseObject(responseStr); Integer code = jsonObject.getInteger("code"); if (code.equals(200)) { this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿 - return true; + response.setResult(true); + response.setMessage(responseStr); + return response; } } catch (Exception e) { e.printStackTrace(); } - return false; + return response; } @Override - public synchronized boolean charge(ShuttleCommand command) { + public synchronized CommandResponse charge(ShuttleCommand command) { + CommandResponse response = new CommandResponse(false); try { String loginToken = requestLoginToken(); if (loginToken == null) { - return false; + return response; } HashMap<String, Object> headers = new HashMap<>(); headers.put("Authorization", "Bearer " + loginToken); - String response = new HttpHandler.Builder() + String responseStr = new HttpHandler.Builder() .setUri(API_URL) .setPath("/RDS/actionOrder") .setHeaders(headers) @@ -415,38 +426,41 @@ .setTimeout(60, TimeUnit.SECONDS) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); + JSONObject jsonObject = JSON.parseObject(responseStr); Integer code = jsonObject.getInteger("code"); if (code.equals(200)) { this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿 - return true; + response.setResult(true); + response.setMessage(responseStr); + return response; } } catch (Exception e) { e.printStackTrace(); } - return false; + return response; } @Override - public synchronized boolean reset(ShuttleCommand command) { + public synchronized 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 { String loginToken = requestLoginToken(); if (loginToken == null) { - return false; + return response; } HashMap<String, Object> headers = new HashMap<>(); headers.put("Authorization", "Bearer " + loginToken); - String response = new HttpHandler.Builder() + String responseStr = new HttpHandler.Builder() .setUri(API_URL) .setPath("/RDS/changeLocation") .setHeaders(headers) @@ -454,16 +468,18 @@ .setTimeout(60, TimeUnit.SECONDS) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); + JSONObject jsonObject = JSON.parseObject(responseStr); Integer code = jsonObject.getInteger("code"); if (code.equals(200)) { this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿 - return true; + response.setResult(true); + response.setMessage(responseStr); + return response; } } catch (Exception e) { e.printStackTrace(); } - return false; + return response; } @Override @@ -733,6 +749,7 @@ command.setBody(JSON.toJSONString(body)); command.setMode(ShuttleCommandModeType.MOVE.id); command.setTargetLocNo(loc.getLocNo()); + command.setTaskNo(taskNo); return command; } @@ -749,6 +766,7 @@ command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo())); command.setBody(JSON.toJSONString(body)); command.setMode(lift ? ShuttleCommandModeType.PALLET_LIFT.id : ShuttleCommandModeType.PALLET_DOWN.id); + command.setTaskNo(taskNo); return command; } @@ -765,6 +783,7 @@ command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo())); command.setBody(JSON.toJSONString(body)); command.setMode(charge ? ShuttleCommandModeType.CHARGE_OPEN.id : ShuttleCommandModeType.CHARGE_CLOSE.id); + command.setTaskNo(taskNo); return command; } @@ -782,6 +801,7 @@ command.setShuttleNo(Integer.parseInt(this.device.getDeviceNo())); command.setBody(JSON.toJSONString(body)); command.setMode(ShuttleCommandModeType.UPDATE_LOCATION.id); + command.setTaskNo(taskNo); return command; } -- Gitblit v1.9.1