wei
2021-08-27 eda3fb873e59544ff36301b51e05aef64f87b0f9
HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
@@ -9,7 +9,7 @@
    public class MainView
    {
        /// <summary>
        /// 记录逻辑自动化父控件
        /// VerticalRefreshLayout父控件
        /// </summary>
        public static FrameLayout automationPage;
        /// <summary>
@@ -46,11 +46,12 @@
                logicView.btnWeekText.Text = GetCyclicText(currLogic);
                logicView.btnclick.MouseUpEventHandler += (sen, e) =>
                {
                    Logic.currlogic = currLogic;
                    var addLogic = new AddLogic();
                    MainPage.BasePageView.AddChidren(addLogic);
                    addLogic.Show();
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                    //Logic.currlogic = currLogic;
                    //var addLogic = new AddLogic();
                    //MainPage.BasePageView.AddChidren(addLogic);
                    //addLogic.Show();
                    //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                    new MainView { }.SkipAddLogicPage(currLogic);
                };
                //开关图标的点击事件
                logicView.btnSwitchIcon.MouseUpEventHandler += (sender1, e1) =>
@@ -123,13 +124,30 @@
        /// <summary>
        ///  按+跳转到逻辑界面的方法
        /// </summary>
        public static void SkipAddLogicPage()
        public void SkipAddLogicPage(Logic logic=null)
        {
            Logic.currlogic = new Logic();
            var addLogic = new AddLogic();
            MainPage.BasePageView.AddChidren(addLogic);
            addLogic.Show();
            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            if (logic == null)
            {
                Logic.currlogic = new Logic();
            }
            else {
                Logic.currlogic = logic;
            }
            if (IsGatewayType)
            {
                var addLogic = new AddLogic();
                MainPage.BasePageView.AddChidren(addLogic);
                addLogic.Show();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            }
            else
            {
                var onePortAutomation = new OnePortAutomation();
                MainPage.BasePageView.AddChidren(onePortAutomation);
                onePortAutomation.Show();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            }
        }
        /// <summary>
        ///返回循环描述文本
@@ -209,7 +227,6 @@
            }
            return weekTextName.TrimEnd(',');
        }
        /// <summary>
        /// 获取每月的字符串
        /// </summary>
@@ -244,7 +261,7 @@
            if (idStr.Code == "0" && idStr.Data != null && idStr.Data.ToString() != "")
            {
                var date = Newtonsoft.Json.JsonConvert.SerializeObject(idStr.Data);
                var dateList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Date>>(date);
                var dateList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<LogicData>>(date);
                for (int i = 0; i < dateList.Count; i++)
                {
                    //添加逻辑ID
@@ -299,6 +316,8 @@
                                }
                                newlogic.output.Add(logic.output[i]);
                            }
                            newlogic.noticeConfig = logic.noticeConfig;
                            newlogic.pushConfigs = logic.pushConfigs;
                            //添加逻辑
                            Logic.LogicList.Add(newlogic);
                        }
@@ -323,12 +342,11 @@
            }
            return false;
        }
        /// <summary>
        /// 显示条件或者目标类型图标
        /// </summary>
        /// <param name="layouFrame">父控件</param>
        /// <param name="logic">当前逻辑</param>
        /// <param name="logic">当前自动化</param>
        private static void GetSelectIcon(FrameLayout layouFrame, Logic logic)
        {
@@ -339,15 +357,12 @@
            //1-10(表示条件图标)自己局部定义为了显示选中条件类型图标
            //1-时间图标
            //2-功能图标
            //3-云端图标
            //4-场景图标
            for (int i = 0; i < logic.input.Count; i++)
            {
                if (logic.input[i] == null || logic.input[i].ToString() == "")
                {
                    //防止有的空对象;
                    //正常情况下不会该现象;
                if (logic.input[i] == null)
                    continue;
                }
                var int1 = int.Parse(logic.input[i].condition_type);
                int iconInt = 0;
                switch (int1)
@@ -362,6 +377,20 @@
                    case 3:
                        {
                            iconInt = 2;
                        }
                        break;
                    case 4:
                    case 6:
                    case 9:
                        {
                            iconInt = 3;
                        }
                        break;
                    case 10:
                        {
                            iconInt = 4;
                        }
                        break;
@@ -380,6 +409,7 @@
            //12-20(表示目标图标)自己局部定义为了显示选中目标类型图标
            //12-功能图标
            //13-场景图标
            //14-安防图标
            //14-延时图标
            for (int i = 0; i < logic.output.Count; i++)
            {
@@ -402,6 +432,12 @@
                    case 3:
                        {
                            iconInt = 14;
                        }
                        break;
                    case 4:
                        {
                            iconInt = 15;
                        }
                        break;
@@ -456,6 +492,18 @@
                            strIcon = "LogicIcon/selectTheFun.png";
                        }
                        break;
                    case 3:
                        {
                            strIcon = "LogicIcon/shiwaitianqi.png";
                        }
                        break;
                    case 4:
                        {
                            strIcon = "LogicIcon/selectTheScene.png";
                        }
                        break;
                    case 11:
                        {
                            //分割条件和目标的图标
@@ -475,7 +523,14 @@
                        break;
                    case 14:
                        {
                            strIcon = "LogicIcon/security.png";
                        }
                        break;
                    case 15:
                        {
                            //strIcon = "LogicIcon/timeicon.png";
                        }
                        break;
@@ -483,13 +538,28 @@
                btnIcon.UnSelectedImagePath = strIcon;
            }
        }
        /// <summary>
        /// 判断网关类型(0:bus网关;1:A协议网关)
        /// </summary>
        /// <returns>true=A协议网关;false=bus网关</returns>
        public static bool IsGatewayType
        {
            get
            {
                if (Entity.DB_ResidenceData.Instance.GatewayType == 1)
                {
                    return true;
                }
                return false;
            }
        }
    }
    class Date
    class LogicData
    {
        /// <summary>
        /// 云端唯一id
        /// </summary>
        public string userLogicId = "";
        public string userLogicId = "";
        /// <summary>
        /// 网关id
        /// </summary>