📄 toutdlg.cpp
字号:
// ToutDlg.cpp : implementation file
//
#include "stdafx.h"
#include "MyLib.h"
#include "ToutDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CToutDlg dialog
CToutDlg::CToutDlg(CWnd* pParent /*=NULL*/)
: CDialog(CToutDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CToutDlg)
m_BOOKID = _T("");
m_DATEF = 0;
m_DATET = 0;
m_FBOOKID = _T("");
m_FREADERID = _T("");
m_READERID = _T("");
//}}AFX_DATA_INIT
}
void CToutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CToutDlg)
DDX_Control(pDX, IDC_LIST1, m_List);
DDX_Text(pDX, IDC_BOOKID, m_BOOKID);
DDV_MaxChars(pDX, m_BOOKID, 20);
DDX_DateTimeCtrl(pDX, IDC_DATEF, m_DATEF);
DDX_DateTimeCtrl(pDX, IDC_DATET, m_DATET);
DDX_Text(pDX, IDC_FBOOKID, m_FBOOKID);
DDV_MaxChars(pDX, m_FBOOKID, 20);
DDX_Text(pDX, IDC_FREADERID, m_FREADERID);
DDV_MaxChars(pDX, m_FREADERID, 20);
DDX_Text(pDX, IDC_READERID, m_READERID);
DDV_MaxChars(pDX, m_READERID, 20);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CToutDlg, CDialog)
//{{AFX_MSG_MAP(CToutDlg)
ON_BN_CLICKED(IDC_EXIT, OnExit)
ON_BN_CLICKED(IDC_SEARCH1, OnSearch1)
ON_BN_CLICKED(IDC_SEARCH2, OnSearch2)
ON_BN_CLICKED(IDC_SERCHALL, OnSerchall)
ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList)
ON_BN_CLICKED(IDC_TOFINE, OnTofine)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
BOOL CToutDlg::OnInitDialog()
{
flag = 1;
CDialog::OnInitDialog();
m_List.InsertColumn(0,"图书ID");
m_List.InsertColumn(1,"读者ID");
RECT rect;
m_List.GetWindowRect(&rect);
int wid=rect.right-rect.left;
m_List.SetColumnWidth(0,wid/2);
m_List.SetColumnWidth(1,wid/2);
m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT);
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// CToutDlg message handlers
void CToutDlg::OnExit()
{
if (borrowset.IsOpen())
{
borrowset.Close();
}
if (fineset.IsOpen())
{
fineset.Close();
}
CDialog::OnCancel();
}
void CToutDlg::OnSearch1()
{
flag = 1;
m_List.DeleteAllItems();
UpdateData(TRUE);
CString sqlstr;
sqlstr = "SELECT * FROM BORROW WHERE BOOKID='";
sqlstr += m_FBOOKID;
sqlstr += "'";
if (borrowset.IsOpen())
{
borrowset.Close();
}
if (!borrowset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("借阅表打开失败!");
return;
}
int i=0;
CTime t = CTime::GetCurrentTime();
while (!borrowset.IsEOF())
{
if ((t-borrowset.m_DATET)>=CTimeSpan(1,0,0,0))
{
m_List.InsertItem(i,borrowset.m_BOOKID);
m_List.SetItemText(i,1,borrowset.m_READERID);
i++;
}
borrowset.MoveNext();
}
UpdateData(FALSE);
borrowset.Close();
}
void CToutDlg::OnSearch2()
{
flag = 2;
m_List.DeleteAllItems();
UpdateData(TRUE);
CString sqlstr;
sqlstr = "SELECT * FROM BORROW WHERE READERID='";
sqlstr += m_FREADERID;
sqlstr += "'";
if (borrowset.IsOpen())
{
borrowset.Close();
}
if (!borrowset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("借阅表打开失败!");
return;
}
int i=0;
CTime t = CTime::GetCurrentTime();
while (!borrowset.IsEOF())
{
if ((t-borrowset.m_DATET)>=CTimeSpan(1,0,0,0))
{
m_List.InsertItem(i,borrowset.m_BOOKID);
m_List.SetItemText(i,1,borrowset.m_READERID);
i++;
}
borrowset.MoveNext();
}
UpdateData(FALSE);
borrowset.Close();
}
void CToutDlg::OnSerchall()
{
flag = 3;
m_List.DeleteAllItems();
UpdateData(TRUE);
CString sqlstr;
sqlstr = "SELECT * FROM BORROW";
if (borrowset.IsOpen())
{
borrowset.Close();
}
if (!borrowset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("借阅表打开失败!");
return;
}
int i=0;
CTime t = CTime::GetCurrentTime();
while (!borrowset.IsEOF())
{
if ((t-borrowset.m_DATET)>=CTimeSpan(1,0,0,0))
{
m_List.InsertItem(i,borrowset.m_BOOKID);
m_List.SetItemText(i,1,borrowset.m_READERID);
i++;
}
borrowset.MoveNext();
}
UpdateData(FALSE);
borrowset.Close();
}
void CToutDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
char BOOKID[20];
POSITION pos = m_List.GetFirstSelectedItemPosition();
if (pos != NULL)
{
int n = m_List.GetNextSelectedItem(pos);
m_List.GetItemText(n,0,BOOKID,20);
if (borrowset.IsOpen())
{
borrowset.Close();
}
CString sqlstr = "SELECT * FROM BORROW WHERE BOOKID='";
sqlstr += BOOKID;
sqlstr += "'";
if (!borrowset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("借阅表打开失败!");
return;
}
m_BOOKID = borrowset.m_BOOKID;
m_READERID = borrowset.m_READERID;
m_DATEF = borrowset.m_DATEF;
m_DATET = borrowset.m_DATET;
borrowset.Close();
UpdateData(FALSE);
}
*pResult = 0;
}
void CToutDlg::OnTofine()
{
UpdateData(TRUE);
CString sqlstr;
switch (flag)
{
case 1: sqlstr = "SELECT * FROM BORROW WHERE BOOKID='";
sqlstr += m_FBOOKID;
sqlstr += "'";
break;
case 2: sqlstr = "SELECT * FROM BORROW WHERE READERID='";
sqlstr += m_FREADERID;
sqlstr += "'";
break;
default: sqlstr = "SELECT * FROM BORROW";
break;
}
if (borrowset.IsOpen())
{
borrowset.Close();
}
if (!borrowset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("借阅表打开失败!");
return;
}
while (!borrowset.IsEOF())
{
sqlstr = "SELECT * FROM FINE WHERE BOOKID='";
sqlstr += borrowset.m_BOOKID;
sqlstr += "' AND READERID='";
sqlstr += borrowset.m_READERID;
sqlstr += "'";
if (fineset.IsOpen())
{
fineset.Close();
}
if (!fineset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("罚金表打开失败!");
borrowset.Close();
return;
}
bool single = false;
while (!fineset.IsEOF())
{
if (fineset.m_DEAL==FALSE)
{
single = TRUE;
break;
}
fineset.MoveNext();
}
fineset.Close();
if (single==FALSE)
{
sqlstr = "SELECT * FROM FINE";
if (fineset.IsOpen())
{
fineset.Close();
}
if (!fineset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr))
{
MessageBox("罚金表打开失败!");
borrowset.Close();
return;
}
fineset.AddNew();
fineset.m_BOOKID = borrowset.m_BOOKID;
fineset.m_READERID = borrowset.m_READERID;
fineset.m_DATE = borrowset.m_DATET;
fineset.Update();
fineset.Requery();
fineset.Close();
}
borrowset.MoveNext();
}
borrowset.Close();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -