📄 clientinquiremachine.cpp
字号:
// ClientInquireMachine.cpp : implementation file
//
#include "stdafx.h"
#include "CreditCardManagement.h"
#include "ClientInquireMachine.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CClientInquireMachine dialog
CClientInquireMachine::CClientInquireMachine(CWnd* pParent /*=NULL*/)
: CDialog(CClientInquireMachine::IDD, pParent)
{
//{{AFX_DATA_INIT(CClientInquireMachine)
m_wXiaofeizongshu = 0;
m_wInshukajibiaoshi = _T("");
m_wInyonghuming = _T("");
m_wInmima = _T("");
//}}AFX_DATA_INIT
}
void CClientInquireMachine::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CClientInquireMachine)
DDX_Control(pDX, IDC_LIST2, m_wXinyongkaxinxi);
DDX_Control(pDX, IDC_LIST1, m_wYonghuxiaofeixinxi);
DDX_Text(pDX, IDC_EDIT4, m_wXiaofeizongshu);
DDV_MinMaxLong(pDX, m_wXiaofeizongshu, 0, 10000000);
DDX_Text(pDX, IDC_EDIT1, m_wInshukajibiaoshi);
DDV_MaxChars(pDX, m_wInshukajibiaoshi, 5);
DDX_Text(pDX, IDC_EDIT2, m_wInyonghuming);
DDV_MaxChars(pDX, m_wInyonghuming, 20);
DDX_Text(pDX, IDC_EDIT3, m_wInmima);
DDV_MaxChars(pDX, m_wInmima, 20);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CClientInquireMachine, CDialog)
//{{AFX_MSG_MAP(CClientInquireMachine)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClientInquireMachine message handlers
void CClientInquireMachine::OnOK()
{
// 客户按刷卡机查询
m_pCCIMS=&CCIMS; //指向数据库指针,定义见头文件
char filter[100];
UpdateData(TRUE); //接收用户输入信息
int nItem;
m_wYonghuxiaofeixinxi.DeleteAllItems();
for(int dc=0;dc<4;dc++){ m_wYonghuxiaofeixinxi.DeleteColumn(0);}
m_wXinyongkaxinxi.DeleteAllItems();
for(dc=0;dc<5;dc++){ m_wXinyongkaxinxi.DeleteColumn(0);}
//初始化CListCtrl_End
//显示列
//刷卡机标识+信用卡号+消费额+消费时间
LV_COLUMN lvcolumn;
lvcolumn.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM;
lvcolumn.fmt=LVCFMT_CENTER;
lvcolumn.cx=75;
lvcolumn.iSubItem=0;
lvcolumn.pszText="刷卡机标识";
m_wYonghuxiaofeixinxi.InsertColumn(0,&lvcolumn);
lvcolumn.iSubItem=1;
lvcolumn.pszText="信用卡号";
m_wYonghuxiaofeixinxi.InsertColumn(1,&lvcolumn);
lvcolumn.iSubItem=2;
lvcolumn.pszText="消费额";
m_wYonghuxiaofeixinxi.InsertColumn(2,&lvcolumn);
lvcolumn.iSubItem=3;
lvcolumn.pszText="消费时间";
m_wYonghuxiaofeixinxi.InsertColumn(3,&lvcolumn);
m_pCCIMS=&CCIMS; //以下对数据库进行操作
m_pCCIMS->m_strFilter="[账户文件].[身份证号]=[用户文件].[身份证号]";
m_pCCIMS->m_strFilter+="and";
wsprintf(filter,"[用户文件].[用户名]='%s'",m_wInyonghuming);
m_pCCIMS->m_strFilter+=filter;
m_pCCIMS->m_strFilter+="and";
wsprintf(filter,"[用户文件].[密码]='%s'", m_wInmima);
m_pCCIMS->m_strFilter+=filter;
m_pCCIMS->Open(); //取数据库中所需要的值
if(m_pCCIMS->IsEOF()) //取值未成功,既无该用户
{
MessageBox("无该用户或用户名和密码不匹配");
m_pCCIMS->Close();
}else //有该用户
{
CString ss=m_pCCIMS->m_column1;//记录身份证号
CString *zz;
zz=new CString[100];
int z=0;
while(!m_pCCIMS->IsEOF())
{
zz[z]=m_pCCIMS->m_column7;//记录该用户的所有帐号
m_pCCIMS->MoveNext();
z=z+1;
}
m_pCCIMS->Close();
m_pCCIMSs=&CCIMSs; //对刷卡机文件操作的指针
wsprintf(filter,"[刷卡机文件].[刷卡机标识]='%s'",m_wInshukajibiaoshi);
m_pCCIMSs->m_strFilter=filter;
m_pCCIMSs->Open();
if(m_pCCIMSs->IsEOF())//无该刷卡机
{
MessageBox("该刷卡机不存在");
m_pCCIMSs->Close();
}else//有此刷卡机
{
CString shuakaji=m_pCCIMSs->m_column1;
m_pCCIMSs->Close();
m_pCCIMSxf=&CCIMSxf;//对消费文件操作的指针
wsprintf(filter,"[消费文件].[身份证号]='%s'",ss);
m_pCCIMSxf->m_strFilter=filter;
m_pCCIMSxf->m_strFilter+="and";
wsprintf(filter,"[消费文件].[刷卡机标识]='%s'",shuakaji);
m_pCCIMSxf->m_strFilter+=filter;
m_pCCIMSxf->Open();
if( m_pCCIMSxf->IsEOF())//用户无消费记录
{
MessageBox("没有该用户的消费记录");
m_pCCIMSxf->Close();
}else//用户有消费记录
{
long e=0;//记录消费总额变量
while(! m_pCCIMSxf->IsEOF())
{
//显示
LV_ITEM lvitem;
lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
lvitem.state=0;
lvitem.stateMask=0;
//插入刷卡机标识
nItem=m_wYonghuxiaofeixinxi.InsertItem(0,m_pCCIMSxf->m_column8);
//插入信用卡号
m_wYonghuxiaofeixinxi.SetItemText(nItem,1,m_pCCIMSxf->m_column2);
//插入消费额
CString temp;
temp.Format("%d",m_pCCIMSxf->m_column3);
m_wYonghuxiaofeixinxi.SetItemText(nItem,2,temp);
//插入消费时间
CString s=m_pCCIMSxf->m_column6.Format("%A,%B%d,%Y");
m_wYonghuxiaofeixinxi.SetItemText(nItem,3,s);
e=e+m_pCCIMSxf->m_column3;
//显示
m_pCCIMSxf->MoveNext();
}
m_wXiaofeizongshu=e;
}
m_pCCIMSxf->Close();
//显示银行标识+账号+信用卡号+是否透支+是否挂失
LV_COLUMN lvcolumn;
lvcolumn.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM;
lvcolumn.fmt=LVCFMT_CENTER;
lvcolumn.cx=75;
lvcolumn.iSubItem=0;
lvcolumn.pszText="银行标识";
m_wXinyongkaxinxi.InsertColumn(0,&lvcolumn);
lvcolumn.iSubItem=1;
lvcolumn.pszText="帐号";
m_wXinyongkaxinxi.InsertColumn(1,&lvcolumn);
lvcolumn.iSubItem=2;
lvcolumn.pszText="信用卡号";
m_wXinyongkaxinxi.InsertColumn(2,&lvcolumn);
lvcolumn.iSubItem=3;
lvcolumn.pszText="是否透支";
m_wXinyongkaxinxi.InsertColumn(3,&lvcolumn);
lvcolumn.iSubItem=4;
lvcolumn.pszText="是否挂失";
m_wXinyongkaxinxi.InsertColumn(4,&lvcolumn);
int i=0;
while(i<z)
{
m_pCCIMSx=&CCIMSx;
m_pCCIMSx->m_strFilter.Empty();
m_pCCIMSx->Open();
if( (m_pCCIMSx->IsEOF())&&(i==z))//i==z 表最后一个帐号
{
MessageBox("没有该用户的消费记录");
m_pCCIMSx->Close();
}else
{
while(! m_pCCIMSx->IsEOF())
{
if(m_pCCIMSx->m_column5==zz[i])
{
//显示信用卡各属性
LV_ITEM lvitem;
lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
lvitem.state=0;
lvitem.stateMask=0;
//插入银行标识
nItem=m_wXinyongkaxinxi.InsertItem(0, m_pCCIMSx->m_column1);
//插入帐号
m_wXinyongkaxinxi.SetItemText(nItem,1, m_pCCIMSx->m_column5);
//插入信用卡号
m_wXinyongkaxinxi.SetItemText(nItem,2, m_pCCIMSx->m_column2);
//插入是否透支
CString temp;
if (m_pCCIMSx->m_column3==0) temp="否";
else temp="是";
m_wXinyongkaxinxi.SetItemText(nItem,3,temp);
//插入是否挂失
if (m_pCCIMSx->m_column4==0) temp="否";
else temp="是";
m_wXinyongkaxinxi.SetItemText(nItem,4,temp);
}
m_pCCIMSx->MoveNext();
}
}
i=i+1;
}
m_pCCIMSx->Close();
UpdateData(FALSE);//把值传出
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -