From 48ba446936b51fffafa7c3600c0dadc6ac0e8c20 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 10 七月 2020 10:52:13 +0800
Subject: [PATCH] 2020-07-10-01

---
 ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs |  114 +++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 99 insertions(+), 15 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs
index fefadb2..a4417a0 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceListMainForm.cs
@@ -1,4 +1,5 @@
 锘縰sing Shared.Common;
+using Shared.Phone.UserCenter.SmartSound;
 using System;
 using System.Collections.Generic;
 using System.Text;
@@ -12,7 +13,10 @@
     public class DeviceListMainForm : EditorCommonForm
     {
         #region 鈻� 鍙橀噺澹版槑___________________________
-
+        /// <summary>
+        /// 鏅鸿兘闊崇
+        /// </summary>
+        private MySmartSoundControl smmartSoundView = null;
         /// <summary>
         /// 缃戝叧鎺т欢
         /// </summary>
@@ -86,6 +90,18 @@
             //娓呯┖bodyFrame
             this.ClearBodyFrame();
 
+            smmartSoundView = new MySmartSoundControl();
+            bodyFrameLayout.AddChidren(smmartSoundView);
+            smmartSoundView.InitControl();
+            //褰撳墠涓嶆槸铏氭嫙浣忓畢鐨勮瘽
+            if (Config.Instance.Home.IsVirtually == false)
+            {
+                smmartSoundView.ButtonClickEvent += (sernder, e) =>
+                {
+                    var form = new SmartSoundListForm();
+                    form.AddForm();
+                };
+            }
             //鍒濆鍖栫綉鍏宠鎺т欢
             GatewayResourse.NowSelectGatewayId = GatewayResourse.AppOldSelectGatewayId;
             var nowGateway = HdlGatewayLogic.Current.GetLocalGateway(GatewayResourse.AppOldSelectGatewayId);
@@ -232,7 +248,7 @@
             //鎻愮ず鏂扮増鏈�
             var btnNew = new InformationTipView(rowMenu.btnIcon);
             btnNew.Visible = false;
-            rowMenu.frameTable.AddChidren(btnNew, ChidrenBindMode.BindEventOnly);
+            rowMenu.frameTable.AddChidren(btnNew, ChidrenBindMode.BindEvent);
             rowMenu.AddTag("btnNew", btnNew);
 
             //妫�娴嬭澶囨槸鍚︽嫢鏈夊畾浣嶇殑鍔熻兘
@@ -317,17 +333,35 @@
             var listDevice = Common.LocalDevice.Current.GetDevicesByMac(deviceMac);
             if (isShow == true)
             {
-                //灞曞紑妯″紡鏃讹紝鎵╁ぇ渚濇嵁涓�:瀹冩湁鍑犱釜瀛愭帶浠�
-                heightValue = (listDevice.Count + 1) * (ControlCommonResourse.ListViewRowHeight + rowInfo.frameTable.rowSpace);
-                //鏍囬鑷繁灏辨槸涓�涓瓙鎺т欢
-                if (rowInfo.frameTable.ChildrenCount == 1)
+                //鑾峰彇杩欎竴鍫嗚澶囨椂灞炰簬浠�涔堢被鍨嬬殑
+                var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice);
+                if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_SimpleMultifunction)
                 {
-                    //鑾峰彇杩欎竴鍫嗚澶囨椂灞炰簬浠�涔堢被鍨嬬殑
-                    var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice);
-                    foreach (CommonDevice info in listDevice)
+                    var listTemp = Common.LocalDevice.Current.GetMutilfunctionPanelByMac(listDevice);
+                    //灞曞紑妯″紡鏃讹紝鎵╁ぇ渚濇嵁涓�:瀹冩湁鍑犱釜瀛愭帶浠�
+                    heightValue = (listTemp.Count + 1) * (ControlCommonResourse.ListViewRowHeight + rowInfo.frameTable.rowSpace);
+                    //鏍囬鑷繁灏辨槸涓�涓瓙鎺т欢
+                    if (rowInfo.frameTable.ChildrenCount == 1)
                     {
-                        //鍔犺浇瀹冪殑鍒楄〃
-                        this.AddDeviceDetailRow(rowInfo.frameTable, info, deviceEnumInfo);
+                        foreach (CommonDevice info in listTemp)
+                        {
+                            //鍔犺浇瀹冪殑鍒楄〃
+                            this.AddDeviceDetailRow(rowInfo.frameTable, info, deviceEnumInfo);
+                        }
+                    }
+                }
+                else
+                {
+                    //灞曞紑妯″紡鏃讹紝鎵╁ぇ渚濇嵁涓�:瀹冩湁鍑犱釜瀛愭帶浠�
+                    heightValue = (listDevice.Count + 1) * (ControlCommonResourse.ListViewRowHeight + rowInfo.frameTable.rowSpace);
+                    //鏍囬鑷繁灏辨槸涓�涓瓙鎺т欢
+                    if (rowInfo.frameTable.ChildrenCount == 1)
+                    {
+                        foreach (CommonDevice info in listDevice)
+                        {
+                            //鍔犺浇瀹冪殑鍒楄〃
+                            this.AddDeviceDetailRow(rowInfo.frameTable, info, deviceEnumInfo);
+                        }
                     }
                 }
             }
