Преглед на файлове

!10869 去掉废弃的事件码(卡机分离时应去掉);去掉废弃的issue接口;优化逻辑;补充ic卡序号tag5f34
Merge pull request !10869 from 80174847/oilyang_fixed_everything

杨诗友80174847 преди 1 месец
родител
ревизия
c72d41bd7d

+ 2 - 7
Module/mod_CardIssuerStand/CardIssuerStand.xml

@@ -69,13 +69,7 @@
 			</res>			
 		</twoway>
 		<oneway name="Exit" overlap="true" method_id="8">			
-		</oneway>			
-		<twoway name="Issue" overlap="true" method_id="9">
-			<req>
-			</req>
-			<res>
-			</res>			
-		</twoway>				
+		</oneway>				
 		<twoway name="QueryCardInfo" overlap="true" method_id="14">
 			<req>
 			</req>
@@ -303,6 +297,7 @@
 					ACTION:行为代码	ATC_CODE:交易计数器code	ARQC_CODE:授权请求code
 					MAC:安全报文鉴别码	ARQC_SIZE:授权请求长度		ARQC_DATA:授权请求数据
 					IC_TRACK2:等效二磁道2数据(Tag:57)	EXPIRE_DATE:卡片中的应用失效日期(Tag:5F24)	IC_TAGS:基础IC数据
+          ICCardSerial:卡序号(Tag:5F34)
 				-->
 				<param name="pbocData" type="string"/>
 				<param name="reserved1" type="array_int"/>

+ 27 - 239
Module/mod_CardIssuerStand/CardIssuerStandFSM.cpp

@@ -134,7 +134,6 @@ void CCardIssuerFSM::s2_on_entry()
 	
 	m_resetTimes = 0;
 	m_testResult = Error_Succeed;
-	m_bIssuingExit = false;
 }
 
 void CCardIssuerFSM::s2_on_exit()
@@ -159,24 +158,12 @@ unsigned int CCardIssuerFSM::s2_on_event(FSMEvent* pEvt)
 		pEvt->SetHandled();
 	}
 		break;
-	case USER_EVT_ISSUE:
 	case USER_EVT_ISSUE_EX:
 	{
 		IssueTask* task = new IssueTask(this);
-		CardIssueEvent *cie = NULL;
-		CardIssueExEvent *ciee = NULL;
-		if (pEvt->iEvt == USER_EVT_ISSUE)
-		{
-			cie = dynamic_cast<CardIssueEvent*>(pEvt);
-			task->ctx = cie->ctx;
-			task->ctxEx = NULL;
-		}
-		else
-		{
-			ciee = dynamic_cast<CardIssueExEvent*>(pEvt);
-			task->ctxEx = ciee->ctx;
-			task->ctx = NULL;
-		}
+		CardIssueExEvent* ciee = NULL;
+		ciee = dynamic_cast<CardIssueExEvent*>(pEvt);
+		task->ctxEx = ciee->ctx;
 		GetEntityBase()->GetFunction()->PostThreadPoolTask(task);
 		pEvt->SetHandled();
 	}
@@ -693,7 +680,6 @@ unsigned int CCardIssuerFSM::s4_on_event(FSMEvent* pEvt)
 			CardIssueExEvent *ciee = NULL;
 			ciee = dynamic_cast<CardIssueExEvent*>(pEvt);
 			task->ctxEx = ciee->ctx;
-			task->ctx = NULL;
 			GetEntityBase()->GetFunction()->PostThreadPoolTask(task);
 			pEvt->SetHandled();
 			return pEvt->param1;
@@ -1101,10 +1087,6 @@ unsigned int CCardIssuerFSM::s10_on_event(FSMEvent* pEvt)
 	int ret = 0;
 	switch(pEvt->iEvt)
 	{
-	case USER_EVT_ISSUE_FINISHED:
-		pEvt->SetHandled();
-		ret = pEvt->param1;
-		break;
 	case USER_EVT_ISSUE_EX_FINISHED:
 		pEvt->SetHandled();
 		ret = pEvt->param1;
@@ -1112,7 +1094,6 @@ unsigned int CCardIssuerFSM::s10_on_event(FSMEvent* pEvt)
 	case EVT_MAINPAGE_DISPLAY:
 		pEvt->SetHandled();
 		m_captureReason = "4001";
-		m_bIssuingExit = true;
 		m_bMainPageWhileWorking = true;
 		break;
 	case USER_EVT_ACCEPT_CANCEL:
@@ -1316,70 +1297,6 @@ bool CCardIssuerFSM::GetDevStatus(bool bPrint)
 	} while (getDevInfoCount < GET_DEV_STATUS_COUNT);
 	return false;
 }
-int CCardIssuerFSM::Reset()
-{
-	LOG_FUNCTION();
-	if (m_hDevHelper == nullptr)
-	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("Maybe the m_hDevHelper have been released,switch to s0 to restart.");
-		return 2;
-	}
-	long l_beginTime, l_endTime;
-	l_beginTime = GetTickCountRVC();
-	ErrorCodeEnum ec = m_hDevHelper->Reset();
-	l_endTime = GetTickCountRVC();
-	if (ec == Error_Succeed)
-	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::Reset").setCostTime(l_endTime - l_beginTime)("Reset::Reset");
-		if(GetDevStatus())
-		{
-			DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("m_issueStatus: %d, m_CardCaptured:%d, m_devStatus.eMedia:%d, in Reset.",
-											m_issueStatus, m_CardCaptured, m_devStatus.eMedia);
-			if (m_devStatus.eMedia == CI_MEDIA_PRESENT || m_devStatus.eMedia == CI_MEDIA_ENTERING)
-			{
-				ErrorCodeEnum eMoveErr;
-				if (m_issueStatus)
-				{
-					//oiltmp to add 20131212
-					eMoveErr = MachineMoveCardBackNotHold();
-					LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_CaptureCard_Reset, "issue flag is 1, to capture card.");
-					m_CardCaptured++;
-					if (!SetCardCaptured(m_CardCaptured))
-						DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("set card captured failed.");
-				}
-				else
-				{
-					//oiltmp to add 20131212
-					eMoveErr = MachineMoveCardFrontGate();
-					LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_EjectCard_ByTerminal, "issue flag is 0, to eject card.");
-				}
-				if (eMoveErr == Error_Succeed)
-				{
-					return 0;
-				}
-			}
-			else if (m_devStatus.eMedia == CI_MEDIA_NOTPRESENT) {
-				return 0;
-			}
-			else
-			{
-				DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("media position %d",m_devStatus.eMedia);
-				return 1;
-			}
-		}
-		else
-		{
-			return 1;
-		}
-	}
-	else {
-		SetErrorAndLog(ec, MEC_DEVAPI_CARDISSUER_Reset, "DevAdapter::Reset", __FUNCTION__, false, l_endTime - l_beginTime, "", "");
-		return 1;
-	}
-	return 0;
-}
-
-
 bool CCardIssuerFSM::LoadCMBPrint(CSimpleStringA csBinPath)
 {
 	if (cmdDecodeEx == NULL) {
@@ -1730,7 +1647,7 @@ int CCardIssuerFSM::CheckIfHasCardOnCase(CheckCardCase eCase)
 	}
 	return 1;
 }
-int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx, SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctxEx)
+int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctxEx)
 {
 	LOG_FUNCTION();
 
@@ -1739,25 +1656,9 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 
 	if (ctxEx != NULL)
 	{
-		//Req.hopper
-		//89:从加卡箱移卡读卡
-		//88:卡片加到卡槽
-		//87:吞卡
-		//99:移卡读卡
-		//98:手工取卡
-		//100:清空卡库、卡库盘库吞到吞卡箱
 		DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)(CSimpleStringA::Format("IssueCard, issue type:%d", ctxEx->Req.hopper));
 		ctxEx->Ans.reserved1.Init(2);
 		
-		//oiltmp 卡库独有吗?
-		if (ctxEx->Req.hopper == 87)//签发失败,吞卡
-		{
-			LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_CaptureCard_SignFailed, "sign failed, to capture card.");
-			ToRegistCaptureCardInfo();
-			MachineMoveCardBackNotHold();
-			ctxEx->Answer(Error_Succeed);
-			return 2;
-		}
 		//param Req.hopper is wrong
 		if (ctxEx->Req.hopper < 1 || ctxEx->Req.hopper > 6){
 			errMsg = CSimpleStringA::Format("Issuer Card, the hopperNo(%d) is wrong!!!", ctxEx->Req.hopper);
@@ -1781,15 +1682,6 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_USER).setLogCode("QLR040220320").setResultCode("RTA230D")("未检测到卡箱3,请检测卡箱3是否放好");
 				ctxEx->Answer(Error_DevMedia, CardIssuer_UserErrorCode_NotHas_Hopper3);
 				break;
-			case 4:
-				ctxEx->Answer(Error_DevMedia, CardIssuer_UserErrorCode_NotHas_Hopper4);
-				break;
-			case 5:
-				ctxEx->Answer(Error_DevMedia, CardIssuer_UserErrorCode_NotHas_Hopper5);
-				break;
-			case 6:
-				ctxEx->Answer(Error_DevMedia, CardIssuer_UserErrorCode_NotHas_Hopper6);
-				break;
 			}
 			return 2;
 		}
@@ -1827,10 +1719,7 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_USER).setLogCode("QLR040220320").setResultCode("RTA230R")("卡箱1连续吞卡超限,请及时执行清机");
 
 		LogWarn(Severity_Middle, Error_Unexpect, dwTmpErrCode, errMsg.GetData());
