From 694962918618b6d9531d8ca876a6746e030387f1 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 23 八月 2022 11:38:26 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightTaskService.java |   42 +++++++++++++++++++++++++++---------------
 1 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightTaskService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightTaskService.java
index 0571c99..b4bdff6 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightTaskService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightTaskService.java
@@ -126,7 +126,8 @@
                     .in(LightTaskPoleRelation::getPoleId, poleIdList).eq(LightTaskPoleRelation::getLightAddress, "0002"));
             oldLightTaskStatusAndPoles.addAll(list);
         } else {
-            oldLightTaskStatusAndPoles = lightTaskPoleRelationService.list(Wrappers.lambdaQuery(LightTaskPoleRelation.class).in(LightTaskPoleRelation::getPoleId, poleIdList).eq(LightTaskPoleRelation::getLightAddress, param.getLightAddress()));
+            oldLightTaskStatusAndPoles = lightTaskPoleRelationService.list(Wrappers.lambdaQuery(LightTaskPoleRelation.class)
+                    .in(LightTaskPoleRelation::getPoleId, poleIdList).eq(LightTaskPoleRelation::getLightAddress, param.getLightAddress()));
         }
 
         /**
@@ -247,7 +248,7 @@
         } else {
             if (CollectionUtil.isNotEmpty(oldPoleIdList)) {
                 oldRelation = lightTaskPoleRelationService.list(Wrappers.lambdaQuery(LightTaskPoleRelation.class).in(LightTaskPoleRelation::getPoleId, oldPoleIdList)
-                        .eq(LightTaskPoleRelation::getLightAddress, param.getLightAddress()));
+                        .ne(LightTaskPoleRelation::getTaskId, taskId).eq(LightTaskPoleRelation::getLightAddress, param.getLightAddress()));
             }
         }
 
@@ -265,15 +266,12 @@
         }
 
 
-
-
-
         List<LightTaskPoleRelation> newPoleAll = new ArrayList<>();
         List<LightTaskPoleRelation> newPoleSuccess = new ArrayList<>();
         List<LightTaskPoleRelation> newPoleFail = new ArrayList<>();
         if (CollectionUtil.isNotEmpty(newPoleIdList)) {
             //鏂扮伅鏉嗕笅鍙戞柊浠诲姟
-            Map<String, List<LightTaskPoleRelation>> newPoleMap = sendControllerFrame(newPoleIdList, lightTask.getFramePayload(), param.getLightAddress());
+            Map<String, List<LightTaskPoleRelation>> newPoleMap = sendControllerFrame(newPoleIdList, newLightTask.getFramePayload(), param.getLightAddress());
 
             //newPoleAll闆嗗悎鍚庨潰鐢ㄤ簬瀛樺偍鍏崇郴琛�
             newPoleAll = newPoleMap.getOrDefault("all", new ArrayList<>());
@@ -285,7 +283,7 @@
         List<LightTaskPoleRelation> oldPoleSuccess = new ArrayList<>();
         if (CollectionUtil.isNotEmpty(oldPoleIdList)) {
             //瑕嗙洊鎿嶄綔鐏潌
-            Map<String, List<LightTaskPoleRelation>> oldPoleMap = sendControllerFrame(oldPoleIdList, lightTask.getFramePayload(), param.getLightAddress());
+            Map<String, List<LightTaskPoleRelation>> oldPoleMap = sendControllerFrame(oldPoleIdList, newLightTask.getFramePayload(), param.getLightAddress());
             oldPoleFail = oldPoleMap.getOrDefault("fail", new ArrayList<>());
             oldPoleSuccess = oldPoleMap.getOrDefault("success", new ArrayList<>());
         }
@@ -294,9 +292,9 @@
         List<LightTaskPoleRelation> closePoleFail = new ArrayList<>();
         List<LightTaskPoleRelation> closePoleSuccess = new ArrayList<>();
         System.out.println(closeLight + "closeLight");
-        if (CollectionUtil.isNotEmpty(closeLight) && closeLight != null&& closeLight.get(0) != null) {
+        if (CollectionUtil.isNotEmpty(closeLight) && closeLight != null && closeLight.get(0) != null) {
             //鍏崇伅鍐呭抚
-            String framePayloadClose = "7f0000007f173b00";
+            String framePayloadClose = "7F0000007F173B00";
             //鍏崇伅鎿嶄綔鐏潌
             Map<String, List<LightTaskPoleRelation>> closePoleMap = sendControllerFrame(closeLight, framePayloadClose, param.getLightAddress());
             closePoleFail = closePoleMap.getOrDefault("fail", new ArrayList<>());
@@ -351,7 +349,9 @@
         List<LightTaskPoleRelation> all = new ArrayList<>();
         all.addAll(newPoleSuccess);
         all.addAll(oldPoleFail);
-//        all.addAll(closePoleFail);
+        all.addAll(oldPoleSuccess);
+        all.addAll(oldPoleFail);
+        all.addAll(closePoleFail);
 
 
         List<Long> allPoleId = new ArrayList<>();
@@ -384,11 +384,11 @@
          * 涓嬪彂璺伅浠诲姟鏃ュ織璁板綍缁撴潫
          */
 
