From 727a69f859060093e685582fa10e5de82dcc138a Mon Sep 17 00:00:00 2001
From: Van333 <van666666@foxmail.com>
Date: 星期四, 29 十二月 2022 15:37:49 +0800
Subject: [PATCH] 放假备份。完成集中控制器对接。

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleBindingService.java |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 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 9d4f0cd..300fcfc 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
@@ -12,6 +12,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 +33,7 @@
      * @param param
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public boolean bindPole(Long poleId, PoleBindingParam param) {
         Integer deviceType = param.getDeviceType();
 
@@ -39,6 +41,9 @@
         switch (deviceType.toString()) {
             case PoleBindingEnums.LIGHT:
                 size = SpringContextHolder.getBean(LightService.class).list(Wrappers.lambdaQuery(Light.class).eq(Light::getDeviceCode, param.getDeviceCode())).size();
+                break;
+            case PoleBindingEnums.PLC:
+                size = SpringContextHolder.getBean(PlcService.class).list(Wrappers.lambdaQuery(Plc.class).eq(Plc::getDeviceCode, param.getDeviceCode())).size();
                 break;
             case PoleBindingEnums.VONNOX:
                 size = SpringContextHolder.getBean(LedPlayerEntityService.class).list(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, param.getDeviceCode())).size();
@@ -103,7 +108,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 +119,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) {
@@ -191,13 +197,12 @@
     }
 
 
-
     /**
      * 鐏潌瑙g粦璁惧锛屽垹闄よ澶囧墠闇�瑕佽В缁�
      *
      * @param deviceCode
      */
-    public boolean unBindPole(Long poleId, String deviceCode,Integer deviceType) {
+    public boolean unBindPole(Long poleId, String deviceCode, Integer deviceType) {
         if (deviceCode == null) {
             throw new BusinessException("璁惧缂栧彿涓嶈兘涓虹┖");
         }
@@ -243,7 +248,7 @@
     }
 
     public PoleBinding getPoleIdByMac(String deviceCode) {
-        return getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode).eq(PoleBinding::getDeviceType,0));
+        return getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode).eq(PoleBinding::getDeviceType, 0));
     }
 
 

--
Gitblit v1.9.3