瀏覽代碼

#IQRV #comment: 简化退卡逻辑。去除QueryCardPos和ForceIDEject的使用

陈纪林80310970 4 月之前
父節點
當前提交
07d684bee1

+ 19 - 285
Module/mod_IDCertificate/IDCertFSM.cpp

@@ -904,114 +904,18 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
 	m_bReading = false;
 	LogEvent(Severity_Middle, LOG_EVT_IDCERTIFICATE_GREEN_OFF, "IDCer warning off");
 
-	int pos = 99;
 	m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-	ErrorCodeEnum eErr1 = m_hDevHelper->QueryCardPos(pos);
+	ErrorCodeEnum eErr1 = m_hDevHelper->IDCerRFControl(false);
 	m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-	if (eErr1 == Error_NotImpl)
+	if (eErr1 != Error_Succeed)
 	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos").setCostTime(m_ullEndTime - m_ullBeginTime)
-			("old version.no need position.");
+		SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::CloseIDCerRFControl", __FUNCTION__,
+			false, m_ullEndTime - m_ullBeginTime);
 	}
 	else
 	{
-		if (eErr1 == Error_Succeed)
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-				.setCostTime(m_ullEndTime - m_ullBeginTime)();
-			switch (pos)
-			{
-			case 1:
-			case 2:
-				m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-				eErr1 = m_hDevHelper->IDCerRFControl(false);
-				m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-				if (eErr1 != Error_Succeed)
-				{
-					SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::IDCerRFControl", __FUNCTION__,
-						false, m_ullEndTime - m_ullBeginTime);
-					
-					m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-					ErrorCodeEnum errEject = m_hDevHelper->ForceIDEject();
-					m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-					
-					if (errEject != Error_Succeed)
-					{
-						SetErrorAndLog(errEject, MEC_DEVAPI_IDCER_ForceIDEject, "DevAdapter::ForceIDEject", __FUNCTION__,
-							false, m_ullEndTime - m_ullBeginTime);
-					}
-					else
-					{
-						DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::ForceIDEject").setCostTime(m_ullEndTime - m_ullBeginTime)();
-					}
-
-					CheckEjectCardRes(eErr1, errEject);
-				}
-				else
-				{
-					DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::CloseIDCerRFControl")
-						.setCostTime(m_ullEndTime - m_ullBeginTime)();
-				}
-				break;
-			case 0:
-			default:
-				break;
-			}
-		}
-		else
-		{
-			SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_QueryCardPos, "DevAdapter::QueryCardPos", __FUNCTION__,
-				false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8);
-		}
-
-		//查询卡片位置以决定跳转
-		m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-		eErr1 = m_hDevHelper->QueryCardPos(pos);
-		m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-		if (eErr1 == Error_Succeed)
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-				.setCostTime(m_ullEndTime - m_ullBeginTime)();
-		}
-		else
-		{
-			SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_QueryCardPos, "DevAdapter::QueryCardPos", __FUNCTION__,
-				false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8);
-		}
-	}
-
-	if (eErr1 != Error_Succeed || (eErr1 == Error_Succeed && (pos != 0)))
-	{
-		//oilyang@20180531 add for close enter card
-		m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-		ErrorCodeEnum errRf = m_hDevHelper->IDCerRFControl(false);
-		m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-		if (errRf != Error_Succeed)
-		{
-			SetErrorAndLog(errRf, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::CloseIDCerRFControl", __FUNCTION__,
-				false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8);
-			m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-			ErrorCodeEnum errEject = m_hDevHelper->ForceIDEject();
-			m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-
-			if (errEject != Error_Succeed)
-			{
-				SetErrorAndLog(errEject, MEC_DEVAPI_IDCER_ForceIDEject, "DevAdapter::ForceIDEject", __FUNCTION__,
-					false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8);
-			}
-			else
-			{
-				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)
-					.setAPI("DevAdapter::ForceIDEject").setCostTime(m_ullEndTime - m_ullBeginTime)();
-			}
-
-			CheckEjectCardRes(errRf, errEject);
-		}
-		else
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)
-				.setAPI("DevAdapter::CloseIDCerRFControl").setCostTime(m_ullEndTime - m_ullBeginTime)();
-		}
+		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::CloseIDCerRFControl")
+			.setCostTime(m_ullEndTime - m_ullBeginTime)();
 	}
 
 	if (bGetIDCert)
@@ -1034,7 +938,7 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
 		}
 		else if (!bOpenRF)
 		{
-			SetErrorAndLog(errRfOpen, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::OpenIDCerRFControl", __FUNCTION__,
+			SetErrorAndLog(errRfOpen, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::IDCerRFControl", __FUNCTION__,
 				true, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8);
 			ctx->Answer(Error_TimeOut, GetAlarmDEC());
 		}
@@ -1067,12 +971,6 @@ int CIDCertFSM::ReadAndScanUTF8(SpReqAnsContext<IDCert_ReadAndScanUTF8_Req, IDCe
 		LogError(Severity_High, Error_Unexpect, IDCertificate_UserErrorCode_ReadAndScan_Failed, "ReadAndScanUTF8 some thing wrong.");
 	}
 
-	if (eErr1 == Error_Succeed && pos == 2)
-	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("return 4");
-		return 4;
-	}
-
 	if (m_bCancelRead)
 	{
 		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("return 2");
@@ -1152,7 +1050,7 @@ int CIDCertFSM::ReadAndScanUTF8JS(SpReqAnsContext<IDCert_ReadAndScanUTF8JS_Req,
 			if (Error_Succeed == errRfOpen)
 			{
 				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)
-					.setAPI("DevAdapter::OpenIDCerRFControl").setCostTime(m_ullEndTime - m_ullBeginTime)();
+					.setAPI("DevAdapter::IDCerRFControl").setCostTime(m_ullEndTime - m_ullBeginTime)();
 			}
 			else
 			{
@@ -1459,135 +1357,22 @@ int CIDCertFSM::ReadAndScanUTF8JS(SpReqAnsContext<IDCert_ReadAndScanUTF8JS_Req,
 	if (m_bExit)
 		bExitWhenReading = true;
 
-	if (!m_bExit && !bOpenRF && errRfOpen != Error_Succeed)
-	{
-		SetErrorAndLog(errRfOpen, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::OpenIDCerRFControl", __FUNCTION__,
-			true, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS);
-
-		/*DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)
-			.setResultCode(std::to_string(errRfOpen).c_str())
-			("ReadAndScanUTF8JS::IDCerRFControl Open failed with errcode: %d", errRfOpen);*/
-	}
-
 	m_bExit = false;
 	m_bReading = false;
 	LogEvent(Severity_Middle, LOG_EVT_IDCERTIFICATE_GREEN_OFF, "IDCer warning off");
 
-	int pos = 99;
 	m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-	ErrorCodeEnum eErr1 = m_hDevHelper->QueryCardPos(pos);
+	ErrorCodeEnum eErr1 = m_hDevHelper->IDCerRFControl(false);
 	m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-	if (eErr1 == Error_NotImpl)
+	if (eErr1 != Error_Succeed)
 	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos").setCostTime(m_ullEndTime - m_ullBeginTime)
-			("old version.no need position.");
+		SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::CloseIDCerRFControl", __FUNCTION__,
+			false, m_ullEndTime - m_ullBeginTime);
 	}
 	else
 	{
-		if (eErr1 == Error_Succeed)
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-				.setCostTime(m_ullEndTime - m_ullBeginTime)();
-			switch (pos)
-			{
-			case 1:
-			case 2:
-				m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-				eErr1 = m_hDevHelper->IDCerRFControl(false);
-				m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-				if (eErr1 != Error_Succeed)
-				{
-					//DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("exec IDCerRFControl(false) failed, force eject...");
-					SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::CloseIDCerRFControl", __FUNCTION__,
-						false, m_ullEndTime - m_ullBeginTime);
-					m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-					ErrorCodeEnum errEject = m_hDevHelper->ForceIDEject();
-					m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-					if (errEject != Error_Succeed)
-					{
-						SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_ForceIDEject, "DevAdapter::ForceIDEject", __FUNCTION__,
-							false, m_ullEndTime - m_ullBeginTime);
-					}
-					else
-					{
-						DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)
-							.setAPI("DevAdapter::ForceIDEject").setCostTime(m_ullEndTime - m_ullBeginTime)();
-					}
-				}
-				else
-				{
-					DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::CloseIDCerRFControl")
-						.setCostTime(m_ullEndTime - m_ullBeginTime)();
-				}
-				break;
-			case 0:
-			default:
-				break;
-			}
-		}
-		else
-		{
-			SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_QueryCardPos, "DevAdapter::QueryCardPos", __FUNCTION__,
-				true, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS);
-
-			/*DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-				.setCostTime(m_ullEndTime - m_ullBeginTime)
-				.setResultCode("RTA210A")
-				("exec QueryCardPos first time failed.");*/
-		}
-
-		//查询卡片位置以决定跳转
-		m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-		eErr1 = m_hDevHelper->QueryCardPos(pos);
-		m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-		if (eErr1 == Error_Succeed)
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-				.setCostTime(m_ullEndTime - m_ullBeginTime)();
-		}
-		else
-		{
-			SetErrorAndLog(eErr1, MEC_DEVAPI_IDCER_QueryCardPos, "DevAdapter::QueryCardPos", __FUNCTION__,
-				true, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS);
-
-			/*DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-				.setCostTime(m_ullEndTime - m_ullBeginTime)
-				.setResultCode("RTA210A")
-				("exec QueryCardPos second time failed with errcode: %d", eErr1);*/
-		}
-	}
-
-	if (eErr1 != Error_Succeed || (eErr1 == Error_Succeed && (pos != 0)))
-	{
-		//oilyang@20180531 add for close enter card
-		m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-		ErrorCodeEnum errRfClose = m_hDevHelper->IDCerRFControl(false);
-		m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-		if (errRfClose != Error_Succeed)
-		{
-			SetErrorAndLog(errRfClose, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::CloseIDCerRFControl", __FUNCTION__,
-				false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS);
-
-			m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-			ErrorCodeEnum errEject = m_hDevHelper->ForceIDEject();
-			m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-
-			if (errEject != Error_Succeed)
-			{
-				SetErrorAndLog(errEject, MEC_DEVAPI_IDCER_ForceIDEject, "DevAdapter::ForceIDEject", __FUNCTION__,
-					false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS);
-			}
-			else
-			{
-				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)
-					.setAPI("DevAdapter::ForceIDEject").setCostTime(m_ullEndTime - m_ullBeginTime)();
-			}
-		}
-		else
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)
-				.setAPI("DevAdapter::CloseIDCerRFControl").setCostTime(m_ullEndTime - m_ullBeginTime)();
-		}
+		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::CloseIDCerRFControl")
+			.setCostTime(m_ullEndTime - m_ullBeginTime)();
 	}
 
 	if (bGetIDCert)
