using EzTencentCloud;
using Furion.FriendlyException;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Http.HttpResults;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.IdentityModel.Abstractions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TencentCloud.Ocr.V20181119.Models;
namespace EzUpFile
{
///
/// 文件上传下载
///
[DynamicApiController]
[ApiDescriptionSettings("FileUpdata")]
public class UpFileController
{
///
/// 上传身份证信息
///
/// 身份证正反面 FRONT 正面 Back 国徽反面
///
[HttpPost]
public async Task UploadIdCord([FromServices] IEzFileUploadService fileUploadService,IFormFile file, [FromQuery] string PageName = "FRONT")
{
var ret= await fileUploadService.UpIdCord(PageName);
return new { Info = ret.Item1, url = ret.Item2 };
}
///
/// 上传和识别营业执照
///
/// 身份证正反面 FRONT 正面 Back 国徽反面
///
[HttpPost]
public async Task UpBizLicense([FromServices] IEzFileUploadService fileUploadService, IFormFile file)
{
var ret= await fileUploadService.UpBizLicense();
return new { Info = ret.Item1, url = ret.Item2 };
}
///
/// 增加人脸特征
///
/// 身份证号
/// 名称
/// 0代表未填写,1代表男性,2代表女性。
///
[HttpPost]
public async Task IaiAddPerso([FromServices] IEzFileUploadService fileUploadService, IFormFile file,[FromQuery] string CordId, [FromQuery] string Name, [FromQuery] int Gender)
{
var ret= await fileUploadService.IaiAddPerso(CordId, Name,Gender);
return new { IsOK = ret.Item1, url = ret.Item2 };
}
///
/// 增加人脸库 base64
///
///
///
[HttpPost]
public async Task IaiAddPersoBase64([FromServices] IEzFileUploadService fileUploadService, UpDataFileData param)
{
if (string.IsNullOrEmpty(param.imgBase64))
throw Oops.Oh("没有文件类容");
if (string.IsNullOrEmpty(param.Name))
throw Oops.Oh("没有姓名");
if (string.IsNullOrEmpty(param.CordId))
throw Oops.Oh("没有身份证信息");
var ret = await fileUploadService.IaiAddPerso(param.imgBase64, param.CordId, param. Name, param.Gender??0);
return new { IsOK = ret.Item1, url = ret.Item2 };
}
public async Task test([FromServices] ITencentCloudService fileUploadService)
{
fileUploadService.IaiCreatGroup();
}
///
/// 上传附件
///
///
///
[HttpPost]
public async Task UpdateFile([FromServices] IEzFileUploadService fileUploadService, IFormFile file)
{
return await fileUploadService.UploadFiles();
}
///
/// 获取到客户端的IPv4
///
///
///
[HttpGet]
public string GetIp4([FromServices] IHttpContextAccessor httpContextAccessor)
{
var httpc = httpContextAccessor.HttpContext;
var ipv4 = httpc.GetRemoteIpAddressToIPv4();
return ipv4;
}
///
/// 上传附件
///
///
///
///
[HttpPost]
public async Task UpdateFileBase64([FromServices] IEzFileUploadService fileUploadService, UpDataFileData Param)
{
return await fileUploadService.UploadFilesFByBase64(Param.imgBase64);
}
[HttpPost]
public async Task DelFile([FromServices] IEzFileUploadService fileUploadService, DelFileData Param)
{
return await fileUploadService.DelFile(Param.FilePath);
}
}
///
/// 上传数据
///
public class UpDataFileData
{
///
/// 数据base64
///
public string imgBase64 { get; set; }
///
/// 身份证号码
///
public string? CordId { get; set; }
///
/// 姓名
///
public string? Name { get; set; }
///
/// 性别
///
public int? Gender { get; set; }
}
///
/// 上传数据
///
public class DelFileData
{
///
/// 数据base64
///
public string FilePath { get; set; }
}
///
/// 身份证返回输出
///
public class IdCordOuput
{
///
/// 身份证相关信息
///
public IDCardOCRResponse IdCordInfo { get; set; }
///
/// url
///
public string Url { get; set; }
}
}