From c173a2976e0fcb61649cac7dd192fedbfbb5cb60 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 28 十二月 2020 17:51:07 +0800
Subject: [PATCH] 2020-12-28-1

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs |  267 ++++++++++++++++++++++++-----------------------------
 1 files changed, 122 insertions(+), 145 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
index a139048..22fefd3 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
@@ -51,14 +51,57 @@
                 case FunctionType.RGBW:
                 case FunctionType.ColorTemperature:
                     {
-                        //2琛ㄧず(寮�锛屽叧)鍔熻兘
-                        SwitchBrightnessView(fLayout, device, index, edit, 2);
+                        #region 鐣岄潰
+                        ///寮�鍏�
+                        LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView();
+                        lightSwitchView.btnText.TextID = StringId.switchLogic;
+                        fLayout.AddChidren(lightSwitchView.FLayoutView());
+                        ///浜害
+                        LogicView.FunTypeView brightnessView = new LogicView.FunTypeView();
+                        brightnessView.frameLayout.Y = lightSwitchView.frameLayout.Bottom;
+                        brightnessView.btnText.TextID = StringId.brightnesLogic;
+                        fLayout.AddChidren(brightnessView.FLayoutView());
+                        #endregion
+                        #region 鐐瑰嚮浜嬩欢
+                        ///寮�鍏崇偣鍑讳簨浠�
+                        lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SwitchViewMethod(device, lightSwitchView.btnState, 2);
+                        };
+                        ///浜害鐐瑰嚮浜嬩欢
+                        brightnessView.btnClick.MouseUpEventHandler += (sender, e) =>
+                        {
+                            BrightnessMethod(device, brightnessView.btnState, brightnessView.btnText.Text);
+
+                        };
+                        if (edit)
+                        {
+                            //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
+                            GetEditState(device, index, lightSwitchView.btnState, brightnessView.btnState, null, null);
+                        }
+                        #endregion
                     }
                     break;
                 case FunctionType.Relay:
                     {
-                        //2琛ㄧず(寮�锛屽叧)鍔熻兘
-                        SwitchView(fLayout, device, index, edit, 2);
+                        #region 鐣岄潰
+                        ///寮�鍏�
+                        LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView();
+                        lightSwitchView.btnText.TextID = StringId.switchLogic;
+                        fLayout.AddChidren(lightSwitchView.FLayoutView());
+                        #endregion
+                        #region 鐐瑰嚮浜嬩欢
+                        ///寮�鍏崇偣鍑讳簨浠�
+                        lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SwitchViewMethod(device, lightSwitchView.btnState, 2);
+                        };
+                        if (edit)
+                        {
+                            //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
+                            GetEditState(device, index, lightSwitchView.btnState, null, null, null);
+                        }
+                        #endregion
                     }
                     break;
                 //绐楀笜
@@ -66,8 +109,24 @@
                 case FunctionType.MotorCurtain:
                 case FunctionType.RollingShutter:
                     {
-                        //3琛ㄧず(寮�锛屽叧锛屾殏鍋�)鍔熻兘
-                        SwitchView(fLayout, device, index, edit, 3);
+                        #region 鐣岄潰
+                        ///寮�鍏�
+                        LogicView.FunTypeView curtainSwitchView = new LogicView.FunTypeView();
+                        curtainSwitchView.btnText.TextID = StringId.switchLogic;
+                        fLayout.AddChidren(curtainSwitchView.FLayoutView());
+                        #endregion
+                        #region 鐐瑰嚮浜嬩欢
+                        ///寮�鍏崇偣鍑讳簨浠�
+                        curtainSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SwitchViewMethod(device, curtainSwitchView.btnState, 3);
+                        };
+                        if (edit)
+                        {
+                            //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
+                            GetEditState(device, index, curtainSwitchView.btnState, null, null, null);
+                        }
+                        #endregion
                     }
                     break;
                 case FunctionType.AC:
