From 5c5aad749303149022a1957e2be04e9116b97397 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期二, 21 十二月 2021 11:59:51 +0800
Subject: [PATCH] 萤石云摄像头
---
dao/src/main/java/com/sandu/ximon/dao/domain/YSY_AccessTokenDto.java | 28 ++
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java | 131 +++++++++++++
dao/src/main/java/com/sandu/ximon/dao/domain/YSY_MonitorDto.java | 169 ++++++++++++++++
dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java | 4
ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java | 22 +
ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java | 128 ++++++++++++
dao/src/main/resources/mapper/MonitorMapper.xml | 26 +-
dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java | 92 +++++++--
8 files changed, 562 insertions(+), 38 deletions(-)
diff --git a/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java b/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java
index ea4c558..e209875 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java
@@ -1,36 +1,86 @@
package com.sandu.ximon.dao.domain;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import lombok.Data;
-
+import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
+import lombok.Data;
/**
* 鎽勫儚澶�
+ * @TableName monitor
*/
+@TableName(value ="monitor")
@Data
public class Monitor implements Serializable {
-
+ /**
+ *
+ */
@TableId(type = IdType.AUTO)
private Long id;
- //鎵�灞炰汉
- private Long userId;
- //鐩戞帶搴忓垪鍙�
- private String serialNumber;
- //鎵�灞炵伅鏉�
- private String belongTo;
- //鍦板潃
- private String address;
- //璁惧鐘舵��:鍦ㄧ嚎:1/绂荤嚎:0
- private int equipmentState;
- //宸ヤ綔鐘舵�侊細姝e父浣跨敤:1/绂佹浣跨敤:0
- private int workState;
- //缁戝畾鐘舵�侊細宸茬粦瀹�:1/鏈粦瀹�:0
- private int bindingState;
- //澶囨敞
+
+ /**
+ * 璁惧搴忓垪鍙�
+ */
+ private String deviceSerial;
+
+ /**
+ * 璁惧楠岃瘉鐮�
+ */
+ private String devicesCode;
+
+ /**
+ * 璁惧鍚嶇О
+ */
+ private String deviceName;
+
+ /**
+ * 璁惧绫诲瀷
+ */
+ private String deviceType;
+
+ /**
+ * 鍦ㄧ嚎鐘舵�侊細0-涓嶅湪绾匡紝1-鍦ㄧ嚎
+ */
+ private Integer equipmentStatus;
+
+ /**
+ * 鏄惁鍔犲瘑锛�0-涓嶅姞瀵嗭紝1-鍔犲瘑
+ */
+ private Integer isEncrypt;
+
+ /**
+ * 宸ヤ綔鐘舵��
+ */
+ private Integer workState;
+
+ /**
+ * 缁戝畾鐘舵��
+ */
+ private Integer bindingState;
+
+ /**
+ * 澶囨敞
+ */
private String note;
- //鎺ュ叆鏃堕棿
- private LocalDateTime createTime;
-}
+
+ /**
+ *
+ */
+ private LocalDateTime addTime;
+
+ /**
+ *
+ */
+ private LocalDateTime updateTime;
+
+ /**
+ * MAC鍦板潃
+ */
+ private String netAddress;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/dao/src/main/java/com/sandu/ximon/dao/domain/YSY_AccessTokenDto.java b/dao/src/main/java/com/sandu/ximon/dao/domain/YSY_AccessTokenDto.java
new file mode 100644
index 0000000..cf6e1d3
--- /dev/null
+++ b/dao/src/main/java/com/sandu/ximon/dao/domain/YSY_AccessTokenDto.java
@@ -0,0 +1,28 @@
+package com.sandu.ximon.dao.domain;
+
+import lombok.Data;
+
+/**
+ * @author ZZQ
+ * @date 2021/12/17 14:32
+ */
+@Data
+public class YSY_AccessTokenDto {
+ //"{\"msg\":\"鎿嶄綔鎴愬姛!\",\"code\":\"200\",
+ // \"data\":{\"accessToken\":\"at.4gl2j50x0x1qv6n60mwhc5kaa6csfend-1hr2lrhf51-1u5h20l-cxqlntrqs\",\"expireTime\":1640327042533}}"
+ private String msg;
+ private String code;
+ private data data;
+
+ public class data {
+ private String accessToken;
+
+ public String getAccessToken() {
+ return accessToken;
+ }
+
+ public void setAccessToken(String accessToken) {
+ this.accessToken = accessToken;
+ }
+ }
+}
diff --git a/dao/src/main/java/com/sandu/ximon/dao/domain/YSY_MonitorDto.java b/dao/src/main/java/com/sandu/ximon/dao/domain/YSY_MonitorDto.java
new file mode 100644
index 0000000..c57e7d7
--- /dev/null
+++ b/dao/src/main/java/com/sandu/ximon/dao/domain/YSY_MonitorDto.java
@@ -0,0 +1,169 @@
+package com.sandu.ximon.dao.domain;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author ZZQ
+ * @date 2021/12/17 15:46
+ */
+@Data
+public class YSY_MonitorDto {
+ private String code;
+ private String msg;
+ private data data;
+
+
+ public class data {
+// {
+// "deviceSerial": "F34465099",
+// "deviceName": "DS-2DE4223IW-DE(F34465099)",
+// "localName": "DS-2DE4223IW-DE(F34465099)",
+// "model": "DS-2DE4223IW-DE",
+// "status": 1,
+// "defence": 0,
+// "isEncrypt": 1,
+// "alarmSoundMode": 0,
+// "offlineNotify": 0,
+// "category": "UNKNOWN",
+// "parentCategory": "COMMON",
+// "updateTime": 1612337396000,
+// "netType": null,
+// "signal": null,
+// "riskLevel": 0,
+// "netAddress": "119.132.57.169"
+// }
+ private String deviceSerial;
+ private String deviceName;
+ private String localName;
+ private String model;
+ private Integer status;
+ private Integer defence;
+ private Integer isEncrypt;
+ private Integer alarmSoundMode;
+ private Integer offlineNotify;
+ private String category;
+ private String parentCategory;
+ private LocalDateTime updateTime;
+// private Object netType;
+// private Object signal;
+ private Integer riskLevel;
+ private String netAddress;
+
+ public String getDeviceSerial() {
+ return deviceSerial;
+ }
+
+ public void setDeviceSerial(String deviceSerial) {
+ this.deviceSerial = deviceSerial;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getLocalName() {
+ return localName;
+ }
+
+ public void setLocalName(String localName) {
+ this.localName = localName;
+ }
+
+ public String getModel() {
+ return model;
+ }
+
+ public void setModel(String model) {
+ this.model = model;
+ }
+
+ public Integer getStatus() {
+ return status;
+ }
+
+ public void setStatus(Integer status) {
+ this.status = status;
+ }
+
+ public Integer getDefence() {
+ return defence;
+ }
+
+ public void setDefence(Integer defence) {
+ this.defence = defence;
+ }
+
+ public Integer getIsEncrypt() {
+ return isEncrypt;
+ }
+
+ public void setIsEncrypt(Integer isEncrypt) {
+ this.isEncrypt = isEncrypt;
+ }
+
+ public Integer getAlarmSoundMode() {
+ return alarmSoundMode;
+ }
+
+ public void setAlarmSoundMode(Integer alarmSoundMode) {
+ this.alarmSoundMode = alarmSoundMode;
+ }
+
+ public Integer getOfflineNotify() {
+ return offlineNotify;
+ }
+
+ public void setOfflineNotify(Integer offlineNotify) {
+ this.offlineNotify = offlineNotify;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getParentCategory() {
+ return parentCategory;
+ }
+
+ public void setParentCategory(String parentCategory) {
+ this.parentCategory = parentCategory;
+ }
+
+ public LocalDateTime getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(LocalDateTime updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public Integer getRiskLevel() {
+ return riskLevel;
+ }
+
+ public void setRiskLevel(Integer riskLevel) {
+ this.riskLevel = riskLevel;
+ }
+
+ public String getNetAddress() {
+ return netAddress;
+ }
+
+ public void setNetAddress(String netAddress) {
+ this.netAddress = netAddress;
+ }
+ }
+
+}
diff --git a/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java b/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java
index 6f1d932..1e425d9 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java
@@ -11,3 +11,7 @@
List<Monitor> listMonitorByKeyword(String keyword, int equipmentState1, int equipmentState2,
int bindingState1, int bindingState2);
}
+
+
+
+
diff --git a/dao/src/main/resources/mapper/MonitorMapper.xml b/dao/src/main/resources/mapper/MonitorMapper.xml
index 79a3179..2e740ff 100644
--- a/dao/src/main/resources/mapper/MonitorMapper.xml
+++ b/dao/src/main/resources/mapper/MonitorMapper.xml
@@ -5,16 +5,19 @@
<mapper namespace="com.sandu.ximon.dao.mapper.MonitorMapper">
<resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.Monitor">
- <id property="id" column="id" jdbcType="BIGINT"/>
- <result property="userId" column="user_id" jdbcType="VARCHAR"/>
- <result property="serialNumber" column="serial_number" jdbcType="VARCHAR"/>
- <result property="belongTo" column="belong_to" jdbcType="VARCHAR"/>
- <result property="address" column="address" jdbcType="VARCHAR"/>
- <result property="equipmentState" column="equipment_state" jdbcType="INTEGER"/>
- <result property="workState" column="work_state" jdbcType="INTEGER"/>
- <result property="bindingState" column="binding_state" jdbcType="INTEGER"/>
- <result property="note" column="note" jdbcType="VARCHAR"/>
- <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+ <id property="id" column="id" jdbcType="BIGINT"/>
+ <result property="deviceSerial" column="device_serial" jdbcType="VARCHAR"/>
+ <result property="devicesCode" column="devices_code" jdbcType="VARCHAR"/>
+ <result property="deviceName" column="device_name" jdbcType="VARCHAR"/>
+ <result property="deviceType" column="device_type" jdbcType="VARCHAR"/>
+ <result property="equipmentStatus" column="equipment_status" jdbcType="INTEGER"/>
+ <result property="isEncrypt" column="is_encrypt" jdbcType="INTEGER"/>
+ <result property="workState" column="work_state" jdbcType="INTEGER"/>
+ <result property="bindingState" column="binding_state" jdbcType="INTEGER"/>
+ <result property="note" column="note" jdbcType="VARCHAR"/>
+ <result property="addTime" column="add_time" jdbcType="TIMESTAMP"/>
+ <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+ <result property="netAddress" column="net_address" jdbcType="VARCHAR"/>
</resultMap>
<select id="listMonitorByKeyword" resultType="com.sandu.ximon.dao.domain.Monitor">
SELECT * FROM (SELECT * FROM (SELECT * FROM monitor AS table1
@@ -25,5 +28,4 @@
WHERE binding_state = #{bindingState1} OR binding_state = #{bindingState2};
</select>
-
-</mapper>
\ No newline at end of file
+</mapper>
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java
index 44647ba..1f5908d 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java
@@ -5,6 +5,7 @@
import com.sandu.ximon.admin.param.MonitorParam;
import com.sandu.ximon.admin.service.MonitorService;
import com.sandu.ximon.dao.domain.Monitor;
+import com.sandu.ximon.dao.domain.YSY_MonitorDto;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
@@ -36,6 +37,13 @@
return ResponseUtil.successPage(list);
}
+
+ /**
+ * 鍒犻櫎鏁版嵁搴撲腑钀ょ煶浜戞憚鍍忓ご
+ *
+ * @param id
+ * @return
+ */
@PostMapping("/delete/{id}")
public ResponseVO<Object> deleteMonitor(@PathVariable Long id) {
boolean result = monitorService.deleteMonitor(id);
@@ -45,4 +53,127 @@
return ResponseUtil.fail("鎿嶄綔澶辫触");
}
}
+
+ /**
+ * 鑾峰彇钀ょ煶浜慉ccessToken
+ *
+ * @return AccessToken
+ */
+ @GetMapping("/getAccessToken")
+ public ResponseVO<Object> getAccessToken() {
+ return ResponseUtil.success(monitorService.getAccessToken());
+ }
+
+ /**
+ * 娣诲姞钀ょ煶浜戞憚鍍忓ご
+ *
+ * @param monitorParam 娣诲姞鎽勫儚澶寸粨鏋�
+ * @return
+ */
+ @GetMapping("/addYSYMonitor")
+ public ResponseVO<Object> addYSYMonitor(@RequestBody MonitorParam monitorParam) {
+ YSY_MonitorDto addMonitorDto = monitorService.addYSYMonitor(monitorParam.getAccessToken(), monitorParam.getDeviceSerial(), monitorParam.getValidateCode());
+
+ if ("200".equals(addMonitorDto.getCode())) {
+ return ResponseUtil.success(addMonitorDto);
+ } else if ("20017".equals(addMonitorDto.getCode())) {
+ //宸茬粡琚嚜宸辨坊鍔犵殑鎽勫儚澶撮渶瑕佹坊鍔犲埌鏁版嵁搴�
+ getYSYMonitorInfoAndaddMonitorToTable(monitorParam);
+ return ResponseUtil.error(20017, addMonitorDto.getMsg());
+ } else {
+ return ResponseUtil.fail(addMonitorDto.getMsg());
+ }
+ }
+
+ /**
+ * 鍒犻櫎钀ょ煶浜戞憚鍍忓ご
+ *
+ * @param monitorParam 娣诲姞鎽勫儚澶寸粨鏋�
+ * @return
+ */
+ @GetMapping("/deleteYSYMonitor")
+ public ResponseVO<Object> deleteYSYMonitor(@RequestBody MonitorParam monitorParam) {
+ YSY_MonitorDto addMonitorDto = monitorService.deleteYSYMonitor(monitorParam.getAccessToken(), monitorParam.getDeviceSerial());
+
+ if ("200".equals(addMonitorDto.getCode())) {
+ return ResponseUtil.success(addMonitorDto);
+ } else {
+ return ResponseUtil.fail(addMonitorDto.getMsg());
+ }
+ }
+
+ /**
+ * 鑾峰彇鍗曚釜璁惧淇℃伅 getYSYMonitorInfo
+ */
+ @GetMapping("/getYSYMonitorInfo")
+ public ResponseVO<Object> getYSYMonitorInfo(@RequestBody MonitorParam monitorParam) {
+ YSY_MonitorDto getMonitorDto = monitorService.getYSYMonitorInfo(monitorParam.getAccessToken(), monitorParam.getDeviceSerial());
+
+ if ("200".equals(getMonitorDto.getCode())) {
+ return ResponseUtil.success(getMonitorDto.getData());
+ } else {
+ return ResponseUtil.fail(getMonitorDto.getMsg());
+ }
+ }
+
+
+ /**
+ * 鑾峰彇鍗曚釜璁惧淇℃伅骞朵笖瀛樺偍鍒版暟鎹簱
+ *
+ * @param monitorParam
+ * @return
+ */
+ @GetMapping("/getYSYMonitorInfoAndaddMonitorToTable")
+ public ResponseVO<Object> getYSYMonitorInfoAndaddMonitorToTable(@RequestBody MonitorParam monitorParam) {
+ YSY_MonitorDto getMonitorDto = monitorService.getYSYMonitorInfo(monitorParam.getAccessToken(), monitorParam.getDeviceSerial());
+
+ if ("200".equals(getMonitorDto.getCode())) {
+ Monitor monitor = new Monitor();
+ monitor.setDeviceSerial(getMonitorDto.getData().getDeviceSerial());
+ monitor.setDevicesCode(monitorParam.getValidateCode());
+ monitor.setDeviceName(getMonitorDto.getData().getDeviceName());
+ monitor.setDeviceType(getMonitorDto.getData().getModel());
+ monitor.setEquipmentStatus(getMonitorDto.getData().getStatus());
+ monitor.setIsEncrypt(getMonitorDto.getData().getIsEncrypt());
+ monitor.setAddTime(getMonitorDto.getData().getUpdateTime());
+ monitor.setNetAddress(getMonitorDto.getData().getNetAddress());
+ boolean flag = monitorService.addMonitorInfoToTable(monitor);
+
+ if (flag) {
+ return ResponseUtil.success("鍌ㄥ瓨鎽勫儚澶磋澶囦俊鎭垚鍔燂紒");
+ } else {
+
+ return ResponseUtil.fail("鍌ㄥ瓨鎽勫儚澶磋澶囦俊鎭け璐�!");
+ }
+
+ } else {
+ return ResponseUtil.fail(getMonitorDto.getMsg());
+ }
+ }
+
+
+ /**
+ * 缂栬緫鎽勫儚澶磋澶囦俊鎭�
+ */
+ /**
+ * 鑾峰彇鍗曚釜璁惧淇℃伅 getYSYMonitorInfo
+ */
+ @PostMapping("/UpDateMonitorInfo")
+ public ResponseVO<Object> UpDateMonitorInfo(@RequestBody MonitorParam monitorParam) {
+ Monitor monitor = new Monitor();
+ monitor.setId(monitorParam.getId());
+ monitor.setDeviceSerial(monitorParam.getDeviceSerial());
+ monitor.setDevicesCode(monitorParam.getDevicesCode());
+ monitor.setWorkState(monitorParam.getWorkState());
+ monitor.setNote(monitorParam.getNote());
+
+ boolean falg = monitorService.upDateMonitorInfo(monitorParam);
+
+ if (falg) {
+ return ResponseUtil.success("鏇存柊鏁版嵁鎴愬姛");
+ } else {
+ return ResponseUtil.fail("鏇存柊鏁版嵁澶辫触");
+ }
+ }
+
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java
index e5e7b4f..1f0c4f3 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java
@@ -1,15 +1,31 @@
package com.sandu.ximon.admin.param;
+import com.sandu.ximon.dao.domain.Monitor;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
+import java.io.Serializable;
@Data
-public class MonitorParam {
+public class MonitorParam extends Monitor implements Serializable {
private String keyword;
@NotEmpty
- private int equipmentState;
+ private Integer equipmentState;
@NotEmpty
- private int bindingState;
+ private Integer bindingState;
+
+ /**
+ * +
+ * 寮�濮嬭悿鐭充簯鎽勫儚澶寸浉鍏冲弬鏁�
+ */
+ //鎺堟潈杩囩▼鑾峰彇鐨刟ccess_token
+ private String accessToken;
+ //璁惧搴忓垪鍙�,瀛樺湪鑻辨枃瀛楁瘝鐨勮澶囧簭鍒楀彿锛屽瓧姣嶉渶涓哄ぇ鍐�
+ private String deviceSerial;
+ //璁惧楠岃瘉鐮侊紝璁惧鏈鸿韩涓婄殑鍏綅澶у啓瀛楁瘝
+ private String validateCode;
+ /**
+ * 缁撴潫钀ょ煶浜戞憚鍍忓ご鐩稿叧鍙傛暟
+ */
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
index 0e434a9..c01ff5e 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
@@ -1,24 +1,43 @@
package com.sandu.ximon.admin.service;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.service.impl.BaseServiceImpl;
-import com.sandu.ximon.admin.param.BannerParam;
import com.sandu.ximon.admin.param.MonitorParam;
-import com.sandu.ximon.dao.domain.Banner;
import com.sandu.ximon.dao.domain.Monitor;
+import com.sandu.ximon.dao.domain.YSY_AccessTokenDto;
+import com.sandu.ximon.dao.domain.YSY_MonitorDto;
import com.sandu.ximon.dao.mapper.MonitorMapper;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
@Service
@AllArgsConstructor
public class MonitorService extends BaseServiceImpl<MonitorMapper, Monitor> {
private final MonitorMapper monitorMapper;
+ //钀ょ煶浜慉ppKey
+ private static final String AppKey = "51a534ebadf54c31a0848dc575dfa206";
+ //钀ょ煶浜� AppKey Secret
+ private static final String Secret = "8c32c67a73c87b9e461b2e3bdf58967a";
+
+ //钀ょ煶浜戝湴鍧�
+ private static final String YSY_URL = "https://open.ys7.com/api/lapp";
+ //鑾峰彇钀ょ煶浜慳ccessToken鍦板潃
+ private static final String ACCESSTOKEN_URL = "/token/get";
+ //娣诲姞钀ょ煶浜戞憚鍍忓ご
+ private static final String ADD_DEVICE_URL = "/device/add";
+ //鍒犻櫎钀ょ煶浜戞憚鍍忓ご
+ private static final String DELETE_DEVICE_URL = "/device/delete";
+ //鑾峰彇钀ょ煶浜戝崟涓澶囦俊鎭�
+ private static final String GET_DEVICE_URL = "/device/info";
/**
* 鏌ヨ鍏ㄩ儴鎽勫儚澶�
@@ -76,5 +95,110 @@
return removeById(Id);
}
+ /**
+ * 鑾峰彇钀ょ煶浜慳ccessToken
+ */
+
+ public String getAccessToken() {
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("appKey", AppKey);
+ paramMap.put("appSecret", Secret);
+ String s = HttpUtil.post(YSY_URL + ACCESSTOKEN_URL, paramMap);
+ YSY_AccessTokenDto accessTokenDto = JSON.parseObject(s, YSY_AccessTokenDto.class);
+ return accessTokenDto.getData().getAccessToken();
+ }
+
+ /**
+ * 娣诲姞钀ょ煶浜戞憚鍍忓ご
+ *
+ * @param accessToken 鎺堟潈杩囩▼鑾峰彇鐨刟ccess_token
+ * @param deviceSerial 璁惧搴忓垪鍙�,瀛樺湪鑻辨枃瀛楁瘝鐨勮澶囧簭鍒楀彿锛屽瓧姣嶉渶涓哄ぇ鍐�
+ * @param validateCode 璁惧楠岃瘉鐮侊紝璁惧鏈鸿韩涓婄殑鍏綅澶у啓瀛楁瘝
+ */
+ public YSY_MonitorDto addYSYMonitor(String accessToken, String deviceSerial, String validateCode) {
+
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", accessToken);
+ paramMap.put("deviceSerial", deviceSerial);
+ paramMap.put("validateCode", validateCode);
+ String s = HttpUtil.post(YSY_URL + ADD_DEVICE_URL, paramMap);
+ System.out.println(s);
+ YSY_MonitorDto monitorDto = JSON.parseObject(s, YSY_MonitorDto.class);
+ return monitorDto;
+ }
+
+
+ /**
+ * 鍒犻櫎钀ょ煶浜戞憚鍍忓ご
+ *
+ * @param accessToken 鎺堟潈杩囩▼鑾峰彇鐨刟ccess_token
+ * @param deviceSerial 璁惧搴忓垪鍙�,瀛樺湪鑻辨枃瀛楁瘝鐨勮澶囧簭鍒楀彿锛屽瓧姣嶉渶涓哄ぇ鍐�
+ */
+ public YSY_MonitorDto deleteYSYMonitor(String accessToken, String deviceSerial) {
+
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", accessToken);
+ paramMap.put("deviceSerial", deviceSerial);
+ String s = HttpUtil.post(YSY_URL + DELETE_DEVICE_URL, paramMap);
+ System.out.println(s);
+ YSY_MonitorDto monitorDto = JSON.parseObject(s, YSY_MonitorDto.class);
+ return monitorDto;
+ }
+
+ /**
+ * 鑾峰彇钀ょ煶浜戞憚鍍忓ご鍗曚釜璁惧淇℃伅
+ *
+ * @param accessToken 鎺堟潈杩囩▼鑾峰彇鐨刟ccess_token
+ * @param deviceSerial 璁惧搴忓垪鍙�,瀛樺湪鑻辨枃瀛楁瘝鐨勮澶囧簭鍒楀彿锛屽瓧姣嶉渶涓哄ぇ鍐�
+ */
+ public YSY_MonitorDto getYSYMonitorInfo(String accessToken, String deviceSerial) {
+
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", accessToken);
+ paramMap.put("deviceSerial", deviceSerial);
+ String s = HttpUtil.post(YSY_URL + GET_DEVICE_URL, paramMap);
+ System.out.println(s);
+ YSY_MonitorDto monitor = JSON.parseObject(s, YSY_MonitorDto.class);
+ return monitor;
+ }
+
+ /**
+ * 灏嗘憚鍍忓ご璁惧鐩稿叧淇℃伅瀛樺偍鍒版暟鎹簱
+ *
+ * @param monitor 鎽勫儚澶村璞�
+ * @return
+ */
+ public boolean addMonitorInfoToTable(Monitor monitor) {
+ Monitor one = getOne(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, monitor.getDeviceSerial()));
+ if (one == null) {
+ return save(monitor);
+ } else {
+ return updateById(monitor);
+ }
+ }
+
+ /**
+ * 灏嗘憚鍍忓ご璁惧鐩稿叧淇℃伅鏇存柊鍒版暟鎹簱
+ *
+ * @param monitor 鎽勫儚澶村璞�
+ * @return
+ */
+ public boolean upDateMonitorInfo(Monitor monitor) {
+ if (monitor.getId() == null) {
+ throw new BusinessException("缂哄皯鎽勫儚澶寸浉鍏矷D鍙傛暟");
+ }
+
+ Monitor info = getById(monitor.getId());
+
+ if (info == null) {
+ throw new BusinessException("鎵句笉鍒扮浉鍏虫憚鍍忓ご");
+ }
+ if (!monitor.getDevicesCode().equals(info.getDevicesCode()) || !monitor.getDeviceSerial().equals(info.getDeviceSerial())) {
+ throw new BusinessException("鐩戞帶搴忓垪鍙锋垨鐩戞帶楠岃瘉鐮佷笉姝g‘");
+ }
+
+ return updateById(monitor);
+ }
+
}
--
Gitblit v1.9.3