📄 clerkdlg.cpp
字号:
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 + -