From 4b378188ce972df432b23d9cb73babb6cc0679c6 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期五, 17 一月 2020 14:56:15 +0800
Subject: [PATCH] 合并代码 ver.10086

---
 ZigbeeApp/Shared/Phone/UserCenter/Device/PirSensor/PirSensorBindTargetSettionForm.cs |   46 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 43 insertions(+), 3 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/PirSensor/PirSensorBindTargetSettionForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/PirSensor/PirSensorBindTargetSettionForm.cs
index f1f280b..0a4211b 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/PirSensor/PirSensorBindTargetSettionForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/PirSensor/PirSensorBindTargetSettionForm.cs
@@ -421,7 +421,11 @@
             this.listEsixtDevice.Clear();
             foreach (var device in listDevice)
             {
-                this.listEsixtDevice.Add(Common.LocalDevice.Current.GetDeviceMainKeys(device));
+                string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(device);
+                if (listEsixtDevice.Contains(mainKeys) == false)
+                {
+                    listEsixtDevice.Add(mainKeys);
+                }
             }
             //鑾峰彇PIR浼犳劅鍣ㄧ殑銆愬厜鎰熺瓑绾ф�诲埢搴︺��
             this.lightLevelCount = await HdlDevicePirSensorLogic.Current.GetPirLightAbilitySize(this.deviceIASZone);
@@ -549,11 +553,18 @@
             {
                 //鍒犻櫎缁戝畾鐩爣
                 var listDelDevice = new List<CommonDevice>();
+                var listLightDevice = new List<CommonDevice>();
                 foreach (string mainKey in listEsixtDevice)
                 {
                     if (this.listSaveDevice.Contains(mainKey) == false)
                     {
-                        listDelDevice.Add(Common.LocalDevice.Current.GetDevice(mainKey));
+                        var myDevice = Common.LocalDevice.Current.GetDevice(mainKey);
+                        listDelDevice.Add(myDevice);
+                        if (myDevice.Type == DeviceType.DimmableLight)
+                        {
+                            //濡傛灉鏄皟鍏夊櫒鐨勮瘽,鐗规畩涓�鐐�
+                            listLightDevice.Add(myDevice);
+                        }
                     }
                 }
                 if (listDelDevice.Count > 0)
@@ -566,12 +577,30 @@
                         this.CloseProgressBar();
                         return;
                     }
+                    if (listLightDevice.Count > 0)
+                    {
+                        //鍒犻櫎璋冨厜鍣ㄩ暈
+                        listSucess = await HdlDeviceBindLogic.Current.DeleteDeviceTarget(deviceIASZone, listLightDevice, 8);
+                        if (listSucess == null || listSucess.Count == 0)
+                        {
+                            //鍏抽棴杩涘害鏉�
+                            this.CloseProgressBar();
+                            return;
+                        }
+                    }
                 }
                 //缁戝畾鐩爣
                 var listBind = new List<CommonDevice>();
+                listLightDevice = new List<CommonDevice>();
                 foreach (var mainKey in listSaveDevice)
                 {
-                    listBind.Add(Common.LocalDevice.Current.GetDevice(mainKey));
+                    var myDevice = Common.LocalDevice.Current.GetDevice(mainKey);
+                    listBind.Add(myDevice);
+                    if (myDevice.Type == DeviceType.DimmableLight)
+                    {
+                        //濡傛灉鏄皟鍏夊櫒鐨勮瘽,鐗规畩涓�鐐�
+                        listLightDevice.Add(myDevice);
+                    }
                 }
                 if (listSaveDevice.Count > 0)
                 {
@@ -583,6 +612,17 @@
                         this.CloseProgressBar();
                         return;
                     }
+                    if (listLightDevice.Count > 0)
+                    {
+                        //缁戝畾璋冨厜闀�
+                        listSucess = await HdlDeviceBindLogic.Current.BindDeviceTarget(deviceIASZone, listLightDevice, 8);
+                        if (listSucess == null || listSucess.Count == 0)
+                        {
+                            //鍏抽棴杩涘害鏉�
+                            this.CloseProgressBar();
+                            return;
+                        }
+                    }
                 }
             }
             //淇濆瓨pir閰嶇疆淇℃伅

--
Gitblit v1.8.0