@@ -625,7 +659,7 @@
                 if (HdlGatewayLogic.Current.GetRealGateway(ref realWay, nowGateway) == true)
                 {
                     //閲嶆柊璁剧疆浣忓畢ID(杩欎釜搴旇鏄笉缁忚繃APP,鐩存帴鎶婄綉鍏虫仮澶嶄簡鍑哄巶璁剧疆)
-                    if (HdlGatewayLogic.Current.HomeIdIsEmpty(realWay.getGatewayBaseInfo.HomeId) == true)
+                    if (HdlGatewayLogic.Current.HomeIdIsEmpty(realWay.HomeId) == true)
                     {
                         //鏄剧ず杩涘害鏉�
                         ProgressBar.Show();
@@ -701,13 +735,14 @@
         /// </summary>
         /// <param name="gateWay">缃戝叧瀵硅薄</param>
         /// <param name="online">鍦ㄧ嚎鐘舵�佸彉鏇村悗鐨勭姸鎬�</param>
-        public override void GatewayOnlinePush(ZbGateway gateWay, bool online)
+        /// <param name="hadGwOnline">2020.05.25杩藉姞:姝や綇瀹呮槸鍚︽嫢鏈夌綉鍏冲湪绾�</param>
+        public override void GatewayOnlinePush(ZbGateway gateWay, bool online, bool hadGwOnline)
         {
             if (this.gatewayViewRow == null)
             {
                 return;
             }
-            if (HdlGatewayLogic.Current.GetGatewayId(gateWay) == this.gatewayViewRow.zbGatewayId)
+            if (gateWay.GwId == this.gatewayViewRow.zbGatewayId)
             {
                 Application.RunOnMainThread(() =>
                 {
@@ -1126,9 +1161,10 @@
                 this.UseClickStatu = false;
                 if (i_zbGateway != null)
                 {
-                    this.zbGatewayId = HdlGatewayLogic.Current.GetGatewayId(i_zbGateway);
+                    this.zbGatewayId = i_zbGateway.GwId;
                 }
                 this.BackgroundColor = UserCenterColor.Current.White;
+                this.Y = Application.GetRealHeight(174);
                 this.Height = Application.GetRealHeight(173);
             }
 
@@ -1243,7 +1279,55 @@
                 }
             }
         }
+        #endregion
 
+        #region 鈻� 鑷畾涔夋櫤鑳介煶绠辨帶浠禵____________________
+
+        /// <summary>
+        /// 鑷畾涔夌綉鍏虫帶浠�
+        /// </summary>
+        private class MySmartSoundControl : FrameRowControl
+        {
+
+            /// <summary>
+            /// 缃戝叧鍚嶅瓧鎺т欢
+            /// </summary>
+            private NormalViewControl btnName = null;
+
+            /// <summary>
+            /// 鑷畾闊崇鍏虫帶浠�
+            /// </summary>
+            public MySmartSoundControl()
+            {
+                this.UseClickStatu = false;
+                this.BackgroundColor = UserCenterColor.Current.White;
+                this.Height = Application.GetRealHeight(173);
+
+                //this.InitControl();
+            }
+
+
+            /// <summary>
+            /// 鍒濆鍖栨帶浠�
+            /// </summary>
+            public void InitControl()
+            {
+                //鍥炬爣
+                var btnIcon = this.AddLeftIcon(81);
+                btnIcon.UnSelectedImagePath = "SmartSound/SoundIcon.png";
+
+                //鏄剧ず鏂囨湰
+                btnName = this.AddLeftCaption(string.Empty, 700);
+                btnName.Height = Application.GetRealHeight(60);
+                btnName.TextSize = 15;
+                btnName.Y = Application.GetRealHeight(57);
+                btnName.Text = "灏忓害灏忓害";
+
+                this.AddRightArrow();
+                this.AddMostRightView("", 300, false).Name = "smartSoundLayout";
+                this.AddBottomLine();
+            }
+        }
         #endregion
     }
 }

--
Gitblit v1.8.0