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/service/PoleBindingService.java | 38 +++++++++++++++++++++++++++++++++++---
1 files changed, 35 insertions(+), 3 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleBindingService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleBindingService.java
index f46f4a7..8e63a65 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleBindingService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleBindingService.java
@@ -5,6 +5,7 @@
import com.sandu.common.execption.BusinessException;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.common.util.SpringContextHolder;
+import com.sandu.ximon.admin.newnova.led.NewNovaLedService;
import com.sandu.ximon.admin.param.PoleBindingParam;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.dao.domain.*;
@@ -12,6 +13,7 @@
import com.sandu.ximon.dao.mapper.PoleBindingMapper;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -32,6 +34,7 @@
* @param param
* @return
*/
+ @Transactional(rollbackFor = Exception.class)
public boolean bindPole(Long poleId, PoleBindingParam param) {
Integer deviceType = param.getDeviceType();
@@ -95,6 +98,9 @@
case PoleBindingEnums.ATMOSPHERIC_NONG_GENG:
size = SpringContextHolder.getBean(AirEquipmentNongGengService.class).list(Wrappers.lambdaQuery(AirEquipmentNongGeng.class).eq(AirEquipmentNongGeng::getMac, param.getDeviceCode())).size();
break;
+ case PoleBindingEnums.NEW_NOVA:
+ size = SpringContextHolder.getBean(NewNovaLedService.class).list(Wrappers.lambdaQuery(NewNovaLed.class).eq(NewNovaLed::getSn, param.getDeviceCode())).size();
+ break;
default:
break;
}
@@ -103,7 +109,7 @@
}
- LambdaQueryWrapper<PoleBinding> eq = Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId);
+ LambdaQueryWrapper<PoleBinding> eq = Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceType, param.getDeviceType()).eq(PoleBinding::getPoleId, poleId);
List<PoleBinding> list = list(eq);
if (list.size() != 0) {
for (PoleBinding poleBinding : list) {
@@ -114,7 +120,8 @@
}
}
- PoleBinding one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, param.getDeviceCode()));
+ PoleBinding one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, param.getDeviceCode())
+ .eq(PoleBinding::getDeviceType, param.getDeviceType()));
if (one == null) {
//鍏呯數妗╀繚瀛樼粦瀹氬叧绯婚渶瑕佸厛鍒ゆ柇鏄笉鏄纭殑鐏潌
if (deviceType == 2) {
@@ -190,6 +197,31 @@
}
}
+
+ /**
+ * 鐏潌瑙g粦璁惧锛屽垹闄よ澶囧墠闇�瑕佽В缁�
+ *
+ * @param deviceCode
+ */
+ public boolean unBindPole(Long poleId, String deviceCode, Integer deviceType) {
+ if (deviceCode == null) {
+ throw new BusinessException("璁惧缂栧彿涓嶈兘涓虹┖");
+ }
+ PoleBinding one;
+ //鐩存帴鍒犻櫎璁惧涓嶉渶瑕佺伅鏉咺D
+ if (poleId == null) {
+ one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode).eq(PoleBinding::getDeviceType, deviceType));
+ } else {
+ one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode)
+ .eq(PoleBinding::getDeviceType, deviceType).eq(PoleBinding::getPoleId, poleId));
+ }
+ if (one != null) {
+ return removeById(one.getId());
+ } else {
+ throw new BusinessException("璁惧涓嶅瓨鍦ㄧ粦瀹氭儏鍐垫垨鐏潌ID涓嶆纭�");
+ }
+ }
+
/**
* 璁惧鍒犻櫎,鐩存帴瑙g粦璁惧鐩稿叧缁戝畾鏁版嵁
*
@@ -217,7 +249,7 @@
}
public PoleBinding getPoleIdByMac(String deviceCode) {
- return getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode));
+ return getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode).eq(PoleBinding::getDeviceType, 0));
}
--
Gitblit v1.9.3