New file |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using Shared; |
| | | using Shared.Common; |
| | | using Shared.Phone; |
| | | using Shared.Phone.Device.Logic.LogicView; |
| | | using Shared.R; |
| | | using ZigBee.Device; |
| | | |
| | | namespace Shared.Phone.Device.Logic |
| | | { |
| | | public class TimePage : FrameLayout |
| | | { |
| | | public TimePage() |
| | | { |
| | | Tag = "Logic"; |
| | | } |
| | | public bool IsEditor; |
| | | public string str1; |
| | | |
| | | Dictionary<string, string> timeBucketConditionsInfo = new Dictionary<string, string>(); |
| | | public void Show() |
| | | { |
| | | |
| | | #region 上面的布局代码 |
| | | TopView view = new TopView(); |
| | | this.AddChidren(view.TopRowView()); |
| | | view.toptitleNameBtn.TextID = MyInternationalizationString.selection; |
| | | view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); }; |
| | | #endregion |
| | | |
| | | #region 最下面的布局代码 |
| | | var middle = new FrameLayout |
| | | { |
| | | Y = view.topRowLayout.Bottom, |
| | | Height = Application.GetRealHeight(Method.H - 184 - 260), |
| | | BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, |
| | | }; |
| | | this.AddChidren(middle); |
| | | //保存 |
| | | SaveView saveView = new SaveView(); |
| | | saveView.frameLayout.Y = middle.Bottom; |
| | | this.AddChidren(saveView.Show()); |
| | | #endregion |
| | | |
| | | #region -----时间范围 开始时间 结束时间 |
| | | #region -----时间范围 |
| | | |
| | | TypeView typeView = new TypeView(); |
| | | middle.AddChidren(typeView.Show()); |
| | | typeView.textBtn.TextID = MyInternationalizationString.type; |
| | | typeView.titleBtn.Width = Application.GetRealWidth(630 + 70); |
| | | typeView.titleBtn.TextID = MyInternationalizationString.timeframe; |
| | | typeView.backBtn.Visible = false; |
| | | |
| | | #endregion |
| | | |
| | | #region -----开始时间 |
| | | |
| | | TypeView startView = new TypeView(); |
| | | startView.frameLayout.Y = typeView.frameLayout.Bottom; |
| | | middle.AddChidren(startView.Show()); |
| | | startView.textBtn.TextID = MyInternationalizationString.starttime; |
| | | startView.titleBtn.Tag = "0"; |
| | | #endregion |
| | | |
| | | #region -----结束时间 |
| | | |
| | | TypeView endView = new TypeView(); |
| | | endView.frameLayout.Y = startView.frameLayout.Bottom; |
| | | endView.frameLayout.Height = Application.GetRealHeight(160 + 20);//最后一行增加20高度; |
| | | middle.AddChidren(endView.Show()); |
| | | endView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor;//改变最后一行线颜色; |
| | | endView.textBtn.TextID = MyInternationalizationString.endtime; |
| | | endView.titleBtn.Tag = "0"; |
| | | |
| | | #endregion |
| | | #endregion |
| | | |
| | | if (IsEditor) |
| | | { |
| | | if (str1 != null) |
| | | { |
| | | |
| | | string[] timestr = str1.Split('-'); |
| | | string[] starttime = timestr[0].Split(':'); |
| | | string[] endtime = timestr[1].Split(':'); |
| | | string s1 = "", s2 = ""; |
| | | if (starttime[1].Length < 2) |
| | | { |
| | | s1 = "0" + starttime[1]; |
| | | } |
| | | else |
| | | { |
| | | s1 = starttime[1]; |
| | | } |
| | | if (endtime[1].Length < 2) |
| | | { |
| | | s2 = "0" + endtime[1]; |
| | | } |
| | | else |
| | | { |
| | | s2 = endtime[1]; |
| | | } |
| | | startView.titleBtn.Text = starttime[0] + ":" + s1; |
| | | endView.titleBtn.Text = endtime[0] + ":" + s2; |
| | | |
| | | //btnstarttime.Text = timestr[0]; |
| | | //btnendtime.Text = timestr[1]; |
| | | if (timeBucketConditionsInfo.ContainsKey("StartHour")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StartHour"); |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("StartMin")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StartMin"); |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("StopHour")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StopHour"); |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("StopMin")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StopMin"); |
| | | } |
| | | timeBucketConditionsInfo.Add("StartHour", starttime[0]); |
| | | timeBucketConditionsInfo.Add("StartMin", starttime[1]); |
| | | timeBucketConditionsInfo.Add("StopHour", endtime[0]); |
| | | timeBucketConditionsInfo.Add("StopMin", endtime[1]); |
| | | startView.titleBtn.Tag = int.Parse(starttime[0]) * 60 + int.Parse(starttime[1]); |
| | | endView.titleBtn.Tag = int.Parse(endtime[0]) * 60 + int.Parse(endtime[1]); |
| | | } |
| | | |
| | | } |
| | | |
| | | startView.clickviewBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicTranslucentColor }; |
| | | AddChidren(flMain); |
| | | flMain.MouseUpEventHandler += (sender11, e11) => |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | |
| | | var timeview = new TimeView |
| | | { |
| | | Y = Application.GetRealHeight(1920 - 600), |
| | | Height = Application.GetRealHeight(600), |
| | | BackgroundColor = ZigbeeColor.Current.LogicTimeViewColor, |
| | | Width = Application.GetRealWidth(1080), |
| | | }; |
| | | flMain.AddChidren(timeview); |
| | | |
| | | |
| | | var btnSave = new Button |
| | | { |
| | | Y = Application.GetRealHeight(1920 - 600), |
| | | Width = Application.GetRealWidth(200), |
| | | Height = Application.GetRealHeight(150), |
| | | Text = Language.StringByID(MyInternationalizationString.complete), |
| | | // TextColor = 0xFF121212, |
| | | TextColor = ZigbeeColor.Current.LogicTimeViewSaveButton, |
| | | //TextAlignment = TextAlignment.CenterRight |
| | | X = Application.GetRealWidth(1080 - 200), |
| | | }; |
| | | flMain.AddChidren(btnSave); |
| | | |
| | | btnSave.MouseUpEventHandler += (sender2, e2) => |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | |
| | | var startval = timeview.Hour * 60 + timeview.Minute; |
| | | |
| | | if (endView.titleBtn.Tag.ToString() != "0" && startval.ToString() == endView.titleBtn.Tag.ToString()) |
| | | { |
| | | |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, |
| | | Language.StringByID(MyInternationalizationString.nottime), |
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | return; |
| | | } |
| | | if (endView.titleBtn.Tag.ToString() != "0" && startval > int.Parse(endView.titleBtn.Tag.ToString())) |
| | | { |
| | | |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, |
| | | Language.StringByID(MyInternationalizationString.timesetting), |
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | return; |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("StartHour")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StartHour"); |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("StartMin")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StartMin"); |
| | | } |
| | | startView.titleBtn.Tag = timeview.Hour * 60 + timeview.Minute; |
| | | timeBucketConditionsInfo.Add("StartHour", timeview.Hour.ToString()); |
| | | timeBucketConditionsInfo.Add("StartMin", timeview.Minute.ToString()); |
| | | startView.titleBtn.Text = timeview.Hour.ToString() + ":" + (timeview.Minute.ToString().Length < 2 ? "0" + timeview.Minute.ToString() : timeview.Minute.ToString()); |
| | | }; |
| | | }; |
| | | |
| | | endView.clickviewBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicTranslucentColor }; |
| | | AddChidren(flMain); |
| | | flMain.MouseUpEventHandler += (sender11, e11) => |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | |
| | | var timeview = new TimeView |
| | | { |
| | | Y = Application.GetRealHeight(1920 - 600), |
| | | Height = Application.GetRealHeight(600), |
| | | BackgroundColor = ZigbeeColor.Current.LogicTimeViewColor, |
| | | Width = Application.GetRealWidth(1080), |
| | | }; |
| | | flMain.AddChidren(timeview); |
| | | |
| | | |
| | | var btnSave = new Button |
| | | { |
| | | Y = Application.GetRealHeight(1920 - 600), |
| | | Width = Application.GetRealWidth(200), |
| | | Height = Application.GetRealHeight(150), |
| | | Text = Language.StringByID(MyInternationalizationString.complete), |
| | | //TextColor = 0xFF121212, |
| | | TextColor = ZigbeeColor.Current.LogicTimeViewSaveButton, |
| | | //TextAlignment = TextAlignment.CenterRight |
| | | X = Application.GetRealWidth(1080 - 200), |
| | | }; |
| | | flMain.AddChidren(btnSave); |
| | | |
| | | btnSave.MouseUpEventHandler += (sender2, e2) => |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | |
| | | var endval = timeview.Hour * 60 + timeview.Minute; |
| | | |
| | | if (startView.titleBtn.Tag.ToString() != "0" && endval.ToString() == startView.titleBtn.Tag.ToString()) |
| | | { |
| | | |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, |
| | | Language.StringByID(MyInternationalizationString.nottime), |
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | return; |
| | | } |
| | | if (startView.titleBtn.Tag.ToString() != "0" && endval < int.Parse(startView.titleBtn.Tag.ToString())) |
| | | { |
| | | |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, |
| | | Language.StringByID(MyInternationalizationString.timesetting), |
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | return; |
| | | } |
| | | |
| | | if (timeBucketConditionsInfo.ContainsKey("StopHour")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StopHour"); |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("StopMin")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("StopMin"); |
| | | } |
| | | endView.titleBtn.Tag = timeview.Hour * 60 + timeview.Minute; |
| | | timeBucketConditionsInfo.Add("StopHour", timeview.Hour.ToString()); |
| | | timeBucketConditionsInfo.Add("StopMin", timeview.Minute.ToString()); |
| | | endView.titleBtn.Text = timeview.Hour.ToString() + ":" + (timeview.Minute.ToString().Length < 2 ? "0" + timeview.Minute.ToString() : timeview.Minute.ToString()); |
| | | }; |
| | | }; |
| | | |
| | | |
| | | ///完成点击事件 |
| | | saveView.clickviewBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (timeBucketConditionsInfo.ContainsKey("Type")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("Type"); |
| | | } |
| | | if (timeBucketConditionsInfo.ContainsKey("IsValid")) |
| | | { |
| | | timeBucketConditionsInfo.Remove("IsValid"); |
| | | } |
| | | timeBucketConditionsInfo.Add("Type", "5"); |
| | | timeBucketConditionsInfo.Add("IsValid", "1"); |
| | | |
| | | if (string.IsNullOrEmpty(startView.titleBtn.Text) || string.IsNullOrEmpty(endView.titleBtn.Text)) |
| | | { |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, |
| | | Language.StringByID(MyInternationalizationString.completeNext), |
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | return; |
| | | } |
| | | if (startView.titleBtn.Text == endView.titleBtn.Text) |
| | | { |
| | | var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, |
| | | Language.StringByID(MyInternationalizationString.sametime), |
| | | Language.StringByID(MyInternationalizationString.confrim)); |
| | | alert.Show(); |
| | | return; |
| | | } |
| | | |
| | | if (IsEditor) |
| | | { |
| | | for (int i = 0; i < Common.Logic.CurrentLogic.Conditions.Count; i++) |
| | | { |
| | | if (Common.Logic.CurrentLogic.Conditions[i]["Type"] == "5") |
| | | { |
| | | |
| | | var timeBucketInfo = Common.Logic.CurrentLogic.Conditions[i]; |
| | | var s = timeBucketInfo["StartHour"] + ":" + timeBucketInfo["StartMin"] + "-" + timeBucketInfo["StopHour"] + ":" + timeBucketInfo["StopMin"]; |
| | | if (str1 == s) |
| | | { |
| | | Common.Logic.CurrentLogic.Conditions.RemoveAt(i); |
| | | Common.Logic.CurrentLogic.Conditions.Insert(i, timeBucketConditionsInfo); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Common.Logic.CurrentLogic.Conditions.Add(timeBucketConditionsInfo); |
| | | } |
| | | |
| | | //LogicIfon.logicIfon.Addconditions(timeBucketConditionsInfo,timeBucketConditionsInfo.Type); |
| | | |
| | | var logicCommunalPage = new LogicCommunalPage { };
|
| | | UserView.HomePage.Instance.AddChidren(logicCommunalPage);
|
| | | UserView.HomePage.Instance.PageIndex += 1;
|
| | | logicCommunalPage.Show(() => { });
|
| | | |
| | | }; |
| | | } |
| | | |
| | | } |
| | | } |