Browse Source

BaiDu OCR setting

yuanrf 4 months ago
parent
commit
782c623c32
1 changed files with 85 additions and 0 deletions
  1. 85 0
      OASystem/OASystem.Api/Controllers/BaiduOCRController.cs

+ 85 - 0
OASystem/OASystem.Api/Controllers/BaiduOCRController.cs

@@ -15,6 +15,13 @@ namespace OASystem.API.Controllers
     [ApiController]
     public class BaiduOCRController : ControllerBase
     {
+        private readonly SqlSugarClient _sqlSugar;
+
+        public BaiduOCRController(SqlSugarClient sqlSugar)
+        {
+            _sqlSugar = sqlSugar;
+        }
+
         /// <summary>
         /// 接团客户OCR识别
         /// </summary>
@@ -69,6 +76,84 @@ namespace OASystem.API.Controllers
                     List<string> listAgeStr = new List<string>() { "年龄", "age" };
                     List<string> listBeiZhu = new List<string>() { "备注", "本团职务" };
 
+
+                    try
+                    {
+                        //OCR JSON
+                        var json_baiduOCR = _sqlSugar.Queryable<Sys_SetData>().First(x => x.IsDel == 0 && x.Id == 1347)?.Remark;
+                        if (!string.IsNullOrWhiteSpace(json_baiduOCR))
+                        {
+                            var JObject_json_baiduOCR = JObject.Parse(json_baiduOCR);
+
+                            // 遍历每个属性,将对应的数组值添加到对应的List中
+                            foreach (var property in JObject_json_baiduOCR.Properties())
+                            {
+                                string key = property.Name;
+                                JArray array = (JArray)property.Value;
+                                switch (key)
+                                {
+                                    case "姓名":
+                                        foreach (var item in array)
+                                        {
+                                            listNameStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "性别":
+                                        foreach (var item in array)
+                                        {
+                                            listSexStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "出生年月":
+                                        foreach (var item in array)
+                                        {
+                                            listDOBStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "身份证":
+                                        foreach (var item in array)
+                                        {
+                                            listIdCard.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "工作单位":
+                                        foreach (var item in array)
+                                        {
+                                            listOrganizationStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "职务":
+                                        foreach (var item in array)
+                                        {
+                                            listJobStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "联系电话":
+                                        foreach (var item in array)
+                                        {
+                                            listMobileStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "年龄":
+                                        foreach (var item in array)
+                                        {
+                                            listAgeStr.Add(item.ToString());
+                                        }
+                                        break;
+                                    case "备注":
+                                        foreach (var item in array)
+                                        {
+                                            listBeiZhu.Add(item.ToString());
+                                        }
+                                        break;
+                                }
+                            }
+                        }
+                    }
+                    catch (Exception ex)
+                    {
+                    }
+
                     for (int i = 0; i < headerList.Count; i++)
                     {
                         string words = headerList[i].words.Trim().ToLower();