소스 검색

Z991239-5993 #comment feat: 新增接口和修改旧接口实现

Signed-Off-By: commit-hook
刘文涛80174520 8 달 전
부모
커밋
9431f78812
2개의 변경된 파일147개의 추가작업 그리고 32개의 파일을 삭제
  1. 53 13
      Module/mod_cardissuerstore/mod_cardissuer.cpp
  2. 94 19
      Module/mod_cardissuerstore/mod_cardissuer.h

+ 53 - 13
Module/mod_cardissuerstore/mod_cardissuer.cpp

@@ -208,20 +208,29 @@ void CardIssuerStoreServerSession::Handle_MoveBacktoSlotJS(SpReqAnsContext<CardI
 }
 
 //卡库领卡
-void CardIssuerStoreServerSession::Handle_IssueFromSlotJS(SpReqAnsContext<CardIssuerStoreService_IssueFromSlotJS_Req, CardIssuerStoreService_IssueFromSlotJS_Ans>::Pointer ctx) 
-{
-	LOG_FUNCTION();
-	DbgToBeidou(ctx->link, __FUNCTION__)();
-	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke IssueFromSlotJS");
-	m_pEntity->IssueFromSlotJS(ctx);
-}
+//void CardIssuerStoreServerSession::Handle_IssueFromSlotJS(SpReqAnsContext<CardIssuerStoreService_IssueFromSlotJS_Req, CardIssuerStoreService_IssueFromSlotJS_Ans>::Pointer ctx) 
+//{
+//	LOG_FUNCTION();
+//	DbgToBeidou(ctx->link, __FUNCTION__)();
+//	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke IssueFromSlotJS");
+//	m_pEntity->IssueFromSlotJS(ctx);
+//}
+//查询卡机内部中是否有卡
+//void CardIssuerStoreServerSession::Handle_QueryInternalHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryInternalHasCardJS_Req, CardIssuerStoreService_QueryInternalHasCardJS_Ans>::Pointer ctx)
+//{
+//	LOG_FUNCTION();
+//	DbgToBeidou(ctx->link, __FUNCTION__)();
+//	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke QueryInternalHasCardJS");
+//	m_pEntity->QueryInternalHasCardJS(ctx);
+//}
+
 //查询卡机内部中是否有卡
-void CardIssuerStoreServerSession::Handle_QueryInternalHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryInternalHasCardJS_Req, CardIssuerStoreService_QueryInternalHasCardJS_Ans>::Pointer ctx)
+void CardIssuerStoreServerSession::Handle_QueryHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryHasCardJS_Req, CardIssuerStoreService_QueryHasCardJS_Ans>::Pointer ctx)
 {
 	LOG_FUNCTION();
 	DbgToBeidou(ctx->link, __FUNCTION__)();
-	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke QueryInternalHasCardJS");
-	m_pEntity->QueryInternalHasCardJS(ctx);
+	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke QueryHasCardJS");
+	m_pEntity->QueryHasCardJS(ctx);
 }
 
 //写卡
@@ -243,12 +252,21 @@ void CardIssuerStoreServerSession::Handle_PrintCardImmediatelyJS(SpReqAnsContext
 }
 
 //IC交互
-void CardIssuerStoreServerSession::Handle_SAMICCommandJS(SpReqAnsContext<CardIssuerStoreService_SAMICCommandJS_Req, CardIssuerStoreService_SAMICCommandJS_Ans>::Pointer ctx)
+//void CardIssuerStoreServerSession::Handle_SAMICCommandJS(SpReqAnsContext<CardIssuerStoreService_SAMICCommandJS_Req, CardIssuerStoreService_SAMICCommandJS_Ans>::Pointer ctx)
+//{
+//	LOG_FUNCTION();
+//	DbgToBeidou(ctx->link, __FUNCTION__)();
+//	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke SAMICCommandJS");
+//	m_pEntity->SAMICCommandJS(ctx);
+//}
+
+//IC交互
+void CardIssuerStoreServerSession::Handle_ICCommandJS(SpReqAnsContext<CardIssuerStoreService_ICCommandJS_Req, CardIssuerStoreService_ICCommandJS_Ans>::Pointer ctx)
 {
 	LOG_FUNCTION();
 	DbgToBeidou(ctx->link, __FUNCTION__)();
-	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke SAMICCommandJS");
-	m_pEntity->SAMICCommandJS(ctx);
+	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke ICCommandJS");
+	m_pEntity->ICCommandJS(ctx);
 }
 
 //联机后处理
