From ad047e06bdfa5ee222080cb357403dc34fbc0f50 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 13 May 2021 21:04:50 +0800
Subject: [PATCH] 1.desk,service,user 模块 pom依赖修改 2.新增 blade-onenetstudio 模块,集成onenetstudio 基于MQTT协议的sdk,实现设备的属性上报功能
---
blade-service/blade-onenetstudio/pom.xml | 52 ++++
blade-service/blade-onenetstudio/src/main/resources/application-dev.yml | 12 +
blade-service/blade-onenetstudio/src/main/resources/model-R67X22o88Y.json | 161 +++++++++++++
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.xml | 11
blade-service/blade-onenetstudio/src/main/resources/application-prod.yml | 10
blade-service/blade-onenetstudio/src/main/resources/application.yml | 10
blade-service/blade-onenetstudio/src/main/resources/application-test.yml | 10
blade-service/blade-user/pom.xml | 15 +
blade-service/blade-desk/pom.xml | 15 +
blade-service/pom.xml | 36 +-
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/tm/PropertyPost.java | 183 +++++++++++++++
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/EquipmentService.java | 13 +
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/OneNetStudioApplication.java | 14 +
blade-service/blade-onenetstudio/src/main/resources/certificate.pem | 20 +
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/impl/EquipmentServiceImpl.java | 25 ++
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/entity/Equipments.java | 65 +++++
blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.java | 17 +
blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java | 6
18 files changed, 661 insertions(+), 14 deletions(-)
diff --git a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java
index 04f5a5e..336316d 100644
--- a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java
+++ b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/vo/DeptVO.java
@@ -20,8 +20,10 @@
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
+import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
import org.springblade.core.tool.node.INode;
import org.springblade.system.entity.Dept;
@@ -36,6 +38,8 @@
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "DeptVO对象", description = "DeptVO对象")
+@AllArgsConstructor
+@NoArgsConstructor
public class DeptVO extends Dept implements INode<DeptVO> {
private static final long serialVersionUID = 1L;
@@ -81,4 +85,6 @@
*/
private String deptCategoryName;
+
+
}
diff --git a/blade-service/blade-desk/pom.xml b/blade-service/blade-desk/pom.xml
index 70694e2..a4f85c0 100644
--- a/blade-service/blade-desk/pom.xml
+++ b/blade-service/blade-desk/pom.xml
@@ -48,6 +48,21 @@
<groupId>org.springblade</groupId>
<artifactId>blade-starter-oss-qiniu</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-common</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-dict-api</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-scope-api</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
<!--<dependency>
<groupId>org.springblade</groupId>
<artifactId>blade-starter-transaction</artifactId>
diff --git a/blade-service/blade-onenetstudio/pom.xml b/blade-service/blade-onenetstudio/pom.xml
new file mode 100644
index 0000000..a88bd89
--- /dev/null
+++ b/blade-service/blade-onenetstudio/pom.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <artifactId>blade-service</artifactId>
+ <groupId>org.springblade</groupId>
+ <version>2.7.1.RELEASE</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>blade-onenetstudio</artifactId>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
+ <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.target>1.8</maven.compiler.target>
+ <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-core-boot</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.onenet.studio</groupId>
+ <artifactId>acc-sdk-process</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.eclipse.paho</groupId>
+ <artifactId>org.eclipse.paho.client.mqttv3</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.8.0</version>
+ </dependency>
+ <!-- org.eclipse.paho.client.mqttv3 -->
+ <dependency>
+ <groupId>org.eclipse.paho</groupId>
+ <artifactId>org.eclipse.paho.client.mqttv3</artifactId>
+ <version>1.2.5</version>
+ </dependency>
+ </dependencies>
+
+</project>
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/OneNetStudioApplication.java b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/OneNetStudioApplication.java
new file mode 100644
index 0000000..b7f5b32
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/OneNetStudioApplication.java
@@ -0,0 +1,14 @@
+package org.springblade.onenetstudio;
+import com.onenet.studio.acc.sdk.annotations.ThingsModelConfiguration;
+import org.springblade.core.launch.BladeApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+
+@SpringBootApplication
+@EnableFeignClients
+@ThingsModelConfiguration("src/main/resources/model-R67X22o88Y.json")
+public class OneNetStudioApplication {
+ public static void main(String[] args) {
+ BladeApplication.run("blade-onenetstudio",OneNetStudioApplication.class,args);
+ }
+}
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/entity/Equipments.java b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/entity/Equipments.java
new file mode 100644
index 0000000..12984d0
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/entity/Equipments.java
@@ -0,0 +1,65 @@
+package org.springblade.onenetstudio.entity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 实体类
+ *
+ * @author BladeX
+ * @since 2020-07-01
+ */
+@Data
+public class Equipments implements Serializable {
+
+ /**
+ * 设备名称
+ */
+ private String deviceName;
+
+ /**
+ * 经度
+ */
+ private String jd;
+
+ /**
+ * 纬度
+ */
+ private String wd;
+
+ /**
+ * 设备状态
+ */
+ private String dtype;
+
+ /**
+ * 序列号
+ */
+ private String serialNumber;
+
+ /**
+ * 设备型号
+ */
+ private String eqModel;
+
+ /**
+ * 产品id,onenetstudio 平台生成
+ */
+ private String proId;
+
+ /**
+ * 设备秘钥,onenetstudio 平台生成
+ */
+ private String eqSecret;
+
+ /**
+ * 设备名称,onenetstudio 平台生成
+ */
+ private String eqName;
+
+ /**
+ * 联网方式
+ */
+ private String netType;
+}
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.java b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.java
new file mode 100644
index 0000000..6c9f4fb
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.java
@@ -0,0 +1,17 @@
+package org.springblade.onenetstudio.mapper;
+
+
+import org.apache.ibatis.annotations.Mapper;
+import org.springblade.onenetstudio.entity.Equipments;
+
+import java.util.List;
+
+@Mapper
+public interface EquipmentMapper {
+
+ /**
+ * 查询已在onenetstudio平台注册的设备
+ * @return
+ */
+ List<Equipments> selRegisterEqList();
+}
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.xml b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.xml
new file mode 100644
index 0000000..58fb6e9
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/mapper/EquipmentMapper.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.onenetstudio.mapper.EquipmentMapper">
+
+ <!--查询已在onenetstudio 平台注册的设备-->
+ <select id="selRegisterEqList" resultType="org.springblade.onenetstudio.entity.Equipments">
+ select deviceName,jd,wd,dtype,serialNumber,
+ eq_model eqModel,pro_id proId,eq_secret eqSecret,eq_name eqName,net_type netType from sys_equipment
+ where pro_id is not null
+ </select>
+</mapper>
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/EquipmentService.java b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/EquipmentService.java
new file mode 100644
index 0000000..d13c3ff
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/EquipmentService.java
@@ -0,0 +1,13 @@
+package org.springblade.onenetstudio.service;
+
+import org.springblade.onenetstudio.entity.Equipments;
+
+import java.util.List;
+
+public interface EquipmentService {
+ /**
+ * 查询已在onenetstudio平台注册的设备
+ * @return
+ */
+ List<Equipments> selRegisterEqList();
+}
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/impl/EquipmentServiceImpl.java b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/impl/EquipmentServiceImpl.java
new file mode 100644
index 0000000..9d230fd
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/service/impl/EquipmentServiceImpl.java
@@ -0,0 +1,25 @@
+package org.springblade.onenetstudio.service.impl;
+
+import org.springblade.onenetstudio.entity.Equipments;
+import org.springblade.onenetstudio.mapper.EquipmentMapper;
+import org.springblade.onenetstudio.service.EquipmentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class EquipmentServiceImpl implements EquipmentService {
+
+ @Autowired
+ private EquipmentMapper equipmentMapper;
+
+ /**
+ * 查询已在onenetstudio平台注册的设备
+ * @return
+ */
+ @Override
+ public List<Equipments> selRegisterEqList() {
+ return equipmentMapper.selRegisterEqList();
+ }
+}
diff --git a/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/tm/PropertyPost.java b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/tm/PropertyPost.java
new file mode 100644
index 0000000..b71cbaa
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/java/org/springblade/onenetstudio/tm/PropertyPost.java
@@ -0,0 +1,183 @@
+package org.springblade.onenetstudio.tm;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.onenet.studio.acc.sdk.OpenApi;
+import com.onenet.studio.acc.sdk.OpenApiExtention;
+import com.onenet.studio.acc.sdk.dto.GeoLocationStructDTO;
+import org.springblade.onenetstudio.entity.Equipments;
+import org.springblade.onenetstudio.service.EquipmentService;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 设备属性数据交互
+ */
+@Component
+public class PropertyPost {
+
+ @Resource
+ private EquipmentService equipmentService;
+
+ @Value("${sdk.api.url}")
+ private String url;
+
+ @PostConstruct
+ public void init() {
+ //查询设备
+ List<Equipments> equipmentsList = equipmentService.selRegisterEqList();
+ //有数据则创建openApi对象
+ if (equipmentsList.size()>0){
+ for (Equipments equipments:equipmentsList) {
+ try {
+ OpenApi openApi = OpenApi.Builder.newBuilder()
+ .url(url)
+ .productId(equipments.getProId())
+ .devKey(equipments.getEqName())
+ .accessKey(equipments.getEqSecret())
+ // .caCrtFile(caCrtFile)
+ .build();
+ System.out.println("openApi = " + openApi);
+ OpenApiExtention extention = new OpenApiExtention(openApi);
+ //属性上报
+ propertyUp(extention,equipments);
+ //属性设置
+ // propertySet(extention);
+ //属性获取
+ // peropertyGet(extention);
+ //期望值获取
+ // desiredGet(extention);
+ //期望值删除
+ // desiredDel(extention);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ /**
+ * 属性上报
+ *
+ * @author wjl
+ * @date 2020/12/29
+ * @param extention 物模型扩展API
+ **/
+ public void propertyUp(OpenApiExtention extention,Equipments equipments) {
+ //设置坐标数据
+ GeoLocationStructDTO geoLocationStructDTO = new GeoLocationStructDTO();
+ geoLocationStructDTO.setAltitude(100.00);
+ geoLocationStructDTO.setLatitude(Double.parseDouble(String.format("%.2f", Double.parseDouble(equipments.getWd()))));
+ geoLocationStructDTO.setLongitude(Double.parseDouble(String.format("%.2f", Double.parseDouble(equipments.getJd()))));
+ geoLocationStructDTO.setCoordinateSystem(1);
+ try {
+ //设备数据上报
+ int result = extention.propertyUpload(5000,
+ 0,
+ 100,
+ geoLocationStructDTO,
+ equipments.getDeviceName(),
+ equipments.getNetType(),
+ equipments.getSerialNumber(),
+ equipments.getEqModel());
+ //result 0 即为上报成功 1:失败
+ System.out.println("up result : " + result);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 属性设置
+ *
+ * @author wjl
+ * @date 2020/12/29
+ * @param extention 物模型扩展API
+ **/
+ public void propertySet(OpenApiExtention extention) {
+// try {
+// extention.propertySet(oneJson -> {
+// System.out.println("receive oneJson : " + oneJson);
+// JSONObject json = JSON.parseObject(oneJson);
+// try {
+// extention.propertySetReply(json.getString("id"), 200, "success");
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+// });
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+ }
+
+ /**
+ * 属性获取
+ *
+ * @author wjl
+ * @date 2020/12/29
+ * @param extention 物模型扩展API
+ **/
+ public void peropertyGet(OpenApiExtention extention) {
+ try {
+ extention.propertyGet(oneJson -> {
+ System.out.println("receive oneJson : " + oneJson);
+ JSONObject json = JSON.parseObject(oneJson);
+ try {
+ // 返回的属性与收到的属性要对应上,否则不成功
+ Map<String, Object> map = new HashMap<>();
+ map.put("DeviceStatus", 1);
+ extention.propertyGetReply(json.getString("id"), 200, "success", map);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ });
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 期望值获取
+ *
+ * @author wjl
+ * @date 2020/12/29
+ * @param extention 物模型扩展API
+ **/
+ public void desiredGet(OpenApiExtention extention) {
+ List<String> list = new ArrayList<>();
+ list.add("DeviceStatus");
+
+ try {
+ JSONObject get = extention.propertyDesiredGet(list.toArray(new String[list.size()]), 5000);
+ System.out.println("desired get oneJson : " + get.toJSONString());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 期望值删除
+ *
+ * @author wjl
+ * @date 2020/12/29
+ * @param extention 物模型扩展API
+ * @return void
+ **/
+ public void desiredDel(OpenApiExtention extention) {
+ Map<String, Integer> map = new HashMap<>();
+ map.put("DeviceStatus", 1);
+ try {
+ int result = extention.propertyDesiredDel(5000, map);
+ System.out.println("desired del result : " + result);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/blade-service/blade-onenetstudio/src/main/resources/application-dev.yml b/blade-service/blade-onenetstudio/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..d6fca57
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/resources/application-dev.yml
@@ -0,0 +1,12 @@
+#服务器端口
+server:
+ port: 809
+
+#数据源配置
+spring:
+ datasource:
+ url: jdbc:mysql://36.134.81.48:3306/jfpt?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true&useOldAliasMetadataBehavior=true
+ username: root
+ password: jfpt123
+
+
diff --git a/blade-service/blade-onenetstudio/src/main/resources/application-prod.yml b/blade-service/blade-onenetstudio/src/main/resources/application-prod.yml
new file mode 100644
index 0000000..e8d21d9
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/resources/application-prod.yml
@@ -0,0 +1,10 @@
+#服务器端口
+server:
+ port: 8205
+
+#数据源配置
+spring:
+ datasource:
+ url: ${blade.datasource.prod.url}
+ username: ${blade.datasource.prod.username}
+ password: ${blade.datasource.prod.password}
diff --git a/blade-service/blade-onenetstudio/src/main/resources/application-test.yml b/blade-service/blade-onenetstudio/src/main/resources/application-test.yml
new file mode 100644
index 0000000..a40a289
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/resources/application-test.yml
@@ -0,0 +1,10 @@
+#服务器端口
+server:
+ port: 8105
+
+#数据源配置
+spring:
+ datasource:
+ url: ${blade.datasource.test.url}
+ username: ${blade.datasource.test.username}
+ password: ${blade.datasource.test.password}
diff --git a/blade-service/blade-onenetstudio/src/main/resources/application.yml b/blade-service/blade-onenetstudio/src/main/resources/application.yml
new file mode 100644
index 0000000..3221f19
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/resources/application.yml
@@ -0,0 +1,10 @@
+sdk:
+ api:
+ #url: ssl://183.230.102.116:8883 加密连接
+ url: tcp://218.201.45.7:1883
+# # 产品ID
+# product-id: R67X22o88Y
+# # 设备名称
+# dev-key: test3
+# # 产品key
+# access-key: a/uhC1M1q8+tpXPFe+E5v81xYVu/pSd906sNGZOvlVM=
diff --git a/blade-service/blade-onenetstudio/src/main/resources/certificate.pem b/blade-service/blade-onenetstudio/src/main/resources/certificate.pem
new file mode 100644
index 0000000..25a5cea
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/resources/certificate.pem
@@ -0,0 +1,20 @@
+-----BEGIN CERTIFICATE-----
+MIIDOzCCAiOgAwIBAgIJAPCCNfxANtVEMA0GCSqGSIb3DQEBCwUAMDQxCzAJBgNV
+BAYTAkNOMQ4wDAYDVQQKDAVDTUlPVDEVMBMGA1UEAwwMT25lTkVUIE1RVFRTMB4X
+DTE5MDUyOTAxMDkyOFoXDTQ5MDUyMTAxMDkyOFowNDELMAkGA1UEBhMCQ04xDjAM
+BgNVBAoMBUNNSU9UMRUwEwYDVQQDDAxPbmVORVQgTVFUVFMwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC/VvJ6lGWfy9PKdXKBdzY83OERB35AJhu+9jkx
+5d4SOtZScTe93Xw9TSVRKrFwu5muGgPusyAlbQnFlZoTJBZY/745MG6aeli6plpR
+r93G6qVN5VLoXAkvqKslLZlj6wXy70/e0GC0oMFzqSP0AY74icANk8dUFB2Q8usS
+UseRafNBcYfqACzF/Wa+Fu/upBGwtl7wDLYZdCm3KNjZZZstvVB5DWGnqNX9HkTl
+U9NBMS/7yph3XYU3mJqUZxryb8pHLVHazarNRppx1aoNroi+5/t3Fx/gEa6a5PoP
+ouH35DbykmzvVE67GUGpAfZZtEFE1e0E/6IB84PE00llvy3pAgMBAAGjUDBOMB0G
+A1UdDgQWBBTTi/q1F2iabqlS7yEoX1rbOsz5GDAfBgNVHSMEGDAWgBTTi/q1F2ia
+bqlS7yEoX1rbOsz5GDAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAL
+aqJ2FgcKLBBHJ8VeNSuGV2cxVYH1JIaHnzL6SlE5q7MYVg+Ofbs2PRlTiWGMazC7
+q5RKVj9zj0z/8i3ScWrWXFmyp85ZHfuo/DeK6HcbEXJEOfPDvyMPuhVBTzuBIRJb
+41M27NdIVCdxP6562n6Vp0gbE8kN10q+ksw8YBoLFP0D1da7D5WnSV+nwEIP+F4a
+3ZX80bNt6tRj9XY0gM68mI60WXrF/qYL+NUz+D3Lw9bgDSXxpSN8JGYBR85BxBvR
+NNAhsJJ3yoAvbPUQ4m8J/CoVKKgcWymS1pvEHmF47pgzbbjm5bdthlIx+swdiGFa
+WzdhzTYwVkxBaU+xf/2w
+-----END CERTIFICATE-----
diff --git a/blade-service/blade-onenetstudio/src/main/resources/model-R67X22o88Y.json b/blade-service/blade-onenetstudio/src/main/resources/model-R67X22o88Y.json
new file mode 100644
index 0000000..8b15252
--- /dev/null
+++ b/blade-service/blade-onenetstudio/src/main/resources/model-R67X22o88Y.json
@@ -0,0 +1,161 @@
+{
+ "properties" : [ {
+ "identifier" : "AlarmState",
+ "name" : "报警状态",
+ "functionType" : "st",
+ "accessMode" : "r",
+ "functionMode" : "property",
+ "desc" : "",
+ "dataType" : {
+ "type" : "enum",
+ "specs" : {
+ "0" : "正常",
+ "1" : "危险报警"
+ }
+ }
+ }, {
+ "identifier" : "BatteryLevel",
+ "name" : "电池电量",
+ "functionType" : "st",
+ "accessMode" : "r",
+ "functionMode" : "property",
+ "desc" : "",
+ "dataType" : {
+ "type" : "int32",
+ "specs" : {
+ "min" : "0",
+ "max" : "100",
+ "unit" : "百分比 / %",
+ "step" : "1"
+ }
+ }
+ }, {
+ "identifier" : "GeoLocation",
+ "name" : "地理位置",
+ "functionType" : "st",
+ "accessMode" : "r",
+ "functionMode" : "property",
+ "desc" : "",
+ "dataType" : {
+ "type" : "struct",
+ "specs" : [ {
+ "identifier" : "Longitude",
+ "name" : "经度",
+ "dataType" : {
+ "type" : "double",
+ "specs" : {
+ "min" : "-180",
+ "max" : "180",
+ "unit" : "度 / °",
+ "step" : "0.01"
+ }
+ }
+ }, {
+ "identifier" : "Latitude",
+ "name" : "纬度",
+ "dataType" : {
+ "type" : "double",
+ "specs" : {
+ "min" : "-90",
+ "max" : "90",
+ "unit" : "度 / °",
+ "step" : "0.01"
+ }
+ }
+ }, {
+ "identifier" : "Altitude",
+ "name" : "海拔",
+ "dataType" : {
+ "type" : "double",
+ "specs" : {
+ "min" : "0",
+ "max" : "9999",
+ "unit" : "米 / m",
+ "step" : "0.01"
+ }
+ }
+ }, {
+ "identifier" : "CoordinateSystem",
+ "name" : "坐标系统",
+ "dataType" : {
+ "type" : "enum",
+ "specs" : {
+ "1" : "WGS_84",
+ "2" : "GCJ_02"
+ }
+ }
+ } ]
+ }
+ }, {
+ "identifier" : "name",
+ "name" : "设备名称",
+ "functionType" : "u",
+ "accessMode" : "rw",
+ "functionMode" : "property",
+ "desc" : null,
+ "dataType" : {
+ "type" : "string",
+ "specs" : {
+ "length" : "255"
+ }
+ }
+ }, {
+ "identifier" : "networkWay",
+ "name" : "联网方式",
+ "functionType" : "u",
+ "accessMode" : "rw",
+ "functionMode" : "property",
+ "desc" : null,
+ "dataType" : {
+ "type" : "string",
+ "specs" : {
+ "length" : "255"
+ }
+ }
+ }, {
+ "identifier" : "serialNumber",
+ "name" : "设备序列号",
+ "functionType" : "u",
+ "accessMode" : "rw",
+ "functionMode" : "property",
+ "desc" : null,
+ "dataType" : {
+ "type" : "string",
+ "specs" : {
+ "length" : "255"
+ }
+ }
+ }, {
+ "identifier" : "type",
+ "name" : "设备型号",
+ "functionType" : "u",
+ "accessMode" : "rw",
+ "functionMode" : "property",
+ "desc" : null,
+ "dataType" : {
+ "type" : "string",
+ "specs" : {
+ "length" : "255"
+ }
+ }
+ } ],
+ "events" : [ {
+ "identifier" : "Error",
+ "name" : "故障上报",
+ "desc" : "",
+ "functionMode" : "event",
+ "outputData" : [ {
+ "identifier" : "ErrorCode",
+ "name" : "故障代码",
+ "dataType" : {
+ "type" : "enum",
+ "specs" : {
+ "0" : "无故障"
+ }
+ }
+ } ],
+ "functionType" : "st",
+ "eventType" : "info"
+ } ],
+ "services" : [ ]
+}
\ No newline at end of file
diff --git a/blade-service/blade-user/pom.xml b/blade-service/blade-user/pom.xml
index ffe7fb4..eeb920c 100644
--- a/blade-service/blade-user/pom.xml
+++ b/blade-service/blade-user/pom.xml
@@ -38,6 +38,21 @@
<artifactId>blade-system-api</artifactId>
<version>${bladex.project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-common</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-dict-api</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-scope-api</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
</dependencies>
<build>
diff --git a/blade-service/pom.xml b/blade-service/pom.xml
index 5e160c3..6cdde30 100644
--- a/blade-service/pom.xml
+++ b/blade-service/pom.xml
@@ -22,13 +22,11 @@
<module>blade-system</module>
<module>blade-user</module>
<module>blade-jfpts</module>
+ <module>blade-onenetstudio</module>
</modules>
<dependencies>
- <dependency>
- <groupId>org.springblade</groupId>
- <artifactId>blade-common</artifactId>
- </dependency>
+
<dependency>
<groupId>org.springblade</groupId>
<artifactId>blade-starter-tenant</artifactId>
@@ -37,16 +35,26 @@
<groupId>org.springblade</groupId>
<artifactId>blade-starter-api-crypto</artifactId>
</dependency>
- <dependency>
- <groupId>org.springblade</groupId>
- <artifactId>blade-dict-api</artifactId>
- <version>${bladex.project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.springblade</groupId>
- <artifactId>blade-scope-api</artifactId>
- <version>${bladex.project.version}</version>
- </dependency>
</dependencies>
+ <!--2021-5-13 修改,由于blade-onenetstudio 模块compie时报错,当前模块不能引入一下三个依赖-->
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-common</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-dict-api</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springblade</groupId>
+ <artifactId>blade-scope-api</artifactId>
+ <version>${bladex.project.version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
</project>
--
Gitblit v1.9.3