#if !defined(AFX_FFAXJS_H__57E432BA_BA43_4532_827C_81E4BFC5B3A8__INCLUDED_)
#define AFX_FFAXJS_H__57E432BA_BA43_4532_827C_81E4BFC5B3A8__INCLUDED_

#include "DLG_SmsLogSee.h"	// Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// FFaxJS.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CFFaxJS dialog
#include "..\public\reportctrl\ReportCtrl.h"

#define MENU_FAXJS_SEE       WM_USER+230   //删除
#define MENU_FAXJS_SEND      WM_USER+231   //删除
#define MENU_FAXJS_ZF        WM_USER+232   //删除
#define MENU_FAXJS_DEL       WM_USER+233   //删除
#define MENU_FAXJS_EXPORT    WM_USER+234   //刷新
#define MENU_FAXJS_REFRESH   WM_USER+235   //刷新
#define MENU_FAXJS_FIND      WM_USER+236   //查找

#define MENU_FAXJS_TYPESETUP WM_USER+240   //类别设置


class CMainFrame;
class CProcessSocket;
#ifdef SUPPERGSM
class CSendThread;
#endif
class CFFaxJS : public CDialog
{
public:
	CAdoConnection m_HDadoConnection;
	CAdoRecordSet  m_HDAdoRS;

protected:
	CMainFrame *     m_pMainFrame;
	CProcessSocket * m_pSocket;
	CImageList       m_Image;
	BOOL             m_bRefresh;  //是否已刷新过数据
	BOOL             m_bShowToday; //是否仅显示当天的数据
	BOOL m_bInit;   //是否已初始化

	CAdoRecordSet    m_AdoRS;
	CAdoRecordSet    m_AdoRS2;

	SM_Setup         m_Setup;

#ifdef SUPPERGSM
	CSendThread    * m_pSendThread;
#endif
	BOOL             m_bOneGetSim;
	long             m_lMobileRecvCount;

	typedef struct _Menu_Type
	{
		TCHAR szType1[32];
		TCHAR szType2[32];
	}Menu_Type;


	Menu_Type  * m_pMenuType;
	long         m_lMenuTypeCount;
	BOOL         m_bRecvFirst;

	long         m_lIconCount;

	CString          m_strFindAdd;  //附加查询指令

// Construction
public:
	BOOL ShowNoReaderMsg();
	BOOL FlashIcon( BOOL bCheck ,BOOL bFlash);
	void ReadSetup();
	void SetToday( BOOL bToday );
	void On_User_Type( long lIndex );
	void ConnectMobile();
	void RecvNewSms(ANS_RecvData2 sms,BOOL bShowTip);
	void ReadSms(long lItem);
	SMS_See GetSms(long lItem,BOOL bID=false);
	void ShowRMenu();
	BOOL ProcessSocket(Socket_Head *pHead);
	void RecvSms();
	long GetCurrentSelected();
	BOOL RefreshInfo();
	BOOL ReShow(BOOL bRefresh=false);
	BOOL ReHide();
	CFFaxJS(CWnd* pParent = NULL);   // standard constructor

// Dialog Data
	//{{AFX_DATA(CFFaxJS)
	enum { IDD = IDD_FAXJS };
	CReportCtrl	m_wndList;
	//}}AFX_DATA


// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CFFaxJS)
	public:
	virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo);
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	// Generated message map functions
	//{{AFX_MSG(CFFaxJS)
	virtual BOOL OnInitDialog();
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnKeydownSmsjsList(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnRclickSmsjsList(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnDblclkSmsjsList(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnTimer(UINT_PTR nIDEvent);
	afx_msg void OnDestroy();
	virtual void OnOK();
	virtual void OnCancel();
	//}}AFX_MSG
	afx_msg void On_User_See();
	afx_msg void On_User_Send();
	afx_msg void On_User_ZF();
	afx_msg void On_User_Del();
	afx_msg void On_User_Export();
	afx_msg void On_User_Refresh();
	afx_msg void On_User_Find();
	afx_msg void On_User_TypeSetup();

#ifdef SUPPERGSM
	afx_msg long On_TW_Init(WPARAM wParam , LPARAM lParam );
	afx_msg long On_TW_Send(WPARAM wParam , LPARAM lParam );
	afx_msg long On_TW_Recv(WPARAM wParam , LPARAM lParam );
	afx_msg long On_TW_GetSim(WPARAM wParam , LPARAM lParam );
	afx_msg long On_TW_Clear(WPARAM wParam , LPARAM lParam );
	afx_msg long On_TW_Delete(WPARAM wParam , LPARAM lParam );
#endif

	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_FFAXJS_H__57E432BA_BA43_4532_827C_81E4BFC5B3A8__INCLUDED_)