From 6fa9d69da922c8049f5acfcbb9ce9fd26811024c Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期四, 16 四月 2020 17:10:57 +0800
Subject: [PATCH] 请合并代码

---
 ZigbeeApp/Shared/Phone/Device/Logic/IgnoreTime.cs |  173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 173 insertions(+), 0 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/IgnoreTime.cs b/ZigbeeApp/Shared/Phone/Device/Logic/IgnoreTime.cs
new file mode 100755
index 0000000..1c3300a
--- /dev/null
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/IgnoreTime.cs
@@ -0,0 +1,173 @@
+锘縰sing System;
+using System.Collections.Generic;
+using Shared;
+using Shared.Common;
+using Shared.R;
+using ZigBee.Device;
+
+namespace Shared.Phone.Device.Logic
+{
+    public class IgnoreTime : FrameLayout
+    {
+
+        public IgnoreTime()
+        {
+            Tag = "Logic";
+
+        }
+        Button selectedIcon = new Button();
+        public void Show(CommonDevice common, string name, bool edit, int timevalue)
+        {
+
+            #region  涓婇潰鐨勫竷灞�浠g爜
+            TopView view = new TopView();
+            this.AddChidren(view.TopRowView());
+            view.toptitleNameBtn.Text= name;
+            view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); };
+            #endregion
+
+            var middle = new VerticalScrolViewLayout
+            {
+                Y = view.topRowLayout.Bottom,
+                Height = Application.GetRealHeight(Method.H - 184 - 260),
+                BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
+            };
+            this.AddChidren(middle);
+            LogicView.SaveView saveView = new LogicView.SaveView();
+            saveView.frameLayout.Y = middle.Bottom;
+            this.AddChidren(saveView.Show());
+
+            int selectetimedvalue = 0;
+            var timestrlist = new List<string> { "2", "5", "10", "20", "30", Language.StringByID(MyInternationalizationString.logiccustom) };
+            foreach (var intValue in timestrlist)
+            {
+
+                FunView monView = new FunView();
+                monView.iconBtn.UnSelectedImagePath = "ZigeeLogic/point.png";
+                monView.funnameBtn.Text = intValue + Language.StringByID(MyInternationalizationString.Minute);
+                monView.funnameBtn.Tag = intValue;
+                monView.funnextBtn.Width = Application.GetMinRealAverage(60);
+                monView.funnextBtn.Height = Application.GetMinRealAverage(60);
+                monView.funnextBtn.UnSelectedImagePath = "ZigeeLogic/selected.png";
+                monView.funnextBtn.Visible = false;
+                middle.AddChidren(monView.FunFrameView());
+
+
+                //鍒ゆ柇涓�涓瓧绗︽槸瀛楃涓茶繕鏄暟瀛�
+                if (intValue.Length < 3)
+                {
+                    if (timevalue == int.Parse(intValue) * 60)
+                    {
+                        selectedIcon.Visible = false;
+                        selectedIcon = monView.funnextBtn;
+                        monView.funnextBtn.Visible = true;
+                    }
+                }
+                else
+                {
+                    monView.funFrameLayout.Height = Application.GetRealHeight(160 + 20);//鏈�鍚庝竴琛屽鍔�20楂樺害;
+                    monView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; ///鏀瑰彉鏈�鍚庡姛鑳藉揩绾挎潯棰滆壊
+                }
+                monView.clickviewBtn.MouseUpEventHandler+= (sender, e) =>
+                {
+                    selectedIcon.Visible = false;
+                    selectedIcon = monView.funnextBtn;
+                    monView.funnextBtn.Visible = true;
+                    if (Language.StringByID(MyInternationalizationString.logiccustom) == monView.funnameBtn.Tag.ToString())
+                    {
+                        var secondList = new List<string>();
+                        var minuteList = new List<string>();
+                        for (int i = 0; i < 60; i++)
+                        {
+                            if (i < 10)
+                            {
+                                var a = "0" + i.ToString();
+                                secondList.Add(a + " " + Language.StringByID(MyInternationalizationString.second));
+                                minuteList.Add(a + " " + Language.StringByID(MyInternationalizationString.minute));
+                            }
+                            else
+                            {
+                                secondList.Add(i.ToString() + " " + Language.StringByID(MyInternationalizationString.second));
+                                minuteList.Add(i.ToString() + " " + Language.StringByID(MyInternationalizationString.minute));
+                            }
+
+                        }
+                        int selectIndex1 = 0;
+                        int selectIndex2 = 0;
+                        if (timevalue > 3600)
+                        {
+                            selectIndex1 = 60;
+                            selectIndex2 = timevalue - 3600;
+                        }
+                        else
+                        {
+                            selectIndex1 = timevalue / 60;
+                            selectIndex2 = timevalue % 60;
+                        }
+                        PickerView.ShowNormal(minuteList, secondList, null, (Index1, Index2, Index3) =>
+                          {
+                              selectetimedvalue = int.Parse(minuteList[Index1].Split(' ')[0]) * 60 + int.Parse(secondList[Index2].Split(' ')[0]);
+                              TimeMethod(common, selectetimedvalue, timevalue, edit);
+                          }, selectIndex1, selectIndex2, 0, Language.StringByID(MyInternationalizationString.logiccustom));
+                    }
+                    else
+                    {
+                        selectetimedvalue = int.Parse(monView.funnameBtn.Tag.ToString()) * 60;
+                    }
+                };
+             
+            }
+
+            saveView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                TimeMethod(common, selectetimedvalue, timevalue, edit);
+            };
+        }
+
+        public void TimeMethod(CommonDevice common, int selectetimedvalue, int timevalue, bool edit)
+        {
+
+            var deviceConditionsInfo = new Dictionary<string, string>();
+            deviceConditionsInfo.Add("Type", "1");
+            deviceConditionsInfo.Add("IsValid", "1");
+            deviceConditionsInfo.Add("MacAddr", common.DeviceAddr);
+            deviceConditionsInfo.Add("Epoint", common.DeviceEpoint.ToString());
+            deviceConditionsInfo.Add("Cluster_ID", "1280");
+            deviceConditionsInfo.Add("AttriButeId", "1281");
+            deviceConditionsInfo.Add("AttriButeData1", "0");
+            deviceConditionsInfo.Add("AttriButeData2", "0");
+            deviceConditionsInfo.Add("Range", "1");
+            if (selectetimedvalue != 0)
+            {
+                if (timevalue != selectetimedvalue)
+                {
+                    if (deviceConditionsInfo.ContainsKey("IgnoreTime"))
+                    {
+                        deviceConditionsInfo.Remove("IgnoreTime");
+                    }
+                    deviceConditionsInfo.Add("IgnoreTime", selectetimedvalue.ToString());
+                    LogicIfon.AddDeviceconditions(common, deviceConditionsInfo);
+                }
+
+            }
+            else
+            {
+                if (!edit)
+                {
+
+                    var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
+                        Language.StringByID(MyInternationalizationString.delaytip),
+                        Language.StringByID(MyInternationalizationString.confrim));
+                    alert.Show();
+                    return;
+                }
+
+            }
+            var logicCommunalPage = new LogicCommunalPage();
+            UserView.HomePage.Instance.AddChidren(logicCommunalPage);
+            UserView.HomePage.Instance.PageIndex += 1;
+            logicCommunalPage.Show(() => { });
+
+        }
+    }
+}

--
Gitblit v1.8.0