From ed84907a44b71dbbedd78cadef5b74404aa113b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=B1=9F=E7=8E=AE?= Date: Fri, 11 Aug 2023 17:41:30 +0800 Subject: [PATCH] =?UTF-8?q?add=20https=20=E5=8F=8D=E9=A6=88AGV=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/device_driver/DriverTypeEnum.java | 4 +- .../agv/ndcone/AgvNdcOneDeviceDriver.java | 8 + .../SlitTwoManipulatorDeviceDriver.java | 2 - .../wms/service/impl/AcsToWmsServiceImpl.java | 16 +- .../org/nl/acs/test/rest/TestController.java | 11 +- .../java/org/nl/config/TomcatHttpConfig.java | 54 ++ .../quartz/task/AutoFeedbackAGVInfo.java | 56 ++ .../modules/system/service/DictService.java | 2 + .../system/service/impl/DictServiceImpl.java | 5 + .../src/main/resources/client.p12 | Bin 0 -> 2591 bytes .../main/resources/config/application-dev.yml | 15 +- .../src/main/resources/server.p12 | Bin 0 -> 3583 bytes acs/nladmin-ui/.env.development | 2 +- .../acs/device/driver/fold_disc_site.vue | 516 ++++++++++++++++++ .../acs/device/driver/standard_autodoor.vue | 352 ++++++++++++ 15 files changed, 1020 insertions(+), 23 deletions(-) create mode 100644 acs/nladmin-system/src/main/java/org/nl/config/TomcatHttpConfig.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoFeedbackAGVInfo.java create mode 100644 acs/nladmin-system/src/main/resources/client.p12 create mode 100644 acs/nladmin-system/src/main/resources/server.p12 create mode 100644 acs/nladmin-ui/src/views/acs/device/driver/fold_disc_site.vue create mode 100644 acs/nladmin-ui/src/views/acs/device/driver/standard_autodoor.vue diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device/device_driver/DriverTypeEnum.java b/acs/nladmin-system/src/main/java/org/nl/acs/device/device_driver/DriverTypeEnum.java index 5c11575..9ccda62 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device/device_driver/DriverTypeEnum.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device/device_driver/DriverTypeEnum.java @@ -9,9 +9,9 @@ import com.alibaba.fastjson.JSONObject; * https://blog.csdn.net/moneyshi/article/details/82978073 */ public enum DriverTypeEnum { - ORDINARY_SITE(1, "standard_ordinary_site", "普通站点", "conveyor"), + ORDINARY_SITE(1, "standard_ordinary_site", "普通站点", "station"), - INSPECT_SITE(2, "standard_inspect_site", "检测站点", "conveyor"), + INSPECT_SITE(2, "standard_inspect_site", "检测站点", "station"), STORAGE(3, "standard_storage", "标准版-货架", "storage"), diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java index 56e0905..bcc8e8c 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java @@ -81,6 +81,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic String error_message = ""; String device_status = "UNKNOWN"; String message = ""; + Instruction inst; public synchronized void processSocket(int[] arr) { device_code = this.getDeviceCode(); @@ -119,10 +120,16 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //分配 车id //(不需要WCS反馈) if (phase == 0x02) { + if (ObjectUtil.isEmpty(inst)) { + log.info("未找到编号{}对应的指令", ikey); + logServer.deviceExecuteLog(this.device_code, "", "", "未找到关联编号对应的指令" + ikey); + return; + } inst.setCarno(String.valueOf(carno)); instructionService.update(inst); logServer.deviceExecuteLog(this.device_code, "", "", "agvphase:" + "反馈:" + data); this.device_status = "EXECUTING"; + this.inst = inst; //到达取货点 //(需要WCS反馈) @@ -825,6 +832,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic if (flag) { this.device_status = "IDLE"; + this.inst = null; } } //到达位置点 diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java index 2d5c601..8d712e3 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java @@ -6,11 +6,9 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ; import lombok.Data; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.acs.device.device_driver.standard_inspect.ReadUtil; import org.nl.acs.device.service.DeviceService; import org.nl.acs.device_driver.DeviceDriver; import org.nl.acs.device_driver.RouteableDeviceDriver; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java index cb7c101..40dfbc9 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java @@ -266,18 +266,14 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { String methods_url = addressDto.getMethods_url(); String url = wmsUrl + methods_url; HttpResponse result = null; - log.info("feedbackAgv----请求参数{}", from); - try { +// log.info("feedAgvTaskStatus - 请求参数 {}", param); result = HttpRequest.post(url) .body(String.valueOf(from)) .execute(); - System.out.println(result); - log.info("feedbackAgv----返回参数{}", result); +// log.info("feedAgvTaskStatus - 返回参数 {}", response.body()); } catch (Exception e) { - String msg = e.getMessage(); - //网络不通 - //System.out.println(msg); + } return result; } @@ -537,16 +533,17 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { public HttpResponse shipDeviceUpdate(JSONObject param) { try { MDC.put(log_file_type, log_type); -// log.info("shipDeviceUpdate-----输入参数{}", param); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("shipDeviceUpdate"); String methods_url = addressDto.getMethods_url(); String url = wmsUrl + methods_url; +// log.info("feedAgvTaskStatus - 请求参数 {}", param); return HttpRequest .post(url) .body(param.toString()) .execute(); +// log.info("feedAgvTaskStatus - 返回参数 {}", response.body()); } } catch (Throwable ignored) { @@ -571,7 +568,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { .post(url) .body(from.toString()) .execute(); -// log.info("feedAgvTaskStatus - 返回参数 {}", response.body()); +// log.info("feedAgvTaskStatus - 返回参数 {}", response.body()); return JSONObject.parseObject(response.body()); } } catch (Throwable ignored) { @@ -610,5 +607,4 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return resp; } - } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/test/rest/TestController.java b/acs/nladmin-system/src/main/java/org/nl/acs/test/rest/TestController.java index 50d710c..a560027 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/test/rest/TestController.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/test/rest/TestController.java @@ -2,6 +2,7 @@ package org.nl.acs.test.rest; +import cn.dev33.satoken.annotation.SaIgnore; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -10,10 +11,7 @@ import org.nl.acs.test.service.TestService; import org.nl.modules.logging.annotation.Log; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.io.IOException; import java.util.Map; @@ -27,17 +25,18 @@ import java.util.Map; @Api(tags = "任务管理") @RequestMapping("/api/test") @Slf4j +@SaIgnore public class TestController { private final TestService testService; @Log("test1") @ApiOperation("test1") - @PostMapping("/test1") + @GetMapping("/test1") //@PreAuthorize("@el.check('task:add')") public ResponseEntity test1() throws IOException { testService.test1(); - return new ResponseEntity<>(HttpStatus.CREATED); + return new ResponseEntity<>("success", HttpStatus.OK); } @Log("test2") diff --git a/acs/nladmin-system/src/main/java/org/nl/config/TomcatHttpConfig.java b/acs/nladmin-system/src/main/java/org/nl/config/TomcatHttpConfig.java new file mode 100644 index 0000000..23b069d --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/config/TomcatHttpConfig.java @@ -0,0 +1,54 @@ +//package org.nl.config; +// +//import org.apache.catalina.Context; +//import org.apache.catalina.connector.Connector; +//import org.apache.tomcat.util.descriptor.web.SecurityCollection; +//import org.apache.tomcat.util.descriptor.web.SecurityConstraint; +//import org.springframework.beans.factory.annotation.Value; +//import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; +//import org.springframework.context.annotation.Bean; +//import org.springframework.context.annotation.Configuration; +// +//@Configuration +//public class TomcatHttpConfig { +// +// @Value("${server.http-port}") +// Integer httpPort; +// +// @Value("${server.port}") +// Integer httpsPort; +// +// /** +// * 配置内置的servlet容器工厂为tomcat. +// */ +// @Bean +// public TomcatServletWebServerFactory servletContainer() { +// TomcatServletWebServerFactory tomcatServletWebServerFactory = new TomcatServletWebServerFactory() { +// @Override +// protected void postProcessContext(Context context) { +// SecurityConstraint constraint = new SecurityConstraint(); +// constraint.setUserConstraint("CONFIDENTIAL"); +// SecurityCollection collection = new SecurityCollection(); +// collection.addPattern("/*"); +// constraint.addCollection(collection); +// context.addConstraint(constraint); +// } +// }; +// +// tomcatServletWebServerFactory.addAdditionalTomcatConnectors(initiateHttpConnector()); +// tomcatServletWebServerFactory.addConnectorCustomizers(connector -> connector.setProperty("relaxedQueryChars", "[]{}")); +// return tomcatServletWebServerFactory; +// } +// +// /** +// * 配置一个http连接信息. +// */ +// private Connector initiateHttpConnector() { +// Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol"); +// connector.setScheme("http"); +// connector.setPort(httpPort); +// connector.setSecure(false); +// connector.setRedirectPort(httpsPort); +// return connector; +// } +//} \ No newline at end of file diff --git a/acs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoFeedbackAGVInfo.java b/acs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoFeedbackAGVInfo.java new file mode 100644 index 0000000..afde4a7 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/modules/quartz/task/AutoFeedbackAGVInfo.java @@ -0,0 +1,56 @@ +package org.nl.modules.quartz.task; + +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.acs.device_driver.basedriver.agv.ndcone.AgvNdcOneDeviceDriver; +import org.nl.acs.ext.wms.service.impl.AcsToWmsServiceImpl; +import org.nl.acs.opc.Device; +import org.nl.acs.opc.DeviceAppService; +import org.nl.acs.opc.DeviceType; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * 百济神州 + * 自动反馈 AGV 信息 + * + * @author zhangjiangwei + */ +@AllArgsConstructor +@Slf4j +@Component("autoFeedbackAGVInfo") +public class AutoFeedbackAGVInfo { + + private final DeviceAppService deviceAppService; + + private final AcsToWmsServiceImpl acsToWmsService; + + /** + * 自动收集 AGV 信息请求 WMS + */ + public void run() { + List agvList = deviceAppService.findDevice(DeviceType.agv); + JSONArray param = new JSONArray(); + + agvList.forEach(d -> { + if (d.getDeviceDriver() instanceof AgvNdcOneDeviceDriver) { + AgvNdcOneDeviceDriver driver = (AgvNdcOneDeviceDriver) d.getDeviceDriver(); + JSONObject agvInfo = new JSONObject(); + agvInfo.put("device_code", "AGV" + driver.getDevice_code()); + agvInfo.put("device_status", driver.getDevice_status()); + agvInfo.put("energyLevel", driver.getElectric_qty()); + agvInfo.put("transportOrder", ObjectUtil.isNotEmpty(driver.getInst()) ? driver.getInst().getTask_code() : null); + agvInfo.put("positionX", driver.getX()); + agvInfo.put("positionY", driver.getY()); + agvInfo.put("positionAngle", driver.getAngle()); + param.add(agvInfo); + } + }); + + acsToWmsService.feedbackAgv(param); + } +} diff --git a/acs/nladmin-system/src/main/java/org/nl/modules/system/service/DictService.java b/acs/nladmin-system/src/main/java/org/nl/modules/system/service/DictService.java index 76a0011..3f30eea 100644 --- a/acs/nladmin-system/src/main/java/org/nl/modules/system/service/DictService.java +++ b/acs/nladmin-system/src/main/java/org/nl/modules/system/service/DictService.java @@ -73,4 +73,6 @@ public interface DictService { * @throws IOException / */ void download(List queryAll, HttpServletResponse response) throws IOException; + + List queryAll(); } \ No newline at end of file diff --git a/acs/nladmin-system/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java index 4b938b4..dda1783 100644 --- a/acs/nladmin-system/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java @@ -119,4 +119,9 @@ public class DictServiceImpl implements DictService { public void delCaches(Dict dict){ redisUtils.del("dict::name:" + dict.getName()); } + + @Override + public List queryAll() { + return dictRepository.findAll(); + } } diff --git a/acs/nladmin-system/src/main/resources/client.p12 b/acs/nladmin-system/src/main/resources/client.p12 new file mode 100644 index 0000000000000000000000000000000000000000..18e58dfd3711d6e48a8b6a474ca0db8baadd30cd GIT binary patch literal 2591 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 literal 0 HcmV?d00001 diff --git a/acs/nladmin-ui/.env.development b/acs/nladmin-ui/.env.development index 809e77f..f786a09 100644 --- a/acs/nladmin-ui/.env.development +++ b/acs/nladmin-ui/.env.development @@ -1,7 +1,7 @@ ENV = 'development' # 接口地址 -VUE_APP_BASE_API = 'http://localhost:8010' +VUE_APP_BASE_API = 'https://localhost:8010' VUE_APP_WS_API = 'ws://localhost:8010' # 是否启用 babel-plugin-dynamic-import-node插件 diff --git a/acs/nladmin-ui/src/views/acs/device/driver/fold_disc_site.vue b/acs/nladmin-ui/src/views/acs/device/driver/fold_disc_site.vue new file mode 100644 index 0000000..ccff38f --- /dev/null +++ b/acs/nladmin-ui/src/views/acs/device/driver/fold_disc_site.vue @@ -0,0 +1,516 @@ + + + + + diff --git a/acs/nladmin-ui/src/views/acs/device/driver/standard_autodoor.vue b/acs/nladmin-ui/src/views/acs/device/driver/standard_autodoor.vue new file mode 100644 index 0000000..41e2f46 --- /dev/null +++ b/acs/nladmin-ui/src/views/acs/device/driver/standard_autodoor.vue @@ -0,0 +1,352 @@ + + + + +