📄 bankreg.cpp
字号:
// BankReg.cpp : implementation file
//
#include "stdafx.h"
#include "BankSystem.h"
#include "BankReg.h"
#include "banksystemdlg.h"
#include "ADOConn.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CBankReg dialog
CBankReg::CBankReg(CWnd* pParent /*=NULL*/)
: CDialog(CBankReg::IDD, pParent)
{
//{{AFX_DATA_INIT(CBankReg)
m_bAddr = _T("");
m_bName = _T("");
m_bOpNum = 0;
m_bPostcode = _T("");
m_bTel = _T("");
m_bcode = _T("");
//}}AFX_DATA_INIT
}
void CBankReg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CBankReg)
DDX_Text(pDX, IDC_BANKADDR, m_bAddr);
DDX_Text(pDX, IDC_BANKNAME, m_bName);
DDX_Text(pDX, IDC_BANKOPNUM, m_bOpNum);
DDX_Text(pDX, IDC_BANKPOSTCODE, m_bPostcode);
DDX_Text(pDX, IDC_BANKTEL, m_bTel);
DDX_Text(pDX, IDC_BCODE, m_bcode);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CBankReg, CDialog)
//{{AFX_MSG_MAP(CBankReg)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CBankReg message handlers
void CBankReg::OnOK()
{
ADOConn Conn;
Conn.OnInitADOConn();
this->UpdateData(TRUE);
if(m_bName=="")
{
AfxMessageBox("名字不能为空");
GetDlgItem(IDC_BANKNAME)->SetFocus();
return;
}
if(m_bAddr=="")
{
AfxMessageBox("地址不能为空");
GetDlgItem(IDC_BANKADDR)->SetFocus();
return;
}
if(m_bcode=="")
{
AfxMessageBox("卡号标识号不可以为空");
GetDlgItem(IDC_BCODE)->SetFocus();
return;
}
if(havebCode(m_bcode))
{
AfxMessageBox("卡号标识号已经存在");
GetDlgItem(IDC_BCODE)->SetFocus();
return;
}
CTime t=CTime::GetCurrentTime();
int iYear,iMonth,iDay,iHour,iMin;
iYear=t.GetYear();
iMonth=t.GetMonth();
iDay=t.GetDay();
iHour=t.GetHour();
iMin=t.GetMinute();
m_dateTime.Format("%d/%d/%d/%d/%d",iYear,iMonth,iDay,iHour,iMin);
//CString bID;
/*int SIZE_BID=3;
char CH_BID[]="123456789";
srand((unsigned)time(NULL));
for(int j=0;j!=SIZE_BID;++j)
{ int x=rand()%(sizeof(CH_BID)-1);
m_bId+=CH_BID[x];
}*/
//银行代号
CString sql;
sql.Format("insert into bankInfo(bankId,bankName,bankAddr,bTel,bpostcode,bRegdate,bOpNum) values(\'%s\',\'%s\',\'%s\',\'%s\',\'%s\',\'%s\',\'%d\')",m_bcode,m_bName,m_bAddr,m_bTel,m_bPostcode,m_dateTime, m_bOpNum);
Conn.Execute((_bstr_t)sql);
srand((unsigned)time(NULL));//时钟种子
for(int j=0;j!=m_bOpNum;++j)
{
CString opId,opPwd;//随即生成工作人员的代号与密码
opId="";
opPwd="";
int SIZE_ID=4;//代码为数
int SIZE_PWD=6;//密码为数
char CH_ID[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char CH_PWD[]="0123456789abcdefghijklmnopqrstuvwxyz";
while(1)
{
for(int i = 0;i!=SIZE_ID;++i)
{
int x=rand()%(sizeof(CH_ID)-1);
opId+=CH_ID[x];//生成代号
}
// MessageBox(opId);
if(have(opId))
continue;
else break;
}
for( int i = 0;i!=SIZE_PWD;++i)
{
int x=rand()%(sizeof(CH_PWD)-1);
opPwd+=CH_PWD[x];//生成密码
}
sql.Format("insert into operator(opId,opPwd,BankId) values(\'%s\',\'%s\',\'%s\')",opId,opPwd,m_bcode);
Conn.Execute((_bstr_t)sql);
}
CBankSystemApp* pApp=(CBankSystemApp*)AfxGetApp();
CBankSystemDlg* pDlg=(CBankSystemDlg*)pApp->m_pMainWnd;
//pDlg->m_list.ShowWindow(!SW_HIDE);
pDlg->RefreshData();
CDialog::OnOK();
}
int CBankReg::have(CString opId)
{
ADOConn Conn;
Conn.OnInitADOConn();
CString sql;
_RecordsetPtr pRst;
sql.Format("select * from Operator where opId=\'%s\'",opId);
pRst=Conn.GetRecordset((_bstr_t)sql);
if(pRst->adoEOF)
return 0;
else
return 1;
}
int CBankReg::havebCode(CString bCode)
{
ADOConn Conn;
Conn.OnInitADOConn();
CString sql;
_RecordsetPtr pRst;
sql.Format("select * from bankInfo where bankId=\'%s\'",bCode);
pRst=Conn.GetRecordset((_bstr_t)sql);
if(pRst->adoEOF)
return 0;
else
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -