📄 inmoneydlg.cpp
字号:
/***********************************************
存款功能模块
作者:颜永华
************************************************/
// InMoneyDlg.cpp : 实现文件
//
#include "stdafx.h"
#include "BankClient.h"
#include "InMoneyDlg.h"
#include ".\inmoneydlg.h"
#include "MD5.h"
#include "sock.h"
extern CSock sock;
extern int connFlag;
// CInMoneyDlg 对话框
IMPLEMENT_DYNAMIC(CInMoneyDlg, CDialog)
CInMoneyDlg::CInMoneyDlg(CWnd* pParent /*=NULL*/)
: CDialog(CInMoneyDlg::IDD, pParent)
{
}
CInMoneyDlg::~CInMoneyDlg()
{
}
void CInMoneyDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_EDIT1, m_EditAccId);
DDX_Control(pDX, IDC_EDIT2, m_EditPwd);
DDX_Control(pDX, IDC_EDIT3, m_EditMoney);
}
BEGIN_MESSAGE_MAP(CInMoneyDlg, CDialog)
ON_BN_CLICKED(IDOK, OnBnClickedOk)
END_MESSAGE_MAP()
// CInMoneyDlg 消息处理程序
BOOL CInMoneyDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_EditAccId.SetLimitText(18);
m_EditPwd.SetLimitText(16);
m_EditMoney.SetLimitText(9);
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CInMoneyDlg::OnBnClickedOk()
{//提交存款信息
//验证输入信息
int errnum=0;
int len=m_EditAccId.GetWindowTextLength();
CString str;
if(!len||len!=18)
str.Format("%d:账号必须是18位\n",++errnum);
len=this->m_EditMoney.GetWindowTextLength();
if(!len)
str.Format("%s%d:款项不能为空\n",str,++errnum);
if(errnum)
GetDlgItem(IDC_SIGN)->SetWindowText(str);
else
{//没有错误进行传送
GetDlgItem(IDC_SIGN)->SetWindowText("正在处理中请稍候.....");
//打包数据 准备发送
INMONEY_PACKET inMoneyPack;
memset(&inMoneyPack,0,sizeof(INMONEY_PACKET));
inMoneyPack.wCode=CLIENT_INMONEY;
inMoneyPack.wLen=sizeof(INMONEY_PACKET);
m_EditAccId.GetWindowText(inMoneyPack.accountId,18);
m_EditPwd.GetWindowText(inMoneyPack.accountPwd,16);
m_EditMoney.GetWindowText(inMoneyPack.moneyNum,9);
//MD5 加密密码
CMD5 md5;
md5.MD5Update((BYTE*)&inMoneyPack.accountPwd[0],16);
md5.MD5Final((BYTE*)&inMoneyPack.accountPwd[0]);
if(!connFlag)
connFlag=sock.connectServer();
if(connFlag)
{
if(sock.sendPacket((BYTE*)&inMoneyPack,sizeof(INMONEY_PACKET)))
{
switch(sock.RetFlag())
{
case FLAG_SUCCEED:
{
//MessageBox("成功");
GetDlgItem(IDC_SIGN)->SetWindowText("存款成功!");
}break;
case FLAG_ACCPWD_ERR:
{
//MessageBox("成功");
m_EditAccId.SetWindowText("");
m_EditAccId.SetFocus();
GetDlgItem(IDC_SIGN)->SetWindowText("验证失败!");
}break;
case FLAG_NOBANK:
{
//MessageBox("成功");
GetDlgItem(IDC_SIGN)->SetWindowText("没有银行!");
}break;
case FLAG_FAILED:
default:
{//MessageBox("成功");
GetDlgItem(IDC_SIGN)->SetWindowText("存款失败!");
};
}
}
}
}
//OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -