From d87400af518ebc9274f4447f06476959c3aa5102 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期二, 14 七月 2020 16:29:42 +0800 Subject: [PATCH] Merge branch 'dev-tzy' into dev-2020xm --- ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs | 74 ++++++++++++++++++++++++++++-------- 1 files changed, 57 insertions(+), 17 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs index 9e51971..87fda05 100644 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs @@ -13,7 +13,7 @@ /// </summary> public class DeviceMacInfoEditorForm : EditorCommonForm { - #region 鈻� 鍙橀噺澹版槑___________________________ + #region 鈻� 鍙橀噺澹版槑___________________________ /// <summary> /// 璁惧瀵硅薄 /// </summary> @@ -296,7 +296,7 @@ } else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_SimpleEnvironment) { - //娣诲姞銆愮粦瀹氱洰鏍囥�戣(绠�绾︾幆澧冮潰鏉跨敤) + //娣诲姞銆愮粦瀹氱洰鏍囥�戣(绠�绾︾幆澧冮潰鏉跨敤) this.AddSimplePanelSettionRow(); } else @@ -712,7 +712,8 @@ private void AddPirSensorWorkModeRow() { if (this.deviceEnumInfo.ConcreteType != DeviceConcreteType.Sensor_Pir - || deviceEnumInfo.IsHdlDevice == false) + || deviceEnumInfo.IsHdlDevice == false + || this.listNewDevice.Count != 2) { return; } @@ -741,7 +742,8 @@ /// </summary> private void AddPirSensorBindRow() { - if (this.deviceEnumInfo.ConcreteType != DeviceConcreteType.Sensor_Pir) + if (this.deviceEnumInfo.ConcreteType != DeviceConcreteType.Sensor_Pir + || this.listNewDevice.Count != 2) { return; } @@ -1406,7 +1408,7 @@ /// <param name="oTADevice">ota璁惧</param> private void SetDeviceVersionInfo(PicViewControl btnNewVersion, OTADevice oTADevice) { - HdlThreadLogic.Current.RunThread(async () => + HdlThreadLogic.Current.RunThread(() => { bool receiveImageInfo = false; //璁剧疆璁惧鍏ㄩ儴鐨勯暅鍍忎俊鎭� @@ -1418,7 +1420,7 @@ while (receiveImageInfo == false && count > 0) { //绛夊緟璁惧闀滃儚鐨勫弽棣� - await Task.Delay(300); + System.Threading.Thread.Sleep(300); count--; } //绉婚櫎浜嬩欢 @@ -1426,7 +1428,7 @@ oTADevice = Common.LocalDevice.Current.GetOTADevice(listNewDevice[0].DeviceAddr); //娣诲姞鍗囩骇鍥轰欢淇℃伅(鎴愪笉鎴愬姛閮芥棤鎵�璋�) - var result = await HdlFirmwareUpdateLogic.AddFirmwareVersionInfo(FirmwareLevelType.ZigbeeDevice, oTADevice.HwVersion.ToString(), oTADevice.ImgTypeId.ToString()); + var result = HdlFirmwareUpdateLogic.AddFirmwareVersionInfo(FirmwareLevelType.ZigbeeDevice, oTADevice.HwVersion.ToString(), oTADevice.ImgTypeId.ToString()); //鑾峰彇璁惧鏈�鏂扮増鏈� var deviceFirmware = HdlFirmwareUpdateLogic.GetFirmwareMostVersionInfo(FirmwareLevelType.ZigbeeDevice, @@ -1505,16 +1507,16 @@ //妫�娴嬫鍥炶矾鏄惁鎷ユ湁瀹氫綅鍔熻兘(鎷跨鐐规渶灏忕殑閭d釜鍥炶矾鍘诲畾浣�) bool canTest = Common.LocalDevice.Current.DeviceIsCanFixedPosition(listNewDevice[0]); - TopRightMenuControl frame = null; - - if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_SimpleMultifunction) - { - frame = new TopRightMenuControl(3, 1); - } - else - { - frame = new TopRightMenuControl(canTest == true ? 2 : 1, 1); - } + TopRightMenuControl frame = null; + + if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_SimpleMultifunction) + { + frame = new TopRightMenuControl(3, 1); + } + else + { + frame = new TopRightMenuControl(canTest == true ? 2 : 1, 1); + } string deviceMenu = string.Empty; if (canTest == true) @@ -1561,6 +1563,23 @@ //鍚屾鎸囧畾璁惧 this.SynchronizationDevice(); }); + } + + //鍚屾 + deviceMenu = Language.StringByID(R.MyInternationalizationString.Synchronization); + if (Common.LocalDevice.Current.DeviceIsCanFixedPosition(listNewDevice[0])) + { + frame.AddRowMenu(deviceMenu, "", "Item/SynchronizationSelected.png", () => + { + //濡傛灉褰撳墠浣忓畢鏄櫄鎷熶綇瀹�,姝ゅ姛鑳芥棤鏁� + if (Common.Config.Instance.Home.IsVirtually == true) + { + return; + } + + //鍚屾鎸囧畾璁惧 + this.SynchronizationDevice(); + }); } } @@ -1616,6 +1635,27 @@ }); }); } + + /// <summary> + /// 鍚屾鎸囧畾璁惧 + /// </summary> + private void SynchronizationDevice() + { + HdlThreadLogic.Current.RunThread(async () => + { + //鎵撳紑杩涘害鏉� + this.ShowProgressBar(); + + //鍚屾璁惧 + bool result = await Common.LocalDevice.Current.SynchronizationDevice(listNewDevice); + //鍏抽棴杩涘害鏉� + this.CloseProgressBar(); + if (result == false) + { + return; + } + }); + } #endregion #region 鈻� 鍏抽棴鐣岄潰___________________________ -- Gitblit v1.8.0