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

📄 clerkdlg.cpp

📁 学校图书馆信息化计划核心----图书管理系统vc版V2.0
💻 CPP
📖 第 1 页 / 共 2 页
字号:
			    	m_grid1.SetCol(0);
				    m_grid1.SetText("该操作取消");
					m_bookset.Open();	
		        	m_bookset.MoveLast();
	         		int i=m_bookset.m_numbers;
		        	for(int j=1;j<i;j++)
					{

			        	m_bookset.MovePrev();
					}			
		        	while(!m_bookset.IsEOF())
					{
                        m_bookset.Delete();
		         		m_bookset.MoveNext();				
					}
	        		m_bookset.Close();
				}
        		else
				{
		        	if(str=="书籍借出")
					{
			    	m_grid1.SetCol(0);
				    m_grid1.SetText("该操作取消");
        				m_bookloanset.Open();
		        		m_bookloanset.MoveLast();
		        		CString bookid=m_bookloanset.m_Bookid_loan;
		        		m_bookloanset.Delete();
		        		m_bookloanset.Close();
			        	m_bookset.m_strFilter="Bookid='"+bookid+"'";
			        	m_bookset.Open();
			        	if(!m_bookset.IsEOF())
						{
				        	MessageBox(bookid);
			        	    m_bookset.Edit();
			        	    m_bookset.m_Status=1;
			         	    m_bookset.Update();
			         	    m_bookset.Requery();
						}
	        			m_bookset.Close();
					}
		        	else
					{
		        		MessageBox("该项操作无法执行!");
					}
				}
	        	if((operatenumber>0)&&(str!="书籍归还"))
				{
       	         	m_grid.SetRow(operatenumber);
		        	m_grid.SetCol(0);
	        		m_grid.SetText("");
	        		m_grid.SetCol(1);
		        	m_grid.SetText("");
		        	m_grid.SetCol(2);
			        m_grid.SetText("");
		        	m_grid.SetCol(3);
		        	m_grid.SetText("");
					m_grid.SetCol(4);
					m_grid.SetText("");
		        	operatenumber--;
				}
	        	UpdateData(false);
			}
}

void CClerkDlg::OnBookinf() 
{
	// TODO: Add your control notification handler code here
    CInfoDlg  infodlg;
	infodlg.DoModal();
}

void CClerkDlg::OnBookloan() 
{
	// TODO: Add your control notification handler code here
	CBookOp A;
	A.type=1;
	if(A.DoModal()==IDOK)
	{
		CString readerid=A.m_readerid;
		CString bookid=A.m_bookid;
		int status=checkreaderstatus(readerid);
        if(status==3)
		{
			MessageBox("有书籍超期");
            readset1.m_strFilter="ReaderId='"+readerid+"'";
        	readset1.Open();
        	readset1.Edit();
        	readset1.m_Readerstatus=0;
        	readset1.Update();
        	readset1.Requery();
        	readset1.Close();
            COverDlg  a;
			a.type=1;
			a.readerid=readerid;
			a.DoModal();
		}
		else 
		{
			if(status==2)
			{
				MessageBox("已经借满五本书");
			}
			else
			{
				m_bookset.m_strFilter="Bookid='"+bookid+"'";
	        	m_bookset.Open();
	        	if(m_bookset.IsEOF())
		    	MessageBox("图书号输入错误");
	        	else
				{
	        		switch(m_bookset.m_Status)
					{
	        		case 0:MessageBox("图书已经借出!");
			    	   break;
		        	case 2:
						{
                            m_bookingset.m_strFilter="Bookid_booking='"+bookid+"'";
							m_bookingset.Open();
							if(m_bookingset.m_ReaderId_booking!=readerid)
							{
								m_bookingset.Close();
							     MessageBox("图书已经被预约");
							}
							else
							{
								m_bookingset.Delete();
                               m_bookingset.Close();
							   			        		m_bookloanset.Open();
							m_bookloanset.AddNew();
							time_t now;
                            now = time(0);
							 struct tm *pnow;
                            pnow = localtime(&now);
							m_bookloanset.m_Bookid_loan=m_bookset.m_Bookid;
							m_bookloanset.m_Bookname_loan=m_bookset.m_Bookname;
							m_bookloanset.m_ReaderId_loan=readerid;
							m_bookloanset.m_Loandate=now;
							pnow->tm_mon+=1;
							now = mktime(pnow);
							m_bookloanset.m_Backdate=now;
							m_bookloanset.Update();
							m_bookloanset.Requery();
							m_bookloanset.Close();
							{
								m_bookset.Edit();
								m_bookset.m_Status=0;
								m_bookset.Update();
								m_bookset.Requery();
								MessageBox("借阅书籍"+m_bookset.m_Bookname+"已成功!");
							}
							operatenumber++;
							m_grid.SetRow(operatenumber);
							m_grid.SetCol(0);
							CString str;
							str.Format("%d",operatenumber);
							m_grid.SetText(str);
							m_grid.SetCol(1);
							m_grid.SetText("书籍借出");
							m_grid.SetCol(2);
							m_grid.SetText(m_bookset.m_Bookname);
							m_grid.SetCol(3);
							str.Format(_T("%02d:%02d:%02d"),pnow->tm_hour,pnow->tm_min,pnow->tm_sec);
							m_grid.SetText(str);
							m_grid.SetCol(4);
							m_grid.SetText(readerid);

							m_grid1.SetRow(operatenumber);
							m_grid1.SetCol(0);
							//CString str;
							str.Format("%d",operatenumber);
							m_grid1.SetText(str);
							m_grid1.SetCol(1);
							m_grid1.SetText("书籍借出");
							m_grid1.SetCol(2);
							m_grid1.SetText(m_bookset.m_Bookname);
							m_grid1.SetCol(3);
							str.Format(_T("%02d:%02d:%02d"),pnow->tm_hour,pnow->tm_min,pnow->tm_sec);
							m_grid1.SetText(str);
							m_grid1.SetCol(4);
							m_grid1.SetText(readerid);
							}
						}
			    	   break;
		        	case 1:
						{
			        		m_bookloanset.Open();
							m_bookloanset.AddNew();
							time_t now;
                            now = time(0);
							 struct tm *pnow;
                            pnow = localtime(&now);
							m_bookloanset.m_Bookid_loan=m_bookset.m_Bookid;
							m_bookloanset.m_Bookname_loan=m_bookset.m_Bookname;
							m_bookloanset.m_ReaderId_loan=readerid;
							m_bookloanset.m_Loandate=now;
							pnow->tm_mon+=1;
							now = mktime(pnow);
							m_bookloanset.m_Backdate=now;
							m_bookloanset.Update();
							m_bookloanset.Requery();
							m_bookloanset.Close();
							{
								m_bookset.Edit();
								m_bookset.m_Status=0;
								m_bookset.Update();
								m_bookset.Requery();
								MessageBox("借阅书籍"+m_bookset.m_Bookname+"已成功!");
							}
							operatenumber++;
							m_grid.SetRow(operatenumber);
							m_grid.SetCol(0);
							CString str;
							str.Format("%d",operatenumber);
							m_grid.SetText(str);
							m_grid.SetCol(1);
							m_grid.SetText("书籍借出");
							m_grid.SetCol(2);
							m_grid.SetText(m_bookset.m_Bookname);
							m_grid.SetCol(3);
							str.Format(_T("%02d:%02d:%02d"),pnow->tm_hour,pnow->tm_min,pnow->tm_sec);
							m_grid.SetText(str);
							m_grid.SetCol(4);
							m_grid.SetText(readerid);

							m_grid1.SetRow(operatenumber);
							m_grid1.SetCol(0);
							//CString str;
							str.Format("%d",operatenumber);
							m_grid1.SetText(str);
							m_grid1.SetCol(1);
							m_grid1.SetText("书籍借出");
							m_grid1.SetCol(2);
							m_grid1.SetText(m_bookset.m_Bookname);
							m_grid1.SetCol(3);
							str.Format(_T("%02d:%02d:%02d"),pnow->tm_hour,pnow->tm_min,pnow->tm_sec);
							m_grid1.SetText(str);
							m_grid1.SetCol(4);
							m_grid1.SetText(readerid);
						}
					}
				}
	        	m_bookset.Close();
			}
		}

	}
}

int CClerkDlg::checkreaderstatus(CString readerid)
{
	m_bookloanset.m_strFilter="ReaderId_loan='"+readerid+"'";
	m_bookloanset.Open();
	time_t now;
    now = time(0);
	int i=0;
	while(!m_bookloanset.IsEOF())
	{
		if(m_bookloanset.m_Backdate<now)
		{
			m_bookloanset.Close();
			return 3;
		}
		i++;
		m_bookloanset.MoveNext();
	}
	if(i==5)
	{
		m_bookloanset.Close();
		return 2;//返回状态2表示已经借满了书
	}
	else
	{
		m_bookloanset.Close();
		return 1;//返回状态1表示正常状态
	}

}

void CClerkDlg::OnBookback() 
{
	// TODO: Add your control notification handler code here
	CBookOp A;
	A.type=2;
	if(A.DoModal()==IDOK)
	{
		MessageBox("已经顺利归还书籍"+A.m_bookid);
        m_bookset.m_strFilter="Bookid='"+A.m_bookid+"'";
		m_bookset.Open();
		m_bookset.Edit();
		m_bookset.m_Status=1;
		m_bookset.Update();
		m_bookset.Requery();

	 
		time_t now;
        now = time(0);
		 struct tm *pnow;
        pnow = localtime(&now);
		operatenumber++;
		m_grid.SetRow(operatenumber);
		m_grid.SetCol(0);
		CString str;
		str.Format("%d",operatenumber);
		m_grid.SetText(str);
		m_grid.SetCol(1);
		m_grid.SetText("书籍归还");
		m_grid.SetCol(2);  
		m_grid.SetText(m_bookset.m_Bookname);
		m_grid.SetCol(3);
		str.Format(_T("%02d:%02d:%02d"),pnow->tm_hour,pnow->tm_min,pnow->tm_sec);
		m_grid.SetText(str);
		m_grid.SetCol(4);
		m_grid.SetText(m_name);
		m_grid1.SetRow(1);
		m_grid1.SetCol(0);
		str.Format("%d",operatenumber);
		m_grid1.SetText(str);
		m_grid1.SetCol(1);
		m_grid1.SetText("书籍归还");
		m_grid1.SetCol(2);
		m_grid1.SetText(m_bookset.m_Bookname);
		m_grid1.SetCol(3);
		str.Format(_T("%02d:%02d:%02d"),pnow->tm_hour,pnow->tm_min,pnow->tm_sec);
		m_grid1.SetText(str);
		m_grid1.SetCol(4);
		m_grid1.SetText(m_name);
		
		m_bookset.Close();
	};
}

void CClerkDlg::OnCancel() 
{
	// TODO: Add extra cleanup here
	operatenumber=0;
	CDialog::OnCancel();
}

⌨️ 快捷键说明

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