123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- #pragma once
- #include "SpBase.h"
- #include "modVer.h"
- #include "SpTest.h"
- #include "GUIConsoleFSM.h"
- #include "GUIConsole_server_g.h"
- using namespace GUIConsole;
- // 本地控制台 GUIConsole 0x508
- class CGUIConsoleEntity : public CEntityBase, public ILogListener
- {
- public:
- CGUIConsoleEntity() :m_SubLogID1(0), m_SubLogID2(0), m_dwBeginTime(0),
- m_strUserID(""), m_strUserName(""), m_strAuthorizer(""), m_strCurRight(""), m_strAuthTime("")
- {
- }
- virtual ~CGUIConsoleEntity() {}
- virtual const char *GetEntityName() const { return "GUIConsole"; }
- const char* GetEntityVersion() const { return MODULE_VERSION_FULL; }
- virtual bool IsService()const{return true;}
- virtual void OnPreStart(CAutoArray<CSimpleStringA> strArgs,CSmartPointer<ITransactionContext> pTransactionContext);
- virtual void OnPreClose(EntityCloseCauseEnum eCloseCause,CSmartPointer<ITransactionContext> pTransactionContext) ;
- virtual CServerSessionBase *OnNewSession(const char* /*pszRemoteEntityName*/, const char * /*pszParam*/);
- virtual void OnLog(const CAutoArray<CUUID> &SubIDs, const CUUID nLogID,const LogTypeEnum eLogType, const SeverityLevelEnum eLevel,
- const DWORD dwSysError,const DWORD dwUserCode,const DWORD dwEntityInstanceID, const WORD wEntityDevelID,
- const CAutoArray<DWORD> &Param, const char *pszEntityName, const char *pszModuleName,const char *pszMessage);
-
- ErrorCodeEnum SubscribeEntitysEvents();
- ErrorCodeEnum UnsubscribeEntitysEvents();
- CSimpleStringA GetCurMaintainer(){ return m_strUserID;}
- ErrorCodeEnum GetCurrentMaintainer(CSimpleStringA &strUserID, CSimpleStringA &strUserName, CSimpleStringA &strCurRight,
- CSimpleStringA &strAuthorizer, unsigned int &dwBeginTime);
- ErrorCodeEnum Empower(const char *pszUserID);
- ErrorCodeEnum Takeover(const char *pszUserID);
- ErrorCodeEnum ForceQuit();
- ErrorCodeEnum PostUserLoginEvent(const char *pszUserID);
- ErrorCodeEnum AddMaterialCounter(const char *pszMaterialCode);
- ErrorCodeEnum AddTradeManage(const char *pszTerminalNo, const char *pszAgentID, const char *pszTime);
- //查询物料信息
- ErrorCodeEnum QueryMaterialInfo(const char *pszDeviceNo, unsigned int &count, CAutoArray<CSimpleStringA> &arrDeviceNo, CAutoArray<CSimpleStringA> &arrMateriel,
- CAutoArray<CSimpleStringA> &CardGroove, CAutoArray<CSimpleStringA> &CardBoxNo, CAutoArray<CSimpleStringA> &PsbCode, CAutoArray<CSimpleStringA> &PsbName,
- CAutoArray<unsigned int> &CardInit, CAutoArray<unsigned int> &CardRemains, CAutoArray<unsigned int> &CardIssued, CAutoArray<unsigned int> &CardMixed, CAutoArray<unsigned int> &CardPercent,
- CAutoArray<CSimpleStringA> &TerminalNo, CAutoArray<CSimpleStringA> &Maintainer, CAutoArray<CSimpleStringA> &MaintainTime, CAutoArray<CSimpleStringA> &UpdateTime);
- ErrorCodeEnum GetMaterialCounter(const char *pszMaterial, unsigned int &dwLastCapacity, unsigned int &dwUsedCounter);
- ErrorCodeEnum ResetMaterialCounter(const char *pszMaterial, unsigned int dwResetCapacity, unsigned int dwUsedCounter,
- unsigned int dwRemainCounter, const char *pszComment);
- // 吞卡登记
- ErrorCodeEnum RegistSwallowedCard(const char *pszCardNo, const char *pszReasonCode, const char *pszDate,
- const char *pszTime, const char *pszDeviceSciNo);
- // 本地计数同步到数据库
- ErrorCodeEnum SyncMaterialCount(const char *pszDeviceNo, DWORD dwCardBoxNum,
- CAutoArray<bool> &arrMaintainFlag, CAutoArray<CSimpleStringA> &arrMaintainer, CAutoArray<unsigned int> &arrMaintainTime,
- CAutoArray<CSimpleStringA> &arrCardBoxNo, CAutoArray<CSimpleStringA> &arrPsbCode,
- CAutoArray<CSimpleStringA> &arrPsbName, CAutoArray<unsigned int> &arrCardInit, CAutoArray<unsigned int> &arrCardRemains,
- CAutoArray<unsigned int> &arrCardIssued, CAutoArray<unsigned int> &arrCardMixed, CAutoArray<unsigned int> &arrCardPercent);
- protected:
- //GUITask m_task;
- CGUIConsoleFSM m_FSM;
- CUUID m_SubLogID1;
- CUUID m_SubLogID2;
- CUUID m_SubLogID3;
- // 当前维护用户信息
- CSimpleStringA m_strUserID;
- CSimpleStringA m_strUserName;
- CSimpleStringA m_strCurRight;
- CSimpleStringA m_strAuthorizer;
- CSimpleStringA m_strAuthTime;
- DWORD m_dwBeginTime;
- };
- class CGUIConsoleSession : public GUIConsoleService_ServerSessionBase
- {
- public:
- CGUIConsoleSession(CGUIConsoleEntity *pEntity) : m_pEntity(pEntity) {}
- virtual ~CGUIConsoleSession() {}
- virtual void Handle_GetCurrentMaintainer(SpReqAnsContext<GUIConsoleService_GetCurrentMaintainer_Req, GUIConsoleService_GetCurrentMaintainer_Ans>::Pointer ctx);
- virtual void Handle_Empower(SpReqAnsContext<GUIConsoleService_Empower_Req, GUIConsoleService_Empower_Ans>::Pointer ctx);
- virtual void Handle_Takeover(SpReqAnsContext<GUIConsoleService_Takeover_Req, GUIConsoleService_Takeover_Ans>::Pointer ctx);
- virtual void Handle_ForceQuit(SpReqAnsContext<GUIConsoleService_ForceQuit_Req, GUIConsoleService_ForceQuit_Ans>::Pointer ctx);
- virtual void Handle_AddMaterialCounter(SpReqAnsContext<GUIConsoleService_AddMaterialCounter_Req, GUIConsoleService_AddMaterialCounter_Ans>::Pointer ctx);
- virtual void Handle_AddTradeManage(SpReqAnsContext<GUIConsoleService_AddTradeManage_Req, GUIConsoleService_AddTradeManage_Ans>::Pointer ctx);
- virtual void Handle_QueryMaterialInfo(SpReqAnsContext<GUIConsoleService_QueryMaterialInfo_Req, GUIConsoleService_QueryMaterialInfo_Ans>::Pointer ctx);
- virtual void Handle_GetMaterialCounter(SpReqAnsContext<GUIConsoleService_GetMaterialCounter_Req, GUIConsoleService_GetMaterialCounter_Ans>::Pointer ctx);
- virtual void Handle_ResetMaterialCounter(SpReqAnsContext<GUIConsoleService_ResetMaterialCounter_Req, GUIConsoleService_ResetMaterialCounter_Ans>::Pointer ctx);
- virtual void Handle_RegistSwallowedCard(SpReqAnsContext<GUIConsoleService_RegistSwallowedCard_Req, GUIConsoleService_RegistSwallowedCard_Ans>::Pointer ctx);
- virtual void Handle_SyncMaterialCount(SpOnewayCallContext<GUIConsoleService_SyncMaterialCount_Info>::Pointer ctx);
-
- private:
- CGUIConsoleEntity *m_pEntity;
- };
|