hxb
2022-09-22 39cf2411b59772d56ee731f229f09ff472889bad
HDL_ON/UI/UI2/3-Intelligence/Automation/OnePortAutomation.cs
@@ -67,7 +67,7 @@
            }
            // 条件处理方法
            InpOrOutLogicMethod.InputCondition(this, viewLayout);
            InpOrOutLogicMethod.Current.InputCondition(this, viewLayout);
            ///添加图标的View
            LogicView.LogicAddView addInputIcon = new LogicView.LogicAddView();
            addInputIcon.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight);
@@ -79,7 +79,7 @@
            LogicView.AddOutputInputTextView addOutpuTextView = new LogicView.AddOutputInputTextView();
            addOutpuTextView.btnIf.TextID = StringId.isExecuted;
            viewLayout.AddChidren(addOutpuTextView.FLayoutView(54, 20));
            #region  执行推送 发送通知
            ///上下间隔12像素
@@ -187,7 +187,7 @@
                }
                Loading loading = new Loading();
                this.AddChidren(loading);
                HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null;
                HDL_ON.DAL.Server.ResponsePackNew r = null;
                if (string.IsNullOrEmpty(Logic.currlogic.userLogicId))
                {
                    List<string> list = new List<string>();
@@ -195,15 +195,15 @@
                    {
                        list.Add(logic.name);
                    }
                    new LogicView.TipPopView().InputBox(StringId.editName, InpOrOutLogicMethod.GetLogicName(Logic.currlogic), StringId.nameNull, StringId.NameAlreadyExists, list, (logicName, view) =>
                    new LogicView.TipPopView().InputBox(StringId.editName, InpOrOutLogicMethod.Current.GetLogicName(Logic.currlogic), StringId.nameNull, StringId.NameAlreadyExists, list, (logicName, view) =>
                    {
                        Logic.currlogic.name = logicName;
                        Logic.currlogic.sid = LogicMethod.CurrLogicMethod.NewSid();
                        Logic.currlogic.sid = LogicMethod.Current.NewSid();
                        if (MainPage.NoLoginMode)
                        {
                            Logic.currlogic.userLogicId = Guid.NewGuid().ToString();
                            Logic.LogicList.Add(Logic.currlogic);
                            LogicMethod.CurrLogicMethod.RemoveAllView();
                            LogicMethod.Current.RemoveAllView();
                            MainView.MainShow();
                            return;
                        }
@@ -213,8 +213,7 @@
                            try
                            {
                                //发送新加逻辑命令;
                                responsePackNew = Send.AddLogic(Logic.currlogic);
                                r = Send.Current.AddLogic(Logic.currlogic, true);
                            }
                            catch { }
                            finally
@@ -222,42 +221,24 @@
                                Application.RunOnMainThread(() =>
                                {
                                    loading.Hide();
                                    if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
                                    if (r != null)
                                    {
                                        //获取逻辑详细返回是一个数组(object类型转换为数组);
                                        var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString());
                                        for (int a = 0; a < jArray.Count; a++)
                                        var userLogicIdList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Logic>>(r.Data.ToString());
                                        for (int i = 0; i < userLogicIdList.Count; i++)
                                        {
                                            var jay = jArray[a];
                                            //数据返序列化为Logic对象
                                            var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay);
                                            var logic = Newtonsoft.Json.JsonConvert.DeserializeObject<Logic>(str);
                                            if (logic.userLogicId != "")
                                            {
                                                //更新云端唯一自动化id;
                                                Logic.currlogic.userLogicId = logic.userLogicId;
                                            }
                                            else
                                            var logic = userLogicIdList[i];
                                            if (string.IsNullOrEmpty(logic.userLogicId))
                                            {
                                                //自己看的所以不需要支持中英文
                                                new LogicView.TipPopView().FlashingBox("没有返回云端唯一自动化id");
                                            }
                                            //更新云端唯一自动化id;
                                            Logic.currlogic.userLogicId = logic.userLogicId;
                                        }
                                        Logic.LogicList.Add(Logic.currlogic);
                                        LogicMethod.CurrLogicMethod.RemoveAllView();
                                        LogicMethod.Current.RemoveAllView();
                                        MainView.MainShow();
                                    }
                                    else if (responsePackNew != null && responsePackNew.Code == "14005")
                                    {
                                        new LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.gatewayNotOnline));
                                    }
                                    else
                                    {
                                        new LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.saveFail));
                                    }
                                });
                            }
@@ -277,7 +258,7 @@
                        try
                        {
                            //发送修改逻辑命令;
                            responsePackNew = Send.UpdateLogic(Logic.currlogic);
                            r = Send.Current.UpdateLogic(Logic.currlogic, true);
                        }
                        catch { }
@@ -286,23 +267,14 @@
                            Application.RunOnMainThread(() =>
                            {
                                loading.Hide();
                                if (responsePackNew != null && responsePackNew.Code == "0")
                                if (r != null)
                                {
                                    LogicMethod.CurrLogicMethod.RemoveAllView();
                                    LogicMethod.Current.RemoveAllView();
                                    MainView.MainShow();
                                }
                                else if (responsePackNew != null && responsePackNew.Code == "14005")
                                {
                                    new LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.gatewayNotOnline));
                                }
                                else
                                {
                                    new LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.saveFail));
                                }
                            });
                        }
                    })
                    { IsBackground = true }.Start();