@@ -287,6 +305,26 @@ void CardIssuerStoreServerSession::Handle_ReadJS(SpReqAnsContext<CardIssuerStore
 	m_pEntity->ReadJS(ctx);
 }
 
+//加卡箱移卡
+void CardIssuerStoreServerSession::Handle_AddCardFromBoxJS(SpReqAnsContext<CardIssuerStoreService_AddCardFromBoxJS_Req, CardIssuerStoreService_AddCardFromBoxJS_Ans>::Pointer ctx)
+{
+	LOG_FUNCTION();
+	DbgToBeidou(ctx->link, __FUNCTION__)();
+	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke AddCardFromBoxJS");
+	m_pEntity->AddCardFromBoxJS(ctx);
+}
+
+//卡槽移卡
+void CardIssuerStoreServerSession::Handle_MoveCardFromSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveCardFromSlotJS_Req, CardIssuerStoreService_MoveCardFromSlotJS_Ans>::Pointer ctx)
+{
+	LOG_FUNCTION();
+	DbgToBeidou(ctx->link, __FUNCTION__)();
+	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke MoveCardFromSlotJS");
+	m_pEntity->MoveCardFromSlotJS(ctx);
+}
+
+
+
 #pragma endregion JS接口实现
 void CCardIssuerEntity::OnSysVarEvent(const char* pszKey, const char* pszValue, const char* pszOldValue, const char* pszEntityName)
 {
@@ -295,6 +333,8 @@ void CCardIssuerEntity::OnSysVarEvent(const char* pszKey, const char* pszValue,
 		if (_strnicmp(pszValue, "M", strlen("M")) == 0) {
 			m_fsm.SetInWhatPage(PageType_MainPage);
 			m_fsm.SetEnterMainPage();//设置进入首页
+			//判断是否进入首页触发业务结束事件,发送事件给状态机。
+			m_fsm.ExitToMainPage();
 		}
 		else if (_strnicmp(pszValue, "U", strlen("U")) == 0) {
 			m_fsm.SetInWhatPage(PageType_UserDesktop);

+ 94 - 19
Module/mod_cardissuerstore/mod_cardissuer.h

@@ -35,10 +35,12 @@ public:
 	virtual void Handle_PostOnlineJS(SpReqAnsContext<CardIssuerStoreService_PostOnlineJS_Req, CardIssuerStoreService_PostOnlineJS_Ans>::Pointer ctx);
 	virtual void Handle_EjectJS(SpReqAnsContext<CardIssuerStoreService_EjectJS_Req, CardIssuerStoreService_EjectJS_Ans>::Pointer ctx);
 	virtual void Handle_CaptureJS(SpReqAnsContext<CardIssuerStoreService_CaptureJS_Req, CardIssuerStoreService_CaptureJS_Ans>::Pointer ctx);
-	virtual void Handle_QueryInternalHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryInternalHasCardJS_Req, CardIssuerStoreService_QueryInternalHasCardJS_Ans>::Pointer ctx);
+	//virtual void Handle_QueryInternalHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryInternalHasCardJS_Req, CardIssuerStoreService_QueryInternalHasCardJS_Ans>::Pointer ctx);
+	virtual void Handle_QueryHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryHasCardJS_Req, CardIssuerStoreService_QueryHasCardJS_Ans>::Pointer ctx);
 	virtual void Handle_IssueFromBoxJS(SpReqAnsContext<CardIssuerStoreService_IssueFromBoxJS_Req, CardIssuerStoreService_IssueFromBoxJS_Ans>::Pointer ctx);
-	virtual void Handle_IssueFromSlotJS(SpReqAnsContext<CardIssuerStoreService_IssueFromSlotJS_Req, CardIssuerStoreService_IssueFromSlotJS_Ans>::Pointer ctx);
-	virtual void Handle_SAMICCommandJS(SpReqAnsContext<CardIssuerStoreService_SAMICCommandJS_Req, CardIssuerStoreService_SAMICCommandJS_Ans>::Pointer ctx);
+	//virtual void Handle_IssueFromSlotJS(SpReqAnsContext<CardIssuerStoreService_IssueFromSlotJS_Req, CardIssuerStoreService_IssueFromSlotJS_Ans>::Pointer ctx);
+	//virtual void Handle_SAMICCommandJS(SpReqAnsContext<CardIssuerStoreService_SAMICCommandJS_Req, CardIssuerStoreService_SAMICCommandJS_Ans>::Pointer ctx);
+	virtual void Handle_ICCommandJS(SpReqAnsContext<CardIssuerStoreService_ICCommandJS_Req, CardIssuerStoreService_ICCommandJS_Ans>::Pointer ctx);
 	virtual void Handle_WriteTrackJS(SpReqAnsContext<CardIssuerStoreService_WriteTrackJS_Req, CardIssuerStoreService_WriteTrackJS_Ans>::Pointer ctx);
 	virtual void Handle_PrintCardImmediatelyJS(SpReqAnsContext<CardIssuerStoreService_PrintCardImmediatelyJS_Req, CardIssuerStoreService_PrintCardImmediatelyJS_Ans>::Pointer ctx);
 	virtual void Handle_PreOnlineCrossJS(SpReqAnsContext<CardIssuerStoreService_PreOnlineCrossJS_Req, CardIssuerStoreService_PreOnlineCrossJS_Ans>::Pointer ctx);
@@ -47,7 +49,9 @@ public:
 	virtual void Handle_AddAndReadCardFromBoxJS(SpReqAnsContext<CardIssuerStoreService_AddAndReadCardFromBoxJS_Req, CardIssuerStoreService_AddAndReadCardFromBoxJS_Ans>::Pointer ctx);
 	virtual void Handle_MoveAndReadCardFromSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveAndReadCardFromSlotJS_Req, CardIssuerStoreService_MoveAndReadCardFromSlotJS_Ans>::Pointer ctx);
 	virtual void Handle_MoveBacktoSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveBacktoSlotJS_Req, CardIssuerStoreService_MoveBacktoSlotJS_Ans>::Pointer ctx);
-
+	//新增接口
+	virtual void Handle_AddCardFromBoxJS(SpReqAnsContext<CardIssuerStoreService_AddCardFromBoxJS_Req, CardIssuerStoreService_AddCardFromBoxJS_Ans>::Pointer ctx);
+	virtual void Handle_MoveCardFromSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveCardFromSlotJS_Req, CardIssuerStoreService_MoveCardFromSlotJS_Ans>::Pointer ctx);
 private:
 	CCardIssuerEntity* m_pEntity;
 };
@@ -402,6 +406,26 @@ public:
 		}
 	}
 
+	void AddCardFromBoxJS(SpReqAnsContext<CardIssuerStoreService_AddCardFromBoxJS_Req, CardIssuerStoreService_AddCardFromBoxJS_Ans>::Pointer ctx)
+	{
+		LOG_FUNCTION();
+		if (!m_fsm.GetDevInitFlag()) {
+			ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
+		}
+		else if (_stricmp(m_fsm.GetCurrStateName(), "Idle") != 0) {
+			//不符合请求调用,告知具体错误流程
+			DWORD errCode = m_fsm.GetFsmStateErrCode();
+			int state = m_fsm.GetFSMState();
+			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("AddCardFromBoxJS req is unhandled ,CurrState=%d", state);
+			ctx->Answer(Error_Unexpect, errCode);
+		}
+		else {
+			AddCardFromBoxJSEvent* pEvt = new AddCardFromBoxJSEvent();
+			pEvt->ctx = ctx;
+			m_fsm.PostEventFIFO(pEvt);
+		}
+	}
+
 	void MoveAndReadCardFromSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveAndReadCardFromSlotJS_Req, CardIssuerStoreService_MoveAndReadCardFromSlotJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
