From f673c7d56dd23407371243e48e5a241a42e0ed0b Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期一, 18 四月 2022 17:36:48 +0800
Subject: [PATCH] 用户信息

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java |  212 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 203 insertions(+), 9 deletions(-)

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 84cc7e6..9a9b077 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
@@ -1,38 +1,80 @@
 package com.sandu.ximon.admin.controller;
 
 import com.sandu.common.domain.ResponseVO;
+import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.util.ResponseUtil;
+import com.sandu.ximon.admin.dto.YSY_MonitorDto;
 import com.sandu.ximon.admin.param.MonitorParam;
+import com.sandu.ximon.admin.security.PermissionConfig;
 import com.sandu.ximon.admin.service.MonitorService;
+import com.sandu.ximon.dao.bo.MonitorBo;
 import com.sandu.ximon.dao.domain.Monitor;
+import com.sandu.ximon.dao.enums.MenuEnum;
+import com.sandu.ximon.dao.mapper.MonitorMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
 
+/**
+ * 鎽勫儚澶�
+ */
 @RestController
 @AllArgsConstructor
 @RequestMapping("/v1/admin/monitor")
 public class MonitorController {
     private final MonitorService monitorService;
 
-    @GetMapping
-    public ResponseVO<Object> listMonitor() {
-        List<Monitor> list = monitorService.listMonitor();
-        return ResponseUtil.successPage(list);
-    }
+    private final MonitorMapper monitorMapper;
+    private PermissionConfig permissionConfig;
+
 
     /**
      * 妯$硦鏌ヨ
      *
      * @return
      */
-    @GetMapping("/listMonitorByKeyword")
-    public ResponseVO<Object> listMonitorByKeyword(@RequestBody MonitorParam monitorParam) {
-        List<Monitor> list = monitorService.listMonitorByKeyword(monitorParam);
-        return ResponseUtil.successPage(list);
+    @PostMapping("/listMonitor")
+    public ResponseVO<Object> listMonitorByKeyword(BaseConditionVO baseConditionVO, @RequestBody(required = false) MonitorParam monitorParam) {
+//        //鏌ヨ鏁版嵁搴撶殑鎽勫儚澶翠俊鎭垪琛�
+//        if (monitorParam == null) {
+//            list = monitorService.listMonitorByKeyword(baseConditionVO, new MonitorParam());
+//        } else {
+//            list = monitorService.listMonitorByKeyword(baseConditionVO, monitorParam);
+//        }
+        if (!permissionConfig.check(MenuEnum.MONITOR_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+
+        List<String> list;
+        list = monitorMapper.listMonitorDeviceSerial();
+
+        MonitorParam monitorParam1;
+        for (String devices_serial : list) {
+            monitorParam1 = new MonitorParam();
+            monitorParam1.setAccessToken(monitorService.getAccessToken());
+            monitorParam1.setDeviceSerial(devices_serial);
+            getYSYMonitorInfoAndaddMonitorToTable(monitorParam1);
+        }
+        //杩斿洖鏌ヨ鐨勬憚鍍忓ご淇℃伅鍒楄〃
+        List<MonitorBo> listresult;
+        if (monitorParam == null) {
+            listresult = monitorService.listMonitorByKeyword(baseConditionVO, new MonitorParam());
+        } else {
+            listresult = monitorService.listMonitorByKeyword(baseConditionVO, monitorParam);
+        }
+
+        return ResponseUtil.successPage(listresult);
     }
 
+
+    /**
+     * 鍒犻櫎鏁版嵁搴撲腑钀ょ煶浜戞憚鍍忓ご
+     *
+     * @param id
+     * @return
+     */
     @PostMapping("/delete/{id}")
     public ResponseVO<Object> deleteMonitor(@PathVariable Long id) {
         boolean result = monitorService.deleteMonitor(id);
@@ -42,4 +84,156 @@
             return ResponseUtil.fail("鎿嶄綔澶辫触");
         }
     }
+
+    /**
+     * 鑾峰彇钀ょ煶浜慉ccessToken
+     *
+     * @return AccessToken
+     */
+    @GetMapping("/getAccessToken")
+    public ResponseVO<Object> getAccessToken() {
+        return ResponseUtil.success(monitorService.getAccessToken());
+    }
+
+    /**
+     * 鑾峰彇钀ょ煶浜戞憚鍍忓ご淇℃伅
+     *
+     * @param
+     * @return
+     */
+    @GetMapping("/getYSYInfo/{deviceSerial}")
+    public ResponseVO<Object> getMonitorInfo(@PathVariable String deviceSerial) {
+        return ResponseUtil.success(monitorService.getMonitorInfo(deviceSerial));
+    }
+
+    /**
+     * 娣诲姞钀ょ煶浜戞憚鍍忓ご
+     *
+     * @param monitorParam 娣诲姞鎽勫儚澶寸粨鏋�
+     * @return
+     */
+    @PostMapping("/addYSYMonitor")
+    public ResponseVO<Object> addYSYMonitor(@RequestBody MonitorParam monitorParam) {
+        YSY_MonitorDto addMonitorDto = monitorService.addYSYMonitor(monitorParam.getAccessToken(), monitorParam.getDeviceSerial(), monitorParam.getValidateCode());
+//        YSY_MonitorDto addMonitorDto = monitorService.addYSYMonitor(monitorParam.getAccessToken(), monitorParam.getDeviceSerial());
+
+        if ("200".equals(addMonitorDto.getCode())) {
+            return ResponseUtil.success(addMonitorDto);
+        } else if ("20017".equals(addMonitorDto.getCode())) {
+            //宸茬粡琚嚜宸辨坊鍔犵殑鎽勫儚澶撮渶瑕佹坊鍔犲埌鏁版嵁搴�
+            boolean falg = getYSYMonitorInfoAndaddMonitorToTable(monitorParam);
+            if (falg) {
+                return ResponseUtil.success("娣诲姞鎽勫儚澶存垚鍔燂紒");
+
+            } else {
+                return ResponseUtil.fail("娣诲姞鎽勫儚澶村け璐ワ紒");
+            }
+
+        } else {
+            return ResponseUtil.fail(addMonitorDto.getMsg());
+        }
+    }
+
+    /**
+     * 鍒犻櫎钀ょ煶浜戞憚鍍忓ご
+     *
+     * @param monitorParam 娣诲姞鎽勫儚澶寸粨鏋�
+     * @return
+     */
+    @PostMapping("/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
+     */
+    @PostMapping("/getYSYMonitorInfo")
+    public ResponseVO<Object> getYSYMonitorInfo(@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.setEquipmentState(getMonitorDto.getData().getStatus());
+            monitor.setIsEncrypt(getMonitorDto.getData().getIsEncrypt());
+            monitor.setAddTime(getMonitorDto.getData().getUpdateTime());
+            monitor.setNetAddress(getMonitorDto.getData().getNetAddress());
+            monitorService.addMonitorInfoToTable(monitor);
+
+            return ResponseUtil.success(getMonitorDto.getData());
+        } else {
+            return ResponseUtil.fail(getMonitorDto.getMsg());
+        }
+    }
+
+
+    /**
+     * 鑾峰彇鍗曚釜璁惧淇℃伅骞朵笖瀛樺偍鍒版暟鎹簱
+     *
+     * @param monitorParam
+     * @return
+     */
+    @PostMapping("/getYSYMonitorInfoAndaddMonitorToTable")
+    public boolean 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.setEquipmentState(getMonitorDto.getData().getStatus());
+            monitor.setIsEncrypt(getMonitorDto.getData().getIsEncrypt());
+            monitor.setAddTime(getMonitorDto.getData().getUpdateTime());
+            monitor.setNetAddress(getMonitorDto.getData().getNetAddress());
+
+            return monitorService.addMonitorInfoToTable(monitor);
+        } else {
+            throw new BusinessException(getMonitorDto.getMsg());
+        }
+    }
+
+    /**
+     * 缂栬緫鎽勫儚澶磋澶囦俊鎭�
+     */
+    @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("鏇存柊鏁版嵁澶辫触");
+        }
+    }
+
+    /**
+     * 鑾峰彇鎽勫儚澶碪RL鎾斁鍦板潃
+     */
+    @PostMapping("/getMonitorVideoUrl")
+    public ResponseVO<Object> getMonitorVideoUrl(@RequestBody MonitorParam monitorParam) {
+        String URL = monitorService.getMonitorVideoUrl(monitorParam.getAccessToken(),
+                monitorParam.getDeviceSerial(), monitorParam.getProtocol(), monitorParam.getExpireTime());
+
+        return ResponseUtil.success(URL);
+    }
+
 }

--
Gitblit v1.9.3