📄 stutranin.cpp
字号:
// StuTranIn.cpp : implementation file
//
#include "stdafx.h"
#include "EduAdministration.h"
#include "StuTranIn.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CStuTranIn dialog
CStuTranIn::CStuTranIn(CWnd* pParent /*=NULL*/)
: CDialog(CStuTranIn::IDD, pParent)
{
//{{AFX_DATA_INIT(CStuTranIn)
m_fromSchool = _T("");
m_inGrade = _T("");
m_outGrade = _T("");
m_inInstitute = _T("");
m_outInstitute = _T("");
m_inSpecialty = _T("");
m_outSpecialty = _T("");
m_name = _T("");
m_num = _T("");
m_toSchool = _T("");
m_inTranTime = _T("");
m_outTranTime = _T("");
//}}AFX_DATA_INIT
}
void CStuTranIn::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CStuTranIn)
DDX_Control(pDX, IDC_EDTTOSCH, m_ctlToSchool);
DDX_Control(pDX, IDC_BTNCOMP, m_btnComp);
DDX_Control(pDX, IDC_LISTLOGSOUT, m_LogListOut);
DDX_Control(pDX, IDC_LISTLOGSIN, m_LogListIn);
DDX_Control(pDX, IDC_EDTSTUNUM, m_ctlNum);
DDX_Control(pDX, IDC_EDTSTUNAME, m_ctlName);
DDX_Control(pDX, IDC_BTNOK, m_btnOk);
DDX_Control(pDX, IDC_BTNCLEAR, m_btnClear);
DDX_Text(pDX, IDC_EDTFROMSCH, m_fromSchool);
DDX_Text(pDX, IDC_EDTGRADE, m_inGrade);
DDX_Text(pDX, IDC_EDTGRADE2, m_outGrade);
DDX_Text(pDX, IDC_EDTINSTITUTE, m_inInstitute);
DDX_Text(pDX, IDC_EDTINSTITUTE2, m_outInstitute);
DDX_Text(pDX, IDC_EDTSPECIALTY, m_inSpecialty);
DDX_Text(pDX, IDC_EDTSPECIALTY2, m_outSpecialty);
DDX_Text(pDX, IDC_EDTSTUNAME, m_name);
DDX_Text(pDX, IDC_EDTSTUNUM, m_num);
DDX_Text(pDX, IDC_EDTTOSCH, m_toSchool);
DDX_Text(pDX, IDC_EDTTRANTIME, m_inTranTime);
DDX_Text(pDX, IDC_EDTTRANTIME2, m_outTranTime);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CStuTranIn, CDialog)
//{{AFX_MSG_MAP(CStuTranIn)
ON_BN_CLICKED(IDC_RADIOIN, OnRadioin)
ON_BN_CLICKED(IDC_RADIOOUT, OnRadioout)
ON_BN_CLICKED(IDC_BTNOK, OnBtnok)
ON_BN_CLICKED(IDC_BTNCOMP, OnBtncomp)
ON_BN_CLICKED(IDC_BTNCLEAR, OnBtnclear)
ON_WM_SHOWWINDOW()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CStuTranIn message handlers
BOOL CStuTranIn::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_btnClear.SetIcon(IDI_ICONCANCEL);
m_btnOk.SetIcon(IDI_ICONOK);
m_bInSelected = false;
m_bOutSelected = false;
m_LogListIn.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_LogListOut.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_LogListIn.InsertColumn(0,"学号",LVCFMT_LEFT,60);
m_LogListIn.InsertColumn(1,"姓名",LVCFMT_LEFT,60);
m_LogListIn.InsertColumn(2,"转入学院",LVCFMT_LEFT,60);
m_LogListIn.InsertColumn(3,"转入专业",LVCFMT_LEFT,60);
m_LogListIn.InsertColumn(4,"转入年级",LVCFMT_LEFT,60);
m_LogListIn.InsertColumn(5,"来自学校",LVCFMT_LEFT,60);
m_LogListIn.InsertColumn(6,"办理时间",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(0,"学号",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(1,"姓名",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(2,"来自学院",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(3,"来自专业",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(4,"来自年级",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(5,"转到学校",LVCFMT_LEFT,60);
m_LogListOut.InsertColumn(6,"办理时间",LVCFMT_LEFT,60);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CStuTranIn::OnRadioin()
{
// TODO: Add your control notification handler code here
m_bOutSelected = false;
m_bInSelected = true;
}
void CStuTranIn::OnRadioout()
{
// TODO: Add your control notification handler code here
m_bOutSelected = true;
m_bInSelected = false;
}
void CStuTranIn::OnBtnok()
{
// TODO: Add your control notification handler code here
if(!m_bInSelected&&!m_bOutSelected)
return;
UpdateData();
if(m_name==""||m_num == ""){
AfxMessageBox("请输入学生名字和学号");
m_ctlNum.SetFocus();
if(m_num!="")
m_ctlName.SetFocus();
return;
}
if(m_bInSelected)
{
if(!m_Stu.IsOpen())
m_Stu.Open();
m_Stu.m_strFilter.Format("stuNum='%s'",m_num);
m_Stu.Requery();
if(!m_Stu.IsEOF()){
AfxMessageBox("学号已存在");
m_Stu.Close();
m_ctlNum.SetFocus();
return;
}
m_Stu.Close();
if(m_inTranTime==""||m_inSpecialty==""||m_inInstitute==""||m_inGrade==""
||m_fromSchool==""){
AfxMessageBox("转入资料不完整,请输入。");
return;
}
if(!m_StuIn.IsOpen())
m_StuIn.Open();
m_StuIn.AddNew();
m_StuIn.m_fromSchool = m_fromSchool;
m_StuIn.m_grade = m_inGrade;
m_StuIn.m_inId = m_num;
m_StuIn.m_inName = m_name;
m_StuIn.m_inNum = m_num;
m_StuIn.m_institute = m_inInstitute;
m_StuIn.m_specialty = m_inSpecialty;
m_StuIn.m_tranDate = m_inTranTime;
m_StuIn.Update();
m_StuIn.Close();
if(!m_Stu.IsOpen())
m_Stu.Open();
m_Stu.AddNew();
m_Stu.m_stuName = m_name;
m_Stu.m_stuNum = m_num;
m_Stu.m_grade = m_inGrade;
m_Stu.m_institute = m_inInstitute;
m_Stu.m_specialty = m_inSpecialty;
m_Stu.Update();
m_Stu.Close();
int i = m_LogListIn.GetItemCount();
m_LogListIn.InsertItem(i,m_num);
m_LogListIn.SetItemText(i,1,m_name);
m_LogListIn.SetItemText(i,2,m_inInstitute);
m_LogListIn.SetItemText(i,3,m_inSpecialty);
m_LogListIn.SetItemText(i,4,m_inGrade);
m_LogListIn.SetItemText(i,5,m_fromSchool);
m_LogListIn.SetItemText(i,6,m_inTranTime);
if(!m_course.IsOpen())
m_course.Open();
m_course.m_strFilter.Format("institute='%s' and specialty='%s'",m_inInstitute,m_inSpecialty);
m_course.Requery();
if(m_course.IsEOF()){
m_course.Close();
setFieldNull();
return;
}
CString stucourse="";
while (!m_course.IsEOF())
{
stucourse +=m_course.m_couID + " ";
m_course.MoveNext();
}
m_course.Close();
if(!m_StuCourse.IsOpen())
m_StuCourse.Open();
m_StuCourse.AddNew();
m_StuCourse.m_ID = m_num;
m_StuCourse.m_stuNum = m_num;
m_StuCourse.m_courseIDs = stucourse;
m_StuCourse.Update();
m_StuCourse.Close();
setFieldNull();
}
else
{
if(m_outTranTime==""||m_outSpecialty==""||m_outInstitute==""||m_outGrade==""
||m_toSchool==""){
AfxMessageBox("转出资料不完整,请输入。");
return;
}
if(!m_Stu.IsOpen())
m_Stu.Open();
m_Stu.m_strFilter.Format("stuNum='%s'",m_num);
m_Stu.Requery();
if(m_Stu.IsEOF()){
AfxMessageBox("无此学生");
m_Stu.Close();
m_ctlNum.SetFocus();
return;
}
m_Stu.Delete();
m_Stu.Close();
if(!m_StuOut.IsOpen())
m_StuOut.Open();
m_StuOut.AddNew();
m_StuOut.m_outId = m_num;
m_StuOut.m_outName = m_name;
m_StuOut.m_outNum = m_num;
m_StuOut.m_grade = m_outGrade;
m_StuOut.m_institute = m_outInstitute;
m_StuOut.m_specialty = m_outSpecialty;
m_StuOut.m_ToSchool = m_toSchool;
m_StuOut.m_tranDate = m_outTranTime;
m_StuOut.Update();
m_StuOut.Close();
if(!m_StuCourse.IsOpen())
m_StuCourse.Open();
m_StuCourse.m_strFilter.Format("stuNum='%s'",m_num);
m_StuCourse.Requery();
if(!m_StuCourse.IsEOF())
m_StuCourse.Delete();
m_StuCourse.Close();
int j = m_LogListOut.GetItemCount();
m_LogListOut.InsertItem(j,m_num);
m_LogListOut.SetItemText(j,1,m_name);
m_LogListOut.SetItemText(j,2,m_outInstitute);
m_LogListOut.SetItemText(j,3,m_outSpecialty);
m_LogListOut.SetItemText(j,4,m_outGrade);
m_LogListOut.SetItemText(j,5,m_toSchool);
m_LogListOut.SetItemText(j,6,m_outTranTime);
}
setFieldNull();
}
void CStuTranIn::setInList()
{
m_LogListIn.DeleteAllItems();
int i=0;
if(!m_StuIn.IsOpen())
m_StuIn.Open();
while (!m_StuIn.IsEOF())
{
m_LogListIn.InsertItem(i,m_StuIn.m_inNum);
m_LogListIn.SetItemText(i,1,m_StuIn.m_inName);
m_LogListIn.SetItemText(i,2,m_StuIn.m_institute);
m_LogListIn.SetItemText(i,3,m_StuIn.m_specialty);
m_LogListIn.SetItemText(i,4,m_StuIn.m_grade);
m_LogListIn.SetItemText(i,5,m_StuIn.m_fromSchool);
m_LogListIn.SetItemText(i,6,m_StuIn.m_tranDate);
i++;
m_StuIn.MoveNext();
}
m_StuIn.Close();
}
void CStuTranIn::setOutList()
{
m_LogListOut.DeleteAllItems();
int i=0;
if(!m_StuOut.IsOpen())
m_StuOut.Open();
while (!m_StuOut.IsEOF())
{
m_LogListOut.InsertItem(i,m_StuOut.m_outNum);
m_LogListOut.SetItemText(i,1,m_StuOut.m_outName);
m_LogListOut.SetItemText(i,2,m_StuOut.m_institute);
m_LogListOut.SetItemText(i,3,m_StuOut.m_specialty);
m_LogListOut.SetItemText(i,4,m_StuOut.m_grade);
m_LogListOut.SetItemText(i,5,m_StuOut.m_ToSchool);
m_LogListOut.SetItemText(i,6,m_StuOut.m_tranDate);
i++;
m_StuOut.MoveNext();
}
m_StuOut.Close();
}
void CStuTranIn::setFieldNull()
{
m_num = "";
m_name = "";
m_inTranTime = "";
m_inSpecialty = "";
m_inInstitute = "";
m_inGrade = "";
m_fromSchool = "";
m_outTranTime = "";
m_outSpecialty = "";
m_outInstitute = "";
m_outGrade = "";
m_toSchool = "";
UpdateData(false);
}
void CStuTranIn::OnBtncomp()
{
// TODO: Add your control notification handler code here
UpdateData();
if(m_num == ""){
AfxMessageBox("请输入学生学号");
m_ctlNum.SetFocus();
return;
}
if(!m_Stu.IsOpen())
m_Stu.Open();
m_Stu.m_strFilter.Format("stuNum='%s'",m_num);
m_Stu.Requery();
if(!m_Stu.IsEOF())
{
m_outGrade = m_Stu.m_grade;
m_outInstitute = m_Stu.m_institute;
m_outSpecialty = m_Stu.m_specialty;
m_name = m_Stu.m_stuName;
UpdateData(false);
m_ctlToSchool.SetFocus();
}
m_Stu.Close();
}
void CStuTranIn::OnBtnclear()
{
// TODO: Add your control notification handler code here
m_inGrade = "";
m_inInstitute = "";
m_inSpecialty = "";
m_inTranTime = "";
m_outGrade = "";
m_outInstitute = "";
m_outSpecialty = "";
m_outTranTime = "";
m_name = "";
m_num = "";
m_fromSchool = "";
m_toSchool = "";
m_ctlNum.SetFocus();
UpdateData(false);
}
void CStuTranIn::OnShowWindow(BOOL bShow, UINT nStatus)
{
CDialog::OnShowWindow(bShow, nStatus);
// TODO: Add your message handler code here
setInList();
setOutList();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -