old mode 100755
new mode 100644
| | |
| | | |
| | | } |
| | | /// 给徐梅刷新界面用的 |
| | | public Action<bool> action; |
| | | public Action<bool> action; |
| | | ///第二块第一级父控件 |
| | | FrameLayout fLayout = new FrameLayout(); |
| | | ///第三块第一级父控件 |
| | |
| | | view.toptitleNameBtn.TextID = MyInternationalizationString.openmode; |
| | | view.clickBtn.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true;
|
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | //把静态变量的这个东西置空 |
| | | soneLogicList = null; |
| | | this.RemoveFromParent(); |
| | |
| | | { |
| | | action(Send.CurrentDoorLock.IsDoorLockNormallyMode); |
| | | } |
| | | //返回按键清空 |
| | | UserCenter.DoorLock.DoorLockCommonInfo.LogicAction = null; |
| | | }; |
| | | |
| | | var middle = new FrameLayout |
| | |
| | | /// <summary> |
| | | /// 常开模式开关切换图标界面 |
| | | /// </summary> |
| | | public void ModeView() |
| | | public void ModeView() |
| | | { |
| | | |
| | | fLayout.RemoveAll(); |
| | |
| | | } |
| | | |
| | | |
| | | button1 = new Button |
| | | } |
| | | else |
| | | { |
| | | fLayout.Height = Application.GetRealHeight(645);//改变高度 |
| | | modeIconBtn.UnSelectedImagePath = "ZigeeLogic/noMode.png";//改变图标状态 |
| | |
| | | }; |
| | | modeFl.AddChidren(clickBtn); |
| | | clickBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | { |
| | | |
| | | LogicView.TipView.ShowConfrimTip(() => |
| | | LogicView.TipView.ShowConfrimTip(() => |
| | | |
| | | {///再次确认 |
| | | {///再次确认 |
| | | LogicView.TipView.ShowInputTip(true, async (str) => |
| | | {///确认发送命令 |
| | | {///确认发送命令 |
| | | CommonPage.Loading.Start(); |
| | | try |
| | | { |
| | | try |
| | | { |
| | | ///xm |
| | | var result = await UserCenter.DoorLock.DoorLockCommonInfo.SetNormallyOpenModeFuncAsync(Send.CurrentDoorLock); |
| | | if (!result) |
| | | { |
| | | LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.openFailed)); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | if (!result) |
| | | { |
| | | LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.openFailed)); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | ///因为有常开模式下才可以创建失效逻辑; |
| | | SkipView.GetLogicAll();//删除之前所有失效逻辑 |
| | | var addResult = await SkipView.LockAddModifyLogic(int.Parse(str), Send.CurrentDoorLock);//添加一条失效逻辑 |
| | |
| | | logicId = addResult; |
| | | timeValue = int.Parse(str); |
| | | Send.CurrentDoorLock.IsDoorLockNormallyMode = true; |
| | | ModeView();
|
| | | //添加App开启常开模式的历史记录
|
| | | ModeView(); |
| | | //添加App开启常开模式的历史记录 |
| | | UserCenter.HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog(Send.CurrentDoorLock, 9001, string.Empty); |
| | | } |
| | | } |
| | |
| | | listLogicFl.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; |
| | | } |
| | | /// <summary> |
| | | /// 常开模式开关切换图标界面 |
| | | /// </summary> |
| | | public async void ModeView() |
| | | { |
| | | |
| | | if (Send.CurrentDoorLock.IsDoorLockNormallyMode) |
| | | { |
| | | /// 查找是否存在时效性自动化;有的话就返回自动化对象; |
| | | var logic = await SkipView.GetLogicIfon(); |
| | | |
| | | fLayout.Height = Application.GetRealHeight(780);//改变高度 |
| | | modeIconBtn.UnSelectedImagePath = "ZigeeLogic/openMode.png";//改变图标状态 |
| | | modeFl.Y = modeIconBtn.Bottom + Application.GetRealHeight(64); |
| | | modeFl.X = Application.GetRealWidth(0); |
| | | modeFl.Height = Application.GetRealHeight(127 + 199); |
| | | modeFl.Width = Application.GetRealHeight(1080); |
| | | modeFl.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; |
| | | modeFl.SetCornerWithSameRadius(Application.GetRealHeight(0), HDLUtils.RectCornerBottomLeft); |
| | | |
| | | ///关闭时效性自动化 |
| | | button1.Y = Application.GetRealHeight(0); |
| | | button1.X = Application.GetRealWidth(86); |
| | | button1.Width = Application.GetRealWidth(907); |
| | | button1.Height = Application.GetRealHeight(127); |
| | | button1.Radius = (uint)Application.GetRealHeight(58); |
| | | button1.BackgroundColor = ZigbeeColor.Current.LogicBtnSaveBackgroundColor; |
| | | button1.TextAlignment = TextAlignment.Center; |
| | | button1.TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor; |
| | | button1.TextID = MyInternationalizationString.closeUp; |
| | | button1.TextSize = 16; |
| | | |
| | | button1.MouseUpEventHandler = async (sender, e) => |
| | | { |
| | | var result = await UserCenter.DoorLock.DoorLockCommonInfo.DelNormallyOpenMode(Send.CurrentDoorLock); |
| | | if (result) |
| | | { |
| | | if (logic != null) |
| | | { |
| | | ///有可能只有常开模式,没有时效性自动化 |
| | | ///没有判断的话,逻辑会为空,抛出异常; |
| | | Send.DelLogic(logic.LogicId); |
| | | } |
| | | Send.CurrentDoorLock.IsDoorLockNormallyMode = false; |
| | | ModeView(); |
| | | } |
| | | else |
| | | { |
| | | LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.closeFailed)); |
| | | } |
| | | |
| | | }; |
| | | if (logic != null) |
| | | { |
| | | ///显示失效设置时间文本控件 |
| | | button2.Y = Application.GetRealHeight(127 + 69); |
| | | button2.X = Application.GetRealWidth(125); |
| | | button2.Width = Application.GetRealWidth(634 + 200); |
| | | button2.Height = Application.GetRealHeight(60); |
| | | button2.UnSelectedImagePath = "ZigeeLogic/1234.png"; |
| | | button2.TextSize = 15; |
| | | button2.TextColor = ZigbeeColor.Current.LogicTextBlackColor; |
| | | ///有时效性常开才显示时间条件文本 |
| | | } |
| | | else |
| | | { |
| | | button2.Width = Application.GetRealWidth(0); |
| | | button2.Height = Application.GetRealHeight(0); |
| | | } |
| | | ///时效性常开只有一个条件; |
| | | try |
| | | { |
| | | |
| | | var y = DateTime.Now.Year.ToString();//那一年 |
| | | var m = DateTime.Now.Month.ToString();//那一月 |
| | | var d = DateTime.Now.ToString("dd");//那一天 |
| | | var h = int.Parse(DateTime.Now.ToString("HH"));//当前系统时间 |
| | | var timeInt = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"]); |
| | | int dayInt = (h + timeInt) / 24;//算出几天后执行 |
| | | int hour = (h + timeInt) % 24;//算出几天后那个时间执行 |
| | | int days = int.Parse(d) + dayInt; |
| | | string text1 = Language.StringByID(MyInternationalizationString.timeSensitive); |
| | | string text2 = Language.StringByID(MyInternationalizationString.yearSone); |
| | | string text3 = Language.StringByID(MyInternationalizationString.monthSone); |
| | | string text4 = Language.StringByID(MyInternationalizationString.numberSone); |
| | | string text5 = Language.StringByID(MyInternationalizationString.executeSone); |
| | | button2.Text = text1 + y + text2 + m + text3 + days.ToString() + text4 + hour.ToString() + text5; |
| | | } |
| | | catch { } |
| | | |
| | | } |
| | | else |
| | | { |
| | | fLayout.Height = Application.GetRealHeight(645);//改变高度 |
| | | modeIconBtn.UnSelectedImagePath = "ZigeeLogic/noMode.png";//改变图标状态 |
| | | modeFl.Y = modeIconBtn.Bottom + Application.GetRealHeight(92); |
| | | modeFl.X = Application.GetRealWidth(58); |
| | | modeFl.Height = Application.GetRealHeight(138); |
| | | modeFl.Width = Application.GetRealHeight(1022); |
| | | modeFl.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; |
| | | modeFl.SetCornerWithSameRadius(Application.GetRealHeight(58), HDLUtils.RectCornerBottomLeft); |
| | | |
| | | ///时效性常开设置显示文本控件 |
| | | button1.Y = Application.GetRealHeight(40); |
| | | button1.X = Application.GetRealWidth(58); |
| | | button1.Width = Application.GetRealWidth(600); |
| | | button1.Height = Application.GetRealHeight(60); |
| | | button1.Radius = (uint)Application.GetRealHeight(0); |
| | | button1.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; |
| | | button1.TextAlignment = TextAlignment.CenterLeft; |
| | | button1.TextColor = ZigbeeColor.Current.LogicTextBlackColor; |
| | | // Text = "时效性常开设置", |
| | | button1.TextID = MyInternationalizationString.timeSetSone; |
| | | button1.TextSize = 15; |
| | | |
| | | |
| | | ///下一级菜单图标控件 |
| | | button2.Width = Application.GetMinRealAverage(104); |
| | | button2.Height = Application.GetMinRealAverage(104); |
| | | button2.X = Application.GetRealWidth(861); |
| | | button2.Y = Application.GetRealHeight(17); |
| | | button2.UnSelectedImagePath = "ZigeeLogic/nextIconSone.png"; |
| | | button2.TextSize = 15; |
| | | button2.TextColor = ZigbeeColor.Current.LogicTextBlackColor; |
| | | button2.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) |
| | | { |
| | | LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.openFailed)); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | ///因为有常开模式下才可以创建失效逻辑; |
| | | SkipView.GetLogicAll();//删除之前所有失效逻辑 |
| | | var addResult = await SkipView.LockAddModifyLogic(int.Parse(str), Send.CurrentDoorLock);//添加一条失效逻辑 |
| | | if (!addResult) |
| | | { |
| | | ///可欣说如果常开模式开,创建自动化失败,那么将要发一条常开模式关闭命令; |
| | | UserCenter.DoorLock.DoorLockCommonInfo.DelNormallyOpenMode(Send.CurrentDoorLock); |
| | | ///提示失败 |
| | | LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.addFailed)); |
| | | return; |
| | | } |
| | | Send.CurrentDoorLock.IsDoorLockNormallyMode = true; |
| | | ModeView();
|
| | | //添加App开启常开模式的历史记录
|
| | | UserCenter.HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog(Send.CurrentDoorLock, 9001, string.Empty); |
| | | } |
| | | } |
| | | catch |
| | | { |
| | | |
| | | } |
| | | }); |
| | | |
| | | }); |
| | | |
| | | }; |
| | | } |
| | | |
| | | listLogicFl.Y = fLayout.Bottom; |
| | | listLogicFl.X = Application.GetRealWidth(58); |
| | | listLogicFl.Height = Application.GetRealHeight(Method.H - 184) - fLayout.Height; |
| | | listLogicFl.Width = Application.GetRealWidth(1022); |
| | | listLogicFl.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; |
| | | } |
| | | /// <summary> |
| | | /// 读取自动化列表数据; |
| | | /// </summary> |
| | | /// <param name="yes"></param> |
| | | private async void Read( bool yes) |
| | | private async void Read(bool yes) |
| | | { |
| | | if (yes) |
| | | { |
| | |
| | | |
| | | } |
| | | } |
| | | |
| | | RowLayout selectedRow = new RowLayout() { Tag = "0" };//记录左滑状态 |
| | | int a = 1; |
| | | /// <summary> |
| | | /// 记录左滑状态 |
| | | /// </summary> |
| | |
| | | selectedRow = logicRow; |
| | | }; |
| | | a++; |
| | | ///显示逻辑名称的控件
|
| | | ///显示逻辑名称的控件 |
| | | var nameBtn = new Button |
| | | { |
| | | Height = Application.GetRealHeight(58), |
| | |
| | | { |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Confirm, |
| | | Language.StringByID(MyInternationalizationString.doyouwanttodelete), |
| | | Language.StringByID(MyInternationalizationString.confrim));
|
| | | alert.Show();
|
| | | alert.ConfirmClickEvent += () =>
|
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | alert.ConfirmClickEvent += () => |
| | | { |
| | | Common.Logic.SoneLogicList.Remove(logic); |
| | | //logicRow.Parent.RemoveFromParent(); |
| | | fLayoutLogic.RemoveFromParent(); |
| | | Send.DelLogic(logic.LogicId);
|
| | | Send.DelLogic(logic.LogicId); |
| | | }; |
| | | |
| | | };
|
| | | }; |
| | | } |
| | | } |
| | | |