|
|
@@ -7,6 +7,7 @@
|
|
|
#include "SpTest.h"
|
|
|
#include "DeviceControlFSM.h"
|
|
|
#include "DevEntityCommBase.hpp"
|
|
|
+#include "TerminalInfoQueryConn.h"
|
|
|
|
|
|
// to get mac address
|
|
|
#include <string>
|
|
|
@@ -49,8 +50,16 @@ private:
|
|
|
class CDeviceControlEntity : public CDevAdptEntityBase
|
|
|
{
|
|
|
public:
|
|
|
- CDeviceControlEntity(){}
|
|
|
- virtual ~CDeviceControlEntity(){}
|
|
|
+ CDeviceControlEntity():m_ServerConn(nullptr){ }
|
|
|
+ virtual ~CDeviceControlEntity(){
|
|
|
+ if (m_ServerConn) {
|
|
|
+ if(m_ServerConn->IsConnectionOK()) {
|
|
|
+ m_ServerConn->Close();
|
|
|
+ }
|
|
|
+ delete m_ServerConn;
|
|
|
+ m_ServerConn = nullptr;
|
|
|
+ }
|
|
|
+ }
|
|
|
virtual const char *GetEntityName() const { return "DeviceControl"; }
|
|
|
|
|
|
const char* GetEntityVersion() const { return MODULE_VERSION_FULL; }
|
|
|
@@ -64,13 +73,49 @@ public:
|
|
|
pTransactionContext->SendAnswer(rt);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ static void PrintTerminalRegistInfo(const TerminalRegistRet* info)
|
|
|
+ {
|
|
|
+ Dbg("TerminalNo: %s", info->TerminalNo);
|
|
|
+ Dbg("DeviceNo: %s", info->DeviceNo);
|
|
|
+ Dbg("OutletNo: %s", info->OutletNo);
|
|
|
+ Dbg("Initializer: %s", info->Initializer);
|
|
|
+ Dbg("PadDeviceID: %s", info->PadDeviceID);
|
|
|
+ Dbg("MachineType: %s", info->MachineType);
|
|
|
+ Dbg("MachineVersion: %s", info->MachineVersion);
|
|
|
+ Dbg("Sites: %s", info->Sites);
|
|
|
+ Dbg("EnrolAddr: %s", info->EnrolAddr);
|
|
|
+ Dbg("Editor: %s", info->Editor);
|
|
|
+ Dbg("State: %c", info->State);
|
|
|
+ Dbg("PublicKey: %s", info->PublicKey);
|
|
|
+ Dbg("FingerPrint: %s", info->FingerPrint);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
virtual void OnPrePause(CSmartPointer<ITransactionContext> pTransactionContext)
|
|
|
{
|
|
|
- QueryHardwareInfo(NULL);
|
|
|
+ //QueryHardwareInfo(NULL);
|
|
|
+ if (!m_ServerConn) {
|
|
|
+ m_ServerConn = new CTerminalInfoQuery(this);
|
|
|
+ }
|
|
|
+ m_ServerConn->ConnectServer("55.14.131.137", 1050);
|
|
|
+ if (m_ServerConn->IsConnectionOK()) {
|
|
|
+ TerminalRegistRet info;
|
|
|
+ m_ServerConn->GetTerminalInfo("7555980028", &info);
|
|
|
+ PrintTerminalRegistInfo(&info);
|
|
|
+ }
|
|
|
+
|
|
|
pTransactionContext->SendAnswer(Error_Succeed);
|
|
|
}
|
|
|
virtual void OnPreContinue(CSmartPointer<ITransactionContext> pTransactionContext)
|
|
|
{
|
|
|
+ if (m_ServerConn) {
|
|
|
+ if (m_ServerConn->IsConnectionOK()) {
|
|
|
+ m_ServerConn->Close();
|
|
|
+ }
|
|
|
+ delete m_ServerConn;
|
|
|
+ m_ServerConn = nullptr;
|
|
|
+ }
|
|
|
pTransactionContext->SendAnswer(Error_Succeed);
|
|
|
}
|
|
|
virtual void OnPreClose(EntityCloseCauseEnum eCloseCause,CSmartPointer<ITransactionContext> pTransactionContext)
|
|
|
@@ -131,6 +176,7 @@ private:
|
|
|
std::pair<ErrorCodeEnum, CSimpleStringA> __ReadCenterConfigStr(CSimpleStringA key, CSimpleStringA entityName);
|
|
|
private:
|
|
|
CDeviceControlFSM m_fsm;
|
|
|
+ CTerminalInfoQuery* m_ServerConn;
|
|
|
};
|
|
|
|
|
|
#endif //_MOD_DEVICECONTROL_H
|