ソースを参照

!10856 大机卡机读卡改造
Merge pull request !10856 from 80174847/oilyang_fixed_everything

杨诗友80174847 4 ヶ月 前
コミット
4403bdc1b2

+ 6 - 79
Module/mod_CardIssuerStand/CardIssuerStand.xml

@@ -76,30 +76,6 @@
 			<res>
 			</res>			
 		</twoway>				
-		<twoway name="GetMaterialCount" overlap="true" method_id="10">
-			<req>
-			</req>
-			<res>
-				<param name="remains" type="int"/>
-				<param name="captured" type="int"/>
-				<param name="issued" type="int"/>
-				<param name="mixed" type="int"/>
-			</res>			
-		</twoway>
-		<twoway name="SetMaterialCount" overlap="true" method_id="11">
-			<req>
-				<param name="remains" type="int"/>
-				<param name="captured" type="int"/>
-				<param name="issued" type="int"/>
-				<param name="bRemains" type="bool"/>
-				<param name="bCaptured" type="bool"/>				
-				<param name="bIssued" type="bool"/>
-				<param name="mixed" type="int"/>
-				<param name="bMixed" type="bool"/>
-			</req>
-			<res>
-			</res>			
-		</twoway>
 		<oneway name="SetIssueFlag" overlap="true" method_id="12">			
 		</oneway>
 		<twoway name="QueryCardInfo" overlap="true" method_id="14">
@@ -183,16 +159,6 @@
 				<param name="reserved2" type="array_string"/>
 			</res>				
 		</twoway>
-		<twoway name="GetSCIInfo" overlap="true" method_id="19">
-			<req>
-			</req>
-			<res>
-				<param name="connected" type="int"/>
-				<param name="DevSN" type="string"/>
-				<param name="reserved1" type="array_int"/>
-				<param name="reserved2" type="array_string"/>
-			</res>			
-		</twoway>
 		<twoway name="IssueEx" overlap="true" method_id="20">
 			<req>
 				<param name="hopper" type="int"/>
@@ -276,42 +242,6 @@
 				<param name="reserved4" type="array_string"/>				
 			</res>			
 		</twoway>
-		<twoway name="GetAddCardInfo" overlap="true" method_id="30">
-			<req>
-				<param name="isSync" type="int"/>
-				<param name="reserved1" type="array_int"/>
-				<param name="reserved2" type="array_int"/>
-				<param name="reserved3" type="array_string"/>
-				<param name="reserved4" type="array_string"/>
-			</req>
-			<res>
-				<param name="count" type="int"/>
-				<param name="slot" type="array_int"/>
-				<param name="account" type="array_string"/>							
-				<param name="cardSerial" type="array_string"/>
-				<param name="reserved1" type="array_int"/>
-				<param name="reserved2" type="array_int"/>
-				<param name="reserved3" type="array_string"/>
-				<param name="reserved4" type="array_string"/>				
-			</res>			
-		</twoway>		
-		<twoway name="PrintCardImmediately" overlap="true" method_id="31">
-			<req>
-				<param name="formFile" type="string"/>
-				<param name="printData" type="string"/>
-				<param name="reserved1" type="array_int"/>
-				<param name="reserved2" type="array_int"/>
-				<param name="reserved3" type="array_string"/>
-				<param name="reserved4" type="array_string"/>
-			</req>
-			<res>
-				<param name="ret" type="int"/>
-				<param name="reserved1" type="array_int"/>
-				<param name="reserved2" type="array_int"/>
-				<param name="reserved3" type="array_string"/>
-				<param name="reserved4" type="array_string"/>				
-			</res>			
-		</twoway>
 		<twoway name="QueryCIStatus" overlap="true" method_id="32">
 			<req>
 				<param name="reserved1" type="array_int"/>
@@ -357,7 +287,9 @@
 		<!--9、读卡失败,读取IC数据失败(非接) errorCode为Error_Unexpect(2147483646),rtaCode为RTA23C9-->
 		<twoway name="ReadJS" overlap="true" method_id="40" jsflag="true">
 			<req>
-				<!--Aid列表-->
+        <!--读取模式:1 读磁、2 接触IC优先、3 非接IC优先、4 非接IC、5 读磁+接触IC优先、6 读磁+非接IC优先、7 读磁+非接IC-->
+        <param name="mode" type="int" />
+        <!--Aid列表-->
 				<param name="aid" type="string"/>
 				<!--业务数据-->
 				<param name="businessData" type="string"/>
@@ -365,7 +297,7 @@
 				<param name="reserved2" type="array_string"/>
 			</req>
 			<res>
-				<!--读磁条结果 0失败 1成功-->
+				<!--读磁条结果 0成功 1失败-->
 				<param name="magStatus" type="int" />
 				<!--磁道1数据-->
 				<param name="track1" type="string"/>
@@ -385,7 +317,7 @@
 				<param name="track2Status" type="int"/>
 				<!--磁道3数据状态 0成功 1无效-->
 				<param name="track3Status" type="int"/>
-				<!--读IC结果 0失败 1成功-->
+				<!--读IC结果 0成功 1失败-->
 				<param name="icState" type="int"/>
 				<!--读IC成功下接触方式 -1未知 0接触 1非接-->
 				<param name="icMode" type="int"/>
@@ -398,8 +330,6 @@
 					ARQC_DATA:授权请求数据
 					T2TRACK2_DATA:磁道2数据
 					EXPIRE_DATE:卡片失效日期
-					T2CARD_SERIAL:卡序号
-					CARD_CAT:卡类型
 					IC_TAGS:基础IC数据
 				-->
 				<param name="result" type="string"/>
@@ -509,8 +439,5 @@
 	</class>
 	<message name="FetchCard">
 			<param name="status" type="int"/>
-	</message>
-	<message name="SCIConnect">
-			<param name="status" type="int"/>
-	</message>			
+	</message>	
 </entity>

ファイルの差分が大きいため隠しています
+ 132 - 568
Module/mod_CardIssuerStand/CardIssuerStandFSM.cpp


+ 68 - 281
Module/mod_CardIssuerStand/CardIssuerStandFSM.h

@@ -9,6 +9,7 @@
 #include "AccessAuthorization_client_g.h"
 #include "HealthManager_client_g.h"
 #include "DevFSMCommBase.hpp"
+#include "CommEntityUtil.hpp"
 #include "CardIssuerClass.h"
 #include "CardAssist.h"
 #include "ICDataElement.h"
@@ -46,17 +47,13 @@ enum EvtType
 	USER_EVT_EXIT,
 	USER_EVT_READ,
 	USER_EVT_READ_FINISHED,
-	USER_EVT_WRITE,
-	USER_EVT_WRITE_FINISHED,
 	USER_EVT_GET_MATERIAL_EX,
 	USER_EVT_SET_MATERIAL_EX,
 	USER_EVT_ISSUE_EX,
 	USER_EVT_ISSUE_EX_FINISHED,
-	USER_EVT_SAM_IC,
-	USER_EVT_SAM_IC_FINISHED,
 	USER_EVT_BACK_TO_INIT,
 	//新定义JS状态机事件枚举
-	USER_EVT_JS_CAPTURE = EVT_USER + 38,
+	USER_EVT_JS_CAPTURE,
 	USER_EVT_JS_CAPTURE_FINISHED,
 	USER_EVT_JS_EJECT,
 	USER_EVT_JS_EJECT_FINISHED,
@@ -64,14 +61,13 @@ enum EvtType
 	USER_EVT_JS_POSTONLINE_FINISHED,
 	USER_EVT_JS_ISSUE_FROM_BOX,
 	USER_EVT_JS_ISSUE_FROM_BOX_FINISHED,
-	USER_EVT_QUICK_SELF_CHECK,
-	USER_EVT_QUICK_SELF_CHECK_FINISHED,
 	USER_EVT_JS_READ,
 	USER_EVT_JS_READ_FINISHED,
 	USER_EVT_JS_INSERT,
 	USER_EVT_JS_INSERT_FINISHED,
 	USER_EVT_JS_INSERT_CANCEL,
-	USER_EVT_JS_EXIT_MIAN_PAGE
+	USER_EVT_JS_EXIT_MIAN_PAGE,
+	USER_EVT_QUERY_CARD_POS_FINISHED
 };
 enum SAMICCommandType
 {
@@ -91,6 +87,17 @@ enum SAMICCommandType
 	SAMICCommand_RFIC_Deactivate,
 	SAMICCommand_RFIC_Command,
 };
+enum ReadMode
+{ 
+	//<!--读取模式:1 读磁、2 接触IC优先、3 非接IC优先、4 非接IC、5 读磁+接触IC优先、6 读磁+非接IC优先、7 读磁+非接IC-->
+	ReadMode_MagOnly = 1,
+	ReadMode_ContactICFirst = 2,
+	ReadMode_ContactlessICFirst = 3,
+	ReadMode_ContactlessICOnly = 4,
+	ReadMode_Mag_ContactICFirst = 5,
+	ReadMode_Mag_ContactlessICFirst = 6,
+	ReadMode_Mag_ContactlessICOnly = 7,
+};
 
 typedef int(*lpCMBdecodeMag2)(char* Mag2Data, char * data);
 typedef int(*lpCMBdecodeEx)( char* MagData, char * type, char * data);
@@ -139,14 +146,6 @@ public:
 	CardAcceptEvent() : FSMEvent(USER_EVT_ACCEPT) {}
 	~CardAcceptEvent() {}
 	SpReqAnsContext<CardIssuerStandService_Insert_Req, CardIssuerStandService_Insert_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("card accept unhandled");
-			ctx->Answer(Error_InvalidState);
-		}
-	}
 };
 class CardIssueEvent : public FSMEvent
 {
@@ -154,14 +153,6 @@ public:
 	CardIssueEvent() : FSMEvent(USER_EVT_ISSUE) {}
 	~CardIssueEvent() {}
 	SpReqAnsContext<CardIssuerStandService_Issue_Req, CardIssuerStandService_Issue_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("card issue unhandled");
-			ctx->Answer(Error_InvalidState);
-		}
-	}
 };
 
 class CancelAcceptEvent : public FSMEvent
@@ -169,10 +160,6 @@ class CancelAcceptEvent : public FSMEvent
 public:
 	CancelAcceptEvent() : FSMEvent(USER_EVT_ACCEPT_CANCEL) {}
 	~CancelAcceptEvent() {}
