#if !defined(AFX_CHECKUPMMSDLG_H__4240DFEF_44BF_4014_8BDC_3959C43C3104__INCLUDED_)
#define AFX_CHECKUPMMSDLG_H__4240DFEF_44BF_4014_8BDC_3959C43C3104__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// CheckupMmsDlg.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CCheckupMmsDlg dialog

#include "..\public\reportctrl\ReportCtrl.h"
#include "DLG_Process.h"

#define MENU_CHECKUP_SEE         WM_USER + 310
#define MENU_CHECKUP_PASS        WM_USER + 311
#define MENU_CHECKUP_NOPASS      WM_USER + 312
#define MENU_CHECKUP_REFRESH     WM_USER + 313
#define MENU_CHECKUP_CORPPASS    WM_USER + 314
#define MENU_CHECKUP_CORPNOPASS  WM_USER + 315
#define MENU_CHECKUP_CORPLIST    WM_USER + 316
#define MENU_CHECKUP_CORPOFF        WM_USER + 317
#define MENU_CHECKUP_SPDX_REFRESH   WM_USER + 318
#define MENU_CHECKUP_SPDX_PASS      WM_USER + 319
#define MENU_CHECKUP_SPDX_NOPASS     WM_USER + 320
#define MENU_CHECKUP_SPDX_RESEND     WM_USER + 321

class CMainFrame;
class CProcessSocket;
typedef CTypedPtrList<CPtrList, ANS_CheckupMms_SeeData2*>  CCheckupMms;
class CCheckupMmsDlg : public CDialog
{
public:
	CMainFrame *     m_pMainFrame;
protected:
	CProcessSocket * m_pSocket;
	CImageList       m_Image;

	CCheckupMms      m_Checkup;
	BOOL             m_bRefresh;
	BOOL m_bInit;   //�Ƿ��ѳ�ʼ��


	DLG_Process      m_Process;
	BOOL             m_bProcess;

	BYTE *           m_pMmsBuf;
	long             m_lMmsSize;
	long             m_lMmsShowType;  //��ǰ��ʾ�IJ������ͣ�0-��ͨ���ţ�1-��Ƶ����

// Construction
public:
	void SmsCheckup(BOOL bPass,BOOL bAll,long Audit_Operation=0,long Audit_Type=0 );
	BOOL isLockItem(long lItem, BOOL bShowWarning=true);
	void SetLockItem(long lItem,BOOL bLock );
	long GetCurrentSelected();
	void ShowRMenu();
	void Close();
	BOOL ProcessSocket(Socket_Head_Add *pHead, BYTE *pFrame);
	BOOL ReHide();
	BOOL RefreshInfo();
	BOOL RefreshInfo2(long lMmsType);
	BOOL ReShow(BOOL bRefresh=false);
	CCheckupMmsDlg(CWnd* pParent = NULL);   // standard constructor
	static CString GetStatus(long lStatus);

// Dialog Data
	//{{AFX_DATA(CCheckupMmsDlg)
	enum { IDD = IDD_CHECKUP_MMS };
	CReportCtrl	m_wndList;
	//}}AFX_DATA


// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CCheckupMmsDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	// Generated message map functions
	//{{AFX_MSG(CCheckupMmsDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnDblclkCheckupList(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnRclickCheckupList(NMHDR* pNMHDR, LRESULT* pResult);
	//}}AFX_MSG
	afx_msg void On_User_See();
	afx_msg void On_User_Pass();
	afx_msg void On_User_NoPass();
	afx_msg void On_User_CorpPass();
	afx_msg void On_User_CorpNoPass();
	afx_msg void On_User_CorpList();
	afx_msg void On_User_CorpOFF();
	afx_msg void On_User_Refresh();
	afx_msg void On_User_SPDX_Refresh();
	afx_msg void On_User_SPDX_Pass();
	afx_msg void On_User_SPDX_NoPass();
	afx_msg void On_User_SPDX_Resend();

	DECLARE_MESSAGE_MAP()
};

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

#endif // !defined(AFX_CHECKUPMMSDLG_H__4240DFEF_44BF_4014_8BDC_3959C43C3104__INCLUDED_)