⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dlgusermgt.cpp

📁 数据库服务
💻 CPP
字号:
// DlgUserMgt.cpp : implementation file
//

#include "stdafx.h"
#include "NServer.h"
#include "DlgUserMgt.h"
#include "UserRst.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDlgUserMgt dialog


CDlgUserMgt::CDlgUserMgt(CWnd* pParent /*=NULL*/)
	: CDialog(CDlgUserMgt::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDlgUserMgt)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CDlgUserMgt::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDlgUserMgt)
	DDX_Control(pDX, IDC_LISTUSER, m_list);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDlgUserMgt, CDialog)
	//{{AFX_MSG_MAP(CDlgUserMgt)
	ON_BN_CLICKED(IDC_BTN_USEREXIT, OnBtnUserexit)
	ON_BN_CLICKED(IDC_BTN_USERADD, OnBtnUseradd)
	ON_BN_CLICKED(IDC_BTN_USERMOD, OnBtnUsermod)
	ON_BN_CLICKED(IDC_BTN_USERDEL, OnBtnUserdel)
	ON_NOTIFY(NM_CLICK, IDC_LISTUSER, OnClickListuser)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDlgUserMgt message handlers

void CDlgUserMgt::OnBtnUserexit() 
{
	CDialog::OnCancel();	
}

BOOL CDlgUserMgt::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	m_list.ModifyStyle(0, LVS_REPORT | LVS_SHOWSELALWAYS | LVS_SINGLESEL);
	m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);

	m_list.InsertColumn(0,"用户编号",		LVCFMT_LEFT,70);
	m_list.InsertColumn(1,"用户名称",		LVCFMT_LEFT,100);
	m_list.InsertColumn(2,"用户描述",		LVCFMT_LEFT,100);
	m_list.InsertColumn(3,"注册日期",		LVCFMT_LEFT,200);
	m_list.InsertColumn(4,"最大存储空间",	LVCFMT_LEFT,100);
	m_list.InsertColumn(5,"当前存储空间",	LVCFMT_LEFT,100);
	m_list.InsertColumn(6,"锁定状态",		LVCFMT_LEFT,100);
	

	LoadUser();

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CDlgUserMgt::OnBtnUseradd() 
{

	CString usercode = "";
	CString username = "";
	CString userdesc = "";
	CString usercont = "";


	GetDlgItem(IDC_EDIT_CODE)->GetWindowText(usercode);
	GetDlgItem(IDC_EDIT_NAME)->GetWindowText(username);
	GetDlgItem(IDC_EDIT_DESC)->GetWindowText(userdesc);
	GetDlgItem(IDC_EDIT_CONT)->GetWindowText(usercont);

	if(strlen(usercode)<=0 || strlen(username)<=0){
		MessageBox("用户编号和用户名称不能为空!");
		return;
	}

	try{
		CTime tm = CTime::GetCurrentTime();
		CString str = "";

		str.Format("%04d-%02d-%02d %02d:%02d:%02d",tm.GetYear(),tm.GetMonth(),tm.GetDay(), \
			tm.GetHour(),tm.GetMinute(),tm.GetSecond());

		CUserRst dUser;

		if(dUser.IsOpen())
			dUser.Close();

		dUser.m_strFilter = "1=0";
		dUser.Open();
		dUser.AddNew();

		dUser.m_UserIndex = atoi(usercode);
		dUser.m_UserName = username;
		dUser.m_UserDesc = userdesc;
		dUser.m_RegTime = str;
		dUser.m_MaxSpace = atoi(usercont);
		dUser.m_NowSpace = 0;
		if(((CButton *)GetDlgItem(IDC_CHK_LOCK))->GetCheck())
			dUser.m_IsLock = 1;
		else
			dUser.m_IsLock = 0;

		dUser.Update();
		
		dUser.Close();

		CString tempstr = "";
		int nItem = m_list.InsertItem(0,usercode);
		m_list.SetItemText(nItem,1,username);
		m_list.SetItemText(nItem,2,userdesc);
		m_list.SetItemText(nItem,3,str);
		m_list.SetItemText(nItem,4,usercont);
		m_list.SetItemText(nItem,5,"0");
		m_list.SetItemText(nItem,6,"正常");

	}
	catch(...){;}

}