@@ -422,59 +446,110 @@ public:
 		}
 	}
 
-	void MoveBacktoSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveBacktoSlotJS_Req, CardIssuerStoreService_MoveBacktoSlotJS_Ans>::Pointer ctx)
+	void MoveCardFromSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveCardFromSlotJS_Req, CardIssuerStoreService_MoveCardFromSlotJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
 		if (!m_fsm.GetDevInitFlag()) {
 			ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
 		}
-		else if (_stricmp(m_fsm.GetCurrStateName(), "Hold") != 0) {
+		else if (_stricmp(m_fsm.GetCurrStateName(), "Idle") != 0) {
 			//不符合请求调用,告知具体错误流程
 			DWORD errCode = m_fsm.GetFsmStateErrCode();
 			int state = m_fsm.GetFSMState();
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("MoveBacktoSlotJS req is unhandled ,CurrState=%d", state);
+			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("MoveAndReadCardFromSlotJS req is unhandled ,CurrState=%d", state);
 			ctx->Answer(Error_Unexpect, errCode);
 		}
 		else {
-			MoveBacktoSlotJSEvent* pEvt = new MoveBacktoSlotJSEvent();
+			MoveCardFromSlotJSEvent* pEvt = new MoveCardFromSlotJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
 		}
-		
 	}
-	
-	void IssueFromSlotJS(SpReqAnsContext<CardIssuerStoreService_IssueFromSlotJS_Req, CardIssuerStoreService_IssueFromSlotJS_Ans>::Pointer ctx)
+
+	void MoveBacktoSlotJS(SpReqAnsContext<CardIssuerStoreService_MoveBacktoSlotJS_Req, CardIssuerStoreService_MoveBacktoSlotJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
 		if (!m_fsm.GetDevInitFlag()) {
 			ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
 		}
-		else if (_stricmp(m_fsm.GetCurrStateName(), "Idle") != 0) {
+		else if (_stricmp(m_fsm.GetCurrStateName(), "Hold") != 0) {
 			//不符合请求调用,告知具体错误流程
 			DWORD errCode = m_fsm.GetFsmStateErrCode();
 			int state = m_fsm.GetFSMState();
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("IssueFromSlotJS req is unhandled ,CurrState=%d", state);
+			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("MoveBacktoSlotJS req is unhandled ,CurrState=%d", state);
 			ctx->Answer(Error_Unexpect, errCode);
 		}
 		else {
-			IssueFromSlotJSEvent* pEvt = new IssueFromSlotJSEvent();
+			MoveBacktoSlotJSEvent* pEvt = new MoveBacktoSlotJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
 		}
+		
 	}
+	
+	//void IssueFromSlotJS(SpReqAnsContext<CardIssuerStoreService_IssueFromSlotJS_Req, CardIssuerStoreService_IssueFromSlotJS_Ans>::Pointer ctx)
+	//{
+	//	LOG_FUNCTION();
+	//	if (!m_fsm.GetDevInitFlag()) {
+	//		ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
+	//	}
+	//	else if (_stricmp(m_fsm.GetCurrStateName(), "Idle") != 0) {
+	//		//不符合请求调用,告知具体错误流程
+	//		DWORD errCode = m_fsm.GetFsmStateErrCode();
+	//		int state = m_fsm.GetFSMState();
+	//		DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("IssueFromSlotJS req is unhandled ,CurrState=%d", state);
+	//		ctx->Answer(Error_Unexpect, errCode);
+	//	}
+	//	else {
+	//		IssueFromSlotJSEvent* pEvt = new IssueFromSlotJSEvent();
+	//		pEvt->ctx = ctx;
+	//		m_fsm.PostEventFIFO(pEvt);
+	//	}
+	//}
+
+	//void QueryInternalHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryInternalHasCardJS_Req, CardIssuerStoreService_QueryInternalHasCardJS_Ans>::Pointer ctx) 
+	//{
+	//	LOG_FUNCTION();
+	//	if (!m_fsm.GetDevInitFlag()) {
+	//		ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
+	//	}
+	//	else {
+	//		m_fsm.QueryInternalHasCardJS(ctx);
+	//	}
+	//}
+
+	//void SAMICCommandJS(SpReqAnsContext<CardIssuerStoreService_SAMICCommandJS_Req, CardIssuerStoreService_SAMICCommandJS_Ans>::Pointer ctx) 
+	//{
+	//	LOG_FUNCTION();
+	//	if (!m_fsm.GetDevInitFlag()) {
+	//		ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
+	//	}
+	//	else if (_stricmp(m_fsm.GetCurrStateName(), "Hold") != 0) {
+	//		//不符合请求调用,告知具体错误流程
+	//		DWORD errCode = m_fsm.GetFsmStateErrCode();
+	//		int state = m_fsm.GetFSMState();
+	//		DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("SAMICCommandJS req is unhandled ,CurrState=%d", state);
+	//		ctx->Answer(Error_Unexpect, errCode);
+	//	}
+	//	else {
+	//		SAMICCommandJSEvent* pEvt = new SAMICCommandJSEvent();
+	//		pEvt->ctx = ctx;
+	//		m_fsm.PostEventFIFO(pEvt);
+	//	}
+	//}
 
-	void QueryInternalHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryInternalHasCardJS_Req, CardIssuerStoreService_QueryInternalHasCardJS_Ans>::Pointer ctx) 
+	void QueryHasCardJS(SpReqAnsContext<CardIssuerStoreService_QueryHasCardJS_Req, CardIssuerStoreService_QueryHasCardJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
 		if (!m_fsm.GetDevInitFlag()) {
 			ctx->Answer(Error_DevNotAvailable, CardIssuerStore_UserErrorCode_DevOpen_Failed);
 		}
 		else {
-			m_fsm.QueryInternalHasCardJS(ctx);
+			m_fsm.QueryHasCardJS(ctx);
 		}
 	}
 
-	void SAMICCommandJS(SpReqAnsContext<CardIssuerStoreService_SAMICCommandJS_Req, CardIssuerStoreService_SAMICCommandJS_Ans>::Pointer ctx) 
+	void ICCommandJS(SpReqAnsContext<CardIssuerStoreService_ICCommandJS_Req, CardIssuerStoreService_ICCommandJS_Ans>::Pointer ctx) 
 	{
 		LOG_FUNCTION();
 		if (!m_fsm.GetDevInitFlag()) {
@@ -484,11 +559,11 @@ public:
 			//不符合请求调用,告知具体错误流程
 			DWORD errCode = m_fsm.GetFsmStateErrCode();
 			int state = m_fsm.GetFSMState();
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("SAMICCommandJS req is unhandled ,CurrState=%d", state);
+			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("ICCommandJS req is unhandled ,CurrState=%d", state);
 			ctx->Answer(Error_Unexpect, errCode);
 		}
 		else {
-			SAMICCommandJSEvent* pEvt = new SAMICCommandJSEvent();
+			ICCommandJSEvent* pEvt = new ICCommandJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
 		}