From 802fcd560826c077209769352920f7c4dcecefea Mon Sep 17 00:00:00 2001 From: lzq Date: Fri, 17 Oct 2025 16:49:25 +0800 Subject: [PATCH] =?UTF-8?q?GPS=20=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../njzscloud-common-core/pom.xml | 4 + njzscloud-common/njzscloud-common-job/pom.xml | 56 ----------- .../common/job/XxlAdminProperties.java | 26 ----- .../common/job/XxlExecutorProperties.java | 34 ------- .../common/job/XxlJobAutoConfiguration.java | 28 ------ .../common/job/XxlJobProperties.java | 15 --- .../main/resources/META-INF/spring.factories | 2 - .../jt808/support/JT808MessageResolver.java | 4 +- .../localizer/jt808/support/TcpServer.java | 12 +-- .../localizer/mqtt/MqttMsgHandlers.java | 2 +- njzscloud-common/pom.xml | 1 - njzscloud-localizer-svr/pom.xml | 99 +++++++++++++++++++ .../com/njzscloud/localizer/LocalizerSvr.java | 11 +++ .../src/main/resources/application-demo.yml | 12 +++ .../src/main/resources/application-dev.yml | 12 +++ .../src/main/resources/application-prod.yml | 21 ++++ .../src/main/resources/application.yml | 70 +++++++++++++ .../src/main/resources/logback-spring.xml | 36 +++++++ njzscloud-svr/pom.xml | 8 +- .../controller/DeviceLocalizerController.java | 9 ++ .../device/mapper/DeviceLocalizerMapper.java | 2 +- .../supervisory/device/pojo/param/.gitkeep | 0 .../service/DeviceLocalizerService.java | 42 ++++++-- .../src/main/resources/application-dev.yml | 6 -- .../mapper/device/DeviceLocalizerMapper.xml | 11 ++- pom.xml | 11 +-- 26 files changed, 329 insertions(+), 205 deletions(-) delete mode 100644 njzscloud-common/njzscloud-common-job/pom.xml delete mode 100644 njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlAdminProperties.java delete mode 100644 njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlExecutorProperties.java delete mode 100644 njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobAutoConfiguration.java delete mode 100644 njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobProperties.java delete mode 100644 njzscloud-common/njzscloud-common-job/src/main/resources/META-INF/spring.factories create mode 100644 njzscloud-localizer-svr/pom.xml create mode 100644 njzscloud-localizer-svr/src/main/java/com/njzscloud/localizer/LocalizerSvr.java create mode 100644 njzscloud-localizer-svr/src/main/resources/application-demo.yml create mode 100644 njzscloud-localizer-svr/src/main/resources/application-dev.yml create mode 100644 njzscloud-localizer-svr/src/main/resources/application-prod.yml create mode 100644 njzscloud-localizer-svr/src/main/resources/application.yml create mode 100644 njzscloud-localizer-svr/src/main/resources/logback-spring.xml delete mode 100644 njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/pojo/param/.gitkeep diff --git a/njzscloud-common/njzscloud-common-core/pom.xml b/njzscloud-common/njzscloud-common-core/pom.xml index 1c62159..d4f95e4 100644 --- a/njzscloud-common/njzscloud-common-core/pom.xml +++ b/njzscloud-common/njzscloud-common-core/pom.xml @@ -70,6 +70,10 @@ cn.hutool hutool-crypto + + cn.hutool + hutool-poi + diff --git a/njzscloud-common/njzscloud-common-job/pom.xml b/njzscloud-common/njzscloud-common-job/pom.xml deleted file mode 100644 index f168fa8..0000000 --- a/njzscloud-common/njzscloud-common-job/pom.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - 4.0.0 - - com.njzscloud - njzscloud-common - 0.0.1 - - - njzscloud-common-job - - - 8 - 8 - UTF-8 - 2.4.1 - - - - com.njzscloud - njzscloud-common-core - provided - - - - - com.xuxueli - xxl-job-core - - - - - - org.junit.jupiter - junit-jupiter-engine - test - - - - - - org.springframework.boot - spring-boot-starter - - - - - - org.springframework.boot - spring-boot-configuration-processor - - - - diff --git a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlAdminProperties.java b/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlAdminProperties.java deleted file mode 100644 index 4a9ae17..0000000 --- a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlAdminProperties.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.njzscloud.common.job; - -import lombok.Getter; -import lombok.Setter; - -@Getter -@Setter -public class XxlAdminProperties { - /** - * 调度中心部署跟地址 [选填]:如调度中心集群部署存在多个地址则用逗号分隔。 - * 执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调";为空则关闭自动注册; - */ - private String protocol = "http"; - private String ip; - private String port; - private String contextPath = "/xxl-job-admin"; - - /** - * 执行器通讯TOKEN [选填]:非空时启用; - */ - private String accessToken = "XXLJob"; - - public String getAddresses() { - return protocol + "://" + ip + ":" + port + contextPath; - } -} diff --git a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlExecutorProperties.java b/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlExecutorProperties.java deleted file mode 100644 index 1c5d31d..0000000 --- a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlExecutorProperties.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.njzscloud.common.job; - -import lombok.Getter; -import lombok.Setter; - -@Getter -@Setter -public class XxlExecutorProperties { - /** - * 执行器AppName:执行器心跳注册分组依据;为空则关闭自动注册 - */ - private String appName; - - /** - * 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP - * ,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务" - */ - private String ip; - - /** - * 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口; - */ - private Integer port = 0; - - /** - * 执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径; - */ - private String logPath = "logs/xxl-job"; - - /** - * 执行器日志保存天数 [选填] :值大于3时生效,启用执行器Log文件定期清理功能,否则不生效; - */ - private Integer logRetentionDays = 30; -} diff --git a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobAutoConfiguration.java b/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobAutoConfiguration.java deleted file mode 100644 index 9210b2b..0000000 --- a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobAutoConfiguration.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.njzscloud.common.job; - -import com.xxl.job.core.executor.impl.XxlJobSpringExecutor; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Configuration(proxyBeanMethods = false) -@EnableConfigurationProperties({XxlJobProperties.class}) -@ConditionalOnProperty(value = "xxl-job.enable", havingValue = "true") -public class XxlJobAutoConfiguration { - - @Bean - public XxlJobSpringExecutor xxlJobSpringExecutor(XxlJobProperties xxlJobProperties) { - XxlAdminProperties xxlAdminProperties = xxlJobProperties.getAdmin(); - XxlExecutorProperties xxlExecutorProperties = xxlJobProperties.getExecutor(); - XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor(); - xxlJobSpringExecutor.setAdminAddresses(xxlAdminProperties.getAddresses()); - xxlJobSpringExecutor.setAppname(xxlExecutorProperties.getAppName()); - xxlJobSpringExecutor.setIp(xxlExecutorProperties.getIp()); - xxlJobSpringExecutor.setPort(xxlExecutorProperties.getPort()); - xxlJobSpringExecutor.setAccessToken(xxlAdminProperties.getAccessToken()); - xxlJobSpringExecutor.setLogPath(xxlExecutorProperties.getLogPath()); - xxlJobSpringExecutor.setLogRetentionDays(xxlExecutorProperties.getLogRetentionDays()); - return xxlJobSpringExecutor; - } -} diff --git a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobProperties.java b/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobProperties.java deleted file mode 100644 index 52ed1a1..0000000 --- a/njzscloud-common/njzscloud-common-job/src/main/java/com/njzscloud/common/job/XxlJobProperties.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.njzscloud.common.job; - -import lombok.Getter; -import lombok.Setter; -import org.springframework.boot.context.properties.ConfigurationProperties; - -@Getter -@Setter -@ConfigurationProperties(prefix = "xxl-job") -public class XxlJobProperties { - private boolean enable = false; - private XxlAdminProperties admin = new XxlAdminProperties(); - - private XxlExecutorProperties executor = new XxlExecutorProperties(); -} diff --git a/njzscloud-common/njzscloud-common-job/src/main/resources/META-INF/spring.factories b/njzscloud-common/njzscloud-common-job/src/main/resources/META-INF/spring.factories deleted file mode 100644 index d497d6e..0000000 --- a/njzscloud-common/njzscloud-common-job/src/main/resources/META-INF/spring.factories +++ /dev/null @@ -1,2 +0,0 @@ -org.springframework.boot.autoconfigure.EnableAutoConfiguration = \ - com.njzscloud.common.job.XxlJobAutoConfiguration diff --git a/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/JT808MessageResolver.java b/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/JT808MessageResolver.java index d1efa29..f6135a6 100644 --- a/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/JT808MessageResolver.java +++ b/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/JT808MessageResolver.java @@ -19,9 +19,9 @@ public class JT808MessageResolver { public static final String LocationSearch = "LocationSearch"; public static final String TxtReport = "TxtReport"; - private static Map> resolvers = new ConcurrentHashMap<>(); + private static final Map> resolvers = new ConcurrentHashMap<>(); - private static Map> stdResolvers = MapUtil.>builder() + private static final Map> stdResolvers = MapUtil.>builder() .put(0x0100, JT808MessageResolver::onTerminalRegister) .put(0x0102, JT808MessageResolver::onTerminalAuth) .put(0x0002, JT808MessageResolver::onHeartbeat) diff --git a/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/TcpServer.java b/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/TcpServer.java index 06c1ecb..3511b1a 100644 --- a/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/TcpServer.java +++ b/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/jt808/support/TcpServer.java @@ -55,21 +55,21 @@ public class TcpServer { } }); } catch (Exception e) { - log.error("服务器启动失败", e); + log.error("JT808 服务器启动失败", e); this.stop(); - throw Exceptions.error(e, "服务器构建失败"); + throw Exceptions.error(e, "JT808 服务器构建失败"); } } public void start() { try { ChannelFuture future = bootstrap.bind(port).sync(); - log.info("服务器已启动,监听端口: {}", port); + log.info("JT808 服务器已启动,监听端口: {}", port); future.channel().closeFuture().addListener(it -> stop()); } catch (Exception e) { - log.error("服务器启动失败,端口: {}", port, e); + log.error("JT808 服务器启动失败,端口: {}", port, e); stop(); - throw Exceptions.error(e, "服务器启动失败"); + throw Exceptions.error(e, "JT808 服务器启动失败"); } } @@ -82,6 +82,6 @@ public class TcpServer { workerGroup.shutdownGracefully(); workerGroup = null; } - log.info("服务器已停止"); + log.info("JT808服务器已停止"); } } diff --git a/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/mqtt/MqttMsgHandlers.java b/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/mqtt/MqttMsgHandlers.java index 5a5ac40..805660b 100644 --- a/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/mqtt/MqttMsgHandlers.java +++ b/njzscloud-common/njzscloud-common-localizer/src/main/java/com/njzscloud/common/localizer/mqtt/MqttMsgHandlers.java @@ -39,7 +39,7 @@ public class MqttMsgHandlers { } /** - * 启用报警 + * 配置设备的连接地址 */ @MqttListener(topic = "location/config_ip_port") public void configIpPort(MqttMsg msg) { diff --git a/njzscloud-common/pom.xml b/njzscloud-common/pom.xml index 971173a..cee45f2 100644 --- a/njzscloud-common/pom.xml +++ b/njzscloud-common/pom.xml @@ -21,7 +21,6 @@ njzscloud-common-redis njzscloud-common-oss njzscloud-common-email - njzscloud-common-job njzscloud-common-cache njzscloud-common-sichen njzscloud-common-sn diff --git a/njzscloud-localizer-svr/pom.xml b/njzscloud-localizer-svr/pom.xml new file mode 100644 index 0000000..a995b5b --- /dev/null +++ b/njzscloud-localizer-svr/pom.xml @@ -0,0 +1,99 @@ + + 4.0.0 + + com.njzscloud + njzscloud + 0.0.1 + + + njzscloud-localizer-svr + jar + + + UTF-8 + + + + + com.njzscloud + njzscloud-common-core + + + + com.njzscloud + njzscloud-common-localizer + + + + com.njzscloud + njzscloud-common-mqtt + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + + + org.projectlombok + lombok + 1.18.30 + + + org.mapstruct + mapstruct-processor + ${mapstruct.version} + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + + org.apache.maven.plugins + maven-antrun-plugin + 3.1.0 + + + post-package-actions + package + + run + + + + + + + + + + + + + + + + + + + + + + + diff --git a/njzscloud-localizer-svr/src/main/java/com/njzscloud/localizer/LocalizerSvr.java b/njzscloud-localizer-svr/src/main/java/com/njzscloud/localizer/LocalizerSvr.java new file mode 100644 index 0000000..cab5856 --- /dev/null +++ b/njzscloud-localizer-svr/src/main/java/com/njzscloud/localizer/LocalizerSvr.java @@ -0,0 +1,11 @@ +package com.njzscloud.localizer; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class LocalizerSvr { + public static void main(String[] args) { + SpringApplication.run(LocalizerSvr.class, args); + } +} diff --git a/njzscloud-localizer-svr/src/main/resources/application-demo.yml b/njzscloud-localizer-svr/src/main/resources/application-demo.yml new file mode 100644 index 0000000..a4d5045 --- /dev/null +++ b/njzscloud-localizer-svr/src/main/resources/application-demo.yml @@ -0,0 +1,12 @@ +mqtt: + enabled: true + broker: tcp://139.224.54.144:1883 + client-id: njzscloud-svr1 + username: gps + password: TKG4TV3dF7CeazDnUdCF + +localizer: + enabled: true + boss-threads: 1 + worker-threads: 1 + port: 18888 diff --git a/njzscloud-localizer-svr/src/main/resources/application-dev.yml b/njzscloud-localizer-svr/src/main/resources/application-dev.yml new file mode 100644 index 0000000..a4d5045 --- /dev/null +++ b/njzscloud-localizer-svr/src/main/resources/application-dev.yml @@ -0,0 +1,12 @@ +mqtt: + enabled: true + broker: tcp://139.224.54.144:1883 + client-id: njzscloud-svr1 + username: gps + password: TKG4TV3dF7CeazDnUdCF + +localizer: + enabled: true + boss-threads: 1 + worker-threads: 1 + port: 18888 diff --git a/njzscloud-localizer-svr/src/main/resources/application-prod.yml b/njzscloud-localizer-svr/src/main/resources/application-prod.yml new file mode 100644 index 0000000..8b14391 --- /dev/null +++ b/njzscloud-localizer-svr/src/main/resources/application-prod.yml @@ -0,0 +1,21 @@ +spring: + servlet: + multipart: + location: /home/njzscloud/temp + datasource: + url: jdbc:mysql://127.0.0.1:3306/njzscloud?characterEncoding=UTF-8&allowMultiQueries=true&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai + username: root + password: root + +oss: + type: ali + ali: + region: cn-shanghai + endpoint: oss-cn-shanghai.aliyuncs.com + access-key: LTAI5tJJu2WayYchExrT5W1E + secret-key: zllX0ZJ1EwsZXT6dE6swCLgTF4ImGg + bucket-name: cdn-zsy + +mybatis-plus: + tunnel: + enable: false diff --git a/njzscloud-localizer-svr/src/main/resources/application.yml b/njzscloud-localizer-svr/src/main/resources/application.yml new file mode 100644 index 0000000..57c8e15 --- /dev/null +++ b/njzscloud-localizer-svr/src/main/resources/application.yml @@ -0,0 +1,70 @@ +server: + port: ${APP_PORT:10087} + tomcat: + max-http-form-post-size: 20MB +spring: + servlet: + multipart: + max-file-size: 20MB + max-request-size: 20MB + file-size-threshold: 1MB + resolve-lazily: true + profiles: + active: ${APP_PROFILE:dev} + web: + resources: + add-mappings: false + mvc: + throw-exception-if-no-handler-found: true + format: + date: yyyy-MM-dd + time: HH:mm:ss + date-time: yyyy-MM-dd HH:mm:ss + jackson: + locale: zh_CN + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss + default-property-inclusion: always + serialization: + # 对象不含任何字段时是否报错 + fail-on-empty-beans: false + # 是否捕获并且包装异常信息 + wrap-exceptions: true + # 是否将字符数组输出为数组 + write-char-arrays-as-json-arrays: true + # 格式化输出(加入空格/回车) + indent-output: false + # 对 Map 类型按键排序 + order-map-entries-by-keys: true + # 是否将日期/时间序列化为时间错 + write-dates-as-timestamps: false + write-bigdecimal-as-plain: true + deserialization: + # 未知属性是否报错 + fail-on-unknown-properties: false + generator: + # 是否忽略位置属性 + ignore-unknown: true + visibility: + creator: public_only + field: any + getter: public_only + is-getter: public_only + setter: public_only + + datasource: + hikari: + minimum-idle: 10 + maximum-pool-size: 30 + auto-commit: true + idle-timeout: 30000 + pool-name: HikariCP + max-lifetime: 900000 + connection-timeout: 10000 + connection-test-query: SELECT 1 + validation-timeout: 1000 +logging: + level: + com.njzscloud.common.sichen.TaskMapper: off + com.njzscloud.supervisory.sys.stationletter: off + com.njzscloud: debug diff --git a/njzscloud-localizer-svr/src/main/resources/logback-spring.xml b/njzscloud-localizer-svr/src/main/resources/logback-spring.xml new file mode 100644 index 0000000..af71b14 --- /dev/null +++ b/njzscloud-localizer-svr/src/main/resources/logback-spring.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + false + + ${console_pattern} + + + + + ${log_path}/${service_name}.log + + ${log_path}/%d{yyyy-MM, aux}/${service_name}.%d{yyyy-MM-dd}.%i.log.zip + 50MB + 15 + + + ${file_pattern} + + + + + + + + + diff --git a/njzscloud-svr/pom.xml b/njzscloud-svr/pom.xml index 6977683..26d9b4b 100644 --- a/njzscloud-svr/pom.xml +++ b/njzscloud-svr/pom.xml @@ -59,11 +59,11 @@ com.njzscloud - njzscloud-common-localizer + njzscloud-common-gen com.njzscloud - njzscloud-common-gen + njzscloud-common-localizer com.njzscloud @@ -92,11 +92,11 @@ core 3.5.3 - + com.github.binarywang weixin-java-pay diff --git a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/controller/DeviceLocalizerController.java b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/controller/DeviceLocalizerController.java index ec6dd69..086162c 100644 --- a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/controller/DeviceLocalizerController.java +++ b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/controller/DeviceLocalizerController.java @@ -60,6 +60,15 @@ public class DeviceLocalizerController { return R.success(deviceLocalizerService.detail(id)); } + /** + * 刷新设备配置 + */ + @GetMapping("/reflash_config") + public R reflashConfig(@RequestParam Long id) { + deviceLocalizerService.reflashConfig(id); + return R.success(); + } + /** * 分页查询 */ diff --git a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/mapper/DeviceLocalizerMapper.java b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/mapper/DeviceLocalizerMapper.java index 0b61a11..d800ee4 100644 --- a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/mapper/DeviceLocalizerMapper.java +++ b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/mapper/DeviceLocalizerMapper.java @@ -21,5 +21,5 @@ public interface DeviceLocalizerMapper extends BaseMapper SearchDeviceLocalizerResult detail(@Param("id") Long id); - IPage paging(Page page, QueryWrapper ew); + IPage paging(Page page, @Param("ew") QueryWrapper ew); } diff --git a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/pojo/param/.gitkeep b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/pojo/param/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/service/DeviceLocalizerService.java b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/service/DeviceLocalizerService.java index 777e922..ea7e30e 100644 --- a/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/service/DeviceLocalizerService.java +++ b/njzscloud-svr/src/main/java/com/njzscloud/supervisory/device/service/DeviceLocalizerService.java @@ -1,19 +1,23 @@ package com.njzscloud.supervisory.device.service; import cn.hutool.core.lang.Assert; +import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njzscloud.common.core.ex.Exceptions; +import com.njzscloud.common.core.utils.R; import com.njzscloud.common.localizer.mqtt.param.ConfigIpPortParam; import com.njzscloud.common.localizer.mqtt.param.EnableWarnParam; +import com.njzscloud.common.localizer.mqtt.param.ObtainDeviceInfoParam; import com.njzscloud.common.localizer.mqtt.param.SpeedThresholdParam; import com.njzscloud.common.mp.support.PageParam; import com.njzscloud.common.mp.support.PageResult; import com.njzscloud.common.mqtt.support.MqttMsg; import com.njzscloud.common.mqtt.util.Mqtt; +import com.njzscloud.common.ws.support.Websocket; import com.njzscloud.supervisory.biz.service.TruckLocationTrackService; import com.njzscloud.supervisory.device.contant.LocalizerCategory; import com.njzscloud.supervisory.device.mapper.DeviceLocalizerMapper; @@ -54,7 +58,9 @@ public class DeviceLocalizerService extends ServiceImpl Exceptions.exception("定位器已存在")); - this.save(deviceLocalizerEntity.setConfig(new LocalizerConfig())); + this.save(deviceLocalizerEntity.setConfig(new LocalizerConfig() + .setEnableWarn(false) + )); } /** @@ -107,6 +113,7 @@ public class DeviceLocalizerService extends ServiceImpl ew = Wrappers.query() + .eq("a.deleted", false) .like(StrUtil.isNotEmpty(terminalId), "a.terminal_id", terminalId) .like(StrUtil.isNotEmpty(licensePlate), "b.license_plate", licensePlate) .eq(localizerCategory != null, "a.localizer_category", localizerCategory) @@ -144,13 +151,22 @@ public class DeviceLocalizerService extends ServiceImpl 0) { + if (StrUtil.isNotBlank(ip) && port != null && port > 0) { oldConfig.setIp(ip).setPort(port); } if (speedThreshold != null && speedThreshold > 0) { @@ -173,9 +189,8 @@ public class DeviceLocalizerService extends ServiceImpl 0) { + if (StrUtil.isNotBlank(ip) && port != null && port > 0) { modifyIpPort(terminalId, ip, port); } @@ -221,4 +236,11 @@ public class DeviceLocalizerService extends ServiceImpl Exceptions.clierr("设备不存在")); + String terminalId = localizerEntity.getTerminalId(); + Mqtt.publish("location/device_info", new ObtainDeviceInfoParam().setTerminalId(terminalId)); + } } diff --git a/njzscloud-svr/src/main/resources/application-dev.yml b/njzscloud-svr/src/main/resources/application-dev.yml index 62e8cec..56c1cfe 100644 --- a/njzscloud-svr/src/main/resources/application-dev.yml +++ b/njzscloud-svr/src/main/resources/application-dev.yml @@ -84,9 +84,3 @@ mqtt: client-id: njzscloud-svr1 username: gps password: TKG4TV3dF7CeazDnUdCF - -localizer: - enabled: true - boss-threads: 1 - worker-threads: 1 - port: 18888 diff --git a/njzscloud-svr/src/main/resources/mapper/device/DeviceLocalizerMapper.xml b/njzscloud-svr/src/main/resources/mapper/device/DeviceLocalizerMapper.xml index b5c6783..ea69270 100644 --- a/njzscloud-svr/src/main/resources/mapper/device/DeviceLocalizerMapper.xml +++ b/njzscloud-svr/src/main/resources/mapper/device/DeviceLocalizerMapper.xml @@ -15,6 +15,7 @@ + @@ -25,9 +26,10 @@ - + select a.id, a.terminal_id, b.license_plate, a.localizer_category, + a.config, + a.last_time >= DATE_SUB(NOW(), INTERVAL 5 MINUTE) `online`, + a.last_time, a.create_time, a.modify_time from device_localizer a left join biz_truck b on b.gps = a.terminal_id and b.deleted = 0 diff --git a/pom.xml b/pom.xml index 8fbf15b..8fcc7a6 100644 --- a/pom.xml +++ b/pom.xml @@ -12,6 +12,7 @@ njzscloud-common njzscloud-svr + njzscloud-localizer-svr @@ -37,16 +38,6 @@ - - com.xuxueli - xxl-job-core - ${xxl-job.version} - - - org.mapstruct - mapstruct - ${mapstruct.version} - com.njzscloud njzscloud-common-core