From 6decb63d865de6b551324fd9782555786132170e Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期二, 07 十一月 2023 16:11:22 +0800
Subject: [PATCH] 1、修改相机异步登录 2、sdk切换更改为策略模式 3、修复手动巡检停止录像bug

---
 ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java |   49 ++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 46 insertions(+), 3 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
index a68a2e4..314679f 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
@@ -1,5 +1,8 @@
 package com.ruoyi.sy.controller;
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import javax.annotation.PostConstruct;
 import javax.annotation.Resource;
@@ -393,19 +396,59 @@
 
     @GetMapping("getCarPicture")
     @ApiOperation("娓呮筏鑾峰彇鐓х墖")
-    public AjaxResult getCarNearPositionByCarId(String carId){
+    public AjaxResult getCarNearPositionByCarId(String carId) throws UnsupportedEncodingException {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
+        Date currentTime = new Date();
+        long tenSeconds = 1000L;
+        Date beforeTenSeconds = new Date(currentTime.getTime() - tenSeconds);
+        String startTime = sdf.format(beforeTenSeconds);
+        System.out.println(startTime);
         String usersId = SecurityUtils.getUserId();
         ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
         String syURL = sysConfigService.getSYURL();
-        Map<String, Object> result = ardSyCarService.getCarPicture(carId,syURL,ardSyUser);
+        String sessionId = ardSyCarService.getSessionId(syURL,ardSyUser);
+        System.out.println(sessionId);
+        //鑾峰彇鎽勫儚閫氶亾淇℃伅
+        Map<String, Object> result = ardSyCarService.getCarPicture(carId,syURL,sessionId);
         String vs = "";
         try {
+            //鎻愬彇閫氶亾淇℃伅
             Map<String,Object> map = ((List<Map<String,Object>>)result.get("list")).get(0);
             Map<String, Object> videos = (Map<String, Object>) JSON.parse((String) map.get("videos"));
+            System.out.println(videos);
             vs = (String) videos.get("vs");
         } catch (Exception e) {
             return AjaxResult.error("璇ヨ溅杈嗘病鏈夋憚鍍忛�氶亾鏃犵収鐗囨暟鎹紒");
         }
-        return AjaxResult.success(vs);
+        //绛涢�夐�氶亾淇℃伅
+        String[] vsArray = vs.split(",");
+        List<String> channelList = new ArrayList<>();
+        for (int i = 0; i < vsArray.length; i++) {
+            channelList.add(vsArray[i].substring(0,1));
+        }
+        //鎷嶇収
+        Map<String,Object> sendCmdMap = ardSyCarService.sendCmd(ardSyUser.getUserId(),syURL,sessionId,carId,channelList);
+        System.out.println(sendCmdMap);
+        //鑾峰彇鐓х墖
+        Map<String,Object> photoMap = ardSyCarService.getPhoto(syURL,carId,sessionId,startTime);
+        System.out.println(photoMap);
+        return AjaxResult.success(photoMap);
     }
+
+    @GetMapping("getVideo")
+    @ApiOperation("娓呮筏鑾峰彇瑙嗛")
+    public AjaxResult getVideo(String carId){
+        String usersId = SecurityUtils.getUserId();
+        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
+        String syURL = sysConfigService.getSYURL();
+        Map<String,Object> video = ardSyCarService.getVideo(syURL,carId,ardSyUser);
+        return AjaxResult.success(video);
+    }
+
+    @GetMapping("getThreeOne")
+    @ApiOperation("鑾峰彇涓変竴瑙嗛鍦板潃")
+    public AjaxResult getThreeOne() {
+        return AjaxResult.success("鑾峰彇鍦板潃鎴愬姛锛�",sysConfigService.selectConfigByKey("threeOneVideo"));
+    }
+
 }

--
Gitblit v1.9.3