|
@@ -932,25 +932,51 @@ ErrorCodeEnum CIDCertFSM::GetPngBlobEx(CBlob &data, CSimpleStringA fileNamePrefi
|
|
|
LogWarn(Severity_Middle, Error_Unexpect, IDCertificate_UserErrorCode_FindFile_in_DepBak, warnMsg.GetData());
|
|
|
}
|
|
|
}
|
|
|
- //记录身份证相关图片的最近修改时间,用于上送信息调研,后续下掉 - 2025.6.13 CJL
|
|
|
+
|
|
|
+ //找不到本次图片生成
|
|
|
+ CSimpleStringA imgRTACode = "";
|
|
|
+ HeadImgDelRTA headRta;
|
|
|
+ ScanImgDelRTA scanRta;
|
|
|
+ map<string, string> errInfo;
|
|
|
+ CSimpleStringA tErrStr;
|
|
|
+ CSimpleStringA disecription;
|
|
|
+
|
|
|
if (fileNamePrefix == "zp")
|
|
|
{
|
|
|
+ imgRTACode = headRta.noFindCur;
|
|
|
+
|
|
|
+ //记录身份证相关图片的最近修改时间,用于上送信息调研,后续下掉 - 2025.6.13 CJL
|
|
|
headPhotoTimeStr = GetFileLastModifyTime(strPath + ".bmp").GetData();
|
|
|
}
|
|
|
else if (fileNamePrefix == "idfront")
|
|
|
{
|
|
|
+ imgRTACode = scanRta.noFindCur;
|
|
|
+
|
|
|
+ //记录身份证相关图片的最近修改时间,用于上送信息调研,后续下掉 - 2025.6.13 CJL
|
|
|
frontPhotoTimeStr = GetFileLastModifyTime(strPath + ".bmp").GetData();
|
|
|
}
|
|
|
else if (fileNamePrefix == "idback")
|
|
|
{
|
|
|
+ imgRTACode = scanRta.noFindCur;
|
|
|
+
|
|
|
+ //记录身份证相关图片的最近修改时间,用于上送信息调研,后续下掉 - 2025.6.13 CJL
|
|
|
backPhotoTimeStr = GetFileLastModifyTime(strPath + ".bmp").GetData();
|
|
|
}
|
|
|
|
|
|
IplImage *src = cvLoadImage(strPath + ".bmp");
|
|
|
if (!src)
|
|
|
{
|
|
|
+ if (!ExistsFileA(strPath + ".bmp")) //找不到本次图片生成
|
|
|
+ {
|
|
|
+ disecription = CSimpleStringA::Format("Can not find file %s.", (fileNamePrefix + ".bmp").GetData());
|
|
|
+ errInfo.clear();
|
|
|
+ errInfo["path"] = (strPath + ".bmp").GetData();
|
|
|
+ errInfo["description"] = disecription.GetData();
|
|
|
+ tErrStr = generateJsonStr(errInfo).second.c_str();
|
|
|
+ DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode(imgRTACode).setAPI("DeleteFileIfExisted")(tErrStr.GetData());
|
|
|
+ }
|
|
|
+
|
|
|
errMsg = CSimpleStringA::Format("read file %s.bmp failed.err:%d", (const char*)strPath, GetLastError());
|
|
|
- DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)(errMsg.GetData());
|
|
|
if (transImgMsg.GetLength() != 0)
|
|
|
{
|
|
|
transImgMsg = transImgMsg + "," + errMsg;
|
|
@@ -977,8 +1003,18 @@ ErrorCodeEnum CIDCertFSM::GetPngBlobEx(CBlob &data, CSimpleStringA fileNamePrefi
|
|
|
return Error_Succeed;
|
|
|
}
|
|
|
else {
|
|
|
+ if (!ExistsFileA(strPath + ".jpg")) //找不到本次图片生成
|
|
|
+ {
|
|
|
+ disecription = CSimpleStringA::Format("Can not find file %s.", (fileNamePrefix + ".bmp").GetData());
|
|
|
+ errInfo.clear();
|
|
|
+ errInfo["path"] = (strPath + ".jpg").GetData();
|
|
|
+ errInfo["description"] = disecription.GetData();
|
|
|
+ tErrStr = generateJsonStr(errInfo).second.c_str();
|
|
|
+ DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode(imgRTACode).setAPI("DeleteFileIfExisted")(tErrStr.GetData());
|
|
|
+ }
|
|
|
+
|
|
|
errMsg = CSimpleStringA::Format("fopen %s failed!", (const char*)strPath);
|
|
|
- DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)(errMsg.GetData());
|
|
|
+ //DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)(errMsg.GetData());
|
|
|
if (transImgMsg.GetLength() != 0)
|
|
|
{
|
|
|
transImgMsg = transImgMsg + "," + errMsg;
|
|
@@ -998,7 +1034,8 @@ void CIDCertFSM::SelfTest(EntityTestEnum eTestType,CSmartPointer<ITransactionCon
|
|
|
pTransactionContext->SendAnswer(m_testResult);
|
|
|
}
|
|
|
|
|
|
-ErrorCodeEnum CIDCertFSM::DeleteFileIfExisted(LPCTSTR fileName, int deleteTiming)
|
|
|
+template <typename T>
|
|
|
+ErrorCodeEnum CIDCertFSM::DeleteFileIfExisted(LPCTSTR fileName, T picRta, int deleteTiming)
|
|
|
{
|
|
|
if(strlen(fileName) == 0 || strchr(fileName, (int)'*') != NULL)
|
|
|
{
|
|
@@ -1025,7 +1062,7 @@ ErrorCodeEnum CIDCertFSM::DeleteFileIfExisted(LPCTSTR fileName, int deleteTiming
|
|
|
errMsg = generateJsonStr(errInfo).second.c_str();
|
|
|
|
|
|
//CSimpleStringA errMsg = CSimpleStringA::Format("检测到上次读证残留图片:[%s]", strAimPath.GetData());
|
|
|
- DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA2112").setAPI("DeleteFileIfExisted")(errMsg.GetData());
|
|
|
+ DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode(picRta.findLast).setAPI("DeleteFileIfExisted")(errMsg.GetData());
|
|
|
}
|
|
|
|
|
|
if (RemoveFileA((LPCTSTR)strAimPath))
|
|
@@ -1038,11 +1075,11 @@ ErrorCodeEnum CIDCertFSM::DeleteFileIfExisted(LPCTSTR fileName, int deleteTiming
|
|
|
CSimpleStringA rtaCode = "";
|
|
|
if (deleteTiming == 1) //删除上次读证残留图片失败
|
|
|
{
|
|
|
- rtaCode = "RTA2113";
|
|
|
+ rtaCode = picRta.delLastErr;
|
|
|
}
|
|
|
else if (deleteTiming == 2) //删除本次读证生成图片失败
|
|
|
{
|
|
|
- rtaCode = "RTA2115";
|
|
|
+ rtaCode = picRta.delCurErr;
|
|
|
}
|
|
|
|
|
|
errInfo.clear();
|
|
@@ -1054,15 +1091,8 @@ ErrorCodeEnum CIDCertFSM::DeleteFileIfExisted(LPCTSTR fileName, int deleteTiming
|
|
|
return Error_Unexpect;
|
|
|
}
|
|
|
}
|
|
|
- else
|
|
|
+ else //如果文件不存在,会在图片格式转换函数GetPngBlobEx()里报错, 这里就不重复报错了
|
|
|
{
|
|
|
- if (deleteTiming == 2) //未发现本次读证生成的图片
|
|
|
- {
|
|
|
- errInfo.clear();
|
|
|
- errInfo["path"] = strAimPath.GetData();
|
|
|
- errMsg = generateJsonStr(errInfo).second.c_str();
|
|
|
- DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA2114").setAPI("DeleteFileIfExisted")(errMsg.GetData());
|
|
|
- }
|
|
|
return Error_Succeed;
|
|
|
}
|
|
|
}
|
|
@@ -1083,15 +1113,17 @@ void CIDCertFSM::DeleteZP(int type, int deleteTiming)
|
|
|
{
|
|
|
if ((type&Bmp_ZP) == Bmp_ZP)
|
|
|
{
|
|
|
- DeleteFileIfExisted("zp.jpg", deleteTiming);
|
|
|
- DeleteFileIfExisted("zp.bmp", deleteTiming); //All
|
|
|
+ HeadImgDelRTA headImgRta;
|
|
|
+ DeleteFileIfExisted("zp.jpg", headImgRta, deleteTiming);
|
|
|
+ DeleteFileIfExisted("zp.bmp", headImgRta, deleteTiming); //All
|
|
|
}
|
|
|
if ((type&Bmp_SCAN) == Bmp_SCAN)
|
|
|
{
|
|
|
- DeleteFileIfExisted("idfront.bmp", deleteTiming);
|
|
|
- DeleteFileIfExisted("idback.bmp", deleteTiming);
|
|
|
- DeleteFileIfExisted("idfront.jpg", deleteTiming);
|
|
|
- DeleteFileIfExisted("idback.jpg", deleteTiming);
|
|
|
+ ScanImgDelRTA sacnImgRta;
|
|
|
+ DeleteFileIfExisted("idfront.bmp", sacnImgRta, deleteTiming);
|
|
|
+ DeleteFileIfExisted("idback.bmp", sacnImgRta, deleteTiming);
|
|
|
+ DeleteFileIfExisted("idfront.jpg", sacnImgRta, deleteTiming);
|
|
|
+ DeleteFileIfExisted("idback.jpg", sacnImgRta, deleteTiming);
|
|
|
}
|
|
|
}
|
|
|
|