Browse Source

启用双目

master
胡超1 1 year ago
parent
commit
4e058fba79
  1. 68
      CPF_Cef/Common/ChunkedUpload.cs
  2. 15
      CPF_Cef/MainModel.cs
  3. 4
      CPF_Cef/Parame.cs

68
CPF_Cef/Common/ChunkedUpload.cs

@ -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,6 +356,41 @@ 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);
string base64 = jo4["face_data"].ToString();
if (Parame.isTMZ)
{
//生成文件
string dirpath = Utils.getSystemPaht() + @"/wwwroot/FileTxt";
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 iDCardModel = new IDCardModel();
iDCardModel.Name = jo4["cn_name"].ToString(); iDCardModel.Name = jo4["cn_name"].ToString();
iDCardModel.Sex = jo4["sex"].ToString(); iDCardModel.Sex = jo4["sex"].ToString();
@ -364,12 +401,37 @@ namespace AksWebBrowser.Common
iDCardModel.Regorg = jo4["deparment"].ToString(); iDCardModel.Regorg = jo4["deparment"].ToString();
iDCardModel.StartDate = jo4["validity_begin"].ToString(); iDCardModel.StartDate = jo4["validity_begin"].ToString();
iDCardModel.EndDate = jo4["balidity_end"].ToString(); iDCardModel.EndDate = jo4["balidity_end"].ToString();
iDCardModel.ImageBase64 = "data:image/jpg;base64," + jo4["face_data"].ToString(); iDCardModel.ImageBase64 = "data:image/jpg;base64," + base64;
var OBJ = new var OBJ = new
{ {
Data = iDCardModel Data = iDCardModel
}; };
return JsonConvert.SerializeObject(OBJ); ; 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
{ {

15
CPF_Cef/MainModel.cs

@ -249,7 +249,14 @@ namespace AKS.EnterpriseLibrary.WebBrowser
} }
else else
{ {
return "{\"keycode\":\"" + code + "\",\"message\":\"seccse\",\"code\":\"200\",\"status\":true,\"data\":" + IdcardStr + "}"; if (IdcardStr == "500")
{
result = "{\"keycode\":\"" + code + "\",\"message\":\"fali\",\"code\":\"400\",\"status\":false,\"data\":\"" + "身份证持有者非本人" + "\"}";
}
else
{
result = "{\"keycode\":\"" + code + "\",\"message\":\"seccse\",\"code\":\"200\",\"status\":true,\"data\":" + IdcardStr + "}";
}
} }
SubmitLogs(result, "IDCardRead"); SubmitLogs(result, "IDCardRead");
return result; return result;
@ -557,7 +564,7 @@ namespace AKS.EnterpriseLibrary.WebBrowser
{ {
if (param == null) if (param == null)
{ {
return "{\"keycode\":\"" +"" + "\",\"message\":\"Falied\",\"code\":\"400\",\"status\":false,\"data\":\"" + "参数解析错误" + "\"}"; return "{\"keycode\":\"" + "" + "\",\"message\":\"Falied\",\"code\":\"400\",\"status\":false,\"data\":\"" + "参数解析错误" + "\"}";
} }
if (!isFuncisFuncObject("ReadFingerData")) if (!isFuncisFuncObject("ReadFingerData"))
{ {
@ -588,7 +595,7 @@ namespace AKS.EnterpriseLibrary.WebBrowser
Task.Run(() => { HttpPostResponseByFinger("open", 1); }); Task.Run(() => { HttpPostResponseByFinger("open", 1); });
event2.WaitOne(); event2.WaitOne();
string result = string.Empty; string result = string.Empty;
Log.Info("指纹数据"+ fingerStr); Log.Info("指纹数据" + fingerStr);
if (string.IsNullOrEmpty(fingerStr)) if (string.IsNullOrEmpty(fingerStr))
{ {
result = "{\"keycode\":\"" + param.code + "\",\"message\":\"Falied\",\"code\":\"400\",\"status\":false,\"data\":\"" + "读取失败" + "\"}"; result = "{\"keycode\":\"" + param.code + "\",\"message\":\"Falied\",\"code\":\"400\",\"status\":false,\"data\":\"" + "读取失败" + "\"}";
@ -596,7 +603,7 @@ namespace AKS.EnterpriseLibrary.WebBrowser
} }
else else
{ {
result = "{\"keycode\":\"" + param.code + "\",\"message\":\"success\",\"code\":\"200\",\"status\":true,\"data\":\"" + fingerStr + "\"}"; result = "{\"keycode\":\"" + param.code + "\",\"message\":\"success\",\"code\":\"200\",\"status\":true,\"suffix\":\"jpg\",\"data\":\"" + fingerStr + "\"}";
} }
SubmitLogs(result, "ReadFingerData"); SubmitLogs(result, "ReadFingerData");
return result; return result;

4
CPF_Cef/Parame.cs

@ -25,7 +25,7 @@ namespace AksWebBrowser
public static string Ip = "192.168.1.166"; public static string Ip = "192.168.1.166";
//高拍仪url //高拍仪url
public static string gpyUrl = "http://127.0.0.1:6543"; public static string gpyUrl = "http://127.0.0.1:6543";
//签字版 //签字版、指纹、身份证
public static string signUrl = "http://127.0.0.1:9399/device"; public static string signUrl = "http://127.0.0.1:9399/device";
//票据打印机 //票据打印机
public static string pritPj = "/dev/ttyS7"; public static string pritPj = "/dev/ttyS7";
@ -33,6 +33,8 @@ namespace AksWebBrowser
public static int pritPjPort = 38400; public static int pritPjPort = 38400;
//打印名字 //打印名字
public static string PrinterName = "Lexmark-MS430-Series"; public static string PrinterName = "Lexmark-MS430-Series";
//是否启用双目
public static bool isTMZ = true;
} }
public struct Func public struct Func
{ {

Loading…
Cancel
Save