📄 deliverthread.h
字号:
#if !defined(AFX_DELIVERTHREAD_H__E8EB904B_D293_4FDE_8426_F12AE7F72B5D__INCLUDED_)
#define AFX_DELIVERTHREAD_H__E8EB904B_D293_4FDE_8426_F12AE7F72B5D__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DeliverThread.h : header file
//
#include "TcpSocket.h"
#include "CmppPdu.h"
//#include "define.h"
/////////////////////////////////////////////////////////////////////////////
// CDeliverThread thread
typedef struct tagCmdTable
{
CString strSender; //特服号
unsigned short iSenderType; //
CString strCmd; //指令
unsigned short iMatchType; //匹配类型
CString strMoTab; //MO表名
unsigned short iMoTabNum; //MO表个数
}SCmdTable,*PSCmdTable;
typedef struct tagDefFee
{
int iFeeType; //错误指令计费类别=2
int iMotomtFlag; //错误指令MOTOMTFLAG=0
int iFeeValue; //错误指令信息费=10
int iGivenValue; //错误指令赠话费=0
CString strServiceType; //错误指令业务代码
}DEFFEE,*PDEFFEE;
class CDeliverThread : public CWinThread
{
DECLARE_DYNCREATE(CDeliverThread)
public:
CDeliverThread(); // protected constructor used by dynamic creation
// Attributes
public:
CCmppPdu m_stPdu; //
int m_nNumOfGameCmd ;
CTcpAsyncSocket m_stMoniterSocket;
char m_szUserName[7];
char m_szPassword[11];
char m_szDeliverLogTableName[101];
BOOL m_bDeliverToEveryDayTable;
char m_szDSN[101];
int m_nMoniterPort;
int m_nMaxIdleTimes;
char m_szErrorTable[50];
char m_szHelp[140];
CDatabase m_database;
CArray <CTcpAsyncSocket*,CTcpAsyncSocket*> m_stMoniterNodeBuf;
PSCmdTable m_astCmdTab;
CCriticalSection* m_pSection;
DEFFEE m_deffee;
char m_szSPNumber[21];
BOOL m_bReport;
BOOL m_bMonth;
char m_szMonthTable[50];
BOOL m_bChat;
int m_nChatLen;
char m_szChatTable[50];
BOOL m_bRecieve;
char m_szTableName[50];
BOOL m_bConnectDeliverDB;
BOOL g_bDeliverThreadExit;
char m_szCorpId[21]; //企业代码
int iFirst ;
int m_iRptMsgID;
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CDeliverThread)
public:
virtual BOOL InitInstance();
virtual int ExitInstance();
virtual int Run();
//}}AFX_VIRTUAL
// Implementation
public:
int CDeliverThread::SendCmppTerminateResp(SServerNodeBuffer *pstNodeBuf, const char *szRecvBuf);
void ProcessIdle();
int SeekTask(int nSequence);
void HandleSubmitRespPdu(SServerNodeBuffer *pstNodeBuf, const char *szRecvBuf);
void SubmitToDeliverLog(const char *szMsg, const char *szSAddr, const char *szDAddr, const char *szLinkID);
void SubmitToSend(const char *szMsg, const char *szSAddr, const char *szDAddr,const char *szLinkID,BOOL bCancle);
void SubmitToMonthTable(const char *szMsg, const char *szSAddr, const char *szDAddr,const char *szLinkID, const char *szTable);
void SubmitToTable(const char *szMsg, const char *szSAddr, const char *szDAddr,const char *szLinkID, const char *szTable);
BOOL IsFindedMoTable(int nIndex,CString strCmd, CString &strMoTab );
void GetMoTabName(CString strMsg, CString &strMoTab, const char * szDestAddr);
BOOL HandleReportPdu(SServerNodeBuffer *pstNodeBuf,const char* szRecvBuf);
BOOL HandleDeliverPdu(SServerNodeBuffer *pstNodeBuf,const char* szRecvBuf);
int SendCmppDeliverResp(SServerNodeBuffer *pstNodeBuf,const char* szRecvBuf,const char * szMsgId,int result);
void HandleDeliverMsg(SServerNodeBuffer *pstDeliverNode,char *szRecvBuf,int nLen);
void AddToMoniterList(CTcpAsyncSocket* pstClientSocket);
int SendCmppConnect(SServerNodeBuffer *pstNode);
BOOL ConnectServer(SServerNodeBuffer *pstNode);
BOOL InitSocket();
int SendPacket(CTcpAsyncSocket *pstSocket,unsigned char* szSendBuf,int nSendLen);
void LogMsg(const char* szMsg);
void LoadCmdTab();
BOOL ConnectDB();
void LoadIni();
void WriteFaildLog(CString strMobile,int iResult);
void UpdateMsgID(int nTaskID,CString strMsgID);
virtual ~CDeliverThread();
// Generated message map functions
//{{AFX_MSG(CDeliverThread)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DELIVERTHREAD_H__E8EB904B_D293_4FDE_8426_F12AE7F72B5D__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -