|
|
@ -18,6 +18,8 @@ using CPF; |
|
|
|
using CPF.Windows; |
|
|
|
using CPF.Windows; |
|
|
|
using static System.Net.Mime.MediaTypeNames; |
|
|
|
using static System.Net.Mime.MediaTypeNames; |
|
|
|
using System.Text.RegularExpressions; |
|
|
|
using System.Text.RegularExpressions; |
|
|
|
|
|
|
|
using AksWebBrowser.Devices; |
|
|
|
|
|
|
|
using LibVLCSharp.Shared; |
|
|
|
|
|
|
|
|
|
|
|
namespace AksWebBrowser.Common |
|
|
|
namespace AksWebBrowser.Common |
|
|
|
{ |
|
|
|
{ |
|
|
@ -271,7 +273,7 @@ namespace AksWebBrowser.Common |
|
|
|
{ |
|
|
|
{ |
|
|
|
var client = new HttpClient(); |
|
|
|
var client = new HttpClient(); |
|
|
|
var request = new HttpRequestMessage(HttpMethod.Post, Parame.signUrl); |
|
|
|
var request = new HttpRequestMessage(HttpMethod.Post, Parame.signUrl); |
|
|
|
var content = new StringContent("{\r\n command: \"finger\",\r\n command_num: 121,\r\n data: {\r\n operation: \"" + type + "\",\r\n operation_code: " + typeCode + ",\r\n parameters: {\r\n }\r\n }\r\n }", null, "application/json"); |
|
|
|
var content = new StringContent("{\r\n \"command\": \"finger\",\r\n \"command_num\": 121,\r\n \"data\": {\r\n \"operation\": \"open\",\r\n \"operation_code\": 1,\r\n \"parameters\": {\r\n }\r\n }\r\n}", null, "text/plain"); |
|
|
|
request.Content = content; |
|
|
|
request.Content = content; |
|
|
|
var response = await client.SendAsync(request); |
|
|
|
var response = await client.SendAsync(request); |
|
|
|
response.EnsureSuccessStatusCode(); |
|
|
|
response.EnsureSuccessStatusCode(); |
|
|
@ -354,22 +356,82 @@ namespace AksWebBrowser.Common |
|
|
|
//读取parameters数据 |
|
|
|
//读取parameters数据 |
|
|
|
string parameters = jo3["parameters"].ToString(); |
|
|
|
string parameters = jo3["parameters"].ToString(); |
|
|
|
JObject jo4 = (JObject)JsonConvert.DeserializeObject(parameters); |
|
|
|
JObject jo4 = (JObject)JsonConvert.DeserializeObject(parameters); |
|
|
|
IDCardModel iDCardModel = new IDCardModel(); |
|
|
|
string base64 = jo4["face_data"].ToString(); |
|
|
|
iDCardModel.Name = jo4["cn_name"].ToString(); |
|
|
|
if (Parame.isTMZ) |
|
|
|
iDCardModel.Sex = jo4["sex"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Nation = jo4["nation"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.BirthDay = jo4["birth_date"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Addr = jo4["address"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Id = jo4["idcard_number"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Regorg = jo4["deparment"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.StartDate = jo4["validity_begin"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.EndDate = jo4["balidity_end"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.ImageBase64 = "data:image/jpg;base64," + jo4["face_data"].ToString(); |
|
|
|
|
|
|
|
var OBJ = new |
|
|
|
|
|
|
|
{ |
|
|
|
{ |
|
|
|
Data = iDCardModel |
|
|
|
//生成文件 |
|
|
|
}; |
|
|
|
string dirpath = Utils.getSystemPaht() + @"/wwwroot/FileTxt"; |
|
|
|
return JsonConvert.SerializeObject(OBJ); ; |
|
|
|
if (!Directory.Exists(dirpath)) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Directory.CreateDirectory(dirpath); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
var tempFile = dirpath + "/faceA.txt"; |
|
|
|
|
|
|
|
using (StreamWriter sw = new StreamWriter(tempFile)) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
sw.Write(base64); |
|
|
|
|
|
|
|
sw.Close(); |
|
|
|
|
|
|
|
sw.Dispose(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
//生成图片 |
|
|
|
|
|
|
|
string dirpath1 = Utils.getSystemPaht() + @"/wwwroot/Face"; |
|
|
|
|
|
|
|
if (!Directory.Exists(dirpath1)) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Directory.CreateDirectory(dirpath1); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
var faceA = dirpath1 + "/faceA.jpg"; |
|
|
|
|
|
|
|
string command = $"base64 -d {tempFile} > {faceA}"; |
|
|
|
|
|
|
|
MainModel.ShllCommad(command); |
|
|
|
|
|
|
|
//删除图片 |
|
|
|
|
|
|
|
Task.Run(() => |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
File.Delete(tempFile); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
//开启人脸比对 |
|
|
|
|
|
|
|
LhtCF lht = new LhtCF(); |
|
|
|
|
|
|
|
string stat = lht.LhtCFFace("", faceA); |
|
|
|
|
|
|
|
if (stat == "100") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
IDCardModel iDCardModel = new IDCardModel(); |
|
|
|
|
|
|
|
iDCardModel.Name = jo4["cn_name"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Sex = jo4["sex"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Nation = jo4["nation"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.BirthDay = jo4["birth_date"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Addr = jo4["address"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Id = jo4["idcard_number"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Regorg = jo4["deparment"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.StartDate = jo4["validity_begin"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.EndDate = jo4["balidity_end"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.ImageBase64 = "data:image/jpg;base64," + base64; |
|
|
|
|
|
|
|
var OBJ = new |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Data = iDCardModel |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
return JsonConvert.SerializeObject(OBJ); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return "500"; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
IDCardModel iDCardModel = new IDCardModel(); |
|
|
|
|
|
|
|
iDCardModel.Name = jo4["cn_name"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Sex = jo4["sex"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Nation = jo4["nation"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.BirthDay = jo4["birth_date"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Addr = jo4["address"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Id = jo4["idcard_number"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.Regorg = jo4["deparment"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.StartDate = jo4["validity_begin"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.EndDate = jo4["balidity_end"].ToString(); |
|
|
|
|
|
|
|
iDCardModel.ImageBase64 = "data:image/jpg;base64," + base64; |
|
|
|
|
|
|
|
var OBJ = new |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Data = iDCardModel |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
return JsonConvert.SerializeObject(OBJ); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
|
{ |
|
|
|
{ |
|
|
|