student_borrow.cpp
来自「图书管理系统 语言:C,SQL 功能:实现图书管理的数字化」· C++ 代码 · 共 163 行
CPP
163 行
// Student_borrow.cpp : implementation file
//
#include "stdafx.h"
#include "Library.h"
#include "Student_borrow.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// Student_borrow dialog
Student_borrow::Student_borrow(CWnd* pParent /*=NULL*/)
: CDialog(Student_borrow::IDD, pParent)
{
//{{AFX_DATA_INIT(Student_borrow)
m_sid_temp = _T("");
m_isbn_temp = _T("");
//}}AFX_DATA_INIT
}
void Student_borrow::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Student_borrow)
DDX_Text(pDX, IDC_EDIT1, m_sid_temp);
DDX_Text(pDX, IDC_EDIT2, m_isbn_temp);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(Student_borrow, CDialog)
//{{AFX_MSG_MAP(Student_borrow)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Student_borrow message handlers
void Student_borrow::OnOK()
{
// TODO: Add extra validation here
//CDialog::OnOK();
UpdateData(TRUE);
if(m_sid_temp.IsEmpty()||m_isbn_temp.IsEmpty())
{
MessageBox("请输入完整信息!");
return;
}
CString str="Sid='"+m_sid_temp+"'";
student_set.m_strFilter=str;
student_set.Open();//打开数据集合
int recount=student_set.GetRecordCount();
if(recount==0)
{
MessageBox("无此学生记录!");
student_set.m_strFilter="";
UpdateData(FALSE);
student_set.Close();
return;
}
else
{
CString str2="ISBN='"+m_isbn_temp+"'";
book_set.m_strFilter=str2;
book_set.Open();
int recount2=book_set.GetRecordCount();
if(recount2==0)
{
MessageBox("无此图书记录!");
book_set.m_strFilter="";
student_set.m_strFilter="";//
UpdateData(FALSE);
book_set.Close();
student_set.Close();
return;
}
else//既有此学生又有此图书的情况
{
borrow_set.Open();
//int recount3=borrow_set.GetRecordCount();
while(!borrow_set.IsEOF())//判断是否为结尾
{
if(m_sid_temp==borrow_set.m_Sid)
{
CTime t1=borrow_set.m_Senttime.GetTime();
CTime t2=CTime::GetCurrentTime();
if(t1<t2)//超期不能借阅图书
{
MessageBox("该读者有图书超期未还,不能借阅图书!");
borrow_set.m_strFilter="";
student_set.m_strFilter="";//
book_set.m_strFilter="";
borrow_set.MoveFirst();
borrow_set.Requery();
UpdateData(FALSE);
book_set.Close();
student_set.Close();
borrow_set.Close();
return;
}
}
borrow_set.MoveNext();
}
borrow_set.MoveFirst();
borrow_set.Requery();
if(book_set.m_B_left_count>=1)//如果还有库存
{
book_set.Edit();
book_set.m_ISBN=book_set.m_ISBN;
book_set.m_Bname=book_set.m_Bname;
book_set.m_Bauthor=book_set.m_Bauthor;
book_set.m_Bpublisher=book_set.m_Bpublisher;
book_set.m_Bprice=book_set.m_Bprice;
book_set.m_B_total_count=book_set.m_B_total_count;
book_set.m_B_borrow_count++;
book_set.Update();//增加和更新都要执行一个此操作
book_set.MoveFirst();
book_set.Requery();
book_set.m_strFilter="";
borrow_set.AddNew();
CTime t2=CTime::GetCurrentTime();
borrow_set.m_Sid=m_sid_temp;
borrow_set.m_ISBN=m_isbn_temp;
borrow_set.m_Borrowtime=t2;
borrow_set.Update();//增加和更新都要执行一个此操作
borrow_set.MoveFirst();
borrow_set.Requery();
borrow_set.m_strFilter="";
MessageBox("借阅操作已成功!");
}
else
MessageBox("没有库存!");
UpdateData(FALSE);
borrow_set.Close();
book_set.Close();
student_set.Close();
return;
}
}
}
void Student_borrow::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?