| | |
| | | { |
| | | public class SoneLogicList : FrameLayout |
| | | { |
| | | /// <summary> |
| | | /// 给Sone门锁徐梅更新界面用的 |
| | | /// </summary> |
| | | /// |
| | | public SoneLogicList() |
| | | { |
| | | Tag = "SoneLogic"; |
| | | } |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="action">给徐梅刷新界面用的</param> |
| | | /// <param name="bool_If"></param> |
| | | public Action<bool> action; |
| | | public async void Show() |
| | | { |
| | | |
| | | #region 界面的布局代码 |
| | | UserView.HomePage.Instance.ScrollEnabled = false;//锁住左滑 |
| | | TopView view = new TopView(); |
| | |
| | | view.clickBtn.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | if (action != null) |
| | | { |
| | | action(Send.CurrentDoorLock.IsDoorLockNormallyMode); |
| | | } |
| | | |
| | | RemoveFromParent(); |
| | | |
| | | }; |
| | | |
| | | var middle = new FrameLayout |
| | |
| | | SelectedImagePath = "ZigeeLogic/openMode.png", |
| | | }; |
| | | fLayout.AddChidren(modeIconBtn); |
| | | var logic = await SkipView.GetLogicIfon(); |
| | | if (logic != null) |
| | | { |
| | | |
| | | if (Send.CurrentDoorLock.IsDoorLockNormallyMode) |
| | | { |
| | | /// 查找是否存在时效性自动化;有的话就返回自动化对象; |
| | | var logic = await SkipView.GetLogicIfon(); |
| | | |
| | | fLayout.Height = Application.GetRealHeight(780);//改变高度 |
| | | modeIconBtn.IsSelected = true;//改变图标状态 |
| | |
| | | TextSize = 16, |
| | | }; |
| | | openModeFl.AddChidren(closeBtn); |
| | | closeBtn.MouseUpEventHandler += (sender,e) => { |
| | | |
| | | |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Confirm, |
| | | Language.StringByID(MyInternationalizationString.doyouwanttodelete), |
| | | Language.StringByID(MyInternationalizationString.confrim));
|
| | | alert.Show();
|
| | | alert.ConfirmClickEvent += () =>
|
| | | closeBtn.MouseUpEventHandler += async (sender, e) => |
| | | { |
| | | var result = await UserCenter.DoorLock.DoorLockCommonInfo.DelNormallyOpenMode(Send.CurrentDoorLock); |
| | | if (result)
|
| | | { |
| | | Send.DelLogic(logic.LogicId); |
| | | if (logic != null) |
| | | { |
| | | ///有可能只有常开模式,没有时效性自动化 |
| | | ///没有判断的话,逻辑会为空,抛出异常; |
| | | Send.DelLogic(logic.LogicId); |
| | | } |
| | | Send.CurrentDoorLock.IsDoorLockNormallyMode = false; |
| | | this.RemoveFromParent(); |
| | | var soneLogicList = new SoneLogicList(); |
| | | UserView.HomePage.Instance.AddChidren(soneLogicList); |
| | | UserView.HomePage.Instance.PageIndex += 1; |
| | | soneLogicList.Show();
|
| | | }; |
| | | } |
| | | else |
| | | { |
| | | ///提示失败 |
| | | } |
| | | |
| | | }; |
| | | |
| | | ///显示失效设置时间文本控件 |
| | | var timeTextBtn= new Button |
| | | var timeTextBtn = new Button |
| | | { |
| | | Y = Application.GetRealHeight(127 + 69), |
| | | X = Application.GetRealWidth(225), |
| | |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | Text = "时效性常开设置12:20", |
| | | }; |
| | | openModeFl.AddChidren(timeTextBtn); |
| | | if (logic != null) |
| | | { |
| | | ///有时效性常开才显示时间条件文本 |
| | | openModeFl.AddChidren(timeTextBtn); |
| | | } |
| | | ///时效性常开只有一个条件; |
| | | try |
| | | { |
| | | var y = DateTime.Now.ToString("yy");//那一年 |
| | | var m = DateTime.Now.ToString("mm");//那一月 |
| | | var d = DateTime.Now.ToString("dd");//那一天 |
| | | var h =int.Parse(DateTime.Now.ToString("HH"));//当前系统时间 |
| | | var h = int.Parse(DateTime.Now.ToString("HH"));//当前系统时间 |
| | | var me = DateTime.Now.ToLongDateString(); |
| | | var timeInt = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"]); |
| | | int dayInt = (h + timeInt)/ 24;//算出几天后执行 |
| | | int dayInt = (h + timeInt) / 24;//算出几天后执行 |
| | | int hour = (h + timeInt) % 24;//算出几天后那个时间执行 |
| | | timeTextBtn.Text = "时效性常开设置" + y + "年" + m + "月" + d + dayInt + "号" + timeInt + "时"+ "执行"; |
| | | timeTextBtn.Text = "时效性常开设置" + y + "年" + m + "月" + d + dayInt + "号" + timeInt + "时" + "执行"; |
| | | } |
| | | catch { } |
| | | |
| | |
| | | TextSize = 15, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | // Text = "时效性常开设置", |
| | | TextID=MyInternationalizationString.timeSetSone, |
| | | // Text = "时效性常开设置", |
| | | TextID = MyInternationalizationString.timeSetSone, |
| | | }; |
| | | modeFl.AddChidren(modeTextBtn); |
| | | ///下一级菜单图标控件 |
| | |
| | | }; |
| | | modeFl.AddChidren(nextIconBtn); |
| | | |
| | | var clickBtn = new Button |
| | | { |
| | | Y = Application.GetRealHeight(478), |
| | | X = Application.GetRealWidth(58), |
| | | Height = Application.GetRealHeight(138), |
| | | Width = Application.GetRealWidth(1022), |
| | | }; |
| | | modeFl.AddChidren(clickBtn); |
| | | |
| | | |
| | | clickBtn.MouseUpEventHandler += async (sender, e) => |
| | | { |
| | | var d = await SkipView.LockAddModifyLogic(12, Send.CurrentDoorLock); |
| | | }; |
| | | nextIconBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | LogicView.TipView.ShowConfrimTip(() => |
| | | {///再次确认 |
| | | LogicView.TipView.ShowInputTip(true, async (str) => |
| | | {///确认发送命令 |
| | | try |
| | | { |
| | | ///xm |
| | | var result = await UserCenter.DoorLock.DoorLockCommonInfo.SetNormallyOpenModeFuncAsync(Send.CurrentDoorLock); |
| | | if (!result) |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | ///提示失败 |
| | | }); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | ///因为有常开模式下才可以创建失效逻辑; |
| | | SkipView.GetLogicAll();//删除之前所有失效逻辑 |
| | | var addResult = await SkipView.LockAddModifyLogic(int.Parse(str), Send.CurrentDoorLock);//添加一条失效逻辑 |
| | | if (!addResult) |
| | | { |
| | | ///提示失败 |
| | | return; |
| | | }
|
| | | Send.CurrentDoorLock.IsDoorLockNormallyMode = true; |
| | | this.RemoveFromParent(); |
| | | var soneLogicList = new SoneLogicList(); |
| | | UserView.HomePage.Instance.AddChidren(soneLogicList); |
| | | UserView.HomePage.Instance.PageIndex += 1; |
| | | soneLogicList.Show(); |
| | | |
| | | } |
| | | } |
| | | catch |
| | | { |
| | | |
| | | } |
| | | }); |
| | | |
| | | }); |
| | | |
| | | }; |
| | | } |
| | | |
| | | #endregion |
| | |
| | | addLogicfL.AddChidren(addIconBtn); |
| | | addIconBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | |
| | | //读取系统当前时间:时-分 |
| | | //读取系统当前时间:时-分 |
| | | var h = DateTime.Now.ToString("HH"); |