From ae142832f9721956f963cf008047a2620a035bf7 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 27 十一月 2020 17:00:58 +0800
Subject: [PATCH] 2020-11-27-3

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs |  139 +++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 117 insertions(+), 22 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
index c20eedd..0526ac0 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
@@ -11,10 +11,10 @@
         {
             Tag = "Logic";
         }
-        
+
         public void Show()
         {
-            
+
             this.BackgroundColor = CSS.CSS_Color.viewMiddle;
             LogicView.TopView topView = new LogicView.TopView();
             this.AddChidren(topView.FLayoutView());
@@ -23,7 +23,7 @@
                  RemoveFromParent();
              };
             topView.topNameBtn.TextID = StringId.newAutomation;
-            
+
             VerticalScrolViewLayout viewLayout = new VerticalScrolViewLayout
             {
                 Y = Application.GetRealHeight(64),
@@ -101,7 +101,7 @@
                     BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
                 };
                 this.AddChidren(fLayout);
-                DateMethod(fLayout,cyclicTitle.btnText);
+                DateMethod(fLayout, cyclicTitle.btnText);
 
 
             };
@@ -135,7 +135,7 @@
                 Logic.LogicList.Add(Logic.currlogic);
                 LogicMethod.RemoveAllView();
                 MainView.MainShow();
-                
+
             };
             //saveView.frameLayout.Y = this.Height - saveView.frameLayout.Height;
             #endregion
@@ -148,7 +148,7 @@
         /// </summary>
         /// <param name="fLayout">寮规涓绘帶浠�</param>
         /// <param name="button">鏄剧ず鏂囨湰</param>
-        public void DateMethod(FrameLayout fLayout,Button button)
+        public void DateMethod(FrameLayout fLayout, Button button)
         {
 
             LogicView.DateView dateView = new LogicView.DateView();
@@ -204,7 +204,8 @@
                 }
                 dateTypeView.btnText.Text = weekName;
                 //寰幆绫诲瀷(渚嬪锛氭瘡鏈堬紝姣忓ぉ)鐐瑰嚮浜嬩欢
