www.pudn.com > classSystem(c++).rar > LoginDlg.cpp


// LoginDlg.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "ClassSystem.h" 
#include "LoginDlg.h" 
#include "ManagerList.h" 
#include "ManagerNode.h" 
#include "ManagerFrameDlg.h" 
#include "UserList.h" 
#include "UserFrameDlg.h" 
 
extern CUserList userlist; 
extern CManagerList managerlist; 
extern CManagerNode curManager; 
extern CUserNode curUser; 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
// CLoginDlg dialog 
 
 
CLoginDlg::CLoginDlg(CWnd* pParent /*=NULL*/) 
	: CDialog(CLoginDlg::IDD, pParent) 
{ 
	//{{AFX_DATA_INIT(CLoginDlg) 
	m_ManagerName = _T(""); 
	m_password = _T(""); 
	m_bIsManager = -1; 
	//}}AFX_DATA_INIT 
} 
 
 
void CLoginDlg::DoDataExchange(CDataExchange* pDX) 
{ 
	CDialog::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(CLoginDlg) 
	DDX_Text(pDX, IDC_EDIT_LOGINID, m_ManagerName); 
	DDX_Text(pDX, IDC_EDIT_LOGINPSW, m_password); 
	DDX_Radio(pDX, IDC_RADIO_USER, m_bIsManager); 
	//}}AFX_DATA_MAP 
} 
 
 
BEGIN_MESSAGE_MAP(CLoginDlg, CDialog) 
	//{{AFX_MSG_MAP(CLoginDlg) 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CLoginDlg message handlers 
 
void CLoginDlg::OnOK()  
{ 
	// TODO: Add extra validation here 
	UpdateData(TRUE); 
	 
	//检验数据的有效性 
	if(m_ManagerName == "") 
	{ 
		MessageBox("Please enter your ID!!!" ); 
		return ; 
	} 
	if(m_password == "") 
	{ 
		MessageBox("Please enter your password!!!"); 
		return ; 
	} 
	if(m_bIsManager == -1) 
	{ 
		MessageBox("Please choose your login type!!"); 
		return ; 
	} 
	//根据登陆类型激活不同操作界面 
	 
	if(m_bIsManager == 1)// 1为管理员界面,0为一般用户界面 
	{ 
 
 
		if(managerlist.find(m_ManagerName,curManager))//存在该用户 
		{ 
			if( curManager.m_password!=m_password ) 
			{ 
				MessageBox("密码错误,核对后重新输入"); 
				return ; 
			} 
			CManagerFrameDlg dlg; 
			dlg.DoModal(); 
		} 
		else 
		{ 
			MessageBox("不存在该用户,请核对后重新登陆"); 
			return; 
		} 
 
 
	} 
	else if(m_bIsManager == 0)//激活一般用户界面 
	{ 
		if(!userlist.find(m_ManagerName,curUser)) 
		{ 
			MessageBox("不存在该用户"); 
			return; 
		} 
		else 
		{ 
			if(curUser.m_password != m_password) 
			{ 
				MessageBox("密码错误,请核对后重新输入"); 
				return ; 
			} 
			CUserFrameDlg dlg; 
			dlg.DoModal(); 
		} 
	} 
	CDialog::OnOK(); 
} 
 
void CLoginDlg::OnCancel()  
{ 
	// TODO: Add extra cleanup here 
	exit(1); 
	CDialog::OnCancel(); 
}