From 16604a593202f2f87adf71abd57d036fe7da3b52 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期一, 18 十一月 2019 10:39:42 +0800
Subject: [PATCH] 同步了全部的代码

---
 ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs |   53 +++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 41 insertions(+), 12 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs
index f3149a5..6f43d97 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs
@@ -158,12 +158,8 @@
             //鏍规嵁MAC鍚堝苟璁惧鍒楄〃
             this.MargeAllDeviceByMac(listDevice);
 
-            Application.RunOnMainThread(() =>
+            HdlThreadLogic.Current.RunMain(() =>
             {
-                if (this.Parent == null)
-                {
-                    return;
-                }
                 var listOta = new List<OTADevice>();
                 foreach (var macAddress in this.dicRowInfo.Keys)
                 {
@@ -176,6 +172,7 @@
                     //娣诲姞璁惧鐨勮彍鍗曡
                     this.AddDeviceMenuRow(macAddress);
                 }
+
                 //娣诲姞搴曢儴闂撮殭
                 var frameTemp = new FrameLayout();
                 frameTemp.Height = Application.GetRealHeight(23);
@@ -215,10 +212,9 @@
             rowInfo.MenuRow = rowMenu;
             //鍚戝彸鍥炬爣
             var btnRight = rowMenu.frameTable.AddMostRightEmptyIcon(58, 58);
-            rowMenu.frameTable.ChangedChidrenBindMode(btnRight, ChidrenBindMode.NotBind);
-            btnRight.UseClickStatu = false;
             btnRight.UnSelectedImagePath = "Item/Next.png";
             btnRight.SelectedImagePath = "Item/Down.png";
+            rowMenu.frameTable.ChangedChidrenBindMode(btnRight, ChidrenBindMode.NotBind);
 
             //鎻愮ず鏂扮増鏈�
             var btnNew = new InformationTipView(rowMenu.btnIcon);
@@ -248,9 +244,21 @@
             //灞曞紑,鎶樺彔
             btnRight.ButtonClickEvent += (sender, e) =>
             {
-                btnRight.IsSelected = !btnRight.IsSelected;
-                //灞曞紑鎴栬�呮姌鍙犳槑缁嗗垪琛�
-                this.ShowDetailList(deviceMac, btnRight.IsSelected);
+                //鍥炶矾鏁板ぇ浜�1鎵嶅睍寮�
+                if (Common.LocalDevice.Current.GetDevicesCountByMac(deviceMac) > 1)
+                {
+                    btnRight.IsSelected = !btnRight.IsSelected;
+                    //灞曞紑鎴栬�呮姌鍙犳槑缁嗗垪琛�
+                    this.ShowDetailList(deviceMac, btnRight.IsSelected);
+                }
+                else
+                {
+                    btnNew.Visible = false;
+                    var form = new DeviceMacInfoEditorForm();
+                    form.AddForm(deviceMac);
+                    //鐣岄潰璺宠浆,璁板綍褰撳墠鐨勬鍦ㄦ搷浣滅殑璁惧鐨凪ac鍦板潃
+                    this.nowActionDeviceMac = deviceMac;
+                }
             };
 
             rowMenu.frameTable.ButtonClickEvent += (sender, e) =>
@@ -369,6 +377,23 @@
             {
                 var form = new DeviceMacInfoEditorForm();
                 form.AddForm(device.DeviceAddr);
+            }
+            else if (deviceEnumInfo.BeloneType == DeviceBeloneType.A绐楀笜)
+            {
+                var form = new DeviceMacInfoEditorForm();
+                form.AddForm(device.DeviceAddr);
+            }
+            //pir浼犳劅鍣�
+            else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.Sensor_Pir)
+            {
+                var form = new DevicePirSensor.PirSensorBindTargetSettionForm();
+                form.AddForm((IASZone)device);
+            }
+            //涓ぎ绌鸿皟
+            else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.AirConditioner_ZbGateway)
+            {
+                var form = new DeviceAirConditioner.IndoorUnitSettionForm();
+                form.AddForm((AC)device);
             }
             //闈㈡澘璁惧
             else if (deviceEnumInfo.BeloneType == DeviceBeloneType.A鎸夐敭闈㈡澘)
@@ -599,11 +624,11 @@
                 return;
             }
             string gwId = HdlGatewayLogic.Current.GetGatewayId(GatewayResourse.NowSelectGateway);
-            HdlThreadLogic.Current.RunThread(async () =>
+            HdlThreadLogic.Current.RunThread(() =>
             {
                 //杩欓噷涓昏鍙槸鑾峰彇鍦ㄧ嚎鐘舵��
                 var zbway = HdlGatewayLogic.Current.GetLocalGateway(gwId);
-                var result = await Common.LocalDevice.Current.GetDeviceListFromGateway(zbway, false, this.ReceiveDeviceStatuPush, ShowErrorMode.NO);
+                var result = Common.LocalDevice.Current.GetDeviceListFromGateway(zbway, false, this.ReceiveDeviceStatuPush, ShowErrorMode.NO);
             });
         }
 
@@ -999,6 +1024,10 @@
             {
                 //鑾峰彇鏈湴缃戝叧瀵硅薄
                 ZbGateway zbway = HdlGatewayLogic.Current.GetLocalGateway(zbGatewayId);
+                if (zbway == null)
+                {
+                    return;
+                }
                 btnName.Text = HdlGatewayLogic.Current.GetGatewayName(zbway);
                 if (HdlGatewayLogic.Current.CheckGatewayOnlineByFlag(zbway) == false)
                 {

--
Gitblit v1.8.0