From e55c8b0a92eb9715edd90c31dfd4de51a47b588b Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 04 十一月 2022 17:40:08 +0800
Subject: [PATCH] changes
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java | 40 ++++++++++++++++++++++++++++++++++++----
1 files changed, 36 insertions(+), 4 deletions(-)
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 8db3b31..83a33ec 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
@@ -10,9 +10,11 @@
import com.sandu.ximon.admin.config.RealtimeServerBean;
import com.sandu.ximon.admin.entity.*;
import com.sandu.ximon.admin.param.PoleBindingParam;
+import com.sandu.ximon.admin.redis.DeviceRedisKey;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.*;
import com.sandu.ximon.admin.vo.EquipmentInfomation;
+import com.sandu.ximon.admin.vo.RedisDeviceStatus;
import com.sandu.ximon.dao.domain.Pole;
import com.sandu.ximon.dao.domain.PoleLightemitEntity;
import com.sandu.ximon.dao.enums.OrderByEnums;
@@ -24,6 +26,7 @@
import org.springframework.context.ApplicationContext;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
import java.io.File;
@@ -53,6 +56,9 @@
@Autowired
LedSFileService xiXunFileService;
+
+ @Autowired
+ RedisUtils redisUtils;
@PostConstruct
public void init() {
@@ -238,7 +244,7 @@
*/
public EquipmentInfomation getLedByLightControlCodeInfo(String lightControlCode) {
EquipmentInfomation equipmentInfo = new EquipmentInfomation();
- equipmentInfo.setEquipmentType("鐔欒LED");
+ equipmentInfo.setEquipmentType("SLED");
if (lightControlCode == null || lightControlCode.trim().length() == 0) {
return equipmentInfo;
}
@@ -261,6 +267,7 @@
}
+ @Transactional(rollbackFor = Exception.class)
public void savePoleLightemit(PoleLightemitEntity poleLightemit) {
boolean save = this.save(poleLightemit);
// 缁戝畾鐏潌
@@ -268,9 +275,13 @@
if (save && poleLightemit.getStreetlightId() != null) {
PoleBindingParam poleBindingParam = new PoleBindingParam();
poleBindingParam.setDeviceCode(poleLightemit.getLightemitControlCode());
- poleBindingParam.setDeviceType(1);
+ poleBindingParam.setDeviceType(10);
poleBindingParam.setDeviceName(poleLightemit.getLightemitName());
- poleBindingService.bindPole(poleLightemit.getStreetlightId(), poleBindingParam);
+
+ if (SpringContextHolder.getBean(PoleService.class).getById(poleLightemit.getStreetlightId()) == null) {
+ throw new BusinessException("鐏潌涓嶅瓨鍦�");
+ }
+ boolean b = poleBindingService.bindPole(poleLightemit.getStreetlightId(), poleBindingParam);
}
/**
@@ -330,7 +341,7 @@
public boolean deletePoleLightemit(List<Long> ledIds) {
List<PoleLightemitEntity> poleLightemitEntities = listByIds(ledIds);
- if (poleLightemitEntities != null && poleLightemitEntities.size() != 0) {
+ if (poleLightemitEntities != null && poleLightemitEntities.size() == 0) {
throw new BusinessException("璁惧涓嶅瓨鍦�");
}
@@ -562,4 +573,25 @@
Map map = JSON.parseObject(requestBody, Map.class);
return map;
}
+
+
+ /**
+ * 鍚慠edis涓瓨鍏ヨ澶囩姸鎬�
+ */
+ public void setCacheData() {
+ list().forEach(
+ xiXun -> {
+ RedisDeviceStatus deviceStatus = new RedisDeviceStatus();
+ deviceStatus.setDeviceId(xiXun.getLightemitControlCode());
+ boolean ledOnLine = lightemitUtils.getLedOnLine(xiXun.getLightemitControlCode());
+ if (ledOnLine) {
+ deviceStatus.setStatus(0);
+ } else {
+ deviceStatus.setStatus(1);
+ }
+ redisUtils.set(DeviceRedisKey.XIXUN + xiXun.getLightemitControlCode(), JSON.toJSONString(deviceStatus));
+// redisUtils.delete(DeviceRedisKey.XIXUN + xiXun.getLightemitControlCode());
+ }
+ );
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3