Преглед изворни кода

!10857 吐卡时状态跳转调整
Merge pull request !10857 from 80174847/oilyang_fixed_everything

杨诗友80174847 пре 1 месец
родитељ
комит
b7fec634ba

+ 2 - 2
Module/mod_CardIssuerStand/CardIssuerStand.xml

@@ -297,7 +297,7 @@
 				<param name="reserved2" type="array_string"/>
 			</req>
 			<res>
-				<!--读磁条结果 0成功 1失败-->
+				<!--读磁条结果 0成功 1失败 2未执行-->
 				<param name="magStatus" type="int" />
 				<!--磁道1数据-->
 				<param name="track1" type="string"/>
@@ -319,7 +319,7 @@
 				<param name="track3Status" type="int"/>
 				<!--读IC结果 0成功 1失败-->
 				<param name="icState" type="int"/>
-				<!--读IC成功下接触方式 -1未知 0接触 1非接-->
+				<!--读IC成功下接触方式 0接触 1非接 2未执行-->
 				<param name="icMode" type="int"/>
 				<!--IC读取的数据<json格式>
 					ACTION:行为代码

+ 4 - 33
Module/mod_CardIssuerStand/CardIssuerStandFSM.cpp

@@ -1206,7 +1206,7 @@ void CCardIssuerFSM::s11_on_exit()
 }
 unsigned int CCardIssuerFSM::s11_on_event(FSMEvent* pEvt)
 {
-	DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("s15 evt (%d,%d)", pEvt->iEvt, pEvt->param1);
+	DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("evt (%d,%d)", pEvt->iEvt, pEvt->param1);
 	int ret = 0;
 	switch (pEvt->iEvt)
 	{
@@ -6652,6 +6652,9 @@ int CCardIssuerFSM::PreOnlineJS_ICDataProcess(SpReqAnsContext<CardIssuerStandSer
 }
 int CCardIssuerFSM::ReadJS(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx)
 {
+	//init value, 2 for 
+	ctx->Ans.magStatus = 2;
+	ctx->Ans.icMode = 2;
 	switch (ctx->Req.mode)
 	{
 	case ReadMode_MagOnly:
@@ -6920,38 +6923,6 @@ int CCardIssuerFSM::InternalInsert()
 	return errRet;
 }
 
-
-
-DWORD CCardIssuerFSM::GetFsmStateErrCode()
-{
-	int state = GetFSMState();
-	switch (state)
-	{
-	case 2:
-		return CardIssuer_UserErrorCode_PROCESS_IDLE;
-	case 3:
-		return CardIssuer_UserErrorCode_PROCESS_ACCEPT;
-	case 4:
-		return CardIssuer_UserErrorCode_PROCESS_HOLD;
-	case 5:
-	case 15:
-		return CardIssuer_UserErrorCode_PROCESS_READ;
-	case 6:
-		return CardIssuer_UserErrorCode_PROCESS_EJECT;
-	case 7:
-		return CardIssuer_UserErrorCode_PROCESS_WAIT_FETCH;
-	case 8:
-		return CardIssuer_UserErrorCode_PROCESS_CAPTURE;
-	case 9:
-		return CardIssuer_UserErrorCode_PROCESS_FAULT;
-	case 10:
-	case 16:
-		return CardIssuer_UserErrorCode_PROCESS_ISSUE;
-	default:
-		return CardIssuer_UserErrorCode_EntityInStateCannotProcess;
-	}
-}
-
 CSimpleStringA CCardIssuerFSM::MaskCardno(const char* cardno)
 {
 	CSimpleStringA maskCardno = "";

+ 1 - 3
Module/mod_CardIssuerStand/CardIssuerStandFSM.h

@@ -712,9 +712,8 @@ public:
 		FSM_RULE_ENTRY(s5, s4, USER_EVT_EXIT, 0)
 		FSM_RULE_ENTRY(s5, s4, USER_EVT_PREONLINEFINISHED, 0)
 		FSM_RULE_ENTRY(s5, s4, USER_EVT_POSTONLINEFINISHED, 0)
-		FSM_RULE_ENTRY(s6,	s2,USER_EVT_EJECTFINISHED,0)
+		FSM_RULE_ENTRY(s6,	s7,USER_EVT_EJECTFINISHED,0)
 		FSM_RULE_ENTRY(s6,	s9,USER_EVT_EJECTFINISHED,1)
-		FSM_RULE_ENTRY(s6, s7, USER_EVT_EJECTFINISHED, 2)
 		FSM_RULE_ENTRY(s6, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
 		FSM_RULE_ENTRY(s6, s2, USER_EVT_JS_EJECT_FINISHED, 0)//JS 吐卡取卡成功,取卡超时吞卡成功
 		FSM_RULE_ENTRY(s6, s9, USER_EVT_JS_EJECT_FINISHED, 1)//JS 吐卡失败,取卡超时吞卡失败
@@ -969,7 +968,6 @@ public:
 	int PreOnlineJS_ReadViaRF(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx, bool bContinue);
 	int PreOnlineJS_ICDataProcess(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx);
 
-	DWORD GetFsmStateErrCode();
 	CSimpleStringA MaskCardno(const char* cardno);
 	void GetCardProcessLastErr(ErrorCodeEnum& eErrCode, CSimpleStringA& lastApiName, CSimpleStringA& alarmMsg, CSimpleStringA& csErrMsgWithReturnCode);