From 43b0d5870d528f23ecd6aeceb6cfd4325188b46f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 01 七月 2021 15:50:43 +0800
Subject: [PATCH] Revert "1"

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs |  338 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 338 insertions(+), 0 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs
new file mode 100644
index 0000000..a79324c
--- /dev/null
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs
@@ -0,0 +1,338 @@
+锘縰sing System;
+using Shared;
+using System.Collections.Generic;
+namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView
+{
+    public class TimeView
+    {
+        /// <summary>
+        /// 涓绘帶浠�
+        /// </summary>
+        public FrameLayout frameLayout = new FrameLayout
+        {
+            Y = Application.GetRealHeight(350),
+            Height = Application.GetRealHeight(297),
+            Width = Application.GetRealWidth(343),
+            X = Application.GetRealWidth(16),
+            BackgroundColor = CSS.CSS_Color.view,
+            Radius =(uint)Application.GetRealHeight(12),
+        };
+        /// <summary>
+        /// 鏃堕棿鎺т欢UIPickerView 
+        /// </summary>
+        public UIPickerView mUIPickerView = new UIPickerView
+        {
+            X= Application.GetRealWidth(12),
+            Height = Application.GetRealHeight(297),
+            Width = Application.GetRealWidth(343-12*2),
+            BackgroundColor =CSS.CSS_Color.viewTranslucence,
+            Radius = (uint)Application.GetRealHeight(12),
+
+        };
+        /// <summary>
+        /// 鍙栨秷Btn
+        /// </summary>
+        public Button btnCancel = new Button
+        {
+            TextID = StringId.cancelSelected,
+            TextSize = TextSize.text14,
+            TextColor = CSS.CSS_Color.textCancelColor,
+            Width = Application.GetRealWidth(52),
+            Height = Application.GetRealHeight(32),
+            Y = Application.GetRealHeight(6),
+            X = Application.GetRealWidth(8),
+            
+        };
+        /// <summary>
+        /// 纭畾Btn
+        /// </summary>
+        public Button btnConfirm = new Button
+        {
+            TextID = StringId.confirmSelected,
+            TextSize = TextSize.text14,
+            TextColor = CSS.CSS_Color.textConfirmColor,
+            Width = Application.GetRealWidth(52),
+            Height = Application.GetRealHeight(32),
+            X = Application.GetRealWidth(283),
+            Y = Application.GetRealHeight(6),
+        };
+        /// <summary>
+        ///  绾�
+        /// </summary>
+        public Button btnLine = new Button
+        {
+            BackgroundColor = CSS.CSS_Color.viewLine,
+            Width = Application.GetRealWidth(343),
+            Height = 1,
+            Y = Application.GetRealWidth(44),
+           
+        };
+        /// <summary>
+        /// 鏃堕棿View鐨勬柟娉�
+        /// </summary>
+        /// <returns></returns>
+        public void FLayoutView(FrameLayout fLayout)
+        {
+           
+            fLayout.AddChidren(frameLayout);
+            frameLayout.AddChidren(mUIPickerView);
+            frameLayout.AddChidren(btnCancel);
+            frameLayout.AddChidren(btnConfirm);
+            frameLayout.AddChidren(btnLine);
+        }
+        /// <summary>
+        /// 閫変腑鏃堕棿鐨勬柟娉�
+        /// </summary>
+        /// <param name="fLayout">鐖舵帶浠�</param>
+        /// <param name="currState">涔嬪墠鐘舵�佸��</param>
+        /// <param name="action">杩斿洖鏃堕棿鍊�</param>
+        public void TimePoint(FrameLayout fLayout, string currState, Action<string> action)
+        {
+            //鍙栨秷鐐瑰嚮浜嬩欢
+            btnCancel.MouseUpEventHandler += (sender, e1) =>
+            {
+                //绉婚櫎fLayout鐣岄潰
+                fLayout.RemoveFromParent();
+            };
+            //鍔犺浇鏁版嵁鐣岄潰鐨勮缃柟娉�(鍒楄〃浜掍笉鑱斿姩)
+            mUIPickerView.setNPicker(GethStringList(), GetmStringList(), null);
+            var systemHour = DateTime.Now.Hour; //鑾峰彇灏忔椂
+            var systeMinute = DateTime.Now.Minute;//鑾峰彇鍒嗛挓
+            int systemHourIndex = 0;
+            int systeMinuteIndex = 0;
+            for (int i = 0; i < GethIntList().Count; i++)
+            {
+                var currhour = GethIntList()[i];
+                if (systemHour == currhour)
+                {
+                    systemHourIndex = i;
+                    break;
+                }
+            }
+            for (int i = 0; i < GetmIntList().Count; i++)
+            {
+                var currminute = GetmIntList()[i];
+                if (systeMinute == currminute)
+                {
+                    systeMinuteIndex = i;
+                    break;
+                }
+            }
+
+            //榛樿鍒濆閫変腑鐘舵��
+            mUIPickerView.setCurrentItems(systemHourIndex, systeMinuteIndex, 0);
+            string currH = "";
+            string currM = "";
+            if (systemHour < 10)
+            {
+                currH = "0" + systemHour.ToString();
+            }
+            else
+            {
+                currH = systemHour.ToString();
+            }
+            if (systeMinute < 10)
+            {
+                currM = "0" + systeMinute.ToString();
+            }
+            else
+            {
+                currM = systeMinute.ToString();
+            }
+            //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏃堕棿
+            string timepoint = currH + ":" + currM;
+            if (currState != "")
+            {
+                int hIndex = GetValueIndex(currState, 0, 1, GethIntList());
+                int mIndex = GetValueIndex(currState, 1, 0, GetmIntList());
+                //鏇存柊鍒濆鐘舵��
+                mUIPickerView.setCurrentItems(hIndex, mIndex, 0);
+                timepoint = currState;
+            }
+
+            //閫変腑鏃堕棿鍥炶皟鏂规硶,鏃堕棿鍙樺寲涓�娆″洖璋冧竴娆�
+            mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) =>
+            {
+                string hour = GethStringList()[index1].Split(' ')[0];
+                string minuet = GetmStringList()[index2].Split(' ')[0];
+                timepoint = hour + ":" + minuet;
+            };
+            //纭畾鐐瑰嚮浜嬩欢
+            btnConfirm.MouseUpEventHandler += (sender, e3) =>
+            {
+                action(timepoint);
+                //绉婚櫎fLayout鐣岄潰
+                fLayout.RemoveFromParent();
+
+            };
+        }
+        /// <summary>
+        /// 鑾峰彇1-24灏忔椂鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<string> GethStringList()
+        {
+            //鍒濆鍖栧垪琛�
+            var hList = new List<string>();
+            for (int i = 0; i < 24; i++)
+            {
+                if (i < 10)
+                {
+                    var a = "0" + i.ToString();
+                    //娣诲姞鏁版嵁
+                    hList.Add(a + " " + Language.StringByID(StringId.h));
+                }
+                else
+                {
+                    //娣诲姞鏁版嵁
+                    hList.Add(i.ToString() + " " + Language.StringByID(StringId.h));
+                }
+
+            }
+            return hList;
+
+
+        }
+        /// <summary>
+        /// 鑾峰彇0-23灏忔椂鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<string> GethStringList0()
+        {
+            //鍒濆鍖栧垪琛�
+            var hList = new List<string>();
+            for (int i = 0; i < 24; i++)
+            {
+                if (i < 10)
+                {
+                    var a = "0" + i.ToString();
+                    //娣诲姞鏁版嵁
+                    hList.Add(a + " " + Language.StringByID(StringId.h));
+                }
+                else
+                {
+                    //娣诲姞鏁版嵁
+                    hList.Add(i.ToString() + " " + Language.StringByID(StringId.h));
+                }
+
+            }
+            return hList;
+
+
+        }
+        /// <summary> 
+        /// 鑾峰彇60鍒嗛挓鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<string> GetmStringList()
+        {
+            //鍒濆鍖栧垪琛�
+            var mList = new List<string>();
+            for (int i = 0; i < 60; i++)
+            {
+                if (i < 10)
+                {
+                    var a = "0" + i.ToString();
+                    //娣诲姞鏁版嵁
+                    mList.Add(a + " " + Language.StringByID(StringId.m));
+                }
+                else
+                {
+                    //娣诲姞鏁版嵁
+                    mList.Add(i.ToString() + " " + Language.StringByID(StringId.m));
+                }
+
+            }
+
+            return mList;
+        }
+        /// <summary> 
+        /// 鑾峰彇60绉掑垪琛�
+        /// </summary>
+        /// <returns></returns>
+        public List<string> GetsStringList()
+        {
+            //鍒濆鍖栧垪琛�
+            var mList = new List<string>();
+            for (int i = 0; i < 60; i++)
+            {
+                if (i < 10)
+                {
+                    var a = "0" + i.ToString();
+                    //娣诲姞鏁版嵁
+                    mList.Add(a + " " + Language.StringByID(StringId.s));
+                }
+                else
+                {
+                    //娣诲姞鏁版嵁
+                    mList.Add(i.ToString() + " " + Language.StringByID(StringId.s));
+                }
+
+            }
+
+            return mList;
+        }
+
+        /// <summary>
+        /// 鑾峰彇023灏忔椂鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<int> GethIntList()
+        {
+            //鍒濆鍖栧垪琛�
+            var hList = new List<int>();
+            for (int i = 0; i < 24; i++)
+            {
+                //娣诲姞鏁版嵁
+                hList.Add(i);
+            }
+            return hList;
+
+
+        }
+        
+        /// <summary>
+        /// 鑾峰彇60鍒嗛挓鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<int> GetmIntList()
+        {
+            //鍒濆鍖栧垪琛�
+            var mList = new List<int>();
+            for (int i = 0; i < 60; i++)
+            {
+                //娣诲姞鏁版嵁
+                mList.Add(i);
+            }
+            return mList;
+        }
+       
+        /// <summary>
+        /// 鑾峰彇鏃堕棿鍊�
+        /// </summary>
+        /// <param name="str">婧愭暟鎹�</param>
+        /// <param name="digit">杩斿洖婧愭暟鎹暟缁勯噷闈㈡煇涓�肩储寮�</param>
+        /// <param name="startIndex"></param>
+        /// <param name="list"></param>
+        /// <returns></returns>
+        public int GetValueIndex(string str, int digit, int startIndex, List<int> list)
+        {
+            int index = 0;
+            int value = 0;
+            if (str.Contains(":"))
+            {
+                value = int.Parse(str.Split(':')[digit]);
+            }
+            for (int i = startIndex; i < list.Count; i++)
+            {
+                if (value == i)
+                {
+                    index = i;
+                    break;
+                }
+            }
+            return index;
+        }
+
+    }
+}

--
Gitblit v1.8.0