mac
2023-12-13 af954b34ffad38c3b11bd82caa54d5fb0c36e6ec
2023年12月13日16:18:38

自动化输入条件可视对讲改完支持多个用户配置。
2个文件已修改
58 ■■■■ 已修改文件
HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
@@ -1309,27 +1309,30 @@
                         if (indexeList.Count > 0)
                         {
                             dicSateteList.Clear();
                             string s = string.Empty;
                             string userNameStr = string.Empty;
                             string seleUsrIdStr = string.Empty;
                             string tag = string.Empty;
                             //数据封装
                             string[] arrayUserIds = new string[indexeList.Count];
                             //开门类型
                             AddDictionary("open_type", "1", "integer");
                             for (int i = 0; i < indexeList.Count; i++)
                             {
                                 if (i > faceIdList.Count)
                                 {
                                     continue;
                                 }
                                 var indexe = indexeList[i];
                                 var face = faceIdList[indexe];
                                 AddDictionary("user_id", face.userId, "string");
                                 s += face.userName;
                                 s += ",";
                                 tag += face.userId;
                                 tag += "_";
                                 userNameStr += face.userName;
                                 userNameStr += ",";
                                 arrayUserIds[i] = face.userId;
                             }
                             seleUsrIdStr = Newtonsoft.Json.JsonConvert.SerializeObject(arrayUserIds);
                             AddDictionary("user_id", seleUsrIdStr, "string", "[]");
                             //界面显示选中值
                             btnState.Text = s;
                             btnState.Text = InpOrOutLogicMethod.Current.RemoveLastStr(userNameStr);
                             btnState.Tag = tag;
                         }
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -436,7 +436,10 @@
                                    break;
                                case SPK.doorgate:
                                    {
                                        string s = string.Empty;
                                        try
                                        {
                                        if (inputCondition.identifier == "door_call_cloud_event")
                                        {
                                            s = Language.StringByID(StringId.shipintonghuahujiao);
@@ -451,15 +454,25 @@
                                                {
                                                    continue;
                                                }
                                                var userId = dic["value"].ToString();
                                                var FaceItem = this.GetFaceItem(userId, device.deviceId);
                                                    var value = dic["value"].ToString();
                                                    if (!string.IsNullOrEmpty(value))
                                                    {
                                                        var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(value);
                                                        for (int a = 0; a < list.Count; a++)
                                                        {
                                                            var FaceItem = this.GetFaceItem(list[a], device.deviceId);
                                                s += FaceItem.userName;
                                                s += ",";
                                                        }
                                                    }
                                            }
                                        }
                                        }
                                        catch { }
                                        inputView.btnState.Text = s;
                                    }
                                    break;
@@ -2533,7 +2546,9 @@
                    break;
                case SPK.doorgate:
                    {
                        string s = string.Empty;
                        try
                        {
                            string userNameStr = string.Empty;
                        string tag = string.Empty;
                        for (int b = 0; b < dicList.Count; b++)
                        {
@@ -2543,16 +2558,26 @@
                            {
                                continue;
                            }
                            var userId = dic["value"].ToString();
                            var FaceItem = this.GetFaceItem(userId, device.deviceId);
                            s += FaceItem.userName;
                            s += ",";
                                var value = dic["value"].ToString();
                                if (!string.IsNullOrEmpty(value))
                                {
                                    var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(value);
                                    for (int i = 0; i < list.Count; i++)
                                    {
                                        var FaceItem = this.GetFaceItem(list[i], device.deviceId);
                                        userNameStr += FaceItem.userName;
                                        userNameStr += ",";
                            tag += FaceItem.userId;
                            tag += "_";
                        }
                        button2.Text = s;
                                }
                            }
                            button2.Text = RemoveLastStr(userNameStr);
                        button2.Tag = tag;
                    }
                        catch { }
                    }
                    break;
                case SPK.ElectricalTvHisense:
                    {