-	virtual void OnUnhandled()
-	{
-		//DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("card cancel accept unhandled");
-	}
 };
 
 class CardReadEvent : public FSMEvent
@@ -181,14 +168,6 @@ public:
 	CardReadEvent() : FSMEvent(USER_EVT_READ) {}
 	~CardReadEvent() {}
 	SpReqAnsContext<CardIssuerStandService_Read_Req, CardIssuerStandService_Read_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("card read unhandled");
-			ctx->Answer(Error_InvalidState);
-		}
-	}
 protected:
 private:
 };
@@ -198,13 +177,6 @@ public:
 	CardReadFinishedEvent() : FSMEvent(USER_EVT_READ_FINISHED) {}
 	~CardReadFinishedEvent() {}
 	SpReqAnsContext<CardIssuerStandService_Read_Req, CardIssuerStandService_Read_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			//DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("card read unhandled(new)");
-		}
-	}
 protected:
 private:
 };
@@ -230,11 +202,6 @@ public:
 	PreOnlineEvent() : FSMEvent(USER_EVT_PREONLINE){}
 	~PreOnlineEvent(){}
 	SpReqAnsContext<CardIssuerStandService_PreOnline_Req,CardIssuerStandService_PreOnline_Ans>::Pointer ctx;
-	virtual void OnUnhandled() 
-	{
-		if (ctx != NULL)
-			ctx->Answer(Error_InvalidState);
-	}
 protected:
 private:
 };
@@ -244,11 +211,6 @@ public:
 	PostOnlineEvent() : FSMEvent(USER_EVT_POSTONLINE){}
 	~PostOnlineEvent(){}
 	SpReqAnsContext<CardIssuerStandService_PostOnline_Req,CardIssuerStandService_PostOnline_Ans>::Pointer ctx;
-	virtual void OnUnhandled() 
-	{
-		if (ctx != NULL)
-			ctx->Answer(Error_InvalidState);
-	}
 protected:
 private:
 };
@@ -258,11 +220,6 @@ public:
 	CardCaptureEvent() : FSMEvent(USER_EVT_CAPTURE){}
 	~CardCaptureEvent(){}
 	SpReqAnsContext<CardIssuerStandService_Capture_Req,CardIssuerStandService_Capture_Ans>::Pointer ctx;
-	virtual void OnUnhandled() 
-	{
-		if (ctx != NULL)
-			ctx->Answer(Error_InvalidState);
-	}
 
 protected:
 private:
@@ -273,57 +230,16 @@ public:
 	CardEjectEvent() : FSMEvent(USER_EVT_EJECT){}
 	~CardEjectEvent(){}
 	SpReqAnsContext<CardIssuerStandService_Eject_Req,CardIssuerStandService_Eject_Ans>::Pointer ctx;
-	virtual void OnUnhandled() 
-	{
-		if (ctx != NULL)
-			ctx->Answer(Error_InvalidState);
-	}
-protected:
-private:
-};
-class CardWriteEvent : public FSMEvent
-{
-public:
-	CardWriteEvent() : FSMEvent(USER_EVT_WRITE){}
-	~CardWriteEvent(){}
-	SpReqAnsContext<CardIssuerStandService_WriteTrack_Req,CardIssuerStandService_WriteTrack_Ans>::Pointer ctx;
-	virtual void OnUnhandled() 
-	{
-		if (ctx != NULL)
-		{
-			ctx->Answer(Error_InvalidState);
-		}
-	}
-protected:
-private:
-};
-class CardWriteFinishedEvent : public FSMEvent
-{
-public:
-	CardWriteFinishedEvent() : FSMEvent(USER_EVT_WRITE_FINISHED){}
-	~CardWriteFinishedEvent(){}
-	SpReqAnsContext<CardIssuerStandService_WriteTrack_Req,CardIssuerStandService_WriteTrack_Ans>::Pointer ctx;
-	virtual void OnUnhandled() 
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("card read unhandled(new)");
-		}
-	}
 protected:
 private:
 };
+
 class GetMaterialExEvent : public FSMEvent
 {
 public:
 	GetMaterialExEvent() : FSMEvent(USER_EVT_GET_MATERIAL_EX) {}
 	~GetMaterialExEvent() {}
 	SpReqAnsContext<CardIssuerStandService_GetMaterialCountEx_Req, CardIssuerStandService_GetMaterialCountEx_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-			ctx->Answer(Error_InvalidState);
-	}
 protected:
 private:
 };
@@ -333,11 +249,6 @@ public:
 	SetMaterialExEvent() : FSMEvent(USER_EVT_SET_MATERIAL_EX){}
 	~SetMaterialExEvent(){}
 	SpReqAnsContext<CardIssuerStandService_SetMaterialCountEx_Req, CardIssuerStandService_SetMaterialCountEx_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-			ctx->Answer(Error_InvalidState);
-	}
 protected:
 private:
 };
@@ -347,30 +258,8 @@ public:
 	CardIssueExEvent() : FSMEvent(USER_EVT_ISSUE_EX){}
 	~CardIssueExEvent(){}
 	SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("card issue ex unhandled");
-			ctx->Answer(Error_InvalidState);
-		}
-	}
-};
-class SAMICCommandEvent : public FSMEvent
-{
-public:
-	SAMICCommandEvent() : FSMEvent(USER_EVT_SAM_IC){}
-	~SAMICCommandEvent(){}
-	SpReqAnsContext<CardIssuerStandService_SAMICCommand_Req, CardIssuerStandService_SAMICCommand_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("sam/ic unhandled");
-			ctx->Answer(Error_InvalidState);
-		}
-	}
 };
+
 #pragma region JS接口 event
 //JS接口
 class EjectJSEvent : public FSMEvent
@@ -379,13 +268,6 @@ public:
 	EjectJSEvent() : FSMEvent(USER_EVT_JS_EJECT) {}
 	~EjectJSEvent() {}
 	SpReqAnsContext<CardIssuerStandService_EjectJS_Req, CardIssuerStandService_EjectJS_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("EjectJS Operate unhandled");
-		}
-	}
 };
 
 class CaptureJSEvent : public FSMEvent
@@ -394,13 +276,6 @@ public:
 	CaptureJSEvent() : FSMEvent(USER_EVT_JS_CAPTURE) {}
 	~CaptureJSEvent() {}
 	SpReqAnsContext<CardIssuerStandService_CaptureJS_Req, CardIssuerStandService_CaptureJS_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("CaptureJS Operate unhandled");
-		}
-	}
 };
 
 class PostOnlineJSEvent : public FSMEvent
@@ -409,13 +284,6 @@ public:
 	PostOnlineJSEvent() : FSMEvent(USER_EVT_JS_POSTONLINE) {}
 	~PostOnlineJSEvent() {}
 	SpReqAnsContext<CardIssuerStandService_PostOnlineJS_Req, CardIssuerStandService_PostOnlineJS_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("PostOnlineJS Operate unhandled");
-		}
-	}
 };
 
 class IssueFromBoxJSEvent : public FSMEvent
@@ -424,38 +292,10 @@ public:
 	IssueFromBoxJSEvent() : FSMEvent(USER_EVT_JS_ISSUE_FROM_BOX) {}
 	~IssueFromBoxJSEvent() {}
 	SpReqAnsContext<CardIssuerStandService_IssueFromBoxJS_Req, CardIssuerStandService_IssueFromBoxJS_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("IssueFromBoxJS Operate unhandled");
-		}
-	}
 };
 
-class QuickSelfcheckFinishEvent : public FSMEvent
-{
-public:
-	QuickSelfcheckFinishEvent() : FSMEvent(USER_EVT_QUICK_SELF_CHECK_FINISHED) {}
-	~QuickSelfcheckFinishEvent() {}
-protected:
-private:
-};
 
-class ReadJSEvent : public FSMEvent
-{
-public:
-	ReadJSEvent() : FSMEvent(USER_EVT_JS_READ) {}
-	~ReadJSEvent() {}
-	SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("ReadJS Operate unhandled");
-		}
-	}
-};
+
 
 class InsertJSEvent : public FSMEvent
 {
@@ -463,13 +303,6 @@ public:
 	InsertJSEvent() : FSMEvent(USER_EVT_JS_INSERT) {}
 	~InsertJSEvent() {}
 	SpReqAnsContext<CardIssuerStandService_InsertJS_Req, CardIssuerStandService_InsertJS_Ans>::Pointer ctx;
-	virtual void OnUnhandled()
-	{
-		if (ctx != NULL)
-		{
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("InsertJS Operate unhandled");
-		}
-	}
 };
 
 class CancelInsertJSEvent : public FSMEvent
@@ -477,10 +310,6 @@ class CancelInsertJSEvent : public FSMEvent
 public:
 	CancelInsertJSEvent() : FSMEvent(USER_EVT_JS_INSERT_CANCEL) {}
 	~CancelInsertJSEvent() {}
-	virtual void OnUnhandled()
-	{
-		DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA23CL")("CancelInsertJS Operate unhandled");
-	}
 };
 
 #pragma endregion JS接口 event
@@ -814,7 +643,7 @@ struct SyncMaterialCountHTTPRet : CHTTPRet {
 class CCardIssuerFSM : public CCommDevFSM<CCardIssuerFSM, CardIssuerClass>, public IFSMStateHooker
 {
 public:
-	enum {s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s14,s15,s16};
+	enum {s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12};
 	BEGIN_FSM_STATE(CCardIssuerFSM)
 		FSM_STATE_ENTRY(s0,"Init",s0_on_entry,s0_on_exit,s0_on_event)
 		FSM_STATE_ENTRY(s1,"Initializing",s1_on_entry,s1_on_exit,s1_on_event)
@@ -827,10 +656,8 @@ public:
 		FSM_STATE_ENTRY(s8,"Capturing",s8_on_entry,s8_on_exit,s8_on_event)
 		FSM_STATE_ENTRY(s9,"Failed",s9_on_entry,s9_on_exit,s9_on_event)
 		FSM_STATE_ENTRY(s10,"Issuing",s10_on_entry,s10_on_exit,s10_on_event)
-		FSM_STATE_ENTRY(s11,"Writing",s11_on_entry,s11_on_exit,s11_on_event)
-		FSM_STATE_ENTRY(s14, "SAMIC", s14_on_entry, s14_on_exit, s14_on_event)
-		FSM_STATE_ENTRY(s15, "ReadJSing", s15_on_entry, s15_on_exit, s15_on_event)
-		FSM_STATE_ENTRY(s16, "IssueJSing", s16_on_entry, s16_on_exit, s16_on_event)
+		FSM_STATE_ENTRY(s11, "ReadJSing", s11_on_entry, s11_on_exit, s11_on_event)
+		FSM_STATE_ENTRY(s12, "IssueJSing", s12_on_entry, s12_on_exit, s12_on_event)
 		END_FSM_STATE()
 
 	BEGIN_FSM_RULE(CCardIssuerFSM,s0)
@@ -847,7 +674,7 @@ public:
 		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, s16, USER_EVT_JS_ISSUE_FROM_BOX, 0)//JS 卡箱发卡
+		FSM_RULE_ENTRY(s2, s12, USER_EVT_JS_ISSUE_FROM_BOX, 0)//JS 卡箱发卡
 		FSM_RULE_ENTRY(s2, s8, USER_EVT_JS_CAPTURE, 0)//JS 吞卡
 		FSM_RULE_ENTRY(s3,s4,USER_EVT_ACCEPTFINISHED,0)
 		FSM_RULE_ENTRY(s3,s9,USER_EVT_ACCEPTFINISHED,1)
@@ -867,15 +694,13 @@ public:
 		FSM_RULE_ENTRY(s4,s8,USER_EVT_ACCEPT,0)
 		FSM_RULE_ENTRY(s4,s8,USER_EVT_EXIT,1)
 		FSM_RULE_ENTRY(s4,s8,USER_EVT_CAPTURE,0)
-		FSM_RULE_ENTRY(s4,s11,USER_EVT_WRITE,0)
-		FSM_RULE_ENTRY(s4, s14, USER_EVT_SAM_IC, 0)
 		FSM_RULE_ENTRY(s4, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
 		FSM_RULE_ENTRY(s4, s2, USER_EVT_ISSUE_EX_FINISHED, 2)
 		FSM_RULE_ENTRY(s4, s6, USER_EVT_ISSUE_EX_FINISHED, 6)
 		FSM_RULE_ENTRY(s4, s5, USER_EVT_PREONLINE, 0)
 		FSM_RULE_ENTRY(s4, s5, USER_EVT_POSTONLINE, 0)
-		FSM_RULE_ENTRY(s4, s15, USER_EVT_JS_READ, 0)//JS 读卡
-		FSM_RULE_ENTRY(s4, s15, USER_EVT_JS_POSTONLINE, 0)//JS 联机后
+		FSM_RULE_ENTRY(s4, s11, USER_EVT_JS_READ, 0)//JS 读卡
+		FSM_RULE_ENTRY(s4, s11, USER_EVT_JS_POSTONLINE, 0)//JS 联机后
 		FSM_RULE_ENTRY(s4, s6, USER_EVT_JS_EJECT, 0)//JS 吐卡
 		FSM_RULE_ENTRY(s4, s8, USER_EVT_JS_CAPTURE, 0)//JS 吞卡
 		FSM_RULE_ENTRY(s4, s6, USER_EVT_JS_EXIT_MIAN_PAGE, 0)//JS 退回首页吐卡
@@ -887,8 +712,9 @@ 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,s7,USER_EVT_EJECTFINISHED,0)
-		FSM_RULE_ENTRY(s6,s9,USER_EVT_EJECTFINISHED,1)
+		FSM_RULE_ENTRY(s6,	s2,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 吐卡失败,取卡超时吞卡失败
@@ -901,9 +727,8 @@ public:
 		FSM_RULE_ENTRY(s8, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
 		FSM_RULE_ENTRY(s8, s2, USER_EVT_JS_CAPTURE_FINISHED, 0)//JS 吞卡成功
 		FSM_RULE_ENTRY(s8, s9, USER_EVT_JS_CAPTURE_FINISHED, 1)//JS 吞卡失败
-		FSM_RULE_ENTRY(s9, s2, USER_EVT_RESETFINISHED, 0)
-		FSM_RULE_ENTRY(s9, s0, USER_EVT_RESETFINISHED, 2)
-		FSM_RULE_ENTRY(s9, FSM_STATE_EXIT, USER_EVT_QUIT, 0)
+		FSM_RULE_ENTRY(s9, s2, USER_EVT_QUERY_CARD_POS_FINISHED, 0)
+		FSM_RULE_ENTRY(s9, s4, USER_EVT_QUERY_CARD_POS_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)
@@ -914,18 +739,15 @@ public:
 		FSM_RULE_ENTRY(s10, s6, USER_EVT_ISSUE_EX_FINISHED, 6)
 		FSM_RULE_ENTRY(s10, s2, USER_EVT_ISSUE_EX_FINISHED, 8)
 		FSM_RULE_ENTRY(s10, s2, USER_EVT_EXIT, 0)
-		FSM_RULE_ENTRY(s11,s4,USER_EVT_WRITE_FINISHED,0)
-		FSM_RULE_ENTRY(s11,s4,USER_EVT_WRITE_FINISHED,1)
-		FSM_RULE_ENTRY(s14, s4, USER_EVT_SAM_IC_FINISHED, 0)
-
-		FSM_RULE_ENTRY(s15, s4, USER_EVT_JS_READ_FINISHED, 0)//JS 读卡结果返回
-		FSM_RULE_ENTRY(s15, s2, USER_EVT_JS_READ_FINISHED, 1)//JS 无卡
-		FSM_RULE_ENTRY(s15, s4, USER_EVT_JS_POSTONLINE_FINISHED, 0)//JS
-		FSM_RULE_ENTRY(s15, s4, USER_EVT_JS_EXIT_MIAN_PAGE, 0)//退出事件
-		FSM_RULE_ENTRY(s16, s4, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 0)//JS 发卡成功
-		FSM_RULE_ENTRY(s16, s2, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 1)//JS 发卡失败
-		FSM_RULE_ENTRY(s16, s9, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 2)//JS 发卡故障
-		FSM_RULE_ENTRY(s16, s8, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 3)//JS 退回首页进行吞卡
+
+		FSM_RULE_ENTRY(s11, s4, USER_EVT_JS_READ_FINISHED, 0)//JS 读卡结果返回
+		FSM_RULE_ENTRY(s11, s2, USER_EVT_JS_READ_FINISHED, 1)//JS 无卡
+		FSM_RULE_ENTRY(s11, s4, USER_EVT_JS_POSTONLINE_FINISHED, 0)//JS
+		FSM_RULE_ENTRY(s11, s4, USER_EVT_JS_EXIT_MIAN_PAGE, 0)//退出事件
+		FSM_RULE_ENTRY(s12, s4, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 0)//JS 发卡成功
+		FSM_RULE_ENTRY(s12, s2, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 1)//JS 发卡失败
+		FSM_RULE_ENTRY(s12, s9, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 2)//JS 发卡故障
+		FSM_RULE_ENTRY(s12, s8, USER_EVT_JS_ISSUE_FROM_BOX_FINISHED, 3)//JS 退回首页进行吞卡
 	END_FSM_RULE()
 
 	CCardIssuerFSM() : m_bCancelAccept(false),m_bWaitingAccept(false),
@@ -938,7 +760,7 @@ public:
 	,  m_bCancelByRFIC(false), m_devOpenFailedCount(0)
 			, m_EacQueryHost(""),m_eacQueryFlag(0), m_bUseCardnoMismatch(false), m_ICRetryTimes(1)
 			, m_bCardFromHopper(true), m_bStopUseRF(false),m_rfVendorList(""), m_bUseRFTillNext(false), m_csSwallowCardUrl(""), m_csSyncMaterialUrl("")
-			, m_quickSelfcheck(false), m_SelfcheckSleepTime(10000), m_bCancelInsert(false), m_bReturnMainPage(false)
+			, m_bCancelInsert(false), m_bReturnMainPage(false)
 		{
 			HARDWARE_ENTITY_RESET_ENTITYID(m_entCode, 0x203);
 			cmdDecodeMag2 = NULL;
@@ -986,20 +808,14 @@ public:
 	void s10_on_entry();
 	void s10_on_exit();
 	unsigned int s10_on_event(FSMEvent* event);
+
 	void s11_on_entry();
 	void s11_on_exit();
 	unsigned int s11_on_event(FSMEvent* event);
-	void s14_on_entry();
-	void s14_on_exit();
-	unsigned int s14_on_event(FSMEvent* event);
 
-	void s15_on_entry();
-	void s15_on_exit();
-	unsigned int s15_on_event(FSMEvent* event);
-
-	void s16_on_entry();
-	void s16_on_exit();
-	unsigned int s16_on_event(FSMEvent* event);
+	void s12_on_entry();
+	void s12_on_exit();
+	unsigned int s12_on_event(FSMEvent* event);
 	
 	ErrorCodeEnum OpenDevice(BYTE btOpenType, const char *pDevSN);
 	int Initial();
@@ -1047,7 +863,7 @@ public:
 		else
 			return m_eDevState;
 	}
-	int QueryCardInfo();
+	int QueryCardPos();
 
 	int UpdateLocalRunCfg(CAutoArray<int> hopperArr);
 	int SyncDataToDB(bool bMaintain[12],bool bSetCaptured=true);//同步物料计数
@@ -1094,7 +910,7 @@ private:
 		, m_bCDA, m_bIssuingExit, m_bCardIssued, m_bHasHopper[HOPPER_NUM]
 		, m_bSettingMaterial, m_hasCardWhileDevOpen, m_bCancelByRFIC
 		, m_bCardActiveNotify, m_bCardFromHopper, m_bUseCardnoMismatch, m_bStopUseRF;
-	bool m_bUseRFTillNext;//if ReadCard by RF,the following PreOnline & PostOnline always use RF till the next card(insert/issue)
+	bool m_bSupportRF, m_bUseRFTillNext;//if ReadCard by RF,the following PreOnline & PostOnline always use RF till the next card(insert/issue)
 	ErrorCodeEnum m_testResult;
 
 	int m_CardCaptured;
@@ -1125,7 +941,7 @@ private:
 	bool LoadCMBPrint(CSimpleStringA csBinPath);
 	DevCategoryInfo m_devCat;
 	bool ToRegistCaptureCardInfo();
-	bool IfUseRf();
+	void CheckSupportRf();
 	CSimpleStringA m_EacQueryHost, m_csSwallowCardUrl, m_csSyncMaterialUrl;
 	MagTracks m_magTracks;
 public:
@@ -1147,19 +963,16 @@ public:
 	int PostOnlineJS_Contact(SpReqAnsContext<CardIssuerStandService_PostOnlineJS_Req, CardIssuerStandService_PostOnlineJS_Ans>::Pointer ctx, bool& bICOK);
 	int PostOnlineJS_RF(SpReqAnsContext<CardIssuerStandService_PostOnlineJS_Req, CardIssuerStandService_PostOnlineJS_Ans>::Pointer ctx);
 
-	int ReadMag(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx, bool& bReadCardInfo, bool& bReadMag, CSimpleStringA& t2Account);
+	void ReadMag(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx);
 	int CheckCardType(CSimpleStringA cardNo, bool bReadMag, int& ICtype);
-	int PreOnlineJS_Contact(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx, bool& bICOK, bool& bContinue);
-	int PreOnlineJS_RF(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx);
+	int PreOnlineJS_ReadViaContact(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx, bool bContinue);
+	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);
 	
-	int QuickSelfCheckImpl();
-	void setQuickSelfCheck() {
-		m_quickSelfcheck = true;
-	}
 	void SetDoExitFlag(bool bFlag) { m_bDoExit = bFlag; }
 	int PowerOffIC(int type);//0:接触IC 1:非接
 	virtual void OnStateTrans(int iSrcState, int iDstState);
@@ -1169,14 +982,25 @@ public:
 		DbgWithLink(LOG_LEVEL_DEBUG, LOG_TYPE_SYSTEM)("rtaMsg=%s", rtaMsg.GetData());
 		return rtaMsg;
 	}
+	
 private:
 	bool m_bCancelInsert;
-	bool m_quickSelfcheck;
 	bool m_bDoExit;
 	bool m_bReturnMainPage;//正在处理过程中是否退到首页变量
+	ULLINT m_ullBeginTime, m_ullEndTime;
+	BYTE m_btCID/*9f27*/;
+	void FSMEventDefaultProcess(FSMEvent* pEvt, DWORD dwUserCode);
+};
+
+class ReadJSEvent : public FSMEvent
+{
 public:
-	int  m_SelfcheckSleepTime;
+	ReadJSEvent() : FSMEvent(USER_EVT_JS_READ){}
+	~ReadJSEvent() {}
+	SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx;
 };
+
+
 struct InitTask : public ITaskSp
 {
 	CCardIssuerFSM* fsm;
@@ -1297,27 +1121,15 @@ struct WaitFetchingTask : public ITaskSp
 		fsm->PostEventFIFO(e);
 	}
 };
-struct ResetTask : public ITaskSp
-{
-	CCardIssuerFSM* fsm;
-	ResetTask(CCardIssuerFSM* f) : fsm(f) {}
-	void Process()
-	{
-		ResetFinishedEvent *e = new ResetFinishedEvent();
-		e->param1 = fsm->Reset();
-		fsm->PostEventFIFO(e);
-	}
-};
-struct WriteTask : public ITaskSp
+
+struct QueryCardPosTask : public ITaskSp
 {
-	SpReqAnsContext<CardIssuerStandService_WriteTrack_Req,CardIssuerStandService_WriteTrack_Ans>::Pointer ctx;
 	CCardIssuerFSM* fsm;
-	WriteTask(CCardIssuerFSM* f) : fsm(f) {}
+	QueryCardPosTask(CCardIssuerFSM* f) : fsm(f) {}
 	void Process()
 	{
-		CardWriteFinishedEvent *e = new CardWriteFinishedEvent();
-		e->ctx = ctx;
-		e->param1 = fsm->WriteCard(ctx);
+		FSMEvent* e = new FSMEvent(USER_EVT_QUERY_CARD_POS_FINISHED);
+		e->param1 = fsm->QueryCardPos();
 		fsm->PostEventFIFO(e);
 	}
 };
@@ -1332,18 +1144,6 @@ struct DoExitWhenIdleTask : public ITaskSp
 		fsm->SetDoExitFlag(false);
 	}
 };
-struct SAMICCommandTask : public ITaskSp
-{
-	CCardIssuerFSM* fsm;
-	SpReqAnsContext<CardIssuerStandService_SAMICCommand_Req, CardIssuerStandService_SAMICCommand_Ans>::Pointer ctx;
-	SAMICCommandTask(CCardIssuerFSM* f) : fsm(f) {}
-	void Process()
-	{
-		FSMEvent* e = new FSMEvent(USER_EVT_SAM_IC_FINISHED);
-		e->param1 = fsm->SAMICCommand(ctx);
-		fsm->PostEventFIFO(e);
-	}
-};
 
 
 struct RegistCaptureCardInfoTask : public ITaskSp
@@ -1460,18 +1260,5 @@ struct InsertJSTask : public ITaskSp
 	}
 };
 
-//故障自检task
-struct QuickSelfcheckTask : public ITaskSp
-{
-	CCardIssuerFSM* fsm;
-	QuickSelfcheckTask(CCardIssuerFSM* f) : fsm(f) {}
-	void Process()
-	{
-		QuickSelfcheckFinishEvent* e = new QuickSelfcheckFinishEvent();
-		Sleep(fsm->m_SelfcheckSleepTime);
-		e->param1 = fsm->QuickSelfCheckImpl();
-		fsm->PostEventFIFO(e);
-	}
-};
 #pragma endregion JS接口 工作线程
 #endif //__CARD_ISSUER_FSM_H

+ 1 - 0
Module/mod_CardIssuerStand/CardIssuerStand_UserErrorCode.h

@@ -229,6 +229,7 @@
 #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 //卡机不支持非接
 
 //卡机流程状态报错
 #define CardIssuer_UserErrorCode_PROCESS_IDLE				0x20300402		//当前处于卡机无卡空闲状态,无法处理此请求

+ 1 - 245
Module/mod_CardIssuerStand/CardIssuerStand_client_g.h

@@ -32,6 +32,7 @@ public:
 	}
 	void OnClose(ErrorCodeEnum)
 	{
+		Dbg("session closed.");
 		bSessionClosed = true;
 	}
 	bool QuerySessionClosed()
@@ -443,104 +444,6 @@ public:
 		return Error;
 	}
 
-	ErrorCodeEnum GetMaterialCount(CardIssuerStandService_GetMaterialCount_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_GetMaterialCount, CardIssuerStandService_MethodSignature_GetMaterialCount, Buf, spAsyncWait, m_context, dwTimeout);
-		m_context.clear();
-		return ret;
-	}
-	ErrorCodeEnum GetMaterialCount(CardIssuerStandService_GetMaterialCount_Req &Req, CardIssuerStandService_GetMaterialCount_Ans &Ans, DWORD dwTimeout)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetMaterialCount(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum GetMaterialCount(CardIssuerStandService_GetMaterialCount_Req &Req, CardIssuerStandService_GetMaterialCount_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError, CSimpleString &str)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetMaterialCount(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 GetMaterialCount(CardIssuerStandService_GetMaterialCount_Req &Req, CardIssuerStandService_GetMaterialCount_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetMaterialCount(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 SetMaterialCount(CardIssuerStandService_SetMaterialCount_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_SetMaterialCount, CardIssuerStandService_MethodSignature_SetMaterialCount, Buf, spAsyncWait, m_context, dwTimeout);
-		m_context.clear();
-		return ret;
-	}
-	ErrorCodeEnum SetMaterialCount(CardIssuerStandService_SetMaterialCount_Req &Req, CardIssuerStandService_SetMaterialCount_Ans &Ans, DWORD dwTimeout)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = SetMaterialCount(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum SetMaterialCount(CardIssuerStandService_SetMaterialCount_Req &Req, CardIssuerStandService_SetMaterialCount_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError, CSimpleString &str)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = SetMaterialCount(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 SetMaterialCount(CardIssuerStandService_SetMaterialCount_Req &Req, CardIssuerStandService_SetMaterialCount_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = SetMaterialCount(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 SetIssueFlag()
 	{
 		CSmartPointer<IClientSessionFunction> pFunc = GetFunction();
@@ -800,55 +703,6 @@ public:
 		return Error;
 	}
 
-	ErrorCodeEnum GetSCIInfo(CardIssuerStandService_GetSCIInfo_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_GetSCIInfo, CardIssuerStandService_MethodSignature_GetSCIInfo, Buf, spAsyncWait, m_context, dwTimeout);
-		m_context.clear();
-		return ret;
-	}
-	ErrorCodeEnum GetSCIInfo(CardIssuerStandService_GetSCIInfo_Req &Req, CardIssuerStandService_GetSCIInfo_Ans &Ans, DWORD dwTimeout)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetSCIInfo(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum GetSCIInfo(CardIssuerStandService_GetSCIInfo_Req &Req, CardIssuerStandService_GetSCIInfo_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError, CSimpleString &str)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetSCIInfo(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 GetSCIInfo(CardIssuerStandService_GetSCIInfo_Req &Req, CardIssuerStandService_GetSCIInfo_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetSCIInfo(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 IssueEx(CardIssuerStandService_IssueEx_Req &Req, CSmartPointer<IAsynWaitSp> &spAsyncWait, DWORD dwTimeout)
 	{
 		CSmartPointer<IClientSessionFunction> pFunc = GetFunction();
@@ -1094,104 +948,6 @@ public:
 		return Error;
 	}
 
-	ErrorCodeEnum GetAddCardInfo(CardIssuerStandService_GetAddCardInfo_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_GetAddCardInfo, CardIssuerStandService_MethodSignature_GetAddCardInfo, Buf, spAsyncWait, m_context, dwTimeout);
-		m_context.clear();
-		return ret;
-	}
-	ErrorCodeEnum GetAddCardInfo(CardIssuerStandService_GetAddCardInfo_Req &Req, CardIssuerStandService_GetAddCardInfo_Ans &Ans, DWORD dwTimeout)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetAddCardInfo(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum GetAddCardInfo(CardIssuerStandService_GetAddCardInfo_Req &Req, CardIssuerStandService_GetAddCardInfo_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError, CSimpleString &str)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetAddCardInfo(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 GetAddCardInfo(CardIssuerStandService_GetAddCardInfo_Req &Req, CardIssuerStandService_GetAddCardInfo_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = GetAddCardInfo(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 PrintCardImmediately(CardIssuerStandService_PrintCardImmediately_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_PrintCardImmediately, CardIssuerStandService_MethodSignature_PrintCardImmediately, Buf, spAsyncWait, m_context, dwTimeout);
-		m_context.clear();
-		return ret;
-	}
-	ErrorCodeEnum PrintCardImmediately(CardIssuerStandService_PrintCardImmediately_Req &Req, CardIssuerStandService_PrintCardImmediately_Ans &Ans, DWORD dwTimeout)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = PrintCardImmediately(Req, spAsyncWait, dwTimeout);
-		if (Error == Error_Succeed) {
-			bool bEnd = false;
-			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
-			LOG_ASSERT(Error || bEnd);
-		}
-		return Error;
-	}
-	ErrorCodeEnum PrintCardImmediately(CardIssuerStandService_PrintCardImmediately_Req &Req, CardIssuerStandService_PrintCardImmediately_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError, CSimpleString &str)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = PrintCardImmediately(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 PrintCardImmediately(CardIssuerStandService_PrintCardImmediately_Req &Req, CardIssuerStandService_PrintCardImmediately_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
-	{
-		CSmartPointer<IAsynWaitSp> spAsyncWait;
-		ErrorCodeEnum Error = PrintCardImmediately(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 QueryCIStatus(CardIssuerStandService_QueryCIStatus_Req &Req, CSmartPointer<IAsynWaitSp> &spAsyncWait, DWORD dwTimeout)
 	{
 		CSmartPointer<IClientSessionFunction> pFunc = GetFunction();

+ 2 - 153
Module/mod_CardIssuerStand/CardIssuerStand_def_g.h

@@ -22,22 +22,17 @@ namespace CardIssuerStand {
 #define CardIssuerStandService_Method_PostOnline 7
 #define CardIssuerStandService_Method_Exit 8
 #define CardIssuerStandService_Method_Issue 9
-#define CardIssuerStandService_Method_GetMaterialCount 10
-#define CardIssuerStandService_Method_SetMaterialCount 11
 #define CardIssuerStandService_Method_SetIssueFlag 12
 #define CardIssuerStandService_Method_QueryCardInfo 14
 #define CardIssuerStandService_Method_WriteTrack 15
 #define CardIssuerStandService_Method_GetMaterialCountEx 16
 #define CardIssuerStandService_Method_SetMaterialCountEx 17
 #define CardIssuerStandService_Method_SetSomeFlag 18
-#define CardIssuerStandService_Method_GetSCIInfo 19
 #define CardIssuerStandService_Method_IssueEx 20
 #define CardIssuerStandService_Method_SAMICCommand 22
 #define CardIssuerStandService_Method_PreOnlineOnStore 27
 #define CardIssuerStandService_Method_NotifyPreonline 28
 #define CardIssuerStandService_Method_QueryCardInfoOnStore 29
-#define CardIssuerStandService_Method_GetAddCardInfo 30
-#define CardIssuerStandService_Method_PrintCardImmediately 31
 #define CardIssuerStandService_Method_QueryCIStatus 32
 #define CardIssuerStandService_Method_GetDevInfo 65535
 #define CardIssuerStandService_Method_ReadJS 40
@@ -59,22 +54,17 @@ namespace CardIssuerStand {
 #define CardIssuerStandService_MethodSignature_PostOnline 923284555
 #define CardIssuerStandService_MethodSignature_Exit -1158854104
 #define CardIssuerStandService_MethodSignature_Issue 438783077
-#define CardIssuerStandService_MethodSignature_GetMaterialCount -605917749
-#define CardIssuerStandService_MethodSignature_SetMaterialCount 870103115
 #define CardIssuerStandService_MethodSignature_SetIssueFlag 187641303
 #define CardIssuerStandService_MethodSignature_QueryCardInfo 154962579
 #define CardIssuerStandService_MethodSignature_WriteTrack -1424799012
 #define CardIssuerStandService_MethodSignature_GetMaterialCountEx 1356148904
 #define CardIssuerStandService_MethodSignature_SetMaterialCountEx -1512312761
 #define CardIssuerStandService_MethodSignature_SetSomeFlag -2033418025
-#define CardIssuerStandService_MethodSignature_GetSCIInfo 1097494981
 #define CardIssuerStandService_MethodSignature_IssueEx 1390328640
 #define CardIssuerStandService_MethodSignature_SAMICCommand 406988293
 #define CardIssuerStandService_MethodSignature_PreOnlineOnStore 158325869
 #define CardIssuerStandService_MethodSignature_NotifyPreonline -808637659
 #define CardIssuerStandService_MethodSignature_QueryCardInfoOnStore 1217447214
-#define CardIssuerStandService_MethodSignature_GetAddCardInfo 684031940
-#define CardIssuerStandService_MethodSignature_PrintCardImmediately -1976184201
 #define CardIssuerStandService_MethodSignature_QueryCIStatus -1907000703
 #define CardIssuerStandService_MethodSignature_GetDevInfo 296205965
 #define CardIssuerStandService_MethodSignature_ReadJS 1204749665
@@ -96,22 +86,17 @@ namespace CardIssuerStand {
 #define CardIssuerStandService_LogCode_PostOnline "QLR040220307"
 #define CardIssuerStandService_LogCode_Exit "QLR040220308"
 #define CardIssuerStandService_LogCode_Issue "QLR040220309"
-#define CardIssuerStandService_LogCode_GetMaterialCount "QLR040220310"
-#define CardIssuerStandService_LogCode_SetMaterialCount "QLR040220311"
 #define CardIssuerStandService_LogCode_SetIssueFlag "QLR040220312"
 #define CardIssuerStandService_LogCode_QueryCardInfo "QLR040220314"
 #define CardIssuerStandService_LogCode_WriteTrack "QLR040220315"
 #define CardIssuerStandService_LogCode_GetMaterialCountEx "QLR040220316"
 #define CardIssuerStandService_LogCode_SetMaterialCountEx "QLR040220317"
 #define CardIssuerStandService_LogCode_SetSomeFlag "QLR040220318"
-#define CardIssuerStandService_LogCode_GetSCIInfo "QLR040220319"
 #define CardIssuerStandService_LogCode_IssueEx "QLR040220320"
 #define CardIssuerStandService_LogCode_SAMICCommand "QLR040220322"
 #define CardIssuerStandService_LogCode_PreOnlineOnStore "QLR040220327"
 #define CardIssuerStandService_LogCode_NotifyPreonline "QLR040220328"
 #define CardIssuerStandService_LogCode_QueryCardInfoOnStore "QLR040220329"
-#define CardIssuerStandService_LogCode_GetAddCardInfo "QLR040220330"
-#define CardIssuerStandService_LogCode_PrintCardImmediately "QLR040220331"
 #define CardIssuerStandService_LogCode_QueryCIStatus "QLR040220332"
 #define CardIssuerStandService_LogCode_GetDevInfo "QLR040220399"
 #define CardIssuerStandService_LogCode_ReadJS "QLR040220340"
@@ -310,56 +295,6 @@ struct CardIssuerStandService_Issue_Ans
 
 };
 
-struct CardIssuerStandService_GetMaterialCount_Req
-{
-
-	void Serialize(SpBuffer &Buf)
-	{
-	}
-
-};
-
-struct CardIssuerStandService_GetMaterialCount_Ans
-{
-	int remains;
-	int captured;
-	int issued;
-	int mixed;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & remains & captured & issued & mixed;
-	}
-
-};
-
-struct CardIssuerStandService_SetMaterialCount_Req
-{
-	int remains;
-	int captured;
-	int issued;
-	bool bRemains;
-	bool bCaptured;
-	bool bIssued;
-	int mixed;
-	bool bMixed;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & remains & captured & issued & bRemains & bCaptured & bIssued & mixed & bMixed;
-	}
-
-};
-
-struct CardIssuerStandService_SetMaterialCount_Ans
-{
-
-	void Serialize(SpBuffer &Buf)
-	{
-	}
-
-};
-
 struct CardIssuerStandService_SetIssueFlag_Info
 {
 
@@ -519,29 +454,6 @@ struct CardIssuerStandService_SetSomeFlag_Ans
 
 };
 
-struct CardIssuerStandService_GetSCIInfo_Req
-{
-
-	void Serialize(SpBuffer &Buf)
-	{
-	}
-
-};
-
-struct CardIssuerStandService_GetSCIInfo_Ans
-{
-	int connected;
-	CSimpleStringA DevSN;
-	CAutoArray<int> reserved1;
-	CAutoArray<CSimpleStringA> reserved2;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & connected & DevSN & reserved1 & reserved2;
-	}
-
-};
-
 struct CardIssuerStandService_IssueEx_Req
 {
 	int hopper;
@@ -695,70 +607,6 @@ struct CardIssuerStandService_QueryCardInfoOnStore_Ans
 
 };
 
-struct CardIssuerStandService_GetAddCardInfo_Req
-{
-	int isSync;
-	CAutoArray<int> reserved1;
-	CAutoArray<int> reserved2;
-	CAutoArray<CSimpleStringA> reserved3;
-	CAutoArray<CSimpleStringA> reserved4;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & isSync & reserved1 & reserved2 & reserved3 & reserved4;
-	}
-
-};
-
-struct CardIssuerStandService_GetAddCardInfo_Ans
-{
-	int count;
-	CAutoArray<int> slot;
-	CAutoArray<CSimpleStringA> account;
-	CAutoArray<CSimpleStringA> cardSerial;
-	CAutoArray<int> reserved1;
-	CAutoArray<int> reserved2;
-	CAutoArray<CSimpleStringA> reserved3;
-	CAutoArray<CSimpleStringA> reserved4;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & count & slot & account & cardSerial & reserved1 & reserved2 & reserved3 & reserved4;
-	}
-
-};
-
-struct CardIssuerStandService_PrintCardImmediately_Req
-{
-	CSimpleStringA formFile;
-	CSimpleStringA printData;
-	CAutoArray<int> reserved1;
-	CAutoArray<int> reserved2;
-	CAutoArray<CSimpleStringA> reserved3;
-	CAutoArray<CSimpleStringA> reserved4;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & formFile & printData & reserved1 & reserved2 & reserved3 & reserved4;
-	}
-
-};
-
-struct CardIssuerStandService_PrintCardImmediately_Ans
-{
-	int ret;
-	CAutoArray<int> reserved1;
-	CAutoArray<int> reserved2;
-	CAutoArray<CSimpleStringA> reserved3;
-	CAutoArray<CSimpleStringA> reserved4;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & ret & reserved1 & reserved2 & reserved3 & reserved4;
-	}
-
-};
-
 struct CardIssuerStandService_QueryCIStatus_Req
 {
 	CAutoArray<int> reserved1;
@@ -815,6 +663,7 @@ struct CardIssuerStandService_GetDevInfo_Ans
 
 struct CardIssuerStandService_ReadJS_Req
 {
+	int mode;
 	CSimpleStringA aid;
 	CSimpleStringA businessData;
 	CAutoArray<int> reserved1;
@@ -822,7 +671,7 @@ struct CardIssuerStandService_ReadJS_Req
 
 	void Serialize(SpBuffer &Buf)
 	{
-		auto & buf = Buf & aid & businessData & reserved1 & reserved2;
+		auto & buf = Buf & mode & aid & businessData & reserved1 & reserved2;
 	}
 
 };

+ 0 - 15
Module/mod_CardIssuerStand/CardIssuerStand_msg_g.h

@@ -10,10 +10,8 @@
 
 namespace CardIssuerStand {
 #define eMsg_FetchCard 0
-#define eMsg_SCIConnect 1
 
 #define eMsgSig_FetchCard 1110804794
-#define eMsgSig_SCIConnect 721962700
 
 struct FetchCard
 {
@@ -28,18 +26,5 @@ struct FetchCard
 
 ///////////////////////////
 
-struct SCIConnect
-{
-	int status;
-
-	void Serialize(SpBuffer &Buf)
-	{
-		auto & buf = Buf & status;
-	}
-
-};
-
-///////////////////////////
-
 } // namespace CardIssuerStand
 #endif // __CARDISSUERSTAND_MSG_G_H

+ 0 - 135
Module/mod_CardIssuerStand/CardIssuerStand_server_g.h

@@ -100,20 +100,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_GetMaterialCount:
-			if (dwSignature == CardIssuerStandService_MethodSignature_GetMaterialCount) {
-				bOverlap = true;
-			} else {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
-		case CardIssuerStandService_Method_SetMaterialCount:
-			if (dwSignature == CardIssuerStandService_MethodSignature_SetMaterialCount) {
-				bOverlap = true;
-			} else {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_SetIssueFlag:
 			if (dwSignature == CardIssuerStandService_MethodSignature_SetIssueFlag) {
 				bOverlap = true;
@@ -156,13 +142,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_GetSCIInfo:
-			if (dwSignature == CardIssuerStandService_MethodSignature_GetSCIInfo) {
-				bOverlap = true;
-			} else {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_IssueEx:
 			if (dwSignature == CardIssuerStandService_MethodSignature_IssueEx) {
 				bOverlap = true;
@@ -198,20 +177,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_GetAddCardInfo:
-			if (dwSignature == CardIssuerStandService_MethodSignature_GetAddCardInfo) {
-				bOverlap = true;
-			} else {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
-		case CardIssuerStandService_Method_PrintCardImmediately:
-			if (dwSignature == CardIssuerStandService_MethodSignature_PrintCardImmediately) {
-				bOverlap = true;
-			} else {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_QueryCIStatus:
 			if (dwSignature == CardIssuerStandService_MethodSignature_QueryCIStatus) {
 				bOverlap = true;
@@ -343,16 +308,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_GetMaterialCount:
-			if (dwSignature != CardIssuerStandService_MethodSignature_GetMaterialCount) {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
-		case CardIssuerStandService_Method_SetMaterialCount:
-			if (dwSignature != CardIssuerStandService_MethodSignature_SetMaterialCount) {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_SetIssueFlag:
 			if (dwSignature != CardIssuerStandService_MethodSignature_SetIssueFlag) {
 				Error = Error_MethodSignatureFailed;
@@ -383,11 +338,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_GetSCIInfo:
-			if (dwSignature != CardIssuerStandService_MethodSignature_GetSCIInfo) {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_IssueEx:
 			if (dwSignature != CardIssuerStandService_MethodSignature_IssueEx) {
 				Error = Error_MethodSignatureFailed;
@@ -413,16 +363,6 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
-		case CardIssuerStandService_Method_GetAddCardInfo:
-			if (dwSignature != CardIssuerStandService_MethodSignature_GetAddCardInfo) {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
-		case CardIssuerStandService_Method_PrintCardImmediately:
-			if (dwSignature != CardIssuerStandService_MethodSignature_PrintCardImmediately) {
-				Error = Error_MethodSignatureFailed;
-			}
-			break;
 		case CardIssuerStandService_Method_QueryCIStatus:
 			if (dwSignature != CardIssuerStandService_MethodSignature_QueryCIStatus) {
 				Error = Error_MethodSignatureFailed;
@@ -530,16 +470,6 @@ public:
 	/// override by user
 	}
 
-	virtual void Handle_GetMaterialCount(SpReqAnsContext<CardIssuerStandService_GetMaterialCount_Req, CardIssuerStandService_GetMaterialCount_Ans>::Pointer ctx)
-	{
-	/// override by user
-	}
-
-	virtual void Handle_SetMaterialCount(SpReqAnsContext<CardIssuerStandService_SetMaterialCount_Req, CardIssuerStandService_SetMaterialCount_Ans>::Pointer ctx)
-	{
-	/// override by user
-	}
-
 	virtual void Handle_SetIssueFlag(SpOnewayCallContext<CardIssuerStandService_SetIssueFlag_Info>::Pointer ctx)
 	{
 	/// override by user
@@ -570,11 +500,6 @@ public:
 	/// override by user
 	}
 
-	virtual void Handle_GetSCIInfo(SpReqAnsContext<CardIssuerStandService_GetSCIInfo_Req, CardIssuerStandService_GetSCIInfo_Ans>::Pointer ctx)
-	{
-	/// override by user
-	}
-
 	virtual void Handle_IssueEx(SpReqAnsContext<CardIssuerStandService_IssueEx_Req, CardIssuerStandService_IssueEx_Ans>::Pointer ctx)
 	{
 	/// override by user
@@ -600,16 +525,6 @@ public:
 	/// override by user
 	}
 
-	virtual void Handle_GetAddCardInfo(SpReqAnsContext<CardIssuerStandService_GetAddCardInfo_Req, CardIssuerStandService_GetAddCardInfo_Ans>::Pointer ctx)
-	{
-	/// override by user
-	}
-
-	virtual void Handle_PrintCardImmediately(SpReqAnsContext<CardIssuerStandService_PrintCardImmediately_Req, CardIssuerStandService_PrintCardImmediately_Ans>::Pointer ctx)
-	{
-	/// override by user
-	}
-
 	virtual void Handle_QueryCIStatus(SpReqAnsContext<CardIssuerStandService_QueryCIStatus_Req, CardIssuerStandService_QueryCIStatus_Ans>::Pointer ctx)
 	{
 	/// override by user
@@ -776,26 +691,6 @@ public:
 						Handle_Issue(ctx);
 					}
 					break;
-				case CardIssuerStandService_Method_GetMaterialCount:
-					{
-						SpReqAnsContext<CardIssuerStandService_GetMaterialCount_Req,CardIssuerStandService_GetMaterialCount_Ans>::Pointer ctx;
-						ctx.Attach(new SpReqAnsContext<CardIssuerStandService_GetMaterialCount_Req,CardIssuerStandService_GetMaterialCount_Ans>(pTransactionContext));
-						SpBuffer2Object(Buf, ctx->Req);
-						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
-						Handle_GetMaterialCount(ctx);
-					}
-					break;
-				case CardIssuerStandService_Method_SetMaterialCount:
-					{
-						SpReqAnsContext<CardIssuerStandService_SetMaterialCount_Req,CardIssuerStandService_SetMaterialCount_Ans>::Pointer ctx;
-						ctx.Attach(new SpReqAnsContext<CardIssuerStandService_SetMaterialCount_Req,CardIssuerStandService_SetMaterialCount_Ans>(pTransactionContext));
-						SpBuffer2Object(Buf, ctx->Req);
-						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
-						Handle_SetMaterialCount(ctx);
-					}
-					break;
 				case CardIssuerStandService_Method_SetIssueFlag:
 					{
 						SpOnewayCallContext<CardIssuerStandService_SetIssueFlag_Info>::Pointer ctx;
@@ -856,16 +751,6 @@ public:
 						Handle_SetSomeFlag(ctx);
 					}
 					break;
-				case CardIssuerStandService_Method_GetSCIInfo:
-					{
-						SpReqAnsContext<CardIssuerStandService_GetSCIInfo_Req,CardIssuerStandService_GetSCIInfo_Ans>::Pointer ctx;
-						ctx.Attach(new SpReqAnsContext<CardIssuerStandService_GetSCIInfo_Req,CardIssuerStandService_GetSCIInfo_Ans>(pTransactionContext));
-						SpBuffer2Object(Buf, ctx->Req);
-						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
-						Handle_GetSCIInfo(ctx);
-					}
-					break;
 				case CardIssuerStandService_Method_IssueEx:
 					{
 						SpReqAnsContext<CardIssuerStandService_IssueEx_Req,CardIssuerStandService_IssueEx_Ans>::Pointer ctx;
@@ -916,26 +801,6 @@ public:
 						Handle_QueryCardInfoOnStore(ctx);
 					}
 					break;
-				case CardIssuerStandService_Method_GetAddCardInfo:
-					{
-						SpReqAnsContext<CardIssuerStandService_GetAddCardInfo_Req,CardIssuerStandService_GetAddCardInfo_Ans>::Pointer ctx;
-						ctx.Attach(new SpReqAnsContext<CardIssuerStandService_GetAddCardInfo_Req,CardIssuerStandService_GetAddCardInfo_Ans>(pTransactionContext));
-						SpBuffer2Object(Buf, ctx->Req);
-						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
-						Handle_GetAddCardInfo(ctx);
-					}
-					break;
-				case CardIssuerStandService_Method_PrintCardImmediately:
-					{
-						SpReqAnsContext<CardIssuerStandService_PrintCardImmediately_Req,CardIssuerStandService_PrintCardImmediately_Ans>::Pointer ctx;
-						ctx.Attach(new SpReqAnsContext<CardIssuerStandService_PrintCardImmediately_Req,CardIssuerStandService_PrintCardImmediately_Ans>(pTransactionContext));
-						SpBuffer2Object(Buf, ctx->Req);
-						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
-						Handle_PrintCardImmediately(ctx);
-					}
-					break;
 				case CardIssuerStandService_Method_QueryCIStatus:
 					{
 						SpReqAnsContext<CardIssuerStandService_QueryCIStatus_Req,CardIssuerStandService_QueryCIStatus_Ans>::Pointer ctx;

+ 3 - 8
Module/mod_CardIssuerStand/mod_cardissuerStand.cpp

@@ -92,10 +92,7 @@ void CardIssuerServerSession::Handle_QueryCardInfo(SpReqAnsContext<CardIssuerSta
 }
 void CardIssuerServerSession::Handle_WriteTrack(SpReqAnsContext<CardIssuerStandService_WriteTrack_Req, CardIssuerStandService_WriteTrack_Ans>::Pointer ctx)
 {
-	LOG_FUNCTION();
-	DbgToBeidou(ctx->link, __FUNCTION__)();
-	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("WriteTrack");
-	m_pEntity->WriteTrack(ctx);
+	ctx->Answer(Error_NotImpl);
 }
 void CardIssuerServerSession::Handle_GetMaterialCountEx(SpReqAnsContext<CardIssuerStandService_GetMaterialCountEx_Req, CardIssuerStandService_GetMaterialCountEx_Ans>::Pointer ctx)
 {
@@ -127,9 +124,7 @@ void CardIssuerServerSession::Handle_IssueEx(SpReqAnsContext<CardIssuerStandServ
 }
 void CardIssuerServerSession::Handle_SAMICCommand(SpReqAnsContext<CardIssuerStandService_SAMICCommand_Req, CardIssuerStandService_SAMICCommand_Ans>::Pointer ctx)
 {
-	DbgToBeidou(ctx->link, __FUNCTION__)();
-	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("SAMICCommand");
-	m_pEntity->SAMICCommand(ctx);
+	ctx->Answer(Error_NotImpl);
 }
 void CardIssuerServerSession::Handle_QueryCIStatus(SpReqAnsContext<CardIssuerStandService_QueryCIStatus_Req, CardIssuerStandService_QueryCIStatus_Ans>::Pointer ctx)
 {
@@ -151,7 +146,7 @@ void CardIssuerServerSession::Handle_ReadJS(SpReqAnsContext<CardIssuerStandServi
 {
 	LOG_FUNCTION();
 	DbgToBeidou(ctx->link, __FUNCTION__)();
-	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke ReadJS req.aid=%s, req.business=%s", ctx->Req.aid.GetData(), ctx->Req.businessData.GetData());
+	DbgWithLink(LOG_LEVEL_INFO, ctx->link.checkEmpty() ? LOG_TYPE_SYSTEM : LOG_TYPE_USER).setAPI(__FUNCTION__)("Invoke ReadJS req.aid=%s, req.mode=%d, req.business=%s", ctx->Req.aid.GetData(), ctx->Req.mode, ctx->Req.businessData.GetData());
 	m_pEntity->ReadJS(ctx);
 }
 void CardIssuerServerSession::Handle_PostOnlineJS(SpReqAnsContext<CardIssuerStandService_PostOnlineJS_Req, CardIssuerStandService_PostOnlineJS_Ans>::Pointer ctx)

+ 32 - 85
Module/mod_CardIssuerStand/mod_cardissuerStand.h

@@ -207,16 +207,19 @@ public:
 		}
 		else
 		{
-			ctx->Ans.position = m_fsm.QueryCardInfo();
+			int ret = m_fsm.QueryCardPos();
+			if (ret != 1)//query hardware ok
+				ctx->Ans.position = ret;
+			else
+			{
+				if (_stricmp(m_fsm.GetCurrStateName(), "Hold") == 0)
+					ctx->Ans.position = 2;
+				else
+					ctx->Ans.position = 0;
+			}
 			ctx->Answer(Error_Succeed);
 		}
 	}
-	void WriteTrack(SpReqAnsContext<CardIssuerStandService_WriteTrack_Req, CardIssuerStandService_WriteTrack_Ans>::Pointer ctx)
-	{
-		CardWriteEvent *pEvt = new CardWriteEvent();
-		pEvt->ctx = ctx;
-		m_fsm.PostEventFIFO(pEvt);
-	}
 	void SetIssueFlag(SpOnewayCallContext<CardIssuerStandService_SetIssueFlag_Info>::Pointer ctx){ m_fsm.FrontSetIssueFlag(true); }
 	void GetMaterialCountEx(SpReqAnsContext<CardIssuerStandService_GetMaterialCountEx_Req, CardIssuerStandService_GetMaterialCountEx_Ans>::Pointer ctx)
 	{
@@ -284,13 +287,6 @@ public:
 			m_fsm.PostEventFIFO(pEvt);
 		}
 	}
-	void SAMICCommand(SpReqAnsContext<CardIssuerStandService_SAMICCommand_Req, CardIssuerStandService_SAMICCommand_Ans>::Pointer ctx)
-	{
-		LOG_FUNCTION();
-		SAMICCommandEvent *pEvt = new SAMICCommandEvent();
-		pEvt->ctx = ctx;
-		m_fsm.PostEventFIFO(pEvt);
-	}
 	void GetDevInfo(SpReqAnsContext<CardIssuerStandService_GetDevInfo_Req, CardIssuerStandService_GetDevInfo_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
@@ -329,103 +325,66 @@ public:
 	void ReadJS(SpReqAnsContext<CardIssuerStandService_ReadJS_Req, CardIssuerStandService_ReadJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag())
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_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).setResultCode(m_fsm.getRTACode(errCode))("ReadJS req is unhandled ,CurrState=%d", state);
-			ctx->Answer(Error_Unexpect, errCode);
-		}
-		else {
+		else
+		{
 			ReadJSEvent* pEvt = new ReadJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
 		}
-
 	}
 	void PostOnlineJS(SpReqAnsContext<CardIssuerStandService_PostOnlineJS_Req, CardIssuerStandService_PostOnlineJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag())
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_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).setResultCode(m_fsm.getRTACode(errCode))("PostOnlineJS req is unhandled ,CurrState=%d", state);
-			ctx->Answer(Error_Unexpect, errCode);
-		}
-		else {
+		else
+		{
 			PostOnlineJSEvent* pEvt = new PostOnlineJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
 		}
-
 	}
 	void EjectJS(SpReqAnsContext<CardIssuerStandService_EjectJS_Req, CardIssuerStandService_EjectJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag()) 
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_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).setResultCode(m_fsm.getRTACode(errCode))("EjectJS req is unhandled ,CurrState=%d", state);
-			ctx->Answer(Error_Unexpect, errCode);
-		}
-		else {
+		else
+		{
 			EjectJSEvent* e = new EjectJSEvent();
 			e->ctx = ctx;
 			m_fsm.PostEventFIFO(e);
 		}
-
 	}
 	void CaptureJS(SpReqAnsContext<CardIssuerStandService_CaptureJS_Req, CardIssuerStandService_CaptureJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag()) 
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_UserErrorCode_DevOpen_Failed);
-		}
-		else if (_stricmp(m_fsm.GetCurrStateName(), "Hold") == 0 || _stricmp(m_fsm.GetCurrStateName(), "Idle") == 0) {
+		else
+		{
 			CaptureJSEvent* e = new CaptureJSEvent();
 			e->ctx = ctx;
 			m_fsm.PostEventFIFO(e);
 		}
-		else {
-			DWORD errCode = m_fsm.GetFsmStateErrCode();
-			int state = m_fsm.GetFSMState();
-			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode(m_fsm.getRTACode(errCode))("CaptureJS req is unhandled ,CurrState=%d", state);
-			ctx->Answer(Error_Unexpect, errCode);
-		}
-
 	}
 	void QueryHasCardJS(SpReqAnsContext<CardIssuerStandService_QueryHasCardJS_Req, CardIssuerStandService_QueryHasCardJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag())
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_UserErrorCode_DevOpen_Failed);
-		}
-		else {
+		else
 			m_fsm.QueryHasCardJS(ctx);
-		}
-
 	}
 	void IssueFromBoxJS(SpReqAnsContext<CardIssuerStandService_IssueFromBoxJS_Req, CardIssuerStandService_IssueFromBoxJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag()) 
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_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).setResultCode(m_fsm.getRTACode(errCode))("IssueFromBoxJS req is unhandled ,CurrState=%d", state);
-			ctx->Answer(Error_Unexpect, errCode);
-		}
-		else {
+		else
+		{
 			IssueFromBoxJSEvent* pEvt = new IssueFromBoxJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
@@ -434,32 +393,20 @@ public:
 	void InsertJS(SpReqAnsContext<CardIssuerStandService_InsertJS_Req, CardIssuerStandService_InsertJS_Ans>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
+		if (!m_fsm.GetDevInitFlag())
 			ctx->Answer(Error_DevNotAvailable, CardIssuer_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).setResultCode(m_fsm.getRTACode(errCode))("InsertJS req is unhandled ,CurrState=%d", state);
-			ctx->Answer(Error_Unexpect, errCode);
-		}
-		else {
+		else
+		{
 			InsertJSEvent* pEvt = new InsertJSEvent();
 			pEvt->ctx = ctx;
 			m_fsm.PostEventFIFO(pEvt);
 		}
-
 	}
 	void CancelInsertJS(SpOnewayCallContext<CardIssuerStandService_CancelInsertJS_Info>::Pointer ctx)
 	{
 		LOG_FUNCTION();
-		if (!m_fsm.GetDevInitFlag()) {
-			LogWarn(Severity_Middle, Error_DevNotAvailable, CardIssuer_UserErrorCode_DevOpen_Failed, "CancelInsertJS but DevOpen failed.");
-		}
-		else {
-			CancelInsertJSEvent* evt = new CancelInsertJSEvent();
-			m_fsm.PostEventFIFO(evt);
-		}
+		CancelInsertJSEvent* evt = new CancelInsertJSEvent();
+		m_fsm.PostEventFIFO(evt);
 	}
 
 protected:

+ 2 - 114
Module/mod_CardReadAdapter/CardReadAdapterFSM.cpp

@@ -271,15 +271,6 @@ unsigned int CCardReadAdapterFSM::s2_on_event(FSMEvent* pEvt)
 		GetEntityBase()->GetFunction()->PostThreadPoolTask(task);
 		break;
 	}
-	case USER_EVT_GET_SCI_INFO:
-	{
-		pEvt->SetHandled();
-		GetSCIInfoEvent* gsie = dynamic_cast<GetSCIInfoEvent*>(pEvt);
-		GetSCIInfoTask* task = new GetSCIInfoTask(this);
-		task->ctx = gsie->ctx;
-		GetEntityBase()->GetFunction()->PostThreadPoolTask(task);
-	}
-		break;
 	case USER_EVT_OPEN_SAFELOCK:
 	{
 		pEvt->SetHandled();
@@ -2143,53 +2134,7 @@ int CCardReadAdapterFSM::SetMaterialCount(SpReqAnsContext<CardReadAdapterService
 	}
 	return 0;
 }
-int CCardReadAdapterFSM::GetSCIInfo(SpReqAnsContext<CardReadAdapterService_GetSCIInfo_Req, CardReadAdapterService_GetSCIInfo_Ans>::Pointer ctx)
-{
-	if (IsCardIssuerSessionOK())
-	{
-		if (!IsCardIssuerStore()) {
-			ErrorCodeEnum eErr = Error_Unexpect;
-			CardIssuerStandService_GetSCIInfo_Req req;
-			CardIssuerStandService_GetSCIInfo_Ans ans;
-			eErr = (*m_pCardIssuer)(EntityResource::getLink().upgradeLink())->GetSCIInfo(req, ans, 15000);
-			if (eErr == Error_Succeed)
-			{
-				ctx->Ans.connected = ans.connected;
-				ctx->Ans.DevSN = ans.DevSN;
-				ctx->Ans.reserved1.Copy(ans.reserved1);
-				ctx->Ans.reserved2.Copy(ans.reserved2);
-			}
-			else {
-				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("GetSCIInfo, CardIssuerStand GetSCIInfo failed return:%d", eErr);
-			}
-			ctx->Answer(eErr);
-		}
-		else {
-			ErrorCodeEnum eErr = Error_Unexpect;
-			CardIssuerStoreService_GetSCIInfo_Req req;
-			CardIssuerStoreService_GetSCIInfo_Ans ans;
-			eErr = (*m_pCardIssuerStore)(EntityResource::getLink().upgradeLink())->GetSCIInfo(req, ans, 15000);
-			if (eErr == Error_Succeed)
-			{
-				ctx->Ans.connected = ans.connected;
-				ctx->Ans.DevSN = ans.DevSN;
-				ctx->Ans.reserved1.Copy(ans.reserved1);
-				ctx->Ans.reserved2.Copy(ans.reserved2);
-			}
-			else {
-				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("GetSCIInfo, CardIssuerStore GetSCIInfo failed return:%d", eErr);
-			}
-			ctx->Answer(eErr);
-		}
 
-	}
-	else
-	{
-		DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("GetSCIInfo is err, session is not ok");
-		ctx->Answer(Error_Unexpect);
-	}
-	return 0;
-}
 int CCardReadAdapterFSM::OpenSafeLock(SpReqAnsContext<CardReadAdapterService_OpenSafeLock_Req, CardReadAdapterService_OpenSafeLock_Ans>::Pointer ctx)
 {
 	LOG_FUNCTION();
@@ -2512,35 +2457,7 @@ int CCardReadAdapterFSM::GetAddCardInfo(SpReqAnsContext<CardReadAdapterService_G
 	LOG_FUNCTION();
 	if (IsCardIssuerSessionOK())
 	{
-		if (!IsCardIssuerStore()) {
-			DWORD dwUserErrorCode = 0;
-			ErrorCodeEnum eErr = Error_Unexpect;
-			CardIssuerStandService_GetAddCardInfo_Req req;
-			CardIssuerStandService_GetAddCardInfo_Ans ans;
-			req.isSync = ctx->Req.isSync;
-			req.reserved1.Copy(ctx->Req.reserved1);
-			req.reserved2.Copy(ctx->Req.reserved2);
-			req.reserved3.Copy(ctx->Req.reserved3);
-			req.reserved4.Copy(ctx->Req.reserved4);
-			eErr = (*m_pCardIssuer)(EntityResource::getLink().upgradeLink())->GetAddCardInfo(req, ans, 10000, dwUserErrorCode);
-			if (eErr == Error_Succeed)
-			{
-				ctx->Ans.account = ans.account;
-				ctx->Ans.cardSerial = ans.cardSerial;
-				ctx->Ans.count = ans.count;
-				ctx->Ans.slot = ans.slot;
-				ctx->Ans.reserved1.Copy(ans.reserved1);
-				ctx->Ans.reserved2.Copy(ans.reserved2);
-				ctx->Ans.reserved3.Copy(ans.reserved3);
-				ctx->Ans.reserved4.Copy(ans.reserved4);
-				ctx->Answer(Error_Succeed);
-			}
-			else {
-				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("GetAddCardInfo, CardIssuerStand GetAddCardInfo failed return:%d,%x", eErr, dwUserErrorCode);
-				ctx->Answer(eErr, dwUserErrorCode);
-			}
-		}
-		else {
+		if (IsCardIssuerStore()) {
 			DWORD dwUserErrorCode = 0;
 			ErrorCodeEnum eErr = Error_Unexpect;
 			CardIssuerStoreService_GetAddCardInfo_Req req;
@@ -2675,36 +2592,7 @@ int CCardReadAdapterFSM::PrintCardIm(SpReqAnsContext<CardReadAdapterService_Prin
 	LOG_FUNCTION();
 	if (IsCardIssuerSessionOK())
 	{
-		if (!IsCardIssuerStore()) {
-			ErrorCodeEnum eErr = Error_Unexpect;
-			CardIssuerStandService_PrintCardImmediately_Req req;
-			CardIssuerStandService_PrintCardImmediately_Ans ans;
-			req.formFile = ctx->Req.formFile;
-			req.printData = ctx->Req.printData;
-			req.reserved1.Copy(ctx->Req.reserved1);
-			req.reserved2.Copy(ctx->Req.reserved2);
-			req.reserved3.Copy(ctx->Req.reserved3);
-			req.reserved4.Copy(ctx->Req.reserved4);
-			int timeout = 60000;
-			if (ctx->Req.reserved1.GetCount() > 0 && ctx->Req.reserved1[0] > 50000 && ctx->Req.reserved1[0] < 200000)
-				timeout = ctx->Req.reserved1[0];
-			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("PrintCardIm, timeout:%d", timeout);
-			eErr = (*m_pCardIssuer)(EntityResource::getLink().upgradeLink())->PrintCardImmediately(req, ans, timeout);
-			if (eErr == Error_Succeed)
-			{
-				ctx->Ans.ret = ans.ret;
-				ctx->Ans.reserved1.Copy(ans.reserved1);
-				ctx->Ans.reserved2.Copy(ans.reserved2);
-				ctx->Ans.reserved3.Copy(ans.reserved3);
-				ctx->Ans.reserved4.Copy(ans.reserved4);
-			}
-			else {
-				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("PrintCardImmediately, CardIssuerStand PrintCardImmediately failed return:%d", eErr);
-			}
-			ctx->Answer(eErr);
-			return 0;
-		}
-		else {
+		if (IsCardIssuerStore()){
 			ErrorCodeEnum eErr = Error_Unexpect;
 			CardIssuerStoreService_PrintCardImmediately_Req req;
 			CardIssuerStoreService_PrintCardImmediately_Ans ans;

+ 1 - 13
Module/mod_CardReadAdapter/CardReadAdapterFSM.h

@@ -789,7 +789,6 @@ public:
 	void DoExit();
 	int GetMaterialCount(SpReqAnsContext<CardReadAdapterService_GetMaterialCount_Req, CardReadAdapterService_GetMaterialCount_Ans>::Pointer ctx);
 	int SetMaterialCount(SpReqAnsContext<CardReadAdapterService_SetMaterialCount_Req, CardReadAdapterService_SetMaterialCount_Ans>::Pointer ctx);
-	int GetSCIInfo(SpReqAnsContext<CardReadAdapterService_GetSCIInfo_Req, CardReadAdapterService_GetSCIInfo_Ans>::Pointer ctx);
 	int OpenSafeLock(SpReqAnsContext<CardReadAdapterService_OpenSafeLock_Req, CardReadAdapterService_OpenSafeLock_Ans>::Pointer ctx);
 	int MagTransferInit(SpReqAnsContext<CardReadAdapterService_MagTransferInit_Req, CardReadAdapterService_MagTransferInit_Ans>::Pointer ctx);
 	int QueryConnInfo(SpReqAnsContext<CardReadAdapterService_QueryConnInfo_Req, CardReadAdapterService_QueryConnInfo_Ans>::Pointer ctx);
@@ -1117,18 +1116,7 @@ struct SetMaterialCountTask : public ITaskSp
 		fsm->PostEventFIFO(e);
 	}
 };
-struct GetSCIInfoTask : public ITaskSp
-{
-	CCardReadAdapterFSM* fsm;
-	SpReqAnsContext<CardReadAdapterService_GetSCIInfo_Req, CardReadAdapterService_GetSCIInfo_Ans>::Pointer ctx;
-	GetSCIInfoTask(CCardReadAdapterFSM* f) : fsm(f) {}
-	void Process()
-	{
-		FSMEvent *e = new FSMEvent(USER_EVT_GET_SCI_INFO_FINISHED);
-		e->param1 = fsm->GetSCIInfo(ctx);
-		fsm->PostEventFIFO(e);
-	}
-};
+
 struct OpenSafeLockTask : public ITaskSp
 {
 	CCardReadAdapterFSM* fsm;

+ 0 - 8
Module/mod_vtmloader/VtmLoaderFSM.cpp

@@ -2158,14 +2158,6 @@ void CVtmLoaderFSM::CheckDeviceBaseEntity(SpReqAnsContext<VtmLoaderService_Check
 	CEntityRunInfo runInfo;
 
 	CSimpleStringA csEntityName = ctx->Req.entityName;
-	//oiltmp@20240415 to be delete after x months
-	if (ctx->Req.entityName.Compare("CardIssuer") == 0)
-	{
-		if (m_sysInfo.strMachineType.Compare("RVC.CardStore") == 0 || m_sysInfo.strMachineType.Compare("RVC.CardPrinter") == 0)
-			csEntityName = "CardIssuerStore";
-		else
-			csEntityName = "CardIssuerStand";
-	}
 	DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("csEntityName:[%s]", csEntityName.GetData());
 	//to check entity state
 	ErrorCodeEnum eErrCode = m_pEntity->GetFunction()->GetEntityRunInfo(csEntityName.GetData(), runInfo);

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません