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

📄 zhgview.cpp

📁 一套人事管理系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		rs.Open(CRecordset::forwardOnly,"select * from 员工 where NAME like '%"+m_SECHKEY+"%' ");
		break;
	case 2:
		rs.Open(CRecordset::forwardOnly,"select * from 员工 where DEPARTMENT like '%"+m_SECHKEY+"%' ");
		break;
	case 3:
		rs.Open(CRecordset::forwardOnly,"select * from 员工 where EDU_LEVEL like '%"+m_SECHKEY +"%' ");
		break;
	case 4:
		rs.Open(CRecordset::forwardOnly,"select * from 员工 where MAJOR like '%"+ m_SECHKEY+"%' ");
		break;
	case 5:
		rs.Open(CRecordset::forwardOnly,"select * from 员工 where JOB like '%"+m_SECHKEY+"%' ");
		break;
	default:
		{
			AfxMessageBox("请选择查询方式!");
			flag=0;
			break;
		}
	}

	if(rs.IsEOF()&&flag==1)
	{
		flag=0;
		MessageBox("没有找到相关记录");
	}
	
	if(flag==1)
	{
		m_LIST.DeleteAllItems();
		while(!rs.IsEOF())
		{
			
			if(flag0==1)
			{
				m_LIST.InsertColumn(0,"职工ID",LVCFMT_LEFT,50,0);//设置列	
				m_LIST.InsertColumn(1,"姓名",LVCFMT_LEFT,80,1);	
				m_LIST.InsertColumn(2,"性别",LVCFMT_LEFT,50,2);
				m_LIST.InsertColumn(3,"出生年月",LVCFMT_LEFT,80,3);
				m_LIST.InsertColumn(4,"所属部门",LVCFMT_LEFT,50,4);
				m_LIST.InsertColumn(5,"担任职务",LVCFMT_LEFT,50,1);	
				m_LIST.InsertColumn(6,"学历",LVCFMT_LEFT,50,2);
				m_LIST.InsertColumn(7,"专业",LVCFMT_LEFT,80,3);
				m_LIST.InsertColumn(8,"现住址",LVCFMT_LEFT,150,4);
				m_LIST.InsertColumn(9,"电话",LVCFMT_LEFT,80,1);	
				m_LIST.InsertColumn(10,"电子邮件",LVCFMT_LEFT,80,2);
				m_LIST.InsertColumn(11,"状态",LVCFMT_LEFT,80,3);
				m_LIST.InsertColumn(12,"录用日期",LVCFMT_LEFT,80,4);
				m_LIST.InsertColumn(13,"身份证号",LVCFMT_LEFT,80,1);	
				
				/*	int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat , int nWidth, int nSubItem); 插入列
				
				  iCol:为列的位置,从零开始
				  
					lpszColumnHeading:为显示的列名
					
					  nFormat:为显示对齐方式
					  
						nWidth:为显示宽度
						
						  nSubItem:为分配给该列的列索引。
				*/
				flag0=2;
			}
		//	rs.GetRecordCount();
			
			CString str0;
			rs.GetFieldValue("ID", str0);
			m_LIST.InsertItem(0,str0);//插入行
			
			CString str1;
			rs.GetFieldValue("NAME", str1);
			m_LIST.SetItemText(0,1,str1);
			
			CString str2;
			rs.GetFieldValue("SEX", str2);
			m_LIST.SetItemText(0,2,str2);
			
			CString str3;
			rs.GetFieldValue("BIRTHDAY", str3);
			m_LIST.SetItemText(0,3,str3);
			
			CString str4;
			rs.GetFieldValue("DEPARTMENT", str4);
			m_LIST.SetItemText(0,4,str4);
			
			CString str5;
			rs.GetFieldValue("JOB", str5);
			m_LIST.SetItemText(0,5,str5);
			
			CString str6;
			rs.GetFieldValue("EDU_LEVEL", str6);
			m_LIST.SetItemText(0,6,str6);
			
			CString str7;
			rs.GetFieldValue("MAJOR", str7);
			m_LIST.SetItemText(0,7,str7);
			
			CString str8;
			rs.GetFieldValue("ADDRESS", str8);
			m_LIST.SetItemText(0,8,str8);
			
			CString str9;
			rs.GetFieldValue("TEL", str9);
			m_LIST.SetItemText(0,9,str9);
			
			CString str10;
			rs.GetFieldValue("EMAIL", str10);
			m_LIST.SetItemText(0,10,str10);
			
			CString str11;
			rs.GetFieldValue("STATE", str11);
			m_LIST.SetItemText(0,11,str11);
			
			CString str12;
			rs.GetFieldValue("LYRQ", str12);
			m_LIST.SetItemText(0,12,str12);
			
			CString str13;
			rs.GetFieldValue("PERSONID", str13);
			m_LIST.SetItemText(0,13,str13);//设置该行的不同列的显示字符
			
			rs.MoveNext();
		}
		rs.Close();
		db.Close();
	}
}