-		if (ctx != NULL)
-			ctx->Answer(Error_DevMedia, dwTmpErrCode);
-		else
-			ctxEx->Answer(Error_DevMedia, dwTmpErrCode);
+		ctxEx->Answer(Error_DevMedia, dwTmpErrCode);
 		return 2;
 	}
 	ErrorCodeEnum errCode;
@@ -1848,16 +1737,12 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 	}
 	else
 	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::GetDevStatus").setCostTime(l_endTime - l_beginTime)("IssueCard::GetDevStatus");
+		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::GetDevStatus").setCostTime(l_endTime - l_beginTime)("%d", cis.eIssuerBin[m_currentHopper - 1]);
 		if (cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_EMPTY || cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_NOTSUPP)
 			bEmpty = true;
 	}
 	if (bEmpty || m_remainsEx[m_currentHopper - 1] <= 0)
 	{
-		CSimpleStringA warnInfo = CSimpleStringA::Format("IssuerCard, hopper%d no more cards to issue. LocalRecord CardremainsEx:%d, Vendor return:NoCard(%d), CardCount(%d)",
-			m_currentHopper, m_remainsEx[m_currentHopper - 1], cis.eIssuerBin[m_currentHopper - 1],  cis.dwIssuerCount[m_currentHopper - 1]);
-		//LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_No_More_Card_Issue, warnInfo.GetData());
-		DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)(warnInfo.GetData());
 
 		DWORD dwUsrErrCode = 0;
 		if (cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_NOTSUPP)
@@ -1877,12 +1762,6 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_USER).setLogCode("QLR040220320").setResultCode("RTA230D")("未检测到卡箱3,请检测卡箱3是否放好");
 				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper3;
 			}
-			else if (m_currentHopper == 4)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper4;
-			else if (m_currentHopper == 5)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper5;
-			else if (m_currentHopper == 6)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper6;
 		}
 		else if (cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_EMPTY)
 		{
@@ -1901,12 +1780,6 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_USER).setLogCode("QLR040220320").setResultCode("RTA230G")("卡箱3未检测到卡片,请检测卡箱3中卡片是否放好或卡片余量过低");
 				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper3;
 			}
-			else if (m_currentHopper == 4)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper4;
-			else if (m_currentHopper == 5)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper5;
-			else if (m_currentHopper == 6)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper6;
 		}
 		else if (m_remainsEx[m_currentHopper - 1] <= 0)
 		{
@@ -1926,10 +1799,7 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardRemains_Hopper3;
 			}
 		}
-		if (ctx != NULL)
-			ctx->Answer(Error_DevNotAvailable, dwUsrErrCode);
-		else
-			ctxEx->Answer(Error_DevNotAvailable, dwUsrErrCode);
+		ctxEx->Answer(Error_DevNotAvailable, dwUsrErrCode);
 
 		return 2;
 	}
@@ -1958,17 +1828,10 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 	m_bCardFromHopper = true;
 	if (errCode != Error_Succeed)
 	{
-		
+
 		CSimpleStringA ErrMsg = CSimpleStringA::Format("m_currentHopper:%d", m_currentHopper);
-		
-		if (ctx != NULL) {
-			SetErrorAndLog(errCode, MEC_DEVAPI_CARDISSUER_CI_MOVECARD_FROM_HOPPER, "DevAdapter::MoveCard", __FUNCTION__, IsInBusiness(), l_endTime - l_beginTime, "QLR040220320", ErrMsg.GetData());
-			ctx->Answer(Error_Unexpect, GetAlarmDEC());
-		}
-		else {
-			SetErrorAndLog(errCode, MEC_DEVAPI_CARDISSUER_CI_MOVECARD_FROM_HOPPER, "DevAdapter::MoveCard", __FUNCTION__, IsInBusiness(), l_endTime - l_beginTime, "QLR040220320", ErrMsg.GetData());
-			ctxEx->Answer(Error_Unexpect, GetAlarmDEC());
-		}
+		SetErrorAndLog(errCode, MEC_DEVAPI_CARDISSUER_CI_MOVECARD_FROM_HOPPER, "DevAdapter::MoveCard", __FUNCTION__, IsInBusiness(), l_endTime - l_beginTime, "QLR040220320", ErrMsg.GetData());
+		ctxEx->Answer(Error_Unexpect, GetAlarmDEC());
 		return 1;
 	}
 	else {
@@ -1986,17 +1849,8 @@ int CCardIssuerFSM::IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req,
 	//DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode("QLR040220320")("IssueCard success.");
 	Sleep(1000);
 	ctxEx->Ans.reserved1[0] = ctxEx->Ans.reserved1[1] = 0;
-	//oilyang@20170929 根据讨论结果,去掉调用
 
-	if (m_bIssuingExit)
-	{
-		LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_CaptureCard_IssueExit, "Issuing exit, to capture card.");
-		CaptureCard(NULL);
-	}
-	if (ctx != NULL)
-		ctx->Answer(Error_Succeed);
-	else
-		ctxEx->Answer(Error_Succeed);
+	ctxEx->Answer(Error_Succeed);
 	return 0;
 }
 
@@ -2268,7 +2122,6 @@ int CCardIssuerFSM::AcceptCard(SpReqAnsContext<CardIssuerStandService_Insert_Req
 		m_bCardFromHopper = false;
 		if (ctx != NULL)
 		{
-			//LogWarn(Severity_Low, Error_Succeed, CardIssuer_UserErrorCode_InsertCardSucceed, "AcceptCard, insert succeed");
 			DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("AcceptCard, insert succeed");
 			m_bUseRFTillNext = false;
 			ctx->Answer(Error_Succeed);
@@ -2390,7 +2243,6 @@ int CCardIssuerFSM::ReadCard_Contact(SpReqAnsContext<CardIssuerStandService_Read
 	CSimpleString errMsg("");
 	errMsg = CSimpleString::Format("ReadCard, inParam: reserved1 for lightPos:%d, m_issueStatus:%d, m_currentHopper:%d",
 		ctx->Req.reserved1, m_issueStatus, m_currentHopper);
-	//LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_ReadCard_Process, errMsg.GetData());
 	DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)(errMsg.GetData());
 	DWORD dwStart = GetTickCountRVC();
 	MagTracks magTracks;
@@ -2521,12 +2373,7 @@ int CCardIssuerFSM::ReadCard_Contact(SpReqAnsContext<CardIssuerStandService_Read
 			}
 
 			CSimpleStringA cardInfo(true);
-			//if (!ctx->Ans.track2.IsNullOrEmpty() && (pos + 8) < magTracks.track[1].dwSize)
-			//{
-			//	cardInfo = CSimpleStringA::Format("cardServiceCode:%s", (ctx->Ans.track2.SubString(pos + 1, 7)).GetData());
-			//	LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_Track2_ServiceCode, cardInfo.GetData());
-			//}
-			cardInfo = CSimpleStringA::Format("cardBin:%s****%s , len:%d", (LPCTSTR)ctx->Ans.t2Account.SubString(0, 6), (LPCTSTR)ctx->Ans.t2Account.SubString(ctx->Ans.t2Account.GetLength() - 4, 4), ctx->Ans.t2Account.GetLength());
+			cardInfo = CSimpleStringA::Format("%s", SP::Module::Util::DataMask(SP::Module::Util::DataMask_CardAccount, ctx->Ans.t2Account).GetData());
 			LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_CardBin, cardInfo.GetData());
 
 			break;
@@ -2645,8 +2492,6 @@ int CCardIssuerFSM::ReadCard_Contact(SpReqAnsContext<CardIssuerStandService_Read
 			}
 		}
 	}
-	CSimpleStringA cardType = CSimpleStringA::Format("cardType:%d", ctx->Ans.ICType);
-	//LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_CardType, cardType.GetData());
 
 	DWORD dwEnd = GetTickCountRVC();
 	DWORD dwCollapse = dwEnd - dwStart;
@@ -2689,7 +2534,6 @@ int CCardIssuerFSM::ReadCard_RF(SpReqAnsContext<CardIssuerStandService_Read_Req,
 	CSimpleString errMsg("");
 	errMsg = CSimpleString::Format("ReadCard, inParam: reserved1 for lightPos:%d, m_issueStatus:%d, m_currentHopper:%d",
 		ctx->Req.reserved1, m_issueStatus, m_currentHopper);
-	//LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_ReadCard_Process, errMsg.GetData());
 	DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)(errMsg.GetData());
 	DWORD dwStart = GetTickCountRVC();
 	MagTracks magTracks;
@@ -2812,12 +2656,7 @@ int CCardIssuerFSM::ReadCard_RF(SpReqAnsContext<CardIssuerStandService_Read_Req,
 			}
 
 			CSimpleStringA cardInfo(true);
-			//if (!ctx->Ans.track2.IsNullOrEmpty() && (pos + 8) < magTracks.track[1].dwSize)
-			//{
-			//	cardInfo = CSimpleStringA::Format("cardServiceCode:%s", (ctx->Ans.track2.SubString(pos + 1, 7)).GetData());
-			//	LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_Track2_ServiceCode, cardInfo.GetData());
-			//}
-			cardInfo = CSimpleStringA::Format("cardBin:%s****%s , len:%d", (LPCTSTR)ctx->Ans.t2Account.SubString(0, 6), (LPCTSTR)ctx->Ans.t2Account.SubString(ctx->Ans.t2Account.GetLength() - 4, 4), ctx->Ans.t2Account.GetLength());
+			cardInfo = CSimpleStringA::Format("%s", SP::Module::Util::DataMask(SP::Module::Util::DataMask_CardAccount, ctx->Ans.t2Account).GetData());
 			LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_CardBin, cardInfo.GetData());
 
 			break;