@@ -1612,7 +1397,7 @@ int CIDCertFSM::ReadAndScanUTF8JS(SpReqAnsContext<IDCert_ReadAndScanUTF8JS_Req,
 		}
 		else if (!bOpenRF)
 		{
-			SetErrorAndLog(errRfOpen, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::OpenIDCerRFControl", __FUNCTION__,
+			SetErrorAndLog(errRfOpen, MEC_DEVAPI_IDCER_IDCerRFControl, "DevAdapter::IDCerRFControl", __FUNCTION__,
 				true, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS);
 			//DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("Open IDCerRFControl(Timeout) failed: %s", SpStrError(errRfOpen));
 
@@ -1624,36 +1409,30 @@ int CIDCertFSM::ReadAndScanUTF8JS(SpReqAnsContext<IDCert_ReadAndScanUTF8JS_Req,
 			if (errAuth == Error_DevMedia)
 			{
 				LogWarn(Severity_Low, Error_Unexpect, IDCertificate_UserErrorCode_Timeout_OtherCard, "读证超时,插入的卡片非身份.");
-				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode(IDCertService_LogCode_ReadAndScanUTF8)();
+				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode(IDCertService_LogCode_ReadAndScanUTF8JS)();
 				ctx->Answer(Error_TimeOut);
 			}
 			else if (errAuth == Error_Dev_IDCardNotFound)
 			{
 				LogWarn(Severity_Low, Error_Unexpect, IDCertificate_UserErrorCode_Timeout_NoCard, "读证超时,未检测到有卡片插入.");
-				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode(IDCertService_LogCode_ReadAndScanUTF8)();
+				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode(IDCertService_LogCode_ReadAndScanUTF8JS)();
 				ctx->Answer(Error_TimeOut);
 			}
 			else
 			{
 				SetErrorAndLog(errAuth, MEC_DEVAPI_IDCER_IDCerAuthenticate, "DevAdapter::IDCerAuthenticate", __FUNCTION__,
-					false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8); //RTA2107
+					false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8JS); //RTA2107
 				ctx->Answer(Error_Unexpect, GetAlarmDEC());
 			}
 		}
 	}
 	else
 	{
-		DbgWithLink(LOG_LEVEL_ERROR, LOG_TYPE_USER).setLogCode(IDCertService_LogCode_ReadAndScanUTF8).setResultCode("RTA2104")("ReadAndScanUTF8JS some thing wrong.");
+		DbgWithLink(LOG_LEVEL_ERROR, LOG_TYPE_USER).setLogCode(IDCertService_LogCode_ReadAndScanUTF8JS).setResultCode("RTA2104")("ReadAndScanUTF8JS some thing wrong.");
 		ctx->Answer(Error_Unexpect, IDCertificate_UserErrorCode_ReadAndScan_Failed);
 		LogError(Severity_High, Error_Unexpect, IDCertificate_UserErrorCode_ReadAndScan_Failed, "ReadAndScanUTF8 some thing wrong.");
 	}
 
