From 3aa397ab145382935492b11c1f18c9634e69910b Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期四, 10 十二月 2020 16:45:00 +0800
Subject: [PATCH] 请合并,门锁和晾衣架第一版代码
---
ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceColorLightCardControl.cs | 58 +++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 47 insertions(+), 11 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceColorLightCardControl.cs b/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceColorLightCardControl.cs
index f764ca3..f62b952 100755
--- a/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceColorLightCardControl.cs
+++ b/ZigbeeApp/Shared/Phone/MainPage/Controls/DeviceCard/DeviceColorLightCardControl.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,6 +28,21 @@
var btnSwitch = this.AddSwitchControl();
btnSwitch.ButtonClickEvent += (sender, e) =>
{
+ //鑾峰彇褰撳墠浜害
+ int level = Convert.ToInt32(i_device.GetType().InvokeMember("Level", System.Reflection.BindingFlags.GetField, null, i_device, null));
+ //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�
+ if (Common.Config.Instance.Home.IsVirtually == true)
+ {
+ //鐩存帴鍙樻洿缂撳瓨
+ ((LightBase)i_device).OnOffStatus = btnSwitch.IsSelected == true ? 0 : 1;
+ if (((LightBase)i_device).OnOffStatus == 1 && level == 0)
+ {
+ //濡傛灉褰撳墠鏄墦寮�鐘舵��,骞朵笖浜害涓�0鐨勮瘽,鍒欓渶瑕佸彉鎴�100%浜害
+ i_device.GetType().InvokeMember("Level", System.Reflection.BindingFlags.SetField, null, i_device, new object[] { 100 });
+ }
+ this.RefreshControlInfo(this.device);
+ return;
+ }
bool setStatu = !btnSwitch.IsSelected;
//鍙樻洿鍗$墖鐘舵��
this.SetCardOpenStatu(setStatu);
@@ -37,7 +53,21 @@
{
//鎵撳紑
this.SetDeviceStatuText(Language.StringByID(R.MyInternationalizationString.uOpen1));
- i_device.SwitchControl(1);
+ if (level == 0)
+ {
+ //濡傛灉褰撳墠鏄墦寮�鐘舵��,骞朵笖浜害涓�0鐨勮瘽,鍒欓渶瑕佸彉鎴�100%浜害
+ i_device.GetType().InvokeMember("SetLevel", System.Reflection.BindingFlags.InvokeMethod, null, i_device, new object[] { 254 });
+ }
+ else
+ {
+ i_device.SwitchControl(1);
+ HdlThreadLogic.Current.RunThread(() =>
+ {
+ //鑾峰彇鐏厜浜害
+ System.Threading.Thread.Sleep(300);
+ HdlDeviceAttributeLogic.Current.SendLevelStatuComand(i_device);
+ });
+ }
}
else
{
@@ -60,12 +90,13 @@
//娣卞害鍗$墖淇℃伅
this.ButtonClickEvent += (sender, e) =>
{
- var dimmableLightControl = new Phone.Device.Light.DimmableLightControl();
- UserView.HomePage.Instance.AddChidren(dimmableLightControl);
- UserView.HomePage.Instance.PageIndex += 1;
- dimmableLightControl.IsDrawerLockMode = true;
- dimmableLightControl.Show(i_device, UserCenter.HdlRoomLogic.Current.CurrentRoom);
- dimmableLightControl.action += this.CardDetailInfoBackEvent;
+ Common.CommonPage.Instance.IsDrawerLockMode = true;
+
+ //褰╃伅,璋冨厜鍣ㄧ被鍨嬬殑娣卞害鍗$墖鐣岄潰
+ var form = new ControlForm.DeviceColorLightDetailCardForm();
+ form.RowOrCardControl = this;
+ form.AddForm(i_device, this.nowSelectRoom, 965, 1316);
+ form.FormCloseEvent += this.CardDetailInfoBackEvent;
};
}
@@ -92,10 +123,15 @@
/// </summary>
public override void SendStatuComand()
{
+ if (Common.Config.Instance.Home.IsVirtually == true)
+ {
+ //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥
+ return;
+ }
//妫�娴嬭兘鍚﹀彂閫佽幏鍙栫姸鎬佸懡浠�
if (this.CheckCanSendStatuComand() == true)
{
- Device.DeviceLogic.ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(this.device);
+ HdlDeviceAttributeLogic.Current.SendDimmableLightStatuComand(this.device);
}
}
--
Gitblit v1.8.0