@@ -2905,8 +2744,6 @@ int CCardIssuerFSM::ReadCard_RF(SpReqAnsContext<CardIssuerStandService_Read_Req,
 			}
 		}
 	}
-	CSimpleStringA cardType = CSimpleStringA::Format("cardType:%d", ctx->Ans.ICType);
-	//LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_CardType, cardType.GetData());
 
 	DWORD dwEnd = GetTickCountRVC();
 	DWORD dwCollapse = dwEnd - dwStart;
@@ -3868,15 +3705,6 @@ bool CCardIssuerFSM::SetCardRemains(const int num, const int hopper,bool bInit)
 		case 3:
 			LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_NoCardRemains_Hopper3, "Hopper 3 No card remains.");
 			break;
-		case 4:
-			LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_NoCardRemains_Hopper4, "Hopper 4 No card remains.");
-			break;
-		case 5:
-			LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_NoCardRemains_Hopper5, "Hopper 5 No card remains.");
-			break;
-		case 6:
-			LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_NoCardRemains_Hopper6, "Hopper 6 No card remains.");
-			break;
 		default:
 			break;
 		}
@@ -5321,7 +5149,7 @@ int CCardIssuerFSM::EjectJS(SpReqAnsContext<CardIssuerStandService_EjectJS_Req,
 int CCardIssuerFSM::CaptureJS(SpReqAnsContext<CardIssuerStandService_CaptureJS_Req, CardIssuerStandService_CaptureJS_Ans>::Pointer ctx)
 {
 	LOG_FUNCTION();
-	DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("吞卡开始");
+	DWORD dwTmpUserErrCode = 0;
 	long l_beginTime, l_endTime;
 	int ret = 0;
 	if (ctx != NULL) {
@@ -5356,10 +5184,9 @@ int CCardIssuerFSM::CaptureJS(SpReqAnsContext<CardIssuerStandService_CaptureJS_R
 			else {
 				DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::SetCardInType").setCostTime(l_endTime - l_beginTime)("CaptureJS::SetCardInType");
 			}
-			CSimpleStringA maskCardno = MaskCardno(m_currCardNo.GetData());
-			m_currCardNo = "";
 			if (ctx != NULL) {
-				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setLogCode("QLR040220343").setResultCode("RTA23CS")("CaptureJS::GetDevStatus succ, No card found in cardReader, m_currCardNo=%s", maskCardno.GetData());
+				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setLogCode("QLR040220343").setResultCode("RTA23CS")
+					("CaptureJS::GetDevStatus succ, No card found in cardReader");
 				LogWarn(Severity_Low, Error_Unexpect, CardIssuer_UserErrorCode_Capture_NoCard_Failed, "Capture card, No card found in cardReader");
 				ctx->Answer(Error_Unexpect, CardIssuer_UserErrorCode_Capture_NoCard_Failed);//读卡器无卡
 			}
@@ -5370,10 +5197,11 @@ int CCardIssuerFSM::CaptureJS(SpReqAnsContext<CardIssuerStandService_CaptureJS_R
 		}
 	}
 	else {
-		SetErrorAndLog(eErr, MEC_DEVAPI_CARDISSUER_GetDevStatus, "DevAdapter::GetDevStatus", __FUNCTION__, false, l_endTime - l_beginTime, "QLR040220343", "");
+		dwTmpUserErrCode = SetErrorAndLog(eErr, MEC_DEVAPI_CARDISSUER_GetDevStatus, "DevAdapter::GetDevStatus", __FUNCTION__, IsInBusiness(), l_endTime - l_beginTime, "QLR040220343", "");
+		ctx->Answer(Error_Unexpect, dwTmpUserErrCode);
+		return 1;
 	}
 
-	DWORD dwTmpUserErrCode = 0;
 	l_beginTime = GetTickCountRVC();
 	eErr = m_hDevHelper->MoveCard(CI_MOVECARD_BACK_NOT_HOLD);
 	l_endTime = GetTickCountRVC();
@@ -5397,13 +5225,7 @@ int CCardIssuerFSM::CaptureJS(SpReqAnsContext<CardIssuerStandService_CaptureJS_R
 		}
 	}
 	else {
-		DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("CaptureJS::MoveCard(CI_MOVECARD_BACK_NOT_HOLD) err");
-		if (ctx != NULL && IsInBusiness()) {
-			dwTmpUserErrCode = SetErrorAndLog(eErr, MEC_DEVAPI_CARDISSUER_CI_MOVECARD_BACK_NOT_HOLD, "DevAdapter::MoveCard", __FUNCTION__, true, l_endTime - l_beginTime, "QLR040220343", "CaptureJS::MoveCard(CI_MOVECARD_BACK_NOT_HOLD) err");
-		}
-		else {
-			dwTmpUserErrCode = SetErrorAndLog(eErr, MEC_DEVAPI_CARDISSUER_CI_MOVECARD_BACK_NOT_HOLD, "DevAdapter::MoveCard", __FUNCTION__, false, l_endTime - l_beginTime, "QLR040220343", "");
-		}
+		dwTmpUserErrCode = SetErrorAndLog(eErr, MEC_DEVAPI_CARDISSUER_CI_MOVECARD_BACK_NOT_HOLD, "DevAdapter::MoveCard", __FUNCTION__, IsInBusiness(), l_endTime - l_beginTime, "QLR040220343");
 		ret = 1;
 	}
 	//业务返回
@@ -5486,7 +5308,7 @@ int CCardIssuerFSM::IssueFromBoxJS(SpReqAnsContext<CardIssuerStandService_IssueF
 	}
 	else
 	{
-		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::GetDevStatus").setCostTime(l_endTime - l_beginTime)("IssueFromBoxJS::GetDevStatus");
+		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setAPI("DevAdapter::GetDevStatus").setCostTime(l_endTime - l_beginTime)("%d", cis.eIssuerBin[m_currentHopper - 1]);
 		if (cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_EMPTY || cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_NOTSUPP) {
 			bEmpty = true;
 		}
@@ -5494,10 +5316,6 @@ int CCardIssuerFSM::IssueFromBoxJS(SpReqAnsContext<CardIssuerStandService_IssueF
 
 	if (bEmpty)
 	{
-		//卡箱无卡时返回错误信息
-		CSimpleStringA warnInfo = CSimpleStringA::Format("IssuerCard, hopper%d no more cards to issue. Vendor return:NoCard(%d), CardCount(%d)",
-			cis.eIssuerBin[m_currentHopper - 1], cis.dwIssuerCount[m_currentHopper - 1]);
-		LogWarn(Severity_Middle, Error_Unexpect, CardIssuer_UserErrorCode_No_More_Card_Issue, warnInfo.GetData());
 
 		DWORD dwUsrErrCode = 0;
 		if (cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_NOTSUPP)
@@ -5517,12 +5335,6 @@ int CCardIssuerFSM::IssueFromBoxJS(SpReqAnsContext<CardIssuerStandService_IssueF
 				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_USER).setLogCode("QLR040220345").setResultCode("RTA230D")("未检测到卡箱3,请检测卡箱3是否放好");
 				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper3;
 			}
-			else if (m_currentHopper == 4)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper4;
-			else if (m_currentHopper == 5)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper5;
-			else if (m_currentHopper == 6)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NotHas_Hopper6;
 		}
 		else if (cis.eIssuerBin[m_currentHopper - 1] == CI_ISSUEHOPPER_EMPTY)
 		{
@@ -5541,12 +5353,6 @@ int CCardIssuerFSM::IssueFromBoxJS(SpReqAnsContext<CardIssuerStandService_IssueF
 				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_USER).setLogCode("QLR040220345").setResultCode("RTA230G")("卡箱3未检测到卡片,请检测卡箱3中卡片是否放好或卡片余量过低");
 				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper3;
 			}
-			else if (m_currentHopper == 4)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper4;
-			else if (m_currentHopper == 5)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper5;
-			else if (m_currentHopper == 6)
-				dwUsrErrCode = CardIssuer_UserErrorCode_NoCardInHopper6;
 		}
 		ctx->Answer(Error_DevNotAvailable, dwUsrErrCode);
 		return 1;
@@ -5584,7 +5390,6 @@ int CCardIssuerFSM::IssueFromBoxJS(SpReqAnsContext<CardIssuerStandService_IssueF
 	else {
 		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setAPI("DevAdapter::MoveCard").setCostTime(l_endTime - l_beginTime).setLogCode("QLR040220345")("IssueCard::MoveCard succ, m_currentHopper:%d", m_currentHopper);
 	}
-	//LogWarn(Severity_Low, Error_Succeed, CardIssuer_UserErrorCode_MoveCard_FromHopper, "MoveCard from hopper succ.");
 
 	m_bUseRFTillNext = false;
 	Sleep(1000);
@@ -6135,6 +5940,8 @@ int CCardIssuerFSM::PreOnlineJS_ReadViaRF(SpReqAnsContext<CardIssuerStandService
 	}
 	ctx->Ans.pbocData = taaResult;
 	ctx->Ans.icMode = 1;
+	LogWarn(Severity_Low, Error_Succeed, CardIssuer_UserErrorCode_ReadByRF, CSimpleStringA::Format("PreOnline_RF ok.iIssue:%d ", m_issueStatus));
+
 	return 0;
 }
 int CCardIssuerFSM::PreOnlineJS_ICDataProcess(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx)
@@ -6163,7 +5970,7 @@ int CCardIssuerFSM::PreOnlineJS_ICDataProcess(SpReqAnsContext<CardIssuerStandSer
 
 	ICData track2(false, 0x57, 0x00), ICCardSerial(false, 0x5f, 0x34), appExpiryDate(false, 0x5f, 0x24), icPAN(false, 0x5a, 0x00);
 	ErrorCodeEnum eErr = Error_Unexpect;
-	CSimpleStringA t2ICTrack2(""), cardType("0"), csExpireDate("");
+	CSimpleStringA t2ICTrack2(""), cardType("0"), csExpireDate(""), csICCardSerial("");
 
 	char* pExpireDate = new char[12];//获取ic有效期
 	ZeroMemory(pExpireDate, 12);
@@ -6186,9 +5993,8 @@ int CCardIssuerFSM::PreOnlineJS_ICDataProcess(SpReqAnsContext<CardIssuerStandSer
 	}
 	else
 	{
-		//oiltmp@20250808 TODO:add ic tag-value to ic data list
-		//HexBuf2StrBuf(ICCardSerial.value, &pICCardSerial, ICCardSerial.lenth);
-		//t2ICCardSerial = pICCardSerial;
+		HexBuf2StrBuf(ICCardSerial.value, &pICCardSerial, ICCardSerial.lenth);
+		csICCardSerial = pICCardSerial;
 	}
 	delete[] pICCardSerial;
 
@@ -6282,6 +6088,7 @@ int CCardIssuerFSM::PreOnlineJS_ICDataProcess(SpReqAnsContext<CardIssuerStandSer
 	msgInfo["ARQC_DATA"] = arqcData.GetData();
 	msgInfo["IC_TRACK2"] = t2ICTrack2;
 	msgInfo["EXPIRE_DATE"] = csExpireDate;
+	msgInfo["ICCardSerial"] = csICCardSerial;
 	msgInfo["IC_TAGS"] = baseICData.c_str();
 
 	std::pair<bool, std::string> strResult;
@@ -6412,25 +6219,6 @@ int CCardIssuerFSM::InsertJS(SpReqAnsContext<CardIssuerStandService_InsertJS_Req
 	m_pCardProcess->DataInit();//??是否需要此处就初始化
 	//m_bCancelByRFIC = false;//??无用变量
 	LogEvent(Severity_Middle, LOG_EVT_CARDISSUER_GREEN_ON, "CardReader warning on");
-	m_bWaitAccepteMore = false;//是否还继续使用
-	//查询插卡前卡机是否有卡
-	long l_beginTime, l_endTime;
-	ErrorCodeEnum eErr = Error_Unexpect;
-	l_beginTime = GetTickCountRVC();
-	eErr = m_hDevHelper->GetDevStatus(m_devStatus);
-	l_endTime = GetTickCountRVC();
-	if (Error_Succeed == eErr) {
-		if (m_devStatus.eMedia == CI_MEDIA_PRESENT) {
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("InsertJS::InternalInsert,internal has card before insert");
-			ctx->Answer(Error_Unexpect, CardIssuer_UserErrorCode_Insert_Card_HasCard_Failed);
-			return 5;
-		}
-	}
-	else {
-		DWORD dwTmpUserErrCode = SetErrorAndLog(Error_Unexpect, MEC_DEVAPI_CARDISSUER_GetDevStatus, "DevAdapter::GetDevStatus", __FUNCTION__, false, 10, "QLR040220303", "");
-		return 1;
-		ctx->Answer(Error_Unexpect, dwTmpUserErrCode);
-	}
 	//等待插卡
 	int rc = InternalInsert();
 	DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)(CSimpleStringA::Format("InsertJS::InternalInsert, result:%d", rc));

+ 5 - 29
Module/mod_CardIssuerStand/CardIssuerStandFSM.h

@@ -30,8 +30,6 @@ enum EvtType
 	USER_EVT_ACCEPT,
 	USER_EVT_ACCEPT_CANCEL,
 	USER_EVT_ACCEPTFINISHED,
-	USER_EVT_ISSUE,
-	USER_EVT_ISSUE_FINISHED,
 	USER_EVT_EJECT,
 	USER_EVT_CAPTURE,
 	USER_EVT_EJECTFINISHED,
@@ -153,13 +151,6 @@ public:
 	~CardAcceptEvent() {}
 	SpReqAnsContext<CardIssuerStandService_Insert_Req, CardIssuerStandService_Insert_Ans>::Pointer ctx;
 };
-class CardIssueEvent : public FSMEvent
-{
-public:
-	CardIssueEvent() : FSMEvent(USER_EVT_ISSUE) {}
-	~CardIssueEvent() {}
-	SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx;
-};
 
 class CancelAcceptEvent : public FSMEvent
 {
@@ -677,7 +668,6 @@ public:
 		FSM_RULE_ENTRY(s2, s3, USER_EVT_ACCEPT, 0)
 		//		FSM_RULE_ENTRY(s2,s9,USER_EVT_ACCEPT,1)
 		FSM_RULE_ENTRY(s2, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
-		FSM_RULE_ENTRY(s2, s10, USER_EVT_ISSUE, 0)
 		FSM_RULE_ENTRY(s2, s10, USER_EVT_ISSUE_EX, 0)
 		FSM_RULE_ENTRY(s2, s3, USER_EVT_JS_INSERT, 0)//JS 插卡
 		FSM_RULE_ENTRY(s2, s12, USER_EVT_JS_ISSUE_FROM_BOX, 0)//JS 卡箱发卡
@@ -732,9 +722,6 @@ public:
 		FSM_RULE_ENTRY(s8, s9, USER_EVT_JS_CAPTURE_FINISHED, 1)//JS 吞卡失败
 		FSM_RULE_ENTRY(s9, s2, USER_EVT_CHECK_CARD_FINISHED, 0)
 		FSM_RULE_ENTRY(s9, s4, USER_EVT_CHECK_CARD_FINISHED, 2)
-		FSM_RULE_ENTRY(s10, s4, USER_EVT_ISSUE_FINISHED, 0)
-		FSM_RULE_ENTRY(s10, s9, USER_EVT_ISSUE_FINISHED, 1)
-		FSM_RULE_ENTRY(s10, s2, USER_EVT_ISSUE_FINISHED, 2)
 		FSM_RULE_ENTRY(s10, s6, USER_EVT_ISSUE_EX_FINISHED, 6)
 		FSM_RULE_ENTRY(s10, s4, USER_EVT_ISSUE_EX_FINISHED, 0)
 		FSM_RULE_ENTRY(s10, s9, USER_EVT_ISSUE_EX_FINISHED, 1)
@@ -753,7 +740,7 @@ public:
 		CCardIssuerFSM() : m_bCancelAccept(false), m_bWaitingAccept(false),
 		m_bWaitAccepteMore(false), m_bExit(false), m_resetTimes(0), m_testResult(Error_Succeed)
 		//,m_pTACReject(NULL),m_pIACOnline(NULL),m_pTACOnline(NULL),m_pIACDefault(NULL),m_pTACDefault(NULL)
-		, m_bCDA(false), m_pDataToARQC(NULL), m_bIssuingExit(false)
+		, m_bCDA(false), m_pDataToARQC(NULL)
 		, m_bCardIssued(false), m_issueStatus(1), m_currCardNo("")
 		, m_captureReason(""), m_machineType(1), m_currentHopper(1), m_hopperNum(1)
 		, m_bSettingMaterial(false), m_addCardSerial("")
@@ -833,10 +820,9 @@ public:
 	int ReadCard_RF(SpReqAnsContext<CardIssuerStandService_Read_Req, CardIssuerStandService_Read_Ans>::Pointer ctx);
 	int PreOnline_RF(SpReqAnsContext<CardIssuerStandService_PreOnline_Req, CardIssuerStandService_PreOnline_Ans>::Pointer ctx);
 	int PostOnline_RF(SpReqAnsContext<CardIssuerStandService_PostOnline_Req, CardIssuerStandService_PostOnline_Ans>::Pointer ctx);
-	int Reset();
 	int InternalAcceptCard();
 	int AcceptCard(SpReqAnsContext<CardIssuerStandService_Insert_Req, CardIssuerStandService_Insert_Ans>::Pointer ctx);
-	int IssueCard(SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx, SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctxEx);
+	int IssueCard(SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctxEx);
 	int WriteCard(SpReqAnsContext<CardIssuerStandService_WriteTrack_Req, CardIssuerStandService_WriteTrack_Ans>::Pointer ctx);
 
 	bool GetWaitFlag() { return m_bWaitingAccept; }
@@ -901,7 +887,7 @@ private:
 	lpCMBdecodeMag2 cmdDecodeMag2;
 	lpCMBdecodeEx cmdDecodeEx;
 	bool m_bCancelAccept, m_bWaitingAccept, m_bWaitAccepteMore, m_bExit
-		, m_bCDA, m_bIssuingExit, m_bCardIssued, m_bHasHopper[HOPPER_NUM]
+		, m_bCDA, m_bCardIssued, m_bHasHopper[HOPPER_NUM]
 		, m_bSettingMaterial, m_bCancelByRFIC
 		, m_bCardActiveNotify, m_bCardFromHopper, m_bUseCardnoMismatch, m_bStopUseRF, m_bMainPageWhileWorking/*Accepting、Read(JS)ing、Issue(JS)ing*/;
 	bool m_bSupportRF, m_bUseRFTillNext;//if ReadCard by RF,the following PreOnline & PostOnline always use RF till the next card(insert/issue)
@@ -1019,23 +1005,13 @@ struct AcceptTask : public ITaskSp
 struct IssueTask : public ITaskSp
 {
 	CCardIssuerFSM* fsm;
-	SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx;
 	SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctxEx;
 	IssueTask(CCardIssuerFSM* f) : fsm(f) {}
 	void Process()
 	{
 		LOG_FUNCTION();
-		FSMEvent *e;
-		if (ctx != NULL)
-			e = new FSMEvent(USER_EVT_ISSUE_FINISHED);
-		else if (ctxEx != NULL)
-			e = new FSMEvent(USER_EVT_ISSUE_EX_FINISHED);
-		else
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("IssueTask:ctx is null");
-			return;
-		}
-		e->param1 = fsm->IssueCard(ctx,ctxEx);
+		FSMEvent *e = new FSMEvent(USER_EVT_ISSUE_EX_FINISHED);
+		e->param1 = fsm->IssueCard(ctxEx);
 		fsm->PostEventFIFO(e);
 	}
 };

+ 13 - 146
Module/mod_CardIssuerStand/CardIssuerStand_UserErrorCode.h

@@ -4,9 +4,6 @@
 
 #define CardIssuer_UserErrorCode_Start 0x20300200
 
-#define CardIssuer_UserErrorCode_No_Encryted_Channel				(CardIssuer_UserErrorCode_Start + 1)	//未建立安全通道
-#define CardIssuer_UserErrorCode_Open_RunCfgFile_Failed				(CardIssuer_UserErrorCode_Start + 2)	//打开运行时配置失败
-#define CardIssuer_UserErrorCode_EntityInFailState					(CardIssuer_UserErrorCode_Start + 3)	//卡机处于故障态,请稍后重试,重试还有问题请联系厂商维护
 #define CardIssuer_UserErrorCode_NotHas_Hopper1						(CardIssuer_UserErrorCode_Start + 4)	//未检测到卡箱1,请确认卡箱1是否有卡箱
 #define CardIssuer_UserErrorCode_NotHas_Hopper2						(CardIssuer_UserErrorCode_Start + 5)	//未检测到卡箱2,请确认卡箱2是否有卡箱
 #define CardIssuer_UserErrorCode_NotHas_Hopper3						(CardIssuer_UserErrorCode_Start + 6)	//未检测到卡箱3,请确认卡箱3是否有卡箱
@@ -16,68 +13,20 @@
 #define CardIssuer_UserErrorCode_NoCardRemains_Hopper1				(CardIssuer_UserErrorCode_Start + 10)	//卡箱1剩余卡片计数为0(空)
 #define CardIssuer_UserErrorCode_NoCardRemains_Hopper2				(CardIssuer_UserErrorCode_Start + 11)	//卡箱2剩余卡片计数为0(空)
 #define CardIssuer_UserErrorCode_NoCardRemains_Hopper3				(CardIssuer_UserErrorCode_Start + 12)	//卡箱3剩余卡片计数为0(空)
-#define CardIssuer_UserErrorCode_MoveCard_FromHopper				(CardIssuer_UserErrorCode_Start + 13)	//卡片从卡箱移到读卡器
+
 #define CardIssuer_UserErrorCode_MoveCardToGate_Failed				(CardIssuer_UserErrorCode_Start + 14)	//前端进卡,吐卡失败
-#define CardIssuer_UserErrorCode_KakuFindEmptySlot_Failed			(CardIssuer_UserErrorCode_Start + 15)	//卡库找不到空闲卡槽
-#define CardIssuer_UserErrorCode_KakuHaveOldPanKuRecord				(CardIssuer_UserErrorCode_Start + 16)	//卡库有旧的盘库记录
-#define CardIssuer_UserErrorCode_KakuQuerySlot_Failed				(CardIssuer_UserErrorCode_Start + 17)	//卡库查询卡槽状态失败
-#define CardIssuer_UserErrorCode_KakuHaveNoPanKuRecord				(CardIssuer_UserErrorCode_Start + 18)	//卡库没有盘库记录
-#define CardIssuer_UserErrorCode_KakuPanKu_Failed					(CardIssuer_UserErrorCode_Start + 19)	//卡库盘库失败
 
 #define CardIssuer_UserErrorCode_Customer_Forget_Fectch_Card		(CardIssuer_UserErrorCode_Start + 20)	//客户超时未取卡
-#define CardIssuer_UserErrorCode_NotHas_Hopper4						(CardIssuer_UserErrorCode_Start + 21)	//未检测到卡箱4,请确认卡箱1是否有卡箱
-#define CardIssuer_UserErrorCode_NotHas_Hopper5						(CardIssuer_UserErrorCode_Start + 22)	//未检测到卡箱5,请确认卡箱2是否有卡箱
-#define CardIssuer_UserErrorCode_NotHas_Hopper6						(CardIssuer_UserErrorCode_Start + 23)	//未检测到卡箱6,请确认卡箱3是否有卡箱
-#define CardIssuer_UserErrorCode_NoCardInHopper4					(CardIssuer_UserErrorCode_Start + 24)	//卡箱4未检测到卡片	请确认卡箱4内卡片是否为空或重新摆放卡片
-#define CardIssuer_UserErrorCode_NoCardInHopper5					(CardIssuer_UserErrorCode_Start + 25)	//卡箱5未检测到卡片	请确认卡箱5内卡片是否为空或重新摆放卡片
-#define CardIssuer_UserErrorCode_NoCardInHopper6					(CardIssuer_UserErrorCode_Start + 26)	//卡箱6未检测到卡片	请确认卡箱6内卡片是否为空或重新摆放卡片
-#define CardIssuer_UserErrorCode_ICChannel_Failed					(CardIssuer_UserErrorCode_Start + 27)	//IC指令通道失败(实时制卡APDU)
-#define CardIssuer_UserErrorCode_NoCardRemains_Hopper4				(CardIssuer_UserErrorCode_Start + 28)	//卡箱4剩余卡片计数为0(空)
-#define CardIssuer_UserErrorCode_NoCardRemains_Hopper5				(CardIssuer_UserErrorCode_Start + 29)	//卡箱5剩余卡片计数为0(空)
-#define CardIssuer_UserErrorCode_NoCardRemains_Hopper6				(CardIssuer_UserErrorCode_Start + 30)	//卡箱6剩余卡片计数为0(空)
-#define CardIssuer_UserErrorCode_LogInfoAboutTerm					(CardIssuer_UserErrorCode_Start + 31)	//告警上送终端模块信息
-#define CardIssuer_UserErrorCode_KebaDeviceInfo						(CardIssuer_UserErrorCode_Start + 32)	//告警上送科堡机型信息
-#define CardIssuer_UserErrorCode_RootInfo							(CardIssuer_UserErrorCode_Start + 33)  //root中版本批次号
-#define CardIssuer_UserErrorCode_Adapter_Version					(CardIssuer_UserErrorCode_Start + 34)//告警适配器版本号(长城卡库是将驱动版本号告警上来)
-#define CardIssuer_UserErrorCode_DevOpenTime						(CardIssuer_UserErrorCode_Start + 35) //统计DevOpen时长
-
-#define CardIssuer_UserErrorCode_CaptureCard_OnExit					(CardIssuer_UserErrorCode_Start + 36) //OnExit时吞卡,实体退出。实际上会吗?
-#define CardIssuer_UserErrorCode_CaptureCard_Reset					(CardIssuer_UserErrorCode_Start + 37) //Reset时吞卡
-#define CardIssuer_UserErrorCode_CaptureCard_IssueExit				(CardIssuer_UserErrorCode_Start + 38) //发卡时业务强退
-#define CardIssuer_UserErrorCode_CaptureCard_IdleExit				(CardIssuer_UserErrorCode_Start + 39) //Idle空闲状态处理Exit事件时吞卡
-#define CardIssuer_UserErrorCode_CaptureCard_FromBusiness			(CardIssuer_UserErrorCode_Start + 40) //业务主动发起调用CaptureCard
 
-#define CardIssuer_UserErrorCode_EntityInStateCannotProcess			(CardIssuer_UserErrorCode_Start + 41) //卡机当前状态无法处理此请求
-#define CardIssuer_UserErrorCode_MoveCardToSlot						(CardIssuer_UserErrorCode_Start + 42) //卡片移到卡槽
-#define CardIssuer_UserErrorCode_MoveCardFromSlot					(CardIssuer_UserErrorCode_Start + 43) //卡槽移到卡机
-#define CardIssuer_UserErrorCode_PrintCardFaceRightNow				(CardIssuer_UserErrorCode_Start + 44) //卡面打印
-#define CardIssuer_UserErrorCode_InsertCardSucceed					(CardIssuer_UserErrorCode_Start + 45) //前端插卡
+#define CardIssuer_UserErrorCode_CaptureCard_FromBusiness			(CardIssuer_UserErrorCode_Start + 40) //业务主动发起调用CaptureCard
 
-#define CardIssuer_UserErrorCode_StandEntityInFailState				(CardIssuer_UserErrorCode_Start + 46)	//卡机处于故障态,请稍后重试,重试还有问题请联系厂商维护
 #define CardIssuer_UserErrorCode_UnkownReadJSMode					(CardIssuer_UserErrorCode_Start + 47)	//未知的ReadJS读卡模式
 
-#define CardIssuer_UserErrorCode_CardStore_SlotNum					(CardIssuer_UserErrorCode_Start + 49) //记录卡库容量
-#define CardIssuer_UserErrorCode_Invoke_Access_IniDev_Failed		(CardIssuer_UserErrorCode_Start + 50) //建立加密通道时,调用准入接口失败
-#define CardIssuer_UserErrorCode_Connect_Access_Failed				(CardIssuer_UserErrorCode_Start + 51) //建立加密通道时,连接准入实体失败
-#define CardIssuer_UserErrorCode_Safe_Channel_Build_Failed			(CardIssuer_UserErrorCode_Start + 52) //安全加密通道建立失败
-#define CardIssuer_UserErrorCode_No_More_Card_Issue					(CardIssuer_UserErrorCode_Start + 53) //卡箱已无卡往出发
-
-#define CardIssuer_UserErrorCode_CFG_RUN_POINTER_FAILED				(CardIssuer_UserErrorCode_Start + 54) //卡箱已无卡往出发
-
-#define CardIssuer_UserErrorCode_RETAIN_BIN_IS_FULL_SENSOR			(CardIssuer_UserErrorCode_Start + 55)//厂商传感器,回收箱满
-#define CardIssuer_UserErrorCode_FEW_CARD_REMAINS					(CardIssuer_UserErrorCode_Start + 56)//卡箱少卡
 #define CardIssuer_UserErrorCode_RETAIN_BIN_IS_FULL					(CardIssuer_UserErrorCode_Start + 57)//计数显示,回收箱满
 
-#define CardIssuer_UserErrorCode_Create_Object_Failed				(CardIssuer_UserErrorCode_Start + 58)//创建适配器指针对象失败
-#define CardIssuer_UserErrorCode_Track2_ServiceCode					(CardIssuer_UserErrorCode_Start + 59)//记录二磁道的服务代码
-
-//跨机激活过程
-#define CardIssuer_UserErrorCode_PreOnline_Connect_Heatbeat_Failed	(CardIssuer_UserErrorCode_Start + 60)	//跨机,连接心跳实体失败
+//跨机激活过程 oiltmp to be removed
 #define CardIssuer_UserErrorCode_PreOnline_Send_CardActive			(CardIssuer_UserErrorCode_Start + 61)	//跨机,调用CardActive
 #define CardIssuer_UserErrorCode_PreOnline_Recv_CardActive			(CardIssuer_UserErrorCode_Start + 62)	//跨机,CardActive返回
-#define CardIssuer_UserErrorCode_PreOnline_Slot_Is_Invalid			(CardIssuer_UserErrorCode_Start + 63)	//跨机,web传给卡库的卡槽号无效
-#define CardIssuer_UserErrorCode_PreOnline_Slot_Has_No_Card			(CardIssuer_UserErrorCode_Start + 64)	//跨机,卡槽中无卡
-#define CardIssuer_UserErrorCode_PreOnline_MoveCardFromSlot_Info	(CardIssuer_UserErrorCode_Start + 65)	//跨机,从卡槽中移卡读卡后,读出的一些信息
 
 #define CardIssuer_UserErrorCode_ContactIC_Failed					(CardIssuer_UserErrorCode_Start + 66)	//DetectIfICCard调用ContactIC失败
 #define CardIssuer_UserErrorCode_ActiveICCard_Failed				(CardIssuer_UserErrorCode_Start + 67)	//DetectIfICCard调用ActiveICCard失败
@@ -86,71 +35,34 @@
 #define CardIssuer_UserErrorCode_BuildSupportedAppList_Failed		(CardIssuer_UserErrorCode_Start + 70)	//BuildSupportedAppList failed
 #define CardIssuer_UserErrorCode_AppSelected_Failed					(CardIssuer_UserErrorCode_Start + 71)	//AppSelected failed
 
-#define CardIssuer_UserErrorCode_QueryCardInfoOnStore_JustQueryInfo	(CardIssuer_UserErrorCode_Start + 72)	//跨机后,再次调用QueryCardInfoOnStore查询卡信息
+//oiltmp to be removed
 #define CardIssuer_UserErrorCode_NotifyPreOnline_ParamInfo			(CardIssuer_UserErrorCode_Start + 73)	//跨机后,大机心跳调用NotifyPreOnline
-
-//加卡过程
-#define CardIssuer_UserErrorCode_AddCardToStoreStepFirst			(CardIssuer_UserErrorCode_Start + 74)	//加卡第一步,从卡箱移到读卡器
-#define CardIssuer_UserErrorCode_AddCardToStoreStepLast				(CardIssuer_UserErrorCode_Start + 75)	//加卡第二步,从读卡器移到卡槽
-#define CardIssuer_UserErrorCode_ReadAccount_Data_Error				(CardIssuer_UserErrorCode_Start + 76)	//加卡过程,卡片数据有误
-#define CardIssuer_UserErrorCode_AddCardToStoreStepFirst_Failed		(CardIssuer_UserErrorCode_Start + 77)	//加卡过程,移卡到卡槽失败
 #define CardIssuer_UserErrorCode_NotifyPreonline_Wait_TooLong		(CardIssuer_UserErrorCode_Start + 78)	//NotifyPreonline收到时已经超过等待时间
 
-//临时 后续去除
-#define CardIssuer_UserErrorCode_EastCom_Not_Exist_DataFile			(CardIssuer_UserErrorCode_Start + 79)	//东信卡库还不存在CardLibDB_CMB.db3文件
-#define CardIssuer_UserErrorCode_EastCom_Exist_DataFile				(CardIssuer_UserErrorCode_Start + 80)	//东信卡库已存在CardLibDB_CMB.db3文件
-
 //发卡过程
-#define CardIssuer_UserErrorCode_Has_Not_Build_SafeChannel			(CardIssuer_UserErrorCode_Start + 81)	//还未建立安全通道
-#define CardIssuer_UserErrorCode_Invalid_Slot						(CardIssuer_UserErrorCode_Start + 82)	//无效卡槽号
-#define CardIssuer_UserErrorCode_Slot_Has_No_Card					(CardIssuer_UserErrorCode_Start + 83)	//卡槽中无卡
-#define CardIssuer_UserErrorCode_IssueCardFromStore					(CardIssuer_UserErrorCode_Start + 84)	//发卡
-#define CardIssuer_UserErrorCode_Sign_Failed						(CardIssuer_UserErrorCode_Start + 85)	//签发失败,吞卡,req=87
 #define CardIssuer_UserErrorCode_Invalid_Hopper						(CardIssuer_UserErrorCode_Start + 86)	//传入了错误的hopper
 
 //Common Func
 #define CardIssuer_UserErrorCode_CaptureCard_ByTerminal				(CardIssuer_UserErrorCode_Start + 87)	//终端自行调用吞卡
-#define CardIssuer_UserErrorCode_EjectCard_ByTerminal				(CardIssuer_UserErrorCode_Start + 88)	//终端自行调用吐卡
 #define CardIssuer_UserErrorCode_CaptureCard_EntityOnStart			(CardIssuer_UserErrorCode_Start + 89)	//实体启动时发现有卡,终端自行调用吞卡
 #define CardIssuer_UserErrorCode_CardPosUnexpectedOnDevOpen			(CardIssuer_UserErrorCode_Start + 90)	//实体启动时卡片位置异常
 
 
 //读卡过程
-#define CardIssuer_UserErrorCode_ReadCard_Process					(CardIssuer_UserErrorCode_Start + 91)	//调用读卡
 #define CardIssuer_UserErrorCode_TrackSize_Wrong					(CardIssuer_UserErrorCode_Start + 92)	//磁道数据长度错误
 #define CardIssuer_UserErrorCode_Track2Size_Wrong					(CardIssuer_UserErrorCode_Start + 93)	//二磁道数据长度错误
-#define CardIssuer_UserErrorCode_CardBin							(CardIssuer_UserErrorCode_Start + 94)	//MagRead读出的卡bin
-#define CardIssuer_UserErrorCode_CardType							(CardIssuer_UserErrorCode_Start + 95)	//MagRead读出的卡片类型
+#define CardIssuer_UserErrorCode_CardBin							(CardIssuer_UserErrorCode_Start + 94)	//卡号
 #define CardIssuer_UserErrorCode_MaybeIC_Only						(CardIssuer_UserErrorCode_Start + 96)	//可能是纯IC
 
-//异常状况
-#define CardIssuer_UserErrorCode_HasCard_In_Machine					(CardIssuer_UserErrorCode_Start + 97)	//读卡器打开时,发现有卡片
-#define CardIssuer_UserErrorCode_CardNo_Maybe_Wrong					(CardIssuer_UserErrorCode_Start + 98)	//卡号可能有误
-
 //读卡器初始化过程
 #define CardIssuer_UserErrorCode_LoadLibraryA_Failed				(CardIssuer_UserErrorCode_Start + 99)	//LoadLibraryA
-#define CardIssuer_UserErrorCode_CreateDevComponent_Failed			(CardIssuer_UserErrorCode_Start + 100)	//CreateDevComponent
-#define CardIssuer_UserErrorCode_ReleaseDevComponent_Failed			(CardIssuer_UserErrorCode_Start + 101)	//ReleaseDevComponent
+
 #define CardIssuer_UserErrorCode_LoadLibraryA_CMBPrint_Failed		(CardIssuer_UserErrorCode_Start + 102)	//LoadLibraryA CMBPrint
-#define CardIssuer_UserErrorCode_cmdDecodeMag2_Failed				(CardIssuer_UserErrorCode_Start + 103)	//cmdDecodeMag2 
-#define CardIssuer_UserErrorCode_cmdDecodeEx_Failed					(CardIssuer_UserErrorCode_Start + 104)	//cmdDecodeEx
+
 #define CardIssuer_UserErrorCode_DevOpen_Failed						(CardIssuer_UserErrorCode_Start + 105)	//DevOpen
-#define CardIssuer_UserErrorCode_ConnecetSCI_OpenDevice_Failed		(CardIssuer_UserErrorCode_Start + 106)	//ConnecetSCI_OpenDevice_Failed
-#define CardIssuer_UserErrorCode_ConnecetSCI_Invalid_SCI_Name		(CardIssuer_UserErrorCode_Start + 107)	//Invalid_SCI_Name
 
 //物料信息
 #define CardIssuer_UserErrorCode_SyncMaterialCount_Failed			(CardIssuer_UserErrorCode_Start + 108)	//同步物料信息失败
-#define CardIssuer_UserErrorCode_QueryMaterialInfo_Failed			(CardIssuer_UserErrorCode_Start + 109)	//查询物料信息失败
-#define CardIssuer_UserErrorCode_QueryMaterialInfo_Count_Error		(CardIssuer_UserErrorCode_Start + 110)	//查询物料信息数量有误
-
-//蓝牙多合一绑定解绑
-#define CardIssuer_UserErrorCode_BindSCI							(CardIssuer_UserErrorCode_Start + 111)	//绑定类型
-#define CardIssuer_UserErrorCode_Bind_Invalid_SCI_Name				(CardIssuer_UserErrorCode_Start + 112)	//绑定失败,无效的多合一Name
-#define CardIssuer_UserErrorCode_Bind_SyncData_Failed				(CardIssuer_UserErrorCode_Start + 113)	//绑定后,同步信息失败
-#define CardIssuer_UserErrorCode_Unbind_Invalid_SCI_Name			(CardIssuer_UserErrorCode_Start + 114)	//解绑绑定失败,无效的多合一Name
-#define CardIssuer_UserErrorCode_Unbind_SyncData_Failed				(CardIssuer_UserErrorCode_Start + 115)	//解绑绑定后,同步信息失败
-
-#define CardIssuer_UserErrorCode_Load_CMBPrint_Failed		(CardIssuer_UserErrorCode_Start + 116)	//加载CMBPrint失败
 
 //预留一部分用于CardAssist.cpp中的报错告警
 //自CardIssuer_UserErrorCode_Start + 121 ~ CardIssuer_UserErrorCode_Start + 140
@@ -162,73 +74,28 @@
 //
 #define CardIssuer_UserErrorCode_Open_Failed						(CardIssuer_UserErrorCode_Start + 142)	//读卡器最终打开失败
 
-
-#define CardIssuer_UserErrorCode_QueryCardInfoOnStore_Inparam		(CardIssuer_UserErrorCode_Start + 143)	//盘库接口入参
-#define CardIssuer_UserErrorCode_CaptureCard_SignFailed				(CardIssuer_UserErrorCode_Start + 144)	//签发失败,业务发起吞卡
-#define CardIssuer_UserErrorCode_CaptureCard_IssueFromCardStore		(CardIssuer_UserErrorCode_Start + 145)	//卡库本地领卡吞卡
-#define CardIssuer_UserErrorCode_CaptureCard_AddCard_ReadFailed		(CardIssuer_UserErrorCode_Start + 146)	//卡库加卡,读卡失败吞卡
-#define CardIssuer_UserErrorCode_CaptureCard_Operate_ReadFailed		(CardIssuer_UserErrorCode_Start + 147)	//卡库盘库,读卡失败吞卡
-
-#define CardIssuer_UserErrorCode_GetAddCardInfo_CardCount			(CardIssuer_UserErrorCode_Start + 150)	//卡库中卡片数量
-
-//LogWarn real root config
-#define CardIssuer_UserErrorCode_Real_Root_Config					(CardIssuer_UserErrorCode_Start + 153)	//适配器实际的root配置
+//oiltmp to be removed
 #define CardIssuer_UserErrorCode_DupCallPreOnline_WhileInWorking	(CardIssuer_UserErrorCode_Start + 154)	//实体正忙,再次收到跨机激活
+
 #define CardIssuer_UserErrorCode_Hopper1_Mixed_Too_Much				(CardIssuer_UserErrorCode_Start + 155)	//卡箱1异常(连续吞卡过多)
 #define CardIssuer_UserErrorCode_Hopper2_Mixed_Too_Much				(CardIssuer_UserErrorCode_Start + 156)	//卡箱2异常(连续吞卡过多)
 #define CardIssuer_UserErrorCode_Hopper3_Mixed_Too_Much				(CardIssuer_UserErrorCode_Start + 157)	//卡箱3异常(连续吞卡过多)
-#define CardIssuer_UserErrorCode_RegistSwallowedCard_Failed			(CardIssuer_UserErrorCode_Start + 158)	//登记吞卡信息失败
-#define CardIssuer_UserErrorCode_CardActive_Service_NoReturn		(CardIssuer_UserErrorCode_Start + 159)	//卡库跨机服务端超时未返回
 #define CardIssuer_UserErrorCode_Maybe_InsertCard_InWrongStyle		(CardIssuer_UserErrorCode_Start + 160)	//可能卡片插反了
 #define CardIssuer_UserErrorCode_IssueCard_ActiveICCard_Failed		(CardIssuer_UserErrorCode_Start + 161)	//发卡时,DetectIfICCard调用ActiveICCard失败
+//oiltmp to be removed
 #define CardIssuer_UserErrorCode_Account_EAC_Mismatch				(CardIssuer_UserErrorCode_Start + 162)	//账户和户口系统的最新账户不匹配
 #define CardIssuer_UserErrorCode_CardStore_Reply_TooLong			(CardIssuer_UserErrorCode_Start + 163)	//跨机时卡库处理耗时过长
-#define CardIssuer_UserErrorCode_HopperCardMixed					(CardIssuer_UserErrorCode_Start + 164)	//卡箱中的卡片放置不对
 #define CardIssuer_UserErrorCode_CardActive_CardStore_OffLine		(CardIssuer_UserErrorCode_Start + 165)	//跨机时卡库不在线
+
 #define CardIssuer_UserErrorCode_ReadByRF							(CardIssuer_UserErrorCode_Start + 166)	//非接读取成功
+//oiltmp to be removed
 #define CardIssuer_UserErrorCode_CardActive_CardStore_Issuing		(CardIssuer_UserErrorCode_Start + 167)	//跨机时卡库正在本地领卡或加卡
-#define CardIssuer_UserErrorCode_CardActive_CardStore_CallByOther	(CardIssuer_UserErrorCode_Start + 168)	//跨机时卡库正在其他VTM调用
-#define CardIssuer_UserErrorCode_ReadAccount_Cost_Time				(CardIssuer_UserErrorCode_Start + 169)	//ReadAccount耗时
-#define CardIssuer_UserErrorCode_CardActive_CardIssuer_InFaultState	(CardIssuer_UserErrorCode_Start + 170)	//卡库收到跨机请求时卡机未成功打开
-#define CardIssuer_UserErrorCode_Account_NotMatchWithReadAccount	(CardIssuer_UserErrorCode_Start + 171)	//传入卡号与实际读到的不一致
-
-//***此段枚举值不可变动,涉及到业务逻辑***	卡库API细化后新增的错误码,也用于前端展示对应话术
-#define CardIssuer_UserErrorCode_Dev_HopperHasNoCard		(CardIssuer_UserErrorCode_Start + 180) //卡箱无卡
-#define CardIssuer_UserErrorCode_Dev_HopperMissing			(CardIssuer_UserErrorCode_Start + 181)//发卡箱缺失
-#define CardIssuer_UserErrorCode_Dev_TransCarJammed			(CardIssuer_UserErrorCode_Start + 182)//传输小车堵塞
-#define CardIssuer_UserErrorCode_Dev_RetainBinFull			(CardIssuer_UserErrorCode_Start + 183)//回收箱满
-#define CardIssuer_UserErrorCode_Dev_RetainBinMissing		(CardIssuer_UserErrorCode_Start + 184)//回收箱缺失
-#define CardIssuer_UserErrorCode_Dev_CardInReader			(CardIssuer_UserErrorCode_Start + 185)//读卡器内有卡
-#define CardIssuer_UserErrorCode_Dev_SlotHasNoCard			(CardIssuer_UserErrorCode_Start + 186)//卡槽内无卡
-#define CardIssuer_UserErrorCode_Dev_CardInSlot				(CardIssuer_UserErrorCode_Start + 187)//卡槽内有卡
-#define CardIssuer_UserErrorCode_Dev_NoCardInReader			(CardIssuer_UserErrorCode_Start + 188)//读卡器内无卡
-#define CardIssuer_UserErrorCode_Dev_CardJammed				(CardIssuer_UserErrorCode_Start + 189)//塞卡
-#define CardIssuer_UserErrorCode_Dev_SlotJammed				(CardIssuer_UserErrorCode_Start + 190)//卡槽堵塞
-#define CardIssuer_UserErrorCode_Dev_SlotInvalid			(CardIssuer_UserErrorCode_Start + 191)//卡槽地址非法(越界等)
-
-//盘库异常明细报错
-#define CardIssuer_UserErrorCode_KakuPanKu_MoveCardFromSlot_Failed				(CardIssuer_UserErrorCode_Start + 200)	//卡库盘库失败,卡槽移卡失败
-#define CardIssuer_UserErrorCode_KakuPanKu_ReadAccount_Failed					(CardIssuer_UserErrorCode_Start + 201)	//卡库盘库失败,读卡失败,吞卡成功
-#define CardIssuer_UserErrorCode_KakuPanKu_MoveCardToSlot_Failed				(CardIssuer_UserErrorCode_Start + 202)	//卡库盘库失败,卡移回卡槽失败,吞卡成功
-#define CardIssuer_UserErrorCode_KakuPanKu_ReadAccount_Capture_Failed			(CardIssuer_UserErrorCode_Start + 203)	//卡库盘库失败,读卡失败,吞卡失败
-#define CardIssuer_UserErrorCode_KakuPanKu_MoveCardToSlot_Capture_Failed		(CardIssuer_UserErrorCode_Start + 204)	//卡库盘库失败,卡移回卡槽失败,吞卡失败
-
-#define CardIssuer_UserErrorCode_EnterMainPage_SetFlag		0x20300300 //卡机进入首页设置运行时标志位
-#define CardIssuer_UserErrorCode_CopyRuncfg					0x20300301 //卡机拷贝旧运行时文件
-
-#define CardIssuer_UserErrorCode_Insert_Card_HasCard_Failed						0x20300302 //卡机未插卡时,内部已存在卡片
+
 #define CardIssuer_UserErrorCode_Insert_Card_TimeOut							0x20300303 //卡机插卡超时
 #define CardIssuer_UserErrorCode_Insert_Card_Cancel								0x20300304 //卡机插卡取消
-#define CardIssuer_UserErrorCode_Read_NoCard_Failed								0x20300305 //读卡时读卡器无卡
 #define CardIssuer_UserErrorCode_Capture_NoCard_Failed							0x20300306 //吞卡时发现读卡器无卡
 #define CardIssuer_UserErrorCode_Forget_Fetch_Card_Capture_Succ					0x20300307 //超时未取卡,已吞卡,请从吞卡箱中取卡
 #define CardIssuer_UserErrorCode_Forget_Fetch_Card_Capture_Fail					0x20300308 //超时未取卡,吞卡失败,请从发卡器取卡
-#define CardIssuer_UserErrorCode_Split_ICTrack2_Failed							0x20300309 //IC磁道2解析失败
-#define CardIssuer_UserErrorCode_CardAssistLoadFailed							0x2030030A //加载卡集对象失败
-#define CardIssuer_UserErrorCode_Write_RunCfgFile_Failed						0x2030030B //写运行时文件失败
-#define CardIssuer_UserErrorCode_ParseIC_Data_Fail								0x2030030C //ic数据解析异常
-#define CardIssuer_UserErrorCode_SplitTrack2_Fail								0x2030030D //拆解磁条2信息失败
-#define CardIssuer_UserErrorCode_ParseTrack_Data_Fail							0x2030030E //磁条信息解析异常
 #define CardIssuer_UserErrorCode_NotSupportRF									0x2030030F //卡机不支持非接
 
 //卡机流程状态报错

+ 0 - 49
Module/mod_CardIssuerStand/CardIssuerStand_client_g.h

@@ -395,55 +395,6 @@ public:
 		return ret;
 	}
 
-	ErrorCodeEnum Issue(CardIssuerStandService_Issue_Req &Req, CSmartPointer<IAsynWaitSp> &spAsyncWait, DWORD dwTimeout)
-	{
-		CSmartPointer<IClientSessionFunction> pFunc = GetFunction();
-		CAutoBuffer Buf = SpObject2Buffer(Req);
-		if (m_context.checkEmpty())
-		{
-			m_context.AutoGenerate();
-			DbgToBeidou(m_context, m_pEntityBase != NULL ? m_pEntityBase->GetEntityName() : "")();
-			m_context = m_context.upgradeLink();
-		}
-		auto ret = pFunc->AsyncRequest(CardIssuerStandService_Method_Issue, CardIssuerStandService_MethodSignature_Issue, Buf, spAsyncWait, m_context, dwTimeout);
-		m_context.clear();
-		return ret;
-	}
-	ErrorCodeEnum Issue(CardIssuerStandService_Issue_Req &Req, CardIssuerStandService_Issue_Ans &Ans, DWORD dwTimeout)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = Issue(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum Issue(CardIssuerStandService_Issue_Req &Req, CardIssuerStandService_Issue_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError, CSimpleString &str)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = Issue(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, str, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum Issue(CardIssuerStandService_Issue_Req &Req, CardIssuerStandService_Issue_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = Issue(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			CSimpleString str;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, str, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-
 	ErrorCodeEnum QueryCardInfo(CardIssuerStandService_QueryCardInfo_Req &Req, CSmartPointer<IAsynWaitSp> &spAsyncWait, DWORD dwTimeout)
 	{
 		CSmartPointer<IClientSessionFunction> pFunc = GetFunction();

+ 0 - 21
Module/mod_CardIssuerStand/CardIssuerStand_def_g.h

@@ -21,7 +21,6 @@ namespace CardIssuerStand {
 #define CardIssuerStandService_Method_PreOnline 6
 #define CardIssuerStandService_Method_PostOnline 7
 #define CardIssuerStandService_Method_Exit 8
-#define CardIssuerStandService_Method_Issue 9
 #define CardIssuerStandService_Method_QueryCardInfo 14
 #define CardIssuerStandService_Method_WriteTrack 15
 #define CardIssuerStandService_Method_GetMaterialCountEx 16
@@ -52,7 +51,6 @@ namespace CardIssuerStand {
 #define CardIssuerStandService_MethodSignature_PreOnline 640958030
 #define CardIssuerStandService_MethodSignature_PostOnline 923284555
 #define CardIssuerStandService_MethodSignature_Exit -1158854104
-#define CardIssuerStandService_MethodSignature_Issue 438783077
 #define CardIssuerStandService_MethodSignature_QueryCardInfo 154962579
 #define CardIssuerStandService_MethodSignature_WriteTrack -1424799012
 #define CardIssuerStandService_MethodSignature_GetMaterialCountEx 1356148904
@@ -83,7 +81,6 @@ namespace CardIssuerStand {
 #define CardIssuerStandService_LogCode_PreOnline "QLR040220306"
 #define CardIssuerStandService_LogCode_PostOnline "QLR040220307"
 #define CardIssuerStandService_LogCode_Exit "QLR040220308"
-#define CardIssuerStandService_LogCode_Issue "QLR040220309"
 #define CardIssuerStandService_LogCode_QueryCardInfo "QLR040220314"
 #define CardIssuerStandService_LogCode_WriteTrack "QLR040220315"
 #define CardIssuerStandService_LogCode_GetMaterialCountEx "QLR040220316"
@@ -274,24 +271,6 @@ struct CardIssuerStandService_Exit_Info
 
 };
 
-struct CardIssuerStandService_Issue_Req
-{
-
-	void Serialize(SpBuffer &Buf)
-	{
-	}
-
-};
-
-struct CardIssuerStandService_Issue_Ans
-{
-
-	void Serialize(SpBuffer &Buf)
-	{
-	}
-
-};
-
 struct CardIssuerStandService_QueryCardInfo_Req
 {
 

+ 0 - 27
Module/mod_CardIssuerStand/CardIssuerStand_server_g.h

@@ -93,13 +93,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_Issue:
-			if (dwSignature == CardIssuerStandService_MethodSignature_Issue) {
-				bOverlap = true;
-			} else {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_QueryCardInfo:
 			if (dwSignature == CardIssuerStandService_MethodSignature_QueryCardInfo) {
 				bOverlap = true;
@@ -296,11 +289,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_Issue:
-			if (dwSignature != CardIssuerStandService_MethodSignature_Issue) {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_QueryCardInfo:
 			if (dwSignature != CardIssuerStandService_MethodSignature_QueryCardInfo) {
 				Error = Error_MethodSignatureFailed;
@@ -453,11 +441,6 @@ public:
 	/// override by user
 	}
 
-	virtual void Handle_Issue(SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx)
-	{
-	/// override by user
-	}
-
 	virtual void Handle_QueryCardInfo(SpReqAnsContext<CardIssuerStandService_QueryCardInfo_Req, CardIssuerStandService_QueryCardInfo_Ans>::Pointer ctx)
 	{
 	/// override by user
@@ -664,16 +647,6 @@ public:
 						Handle_Exit(ctx);
 					}
 					break;
-				case CardIssuerStandService_Method_Issue:
-					{
-						SpReqAnsContext<CardIssuerStandService_Issue_Req,CardIssuerStandService_Issue_Ans>::Pointer ctx;
-						ctx.Attach(new SpReqAnsContext<CardIssuerStandService_Issue_Req,CardIssuerStandService_Issue_Ans>(pTransactionContext));
-						SpBuffer2Object(Buf, ctx->Req);
-						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
-						Handle_Issue(ctx);
-					}
-					break;
 				case CardIssuerStandService_Method_QueryCardInfo:
 					{
 						SpReqAnsContext<CardIssuerStandService_QueryCardInfo_Req,CardIssuerStandService_QueryCardInfo_Ans>::Pointer ctx;

+ 0 - 8
Module/mod_CardIssuerStand/mod_cardissuerStand.h

@@ -145,14 +145,6 @@ public:
 		if (m_fsm.GetWaitFlag())
 			m_fsm.SetWaitMore();
 	}
-	void Issue(SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx)
-	{
-		LOG_FUNCTION();
-		m_bNewSessionInit = false;
-		CardIssueEvent *pEvt = new CardIssueEvent();
-		pEvt->ctx = ctx;
-		m_fsm.PostEventFIFO(pEvt);
-	}
 	void PreOnline(SpReqAnsContext<CardIssuerStandService_PreOnline_Req, CardIssuerStandService_PreOnline_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();