From 18b93d511dc764b469d7c4a7e755f7274f89cdb4 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期一, 27 四月 2020 17:55:14 +0800 Subject: [PATCH] 2020-4-27-1 --- ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs | 130 +++++++++++++++++++++++++++--------------- 1 files changed, 83 insertions(+), 47 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs index 083edd8..59fbecb 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs @@ -20,7 +20,7 @@ /// <summary> /// 鍒楄〃鎺т欢 /// </summary> - private VerticalListControl listview = null; + private FrameListControl listview = null; /// <summary> /// 璁惧鐨勮澶囩被鍨� /// </summary> @@ -81,15 +81,19 @@ //娓呯┖bodyFrame this.ClearBodyFrame(); + var listBackControl = new VerticalFrameControl(); + listBackControl.Height = bodyFrameLayout.Height; + bodyFrameLayout.AddChidren(listBackControl); + //鍒濆鍖栨甯� var tableContr = new InformationEditorControl(); - this.listview = tableContr.InitControl(bodyFrameLayout, Language.StringByID(R.MyInternationalizationString.uInfoEditor), 369, 1368); + this.listview = tableContr.InitControl(listBackControl.frameTable, Language.StringByID(R.MyInternationalizationString.uInfoEditor), 1368); //鍥剧墖 var btnPic = new DeviceInfoIconControl(); btnPic.Y = Application.GetRealHeight(92); btnPic.Gravity = Gravity.CenterHorizontal; - bodyFrameLayout.AddChidren(btnPic); + listBackControl.frameTable.AddChidren(btnPic); btnPic.InitControl(listNewDevice[0]); //璁惧澶囨敞 @@ -124,21 +128,29 @@ //鍒掔嚎 btnType.AddBottomLine(); - //鎵�灞炲尯鍩� + //瀹夎浣嶇疆 var rowBeloneArea = new BelongAreaControl(listview.rowSpace / 2); listview.AddChidren(rowBeloneArea); - rowBeloneArea.InitControl(Language.StringByID(R.MyInternationalizationString.uBelongArea), this.listNewDevice); + rowBeloneArea.InitControl(Language.StringByID(R.MyInternationalizationString.uInstallationLocation), this.listNewDevice); //搴曠嚎 rowBeloneArea.AddBottomLine(); var listCheck = new List<string>(); rowBeloneArea.SelectRoomEvent += (roomKeys) => { + //閫夋嫨鏈垎閰嶆椂,娓呯┖ + if (roomKeys == string.Empty) { listCheck = new List<string>(); } foreach (var device in this.listNewDevice) { if (device is OTADevice) { //閽堝鍗曠函鍙湁涓�涓�200绔偣鐨勮澶� + continue; + } + if (roomKeys == string.Empty) + { + //濡傛灉閫夋嫨鐨勬槸鏈垎閰嶏紝鍒欏畠鐨勫叏閮ㄥ洖璺棤鏉′欢鍏ㄩ儴娓呯┖鎴块棿 + HdlRoomLogic.Current.ChangedRoom(device, roomKeys); continue; } var room = HdlRoomLogic.Current.GetRoomByDevice(device); @@ -147,6 +159,12 @@ { //杩欓噷鏈夌偣鐗规畩,濡傛灉鍥炶矾娌℃湁璁剧疆鏈夊尯鍩熺殑鏃跺��,鎵嶈缃� listCheck.Add(mainKeys); + HdlRoomLogic.Current.ChangedRoom(device, roomKeys); + } + else if (this.deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFreshAir + && device.Type == DeviceType.FreshAir) + { + //鏂伴闈㈡澘鐨勬柊椋庤澶囷紝鍒欏尯鍩熻窡鐫�妯″潡涓�璧� HdlRoomLogic.Current.ChangedRoom(device, roomKeys); } else if (listCheck.Contains(mainKeys) == true) @@ -163,7 +181,7 @@ this.AddAllMenuRow(); //鍒濆鍖栨甯冨畬鎴� - tableContr.FinishInitControl(bodyFrameLayout, this.listview); + tableContr.FinishInitControl(); tableContr = null; //淇濆瓨 @@ -188,6 +206,19 @@ this.CloseForm(); } }; + //濡傛灉褰撳墠浣忓畢鏄櫄鎷熶綇瀹呯殑璇�,璁╂墍鏈夎彍鍗曢兘涓嶈兘鐐瑰嚮 + if (Common.Config.Instance.Home.IsVirtually == true) + { + for (int i = 0; i < listview.ChildrenCount; i++) + { + var myRow = listview.GetChildren(i) as FrameRowControl; + if (myRow != null) + { + myRow.UseClickStatu = false; + myRow.CanClick = false; + } + } + } } #endregion @@ -233,8 +264,8 @@ //娣诲姞銆愭寜閿缃�戣(闈㈡澘涓撶敤) this.AddPanelSettionRow(); } - - if (this.IsFangyueFreshaAirPanel() == false) + //鏂规偊鏂伴闈㈡澘娌℃湁鍔熻兘璁剧疆 + if (deviceEnumInfo.ConcreteType != DeviceConcreteType.ButtonPanel_FangyueFreshAir) { //娣诲姞銆愬姛鑳借缃�戣 this.AddFunctionSettionRow(); @@ -295,7 +326,7 @@ }; actionNone = () => { - Shared.Phone.UserCenter.DoorLock.DoorLockCommonLayout.SecurityRequest(doorLock, action); + Shared.Phone.UserCenter.DoorLock.DoorLockCommonLayout.SecurityRequest(doorLock); }; HdlCheckLogic.Current.CheckSecondarySecurity(action, actionNone); } @@ -316,7 +347,7 @@ }; actionNone = () => { - Shared.Phone.UserCenter.DoorLock.DoorLockCommonLayout.SecurityRequest(doorLock, action); + Shared.Phone.UserCenter.DoorLock.DoorLockCommonLayout.SecurityRequest(doorLock); }; HdlCheckLogic.Current.CheckSecondarySecurity(action, actionNone); @@ -358,6 +389,11 @@ if (string.IsNullOrEmpty(doorLock.RemoteUnlockPassword) == false) { btnswitch.IsSelected = true; + } + //濡傛灉褰撳墠浣忓畢鏄櫄鎷熶綇瀹呯殑璇�,璁╂墍鏈夎彍鍗曢兘涓嶈兘鐐瑰嚮 + if (Common.Config.Instance.Home.IsVirtually == true) + { + btnswitch.CanClick = false; } btnswitch.ButtonClickEvent += async (sender, e) => @@ -533,22 +569,6 @@ form.AddForm(listNewDevice[0]); } }; - return true; - } - return false; - } - - #endregion - - #region 鈻� 鎸夐敭璁剧疆(鏂规偊)_____________________ - - /// <summary> - /// 鏄惁鏄柟鎮︽柊椋庨潰鏉� - /// </summary> - private bool IsFangyueFreshaAirPanel() - { - if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFreshAir) - { return true; } return false; @@ -791,6 +811,11 @@ btnFunction.AddLeftCaption(caption, 600); //寮�鍏冲浘鏍� var btnSwitch = btnFunction.AddMostRightSwitchIcon(); + //濡傛灉褰撳墠浣忓畢鏄櫄鎷熶綇瀹呯殑璇�,璁╂墍鏈夎彍鍗曢兘涓嶈兘鐐瑰嚮 + if (Common.Config.Instance.Home.IsVirtually == true) + { + btnSwitch.CanClick = false; + } //搴曠嚎 btnFunction.AddBottomLine(); btnSwitch.ButtonClickEvent += async (sender, e) => @@ -920,10 +945,19 @@ var title = Language.StringByID(R.MyInternationalizationString.uSelectFunctionType); var form = new BottomItemSelectForm(); + form.CancelCallEvent = true;//鍏佽鍙栨秷 form.AddForm(title, listText, nowSelectNo); form.FinishSelectEvent += (selectNo) => { - btnFunction.Text = listText[selectNo]; + if (selectNo == -1) + { + //閫夋嫨鍙栨秷 + btnFunction.Text = string.Empty; + } + else + { + btnFunction.Text = listText[selectNo]; + } nowSelectNo = selectNo; //璁板綍璧峰綋鍓嶉�夋嫨鐨勫姛鑳界被鍨� if (selectNo == 0) @@ -944,13 +978,22 @@ this.listNewDevice[0].IconPath = "Device/Light.png"; } } - else + else if (selectNo == 2) { this.listNewDevice[0].DfunctionType = DeviceFunctionType.A鎻掑骇; if (this.listNewDevice[0].IsCustomizeImage == false) { //閲嶆柊璁剧疆鍥剧墖 this.listNewDevice[0].IconPath = "Device/Socket1.png"; + } + } + else + { + this.listNewDevice[0].DfunctionType = DeviceFunctionType.A鏈畾涔�; + if (this.listNewDevice[0].IsCustomizeImage == false) + { + //閲嶆柊璁剧疆鍥剧墖 + this.listNewDevice[0].IconPath = "Device/Switch.png"; } } this.listNewDevice[0].ReSave(); @@ -1061,8 +1104,12 @@ btnNewVersion.Visible = false; }; - //璁剧疆璁惧鐨勭増鏈俊鎭� - this.SetDeviceVersionInfo(btnNewVersion, oTADevice); + //濡傛灉褰撳墠浣忓畢涓嶆槸铏氭嫙浣忓畢 + if (Common.Config.Instance.Home.IsVirtually == false) + { + //璁剧疆璁惧鐨勭増鏈俊鎭� + this.SetDeviceVersionInfo(btnNewVersion, oTADevice); + } } /// <summary> @@ -1123,15 +1170,9 @@ /// <param name="i_deviceName">deviceName.</param> private async void DeviceReName(string i_deviceName, bool closeForm) { - //寮�鍚繘搴︽潯 - this.ShowProgressBar(); - //淇敼MAC鍚� string deviceName = i_deviceName.Trim(); var result = await Common.LocalDevice.Current.ReMacName(this.listNewDevice, deviceName); - //鍏抽棴杩涘害鏉� - this.CloseProgressBar(); - if (result == false) { return; @@ -1176,18 +1217,8 @@ { //妫�娴嬫鍥炶矾鏄惁鎷ユ湁瀹氫綅鍔熻兘(鎷跨鐐规渶灏忕殑閭d釜鍥炶矾鍘诲畾浣�) bool canTest = Common.LocalDevice.Current.DeviceIsCanFixedPosition(listNewDevice[0]); - if (this.deviceEnumInfo.BeloneType == DeviceBeloneType.A鏅鸿兘闂ㄩ攣) - { - canTest = false; - } - else if (this.deviceEnumInfo.BeloneType == DeviceBeloneType.A浼犳劅鍣� - && this.deviceEnumInfo.ConcreteType != DeviceConcreteType.Sensor_Pir) - { - //浼犳劅鍣ㄩ櫎浜哖ir閮芥病鏈夊畾浣嶅姛鑳� - canTest = false; - } - var frame = new TopRightMenuControl(canTest == true ? 2 : 1, 1); + var frame = new TopRightMenuControl(canTest == true ? 2 : 1, 1); string deviceMenu = string.Empty; if (canTest == true) { @@ -1204,6 +1235,11 @@ deviceMenu = Language.StringByID(R.MyInternationalizationString.uDelete); frame.AddRowMenu(deviceMenu, "Item/DeleteIcon2.png", "Item/DeleteIcon2Selected.png", () => { + //濡傛灉褰撳墠浣忓畢鏄櫄鎷熶綇瀹�,姝ゅ姛鑳芥棤鏁� + if (Common.Config.Instance.Home.IsVirtually == true) + { + return; + } //纭鍒犻櫎璇ヨ澶囧強鍔熻兘锛� string msg = Language.StringByID(R.MyInternationalizationString.uDeleteDeviceMsg); this.ShowMassage(ShowMsgType.Confirm, msg, () => -- Gitblit v1.8.0