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

📄 lllview.cpp

📁 适合MFC初学者学习
💻 CPP
📖 第 1 页 / 共 2 页
字号:
					dlg_view.m_borrowman = Book.m_borrowman;
					
					book_number = Book.m_number;
					book_name = Book.m_name;
					if ((dlg_view.m_inlibrary == "否")  || (dlg_view.m_type == "精品") || (UU.m_Popedom != "管理员"))
					{
						dlg_view.Usess();
					}

					if (IDOK == dlg_view.DoModal())
					{
						OnBorrow();
					}
					
					break;
				}
				else
				{
					Book.MoveNext();
					continue;
				}
			}
			if (Book.IsEOF())
			{
				AfxMessageBox("没有找到此图书!");
			}
		}
		//按书号进行查询
		else if (dlg.m_choice == 1)
		{
			CMyLibrarySet Book(&theApp.m_DB);
			Book.Open();
			Book.MoveFirst();
			for (int i=0; !(Book.IsEOF()); i++)        
			{ 
				
				if ((Book.m_number== dlg.m_number))
				{
					CFindDDDlg dlg_view;
					dlg_view.m_ID = Book.m_ID;
					dlg_view.m_number = Book.m_number;
					dlg_view.m_type = Book.m_type;
					dlg_view.m_name = Book.m_name;
					dlg_view.m_auther = Book.m_auther;
					dlg_view.m_editer = Book.m_editer;
					dlg_view.m_inlibrary = Book.m_inlibrary;
					dlg_view.m_borrowman = Book.m_borrowman;

					book_number = Book.m_number;
					book_name = Book.m_name;
					
					if ((dlg_view.m_inlibrary == "否")  || (dlg_view.m_type == "精品") || (UU.m_Popedom != "管理员"))
					{
						dlg_view.Usess();
					}
					
					if (IDOK == dlg_view.DoModal())
					{
						OnBorrow();
					}
					
					break;
				}
				else
				{
					Book.MoveNext();
					continue;
				}
			}
			if (Book.IsEOF())
			{
				AfxMessageBox("没有找到此图书!");
			}
		}
		else
			AfxMessageBox("请选择查询依据!");
	}
}



void CLLLView::OnFindAsAuthor() 
{
	// TODO: Add your command handler code here
	CFindAutherDlg dlg;
	SetFormat();
	if (IDOK != dlg.DoModal())
	{
		return ;
	}
	CMyLibrarySet Book(&theApp.m_DB);
	Book.Open();
	Book.MoveFirst();
	int num = 0;
	for (int i=0; !(Book.IsEOF()); )        
	{ 
		
		if ((Book.m_auther== dlg.m_name))
		{
			//添加输出信息
			int nCurItem;
			nCurItem = m_bookList.InsertItem(i, Book.m_number); 
			m_bookList.SetItemText(i, 1, Book.m_number);
			m_bookList.SetItemText(i, 2, Book.m_type);
			m_bookList.SetItemText(i, 3, Book.m_name);
			m_bookList.SetItemText(i, 4, Book.m_auther);
			m_bookList.SetItemText(i, 5, Book.m_editer);
			m_bookList.SetItemText(i, 6, Book.m_inlibrary);
			m_bookList.SetItemText(i, 7, Book.m_borrowman);
			m_bookList.SetItemText(i, 8, Book.m_borrowman);
			num++;
			i++;//i控制输出行数
			Book.MoveNext();
		}
		else
		{
			Book.MoveNext();
			continue;
		}
	}
	if (num == 0)
	{
		AfxMessageBox("馆中没有该作者的书!");
	}
}

//用户查询函数
void CLLLView::OnFindUser() 
{
	// TODO: Add your command handler code here
	CFindUserDlg dlg;
	CFindUserDDDlg dlg_view;
	if (UU.m_Popedom == "普通用户")
	{
		dlg_view.m_ID = UU.m_ID;
		dlg_view.m_type = UU.m_Popedom;
		dlg_view.m_name = UU.m_UserName;
		dlg_view.m_info = UU.m_info;
		dlg_view.DoModal();
	}
	else
	{
		if (IDOK != dlg.DoModal())
		{
			return ;
		}
		CUserSet User(&theApp.m_DB);
		User.Open();
		User.MoveFirst();
		for (int i=0; !(User.IsEOF()); i++)        
		{ 
			if (User.m_UserName == dlg.m_name)
			{
				dlg_view.m_ID = User.m_ID;
				dlg_view.m_type = User.m_Popedom;
				dlg_view.m_name = User.m_UserName;
				dlg_view.m_info = User.m_info;
				dlg_view.DoModal();
				break;
			}
			else
			{
				User.MoveNext();
			}
		}
		if (User.IsEOF())
		{
			AfxMessageBox("没有找到该用户!");
		}
		User.Close();
	}

}

