📄 clientinquirespan.cpp
字号:
// ClientInquireSpan.cpp : implementation file
//
#include "stdafx.h"
#include "CreditCardManagement.h"
#include "ClientInquireSpan.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CClientInquireSpan dialog
CClientInquireSpan::CClientInquireSpan(CWnd* pParent /*=NULL*/)
: CDialog(CClientInquireSpan::IDD, pParent)
{
//{{AFX_DATA_INIT(CClientInquireSpan)
m_wYonghuming = _T("");
m_wQishishijian = COleDateTime::GetCurrentTime();
m_wMima = _T("");
m_wZhongzhishijian = COleDateTime::GetCurrentTime();
m_wXiaofeizonge = 0;
//}}AFX_DATA_INIT
}
void CClientInquireSpan::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CClientInquireSpan)
DDX_Control(pDX, IDC_LIST3, m_wXinyongkaxinxi);
DDX_Control(pDX, IDC_LIST1, m_wYonghuxiaofeixinxi);
DDX_Text(pDX, IDC_EDIT1, m_wYonghuming);
DDV_MaxChars(pDX, m_wYonghuming, 20);
DDX_Text(pDX, IDC_EDIT2, m_wQishishijian);
DDX_Text(pDX, IDC_EDIT3, m_wMima);
DDV_MaxChars(pDX, m_wMima, 20);
DDX_Text(pDX, IDC_EDIT4, m_wZhongzhishijian);
DDX_Text(pDX, IDC_EDIT5, m_wXiaofeizonge);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CClientInquireSpan, CDialog)
//{{AFX_MSG_MAP(CClientInquireSpan)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClientInquireSpan message handlers
void CClientInquireSpan::OnOK()
{
// 用户按时间段查询
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);
time_t xiaofeishijian=0;
COleDateTime* media;
m_pCCISS=&CCISS;//判有无此用户
m_pCCISS->m_strFilter="[账户文件].[身份证号]=[用户文件].[身份证号]";
m_pCCISS->m_strFilter+="and";
wsprintf(filter,"[用户文件].[用户名]='%s'",m_wYonghuming);
m_pCCISS->m_strFilter+=filter;
m_pCCISS->m_strFilter+="and";
wsprintf(filter,"[用户文件].[密码]='%s'",m_wMima);
m_pCCISS->m_strFilter+=filter;
m_pCCISS->Open();
if(m_pCCISS->IsEOF())//无此用户
{MessageBox("不存在该用户");
m_pCCISS->Close();
}else//有此用户
{
CString ss=m_pCCISS->m_column1;//记录身份证号
CString *zz;
zz=new CString[100];
int z=0;
while(!m_pCCISS->IsEOF())
{
zz[z]=m_pCCISS->m_column7;//记录该用户的所有帐号
m_pCCISS->MoveNext();
z=z+1;
}
m_pCCISS->Close();
m_pCCISSxf=&CCISSxf;//操作消费文件指针
wsprintf(filter,"[消费文件].[身份证号]='%s'",ss);
m_pCCISSxf->m_strFilter=filter;
m_pCCISSxf->Open();
if( m_pCCISSxf->IsEOF())//此用户无消费记录
{
MessageBox("没有该用户的消费记录");
m_pCCISSxf->Close();
}else//有消费记录
{
long e=0;//记录消费总额
while(! m_pCCISSxf->IsEOF())
{
xiaofeishijian=m_pCCISSxf->m_column6.GetTime();
media=new COleDateTime(xiaofeishijian);
if((m_wQishishijian.m_dt < media->m_dt) && //判时间范围
(media->m_dt < m_wZhongzhishijian.m_dt))
{
e=e+m_pCCISSxf->m_column3;
//显示
LV_ITEM lvitem;
lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
lvitem.state=0;
lvitem.stateMask=0;
//插入刷卡机标识
nItem=m_wYonghuxiaofeixinxi.InsertItem(0,m_pCCISSxf->m_column1);
//插入信用卡号
m_wYonghuxiaofeixinxi.SetItemText(nItem,1,m_pCCISSxf->m_column2);
//插入消费额
CString temp;
temp.Format("%d",m_pCCISSxf->m_column3);
m_wYonghuxiaofeixinxi.SetItemText(nItem,2,temp);
//插入消费时间
CString s=m_pCCISSxf->m_column6.Format("%A,%B%d,%Y");
m_wYonghuxiaofeixinxi.SetItemText(nItem,3,s);
}
media=NULL;// media->delete();
m_pCCISSxf->MoveNext();
}
m_wXiaofeizonge=e;
}
m_pCCISSxf->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_pCCISSx=&CCISSx;//指向信用卡文件指针
m_pCCISSx->m_strFilter.Empty();
m_pCCISSx->Open();
if( (m_pCCISSx->IsEOF())&&(i==z))//i==z 表最后一个帐号
{
MessageBox("没有该用户的消费记录");
m_pCCISSx->Close();
}else//显示
{
while(! m_pCCISSx->IsEOF())
{
if(m_pCCISSx->m_column5==zz[i])
{
int e=0;;
e=e+7;
//显示信用卡各属性
//显示信用卡各属性
LV_ITEM lvitem;
lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
lvitem.state=0;
lvitem.stateMask=0;
//插入银行标识
nItem=m_wXinyongkaxinxi.InsertItem(0, m_pCCISSx->m_column1);
//插入帐号
m_wXinyongkaxinxi.SetItemText(nItem,1, m_pCCISSx->m_column5);
//插入信用卡号
m_wXinyongkaxinxi.SetItemText(nItem,2, m_pCCISSx->m_column2);
//插入是否透支
CString temp;
if (m_pCCISSx->m_column3==0) temp="否";
else temp="是";
m_wXinyongkaxinxi.SetItemText(nItem,3,temp);
//插入是否挂失
if (m_pCCISSx->m_column4==0) temp="否";
else temp="是";
m_wXinyongkaxinxi.SetItemText(nItem,4,temp);
}
m_pCCISSx->MoveNext();
}
}
i=i+1;
}
m_pCCISSx->Close();
UpdateData(FALSE);//把值传出
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -