From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 30 八月 2022 09:37:38 +0800
Subject: [PATCH] 合并了IOS的代码

---
 ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceRelayCardControl.cs |   57 ++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceRelayCardControl.cs b/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceRelayCardControl.cs
index 22bd1ae..56ee25c 100755
--- a/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceRelayCardControl.cs
+++ b/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceRelayCardControl.cs
@@ -1,4 +1,5 @@
-锘縰sing System;
+锘縰sing Shared.Phone.UserCenter;
+using System;
 using System.Collections.Generic;
 using System.Text;
 using ZigBee.Device;
@@ -16,9 +17,9 @@
         /// 鍒濆鍖栨帶浠�
         /// </summary>
         /// <param name="i_device"></param>
-        public override void InitControl(CommonDevice i_device)
+        public override void InitControl(CommonDevice i_device, Common.Room i_nowSelectRoom)
         {
-            base.InitControl(i_device);
+            base.InitControl(i_device, i_nowSelectRoom);
 
             //娣诲姞璺宠浆娣卞害鍗$墖淇℃伅浜嬩欢
             this.AddDetailInfoEvent(i_device);
@@ -27,9 +28,18 @@
             var btnSwitch = this.AddSwitchControl();
             btnSwitch.ButtonClickEvent += (sender, e) =>
             {
+                //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�
+                if (Common.Config.Instance.Home.IsVirtually == true)
+                {
+                    //鐩存帴鍙樻洿缂撳瓨
+                    ((LightBase)i_device).OnOffStatus = btnSwitch.IsSelected == true ? 0 : 1;
+                    this.RefreshControlInfo(this.device);
+                    return;
+                }
+
                 bool setStatu = !btnSwitch.IsSelected;
                 //鍙樻洿鍗$墖鐘舵��
-                this.SetCardStatu(setStatu);
+                this.SetCardOpenStatu(setStatu);
                 //妫�娴嬫槸鍚﹁幏鍙栫綉鍏冲弽棣堢殑缁撴灉,濡傛灉缃戝叧娌℃湁鍥炲,鍒欎細寮瑰嚭娑堟伅
                 this.StartCheckResponeResult(!setStatu);
 
@@ -62,12 +72,25 @@
             {
                 Common.CommonPage.Instance.IsDrawerLockMode = true;
 
-                var lightControl = new Phone.Device.Light.OnOffControl();
-                UserView.HomePage.Instance.AddChidren(lightControl);
-                UserView.HomePage.Instance.PageIndex += 1;
-                lightControl.IsDrawerLockMode = true;
-                lightControl.Show(i_device, UserCenter.HdlRoomLogic.Current.CurrentRoom);
-                lightControl.action += this.CardDetailInfoBackEvent;
+                int backHeight = 0;
+                if (i_device.DfunctionType == DeviceFunctionType.A寮�鍏�)
+                {
+                    backHeight = 1290;
+                }
+                else if (i_device.DfunctionType == DeviceFunctionType.A鎻掑骇)
+                {
+                    backHeight = 1290;
+                }
+                else
+                {
+                    backHeight = 1316;
+                }
+
+                //缁х數鍣ㄧ被鍨嬬殑娣卞害鍗$墖鐣岄潰(鍚┖姘斿紑鍏�)
+                var form = new ControlForm.DeviceRelayDetailCardForm();
+                form.RowOrCardControl = this;
+                form.AddForm(i_device, this.nowSelectRoom, 965, backHeight);
+                form.FormCloseEvent += this.CardDetailInfoBackEvent;
             };
         }
 
@@ -92,10 +115,18 @@
         /// <summary>
         /// 鍙戦�佽幏鍙栫姸鎬佸懡浠�
         /// </summary>
-        /// <param name="i_device"></param>
-        public override void SendStatuComand(CommonDevice i_device)
+        public override void SendStatuComand()
         {
-            Device.DeviceLogic.ReadDeviceAttributeLogic.Instance.SendLightStatuComand(i_device);
+            if (Common.Config.Instance.Home.IsVirtually == true)
+            {
+                //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥
+                return;
+            }
+            //妫�娴嬭兘鍚﹀彂閫佽幏鍙栫姸鎬佸懡浠�
+            if (this.CheckCanSendStatuComand() == true)
+            {
+                HdlDeviceAttributeLogic.Current.SendLightStatuComand(this.device);
+            }
         }
 
         #endregion

--
Gitblit v1.8.0