From ec63fb17c5ba3e5b2a5a4106c25b4e249a2f980f Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 22 十一月 2022 18:44:51 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/utils/LightemitUtils.java |   87 +++++++++++++++++++++++--------------------
 1 files changed, 47 insertions(+), 40 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/LightemitUtils.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/LightemitUtils.java
index ee17684..e3c0de7 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/LightemitUtils.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/LightemitUtils.java
@@ -1,7 +1,9 @@
 package com.sandu.ximon.admin.utils;
 
+import cn.hutool.core.lang.Snowflake;
 import com.alibaba.fastjson.JSONObject;
 import com.google.gson.Gson;
+import com.sandu.common.file.FileUploadDto;
 import com.sandu.ximon.admin.config.RealtimeServerBean;
 import com.sandu.ximon.admin.service.PoleLightemitService;
 import com.sandu.ximon.admin.utils.request.*;
@@ -32,6 +34,9 @@
     private final MediaType JSON = MediaType.parse("application/json; charset=utf-8");
 
     private OkHttpClient client = new OkHttpClient();
+
+    @Autowired
+    private Snowflake snowflake;
 
 
     public void init() {
@@ -112,14 +117,14 @@
      *
      * @param ledCode
      */
-    public void clear(String ledCode) {
+    public String clear(String ledCode) {
         String postBody = new Gson().toJson(new Clear());
         //璇锋眰鍦板潃
         String url = realtimeServerBean.getCommand() + ledCode;
         //璇锋眰
-//        poleLightemitService.updateRequestBody(ledCode, "");
         String result = post(url, postBody);
         LogUtils.error("娓呭睆缁撴灉:" + result);
+        return result;
     }
 
     /**
@@ -129,10 +134,9 @@
      * @param username
      */
     public void postHtml(String ledCode, String username) {
-
+        //html缃戦〉鍐呭
         PostHtml postHtml = new PostHtml(realtimeServerBean.getUrl() + username + "_" + ledCode + ".html");
         String postBody = new Gson().toJson(postHtml);
-
         //璇锋眰鍦板潃
         String url = realtimeServerBean.getCommand() + ledCode;
         //淇濆瓨led鏁版嵁
@@ -147,35 +151,52 @@
      *
      * @param screenWidth
      * @param screenHeight
-     * @param filename
      * @param ledCode
      */
-    public void postVideo(String screenWidth, String screenHeight, String filename, String ledCode) {
+    public String postFile(String screenWidth, String screenHeight, String ledCode, FileUploadDto fileUploadDto) {
+
+        String fileUrl = fileUploadDto.getFileUrl();
+        String[] split = fileUrl.split("/");
+        String id = split[split.length - 1];
+
 
         //led寮�鍙戞澘涓嬭浇瑙嗛璇锋眰body
         DownloadFileToLocal downloadFileToLocal = new DownloadFileToLocal();
-        downloadFileToLocal.url = realtimeServerBean.getUrl() + filename;
-        downloadFileToLocal.path += filename;
+        downloadFileToLocal.url = realtimeServerBean.getUrl() + "https://ximonsmart.oss-cn-shanghai.aliyuncs.com/" + id;
+        downloadFileToLocal.path += fileUrl;
 
         //led寮�鍙戞澘涓嬭浇瑙嗛璇锋眰
         this.post(realtimeServerBean.getCommand() + ledCode, new Gson().toJson(downloadFileToLocal));
 
         //led寮�鍙戞澘瑙嗛鍒楄〃璇锋眰body
         SetPlayList setPlayList = new SetPlayList();
-        setPlayList.list[0] = "/data/data/com.xixun.xy.conn/files/local/abc/" + filename;
-//        setPlayList.pathList[0] = "";
+        setPlayList.list[0] = fileUrl;
+        setPlayList.pathList[0] = ledCode;
         try {
             setPlayList.width = Integer.valueOf(screenWidth);
             setPlayList.height = Integer.valueOf(screenHeight);
         } catch (Exception e) {
-            return;
+            return "鎺ㄩ�佸け璐�";
         }
         String postBody = new Gson().toJson(setPlayList);
-        //淇濆瓨led鏁版嵁
-        poleLightemitService.updateRequestBody(ledCode, postBody);
+
         //led寮�鍙戞澘瑙嗛鍒楄〃璇锋眰
-        this.post(realtimeServerBean.getCommand() + ledCode, postBody);
+        String post = this.post(realtimeServerBean.getCommand() + ledCode, postBody);
+        LogUtils.error("瑙嗛涓婁紶缁撴灉:----" + post);
+        if (post.contains("does not exist")) {
+            return "鎺ㄩ�佸け璐�";
+        } else {
+            //{"_type":"success","_id":"ce8dc3ff-dc88-43b7-8f55-60abd8700f1a","timestamp":1653555160535}
+            if (post.startsWith("{") && post.endsWith("}") && post.contains("_type\":\"success")) {
+                //淇濆瓨led鏁版嵁
+                poleLightemitService.updateRequestBody(ledCode, postBody);
+                return "鎺ㄩ�佹垚鍔�";
+            } else {
+                return "鎺ㄩ�佸け璐�";
+            }
+        }
     }
+
 
     /**
      * led灞忓瓧骞曡缃�
@@ -197,7 +218,6 @@
      * @param ledCode
      */
     public void clearVideoPlay(String ledCode) {
-//        poleLightemitService.updateRequestBody(ledCode, "");
         this.post(realtimeServerBean.getCommand() + ledCode, new Gson().toJson(new ClearVideoPlay()));
     }
 
@@ -207,7 +227,6 @@
      * @param ledCode
      */
     public void clearPlayerTask(String ledCode) {
-//        poleLightemitService.updateRequestBody(ledCode, "");
         this.post(realtimeServerBean.getCommand() + ledCode, new Gson().toJson(new ClearPlayerTask()));
     }
 
@@ -236,7 +255,6 @@
             return "";
         }
         String re;
-
         try {
             re = JSONObject.parseObject(result).get("result").toString();
         } catch (Exception e) {
@@ -258,9 +276,8 @@
      * @return
      */
     public String getIsScreenOpen(String ledCode) {
+        //鍙戦�佸睆骞曟槸鍚﹀紑鍚殑鎸囦护
         String result = this.post(realtimeServerBean.getCommand() + ledCode, new Gson().toJson(new IsScreenOpen()));
-        LogUtils.error("getIsScreenOpen:" + result);
-        //鑾峰彇base64鍥剧墖鏁版嵁
         if (StringUtils.isNotBlank(result)) {
             String re;
             try {
@@ -276,28 +293,18 @@
 
 
     public boolean getLedOnLine(String ledCode) {
+        //閫氳繃灞忓箷鏄惁寮�鍚寚浠よ幏鍙栧睆骞曟槸鍚﹀湪绾�
         String result = this.post(realtimeServerBean.getCommand() + ledCode, new Gson().toJson(new IsScreenOpen()));
-        LogUtils.error("getLedOnLine:" + result);
-        //鑾峰彇base64鍥剧墖鏁版嵁
-        if (StringUtils.isNotBlank(result)) {
-            String re;
-            if (result.contains("not exist")) {
-                return false;
-            } else {
-                return true;
-            }
-        } else {
-            return false;
-        }
+        result = result.trim();
+        return result.startsWith("{") && result.endsWith("}");
     }
 
 
-    /*
-   鎺у埗灞忓箷寮�鍏�
-    */
+    /**
+     * 鎺у埗灞忓箷寮�鍏�
+     */
     public String setScreenOpen(String ledCode, Boolean bool) {
         String result = this.post(realtimeServerBean.getCommand() + ledCode, new Gson().toJson(new setScreenOpen(bool)));
-        //鑾峰彇base64鍥剧墖鏁版嵁
         if (StringUtils.isNotBlank(result)) {
             String re = "";
             try {
@@ -320,8 +327,8 @@
 //        this.post(realtimeServerBean.getCommand() + lightemitControlCode, poleLightemitEntity.getRequestBody());
 //    }
 
-    /*
-    璁剧疆led闊抽噺
+    /**
+     * 璁剧疆led闊抽噺
      */
     public void setVoiume(String ledCode, Integer volume) {
 
@@ -335,9 +342,9 @@
     }
 
 
-    /*
-  璁剧疆led浜害
-   */
+    /**
+     * 璁剧疆led浜害
+     */
     public void setBrightness(String ledCode, Integer brightness) {
 
         SetBrightness setBrightness = new SetBrightness();

--
Gitblit v1.9.3