void CDlgUserMgt::OnBtnUsermod() 
{

	int nItem = m_list.GetNextItem(-1, LVNI_SELECTED);
	if (nItem < 0)	return;

	CString tempstr = "";
	tempstr = m_list.GetItemText(nItem,0);
	int pNum = atoi(tempstr);
	if(pNum <= 0) return;

	CString usercode = "";
	CString username = "";
	CString userdesc = "";
	CString usercont = "";


	GetDlgItem(IDC_EDIT_CODE)->GetWindowText(usercode);
	GetDlgItem(IDC_EDIT_NAME)->GetWindowText(username);
	GetDlgItem(IDC_EDIT_DESC)->GetWindowText(userdesc);
	GetDlgItem(IDC_EDIT_CONT)->GetWindowText(usercont);

	if(strlen(usercode)<=0 || strlen(username)<=0){
		MessageBox("用户编号和用户名称不能为空!");
		return;
	}

	try{
		CTime tm = CTime::GetCurrentTime();
		CString strFt = "";

		CUserRst dUser;

		strFt.Format("UserIndex = %d" , pNum);

		if(dUser.IsOpen())
			dUser.Close();

		dUser.m_strFilter = strFt;
		dUser.Open();
		if(dUser.IsEOF()){
			dUser.Close();
			return;
		}

		dUser.Edit();

		dUser.m_UserIndex = atoi(usercode);
		dUser.m_UserName = username;
		dUser.m_UserDesc = userdesc;
//		dUser.m_RegTime = str;
		dUser.m_MaxSpace = atoi(usercont);
		if(((CButton *)GetDlgItem(IDC_CHK_LOCK))->GetCheck())
			dUser.m_IsLock = 1;
		else
			dUser.m_IsLock = 0;

		dUser.Update();

		dUser.Close();

		m_list.SetItemText(nItem,1,usercode);
		m_list.SetItemText(nItem,1,username);
		m_list.SetItemText(nItem,2,userdesc);
		m_list.SetItemText(nItem,4,usercont);
		if(((CButton *)GetDlgItem(IDC_CHK_LOCK))->GetCheck())
			m_list.SetItemText(nItem,6,"锁定");
		else
			m_list.SetItemText(nItem,6,"正常");

	}
	catch(...){;}
	
}

void CDlgUserMgt::OnBtnUserdel() 
{
	int nItem = m_list.GetNextItem(-1, LVNI_SELECTED);
	if (nItem < 0)	return;

	CString tempstr = "";
	tempstr = m_list.GetItemText(nItem,0);
	int pNum = atoi(tempstr);
	if(pNum <= 0) return;

	try{

		CUserRst dUser;

		if(dUser.IsOpen())
			dUser.Close();

		CString strFt = "";
		strFt.Format("UserIndex = %d" , pNum);

		dUser.m_strFilter = strFt;
		
		dUser.Open();
		
		if(!dUser.IsEOF())
			dUser.Delete();

		dUser.Close();

		m_list.DeleteItem(nItem);

	}
	catch(...){;}

	
}

void CDlgUserMgt::OnClickListuser(NMHDR* pNMHDR, LRESULT* pResult) 
{
	int nItem = m_list.GetNextItem(-1, LVNI_SELECTED);
	if (nItem < 0)	return;

	CString tempstr = "";
	tempstr = m_list.GetItemText(nItem,0);
	GetDlgItem(IDC_EDIT_CODE)->SetWindowText(tempstr);
	tempstr = m_list.GetItemText(nItem,1);
	GetDlgItem(IDC_EDIT_NAME)->SetWindowText(tempstr);
	tempstr = m_list.GetItemText(nItem,2);
	GetDlgItem(IDC_EDIT_DESC)->SetWindowText(tempstr);
	tempstr = m_list.GetItemText(nItem,4);
	GetDlgItem(IDC_EDIT_CONT)->SetWindowText(tempstr);
	tempstr = m_list.GetItemText(nItem,6);
	if(strcmp(tempstr,"正常") == 0){
		((CButton *)GetDlgItem(IDC_CHK_LOCK))->SetCheck(false);
	}
	else{
		((CButton *)GetDlgItem(IDC_CHK_LOCK))->SetCheck(true);
	}

	*pResult = 0;
}

void CDlgUserMgt::LoadUser()
{
	try{
		CUserRst m_UserRst;

		if(m_UserRst.IsOpen())
			m_UserRst.Close();

		m_UserRst.Open();
		while(!m_UserRst.IsEOF()){
			
			CString tempstr = "";
			tempstr.Format("%d",m_UserRst.m_UserIndex);
			int nItem = m_list.InsertItem(0,tempstr);
			m_list.SetItemText(nItem,1,m_UserRst.m_UserName);
			m_list.SetItemText(nItem,2,m_UserRst.m_UserDesc);
			m_list.SetItemText(nItem,3,m_UserRst.m_RegTime);
			tempstr.Format("%d",m_UserRst.m_MaxSpace);
			m_list.SetItemText(nItem,4,tempstr);
			tempstr.Format("%d",m_UserRst.m_NowSpace);
			m_list.SetItemText(nItem,5,tempstr);
			if(m_UserRst.m_IsLock == 0)
				m_list.SetItemText(nItem,6,"正常");
			else
				m_list.SetItemText(nItem,6,"锁定");

			m_UserRst.MoveNext();
		}

		m_UserRst.Close();
	}
	catch(...){
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -