From 00329df59bea341e9f1958f0beb779754c2f0c56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=B1=9F=E7=8E=AE?= Date: Thu, 17 Aug 2023 10:56:00 +0800 Subject: [PATCH] =?UTF-8?q?add=20AGV=E6=9A=82=E5=81=9C=E6=81=A2=E5=A4=8D?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/ext/wms/rest/WmsToAcsController.java | 7 +++ .../acs/ext/wms/service/WmsToAcsService.java | 2 + .../wms/service/impl/WmsToAcsServiceImpl.java | 51 +++++++++++++++++++ 3 files changed, 60 insertions(+) diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/WmsToAcsController.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/WmsToAcsController.java index ba4339e..a128676 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/WmsToAcsController.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/WmsToAcsController.java @@ -77,4 +77,11 @@ public class WmsToAcsController { return new ResponseEntity<>(wmstoacsService.queryDevice(whereJson), HttpStatus.OK); } + @PostMapping("/deviceOption") + @Log("查询设备状态") + @ApiOperation("查询设备状态") + public ResponseEntity deviceOption(@RequestBody String whereJson) throws Exception { + return new ResponseEntity<>(wmstoacsService.deviceOption(whereJson), HttpStatus.OK); + } + } diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/WmsToAcsService.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/WmsToAcsService.java index 7c5836c..46fc9c4 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/WmsToAcsService.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/WmsToAcsService.java @@ -62,4 +62,6 @@ public interface WmsToAcsService { * @return Map */ Map queryDevice(String jsonObject) throws Exception; + + JSONObject deviceOption(String whereJson) throws Exception; } diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java index 91ff84e..c23a4ac 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java @@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.acs.agv.server.MagicAgvService; import org.nl.acs.config.AcsConfig; import org.nl.acs.config.server.AcsConfigService; import org.nl.acs.device.service.DeviceService; @@ -24,6 +25,7 @@ import org.nl.acs.route.service.RouteLineService; import org.nl.acs.route.service.dto.RouteLineDto; import org.nl.acs.task.service.TaskService; import org.nl.acs.task.service.dto.TaskDto; +import org.nl.exception.BadRequestException; import org.nl.exception.WDKException; import org.nl.utils.SpringContextHolder; import org.nl.wql.core.bean.WQLObject; @@ -45,6 +47,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { private final DeviceAppService DeviceAppService; private final RouteLineService RouteLineService; private final ProduceshiftorderService produceshiftorderService; + private final MagicAgvService magicAgvService; private String log_file_type = "log_file_type"; private String log_type = "WMS下发ACS"; @@ -478,4 +481,52 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { } } + @Override + public JSONObject deviceOption(String whereJson) throws Exception { + JSONObject param = JSONObject.parseObject(whereJson); + String option = param.getString("option"); + JSONObject result = new JSONObject(); + if (StrUtil.isBlank(option)) { + result.put("status", HttpStatus.BAD_REQUEST.value()); + result.put("message", "操作类型不能为空!"); + return result; + } + + String deviceCode = param.getString("device_code"); + if (StrUtil.isBlank(deviceCode)) { + switch (option) { + case "1": + // 急停 + magicAgvService.pause(); + break; + case "2": + // 恢复 + magicAgvService.resume(); + break; + default: + result.put("status", HttpStatus.BAD_REQUEST.value()); + result.put("message", "未知操作类型!"); + return result; + } + } else { + switch (option) { + case "1": + // 急停 + magicAgvService.pause(deviceCode); + break; + case "2": + // 恢复 + magicAgvService.resume(deviceCode); + break; + default: + result.put("status", HttpStatus.BAD_REQUEST.value()); + result.put("message", "未知操作类型!"); + return result; + } + } + + result.put("status", HttpStatus.OK.value()); + result.put("message", "操作成功!"); + return result; + } }