-                dateTypeView.btnClick.MouseUpEventHandler += (sender, e) => {
+                dateTypeView.btnClick.MouseUpEventHandler += (sender, e) =>
+                {
                     int clickIndex = int.Parse(dateTypeView.btnClick.Tag.ToString());
                     switch (clickIndex)
                     {
@@ -227,7 +228,7 @@
                             break;
                         case 2:
                             {
-                               // weekName = Language.StringByID(StringId.weekly);
+                                // weekName = Language.StringByID(StringId.weekly);
                                 WeekMethod(fLayout, button);
                             }
                             break;
@@ -242,7 +243,7 @@
                     }
                 };
 
-             
+
                 //鏄剧ず涔嬪墠鐨勭姸鎬�
                 if (button.Text == weekName)
                 {
@@ -258,12 +259,18 @@
             //纭畾淇濆瓨
             dateView.btnConfirm.MouseUpEventHandler += (sender3, e3) =>
             {
+                if (weekName == Language.StringByID(StringId.monthly)|| weekName!= Language.StringByID(StringId.weekly)) {
+                    //鎻愮ず锛氳繕鏈��
+                    return;
+
+                }
+
                 if (weekName == Language.StringByID(StringId.performA))
                 {
                     //鎵ц涓�娆�
                     Logic.currlogic.cycle.type = "once";
                 }
-                else if (weekName == Language.StringByID(StringId.performA))
+                else if (weekName == Language.StringByID(StringId.days))
                 {
                     //姣忓ぉ
                     Logic.currlogic.cycle.type = "day";
@@ -292,7 +299,7 @@
             };
             //瀹氫箟涓�涓眬閮╳eekList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁;
             List<string> weekList = new List<string>();
-            if (Logic.currlogic.cycle.type == "mon")
+            if (Logic.currlogic.cycle.type == "week")
             {
                 //鍔犺浇涔嬪墠淇濆瓨鐨勬暟鎹�
                 weekList.AddRange(Logic.currlogic.cycle.value);
@@ -388,12 +395,14 @@
 
             }
             //纭畾鐐瑰嚮浜嬩欢
-            weekView.btnConfirm.MouseUpEventHandler += (sender1, e1) => {
-                if (weekList.Count==0) {
+            weekView.btnConfirm.MouseUpEventHandler += (sender1, e1) =>
+            {
+                if (weekList.Count == 0)
+                {
                     //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡
                     return;
                 }
-                Logic.currlogic.cycle.type = "mon";
+                Logic.currlogic.cycle.type = "week";
                 Logic.currlogic.cycle.value = weekList;
                 button.Text = GetWeekString(weekList);
                 fLayout.RemoveFromParent();
@@ -414,23 +423,89 @@
             {
                 monView.frameLayout.RemoveFromParent();
             };
-            //58
+            //瀹氫箟涓�涓眬閮╩onList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁;
+            List<string> monList = new List<string>();
+            if (Logic.currlogic.cycle.type == "mon")
+            {
+                //鍔犺浇涔嬪墠淇濆瓨鐨勬暟鎹�
+                monList.AddRange(Logic.currlogic.cycle.value);
+            }
+            //瀹氫箟涓�涓彉閲忚褰曡鏁�
             int lineSun = 0;
-            for (int i = 0; i < 32; i++)
+            for (int i = 1; i < 32; i++)
             {
                 Button monTextBtn = new Button
                 {
                     Width = Application.GetMinRealAverage(30),
                     Height = Application.GetMinRealAverage(30),
+                    Radius = (uint)Application.GetRealHeight(15),
+                    Text = i.ToString(),
+                    TextSize = LogicView.TextSize.text14,
+                    TextColor = CSS.CSS_Color.textColor,
+                    SelectedTextColor = CSS.CSS_Color.view,
+                    SelectedBackgroundColor = CSS.CSS_Color.textConfirmColor,
+                    BackgroundColor = CSS.CSS_Color.viewTranslucence,
+                    Tag = i,
                 };
+                monView.frameLayout.AddChidren(monTextBtn);
+                if (lineSun > 0)
+                {
+                    monTextBtn.X = Application.GetRealWidth(16 + ((i - 1) - lineSun * 7) * 46);
+                }
+                else
+                {
+
+                    monTextBtn.X = Application.GetRealWidth(16 + (i - 1) * 46);
+                }
+                monTextBtn.Y = Application.GetRealWidth(58 + 10 + lineSun * (30 + 10));
+
                 if (i % 7 == 0)
                 {
+                    //涓�瀹氭墽琛屽畬鍐嶅垽鏂槸鍚﹁鎹㈣.
+                    lineSun = lineSun + 1;
+
                 }
-                else { }
+                monTextBtn.MouseUpEventHandler += (sender, e) =>
+                {
+                    string clickIndex = monTextBtn.Tag.ToString();
+                    monTextBtn.IsSelected = !monTextBtn.IsSelected;
+                    if (monTextBtn.IsSelected)
+                    {
+                        monTextBtn.IsSelected = true;
+                        if (!monList.Contains(clickIndex))
+                        {
+                            //娣诲姞閫変腑鏁版嵁
+                            monList.Add(clickIndex);
+                        }
+                    }
+                    else
+                    {
+                        monTextBtn.IsSelected = false;
+                        if (monList.Contains(clickIndex))
+                        {
+                            //绉婚櫎閫変腑鏁版嵁
+                            monList.Remove(clickIndex);
+                        }
+                    }
+                };
 
-
-
+                if (monList.Contains(i.ToString())) {
+                    monTextBtn.IsSelected = true;
+                }
             }
+            //纭畾鐐瑰嚮浜嬩欢
+            monView.btnConfirm.MouseUpEventHandler += (sender1, e1) =>
+            {
+                if (monList.Count == 0)
+                {
+                    //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡
+                    return;
+                }
+                Logic.currlogic.cycle.type = "mon";
+                Logic.currlogic.cycle.value = monList;
+                button.Text = GetMonString(monList);
+                fLayout.RemoveFromParent();
+            };
         }
         /// <summary>
         /// 鑾峰彇鏄熸湡鐨勫瓧绗︿覆
@@ -441,8 +516,9 @@
         {
             string weekTextName = "";
 
-            if (weekList.Contains("0")) {
-                weekTextName += Language.StringByID(StringId.monday)+",";
+            if (weekList.Contains("0"))
+            {
+                weekTextName += Language.StringByID(StringId.monday) + ",";
             }
             if (weekList.Contains("1"))
             {
@@ -468,10 +544,29 @@
             {
                 weekTextName += Language.StringByID(StringId.sunday) + ",";
             }
-            if (weekTextName=="") {
+            if (weekTextName == "")
+            {
                 return "";
             }
             return weekTextName.TrimEnd(',');
         }
+        /// <summary>
+        /// 鑾峰彇姣忔湀鐨勫瓧绗︿覆
+        /// </summary>
+        /// <param name="monList"></param>
+        /// <returns></returns>
+        public string GetMonString(List<string> monList)
+        {
+            string monTextName = Language.StringByID(StringId.monthly);
+
+            for (int i = 1; i < 32; i++)
+            {
+                if (monList.Contains(i.ToString()))
+                {
+                    monTextName += i.ToString() + ",";
+                }
+            }
+            return monTextName.TrimEnd(',');
+        }
     }
 }

--
Gitblit v1.8.0