JLChen
2020-12-23 320d7cc8feb394d0ce3db2ec1d01593b554d990f
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -21,7 +21,7 @@
                ///记录条件类型
                inputView.btnClick.Name = inputCondition.condition_type;
                ///记录条件索引
                inputView.btnClick.Tag = i;
                inputView.btnClick.Tag = inputCondition.sid;
                ///条件状态数组
                List<Dictionary<string, string>> dicList = inputCondition.condition as List<Dictionary<string, string>>;
                //显示条件各种类型状态
@@ -104,7 +104,19 @@
                {
                    Button button = (Button)sen;
                    //找到当前编辑的索引
                    int indexVulae = int.Parse(inputView.btnClick.Tag.ToString());
                    int indexVulae = 0;
                    for (int index = 0; index < Logic.currlogic.input.Count; index++)
                    {
                        Input input = Logic.currlogic.input[index];
                        if (input.sid == inputView.btnClick.Tag.ToString())
                        {
                            //用户可能删除数据,使列表索引发生改变;
                            //通过唯一sid重新查找到索引且更新索引值
                            indexVulae = index;
                            break;
                        }
                    }
                    //标记编辑状态
                    bool edit = true;
                    switch (button.Name)
@@ -131,7 +143,6 @@
                                timeTpye.TimeHorizon(fLayout, edit, indexVulae);
                            }
                            break;
                        case "3":
                            {
                                //用sid找到设备;
@@ -162,7 +173,7 @@
        /// <param name="viewLayout">上下滑动控件</param>
        public static void OutputTarget(FrameLayout thisView, VerticalScrolViewLayout viewLayout)
        {
            for (int i = 0; i < Logic.currlogic.output.Count; i++)
            {
                Output outputTarget = Logic.currlogic.output[i];
@@ -172,10 +183,10 @@
                ///记录条件类型
                targetView.btnClick.Name = outputTarget.target_type;
                ///记录条件索引
                targetView.btnClick.Tag = i;
                targetView.btnClick.Tag = outputTarget.sid;
                ///条件状态数组
                List<Dictionary<string, string>> dicList = outputTarget.status as List<Dictionary<string, string>>;
                //显示条件各种类型状态
                //显示输出条件各种类型状态
                switch (outputTarget.target_type)
                {
                    case "1":
@@ -219,37 +230,29 @@
                                    {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string brightness = GetKeyValue("brightness", dicList);
                                        if (on_off != "")
                                        if (on_off == "on" && brightness != "")
                                        {
                                            if (on_off == "on")
                                            {
                                                stateStr = Language.StringByID(StringId.onLogic);
                                            }
                                            else
                                            {
                                                stateStr = Language.StringByID(StringId.offLogic);
                                            }
                                            stateStr = Language.StringByID(StringId.onLogic) + brightness + "%";
                                        }
                                        if (brightness != "")
                                        else if (on_off == "on")
                                        {
                                            stateStr += brightness + "%";
                                            stateStr = Language.StringByID(StringId.onLogic);
                                        }
                                        if (on_off != "" && on_off == "off")
                                        else if (on_off == "off")
                                        {
                                            targetView.btnState.Text = Language.StringByID(StringId.offLogic);
                                            stateStr = Language.StringByID(StringId.offLogic);
                                        }
                                        else
                                        else if (brightness != "")
                                        {
                                            targetView.btnState.Text = stateStr;
                                            stateStr = brightness + "%";
                                        }
                                        targetView.btnState.Text = stateStr;
                                    }
                                    break;
                                case FunctionType.Curtain:
                                    {//开关灯
                                case FunctionType.MotorCurtain:
                                case FunctionType.RollingShutter:
                                    {
                                        foreach (var dic in dicList)
                                        {
                                            string value = dic["value"];
@@ -275,52 +278,6 @@
                                        targetView.btnState.Text = stateStr;
                                    }
                                    break;
                                case FunctionType.MotorCurtain:
                                case FunctionType.RollingShutter:
                                    {//开关灯
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string brightness = GetKeyValue("brightness", dicList);
                                        if (on_off != "")
                                        {
                                            switch (on_off)
                                            {
                                                case "on":
                                                    {
                                                        stateStr = Language.StringByID(StringId.onLogic);
                                                    }
                                                    break;
                                                case "off":
                                                    {
                                                        stateStr = Language.StringByID(StringId.offLogic);
                                                    }
                                                    break;
                                                case "stop":
                                                    {
                                                        stateStr = Language.StringByID(StringId.stop);
                                                    }
                                                    break;
                                            }
                                        }
                                        if (brightness != "")
                                        {
                                            stateStr += brightness + "%";
                                        }
                                        if (on_off != "" && on_off == "stop"|| on_off != "" && on_off == "off")
                                        {
                                            targetView.btnState.Text = Language.StringByID(StringId.stop);
                                        }
                                        else
                                        {
                                            targetView.btnState.Text = stateStr;
                                        }
                                    }
                                    break;
                                case FunctionType.AC: {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string set_temp = GetKeyValue("set_temp", dicList);
@@ -331,12 +288,12 @@
                                            {
                                                case "on":
                                                    {
                                                        stateStr = Language.StringByID(StringId.onLogic)+";";
                                                        stateStr = Language.StringByID(StringId.onLogic)+",";
                                                    }
                                                    break;
                                                case "off":
                                                    {
                                                        stateStr = Language.StringByID(StringId.offLogic) + ";";
                                                        stateStr = Language.StringByID(StringId.offLogic) + ",";
                                                    }
                                                    break;
                                               
@@ -346,7 +303,7 @@
                                        if (set_temp != "")
                                        {
                                            stateStr += set_temp + "℃;";
                                            stateStr += set_temp + "℃,";
                                        }
                                        if (mode != "")
@@ -356,22 +313,22 @@
                                            {
                                                case "cool":
                                                    {
                                                        stateStr += Language.StringByID(StringId.coolLogic)+";";
                                                        stateStr += Language.StringByID(StringId.coolLogic)+",";
                                                    }
                                                    break;
                                                case "heat":
                                                    {
                                                        stateStr += Language.StringByID(StringId.heatingLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.heatingLogic) + ",";
                                                    }
                                                    break;
                                                case "auto":
                                                    {
                                                        stateStr += Language.StringByID(StringId.autoLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.autoLogic) + ",";
                                                    }
                                                    break;
                                                case "dry":
                                                    {
                                                        stateStr += Language.StringByID(StringId.dehumidifyLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.dehumidifyLogic) + ",";
                                                    }
                                                    break;
                                            }
@@ -385,22 +342,22 @@
                                            {
                                                case "high":
                                                    {
                                                        stateStr += Language.StringByID(StringId.HighWindSpeed)+";";
                                                        stateStr += Language.StringByID(StringId.HighWindSpeed)+",";
                                                    }
                                                    break;
                                                case "medium":
                                                    {
                                                        stateStr += Language.StringByID(StringId.MiddleWindSpeed) + ";";
                                                        stateStr += Language.StringByID(StringId.MiddleWindSpeed) + ",";
                                                    }
                                                    break;
                                                case "low":
                                                    {
                                                        stateStr += Language.StringByID(StringId.LowWindSpeed) + ";";
                                                        stateStr += Language.StringByID(StringId.LowWindSpeed) + ",";
                                                    }
                                                    break;
                                                case "auto":
                                                    {
                                                        stateStr += Language.StringByID(StringId.Auto) + ";";
                                                        stateStr += Language.StringByID(StringId.Auto) + ",";
                                                    }
                                                    break;
                                            }
@@ -411,7 +368,7 @@
                                            targetView.btnState.Text = Language.StringByID(StringId.offLogic);
                                        }
                                        else {
                                            targetView.btnState.Text = stateStr.TrimEnd(';');
                                            targetView.btnState.Text = stateStr.TrimEnd(',');
                                        }
@@ -428,12 +385,12 @@
                                            {
                                                case "on":
                                                    {
                                                        stateStr = Language.StringByID(StringId.onLogic) + ";";
                                                        stateStr = Language.StringByID(StringId.onLogic) + ",";
                                                    }
                                                    break;
                                                case "off":
                                                    {
                                                        stateStr = Language.StringByID(StringId.offLogic) + ";";
                                                        stateStr = Language.StringByID(StringId.offLogic) + ",";
                                                    }
                                                    break;
@@ -442,7 +399,7 @@
                                        if (set_temp != "")
                                        {
                                            stateStr += set_temp + "℃;";
                                            stateStr += set_temp + "℃,";
                                        }
                                        if (mode != "")
                                        {
@@ -451,28 +408,28 @@
                                            {
                                                case "day":
                                                    {
                                                        stateStr += Language.StringByID(StringId.dayMode)+";";
                                                        stateStr += Language.StringByID(StringId.dayMode)+",";
                                                    }
                                                    break;
                                                case "night":
                                                    {
                                                        stateStr += Language.StringByID(StringId.nightMode) + ";";
                                                        stateStr += Language.StringByID(StringId.nightMode) + ",";
                                                    }
                                                    break;
                                                case "away":
                                                    {
                                                        stateStr += Language.StringByID(StringId.leaveMode) + ";";
                                                        stateStr += Language.StringByID(StringId.leaveMode) + ",";
                                                    }
                                                    break;
                                                case "normal":
                                                    {
                                                        stateStr += Language.StringByID(StringId.ordinaryMode) + ";";
                                                        stateStr += Language.StringByID(StringId.ordinaryMode) + ",";
                                                    }
                                                    break;
                                                case "timer":
                                                    {
                                                        stateStr += Language.StringByID(StringId.timeMode) + ";";
                                                        stateStr += Language.StringByID(StringId.timeMode) + ",";
                                                    }
                                                    break;
                                            }
@@ -482,22 +439,22 @@
                                            {
                                                case "cool":
                                                    {
                                                        stateStr += Language.StringByID(StringId.coolLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.coolLogic) + ",";
                                                    }
                                                    break;
                                                case "heat":
                                                    {
                                                        stateStr += Language.StringByID(StringId.heatingLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.heatingLogic) + ",";
                                                    }
                                                    break;
                                                case "auto":
                                                    {
                                                        stateStr += Language.StringByID(StringId.autoLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.autoLogic) + ",";
                                                    }
                                                    break;
                                                case "dry":
                                                    {
                                                        stateStr += Language.StringByID(StringId.dehumidifyLogic) + ";";
                                                        stateStr += Language.StringByID(StringId.dehumidifyLogic) + ",";
                                                    }
                                                    break;
                                            }
@@ -509,7 +466,7 @@
                                        }
                                        else
                                        {
                                            targetView.btnState.Text = stateStr.TrimEnd(';');
                                            targetView.btnState.Text = stateStr.TrimEnd(',');
                                        }
                                    }
@@ -543,7 +500,18 @@
                {
                    Button button = (Button)sen;
                    //找到当前编辑的索引
                    int indexVulae = int.Parse(targetView.btnClick.Tag.ToString());
                    int indexVulae =0;
                    for (int index = 0; index < Logic.currlogic.output.Count; index++)
                    {
                        Output target = Logic.currlogic.output[index];
                        if (target.sid == targetView.btnClick.Tag.ToString())
                        {
                            //用户可能删除数据,使列表索引发生改变;
                            //通过唯一sid重新查找到索引且更新索引值
                            indexVulae = index;
                            break;
                        }
                    }
                    //标记编辑状态
                    bool edit = true;
                    switch (button.Name)