📄 student_manage.cpp
字号:
// Student_manage.cpp : implementation file
//
#include "stdafx.h"
#include "Library.h"
#include "Student_manage.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// Student_manage dialog
Student_manage::Student_manage(CWnd* pParent /*=NULL*/)
: CDialog(Student_manage::IDD, pParent)
{
//{{AFX_DATA_INIT(Student_manage)
m_sid_temp = _T("");
m_sid = _T("");
m_sname = _T("");
m_sprofession = _T("");
//}}AFX_DATA_INIT
}
void Student_manage::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Student_manage)
DDX_Control(pDX, IDC_LIST4, m_borrow_list);
DDX_Text(pDX, IDC_EDIT1, m_sid_temp);
DDX_Text(pDX, IDC_EDIT2, m_sid);
DDX_Text(pDX, IDC_EDIT3, m_sname);
DDX_Text(pDX, IDC_EDIT4, m_sprofession);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(Student_manage, CDialog)
//{{AFX_MSG_MAP(Student_manage)
ON_BN_CLICKED(IDC_Search, OnSearch)
ON_BN_CLICKED(IDC_Add, OnAdd)
ON_BN_CLICKED(IDC_Delete, OnDelete)
ON_BN_CLICKED(IDC_Update, OnUpdate)
ON_BN_CLICKED(IDC_Student_print, OnStudentprint)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Student_manage message handlers
void Student_manage::OnSearch()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_sid_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="";
}
else
{
m_sid=student_set.m_Sid;
m_sname=student_set.m_Sname;
m_sprofession=student_set.m_Sprofession;
UpdateData(FALSE);
}
UpdateData(FALSE);//显示
student_set.Close();
}
void Student_manage::OnAdd()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_sid.IsEmpty()||m_sname.IsEmpty()||m_sprofession.IsEmpty())
{
MessageBox("请输入完整的学生信息!");
return;
}
CString str="SId='"+m_sid+"'";
student_set.m_strFilter=str;
student_set.Open();
int recount=0;
recount=student_set.GetRecordCount();//
if(recount==0)
{
student_set.AddNew();//使数据集对象处于增加状态
student_set.m_Sid=m_sid;
student_set.m_Sname=m_sname;
student_set.m_Sprofession=m_sprofession;
student_set.Update();//增加和更新都要执行一个此操作
student_set.MoveFirst();
student_set.Requery();
MessageBox("添加学生信息成功!");
student_set.m_strFilter="";//
}
else
{
MessageBox("该学生信息已经存在");
}
UpdateData(FALSE);
student_set.Close();
}
void Student_manage::OnDelete()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_sid.IsEmpty())
{
MessageBox("请输入学号!");
return;
}
borrow_set.Open();
book_set.Open();
m_borrow_list.ResetContent();//列表清空
while(!borrow_set.IsEOF())
{
if(borrow_set.m_Sid==m_sid)
{
while(!book_set.IsEOF())
{
if(book_set.m_ISBN==borrow_set.m_ISBN)
{
book_set.m_B_borrow_count++;
break;
}
book_set.MoveNext();
}
book_set.MoveFirst();
book_set.Requery();
book_set.Close();
borrow_set.Delete();
}
borrow_set.MoveNext();
}
borrow_set.MoveFirst();//?
borrow_set.Requery();
borrow_set.Close();
student_set.Open();
student_set.Delete();
student_set.MoveFirst();//?
student_set.Requery();//?
m_sid="";
m_sname="";
m_sprofession="";
MessageBox("删除成功");
UpdateData(FALSE);
student_set.Close();
}
void Student_manage::OnUpdate()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_sid.IsEmpty())
{
MessageBox("请输入学号!");
return;
}
student_set.Open();
student_set.Edit();//处于更新状态
student_set.m_Sid=m_sid;
student_set.m_Sname=m_sname;
student_set.m_Sprofession=m_sprofession;
student_set.Update();
student_set.MoveFirst();
student_set.Requery();
MessageBox("学生信息更新成功!");
UpdateData(FALSE);
student_set.Close();
}
void Student_manage::OnStudentprint()
{
// TODO: Add your control notification handler code here
int i=1;
CString str=m_sid;
m_borrow_list.ResetContent();//列表清空
str.Format("%s",m_sid);
borrow_set.Open();
while(!borrow_set.IsEOF()) //判断是否为结尾
{
if(borrow_set.m_Sid==m_sid)
{
borrow_set.m_ISBN.TrimRight();
borrow_set.m_ISBN.TrimLeft();
CString temp,temp1,temp2;
CTime t1=borrow_set.m_Borrowtime.GetTime();
CTime t2=borrow_set.m_Senttime.GetTime();
CTime t=CTime::GetCurrentTime();
temp1=t1.Format("%Y-%m-%d");
temp2=t2.Format("%Y-%m-%d");
if(t2>=t)
temp.Format("%d %s %s %s",i,borrow_set.m_ISBN,temp1,temp2);
else
temp.Format("%d %s %s %s 超期",i,borrow_set.m_ISBN,temp1,temp2);
m_borrow_list.InsertString(-1,temp);
UpdateData(FALSE);
i++;
}
borrow_set.MoveNext();
}
borrow_set.MoveFirst();
borrow_set.Requery();
borrow_set.Close();
// UpdateData(FALSE);
}
void Student_manage::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -