From f04d30ab99bbf96b9ece042478e7054a5130aab3 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期六, 02 四月 2022 16:44:46 +0800
Subject: [PATCH] 熙讯亮度调节接口新增

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/param/SetBrightnessParam.java     |   17 ++++++++
 ximon-admin/src/main/java/com/sandu/ximon/admin/utils/request/SetBrightness.java  |   17 ++++++++
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java   |   27 ++++++++++++-
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java |    9 ++++
 ximon-admin/src/main/java/com/sandu/ximon/admin/utils/LightemitUtils.java         |   15 +++++++
 5 files changed, 83 insertions(+), 2 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
index 9f946e2..9005768 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
@@ -12,6 +12,7 @@
 import com.sandu.common.util.ResponseUtil;
 import com.sandu.ximon.admin.entity.ProgramPro;
 import com.sandu.ximon.admin.param.LEDScheduleParam_xixun;
+import com.sandu.ximon.admin.param.SetBrightnessParam;
 import com.sandu.ximon.admin.param.SetScreenOpenParam;
 import com.sandu.ximon.admin.param.SetVolumeParam;
 import com.sandu.ximon.admin.security.SecurityUtils;
@@ -23,7 +24,6 @@
 import com.sandu.ximon.dao.domain.PoleXixunPlayerEntity;
 import com.sandu.ximon.dao.enums.AdministratorEnums;
 import lombok.AllArgsConstructor;
-import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.*;
@@ -63,7 +63,7 @@
      */
     @PostMapping("/updateProgram")
     // @RequiresPermissions("pole:polexixunplayer:update")
-    public ResponseVO<Object> update(@RequestBody  ProgramPro programPro) {
+    public ResponseVO<Object> update(@RequestBody ProgramPro programPro) {
         PoleXixunPlayerEntity byId = xiXunPlayerService.getById(programPro.getProgramId());
         if (byId == null) {
             throw new BusinessException("鏈�夋嫨LED灞�");
@@ -352,6 +352,29 @@
     /*
   璁剧疆闊抽噺
    */
+    @PostMapping("/setBrightness")
+    public ResponseVO<Object> setBrightness(@RequestBody SetBrightnessParam setBrightnessParam) {
+
+        if (setBrightnessParam == null || setBrightnessParam.getIds() == null || setBrightnessParam.getBrightness() > 255) {
+            throw new BusinessException("鍙傛暟閿欒涓虹┖鎴栦寒搴︿笉鑳借秴杩�255");
+        }
+
+        Collection poleLightemitControllers = poleLightemitService.listByIds(Arrays.asList(setBrightnessParam.getIds()));
+        if (!poleLightemitControllers.isEmpty()) {
+            Iterator iterator = poleLightemitControllers.iterator();
+            while (iterator.hasNext()) {
+                PoleLightemitEntity poleLightemitEntity = (PoleLightemitEntity) iterator.next();
+                poleLightemitService.setBrightness(poleLightemitEntity.getLightemitControlCode(), setBrightnessParam.getBrightness());
+            }
+            return ResponseUtil.success("璁剧疆浜害鎴愬姛");
+        } else {
+            throw new BusinessException("鏈�夋嫨LED灞�");
+        }
+    }
+
+    /*
+ 璁剧疆闊抽噺
+  */
     @PostMapping("/setVolume")
     public ResponseVO<Object> setVolume(@RequestBody SetVolumeParam setVolumeEntity) {
 
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/SetBrightnessParam.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/SetBrightnessParam.java
new file mode 100644
index 0000000..61fd1ab
--- /dev/null
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/SetBrightnessParam.java
@@ -0,0 +1,17 @@
+package com.sandu.ximon.admin.param;
+
+import lombok.Data;
+
+/**
+ * @program: machine-fast
+ * @description: 璁剧疆浜害
+ * @author: YSS
+ * @create: 2019-09-18 10:46
+ **/
+@Data
+public class SetBrightnessParam {
+
+    private Long[] ids;
+
+    private Integer brightness ;
+}
\ No newline at end of file
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
index 758790f..2d1f493 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
@@ -546,6 +546,15 @@
     public void setVolume(String lightemitControlCode, Integer volume) {
         lightemitUtils.setVoiume(lightemitControlCode, volume);
     }
+       /*
+    鏍规嵁led灞忕紪鐮佽缃煶閲�
+     */
+
+    @Async("taskExecutor")
+    public void setBrightness(String lightemitControlCode, Integer brightness) {
+        lightemitUtils.setBrightness(lightemitControlCode, brightness);
+    }
+
 
 
 //    public List<PoleLightemitEntity> listOfStreetlight(String streetlightId) {
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 460f387..af55daf 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
@@ -345,6 +345,21 @@
         LogUtils.error("璁剧疆缁撴灉:-------------------" + result);
     }
 
+
+    /*
+  璁剧疆led浜害
+   */
+    public void setBrightness(String ledCode, Integer brightness) {
+
+        SetBrightness setBrightness = new SetBrightness();
+        setBrightness.arg1 = brightness;
+        String postBody = new Gson().toJson(setBrightness);
+
+        //璇锋眰
+        String result = post(realtimeServerBean.getCommand() + ledCode, postBody);
+        LogUtils.error("璁剧疆缁撴灉:-------------------" + result);
+    }
+
     //    鑾峰彇led闊抽噺
     public String getVoiume(String ledCode) {
         GetVolume getVolume = new GetVolume();
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/request/SetBrightness.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/request/SetBrightness.java
new file mode 100644
index 0000000..0f2f4c5
--- /dev/null
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/request/SetBrightness.java
@@ -0,0 +1,17 @@
+package com.sandu.ximon.admin.utils.request;
+
+/**
+ * @program:
+ * @description: 璁剧疆浜害
+ * @author: YSS
+ * @create: 2019-09-17 18:03
+ **/
+public class SetBrightness {
+
+    public final String type = "callCardService";
+
+    public final String fn = "setBrightness";
+
+    public Integer arg1 = 6;
+
+}

--
Gitblit v1.9.3