-	if (eErr1 == Error_Succeed && pos == 2)
-	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("return 4");
-		return 4;
-	}
-
 	if (m_bCancelRead)
 	{
 		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI(__FUNCTION__)("return 2");
@@ -2293,51 +2072,6 @@ void CIDCertFSM::CheckHanZi(UINT16* ucs2_code)
 	}
 }
 
-void CIDCertFSM::CheckEjectCardRes(ErrorCodeEnum errRf, ErrorCodeEnum errForceIDEject)
-{
-	int pos = 99;
-	m_ullBeginTime = SP::Module::Comm::RVCGetTickCount();
-	ErrorCodeEnum posErr = m_hDevHelper->QueryCardPos(pos);
-	m_ullEndTime = SP::Module::Comm::RVCGetTickCount();
-
-	if (posErr == Error_Succeed)
-	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::QueryCardPos")
-			.setCostTime(m_ullEndTime - m_ullBeginTime)
-			("执行吐卡后,获取卡片位置成功, pos : %d", pos);
-
-		CSimpleStringA warnMsg = CSimpleStringA::Format("RFControl返回:%s. ForceIDEject返回%s. 获取卡片位置 pos = %d.", 
-			SpStrError(errRf), SpStrError(errForceIDEject), pos);
-		switch (pos)
-		{
-		case 0:
-			LogWarn(Severity_Middle, Error_Succeed,
-				IDCertificate_UserErrorCode_EjectCardRes_Pos_0, warnMsg.GetData());
-			break;
-		case 1:
-			LogWarn(Severity_Middle, Error_Succeed,
-				IDCertificate_UserErrorCode_EjectCardRes_Pos_1, warnMsg.GetData());
-			break;
-		case 2:
-			LogWarn(Severity_Middle, Error_Succeed,
-				IDCertificate_UserErrorCode_EjectCardRes_Pos_2, warnMsg.GetData());
-			break;
-		default:
-			LogWarn(Severity_Middle, Error_Succeed,
-				IDCertificate_UserErrorCode_EjectCardRes_Pos_X, warnMsg.GetData());
-			break;
-		}
-
-	}
-	else
-	{
-		SetErrorAndLog(posErr, MEC_DEVAPI_IDCER_QueryCardPos, "DevAdapter::QueryCardPos", __FUNCTION__,
-			false, m_ullEndTime - m_ullBeginTime, IDCertService_LogCode_ReadAndScanUTF8);
-
-		DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("执行吐卡后,获取卡片位置失败.", posErr);
-	}
-}
-
 CSimpleStringA CIDCertFSM::GetFileHashStr(CSimpleStringA filePath)
 {
 	//calculate file hash value

+ 0 - 2
Module/mod_IDCertificate/IDCertFSM.h

@@ -272,8 +272,6 @@ private:
 	int GetUCS2ByteLength(UINT16* ucs2_code);
 	void CheckHanZi(UINT16* ucs2_code);
 
-	void CheckEjectCardRes(ErrorCodeEnum errRf, ErrorCodeEnum errForceIDEject); //退卡情况收集,cjl-2024.11.21
-
 	CSimpleStringA GetFileHashStr(CSimpleStringA filePath);
 	CSimpleStringA GetFileLastModifyTime(CSimpleStringA filePath);
 

+ 0 - 6
Module/mod_IDCertificate/IDCertificate_UserErrorCode.h

@@ -27,12 +27,6 @@
 #define IDCertificate_UserErrorCode_Timeout_NoCard			0x20100221 //超时未插卡
 #define IDCertificate_UserErrorCode_Timeout_OtherCard		0x20100221 //插入其他卡片(非身份证)
 
-#define IDCertificate_UserErrorCode_EjectCardRes_Pos_0		0x20100230 //退卡结果-位置0:被取走
-#define IDCertificate_UserErrorCode_EjectCardRes_Pos_1		0x20100231 //退卡结果-位置1:读卡器内
-#define IDCertificate_UserErrorCode_EjectCardRes_Pos_2		0x20100232 //退卡结果-位置2:读卡口,未被取走
-#define IDCertificate_UserErrorCode_EjectCardRes_Pos_X		0x20100233 //退卡结果-异常值
-
-
 
 //#define IDCertificate_UserErrorCode_Real_Root_Config		(IDCertificate_UserErrorCode_Start + 31) //加载实际的root配置