void CZHGVIEW::OnItemchangingList4(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
/*	// TODO: Add your control notification handler code here
		int i=m_LIST.GetSelectionMark()+1;
	//int nIndex=atoi(m_LIST.GetItemText(i,0));
	m_pSet->SetAbsolutePosition(i);
	UpdateData(FALSE);
*/	
	*pResult = 0;
}

void CZHGVIEW::OnSHOW() 
{
	// TODO: Add your control notification handler code here
/*	m_LIST.DeleteAllItems();
	m_SECHWAY=0;
	m_SECHKEY="%";
	UpdateData(FALSE);
	OnZHAO();
*/	OnInitialUpdate();
}

BOOL CZHGVIEW::OnCommand(WPARAM wParam, LPARAM lParam) 
{
	// TODO: Add your specialized code here and/or call the base class
	CString str;
	CMainFrame *pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	CStatusBar* pStatus=&pFrame->m_wndStatusBar;
	if(pStatus)
	{
		CRecordsetStatus rStatus;
		m_pSet->GetStatus(rStatus);
		str.Format("职工管理:第%d条记录/共%d条",1+m_LIST.GetSelectionMark(),m_LIST.GetItemCount());
		pStatus->SetPaneText(1,str);			
	}
	return CRecordView::OnCommand(wParam, lParam);
}

void CZHGVIEW::OnAdd() 
{
	// TODO: Add your control notification handler code here

	CDatabase db;
	CRecordset rs(&db);
	db.Open("sam人事管理");
	CString strUser;
	rs.Open(CRecordset::forwardOnly,"select ID from 当前用户 where POS=1");
	rs.GetFieldValue("ID",strUser);
	rs.Close();
	if(strUser=="人事部    ")
	{
		CSAMDLG samdlg;
		int MAXID=0,IDTMP=0;
		CString strID;
		rs.Open(CRecordset::forwardOnly,"select ID from 员工");
		while(!rs.IsEOF())
		{
			rs.GetFieldValue("ID",strID);
			strID=strID.Mid(3);
			IDTMP=atoi(strID);
			if(MAXID<IDTMP)
			{
				MAXID=IDTMP;
			}
			rs.MoveNext();
		}
		rs.Close();
		strID.Format("YG0%d",MAXID+1);
		samdlg.m_ID=strID;
		if(IDOK==samdlg.DoModal())
		{
			UpdateData();
			CString strSQL;
			
			
			CDatabase db;
			db.Open("sam人事管理");
			strSQL=" INSERT\
							 INTO 员工 (ID,NAME,SEX,BIRTHDAY,EDU_LEVEL,MAJOR,PERSONID,LYRQ,STATE,DEPARTMENT,JOB,TEL,ADDRESS)\
							 VALUES(\
							 '"+samdlg.m_ID+"',\
							 '"+samdlg.m_NAME+"',\
							 '"+samdlg.m_SEX+"',\
							 '"+samdlg.BIRTHDAY+"',\
							 '"+samdlg.m_EDUlevel+"',\
							 '"+samdlg.m_MAJOR+"',\
							 '"+samdlg.m__PERSONID+"',\
							 '"+samdlg.LYRQ+"',\
							 '"+samdlg.m_STATE+"',\
							 '"+samdlg.m_DEPARTMENT+"',\
							 '"+samdlg.m_JOB+"',\
							 '"+samdlg.m_TEL+"',\
							 '"+samdlg.m_ADDRESS+"');";
			
			db.ExecuteSQL(strSQL);
			AfxMessageBox("成功添加一条记录!");
			db.Close();	
			m_LIST.DeleteAllItems();
			OnInitialUpdate();
		}
	}
	else
	{
		AfxMessageBox("您没有相关权限!");
	}
	db.Close();
}

int CZHGVIEW::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CRecordView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	
	return 0;
}

void CZHGVIEW::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	
	// TODO: Add your message handler code here
	// Do not call CRecordView::OnPaint() for painting messages
}

