Browse Source

优化 OrderPreInfoView.cs 中的字段处理逻辑

在 `OrderPreInfoView.cs` 文件中,添加了对 `Newtonsoft.Json` 的引用。修改了 `FieldTypeName` 的判断逻辑,将 "文本" 和 "搜索框" 的处理分开,新增了对 "搜索框" 的 JSON 反序列化支持。若 `OriginVal` 为有效 JSON 字符串,则反序列化为字符串数组;反序列化失败时返回空数组。其他类型的处理逻辑保持不变。
LEIYI 1 month ago
parent
commit
c29e83114b
1 changed files with 19 additions and 2 deletions
  1. 19 2
      OASystem/OASystem.Domain/ViewModels/Groups/OrderPreInfoView.cs

+ 19 - 2
OASystem/OASystem.Domain/ViewModels/Groups/OrderPreInfoView.cs

@@ -1,4 +1,5 @@
-using OASystem.Domain.Entities.Groups;
+using Newtonsoft.Json;
+using OASystem.Domain.Entities.Groups;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -43,9 +44,25 @@ namespace OASystem.Domain.ViewModels.Groups
             {
                 if (string.IsNullOrEmpty(OriginVal)) return _newValue;
 
-                if (FieldTypeName.Equals("文本") || FieldTypeName.Equals("搜索框"))
+                if (FieldTypeName.Equals("文本"))
                 {
                     return OriginVal;
+                }
+                else if (FieldTypeName.Equals("搜索框"))
+                {
+
+                    try
+                    {
+                        return JsonConvert.DeserializeObject<string[]>(OriginVal);
+
+                    }
+                    catch (Exception)
+                    {
+
+                        return Array.Empty<string>();
+                    }
+
+
                 }
                 else if (FieldTypeName.Equals("下拉选择框") || FieldTypeName.Equals("复选框") || FieldTypeName.Equals("数字"))
                 {