-        if (newPoleFail.isEmpty() && closePoleFail.isEmpty()) {
+        if (newPoleFail.isEmpty() && closePoleFail.isEmpty() && oldPoleFail.isEmpty()) {
             return "缂栬緫鎴愬姛";
-        } else if (newPoleSuccess.isEmpty() && closePoleSuccess.isEmpty()) {
+        } else if (newPoleSuccess.isEmpty() && closePoleSuccess.isEmpty() && oldPoleSuccess.isEmpty()) {
             throw new BusinessException("缂栬緫澶辫触,璇锋鏌ュ師鏈夎澶囧拰缂栬緫鍚庣殑璁惧鏄惁鍦ㄧ嚎!");
-        } else if (!closePoleFail.isEmpty() && !newPoleSuccess.isEmpty()) {
+        } else if (!closePoleFail.isEmpty() && !newPoleSuccess.isEmpty() && !oldPoleFail.isEmpty()) {
             return "鍘熶换鍔′腑瀛樺湪涓嬪彂寮傚父锛屽師浠诲姟淇濈暀锛屽垱寤烘柊浠诲姟杩涜淇濆瓨";
         } else if (!newPoleFail.isEmpty() && !newPoleSuccess.isEmpty()) {
             return "鏂颁换鍔′腑瀛樺湪涓嬪彂寮傚父锛屽拷鐣ュ紓甯告搷浣滅殑鐏潌";
@@ -407,10 +407,11 @@
      */
     public A5LightTimerRespInnerFrame sendTimeRRpc(String framePayload, String deviceCode, String lightAddress) {
         IRequestFrame requestFrame = FrameBuilder.builderA5().innerFrame(new A5LightTimerReqInnerFrame(framePayload, lightAddress)).orderType(A5OrderEnum.REQUEST_LIGHT_DATA.getCode()).build();
+        System.out.println(requestFrame + "          --------requestFrame");
+
         WrapResponseCommonFrame<A5LightTimerRespInnerFrame> responseCommonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceCode, requestFrame, A5LightTimerRespInnerFrame.class);
-
+        System.out.println(responseCommonFrame + "         -----------responseCommonFrame");
         StoreOperationRecordsUtils.storeInnerFrameData(deviceCode, "鍗曠伅甯�-鎺х伅", requestFrame, responseCommonFrame);
-
         return Optional.ofNullable(responseCommonFrame).map(WrapResponseCommonFrame::getResponseInnerFrame).orElse(null);
     }
 
@@ -613,6 +614,8 @@
      * @return
      */
     private Map<String, List<LightTaskPoleRelation>> sendControllerFrame(List<Long> poleIdList, String framePayload, String lightAddress) {
+
+        System.out.println("framePayload:" + framePayload);
         List<LightTaskPoleRelation> lightTaskPoleRelationList = new ArrayList<>();
         //鎴愬姛
         List<LightTaskPoleRelation> success = new ArrayList<>();
@@ -705,6 +708,7 @@
         map.put("success", success);
         map.put("fail", fail);
         map.put("all", lightTaskPoleRelationList);
+        log.error("鍙戦�佹帶鍒跺櫒甯х粨鏋滐細{}", map);
         return map;
     }
 
@@ -898,4 +902,12 @@
 
         }
     }
+
+    public boolean clearLightTask(List<Long> poleIds) {
+        Map<String, List<LightTaskPoleRelation>> ffff = sendControllerFrame(poleIds, "", "FFFF");
+        ffff.get("success").forEach(lightTaskPoleRelation -> {
+            lightTaskPoleRelationService.remove(Wrappers.lambdaUpdate(LightTaskPoleRelation.class).eq(LightTaskPoleRelation::getPoleId, lightTaskPoleRelation.getPoleId()).eq(LightTaskPoleRelation::getTaskId, lightTaskPoleRelation.getTaskId()));
+        });
+        return true;
+    }
 }

--
Gitblit v1.9.3