|
@@ -1391,19 +1391,25 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
|
|
|
//转换成GBK用于debug上传
|
|
|
char* tSex = new char[32];
|
|
|
char* tNation = new char[32];
|
|
|
+ char* tBirthday = new char[32];
|
|
|
+ char* tStartDate = new char[32];
|
|
|
char* tEndDate = new char[32];
|
|
|
char* tIDcode = new char[1024];
|
|
|
char* tIDtype = new char[8];
|
|
|
char* tName = new char[128];
|
|
|
char* tNationality = new char[8];
|
|
|
+ char* tChecKNum = new char[8];
|
|
|
memcpy(tSex, idInfoEx2.sex.data, 32);
|
|
|
memcpy(tNation, idInfoEx2.nation.data, 32);
|
|
|
+ memcpy(tBirthday, idInfoEx2.birthday.data, 32);
|
|
|
+ memcpy(tStartDate, idInfoEx2.startDate.data, 32);
|
|
|
memcpy(tEndDate, idInfoEx2.endDate.data, 32);
|
|
|
memcpy(tIDcode, idInfoEx2.idno.data, 1024);
|
|
|
memcpy(tIDtype, idInfoEx2.idType.data, 8);
|
|
|
memcpy(tName, idInfoEx2.name.data, 128);
|
|
|
memcpy(tNationality, idInfoEx2.nationality.data, 8);
|
|
|
- char *gbkSex, *gbkNation, *gbkEndDate, *gbkIDcode, *gbkIDtype, *gbkName, *gbkNationality;
|
|
|
+ memcpy(tChecKNum, idInfoEx2.issuedSN.data, 8);
|
|
|
+ char* gbkSex, * gbkNation, * gbkBirthday, * gbkStartDate, * gbkEndDate, * gbkIDcode, * gbkIDtype, * gbkName, * gbkNationality, * gbktCheckNum;
|
|
|
int iSize;
|
|
|
//sex
|
|
|
iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tSex, -1, NULL, 0, NULL, NULL);
|
|
@@ -1413,6 +1419,14 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
|
|
|
iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tNation, -1, NULL, 0, NULL, NULL);
|
|
|
gbkNation = (char*)malloc((iSize + 1));
|
|
|
WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tNation, -1, gbkNation, iSize, NULL, NULL);
|
|
|
+ //birthday
|
|
|
+ iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tBirthday, -1, NULL, 0, NULL, NULL);
|
|
|
+ gbkBirthday = (char*)malloc((iSize + 1));
|
|
|
+ WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tBirthday, -1, gbkBirthday, iSize, NULL, NULL);
|
|
|
+ //startdate
|
|
|
+ iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tStartDate, -1, NULL, 0, NULL, NULL);
|
|
|
+ gbkStartDate = (char*)malloc((iSize + 1));
|
|
|
+ WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tStartDate, -1, gbkStartDate, iSize, NULL, NULL);
|
|
|
//endate
|
|
|
iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tEndDate, -1, NULL, 0, NULL, NULL);
|
|
|
gbkEndDate = (char*)malloc((iSize + 1));
|
|
@@ -1433,7 +1447,23 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
|
|
|
iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tNationality, -1, NULL, 0, NULL, NULL);
|
|
|
gbkNationality = (char*)malloc((iSize + 1));
|
|
|
WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tNationality, -1, gbkNationality, iSize, NULL, NULL);
|
|
|
+ //issuedSN
|
|
|
+ iSize = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tChecKNum, -1, NULL, 0, NULL, NULL);
|
|
|
+ gbktCheckNum = (char*)malloc((iSize + 1));
|
|
|
+ WideCharToMultiByte(CP_ACP, 0, (wchar_t*)tChecKNum, -1, gbktCheckNum, iSize, NULL, NULL);
|
|
|
//gbk转换结束
|
|
|
+
|
|
|
+ Dbg("性别源数据:%s", gbkSex);
|
|
|
+ Dbg("民族源数据:%s", gbkNation);
|
|
|
+ Dbg("生日源数据:%s", gbkBirthday);
|
|
|
+ Dbg("开始日期源数据:%s", gbkStartDate);
|
|
|
+ Dbg("结束日期源数据:%s", gbkEndDate);
|
|
|
+ Dbg("外国人换证次数/港澳签发次数:%s", gbktCheckNum);
|
|
|
+
|
|
|
+ if (gbkIDtype == "Y")
|
|
|
+ {
|
|
|
+ bkPicPath = "bk_newForeigner.png";
|
|
|
+ }
|
|
|
#endif
|
|
|
|
|
|
UCS2_to_UTF8((UINT16*)idInfoEx2.name.data, name);
|
|
@@ -1561,6 +1591,11 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
|
|
|
, (const char*)CSimpleStringA(gbkIDcode).SubString(CSimpleStringA(gbkIDcode).GetLength() - 1, 1)
|
|
|
, (const char*)CSimpleStringA(gbkIDtype));
|
|
|
#else
|
|
|
+ if (strcmp(idType, "Y") == 0) //区分新外国人证件使用的背景
|
|
|
+ {
|
|
|
+ bkPicPath = "bk_newForeigner.png";
|
|
|
+ }
|
|
|
+
|
|
|
CSimpleStringA tIdcode = (char*)idno;
|
|
|
CSimpleStringA csIDLogInfo = CSimpleStringA::Format("Sex:%s,Nation:%s,EndDate:%s,IDNo:%s****%s,IDType:%s"
|
|
|
, (const char*)sex, (const char*)nation
|
|
@@ -1796,13 +1831,13 @@ ErrorCodeEnum CIDCertFSM::GetPngBlob(CBlob &data, bool bClear)
|
|
|
}
|
|
|
|
|
|
#ifdef RVC_OS_WIN
|
|
|
- strBkPath = strPath + "\\bk.PNG";
|
|
|
+ strBkPath = strPath + "\\" + bkPicPath;
|
|
|
strBmpPath = strPath + "\\zp.bmp";
|
|
|
strPngPath = strPath + "\\zp.JPEG";
|
|
|
strTxtPath = strPath + "\\wz.txt";
|
|
|
strWltPath = strPath + "\\xp.wlt";
|
|
|
#else
|
|
|
- strBkPath = strPath + SPLIT_SLASH_STR + "bk.bmp";
|
|
|
+ strBkPath = strPath + SPLIT_SLASH_STR + bkPicPath;
|
|
|
strBmpPath = strPath + SPLIT_SLASH_STR + "zp.bmp";
|
|
|
strPngPath = strPath + SPLIT_SLASH_STR + "zp.JPEG";
|
|
|
strTxtPath = strPath + SPLIT_SLASH_STR + "wz.txt";
|
|
@@ -2041,6 +2076,9 @@ void CIDCertFSM::DeleteZP(int type)
|
|
|
int CIDCertFSM::Initial() //windows ver
|
|
|
{
|
|
|
LOG_FUNCTION();
|
|
|
+
|
|
|
+ bkPicPath = "bk.png"; //初始化默认背景图片名称
|
|
|
+
|
|
|
CSystemStaticInfo sysInfo;
|
|
|
GetEntityBase()->GetFunction()->GetSystemStaticInfo(sysInfo);
|
|
|
m_csMachineType = sysInfo.strMachineType;
|
|
@@ -2196,6 +2234,8 @@ int CIDCertFSM::Initial() //windows ver
|
|
|
int CIDCertFSM::Initial() //linux ver
|
|
|
{
|
|
|
LOG_FUNCTION();
|
|
|
+
|
|
|
+ bkPicPath = "bk.png"; //初始化默认背景图片名称
|
|
|
|
|
|
auto pEntity = GET_DEV_ENTITY_BASE_POINTER();
|
|
|
pEntity->InitializeVendorLogSwitch();
|