//显示图书的函数
void CLLLView::OnShowAllBook() 
{
	// TODO: Add your command handler code here
	SetFormat();
	ShowItem();
}


void CLLLView::OnShowAllUser() 
{
	// TODO: Add your command handler code here
	SetFormat_user();
	ShowItem_user();
}

//图书借阅函数
void CLLLView::OnBorrow() 
{
	// TODO: Add your command handler code here
	CBorrowDlg dlg;
	dlg.m_name = book_name;
	dlg.m_number = book_number;
	if (IDOK == dlg.DoModal())
	{
		//按书号进行图书借阅
		if (dlg.m_choice == 0)
		{
			//图书的借阅操作
			CMyLibrarySet Book(&theApp.m_DB);
			Book.Open();
			Book.MoveFirst();
			for (int i=0; !(Book.IsEOF()); i++)        
			{ 
				
				if ((Book.m_number== dlg.m_number))
				{
					if (Book.m_inlibrary == "否")
					{
						AfxMessageBox("该书已借出!");
						return ;
					}
					else if (Book.m_type == "精品")
					{
						AfxMessageBox("本书不得外接!");
						return ;
					}
					else
					{
						break;
					}	
				}
				else
				{
					Book.MoveNext();
					continue;
				}
			}
			if (Book.IsEOF())
			{
				AfxMessageBox("没有找到此图书!");
				return ;
			}
			
			//借书人标记
			CUserSet User(&theApp.m_DB);
			User.Open();
			User.MoveFirst();
			for (int j=0; !(User.IsEOF()); j++)        
			{ 
				
				if ((User.m_UserName== dlg.m_borrowman))
				{
					break;
				}
				else
				{
					User.MoveNext();
					continue;
				}
			}
			if (User.IsEOF())
			{
				AfxMessageBox("没有找到该用户!");
				return ;
			}
			
			Book.Edit();		
			Book.m_inlibrary = "否";
			Book.m_borrowman = User.m_UserName;
			Book.Update();
			
			User.Edit();
			User.m_info = Book.m_name;
			User.Update();
			
			Book.Close();
			User.Close();
			
			AfxMessageBox("借阅成功!");
			SetFormat();
			ShowItem();
		}
		//按书名进行图书借阅
		else if (dlg.m_choice == 1)
		{
			CMyLibrarySet Book(&theApp.m_DB);
			Book.Open();
			Book.MoveFirst();
			for (int i=0; !(Book.IsEOF()); i++)        
			{ 
				
				if ((Book.m_name== dlg.m_name))
				{
					//检错并退出
					if (Book.m_inlibrary == "否")
					{
						AfxMessageBox("该书已借出!");
						return ;
					}
					else if (Book.m_type == "精品")
					{
						AfxMessageBox("本书不得外接!");
						return ;
					}
					else
					{
						break;//找到所借图书进行跳出标记
					}	
				}
				else
				{
					Book.MoveNext();
				}
			}
			if (Book.IsEOF())
			{
				AfxMessageBox("没有找到此图书!");
				return ;
			}
			
			//借书人标记
			CUserSet User(&theApp.m_DB);
			User.Open();
			User.MoveFirst();
			for (int j=0; !(User.IsEOF()); j++)        
			{ 
				
				if ((User.m_UserName== dlg.m_borrowman))
				{
					break;//照到借书人进行跳出标记
				}
				else
				{
					User.MoveNext();
				}
			}
			if (User.IsEOF())
			{
				AfxMessageBox("没有找到该用户!");
				return ;
			}
			
			Book.Edit();		
			Book.m_inlibrary = "否";
			Book.m_borrowman = User.m_UserName;
			Book.Update();
			
			User.Edit();
			User.m_info = Book.m_name;
			User.Update();
			
			User.Close();
			Book.Close();
			
			AfxMessageBox("借阅成功!");
			SetFormat();
			ShowItem();
		}
	}

	//全局变量的重新初始化
	book_name = "";
	book_number = "";
}

