From d86bc04d0b34f2b7d9ddbd30ee703b51d48876e8 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期三, 05 二月 2025 09:51:15 +0800 Subject: [PATCH] 修改审核中员工排在前边 --- cylsg/EzUpFile/EzFileUploadService.cs | 251 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 250 insertions(+), 1 deletions(-) diff --git a/cylsg/EzUpFile/EzFileUploadService.cs b/cylsg/EzUpFile/EzFileUploadService.cs index a10403d..f745f2e 100644 --- a/cylsg/EzUpFile/EzFileUploadService.cs +++ b/cylsg/EzUpFile/EzFileUploadService.cs @@ -3,14 +3,21 @@ using Aliyun.OSS.Util; using cylsg.utility; using cylsg.utility.Extend; +using EzTencentCloud; using Furion; using Furion.DependencyInjection; using Furion.FriendlyException; using Microsoft.AspNetCore.Http; using SqlSugar; +using System; +using System.Buffers.Text; +using System.Drawing; using System.Globalization; using System.Security.Policy; +using TencentCloud.Ocr.V20181119.Models; +using TencentCloud.Teo.V20220901.Models; +using Task = System.Threading.Tasks.Task; namespace EzUpFile { /// <summary> @@ -21,11 +28,13 @@ private readonly HttpRequest? _request; private readonly ISqlSugarClient _sqlSugarClient; - public EzFileUploadService(IHttpContextAccessor httpContext, ISqlSugarClient sqlSugarClient) + private readonly ITencentCloudService _tcs; + public EzFileUploadService(IHttpContextAccessor httpContext, ISqlSugarClient sqlSugarClient,ITencentCloudService tencentCloudService) { _request = httpContext.HttpContext?.Request ?? null; _sqlSugarClient = sqlSugarClient; + _tcs= tencentCloudService; } /// <summary> @@ -275,8 +284,248 @@ return true; } + + + + #endregion + #region 璇嗗埆涓婁紶 + public async Task<(IDCardOCRResponse, string)> UpIdCord(string PageName = "FRONT") + { + try + { + var maxSize = 1024 * 1024 * 5; //涓婁紶澶у皬5M + + var FileData = _request?.Form?.Files["file"]; + + if (FileData.Length > maxSize) + { + throw Oops.Oh(" 涓婁紶鏂囦欢涓嶅彲瓒呭嚭5M"); + } + + + //澶勭悊鍥惧舰 + // 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 > 1200) + + { + if (oimage.Width > oimage.Height) + oimage.GetThumbnailImage(1200, 800, null, IntPtr.Zero).Save(ms, System.Drawing.Imaging.ImageFormat.Png); + else + oimage.GetThumbnailImage(800, 1200, 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); + + IDCardOCRResponse idcordinfo = null; + string url = ""; + + try + { + + + idcordinfo = _tcs.IdCord(img64, PageName == "FRONT"); + + url = await UploadFilesFByBase64(_tcs.GetIdCordImg()); + idcordinfo.AdvancedInfo = null; + + return (idcordinfo, url); + + } + catch (Exception e) + { + + throw Oops.Oh(e.Message); + } + } + catch (Exception e) + { + + throw Oops.Oh(e.Message); + } + + } + + public async Task<(BizLicenseOCRResponse, string)> UpBizLicense() + { + 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 > 1200) + + { + if (oimage.Width > oimage.Height) + oimage.GetThumbnailImage(1200, 800, null, IntPtr.Zero).Save(ms, System.Drawing.Imaging.ImageFormat.Png); + else + oimage.GetThumbnailImage(800, 1200, 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); + + BizLicenseOCRResponse info = null; + string url = ""; + + try + { + info = _tcs.BizLicenseOCR(img64); + + url = await UploadFilesFByBase64(img64); + + return (info, url); + + } + catch (Exception e) + { + + throw Oops.Oh(e.Message); + } + } + catch (Exception e) + { + + throw Oops.Oh(e.Message); + } + } + + + 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); + } + } +/// <inheritdoc/> + + public async Task<(bool, string)> IaiAddPerso(string imgBase64, string CoredID, string Name, int PersonGender) + { + if (string.IsNullOrEmpty(imgBase64)) + { + throw Oops.Oh("娌℃湁鍐呭"); + } + + //妫�鏌ヤ笂浼犲ぇ灏� + if (!CommonHelper.CheckBase64Size(imgBase64, 5)) + { + throw Oops.Oh("涓婁紶鏂囦欢澶у皬瓒呰繃闄愬埗锛屾渶澶у厑璁镐笂浼�" + "5" + "M"); + } + + imgBase64 = imgBase64.Replace("data:image/png;base64,", "").Replace("data:image/jgp;base64,", "").Replace("data:image/jpg;base64,", "").Replace("data:image/jpeg;base64,", "");//灏哹ase64澶撮儴淇℃伅鏇挎崲 + bool info = false; + string url = ""; + + try + { + info = _tcs.IaiAddPerso(imgBase64, CoredID, Name, PersonGender); + + url = await UploadFilesFByBase64(imgBase64); + + return (info, url); + + } + catch (Exception e) + { + + throw Oops.Oh(e.Message); + } + } + + + #endregion } } -- Gitblit v1.9.1