⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drawmoney.cpp

📁 银行系统的网上用户操作模块.用户可以以网页的形式注册银行帐号,并进行转帐操作.
💻 CPP
字号:
// DrawMoney.cpp : 实现文件
//

#include "stdafx.h"
#include "BankService.h"
#include "DrawMoney.h"
#include ".\drawmoney.h"


// CDrawMoney 对话框

IMPLEMENT_DYNAMIC(CDrawMoney, CDialog)
CDrawMoney::CDrawMoney(CWnd* pParent /*=NULL*/)
	: CDialog(CDrawMoney::IDD, pParent)
	, m_accnum(_T(""))
	, m_money(0)
	, m_pwd(_T(""))
{
}

CDrawMoney::~CDrawMoney()
{
}

void CDrawMoney::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_ACCOUNT_NUM, m_accnum);
	DDX_Text(pDX, IDC_MONEY, m_money);
	DDX_Control(pDX, IDC_ACCOUNT_LIST, m_AccountList);
	DDX_Text(pDX, IDC_PWD, m_pwd);
}


BEGIN_MESSAGE_MAP(CDrawMoney, CDialog)
	ON_BN_CLICKED(IDC_QUERY, OnBnClickedQuery)
	ON_BN_CLICKED(IDC_DRAW_MONEY, OnBnClickedDrawMoney)
END_MESSAGE_MAP()


// CDrawMoney 消息处理程序

void CDrawMoney::OnBnClickedQuery()
{
	// TODO: 在此添加控件通知处理程序代码

		//查询此帐户的信息
	UpdateData();
	CString str="SELECT * FROM bankbook WHERE accnum=\'"+m_accnum+"\'";

	try{
		pRst=pConn->Execute(_bstr_t(str),NULL,adCmdText);
	}
	catch(_com_error &e)
	{
		MessageBox(e.ErrorMessage()); 
		return ;
	}

	//清空列表框
	m_AccountList.ResetContent();
	//将此帐号的详细信息加到列表框
	while(!pRst->rsEOF)
	{
		CString accnumstr="帐号:	"" "+(_bstr_t)pRst->GetCollect("accnum")+" ";
		CString namestr="姓名:	"" "+(_bstr_t)pRst->GetCollect("uname")+" ";
		CString idstr="身份证:	"" "+(_bstr_t)pRst->GetCollect("uid")+" ";
		CString moneystr="余额:	"" "+(_bstr_t)pRst->GetCollect("amount")+" ";
		CString fundtypestr="帐户类型:	"" "+(_bstr_t)pRst->GetCollect("fundtype")+" ";
		
		m_AccountList.AddString(accnumstr);
		m_AccountList.AddString(namestr);
		m_AccountList.AddString(idstr);
		m_AccountList.AddString(moneystr);
		m_AccountList.AddString(fundtypestr);
		pRst->MoveNext();
	}
}

void CDrawMoney::OnBnClickedDrawMoney()
{
	// TODO: 在此添加控件通知处理程序代码

	//首先要打开pRst,这样才能获得Rst的记录数
	UpdateData();
	CString strQuery="SELECT * FROM bankbook WHERE accnum=\'"+m_accnum+"\'";
	pRst.CreateInstance("ADODB.Recordset");
	pRst->Open(_bstr_t(strQuery),_variant_t((IDispatch*)pConn,true),adOpenStatic,adLockOptimistic,adCmdText);

	//获取余额
	float restmoney=(float)pRst->GetCollect("amount");
	//获得该帐号的密码
	CString PWD=pRst->GetCollect("password");
	PWD.TrimRight();
	//如果取款额为正数,且余额-取款额>0,密码正确,则取款
	if( m_pwd==PWD && m_money>0 && (restmoney-m_money)>0 )
	{
		try
		{
			restmoney=restmoney-m_money;
			pRst->put_Collect(_variant_t("amount"),_variant_t(restmoney));
			pRst->Update();
		}
		catch(_com_error &e)
		{
			MessageBox(e.ErrorMessage()); 
			return ;
		}
		AfxMessageBox("取款成功!");
	}
	else
	{
		if(m_pwd!=PWD)
			AfxMessageBox("密码错误");
		if(m_money<=0)
			AfxMessageBox("取款额必须为大于0的正数");
		if((restmoney-m_money)<=0)
			AfxMessageBox("余额不足");
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -