📄 moneytransfer.cpp
字号:
// MoneyTransfer.cpp : 实现文件
//
#include "stdafx.h"
#include "BankService.h"
#include "MoneyTransfer.h"
#include ".\moneytransfer.h"
// CMoneyTransfer 对话框
IMPLEMENT_DYNAMIC(CMoneyTransfer, CDialog)
CMoneyTransfer::CMoneyTransfer(CWnd* pParent /*=NULL*/)
: CDialog(CMoneyTransfer::IDD, pParent)
, m_fromuser(_T(""))
, m_frompwd(_T(""))
, m_touser(_T(""))
, m_money(_T(""))
{
}
CMoneyTransfer::~CMoneyTransfer()
{
}
void CMoneyTransfer::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_FROM_USER, m_fromuser);
DDX_Text(pDX, IDC_FROM_PWD, m_frompwd);
DDX_Text(pDX, IDC_TO_USER, m_touser);
DDX_Text(pDX, IDC_MONEY, m_money);
}
BEGIN_MESSAGE_MAP(CMoneyTransfer, CDialog)
ON_BN_CLICKED(IDC_Transfer, OnBnClickedTransfer)
END_MESSAGE_MAP()
// CMoneyTransfer 消息处理程序
void CMoneyTransfer::OnBnClickedTransfer()
{
// TODO: 在此添加控件通知处理程序代码
//更新输入数据
UpdateData();
//查询from_user
CString strQuery="SELECT * FROM bankbook WHERE bankbook.accnum=\'"+m_fromuser.Trim()+"\' AND bankbook.password=\'"+m_frompwd.Trim()+"\'";
pRst.CreateInstance("ADODB.Recordset");
pRst->Open(_bstr_t(strQuery),_variant_t((IDispatch*)pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
//查询to_user
CString strQuery2="SELECT * FROM bankbook WHERE bankbook.accnum=\'"+m_touser.Trim()+"'";
pRst2.CreateInstance("ADODB.Recordset");
pRst2->Open(_bstr_t(strQuery2),_variant_t((IDispatch*)pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
//如果两个账户都存在
if(!pRst->rsEOF && !pRst2->rsEOF)
{
CString str_from_money=(_bstr_t)pRst->GetCollect("amount");
float from_money=atof(str_from_money);
CString str_to_money=(_bstr_t)pRst2->GetCollect("amount");
float to_money=atof(str_to_money);
float money=atof(m_money);
//检查余额是否充足,并转帐
if(from_money-money>0)
{
//源帐户余额-转帐额
from_money=from_money-money;
str_from_money.Format("%f",from_money);
//目的帐户余额+转帐额
to_money=to_money+money;
str_to_money.Format("%f",to_money);
//更新两个帐户的余额
pRst->put_Collect(_variant_t("amount"),_variant_t(from_money));
pRst2->put_Collect(_variant_t("amount"),_variant_t(to_money));
pRst->Update();
pRst2->Update();
AfxMessageBox("转帐成功");
}
else
{
AfxMessageBox("余额不足");
}
}
else
{
AfxMessageBox("您的账户号码或密码有错");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -