Forráskód Böngészése

#IQRV #comment [Healthmanager] 添加控制终端的接口

gifur 4 éve
szülő
commit
19579afeb2

+ 28 - 0
Module/mod_healthmanager/HealthManager_client_g.h

@@ -252,6 +252,34 @@ public:
 		return Error;
 	}
 
+	ErrorCodeEnum ControlTerminalLife(HealthManagerService_ControlTerminalLife_Req &Req, CSmartPointer<IAsynWaitSp> &spAsyncWait, DWORD dwTimeout)
+	{
+		CSmartPointer<IClientSessionFunction> pFunc = GetFunction();
+		CAutoBuffer Buf = SpObject2Buffer(Req);
+		return pFunc->AsyncRequest(HealthManagerService_Method_ControlTerminalLife, HealthManagerService_MethodSignature_ControlTerminalLife, Buf, spAsyncWait, dwTimeout);
+	}
+	ErrorCodeEnum ControlTerminalLife(HealthManagerService_ControlTerminalLife_Req &Req, HealthManagerService_ControlTerminalLife_Ans &Ans, DWORD dwTimeout)
+	{
+		CSmartPointer<IAsynWaitSp> spAsyncWait;
+		ErrorCodeEnum Error = ControlTerminalLife(Req, spAsyncWait, dwTimeout);
+		if (Error == Error_Succeed) {
+			bool bEnd = false;
+			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout);
+			LOG_ASSERT(Error || bEnd);
+		}
+		return Error;
+	}
+	ErrorCodeEnum ControlTerminalLife(HealthManagerService_ControlTerminalLife_Req &Req, HealthManagerService_ControlTerminalLife_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError)
+	{
+		CSmartPointer<IAsynWaitSp> spAsyncWait;
+		ErrorCodeEnum Error = ControlTerminalLife(Req, spAsyncWait, dwTimeout);
+		if (Error == Error_Succeed) {
+			bool bEnd = false;
+			Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout);
+			LOG_ASSERT(Error || bEnd);
+		}
+		return Error;
+	}
 
 	bool SafeDelete()
 	{

+ 33 - 0
Module/mod_healthmanager/HealthManager_def_g.h

@@ -19,6 +19,7 @@ namespace HealthManager {
 #define HealthManagerService_Method_GetNetworkState 4
 #define HealthManagerService_Method_QueryHardwareInfo 5
 #define HealthManagerService_Method_ReadCenterConfigStr 6
+#define HealthManagerService_Method_ControlTerminalLife 7
 
 #define HealthManagerService_MethodSignature_EnterState 1738606772
 #define HealthManagerService_MethodSignature_ExitState -1969000942
@@ -27,6 +28,7 @@ namespace HealthManager {
 #define HealthManagerService_MethodSignature_GetNetworkState -947427417
 #define HealthManagerService_MethodSignature_QueryHardwareInfo 1308469188
 #define HealthManagerService_MethodSignature_ReadCenterConfigStr 1222672990
+#define HealthManagerService_MethodSignature_ControlTerminalLife 397251033
 
 struct HealthManagerService_EnterState_Req
 {
@@ -203,6 +205,37 @@ struct HealthManagerService_ReadCenterConfigStr_Ans
 
 };
 
+struct HealthManagerService_ControlTerminalLife_Req
+{
+	int cmdType;
+	int reason;
+	int reserved1;
+	int reserved2;
+	CSimpleStringA reserved3;
+	CSimpleStringA reserved4;
+
+	void Serialize(SpBuffer &Buf)
+	{
+		auto & buf = Buf & cmdType & reason & reserved1 & reserved2 & reserved3 & reserved4;
+	}
+
+};
+
+struct HealthManagerService_ControlTerminalLife_Ans
+{
+	int retCode;
+	int reserved1;
+	int reserved2;
+	CSimpleStringA reserved3;
+	CSimpleStringA reserved4;
+
+	void Serialize(SpBuffer &Buf)
+	{
+		auto & buf = Buf & retCode & reserved1 & reserved2 & reserved3 & reserved4;
+	}
+
+};
+
 
 ///////////////////////////
 

+ 33 - 2
Module/mod_healthmanager/HealthManager_server_g.h

@@ -12,9 +12,15 @@ namespace HealthManager {
 class HealthManagerService_ServerSessionBase : public CServerSessionBase
 {
 public:
-	HealthManagerService_ServerSessionBase() { }
+	HealthManagerService_ServerSessionBase()
+	{
+		/// override by user
+	}
 
-	virtual ~HealthManagerService_ServerSessionBase() { }
+	virtual ~HealthManagerService_ServerSessionBase()
+	{
+		/// override by user
+	}
 
 	virtual bool IsExclusive() { return false; }
 
@@ -73,6 +79,13 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
+		case HealthManagerService_Method_ControlTerminalLife:
+			if (dwSignature == HealthManagerService_MethodSignature_ControlTerminalLife) {
+				bOverlap = true;
+			} else {
+				Error = Error_MethodSignatureFailed;
+			}
+			break;
 		default:
 			Error = Error_MethodNotFound;
 			break;
@@ -119,6 +132,11 @@ public:
 				Error = Error_MethodSignatureFailed;
 			}
 			break;
+		case HealthManagerService_Method_ControlTerminalLife:
+			if (dwSignature != HealthManagerService_MethodSignature_ControlTerminalLife) {
+				Error = Error_MethodSignatureFailed;
+			}
+			break;
 		default:
 			Error = Error_MethodNotFound;
 			break;
@@ -161,6 +179,11 @@ public:
 	/// override by user
 	}
 
+	virtual void Handle_ControlTerminalLife(SpReqAnsContext<HealthManagerService_ControlTerminalLife_Req, HealthManagerService_ControlTerminalLife_Ans>::Pointer ctx)
+	{
+	/// override by user
+	}
+
 	virtual void OnRequest(CSmartPointer<ITransactionContext> pTransactionContext)
 	{
 		CAutoBuffer Buf;
@@ -233,6 +256,14 @@ public:
 						Handle_ReadCenterConfigStr(ctx);
 					}
 					break;
+				case HealthManagerService_Method_ControlTerminalLife:
+					{
+						SpReqAnsContext<HealthManagerService_ControlTerminalLife_Req,HealthManagerService_ControlTerminalLife_Ans>::Pointer ctx;
+						ctx.Attach(new SpReqAnsContext<HealthManagerService_ControlTerminalLife_Req,HealthManagerService_ControlTerminalLife_Ans>(pTransactionContext));
+						SpBuffer2Object(Buf, ctx->Req);
+						Handle_ControlTerminalLife(ctx);
+					}
+					break;
 				default:
 					assert(0);
 					break;

+ 18 - 1
Module/mod_healthmanager/Healthmanager.xml

@@ -81,7 +81,24 @@
 				<param name="reserved3" type="string" />
 				<param name="reserved4" type="string" />
 			</res>			
-		</twoway>		
+		</twoway>
+		<twoway name="ControlTerminalLife" overlap="true">
+			<req>
+				<param name="cmdType" type="int" />
+				<param name="reason" type="int" />
+				<param name="reserved1" type="int" />
+				<param name="reserved2" type="int" />				
+				<param name="reserved3" type="string" />
+				<param name="reserved4" type="string" />
+			</req>
+			<res>
+				<param name="retCode" type="int" />
+				<param name="reserved1" type="int" />
+				<param name="reserved2" type="int" />				
+				<param name="reserved3" type="string" />
+				<param name="reserved4" type="string" />
+			</res>			
+		</twoway>	
 	</class>
 	<message name="TradeManage">
 			<param name="op" type="int"/>

+ 18 - 1
addin/res/StructConfig/Healthmanager.xml

@@ -81,7 +81,24 @@
 				<param name="reserved3" type="string" />
 				<param name="reserved4" type="string" />
 			</res>			
-		</twoway>		
+		</twoway>
+		<twoway name="ControlTerminalLife" overlap="true">
+			<req>
+				<param name="cmdType" type="int" />
+				<param name="reason" type="int" />
+				<param name="reserved1" type="int" />
+				<param name="reserved2" type="int" />				
+				<param name="reserved3" type="string" />
+				<param name="reserved4" type="string" />
+			</req>
+			<res>
+				<param name="retCode" type="int" />
+				<param name="reserved1" type="int" />
+				<param name="reserved2" type="int" />				
+				<param name="reserved3" type="string" />
+				<param name="reserved4" type="string" />
+			</res>			
+		</twoway>	
 	</class>
 	<message name="TradeManage">
 			<param name="op" type="int"/>