| | |
| | | |
| | | } |
| | | /// 给徐梅刷新界面用的 |
| | | public Action<bool> action; |
| | | public Action<bool> action; |
| | | ///第二块第一级父控件 |
| | | FrameLayout fLayout = new FrameLayout(); |
| | | ///第三块第一级父控件 |
| | |
| | | /// 记录选中时间 |
| | | /// </summary> |
| | | public int timeValue = 0; |
| | | |
| | | /// <summary> |
| | | /// 时间戳 |
| | | /// </summary> |
| | | public int timeLong = 0; |
| | | public async void Show() |
| | | { |
| | | |
| | | |
| | | #region 界面的布局代码 |
| | | UserView.HomePage.Instance.ScrollEnabled = false;//锁住左滑 |
| | | TopView view = new TopView(); |
| | |
| | | this.AddChidren(middle); |
| | | #endregion |
| | | //是常开模式再去读取 |
| | | |
| | | |
| | | if (Send.CurrentDoorLock.IsDoorLockNormallyMode) |
| | | { |
| | | //进来更新一次 |
| | | //查找是否存在时效性自动化;有的话就返回自动化对象; |
| | | var logic = await SkipView.GetLogicIfon(Send.CurrentDoorLock); |
| | | var logic = await SkipView.GetLogicIfon(Send.CurrentDoorLock); |
| | | if (logic != null) |
| | | { |
| | | try |
| | |
| | | //进来更新一次值 |
| | | logicId = logic.LogicId; |
| | | timeValue = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"]); |
| | | timeLong = int.Parse(logic.Conditions[0]["TriggerTime"]); |
| | | |
| | | } |
| | | catch { } |
| | | } |
| | |
| | | /// <summary> |
| | | /// 常开模式开关切换图标界面 |
| | | /// </summary> |
| | | public void ModeView() |
| | | public void ModeView() |
| | | { |
| | | |
| | | fLayout.RemoveAll(); |
| | |
| | | if (logicId != 0) |
| | | { |
| | | openModeFl.AddChidren(timeTextBtn); |
| | | var datetime = GetLocalTime(timeLong); |
| | | ///有时效性常开才显示时间条件文本 |
| | | 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"));//小时 |
| | | int dayInt = (h + timeValue) / 24;//算出几天后执行 |
| | | int hour = (h + timeValue) % 24;//算出几天后那个时间执行 |
| | | int days = int.Parse(d) + dayInt; |
| | | int minute = DateTime.Now.Minute;//分钟 |
| | | var y = datetime.Year.ToString();//那一年 |
| | | var m = datetime.Month.ToString();//那一月 |
| | | var d = datetime.ToString("dd");//那一天 |
| | | var h = int.Parse(datetime.ToString("HH"));//小时 |
| | | // int dayInt = (h + timeValue) / 24;//算出几天后执行 |
| | | // int hour = (h + timeValue) % 24;//算出几天后那个时间执行 |
| | | // int days = int.Parse(d) + dayInt; |
| | | int minute = datetime.Minute;//分钟 |
| | | string text1 = Language.StringByID(MyInternationalizationString.timeSensitive); |
| | | string text2 = Language.StringByID(MyInternationalizationString.yearSone); |
| | | string text3 = Language.StringByID(MyInternationalizationString.monthSone); |
| | |
| | | string text5 = Language.StringByID(MyInternationalizationString.hour1); |
| | | string text6 = Language.StringByID(MyInternationalizationString.executeSone); |
| | | // timeTextBtn.Text = text1 + y + text2 + m + text3 + days.ToString() + text4 + hour.ToString() + text5 + minute.ToString() + text6; |
| | | timeTextBtn.Text = text1 + m + text3 + days.ToString() + text4 + hour.ToString() + text5 + minute.ToString() + text6; |
| | | timeTextBtn.Text = text1 + m + text3 + d + text4 + h + text5 + minute.ToString() + text6; |
| | | } |
| | | |
| | | |
| | |
| | | /// 读取自动化列表数据; |
| | | /// </summary> |
| | | /// <param name="yes"></param> |
| | | private async void Read( bool yes) |
| | | private async void Read(bool yes) |
| | | { |
| | | if (yes) |
| | | { |
| | |
| | | Common.Logic.SoneLogicList.Add(logic); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | catch (Exception e) |
| | |
| | | };
|
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 将UNIX时间戳转换成系统时间(精确到秒) |
| | | /// <returns></returns> |
| | | public DateTime GetLocalTime(int unixTimeStamp) |
| | | { |
| | | DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); |
| | | long lTime = long.Parse(unixTimeStamp + "0000000"); |
| | | TimeSpan toNow = new TimeSpan(lTime); |
| | | DateTime dtResult = dtStart.Add(toNow); |
| | | return dtResult; |
| | | } |
| | | } |
| | | } |