//还书操作
void CLLLView::OnBack() 
{
	// TODO: Add your command handler code here
	CBackDlg dlg;
	if (IDOK != dlg.DoModal())
	{
		return ;
	}
	//按书号进行查询和操作
	if (dlg.m_choice == 0)
	{
		//图书的还书操作
		CMyLibrarySet Book(&theApp.m_DB);
		Book.Open();
		Book.MoveFirst();
		for (int i=0; !(Book.IsEOF()); i++)        
		{ 
			
			if ((Book.m_number== dlg.m_number))
			{
				if (Book.m_inlibrary == "是")
				{
					AfxMessageBox("该书未借出!");
					return ;
				}
				else
				{
					break;//找到归还的图书进行跳出标记
				}	
			}
			else
			{
				Book.MoveNext();
				continue;
			}
		}
		if (Book.IsEOF())
		{
			AfxMessageBox("没有找到此图书!");
			return ;
		}

		//借书人标记
		CUserSet User(&theApp.m_DB);
		User.Open();
		User.MoveFirst();
		for (int j=0; !(User.IsEOF()); j++)        
		{ 
			
			if ((User.m_UserName== Book.m_borrowman))
			{
				break;//找到借书人做跳出标记
			}
			else
			{
				User.MoveNext();
				continue;
			}
		}
		if (User.IsEOF())
		{
			AfxMessageBox("没有找到该用户!");
			return ;
		}

		Book.Edit();		
		Book.m_inlibrary = "是";
		Book.m_borrowman = "";
		Book.Update();

		User.Edit();
		User.m_info = "";
		User.Update();

		Book.Close();
		User.Close();
		
		AfxMessageBox("还书成功!");
		SetFormat();
		ShowItem();
	}
	//按书名进行图书借阅
	else if (dlg.m_choice == 1)
	{
		CMyLibrarySet Book(&theApp.m_DB);
		Book.Open();
		Book.MoveFirst();
		for (int i=0; !(Book.IsEOF()); i++)        
		{ 
			
			if ((Book.m_name== dlg.m_name))
			{
				//检错并退出
				if (Book.m_inlibrary == "是")
				{
					AfxMessageBox("该书未借出!");
					return ;
				}
				else
				{
					break;//找到所借图书进行跳出标记
				}	
			}
			else
			{
				Book.MoveNext();
			}
		}
		if (Book.IsEOF())
		{
			AfxMessageBox("没有找到此图书!");
			return ;
		}

		//借书人标记
		CUserSet User(&theApp.m_DB);
		User.Open();
		User.MoveFirst();
		for (int j=0; !(User.IsEOF()); j++)        
		{ 
			
			if ((User.m_UserName== Book.m_borrowman))
			{
				break;//照到借书人进行跳出标记
			}
			else
			{
				User.MoveNext();
			}
		}
		if (User.IsEOF())
		{
			AfxMessageBox("没有找到该用户!");
			return ;
		}

		Book.Edit();		
		Book.m_inlibrary = "是";
		Book.m_borrowman = "";
		Book.Update();

		User.Edit();
		User.m_info = "";
		User.Update();
		
		User.Close();
		Book.Close();

		AfxMessageBox("还书成功!");
		SetFormat();
		ShowItem();
	}
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////-----------------------------------------------------------------------------------------
void CLLLView::OnUpdateAddBook(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);	
}

void CLLLView::OnUpdateAddUser(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}



void CLLLView::OnUpdateBack(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}



void CLLLView::OnUpdateBorrow(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateDeleteBook(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateDeleteUser(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateEditBook(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading && UU.m_Popedom == "管理员")
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateEditPassword(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateFindAsAuthor(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateFindBook(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateFindUser(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateGoOut(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateShowAllBook(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}


void CLLLView::OnUpdateShowAllUser(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	if (m_loading)
		pCmdUI->Enable(TRUE);
	else
		pCmdUI->Enable(FALSE);
}




⌨️ 快捷键说明

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