@@ -107,19 +166,17 @@
                         {
                             ///涔嬪墠鐨勭姸鎬佹枃鏈�
                             string tempValue = temperatureView.btnState.Text;
-                            LogicView.TemperatureView tempView= new LogicView.TemperatureView();
-                            tempView.FLayoutView(this, tempValue,(stateStr)=> {
+                            LogicView.TemperatureView tempView = new LogicView.TemperatureView();
+                            tempView.FLayoutView(this, tempValue, (stateStr) =>
+                            {
                                 //鐣岄潰鏄剧ず閫変腑鍊�
                                 temperatureView.btnState.Text = stateStr;
                                 //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
                                 string keyVlaue = "set_temp";
-                                selectedState = device.functionType + "_"+ keyVlaue;
+                                selectedState = device.functionType + "_" + keyVlaue;
                                 string set_temp_value = stateStr.Replace("鈩�", "");
                                 //鏁版嵁灏佽
-                                Dictionary<string, string> dic = new Dictionary<string, string>();
-                                LogicMethod.dictionary(dic, "key", keyVlaue);
-                                LogicMethod.dictionary(dic, "value", set_temp_value);
-                                AddDictionaryData(dicSateteList, keyVlaue, dic);
+                                AddDictionary(keyVlaue, set_temp_value);
                             });
 
 
@@ -131,20 +188,16 @@
                             string currText = acModehView.btnState.Text;
                             //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
                             string keyVlaue = "mode";
-                            selectedState = device.functionType + "_"+keyVlaue;
+                            selectedState = device.functionType + "_" + keyVlaue;
                             PublicInterface modeView = new PublicInterface();
-                            var modeListStr=  modeView.GetViewList(keyVlaue);
+                            var modeListStr = modeView.GetViewList(keyVlaue);
                             modeView.SingleSelectionShow(this, modeListStr, Language.StringByID(StringId.modeLogic), currText
                                , (stateValue) =>
                                {
                                    //鐣岄潰鏄剧ず閫変腑鍊�
                                    acModehView.btnState.Text = stateValue;
                                    //鏁版嵁灏佽
-                                   Dictionary<string, string> dic = new Dictionary<string, string>();
-                                   LogicMethod.dictionary(dic, "key", keyVlaue);
-                                   LogicMethod.dictionary(dic, "value", modeView.GetModeValueString(stateValue, keyVlaue));
-                                   AddDictionaryData(dicSateteList, keyVlaue, dic);
-
+                                   AddDictionary(keyVlaue, modeView.GetModeValueString(stateValue, keyVlaue));
                                });
 
                         };
@@ -165,10 +218,7 @@
                                    //鐣岄潰鏄剧ず閫変腑鍊�
                                    acSpeedView.btnState.Text = stateValue;
                                    //鏁版嵁灏佽
-                                   Dictionary<string, string> dic = new Dictionary<string, string>();
-                                   LogicMethod.dictionary(dic, "key", keyVlaue);
-                                   LogicMethod.dictionary(dic, "value", speedView.GetModeValueString(stateValue, keyVlaue));
-                                   AddDictionaryData(dicSateteList, keyVlaue, dic);
+                                   AddDictionary(keyVlaue, speedView.GetModeValueString(stateValue, keyVlaue));
 
                                });
                         };
@@ -207,6 +257,7 @@
                         ///寮�鍏崇偣鍑讳簨浠�
                         floorHeatingSwitchVie.btnClick.MouseUpEventHandler += (sender, e) =>
                         {
+
                             SwitchViewMethod(device, floorHeatingSwitchVie.btnState, 2);
                         };
                         ///娓╁害鐐瑰嚮浜嬩欢
@@ -214,33 +265,30 @@
                         {
                             string tempValue = temperatureView.btnState.Text;
                             LogicView.TemperatureView tempView = new LogicView.TemperatureView();
-                            tempView.FLayoutView(this, tempValue, (stateStr) => {
+                            tempView.FLayoutView(this, tempValue, (stateStr) =>
+                            {
                                 //鐣岄潰鏄剧ず閫変腑鍊�
                                 temperatureView.btnState.Text = stateStr;
                                 //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
                                 string keyVlaue = "set_temp";
-                                selectedState = device.functionType + "_"+ keyVlaue;
+                                selectedState = device.functionType + "_" + keyVlaue;
                                 string set_temp_value = stateStr.Replace("鈩�", "");
                                 //鏁版嵁灏佽
-                                Dictionary<string, string> dic = new Dictionary<string, string>();
-                                LogicMethod.dictionary(dic, "key", keyVlaue);
-                                LogicMethod.dictionary(dic, "value", set_temp_value);
-                                AddDictionaryData(dicSateteList, keyVlaue, dic);
+                                AddDictionary(keyVlaue, set_temp_value);
 
                             });
-                           
+
                         };
                         ///妯″紡鐐瑰嚮浜嬩欢
                         floorHeatingModehView.btnClick.MouseUpEventHandler += (sender, e) =>
                         {
-                           
-                           
+
+
                             ///涔嬪墠鐨勭姸鎬佹枃鏈�
-                            string currText= floorHeatingModehView.btnState.Text;
+                            string currText = floorHeatingModehView.btnState.Text;
                             //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
                             string keyVlaue = "mode";
-                            selectedState = device.functionType + "_"+ keyVlaue;
-
+                            selectedState = device.functionType + "_" + keyVlaue;
                             PublicInterface modeView = new PublicInterface();
                             var modeListStr = modeView.GetViewList("floorheatingmode");
                             modeView.SingleSelectionShow(this, modeListStr, Language.StringByID(StringId.modeLogic), currText
@@ -249,10 +297,7 @@
                                    //鐣岄潰鏄剧ず閫変腑鍊�
                                    floorHeatingModehView.btnState.Text = stateValue;
                                    //鏁版嵁灏佽
-                                   Dictionary<string, string> dic = new Dictionary<string, string>();
-                                   LogicMethod.dictionary(dic, "key", keyVlaue);
-                                   LogicMethod.dictionary(dic, "value", modeView.GetModeValueString(stateValue, "floorheatingmode"));
-                                   AddDictionaryData(dicSateteList, keyVlaue, dic);
+                                   AddDictionary(keyVlaue, modeView.GetModeValueString(stateValue, "floorheatingmode"));
                                });
 
                         };
@@ -271,8 +316,6 @@
             #region  淇濆瓨鐐瑰嚮浜嬩欢
             saveView.btnClick.MouseUpEventHandler += (sen, e) =>
             {
-
-
                 if (selectedState != "unknown")
                 {
                     Output outputDevice = new Output();
@@ -372,85 +415,6 @@
             #endregion
 
         }
-       
-        /// <summary>
-        ///寮�鍏�=鐣岄潰
-        /// </summary>
-        /// <param name="fLayout"></param>
-        /// <param name="device"></param>
-        /// <param name="index"></param>
-        /// <param name="edit"></param>
-        /// <param name="intView">閫変腑View鐨勬暟閲�</param>
-        private void SwitchView(FrameLayout fLayout, Entity.Function device, int index, bool edit, int intView)
-        {
-            #region 鐣岄潰
-            ///寮�鍏�
-            LogicView.FunTypeView curtainSwitchView = new LogicView.FunTypeView();
-            curtainSwitchView.btnText.TextID = StringId.switchLogic;
-            fLayout.AddChidren(curtainSwitchView.FLayoutView());
-            #endregion
-            #region 鐐瑰嚮浜嬩欢
-            ///寮�鍏崇偣鍑讳簨浠�
-            curtainSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
-            {
-                SwitchViewMethod(device, curtainSwitchView.btnState, intView);
-            };
-            if (edit)
-            {
-                //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
-                GetEditState(device, index, curtainSwitchView.btnState, null, null, null);
-            }
-            #endregion
-
-        }
-        /// <summary>
-        ///锛堝紑鍏�+浜害/鐧惧垎姣�)鐣岄潰
-        /// </summary>
-        /// <param name="fLayout"></param>
-        /// <param name="device"></param>
-        /// <param name="index"></param>
-        /// <param name="edit"></param>
-        /// <param name="intView">閫変腑View鐨勬暟閲�</param>
-        private void SwitchBrightnessView(FrameLayout fLayout, Entity.Function device, int index, bool edit, int intView)
-        {
-            #region 鐣岄潰
-            ///寮�鍏�
-            LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView();
-            lightSwitchView.btnText.TextID = StringId.switchLogic;
-            fLayout.AddChidren(lightSwitchView.FLayoutView());
-            ///浜害
-            LogicView.FunTypeView brightnessView = new LogicView.FunTypeView();
-            brightnessView.frameLayout.Y = lightSwitchView.frameLayout.Bottom;
-            if (device.functionType == FunctionType.MotorCurtain || device.functionType == FunctionType.RollingShutter)
-            {
-
-                brightnessView.btnText.TextID = StringId.percentum;
-            }
-            else
-            {
-                brightnessView.btnText.TextID = StringId.brightnesLogic;
-            }
-            fLayout.AddChidren(brightnessView.FLayoutView());
-            #endregion
-            #region 鐐瑰嚮浜嬩欢
-            ///寮�鍏崇偣鍑讳簨浠�
-            lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
-            {
-                SwitchViewMethod(device, lightSwitchView.btnState, intView);
-            };
-            ///浜害鐐瑰嚮浜嬩欢
-            brightnessView.btnClick.MouseUpEventHandler += (sender, e) =>
-            {
-                BrightnessMethod(device, brightnessView.btnState, brightnessView.btnText.Text);
-            };
-            if (edit)
-            {
-                //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
-                GetEditState(device, index, lightSwitchView.btnState, brightnessView.btnState, null, null);
-            }
-            #endregion
-
-        }
         /// <summary>
         /// 寮�鍏�=鍔熻兘涓嬩竴绾х晫闈�
         /// </summary>
@@ -469,28 +433,31 @@
             switchView.FLayoutView(frame, len, button.Text, (strValue) =>
             {
                 int id = 0;
-                switch (strValue) {
-                    case "on": {
+                switch (strValue)
+                {
+                    case "on":
+                        {
                             id = StringId.onLogic;
                         }
                         break;
-                    case "off": {
+                    case "off":
+                        {
                             id = StringId.offLogic;
-                        } break;
-                    case "stop": {
+                        }
+                        break;
+                    case "stop":
+                        {
                             id = StringId.stop;
-                        } break;
+                        }
+                        break;
                 }
                 //鐣岄潰鏄剧ず閫変腑鍊�
                 button.TextID = id;
                 selectedState = device.functionType + "_" + strValue;
+                //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
                 string keyVlaue = "on_off";
                 //鏁版嵁灏佽
-                Dictionary<string, string> dic = new Dictionary<string, string>();
-                LogicMethod.dictionary(dic, "key", "on_off");
-                LogicMethod.dictionary(dic, "value", strValue);
-                AddDictionaryData(dicSateteList, keyVlaue, dic);
-
+                AddDictionary(keyVlaue, strValue);
             });
             #endregion
         }
@@ -508,11 +475,10 @@
             brightness.FLayoutView(this, titleName, stateVlaue, (brightnesValue) =>
             {
                 //鐣岄潰鏄剧ず閫変腑鍊�
-                button.Text = brightnesValue+"%";
-                string keyVlaue = "";
+                button.Text = brightnesValue + "%";
                 selectedState = device.functionType + brightnesValue.ToString();
-                //鏁版嵁灏佽
-                Dictionary<string, string> dic = new Dictionary<string, string>();
+                //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
+                string keyVlaue = "";
                 switch (device.functionType)
                 {
                     //寮�鍏崇伅鍏� light.Switch
@@ -521,20 +487,18 @@
                     case FunctionType.RGBW:
                     case FunctionType.ColorTemperature:
                         {
-                            LogicMethod.dictionary(dic, "key", "brightness");
                             keyVlaue = "brightness";
                         }
                         break;
                     case FunctionType.MotorCurtain:
                     case FunctionType.RollingShutter:
                         {
-                            LogicMethod.dictionary(dic, "key", "percent");
                             keyVlaue = "percent";
                         }
                         break;
                 }
-                LogicMethod.dictionary(dic, "value", brightnesValue.ToString());
-                AddDictionaryData(dicSateteList, keyVlaue, dic);
+                //鏁版嵁灏佽
+                AddDictionary(keyVlaue, brightnesValue);
             });
             #endregion
 
@@ -562,13 +526,26 @@
             InpOrOutLogicMethod.EditState(device, dicList, button1, button2, button3, button4);
         }
         /// <summary>
-        /// 娣诲姞澶勭悊閫変腑鏁版嵁
+        /// 娣诲姞閫変腑鏁版嵁
         /// </summary>
-        /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param>
-        /// <param name="keyValue">璇嗗埆璁惧</param> 
+        /// <param name="KeyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param>
+        /// <param name="selectedValue">鐘舵�佸��</param>
+        private void AddDictionary(string KeyValue, string selectedValue)
+        {
+            //鏁版嵁灏佽
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            LogicMethod.dictionary(dic, "key", KeyValue);
+            LogicMethod.dictionary(dic, "value", selectedValue);
+            AddDictionaryList(KeyValue, dic, dicSateteList);
+        }
+        /// <summary>
+        /// 鏇存柊鏁版嵁鍒楄〃
+        /// </summary>
+        /// <param name="keyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param> 
         /// <param name="dictionary">閫変腑鏁版嵁</param>
+        /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param>
         /// <returns></returns>
-        private void AddDictionaryData(List<Dictionary<string, string>> dicList, string keyValue, Dictionary<string, string> dictionary)
+        private void AddDictionaryList(string keyValue, Dictionary<string, string> dictionary, List<Dictionary<string, string>> dicList)
         {
             int indexValue = -1;
             for (int i = 0; i < dicList.Count; i++)
@@ -623,7 +600,7 @@
             }
 
         }
-     
+
 
 
     }

--
Gitblit v1.8.0