void CZHGVIEW::OnEdit() 
{
	// TODO: Add your control notification handler code here
	CDatabase db;
	CRecordset rs(&db);
	db.Open("sam人事管理");
	CString strUser,strSQL,strtmp;
	rs.Open(CRecordset::forwardOnly,"select ID from 当前用户 where POS=1");
	strtmp.Format("%-10s",m_pSet->m_ID);
	rs.GetFieldValue("ID",strUser);
	strUser.MakeUpper();//操作用户ID转化为大写
	strtmp.MakeUpper();//欲修改用户ID转化为大写
	if(strUser=="人事部    " || strUser==strtmp)//人事部拥有对所有员工信息进行修改权限,操作用户只能编辑自己的信息
	{
		
		CSAMDLG samdlg;
		samdlg.m_ID=m_pSet->m_ID;
		samdlg.m_NAME=m_pSet->m_NAME;
		samdlg.m_SEX=m_pSet->m_SEX;
		samdlg.BIRTHDAY=m_pSet->m_BIRTHDAY;
		samdlg.m_EDUlevel=m_pSet->m_EDU_LEVEL;
		samdlg.m_MAJOR=m_pSet->m_MAJOR;
		samdlg.m__PERSONID=m_pSet->m_PERSONID;
		samdlg.LYRQ=m_pSet->m_LYRQ;
		samdlg.m_STATE=m_pSet->m_STATE;
		samdlg.m_DEPARTMENT=m_pSet->m_DEPARTMENT;
		samdlg.m_JOB=m_pSet->m_JOB;
		samdlg.m_TEL=m_pSet->m_TEL;
		samdlg.m_ADDRESS=m_pSet->m_ADDRESS;//初始化编辑对话框各项内容
		
		
		
		if(IDOK==samdlg.DoModal())
		{
			CDatabase dbtmp;
			CString strSQL;
			dbtmp.Open("sam人事管理");
			strSQL="update 员工 set\
								   NAME='"+samdlg.m_NAME+"',\
								   SEX='"+samdlg.m_SEX+"',\
								   BIRTHDAY='"+samdlg.BIRTHDAY+"',\
								   EDU_LEVEL='"+samdlg.m_EDUlevel+"',\
								   MAJOR='"+samdlg.m_MAJOR+"',\
								   PERSONID='"+samdlg.m__PERSONID+"',\
								   LYRQ='"+samdlg.LYRQ+"',\
								   STATE='"+samdlg.m_STATE+"',\
								   DEPARTMENT='"+samdlg.m_DEPARTMENT+"',\
								   JOB='"+samdlg.m_JOB+"',\
								   TEL='"+samdlg.m_TEL+"',\
								   ADDRESS='"+samdlg.m_ADDRESS+"'\
								   WHERE  ID='"+samdlg.m_ID+"';";
			dbtmp.ExecuteSQL(strSQL); 
			AfxMessageBox("修改信息成功!");
			dbtmp.Close();
			m_LIST.DeleteAllItems();
			OnInitialUpdate();
		}
	}
	else
	{
		AfxMessageBox("您没有相关权限!");
	}
	rs.Close();
	db.Close();
	
}

void CZHGVIEW::OnDelete() 
{
	// TODO: Add your control notification handler code here
	
	CDatabase db;
	CRecordset rs(&db);
	db.Open("sam人事管理");
	CString strUser,strSQL;
	rs.Open(CRecordset::forwardOnly,"select ID from 当前用户 where POS=1");
	rs.GetFieldValue("ID",strUser);
	if(strUser=="人事部    ")
	{
		CString strtmp;
		strtmp.Format("确认删除编号为%s\r名为%s\r这条记录么?",m_pSet->m_ID,m_pSet->m_NAME);
		if(AfxMessageBox(strtmp,MB_YESNO)==IDYES)
		{
			CDatabase dbtmp;
			CString strSQL;
			dbtmp.Open("sam人事管理");
			strSQL=" delete\
							 from 员工\
							 where ID='"+m_pSet->m_ID+"' ; ";
			
			dbtmp.ExecuteSQL(strSQL); 
			AfxMessageBox("删除信息成功!");
			dbtmp.Close();
			OnInitialUpdate();
		}
		
	}
	else
	{
		AfxMessageBox("您没有相关权限!");
	}
	rs.Close();
	db.Close();
}

void CZHGVIEW::OnRclickList4(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	POINT point;
	GetCursorPos(&point);
	CMenu menu;
	menu.LoadMenu(IDR_DELETEMENU);
	menu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x,point.y,this);
	*pResult = 0;
}

void CZHGVIEW::OnDblclkList4(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	OnEdit();
	*pResult = 0;
}

⌨️ 快捷键说明

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