From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 17 十二月 2020 09:07:13 +0800 Subject: [PATCH] 新云端Ver1.3 --- ZigbeeApp/Shared/Phone/SmartSound/Forms/SmartSoundControlContentForm.cs | 273 ++++++++++++++++++++++++++++++------------------------ 1 files changed, 153 insertions(+), 120 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/SmartSound/Forms/SmartSoundControlContentForm.cs b/ZigbeeApp/Shared/Phone/SmartSound/Forms/SmartSoundControlContentForm.cs index 121602e..656eaa0 100755 --- a/ZigbeeApp/Shared/Phone/SmartSound/Forms/SmartSoundControlContentForm.cs +++ b/ZigbeeApp/Shared/Phone/SmartSound/Forms/SmartSoundControlContentForm.cs @@ -4,6 +4,7 @@ using System.Threading.Tasks; using Shared.Common; using Shared.Phone.UserCenter.SmartSound.Util; +using Shared.Phone.UserCenter.SmartSound.Widget; using ZigBee.Device; namespace Shared.Phone.UserCenter.SmartSound.Forms @@ -22,8 +23,15 @@ private VerticalListControl listView = null; private FrameLayout contentLayout = null; + /// <summary> + /// 褰撳墠妤煎眰鐨勭储寮� + /// </summary> public int CurrentIndex = 0; private BottomClickButton bottomClickButton = null; + /// <summary> + /// 褰撳墠妤煎眰鐨勫悕绉� + /// </summary> + private static NormalViewControl pullLayoutText = null; public SmartSoundControlContentForm(SmartSoundInfo.SoundInfo soundInfo) { @@ -64,31 +72,57 @@ bottomClickButton.Text = "纭"; bottomClickButton.ButtonClickEvent += (sender, e) => { - HdlThreadLogic.Current.RunThread(async () => + if (SmartSound.getInstantiate().LayerList != null && SmartSound.getInstantiate().LayerList.Count > 0) { - this.ShowProgressBar(); - //淇濆瓨鏁版嵁 - if (SmartSound.getInstantiate().LayerList == null) - SmartSound.getInstantiate().LayerList = new List<SmartSound.Layer>(); + //鐢熸垚涓�涓脊绐楃敾闈� + var dialogForm = new TextDialog("纭鍒犻櫎鐜版湁鎴块棿鍒楄〃鐨勬墍鏈夋帶鍒跺唴瀹癸紝娣诲姞鍏ㄦ柊鐨勫満鏅拰鍔熻兘锛�", "纭"); + dialogForm.SetTitleText("鎻愮ず"); - SmartSound.getInstantiate().LayerList.Clear(); - SmartSound.getInstantiate().LayerList = CollateData(); - SmartSound.getInstantiate().TokenID = mSoundInfo.Id; - SmartSound.getInstantiate().UserID = mSoundInfo.UserID; - SmartSound.getInstantiate().HomeID = mSoundInfo.HomeID; - - //涓婁紶鏁版嵁鍒版湇鍔″櫒 - string str = await postBatchEdit(); - CloseProgressBar(); - - HdlThreadLogic.Current.RunMainInThread(() => + //鎸変笅纭鎸夐挳 + dialogForm.ComfirmClickEvent += () => { - CloseForm(); - }); - }); + //鐢婚潰鍏抽棴 + dialogForm.CloseDialog(); + uploadData(); + }; + } + else + { + uploadData(); + } + }; bottomClickButton.Visible = false; + } + + /// <summary> + /// 鎻愪氦鏁版嵁鍒版湇鍔″櫒 + /// </summary> + private void uploadData() + { + HdlThreadLogic.Current.RunThread(async () => + { + this.ShowProgressBar(); + //淇濆瓨鏁版嵁 + if (SmartSound.getInstantiate().LayerList == null) + SmartSound.getInstantiate().LayerList = new List<SmartSound.Layer>(); + + SmartSound.getInstantiate().LayerList.Clear(); + SmartSound.getInstantiate().LayerList = CollateData(); + SmartSound.getInstantiate().TokenID = mSoundInfo.Id; + SmartSound.getInstantiate().UserID = mSoundInfo.UserID; + SmartSound.getInstantiate().HomeID = mSoundInfo.HomeID; + + //涓婁紶鏁版嵁鍒版湇鍔″櫒 + string str = await postBatchEdit(); + CloseProgressBar(); + + HdlThreadLogic.Current.RunMainInThread(() => + { + CloseForm(); + }); + }); } private void LoadAllRoomListView() @@ -109,6 +143,7 @@ listView.Height = bodyFrameLayout.Height- Application.GetRealHeight(173); } + pullLayoutText.Text = layer.LayerName; listView.RemoveAll(); foreach(SmartSound.Room room in layer.RoomList) @@ -202,26 +237,26 @@ for (int j = 0; j < room.ListDevice.Count; j++) { string key = room.ListDevice[j].ToString(); - var device = LocalDevice.Current.GetDevice(key); + var device = HdlDeviceCommonLogic.Current.GetDevice(key); if (device == null) continue; SmartSound.Device smartDevice = new SmartSound.Device(); smartDevice.DeviceAddress = device.DeviceAddr;//璁惧 MAC smartDevice.Epoint = device.DeviceEpoint;//璁惧绔彛 - smartDevice.DeviceName = Common.LocalDevice.Current.GetDeviceEpointName(device);//璁惧鍚嶇О + smartDevice.DeviceName = HdlDeviceCommonLogic.Current.GetDeviceEpointName(device);//璁惧鍚嶇О smartDevice.NicksName = ""; smartDevice.DeviceType = GetDeviceType(device);//璁惧绫诲瀷 if (smartDevice.DeviceType == 0) continue; - if(ZbGateway.GateWayBaseInfomations.ContainsKey(device.CurrentGateWayId) ==true) - { - smartDevice.GatewayID = ZbGateway.GateWayBaseInfomations[device.CurrentGateWayId].MacMark;//缃戝叧 Id + if(ZbGateway.DicGatewayBaseInfo.ContainsKey(device.CurrentGateWayId) ==true) + { + smartDevice.GatewayID = ZbGateway.DicGatewayBaseInfo[device.CurrentGateWayId].Id;//缃戝叧 Id } - else - { - smartDevice.GatewayID = device.CurrentGateWayId;//缃戝叧 Id + else + { + smartDevice.GatewayID = device.CurrentGateWayId;//缃戝叧 Id } if (smartDevice.DeviceName == "" || smartDevice.DeviceName == string.Empty) @@ -246,9 +281,9 @@ smartScene.SceneID = scene.Id; smartScene.DelayTime = scene.DelayTime; smartScene.NicksName = ""; - if (ZbGateway.GateWayBaseInfomations.ContainsKey(ZbGateway.MainGateWay.GwId) == true) + if (ZbGateway.DicGatewayBaseInfo.ContainsKey(ZbGateway.MainGateWay.GwId) == true) { - smartScene.GatewayID = ZbGateway.GateWayBaseInfomations[ZbGateway.MainGateWay.GwId].MacMark;//缃戝叧 Id + smartScene.GatewayID = ZbGateway.DicGatewayBaseInfo[ZbGateway.MainGateWay.GwId].Id;//缃戝叧 Id } else { @@ -332,7 +367,6 @@ if (tempLayer == null) return; - #region 娣诲姞妤煎眰 bool floor_exists = false; @@ -491,136 +525,135 @@ return TempDatas; } - #region 鈻� 鑷畾涔夋ゼ灞傞�夋嫨鎺т欢_____________________ - - /// <summary> - /// 鎴块棿鍒楄〃琛� - /// </summary> - private class MyPullControl : FrameRowControl + #region 鈻� 鑷畾涔夋ゼ灞傞�夋嫨鎺т欢_____________________ + + /// <summary> + /// 鎴块棿鍒楄〃琛� + /// </summary> + private class MyPullControl : FrameRowControl { private SmartSoundControlContentForm smartSoundDataAdd = null; private List<SmartSound.Layer> Layers = null; - /// <summary> - /// 鎴块棿鍒楄〃 - /// </summary> - private NormalViewControl btnName = null; - - /// <summary> - /// 鎴块棿鍒楄〃琛� - /// </summary> - public MyPullControl(SmartSoundControlContentForm _SmartSoundDataAdd,List<SmartSound.Layer> _layers) - { - this.smartSoundDataAdd = _SmartSoundDataAdd; - this.Layers = _layers; + /// <summary> + /// 鎴块棿鍒楄〃 + /// </summary> + private NormalViewControl btnName = null; + + /// <summary> + /// 鎴块棿鍒楄〃琛� + /// </summary> + public MyPullControl(SmartSoundControlContentForm _SmartSoundDataAdd,List<SmartSound.Layer> _layers) + { + this.smartSoundDataAdd = _SmartSoundDataAdd; + this.Layers = _layers; this.UseClickStatu = false; - this.BackgroundColor = UserCenterColor.Current.White; - this.Height = Application.GetRealHeight(173); + this.BackgroundColor = UserCenterColor.Current.White; + this.Height = Application.GetRealHeight(173); } - /// <summary> - /// 鍒濆鍖栨帶浠� - /// </summary> - public void InitControl() + /// <summary> + /// 鍒濆鍖栨帶浠� + /// </summary> + public void InitControl() { //鏄剧ず鏂囨湰 - btnName = this.AddLeftCaption(string.Empty, 700); - btnName.Height = Application.GetRealHeight(60); - btnName.TextSize = 17; - btnName.Y = Application.GetRealHeight(57); + btnName = this.AddLeftCaption(string.Empty, 700); + btnName.Height = Application.GetRealHeight(60); + btnName.TextSize = 17; + btnName.Y = Application.GetRealHeight(57); btnName.Text = "鎴块棿鍒楄〃"; - var right_icon=this.AddRightArrow(); - right_icon.SelectedImagePath = "SmartSound/PullDown.png"; - right_icon.UnSelectedImagePath = "SmartSound/PullDown.png"; - right_icon.ButtonClickEvent += (sender, e) => + var right_icon=this.AddRightArrow(); + right_icon.SelectedImagePath = "SmartSound/PullDown.png"; + right_icon.UnSelectedImagePath = "SmartSound/PullDown.png"; + right_icon.ButtonClickEvent += (sender, e) => { ShowPullList(); }; - var layout = this.AddMostRightView(Layers[smartSoundDataAdd.CurrentIndex].LayerName, 300, false); - layout.Name = "pullLayout"; - layout.ButtonClickEvent += (sender, e) => + pullLayoutText = this.AddMostRightView(Layers[smartSoundDataAdd.CurrentIndex].LayerName, 300, false); + pullLayoutText.Name = "pullLayout"; + pullLayoutText.ButtonClickEvent += (sender, e) => { ShowPullList(); - }; - + }; + pullLayoutText.Text = Layers[smartSoundDataAdd.CurrentIndex].LayerName; + if (Layers.Count == 1) - { - right_icon.Visible = false; - layout.Visible = false; - } - - } - + { + right_icon.Visible = false; + pullLayoutText.Visible = false; + } + } + private void ShowPullList() { //鎴块棿鍒楄〃琛寋鎴块棿鍒楄〃 textView锛屾ゼ灞備笅鎷夌獥} //鏄剧ず鎴块棿{甯﹂�夋嫨妗嗙殑锛涘綋閫変腑浜嗘埧闂村悗闇�瑕佸湪搴曢儴寮瑰嚭纭鎸夐挳锛岀偣鍑荤‘璁よ烦杞埌鏂扮殑鐣岄潰} var pull_frame = new TopRightMenuControl(Layers.Count, 2); + pull_frame.Y = this.Height; for (int i = 0; i < Layers.Count; i++) { + int index = i; //鍒涘缓妤煎眰 pull_frame.AddRowMenu(Layers[i].LayerName, "Item/CreatFloor.png", "Item/CreatFloorSelected.png", () => { - smartSoundDataAdd.CurrentIndex = i; + smartSoundDataAdd.CurrentIndex = index; smartSoundDataAdd.LoadAllRoomListView(); }); } - } + } } #endregion - #region 鈻� 鑷畾涔夋埧闂撮�夋嫨鎺т欢_____________________ + #region 鈻� 鑷畾涔夋埧闂撮�夋嫨鎺т欢_____________________ - /// <summary> - /// 鎴块棿鍒楄〃琛� - /// </summary> - private class RoomRowLayout : FrameRowControl + /// <summary> + /// 鎴块棿鍒楄〃琛� + /// </summary> + private class RoomRowLayout : FrameRowControl { private SmartSoundControlContentForm smartSoundControlContentForm = null; private SmartSound.Room mRoom = null; - /// <summary> - /// 鎴块棿鍚嶇О - /// </summary> - private NormalViewControl btnName = null; - - private IconViewControl Right_icon = null; - - /// <summary> - /// 鎴块棿鍒楄〃琛� - /// </summary> - public RoomRowLayout(SmartSoundControlContentForm _smartSoundControlContentForm,SmartSound.Room _room) - { - this.smartSoundControlContentForm = _smartSoundControlContentForm; - this.mRoom = _room; + /// <summary> + /// 鎴块棿鍚嶇О + /// </summary> + private NormalViewControl btnName = null; + + private MostRightIconControl Right_icon = null; + + /// <summary> + /// 鎴块棿鍒楄〃琛� + /// </summary> + public RoomRowLayout(SmartSoundControlContentForm _smartSoundControlContentForm,SmartSound.Room _room) + { + this.smartSoundControlContentForm = _smartSoundControlContentForm; + this.mRoom = _room; this.UseClickStatu = false; - this.BackgroundColor = UserCenterColor.Current.White; - this.Height = Application.GetRealHeight(170); + this.BackgroundColor = UserCenterColor.Current.White; + this.Height = Application.GetRealHeight(170); } - /// <summary> - /// 鍒濆鍖栨帶浠� - /// </summary> - public void InitControl() + /// <summary> + /// 鍒濆鍖栨帶浠� + /// </summary> + public void InitControl() { //鏄剧ず鏂囨湰 - btnName = this.AddLeftCaption(string.Empty, 2000); - btnName.Height = Application.GetRealHeight(60); - btnName.TextSize = 17; - btnName.Y = Application.GetRealHeight(57); + btnName = this.AddLeftCaption(string.Empty, 2000); + btnName.Height = Application.GetRealHeight(60); + btnName.TextSize = 14; + btnName.Y = Application.GetRealHeight(57); btnName.Text = mRoom.RoomName; - Right_icon = this.AddRightArrow(); - Right_icon.Width = Application.GetRealWidth(115); - Right_icon.Height = Application.GetRealHeight(115); + Right_icon = this.AddMostRightEmptyIcon(58, 58); Right_icon.Gravity = Gravity.CenterVertical; - Right_icon.X = Right_icon.X - Application.GetRealWidth(60); - btnName.ButtonClickEvent += (sender, e) => + btnName.ButtonClickEvent += (sender, e) => { mRoom.Checked = true; RefreshRightIconState(mRoom.Checked); @@ -637,23 +670,23 @@ RefreshRightIconState(mRoom.Checked); AddBottomLine(); - } - + } + private void RefreshRightIconState(bool bol = false) - { + { try { if (bol) { - Right_icon.SelectedImagePath = "SmartSound/CheckBoxSel.png"; - Right_icon.UnSelectedImagePath = "SmartSound/CheckBoxSel.png"; + Right_icon.SelectedImagePath = "Item/ItemSelected.png"; + Right_icon.UnSelectedImagePath = "Item/ItemSelected.png"; smartSoundControlContentForm.AddData(mRoom); } else { - Right_icon.SelectedImagePath = "SmartSound/CheckBoxDef.png"; - Right_icon.UnSelectedImagePath = "SmartSound/CheckBoxDef.png"; + Right_icon.SelectedImagePath = "Item/ItemUnSelected.png"; + Right_icon.UnSelectedImagePath = "Item/ItemUnSelected.png"; smartSoundControlContentForm.RemoveData(mRoom); } @@ -677,9 +710,9 @@ { string error = e.Message; } - } - - } + } + + } #endregion } } -- Gitblit v1.8.0