From 18a7f9f40e5fab3bee5d4ac3d8fd0273dea052d6 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期日, 26 四月 2020 12:05:28 +0800 Subject: [PATCH] 先上传一个非最新的版本 --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs | 285 +++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 208 insertions(+), 77 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs index bf61365..fdac3f9 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs @@ -90,6 +90,7 @@ /// 璁剧疆FrameLayout /// </summary> FrameLayout btnFuncSetFrameLayout; + FrameLayout progressFrameLayoutMatch; /// <summary> /// 鐐瑰嚮寮�甯冨眬 /// </summary> @@ -366,25 +367,32 @@ }; btnFrameLayout.AddChidren(closeFrameLayout); + progressFrameLayoutMatch = new FrameLayout() + { + Width = Application.GetRealHeight(84),//639-35 + Height = Application.GetRealHeight(446), + X = Application.GetMinReal(51), + BackgroundColor = ZigbeeColor.Current.XMWhite, + }; + btnFrameLayout.AddChidren(progressFrameLayoutMatch); + var progressFrameLayout = new FrameLayout() { - Width = Application.GetRealWidth(9),//639-35 - Height = Application.GetRealHeight(446), - X = Application.GetRealWidth(95), - Y = Application.GetRealHeight(0), + Width = Application.GetRealHeight(17),//639-35 + Gravity = Gravity.CenterHorizontal, BackgroundColor = ZigbeeColor.Current.XMVerticalSeekBar, }; - btnFrameLayout.AddChidren(progressFrameLayout); + progressFrameLayoutMatch.AddChidren(progressFrameLayout); progressButton = new Button() { Width = Application.GetMinReal(84),//639-35 Height = Application.GetMinReal(93), - X = Application.GetRealWidth(58), + Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(347), UnSelectedImagePath = "DoorLock/UnLockButton.png", }; - btnFrameLayout.AddChidren(progressButton); + progressFrameLayoutMatch.AddChidren(progressButton); btnDoorOpenPic = new Button() { @@ -536,14 +544,14 @@ }; flMain.AddChidren(progressBackground); - var progressValue = (currentVolume * (Convert.ToInt32(((float)100 / 15) * 100))) / 100; + //var progressValue = (currentVolume * (Convert.ToInt32(((float)100 / 15) * 100))) / 100; progressText = new Button() { Height = Application.GetRealHeight(58), Y = Application.GetRealHeight(89), TextColor = ZigbeeColor.Current.XMGray2, TextAlignment = TextAlignment.Center, - Text = progressValue.ToString() + "%", + Text = currentVolume.ToString() + "%", }; diyImageVerticalSeekBar = new DiyImageVerticalSeekBar() @@ -559,27 +567,14 @@ ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor, ProgressTextSize = 12,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏� SeekBarViewHeight = Application.GetRealHeight(17),//杩涘害鏉$殑瀹藉害 - Progress = progressValue, + Progress = currentVolume, }; progressBackground.AddChidren(progressText); progressBackground.AddChidren(diyImageVerticalSeekBar); diyImageVerticalSeekBar.OnProgressChangedEvent += (sender, e) => { int curVolume = -1; - if (e == 0) - { - curVolume = 0; - } - else if (e == 100) - { - curVolume = 14; - } - else - { - int comandValue = e; - int comandValueTemp = (comandValue * 100) / (Convert.ToInt32(((float)100 / 15) * 100)); - curVolume = comandValueTemp; - } + curVolume = e; currentVolume = curVolume; progressText.Text = e.ToString() + "%"; }; @@ -692,10 +687,18 @@ } NormallyOpenModeValue(tempRes); - HaveLogicNormallyOpenMode = await Shared.Phone.Device.Logic.SkipView.Exist(); - Application.RunOnMainThread(() => + + Application.RunOnMainThread(async () => { - UpdateNomallyOpenStatus(); + var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(); + if (resTemp == 1) + { + HaveLogicNormallyOpenMode = true; + } + else if (resTemp == 0) + { + HaveLogicNormallyOpenMode = false; + } }); } } @@ -758,6 +761,7 @@ { Application.RunOnMainThread(() => { + UpdateNomallyOpenStatus(); CommonPage.Loading.Hide(); }); } @@ -873,6 +877,10 @@ }; openFrameLayout.MouseUpEventHandler += hander1; btnDoorOpenPic.MouseUpEventHandler += hander1; + if (progressButton.Y == Application.GetRealHeight(10)) + { + progressFrameLayoutMatch.MouseUpEventHandler += hander1; + } //鍏抽攣浜嬩欢 EventHandler<MouseEventArgs> hander2 = (sender, e) => @@ -1095,26 +1103,14 @@ //姣忔閲嶆柊璁剧疆甯稿紑锛岄粯璁ゆ椂闂撮兘鏄�12灏忔椂 DoorLockCommonInfo.NormallyOpenModeInvalidTime = 12; NormallyOpenModeValue(true); - UpdateNomallyOpenStatus(); - CommonPage.Loading.Hide(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + CommonPage.Loading.Hide(); + }); //甯稿紑妯″紡寮�鍚彁绀� - string msgNomallyModeIsTurnOn = Language.StringByID(R.MyInternationalizationString.NomallyModeIsTurnOn); - var doorLockInValidSetting = Language.StringByID(R.MyInternationalizationString.DoorLockInValidSetting); - var alertNomallyModeIsTurnOn = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.DoorLockLogic, msgNomallyModeIsTurnOn, doorLockInValidSetting); - alertNomallyModeIsTurnOn.Show(); - - //鐐瑰嚮鑷姩鍖� - alertNomallyModeIsTurnOn.LogicClickEvent += () => - { - //閫昏緫璋冪敤鍓嶈寰楃Щ闄� - ZbGateway.StatusList.Remove(this); - Shared.Phone.Device.Logic.SkipView.SkipAddLogic(2, doorLock); - }; - alertNomallyModeIsTurnOn.InvalidClickEvent += async () => - { - NomallyOpenModeInvalidTimeDialog(); - }; + AlreadyOpenNormallyMode(); } }; }; @@ -1145,34 +1141,67 @@ alert = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.CancelNomallyOpenModeWithLogic, msg, confirm); } alert.Show(); + alert.MsgControlClickEvent += async () => { if (IsFromReport) { - //鍙栨秷甯稿紑 + //涓婃姤鈥滃父寮�妯″紡鈥濆凡琚彇娑堬紝app榛樿浜嗏�滃父寮�妯″紡鈥濊鍙栨秷 NormallyOpenModeValue(false); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); + //鍒犻櫎宸茬粡澶辨晥鐨勨�滃父寮�妯″紡鈥濈殑閫昏緫 + if (HaveLogicNormallyOpenMode) + { + var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3); + //if (resTemp == 3) + //{ + // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed); + // this.ShowTipMsg(msg0); + //} + } } else { - //淇濇寔甯稿紑 + //app榛樿鈥滃父寮�妯″紡鈥濊繕鏄紑鍚� NormallyOpenModeValue(true); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); } }; + alert.CancelClickEvent += async () => { - //淇濇寔甯稿紑 if (IsFromReport) { + //涓婃姤鈥滃父寮�妯″紡鈥濆凡琚彇娑� Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); + //鍏堝垹闄ゅ凡澶辨晥鐨勨�滃父寮�妯″紡鈥濈殑閫昏緫 + if (HaveLogicNormallyOpenMode) + { + var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3); + //if (resTemp == 3) + //{ + // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed2); + // this.ShowTipMsg(msg0); + // return; + //} + } + //app閲嶆柊寮�鍚�滃父寮�妯″紡鈥� var result = await doorLock.SetNormallyOpenModeFuncAsync(true); if (result == null || result.defaultControlResponseData == null) { string msg0 = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime); this.ShowTipMsg(msg0); NormallyOpenModeValue(false); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); return; } if (result.defaultControlResponseData.status != 0) @@ -1180,32 +1209,68 @@ string msg1 = Language.StringByID(R.MyInternationalizationString.OpenNormallyOpenModeFailed); this.ShowTipMsg(msg1); NormallyOpenModeValue(false); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); return; } else { + //淇濇寔鈥滃父寮�鎴愬姛鈥� NormallyOpenModeValue(true); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); + + //鍒涘缓甯稿紑妯″紡鐨勭壒娈婇�昏緫 + var resu = await Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime, doorLock); + //if (!resu) + //{ + // string msg0 = Language.StringByID(R.MyInternationalizationString.AddLogicNormallyModeFailed); + // this.ShowTipMsg(msg0); + //} + CommonPage.Loading.Hide(); } } else { + //app鎿嶄綔涓嶅彇娑堚�滃父寮�妯″紡鈥� NormallyOpenModeValue(true); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); } }; + alert.ConfirmClickEvent += async () => { - //纭鍙栨秷甯稿紑 if (IsFromReport) { + //涓婃姤闂ㄩ攣鈥滃父寮�妯″紡鈥濆凡缁忓彇娑堬紝鐜板湪app纭鈥滃父寮�妯″紡鈥濆彇娑� NormallyOpenModeValue(false); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); + + //鍒犻櫎宸茬粡澶辨晥鐨勨�滃父寮�妯″紡鈥濈殑閫昏緫 + if (HaveLogicNormallyOpenMode) + { + var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3); + //if (resTemp == 3) + //{ + // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed); + // this.ShowTipMsg(msg0); + //} + } } else { + //app鎿嶄綔鍙栨秷鈥滃父寮�妯″紡鈥� Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); var result = await doorLock.SetNormallyOpenModeFuncAsync(false); if (result == null || result.defaultControlResponseData == null) @@ -1225,17 +1290,71 @@ //娣诲姞App寮�鍚父寮�妯″紡鐨勫巻鍙茶褰� HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog(this.doorLock, 9002, string.Empty); + //app纭鍙栨秷鈥滃父寮�妯″紡鈥濇垚鍔� NormallyOpenModeValue(false); - UpdateNomallyOpenStatus(); + Application.RunOnMainThread(() => + { + UpdateNomallyOpenStatus(); + }); + //鍒犻櫎璁剧疆甯稿紑妯″紡鍒涘缓鐨勯�昏緫 + if (HaveLogicNormallyOpenMode) + { + var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3); + //鍥犱负鐩墠鏈哄埗闂锛岄�昏緫缁忓父澶辫触锛屾墍浠ヤ笉鎻愮ず锛屽悗鏈熸満鍒惰鏀癸紝閲嶆柊鍋氫竴涓繖涓晫闈� + //if (resTemp == 3) + //{ + // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed); + // this.ShowTipMsg(msg0); + //} + //else if (resTemp == 2) + //{ + // string msg2 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeSuccess); + // this.ShowTipMsg(msg2); + //} + } string msg2 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeSuccess); this.ShowTipMsg(msg2); - Shared.Phone.Device.Logic.SkipView.LockCloseLogic(doorLock); } } }; } - ///// <summary> + /// <summary> + /// 宸茬粡寮�鍚父寮�妯″紡鎻愮ず + /// </summary> + public void AlreadyOpenNormallyMode() + { + //甯稿紑妯″紡寮�鍚彁绀� + string msgNomallyModeIsTurnOn = Language.StringByID(R.MyInternationalizationString.NomallyModeIsTurnOn); + var doorLockInValidSetting = Language.StringByID(R.MyInternationalizationString.DoorLockInValidSetting); + var alertNomallyModeIsTurnOn = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.DoorLockLogic, msgNomallyModeIsTurnOn, doorLockInValidSetting); + alertNomallyModeIsTurnOn.Show(); + alertNomallyModeIsTurnOn.MsgControlClickEvent += async () => + { + //榛樿鍒涘缓甯稿紑妯″紡鐨勭壒娈婇�昏緫 + var res = await Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime, doorLock); + //if (!res) + //{ + //string msg0 = Language.StringByID(R.MyInternationalizationString.AddLogicNormallyModeFailed); + // this.ShowTipMsg(msg0); + //return; + //} + }; + //鐐瑰嚮鑷姩鍖� + alertNomallyModeIsTurnOn.LogicClickEvent += () => + { + //閫昏緫璋冪敤鍓嶈寰楃Щ闄� + ZbGateway.StatusList.Remove(this); + //璋冪敤閫昏緫鐣岄潰 + Shared.Phone.Device.Logic.SkipView.SkipAddLogic(2, doorLock); + }; + alertNomallyModeIsTurnOn.InvalidClickEvent += async () => + { + NomallyOpenModeInvalidTimeDialog(); + }; + } + + /// <summary> /// 甯稿紑妯″紡澶辨晥鏃堕棿澶勭悊 /// </summary> private void NomallyOpenModeInvalidTimeDialog() @@ -1246,26 +1365,38 @@ var alertTimeInValidSetting = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.InValid, msgTimeInValidSetting, timeConfrim); alertTimeInValidSetting.Show(); - alertTimeInValidSetting.InvalidTimeAction += (obj) => - { - Regex rg = new Regex("^[0-9]+$"); - if (!rg.IsMatch(obj)) - { - //蹇呴』鏄暟瀛� - string msg0 = Language.StringByID(R.MyInternationalizationString.NormallyOpenModeInvalidTimeTip); - this.ShowTipMsg(msg0); + alertTimeInValidSetting.InvalidTimeAction += async (obj) => + { + Regex rg = new Regex("^[0-9]+$"); + if (!rg.IsMatch(obj)) + { + //蹇呴』鏄暟瀛� + string msg0 = Language.StringByID(R.MyInternationalizationString.NormallyOpenModeInvalidTimeTip); + this.ShowTipMsg(msg0); - string msgTimeInValidSetting2 = Language.StringByID(R.MyInternationalizationString.DoorLockOpenAllTheTime); - var timeConfrim2 = Language.StringByID(R.MyInternationalizationString.Confrim); - var alertTimeInValidSetting2 = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.InValid, msgTimeInValidSetting2, timeConfrim2); - alertTimeInValidSetting2.Show(); - return; - } - var temp = int.Parse(obj); - DoorLockCommonInfo.NormallyOpenModeInvalidTime = temp; - Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime, doorLock); - }; + string msgTimeInValidSetting2 = Language.StringByID(R.MyInternationalizationString.DoorLockOpenAllTheTime); + var timeConfrim2 = Language.StringByID(R.MyInternationalizationString.Confrim); + var alertTimeInValidSetting2 = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.InValid, msgTimeInValidSetting2, timeConfrim2); + alertTimeInValidSetting2.Show(); + return; + } + //甯稿紑妯″紡澶辨晥鏃堕棿璁剧疆鎴愬姛 + var temp = int.Parse(obj); + DoorLockCommonInfo.NormallyOpenModeInvalidTime = temp; + //榛樿鍒涘缓甯稿紑妯″紡鐨勭壒娈婇�昏緫 + var res = await Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime, doorLock); + if (!res) + { + //榛樿鍒涘缓甯稿紑妯″紡澶辫触 + string msg0 = Language.StringByID(R.MyInternationalizationString.AddLogicNormallyModeFailed); + this.ShowTipMsg(msg0); + + //浜屾鍔犺浇寮圭獥 甯稿紑妯″紡寮�鍚彁绀� + NomallyOpenModeInvalidTimeDialog(); + } + }; } + /// <summary> /// 甯稿紑妯″紡鐘舵�佹洿鏂� /// </summary> -- Gitblit v1.8.0