📄 adminreaderinfo.cpp
字号:
// AdminReaderInfo.cpp : implementation file
//
#include "stdafx.h"
#include "library.h"
#include "AdminReaderInfo.h"
#include "_recordset.h"
#include "ADOConn.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
///////////////////////////////////////////////////////////////////////////
// CAdminReaderInfo dialog
CAdminReaderInfo::CAdminReaderInfo(CWnd* pParent /*=NULL*/)
: CDialog(CAdminReaderInfo::IDD, pParent)
{
//{{AFX_DATA_INIT(CAdminReaderInfo)
m_EditQuery = _T("");
m_RNo = _T("");
m_RPW = _T("");
m_RName = _T("");
m_RTel = _T("");
m_RAdd = _T("");
m_RMax = _T("");
m_RTime = _T("");
m_RTotal = 0;
m_RNow = 0;
m_RPay = 0.0f;
//}}AFX_DATA_INIT
}
void CAdminReaderInfo::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAdminReaderInfo)
DDX_Control(pDX, IDC_COMBO3, m_Combo3);
DDX_Control(pDX, IDC_COMBO2, m_Combo2);
DDX_Control(pDX, IDC_COMBO1, m_Combo);
DDX_Text(pDX, IDC_EDIT_QUERY, m_EditQuery);
DDX_Control(pDX, IDC_ADODC1, m_ado);
DDX_Control(pDX, IDC_DATAGRID1, m_DataGrid);
DDX_Text(pDX, IDC_EDIT1, m_RNo);
DDX_Text(pDX, IDC_EDIT2, m_RPW);
DDX_Text(pDX, IDC_EDIT4, m_RName);
DDX_Text(pDX, IDC_EDIT5, m_RTel);
DDX_Text(pDX, IDC_EDIT6, m_RAdd);
DDX_Text(pDX, IDC_EDIT10, m_RMax);
DDX_Text(pDX, IDC_EDIT11, m_RTime);
DDX_Text(pDX, IDC_EDIT9, m_RTotal);
DDX_Text(pDX, IDC_EDIT8, m_RNow);
DDX_Text(pDX, IDC_EDIT7, m_RPay);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAdminReaderInfo, CDialog)
//{{AFX_MSG_MAP(CAdminReaderInfo)
ON_BN_CLICKED(IDC_BTN_QUERY, OnBtnQuery)
ON_BN_CLICKED(IDC_BTN_PW, OnBtnPw)
ON_BN_CLICKED(IDC_BTN_OK, OnBtnOk)
ON_BN_CLICKED(IDC_BTN_INSERT, OnBtnInsert)
ON_BN_CLICKED(IDC_BTN_FRESH, OnBtnFresh)
ON_BN_CLICKED(IDC_BTN_EDIT, OnBtnEdit)
ON_BN_CLICKED(IDC_BTN_DELETE, OnBtnDelete)
ON_CBN_SELCHANGE(IDC_COMBO2, OnSelchangeCombo2)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAdminReaderInfo message handlers
BOOL CAdminReaderInfo::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_flag = 0;
((CButton *)GetDlgItem(IDC_RADIO6))->SetCheck(TRUE);//选上
m_Combo.SetCurSel(1);
m_Combo2.SetCurSel(0);
m_Combo3.SetCurSel(0);
//((CButton *)GetDlgItem(IDC_BTN_INSERT))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_BTN_DELETE))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_BTN_FRESH))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_BTN_EDIT))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_BTN_PW))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_CAOZUO))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT1))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT2))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT4))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT5))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT6))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT7))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT8))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT9))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT10))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT11))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_EDIT10))->SetWindowText("8");
((CButton *)GetDlgItem(IDC_EDIT11))->SetWindowText("28");
((CButton *)GetDlgItem(IDC_COMBO2))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_COMBO3))->EnableWindow(FALSE);
((CButton *)GetDlgItem(IDC_BTN_OK))->EnableWindow(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CAdminReaderInfo::OnBtnQuery()
{
// TODO: Add your control notification handler code here
UpdateData(true);
int index;
CString strCom,vSQL;
vSQL = "Select RNo As 帐号,RName As 姓名, Type As 类型,Address As 地址 ";
vSQL += " From Reader Where ";
if (((CButton *)GetDlgItem(IDC_RADIO6))->GetCheck() == 1)
{
strCom = m_EditQuery + "%";
}
else
{
strCom = "%" + m_EditQuery + "%";
}
index = m_Combo.GetCurSel();
switch (index)
{
case 0:
vSQL = vSQL + "RNo like '" +strCom + "'";
break;
case 1:
vSQL = vSQL + "RName like '" +strCom + "'";
break;
case 2:
if (m_EditQuery == "1")
strCom = "学生";
else if (m_EditQuery == "2")
strCom = "教师";
else if (m_EditQuery == "3")
strCom = "外单位";
else
strCom = "";
vSQL = vSQL + "Type='" +strCom + "'";
break;
case 3:
vSQL = vSQL + "Address like '" +strCom + "'";
break;
}
m_ado.SetRecordSource(vSQL); //刷新ADO Data控件的记录源
m_ado.Refresh();
RefreshData();
UpdateData(false);
}
void CAdminReaderInfo::OnBtnPw()
{
// TODO: Add your control notification handler code here
MessageBox("帐号为 "+reader.GetNo()+" 的读者的密码为:"+reader.GetPW()+ " 请记住密码!");
}
void CAdminReaderInfo::OnBtnOk()
{
// TODO: Add your control notification handler code here
UpdateData(true);
if (m_RName=="")
{
MessageBox("姓名不能为空!");
return;
}
if (m_flag == 2)//更新
{
CString str;
int i=m_Combo2.GetCurSel();
if (i==0)
str = "学生";
else if (i==1)
str = "教师";
else
str = "外单位";
reader.SetType(str);
i=m_Combo3.GetCurSel();
if (i==0)
str = "男";
else
str = "女";
reader.SetSex(str);
reader.SetName(m_RName);
reader.SetPay(m_RPay);
reader.SetTel(m_RTel);
reader.SetAddress(m_RAdd);
reader.SQL_Update(reader.GetNo());
MessageBox("更新成功!");
}
else //flag=1;
{
UpdateData(true);
if (m_RName=="")
{
MessageBox("姓名不能为空!!");
return;
}
CString stype,vNo,sex;
int itype = m_Combo2.GetCurSel();
switch (itype)
{
case 0:
stype="学生";
vNo="S";
break;
case 1:
stype="教师";
vNo="T";
break;
case 2:
stype="外单位";
vNo="F";
break;
}
CReader r;
r.SetAddress(m_RAdd);
r.SetBrNum(0);
r.SetName(m_RName);
r.SetPay(0.0);
r.SetTel(m_RTel);
r.SetTotalNum(0);
r.SetType(stype);
itype=m_Combo3.GetCurSel();
if (itype==0)
r.SetSex("男");
else
r.SetSex("女");
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
_bstr_t vSQL;
vSQL = "select top 1 RNo from Reader where Type='"+stype+"' order by RNo desc";
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
{
vNo=vNo+"000001";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -