From 7326f36860d3a7d5355bd2f7546f905010a8fb6f Mon Sep 17 00:00:00 2001
From: 移动系统liao <liaoxujun@qq.com>
Date: 星期一, 19 八月 2024 15:06:06 +0800
Subject: [PATCH] 增加企业执照文件,身份证文件验证上传,增加人脸特征上传
---
cylsg/EzUpFile/EzFileUploadService.cs | 78 ++++++++++++++++++++++++-
cylsg/EzTencentCloud/ITencentCloudService.cs | 29 +++++++++
cylsg/cylsg.Model/UserModel/UserWorker.cs | 6 ++
cylsg/EzUpFile/UpFileController.cs | 16 +++++
cylsg/EzTencentCloud/TencentCloudService.cs | 31 ++++++++++
cylsg/EzUpFile/IEzFileUploadService.cs | 10 +++
6 files changed, 166 insertions(+), 4 deletions(-)
diff --git a/cylsg/EzTencentCloud/ITencentCloudService.cs b/cylsg/EzTencentCloud/ITencentCloudService.cs
index 4cc0e0a..da37eff 100644
--- a/cylsg/EzTencentCloud/ITencentCloudService.cs
+++ b/cylsg/EzTencentCloud/ITencentCloudService.cs
@@ -4,6 +4,7 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using TencentCloud.Iai.V20200303.Models;
using TencentCloud.Ocr.V20181119.Models;
namespace EzTencentCloud
@@ -34,8 +35,36 @@
BizLicenseOCRResponse BizLicenseOCR(string ImageBase64);
#endregion
#region iai 浜鸿劯璇嗗埆
+ /// <summary>
+ /// 鍒涘缓浜鸿劯搴擄紝涓�鑸竴涓簯璐﹀彿鍙渶瑕佸垱寤轰竴娆�
+ /// </summary>
public void IaiCreatGroup();
+ /// <summary>
+ /// 浜鸿劯楠岃瘉 涓�鑸垎鏁拌秴杩�50 鍒嗚瘑鍒负涓�涓汉
+ /// </summary>
+ /// <param name="img64"></param>
+ /// <param name="PersonNameId"></param>
+ /// <returns></returns>
+ public VerifyFaceResponse VerifyFace(string img64, string PersonNameId);
+ /// <summary>
+ /// 澧炲姞涓�涓汉鐨勪汉鑴稿浘鐗囩壒寰侊紝涓�涓渶澶氬彧鍏佽鏈変簲涓汉鑴哥壒杩�
+ /// </summary>
+ /// <param name="img64"></param>
+ /// <param name="PersonNameId"></param>
+ /// <param name="PersonName"></param>
+ /// <param name="PersonGender"></param>
+ /// <returns></returns>
+ public bool IaiAddPersoImg(string img64, string PersonNameId, string PersonName, int PersonGender);
+ /// <summary>
+ /// 澧炲姞涓�涓汉
+ /// </summary>
+ /// <param name="img64">浜鸿劯鐓�</param>
+ /// <param name="PersonNameId">浜鸿劯ID 涓�涓簯璐︽埛涓敮涓�</param>
+ /// <param name="PersonName">濮撳悕</param>
+ /// <param name="PersonGender">鎬у埆 0浠h〃鏈~鍐欙紝1浠h〃鐢锋�э紝2浠h〃濂虫�с��</param>
+ /// <returns></returns>
+ public bool IaiAddPerso(string img64, string PersonNameId, string PersonName, int PersonGender);
#endregion
}
diff --git a/cylsg/EzTencentCloud/TencentCloudService.cs b/cylsg/EzTencentCloud/TencentCloudService.cs
index aa364a0..1f80d16 100644
--- a/cylsg/EzTencentCloud/TencentCloudService.cs
+++ b/cylsg/EzTencentCloud/TencentCloudService.cs
@@ -275,6 +275,37 @@
}
+
+
+ public VerifyFaceResponse VerifyFace(string img64, string PersonNameId)
+ {
+ Credential cred = new Credential
+ {
+ SecretId = App.Configuration["TencentCloud:SecretId"] ?? "AKIDIPFp9CyThfMmvoQlpeCl34pKYVBahY9T",
+ SecretKey = App.Configuration["TencentCloud:SecretKey"] ?? "4rNcaHhrkMhmb9QQ9bmgKipfFZcOt86n"
+ };
+
+ ClientProfile clientProfile = new ClientProfile();
+ HttpProfile httpProfile = new HttpProfile();
+
+
+ httpProfile.Endpoint = ("iai.tencentcloudapi.com");
+ clientProfile.HttpProfile = httpProfile;
+ var iaiClient = new IaiClient(cred, "ap-chengdu", clientProfile);
+ var ret = iaiClient.VerifyFaceSync(new TencentCloud.Iai.V20200303.Models.VerifyFaceRequest
+ {
+
+ PersonId = PersonNameId,
+ Image= img64
+
+
+
+ });
+ return ret;
+
+
+
+ }
#endregion
}
diff --git a/cylsg/EzUpFile/EzFileUploadService.cs b/cylsg/EzUpFile/EzFileUploadService.cs
index ea94781..e877b52 100644
--- a/cylsg/EzUpFile/EzFileUploadService.cs
+++ b/cylsg/EzUpFile/EzFileUploadService.cs
@@ -283,7 +283,13 @@
}
- public async Task<(IDCardOCRResponse,string)> UpIdCord( string PageName = "FRONT")
+
+
+
+ #endregion
+
+ #region 璇嗗埆涓婁紶
+ public async Task<(IDCardOCRResponse, string)> UpIdCord(string PageName = "FRONT")
{
try
{
@@ -334,7 +340,7 @@
url = await UploadFilesFByBase64(_tcs.GetIdCordImg());
- return ( idcordinfo, url );
+ return (idcordinfo, url);
}
catch (Exception e)
@@ -417,8 +423,72 @@
}
+ public async Task<(bool,string)> IaiAddPerso(string CoredID,string Name,int PersonGender)
+ {
+ try
+ {
+
+ var maxSize = 1024 * 1024 * 5; //涓婁紶澶у皬5M
+
+ var FileData = _request?.Form?.Files["file"];
+
+ if (FileData.Length > maxSize)
+ {
+ throw Oops.Oh(" 涓婁紶鏂囦欢涓嶅彲瓒呭嚭500K");
+ }
+
+
+ //澶勭悊鍥惧舰
+ // var FileData = Request.Form.Files[0];
+
+ Image oimage = Image.FromStream(FileData.OpenReadStream());
+ if (oimage == null)
+ {
+ throw Oops.Oh(" 涓婁紶澶辫触");
+ }
+
+ MemoryStream ms = new MemoryStream();
+ if (oimage.Width > 600)
+
+ {
+ if (oimage.Width > oimage.Height)
+ oimage.GetThumbnailImage(600, 400, null, IntPtr.Zero).Save(ms, System.Drawing.Imaging.ImageFormat.Png);
+ else
+ oimage.GetThumbnailImage(400, 600, null, IntPtr.Zero).Save(ms, System.Drawing.Imaging.ImageFormat.Png);
+ }
+ else
+ oimage.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
+ ms.Position = 0;
+
+ var arr = ms.ToArray();
+ string img64 = Convert.ToBase64String(arr);
+
+ bool info = false;
+ string url = "";
+
+ try
+ {
+ info = _tcs.IaiAddPerso(img64, CoredID, Name, PersonGender);
+
+ url = await UploadFilesFByBase64(img64);
+
+ return (info, url);
+
+ }
+ catch (Exception e)
+ {
+
+ throw Oops.Oh(e.Message);
+ }
+ }
+ catch (Exception e)
+ {
+
+ throw Oops.Oh(e.Message);
+ }
+ }
+
+
#endregion
-
-
}
}
diff --git a/cylsg/EzUpFile/IEzFileUploadService.cs b/cylsg/EzUpFile/IEzFileUploadService.cs
index dae0969..28cd115 100644
--- a/cylsg/EzUpFile/IEzFileUploadService.cs
+++ b/cylsg/EzUpFile/IEzFileUploadService.cs
@@ -41,6 +41,16 @@
/// <returns></returns>
Task<(BizLicenseOCRResponse, string)> UpBizLicense();
+ /// <summary>
+ /// 鍒涘缓浜鸿劯鐗瑰緛
+ /// </summary>
+ /// <param name="CoredID"> 韬唤璇佸彿</param>
+ /// <param name="Name">濮撳悕</param>
+ /// <param name="PersonGender"> 鎬у埆 0浠h〃鏈~鍐欙紝1浠h〃鐢锋�э紝2浠h〃濂虫�с��</param>
+ /// <returns></returns>
+ Task<(bool, string)> IaiAddPerso(string CoredID, string Name, int PersonGender);
+
+
}
diff --git a/cylsg/EzUpFile/UpFileController.cs b/cylsg/EzUpFile/UpFileController.cs
index 62d9d3a..fb6614d 100644
--- a/cylsg/EzUpFile/UpFileController.cs
+++ b/cylsg/EzUpFile/UpFileController.cs
@@ -49,6 +49,22 @@
return await fileUploadService.UpBizLicense();
}
+ /// <summary>
+ /// 澧炲姞浜鸿劯鐗瑰緛
+ /// </summary>
+ /// <param name="CordId">韬唤璇佸彿</param>
+ /// <param name="Name">鍚嶇О</param>
+ /// <param name="Gender">0浠h〃鏈~鍐欙紝1浠h〃鐢锋�э紝2浠h〃濂虫�с��</param>
+ /// <returns></returns>
+ [HttpPost]
+ public async Task<(bool , string)> IaiAddPerso([FromServices] IEzFileUploadService fileUploadService, IFormFile file,[FromQuery] string CordId, [FromQuery] string Name, [FromQuery] int Gender)
+ {
+
+
+ return await fileUploadService.IaiAddPerso(CordId, Name,Gender);
+
+
+ }
public async Task test([FromServices] ITencentCloudService fileUploadService)
{
diff --git a/cylsg/cylsg.Model/UserModel/UserWorker.cs b/cylsg/cylsg.Model/UserModel/UserWorker.cs
index 6eba7b5..e0ba6bc 100644
--- a/cylsg/cylsg.Model/UserModel/UserWorker.cs
+++ b/cylsg/cylsg.Model/UserModel/UserWorker.cs
@@ -99,5 +99,11 @@
[SugarColumn(ColumnDescription = "浜鸿劯搴撳悕绉�", IsNullable = true)]
public string? IAIGroupName { get; set; }
+ /// <summary>
+ /// 鎬у埆 0浠h〃鏈~鍐欙紝1浠h〃鐢锋�э紝2浠h〃濂虫�с��
+ /// </summary>
+ [SugarColumn(ColumnDescription = "浜鸿劯搴撳悕绉�", IsNullable = true)]
+ public long? Gender { get; set; } = 0;
+
}
}
--
Gitblit v1.9.1