From 9cc8fd11b13813adbdd3c6c31554e5c0bebf4026 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期五, 21 八月 2020 19:53:49 +0800 Subject: [PATCH] 发布到商店的版本 --- ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs | 133 ++++++++++++++++++++++++++++++++------------ 1 files changed, 97 insertions(+), 36 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs old mode 100755 new mode 100644 index abcd1c3..e575691 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs @@ -102,10 +102,13 @@ { //绠�绾﹂潰鏉块殢渚夸竴涓洖璺潵鑾峰彇璁惧淇℃伅 var dev = Common.LocalDevice.Current.GetDevice(deviceMac, 62); - var key = new ZigBee.Device.Panel(); - key.DeviceAddr = deviceMac; - key.CurrentGateWayId = dev.CurrentGateWayId; - InitBindInfo(key); + if (dev != null) + { + var key = new ZigBee.Device.Panel(); + key.DeviceAddr = deviceMac; + key.CurrentGateWayId = dev.CurrentGateWayId; + InitBindInfo(key); + } } } @@ -599,7 +602,7 @@ btnFunction.ButtonClickEvent += (sender, e) => { //绠�绾︾幆澧冮潰鏉跨殑鎸夐敭閰嶇疆 - var form = new DevicePanel.PanelSimpleEnvironmentButtonSettionForm(); + var form = new DevicePanel.PanelSettionWithSourceForm(); form.AddForm(listNewDevice[0]); }; } @@ -640,16 +643,10 @@ var form = new DevicePanel.PanelFangyueButtonSettionForm(); form.AddForm(listNewDevice[0]); } - else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEnvironment) + else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEnvironment || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFreshAir) { - //鏂规偊鐜闈㈡澘鐨勬寜閿厤缃� - var form = new DevicePanel.PanelFangyueEnvironmentButtonSettionForm(); - form.AddForm(listNewDevice[0]); - } - else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFreshAir) - { - //鏂规偊鏂伴闈㈡澘鐨勬寜閿厤缃� - var form = new DevicePanel.PanelFangyueFreshAirButtonSettionForm(); + //鏂规偊鐜闈㈡澘鐨勬寜閿厤缃�&鏂规偊鏂伴闈㈡澘鐨勬寜閿厤缃� + var form = new DevicePanel.PanelSettionWithSourceForm(); form.AddForm(listNewDevice[0]); } else @@ -1073,7 +1070,7 @@ paneTargetsBaseFormp.Show(); paneTargetsBaseFormp.actionHumidityTarget += (bindName) => { - Application.RunOnMainThread(() => + HdlThreadLogic.Current.RunMain(() => { if (string.IsNullOrEmpty(bindName)) { @@ -1124,7 +1121,7 @@ paneTargetsBaseFormp.Show(); paneTargetsBaseFormp.actionTemperatureTarget += (bindName) => { - Application.RunOnMainThread(() => + HdlThreadLogic.Current.RunMain(() => { if (string.IsNullOrEmpty(bindName)) { @@ -1159,7 +1156,7 @@ { Application.RunOnMainThread(() => { - new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance); + new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime) + "(" + "5007_2" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance); }); return; } @@ -1171,7 +1168,7 @@ { Application.RunOnMainThread(() => { - new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance); + new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime) + "(" + "5007_3" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance); }); return; } @@ -1207,6 +1204,10 @@ foreach (var bDev in bindList) { var device = Common.LocalDevice.Current.GetDevice(bDev.BindMacAddr, bDev.BindEpoint); + if (device == null) + { + continue; + } if (device.Type == DeviceType.TemperatureSensor) { var bD = device as TemperatureSensor; @@ -1326,7 +1327,7 @@ listview.AddChidren(rowVersion); rowVersion.AddLeftCaption(caption, 600); //鐗堟湰 - this.btnAirConditionerVersion = rowVersion.AddMostRightView("", 800); + this.btnAirConditionerVersion = rowVersion.AddMostRightView(((AC)this.listNewDevice[0]).AcModelVersion, 800); //搴曠嚎 rowVersion.AddBottomLine(); @@ -1430,13 +1431,13 @@ if (deviceFirmware != null && deviceFirmware.FirmwareVersion > oTADevice.ImgVersion) { - Application.RunOnMainThread(() => + HdlThreadLogic.Current.RunMain(() => { if (btnNewVersion != null) { btnNewVersion.Visible = true; } - }); + }, ShowErrorMode.NO); } }); } @@ -1499,7 +1500,17 @@ //妫�娴嬫鍥炶矾鏄惁鎷ユ湁瀹氫綅鍔熻兘(鎷跨鐐规渶灏忕殑閭d釜鍥炶矾鍘诲畾浣�) bool canTest = Common.LocalDevice.Current.DeviceIsCanFixedPosition(listNewDevice[0]); - var 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) { @@ -1530,6 +1541,23 @@ }); }); + //鍚屾 + 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(); + }); + } + } /// <summary> @@ -1555,6 +1583,27 @@ //鍏抽棴鐣岄潰 this.CloseForm(); }); + }); + } + + /// <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 @@ -1633,27 +1682,39 @@ { return; } - //鑾峰彇涓�.... - this.btnAirConditionerVersion.TextID = R.MyInternationalizationString.uGetting; + //濡傛灉鏄櫄鎷熶綇瀹呮垨鑰呭睍绀烘ā鏉跨殑璇� + if (Config.Instance.Home.IsShowTemplate == true || Config.Instance.Home.IsVirtually == true) + { + return; + } + + bool notVersion = ((AC)this.listNewDevice[0]).AcModelVersion == string.Empty; + if (notVersion == true) + { + //鑾峰彇涓� + btnAirConditionerVersion.Text = Language.StringByID(R.MyInternationalizationString.uGetting); + } HdlThreadLogic.Current.RunThread(async () => { //璇诲彇绌鸿皟妯″潡鐗堟湰 var result = await HdlDeviceAirConditionerLogic.Current.ReadACFirewareVersionAsync(listNewDevice[0]); if (result == null || result.readACFirewareVersionResponData == null || result.readACFirewareVersionResponData.Status != 0) - { - HdlThreadLogic.Current.RunMain(() => - { - //鑾峰彇澶辫触 - btnAirConditionerVersion.TextID = R.MyInternationalizationString.uGettingFail; - }); + { + if (notVersion == true) + { + //鑾峰彇澶辫触 + HdlThreadLogic.Current.RunMain(() => + { + btnAirConditionerVersion.Text = Language.StringByID(R.MyInternationalizationString.uGettingFail); + }); + } + return; } - else + HdlThreadLogic.Current.RunMain(() => { - HdlThreadLogic.Current.RunMain(() => - { - btnAirConditionerVersion.Text = result.readACFirewareVersionResponData.FirewareVersion.Replace("-", string.Empty); - }); - } + ((AC)this.listNewDevice[0]).AcModelVersion = result.readACFirewareVersionResponData.FirewareVersion.Replace("-", string.Empty); + btnAirConditionerVersion.Text = ((AC)this.listNewDevice[0]).AcModelVersion; + }); }); } -- Gitblit v1.8.0