From f4914a5f40ffb7340d8f99b4f730b4b665901918 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期三, 27 四月 2022 18:24:58 +0800
Subject: [PATCH] 大气数据推送到LED
---
ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java | 1
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java | 29 ++++++++++++++
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java | 28 ++++++++++++++
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java | 3 +
4 files changed, 61 insertions(+), 0 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
index 7e3eb33..30f6786 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
@@ -7,6 +7,7 @@
import com.sandu.common.domain.CommonPage;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.object.BaseConditionVO;
+import com.sandu.common.security.annotation.AnonymousAccess;
import com.sandu.common.util.ResponseUtil;
import com.sandu.common.util.SpringContextHolder;
import com.sandu.ximon.admin.dto.DeviceStatus;
@@ -266,6 +267,7 @@
/**
* 鎺ㄩ�佸ぇ姘旇澶囧埌璇虹摝
*/
+ @AnonymousAccess
@GetMapping("/pushAidDataToNova/{poleId}")
public ResponseVO<Object> pushAirDataToNova(@PathVariable Long poleId) {
return ResponseUtil.success(poleService.pushAirDataToNova(poleId));
@@ -274,6 +276,7 @@
/**
* 鎺ㄩ�佸ぇ姘旇澶囧埌鐔欒
*/
+ @AnonymousAccess
@GetMapping("/pushAirDataToXiXun/{poleId}")
public ResponseVO<Object> pushAirDataToXiXun(@PathVariable Long poleId) {
return ResponseUtil.success(poleService.pushAirDataToXiXun(poleId));
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 7aab8c1..414ab56 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
@@ -8,6 +8,7 @@
import com.sandu.common.execption.BusinessException;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.util.ResponseUtil;
+import com.sandu.common.util.SpringContextHolder;
import com.sandu.ximon.admin.entity.ProgramPro;
import com.sandu.ximon.admin.param.LEDScheduleParam_xixun;
import com.sandu.ximon.admin.param.SetBrightnessParam;
@@ -409,4 +410,32 @@
}
return ResponseUtil.success(list);
}
+
+
+ /**
+ * 鍏抽棴澶╂皵鎺ㄩ��
+ */
+ @GetMapping("/closeWeatherPush/{id}")
+ public ResponseVO<Object> closeWeatherPush(@PathVariable Long id) {
+ if(id==null){
+ throw new BusinessException("鏈�夋嫨LED灞�");
+ }
+ SpringContextHolder.getBean(PoleService.class).closeXiXunAirPush(id);
+ return ResponseUtil.success("鍏抽棴鎴愬姛");
+ }
+
+ /**
+ * 娓呭睆鎿嶄綔
+ */
+ @GetMapping("/clearScreen")
+ public ResponseVO<Object> clearScreen(@RequestBody List<String> codes) {
+
+ if(codes.isEmpty()){
+ throw new BusinessException("鏈�夋嫨LED灞�");
+ }
+ for(String playerId : codes) {
+ lightemitUtils.clear(playerId);
+ }
+ return ResponseUtil.success("娓呭睆鎴愬姛");
+ }
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
index 709c063..d4e8de8 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -30,6 +30,7 @@
import com.sandu.ximon.admin.param.*;
import com.sandu.ximon.admin.redis.LightKey;
import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.LightemitUtils;
import com.sandu.ximon.admin.utils.RedisUtils;
import com.sandu.ximon.admin.utils.response.VnnoxResult;
import com.sandu.ximon.admin.vo.PoleBindVO;
@@ -873,6 +874,12 @@
*/
public boolean pushAirDataToXiXun(Long poleId) {
Pole pole = getById(poleId);
+ //鍒ゆ柇褰掑睘鏉�
+ if (SecurityUtils.getClientId() != null) {
+ if (!pole.getClientId().equals(SecurityUtils.getUserId()) && !pole.getUserId().equals(SecurityUtils.getUserId())) {
+ throw new BusinessException("鏃犳潈闄愭搷浣�");
+ }
+ }
PoleBinding air = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 3));
PoleBinding xixun = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 10));
if (pole == null) {
@@ -890,6 +897,27 @@
return SpringContextHolder.getBean(XiXunPlayerService.class).pushWeather(xixun.getDeviceCode(), data, pole);
}
+
+ /**
+ * 鍏抽棴鐔欒澶ф皵鎺ㄩ��
+ */
+ public void closeXiXunAirPush(Long poleId) {
+ Pole pole = getById(poleId);
+ if (SecurityUtils.getClientId() != null) {
+ if (!pole.getClientId().equals(SecurityUtils.getUserId()) && !pole.getUserId().equals(SecurityUtils.getUserId())) {
+ throw new BusinessException("鏃犳潈闄愭搷浣�");
+ }
+ }
+ PoleBinding air = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 3));
+ PoleBinding xixun = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 10));
+ if (pole == null || air == null || xixun == null) {
+ throw new BusinessException("璁惧涓嶅瓨鍦�");
+ }
+ //鍏抽棴鎺ㄩ��
+ SpringContextHolder.getBean(LightemitUtils.class).clear(xixun.getDeviceCode());
+
+ }
+
/**
* 鎺ㄩ�佸ぇ姘旂洃娴嬫暟鎹埌novaLED
*/
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java
index c11e998..6aea084 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java
@@ -34,6 +34,7 @@
program.toJson(),
new CommonHeader(CommonHeader.JSON, true)
);
+ System.out.println(program.toJson());
LogUtils.error("鑺傜洰鎾斁response:"+result);
return JSON.parseObject(result,VnnoxResultResponse.class);
}
--
Gitblit v1.9.3