?? cardinfo.cpp
字號:
// CardInfo.cpp : implementation file
//
#include "stdafx.h"
#include "BankSystem.h"
#include "CardInfo.h"
#include "ADOConn.h"
#include "BankSystemDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCardInfo dialog
CCardInfo::CCardInfo(CWnd* pParent /*=NULL*/)
: CDialog(CCardInfo::IDD, pParent)
{
//{{AFX_DATA_INIT(CCardInfo)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CCardInfo::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCardInfo)
DDX_Control(pDX, IDC_CHECK, m_check);
DDX_Control(pDX, IDC_COMBO2, m_select2);
DDX_Control(pDX, IDC_COMBO1, m_select1);
DDX_Control(pDX, IDC_LIST1, m_cardinfo);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCardInfo, CDialog)
//{{AFX_MSG_MAP(CCardInfo)
ON_BN_CLICKED(IDC_LOOKUP, OnLookup)
ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
ON_BN_CLICKED(IDC_CHECK, OnCheck)
ON_CBN_SELCHANGE(IDC_COMBO2, OnSelchangeCombo2)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCardInfo message handlers
BOOL CCardInfo::OnInitDialog()
{
CDialog::OnInitDialog();
GetDlgItem(IDC_COMBO2)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_COMBO1)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_CHECK)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_CHECK)->EnableWindow(false);
m_cardinfo.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_cardinfo.InsertColumn(0,_T("卡號"),LVCFMT_LEFT,100);
m_cardinfo.InsertColumn(1,_T("狀況"),LVCFMT_LEFT,60);
m_cardinfo.InsertColumn(2,_T("種類"),LVCFMT_LEFT,60);
m_cardinfo.InsertColumn(3,_T("貨幣"),LVCFMT_LEFT,80);
m_cardinfo.InsertColumn(4,_T("總余額"),LVCFMT_LEFT,120);
m_cardinfo.InsertColumn(5,_T("開戶日期"),LVCFMT_LEFT,150);
ADOConn Conn;
Conn.OnInitADOConn();
_RecordsetPtr pRst;
_bstr_t sql;
sql="select * from cardInfo where cardOwer='"+theApp.IsonID+"'";
pRst=Conn.Execute(sql);
while(!pRst->adoEOF)
{ CString Time ,strid,strstate,strsave,strcun,strbla,strtime,stryear,strcurr;
_variant_t v;
v=pRst->GetCollect("optime");
strtime=v.bstrVal;
v=pRst->GetCollect("yearCurr");
//strcurr=v.dblVal;
Time=Conn.GetCurrTime();
double tt=Conn.GetTime(strtime,Time)*v.dblVal;//求得時間
v=pRst->GetCollect("cardId");
strid=v.bstrVal;
v=pRst->GetCollect("IsReportLoss");
strstate=v.bstrVal;
v=pRst->GetCollect("saveType");
strsave=v.bstrVal;
v=pRst->GetCollect("curType");
strcun=v.bstrVal;
v=pRst->GetCollect("balance");
strbla.Format("%lf",v.dblVal+v.dblVal*tt);
m_cardinfo.InsertItem(0,strid);
m_cardinfo.SetItemText(0,1,strstate);
m_cardinfo.SetItemText(0,2,strsave);
m_cardinfo.SetItemText(0,3,strcun);
m_cardinfo.SetItemText(0,4,strbla);
m_cardinfo.SetItemText(0,5,strtime);
if(strsave=="死期")
{
m_cardinfo.InsertColumn(6,_T("存儲期限(年)"),LVCFMT_LEFT,120);
v=pRst->GetCollect("year");
stryear.Format("%d",v.iVal);
m_cardinfo.SetItemText(0,6,stryear);
}
sql="Update cardInfo set balance='"+strbla+"'"+"where cardId='"+strid+"'";
Conn.Execute(sql);
sql="Update cardInfo set optime='"+Conn.GetCurrTime()+"'"+"where cardId='"+strid+"'";
Conn.Execute(sql);
pRst->MoveNext();
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CCardInfo::OnLookup()
{
//for(int i=0;i!=7;++i)
//{
// m_cardinfo.DeleteColumn(0);
// }
GetDlgItem(IDC_COMBO2)->ShowWindow(!SW_HIDE);
GetDlgItem(IDC_COMBO1)->ShowWindow(!SW_HIDE);
GetDlgItem(IDC_CHECK)->ShowWindow(!SW_HIDE);
GetDlgItem(IDC_LOOKUP)->EnableWindow(false);
m_select1.AddString("歷史操作");
m_select1.AddString("外匯牌價");
m_select1.AddString("幣種利率");
//m_select1.SetCurSel(0);
}
void CCardInfo::OnSelchangeCombo1()
{ GetDlgItem(IDC_COMBO2)->EnableWindow(true);
ADOConn Conn;
Conn.OnInitADOConn();
_variant_t v;
_RecordsetPtr pRst;
CString sql;
iPos1=m_select1.GetCurSel();
if(iPos1!=-1)
m_select1.GetLBText(iPos1,selectName);
if(selectName=="歷史操作")
{
GetDlgItem(IDC_CHECK)->EnableWindow(false);
m_select2.ResetContent();
sql.Format("select *from CardInfo where cardOwer=\'%s\'",theApp.IsonID);
pRst=Conn.Execute((_bstr_t)sql);
while(!pRst->adoEOF)
{
v=pRst->GetCollect("cardId");
selectId=v.bstrVal;
m_select2.AddString(selectId);
pRst->MoveNext();
}
}
if(selectName=="外匯牌價")
{
GetDlgItem(IDC_CHECK)->EnableWindow(true);
GetDlgItem(IDC_COMBO2)->EnableWindow(false);
}
if(selectName=="幣種利率")
{
GetDlgItem(IDC_CHECK)->EnableWindow(true);
GetDlgItem(IDC_COMBO2)->EnableWindow(false);
}
}
void CCardInfo::OnSelchangeCombo2()
{
iPos2=m_select2.GetCurSel();
if(iPos2!=-1)
{ m_select2.GetLBText(iPos2,selectId);
GetDlgItem(IDC_CHECK)->EnableWindow(true);
}
}
void CCardInfo::OnCheck()
{
m_cardinfo.DeleteAllItems();
for(int i=0;i!=7;++i)
{
m_cardinfo.DeleteColumn(0);
}
ADOConn Conn;
Conn.OnInitADOConn();
_RecordsetPtr pRst;
_variant_t v;
CString sql;
CString cardId,transcode,transmoney,transdate,transplace,opid;
if(selectName=="歷史操作")
{ m_cardinfo.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_cardinfo.InsertColumn(0,_T("卡號"),LVCFMT_CENTER ,100);
m_cardinfo.InsertColumn(1,_T("交易碼"),LVCFMT_CENTER ,100);
m_cardinfo.InsertColumn(2,_T("交易金額"),LVCFMT_CENTER ,140);
m_cardinfo.InsertColumn(3,_T("交易地點"),LVCFMT_CENTER ,100);
m_cardinfo.InsertColumn(4,_T("操作員"),LVCFMT_CENTER ,100);
m_cardinfo.InsertColumn(5,_T("交易時間"),LVCFMT_CENTER ,150);
sql.Format("select * from transInfo where cardId=\'%s\'",selectId);
pRst=Conn.Execute((_bstr_t)sql);
while(!pRst->adoEOF)
{
v=pRst->GetCollect("cardId");
cardId=v.bstrVal;
v=pRst->GetCollect("transCode");
transcode=v.bstrVal;
v=pRst->GetCollect("transMoney");
transmoney=v.bstrVal;
v=pRst->GetCollect("transPlace");
transplace=v.bstrVal;
v=pRst->GetCollect("opId");
opid=v.bstrVal;
v=pRst->GetCollect("transDate");
transdate=v.bstrVal;
m_cardinfo.InsertItem(0,cardId);
m_cardinfo.SetItemText(0,1,transcode);
m_cardinfo.SetItemText(0,2,transmoney);
m_cardinfo.SetItemText(0,3,transplace);
m_cardinfo.SetItemText(0,4,opid);
m_cardinfo.SetItemText(0,5,transdate);
pRst->MoveNext();
}
}
if(selectName=="外匯牌價")
{
CString MoneyName,Curr;
m_cardinfo.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_cardinfo.InsertColumn(0,_T("幣種"),LVCFMT_CENTER ,120);
m_cardinfo.InsertColumn(1,_T("匯率"),LVCFMT_CENTER ,100);
sql.Format("select * from MoneyOP");
pRst=Conn.Execute((_bstr_t)sql);
while(!pRst->adoEOF)
{
v=pRst->GetCollect("MoneyName");
MoneyName=v.bstrVal;
v=pRst->GetCollect("currency");
Curr.Format("%f",v.dblVal);
m_cardinfo.InsertItem(0,MoneyName);
m_cardinfo.SetItemText(0,1,Curr);
pRst->MoveNext();
}
}
if(selectName=="幣種利率")
{ CString MoneyName,Live,Dead;
m_cardinfo.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_cardinfo.InsertColumn(0,_T("幣種"),LVCFMT_CENTER ,120);
m_cardinfo.InsertColumn(1,_T("活期利率"),LVCFMT_CENTER ,100);
m_cardinfo.InsertColumn(2,_T("死期利率"),LVCFMT_CENTER ,100);
sql.Format("select *from MoneyOP");
pRst=Conn.Execute((_bstr_t)sql);
while(!pRst->adoEOF)
{
v=pRst->GetCollect("MoneyName");
MoneyName=v.bstrVal;
v=pRst->GetCollect("Live");
Live.Format("%f",v.dblVal);
v=pRst->GetCollect("dead");
Dead.Format("%f",v.dblVal);
m_cardinfo.InsertItem(0,MoneyName);
m_cardinfo.SetItemText(0,1,Live);
m_cardinfo.SetItemText(0,2,Dead);
pRst->MoveNext();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -