qiuyao
2025-04-28 bb7f59a301a390e04443fa4745bd2afa1fa58e0f
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs
@@ -14,6 +14,7 @@
using Microsoft.AspNetCore.Http;
using Newtonsoft.Json;
using WIDESEAWCS_Common;
using FaceAI;
namespace WIDESEAWCS_SystemServices
{
@@ -129,6 +130,9 @@
                    }
                    var faceResult = BaiDuFaceHelper.FaceSearch(loginInfo.path, groupId);
                    if (faceResult != null && faceResult.error_code == 0)
                    {
                        var bestMatch = faceResult.result.user_list.OrderByDescending(u => u.score).FirstOrDefault();
@@ -230,6 +234,53 @@
            return content;
        }
        /// <summary>
        /// 1:N äººè„¸æœç´¢æŽ¥å£
        /// </summary>
        /// <param name="image">图片信息(**总数据大小应小于10M**),图片上传方式根据image_type来判断</param>
        /// <param name="imageType">图片类型     <br> **BASE64**:图片的base64值,base64编码后的图片数据,编码后的图片大小不超过2M; <br>**URL**:图片的 URL地址( å¯èƒ½ç”±äºŽç½‘络等原因导致下载图片时间过长); <br>**FACE_TOKEN**: äººè„¸å›¾ç‰‡çš„唯一标识,调用人脸检测接口时,会为每个人脸图片赋予一个唯一的FACE_TOKEN,同一张图片多次检测得到的FACE_TOKEN是同一个。</param>
        /// <param name="groupIdList">从指定的group中进行查找 ç”¨é€—号分隔,**上限20个**</param>
        /// </param>
        /// <return>JObject</return>
        ///
        public string FaceSearch(string image, string imageType, string groupIdList, string userId)
        {
            string result = "";
            switch (imageType)
            {
                case "base64":
                    //result = FaceCompare.FaceIdentifyByBuffer(image, groupIdList, userId);
                    break;
                case "url":
                    result = FaceCompare.FaceIdentify(image, groupIdList, userId);
                    break;
                case "token":
                    result = FaceCompare.FaceIdentifyByFeature(image, groupIdList, userId);
                    break;
                default:
                    break;
            }
            return result;
        }
        /// <summary>
        /// é€šè¿‡ç‰¹å¾å€¼æ¯”对(1:1) å¯¹äººè„¸ç‰¹å¾å€¼è¿›è¡Œæ¯”较,可返回人脸特征相似分值(百分制)
        /// </summary>
        /// <param name="file1">传图片路径</param>
        /// <param name="file2">传图片路径</param>
        /// <returns></returns>
        public string FaceCompareFeature(string file1, string file2)
        {
            try
            {
                string result = FaceCompare.FaceCompareFeature(file1, file2);
                return result;
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        public override WebResponseContent UpdateData(SaveModel saveModel)
        {
            UpdateIgnoreColOnExecute = x =>