📄 mclientdlg2.cpp
字号:
// MClientDlg2.cpp : 实现文件
//
#include "stdafx.h"
#include "carm.h"
#include "MClientDlg2.h"
#include ".\mclientdlg2.h"
#include "PurchaseCarDlg.h"
#include "cstringt.h"
// CMClientDlg2 对话框
IMPLEMENT_DYNAMIC(CMClientDlg2, CPropertyPage)
CMClientDlg2::CMClientDlg2()
: CPropertyPage(CMClientDlg2::IDD)
, m_carID(_T(""))
, m_carnum(_T(""))
, m_payf(_T(""))
, m_loan(_T(""))
, m_bank(_T(""))
, m_ryear(_T(""))
, m_rmonth(_T(""))
, m_rday(_T(""))
, m_rmmoney(_T(""))
, m_rmday(_T(""))
, m_insure(_T(""))
, m_iyear(_T(""))
, m_imonth(_T(""))
, m_iday(_T(""))
, m_inquirer(_T(""))
{
}
CMClientDlg2::~CMClientDlg2()
{
}
void CMClientDlg2::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
DDX_CBString(pDX, IDC_COMBO1, m_carID);
DDX_Text(pDX, IDC_EDIT2, m_carnum);
DDX_Text(pDX, IDC_EDIT3, m_payf);
DDX_Text(pDX, IDC_EDIT4, m_loan);
DDX_Text(pDX, IDC_EDIT5, m_bank);
DDX_Text(pDX, IDC_EDIT6, m_ryear);
DDX_CBString(pDX, IDC_COMBO2, m_rmonth);
DDX_CBString(pDX, IDC_COMBO4, m_rday);
DDX_Text(pDX, IDC_EDIT7, m_rmmoney);
DDX_CBString(pDX, IDC_COMBO3, m_rmday);
DDX_Text(pDX, IDC_EDIT9, m_insure);
DDX_Text(pDX, IDC_EDIT8, m_iyear);
DDX_CBString(pDX, IDC_COMBO6, m_imonth);
DDX_CBString(pDX, IDC_COMBO7, m_iday);
DDX_Text(pDX, IDC_EDIT11, m_inquirer);
DDX_Control(pDX, IDC_LIST1, m_car);
}
BEGIN_MESSAGE_MAP(CMClientDlg2, CPropertyPage)
ON_BN_CLICKED(IDOK, OnBnClickedOk)
ON_CBN_DROPDOWN(IDC_COMBO1, OnCbnDropdownCombo1)
ON_CBN_CLOSEUP(IDC_COMBO1, OnCbnCloseupCombo1)
END_MESSAGE_MAP()
void CMClientDlg2::disable(BOOL bflag)
{
GetDlgItem(IDC_EDIT2)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT3)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT4)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT5)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT6)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT7)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT8)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT9)->EnableWindow(bflag);
GetDlgItem(IDC_COMBO1)->EnableWindow(bflag);
GetDlgItem(IDC_EDIT11)->EnableWindow(bflag);
GetDlgItem(IDC_COMBO2)->EnableWindow(bflag);
GetDlgItem(IDC_COMBO3)->EnableWindow(bflag);
GetDlgItem(IDC_COMBO4)->EnableWindow(bflag);
GetDlgItem(IDC_COMBO6)->EnableWindow(bflag);
GetDlgItem(IDC_COMBO7)->EnableWindow(bflag);
GetDlgItem(IDOK)->EnableWindow(bflag);
}
// CMClientDlg2 消息处理程序
BOOL CMClientDlg2::OnSetActive()
{
CPropertySheet* pParent=(CPropertySheet*)GetParent();
pParent->SetWizardButtons(PSWIZB_FINISH|PSWIZB_BACK);
CString sql = "select * from 交易 where 客户编号 = '";
sql += clientnum;
sql += "'";
_RecordsetPtr pRst = g_ADOConn.GetRecordSet(_bstr_t(sql));
if(pRst->adoEOF)
{
if(AfxMessageBox("此客户还未购车,是否要为此客户购车",MB_YESNO|MB_ICONQUESTION) == IDYES)
{
CPurchaseCarDlg PCar;
if(PCar.DoModal() == IDOK)
{
disable(true);
CString sql = "insert into 交易(客户编号,车编号) values('";
sql += clientnum;
sql += "','";
sql += PCar.m_carID;
sql += "')";
g_ADOConn.ExecuteSQL(_bstr_t(sql));
sql = "update 车 set 库存 = '0' where 车编号 = '";
sql += PCar.m_carID;
sql += "'";
g_ADOConn.ExecuteSQL(_bstr_t(sql));
}
else
disable(false);
}
else
disable(false);
}
else
{
disable(true);
if(AfxMessageBox("此客户已购车,是否要购新车",MB_YESNO|MB_ICONQUESTION) == IDYES)
{
CPurchaseCarDlg PCar;
if(PCar.DoModal() == IDOK)
{
CString sql = "insert into 交易(客户编号,车编号) values('";
sql += clientnum;
sql += "','";
sql += PCar.m_carID;
sql += "')";
g_ADOConn.ExecuteSQL(_bstr_t(sql));
sql = "update 车 set 库存 = '0' where 车编号 = '";
sql += PCar.m_carID;
sql += "'";
g_ADOConn.ExecuteSQL(_bstr_t(sql));
}
}
}
return CPropertyPage::OnSetActive();
}
void CMClientDlg2::OnBnClickedOk()
{
UpdateData(true);
CString str = "update 交易 set 车牌号 ='";
str += m_carnum;
str += "',首付 = ";
if(m_payf == "")
str += "0";
else
str += m_payf;
str += ",贷款额 = ";
if(m_loan == "")
str += "0";
else
str += m_loan;
str += ",还款期限 = '";
str += m_ryear;
if(m_rmonth.GetLength() == 1)
str += "0"+m_rmonth;
else
str += m_rmonth;
if(m_rday.GetLength() ==1)
str += "0"+m_rday;
else
str += m_rday;
str += "',月还款额 = ";
if(m_rmmoney == "")
str += "0";
else
str += m_rmmoney;
str += ",月还款日 = '";
if(m_rmday.GetLength() == 1)
str += "1999100"+m_rmday;
else
str += m_rmday;
str += "',保险额 = ";
if(m_insure == "")
str += "0";
else
str += m_insure;
str += ",保险期限 = '";
str += m_iyear;
if(m_imonth.GetLength() == 1)
str += "0"+m_imonth;
else
str += m_imonth;
if(m_iday.GetLength() == 1)
str += "0"+m_iday;
else
str +=m_iday;
str += "',贷款银行 = '";
str += m_bank;
str += "',调查人 = '";
str += m_inquirer;
str += "' where 客户编号 = '";
str += clientnum;
str += "' and 车编号 = '";
str += m_carID;
str += "'";
g_ADOConn.ExecuteSQL(_bstr_t(str));
}
void CMClientDlg2::OnCbnDropdownCombo1()
{
CComboBox *pCombo = (CComboBox *)GetDlgItem(IDC_COMBO1);
// if(pCombo->GetCount() != 0)
// return;
pCombo->ResetContent();
CString sql = "select * from 交易 where 客户编号 = '";
sql += clientnum;
sql += "'";
_RecordsetPtr pRst = g_ADOConn.GetRecordSet(_bstr_t(sql));
while (!pRst -> adoEOF)
{
pCombo->AddString(STR(pRst->GetCollect("车编号")));
pRst ->MoveNext();
}
pCombo->SelectString(-1,m_carnum);
}
void CMClientDlg2::OnCbnCloseupCombo1()
{
CComboBox *pCombo = (CComboBox *)GetDlgItem(IDC_COMBO1);
int num;
if((num = pCombo->GetCurSel()) == CB_ERR)
return;
pCombo->GetLBText(num,m_carID);
CString sql = "select * from 车 where 车编号 = '";
sql += m_carID;
sql += "'";
_RecordsetPtr pRst = g_ADOConn.GetRecordSet((_bstr_t)sql);
long limit = pRst->GetFields()->Count;
//填充列表
if(m_car.GetItemCount() != 0)
{
m_car.DeleteAllItems();
for(long x = 0;x < 5;x++)
{
m_car.DeleteColumn(0);
}
}
for (long x = 0; x < limit; x++)
{
m_car.InsertColumn(x,(char *) pRst->GetFields()->Item[x]->Name,LVCFMT_LEFT,100,-1);
}
int i = 0;
while(!pRst->adoEOF)
{
m_car.InsertItem(i,"");
for(long x = 0;x < limit;x++)
{
_variant_t var = pRst->GetCollect(_variant_t(long(x)));
CString str = "";
if(var.vt != VT_NULL)
str = STR(var);
m_car.SetItemText(i,x,str);
}
pRst->MoveNext();
i++;
}
//填充其他信息
sql = "select * from 交易 where 客户编号 = '";
sql += clientnum;
sql += "' and 车编号 = '";
sql += m_carID;
sql += "'";
pRst = g_ADOConn.GetRecordSet((_bstr_t)sql);
CEdit *pEdit = (CEdit *)GetDlgItem(IDC_EDIT2);
CString substr = "";
UpdateData(false);
if(pRst->GetCollect("车牌号").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("车牌号")));
pEdit = (CEdit *)GetDlgItem(IDC_EDIT3);
if(pRst->GetCollect("首付").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("首付")));
pEdit = (CEdit *)GetDlgItem(IDC_EDIT4);
if(pRst->GetCollect("贷款额").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("贷款额")));
pEdit = (CEdit *)GetDlgItem(IDC_EDIT5);
if(pRst->GetCollect("贷款银行").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("贷款银行")));
pEdit = (CEdit *)GetDlgItem(IDC_EDIT6);
if(pRst->GetCollect("还款期限").vt != VT_NULL)
{
substr = STR(pRst->GetCollect("还款期限"));
pEdit->SetWindowText(substr.Left(4));
pCombo = (CComboBox *)GetDlgItem(IDC_COMBO2);
int is = substr.Find('-');
int ie = substr.Find('-',is+1);
int il = substr.GetLength();
pCombo->SetCurSel(atoi(substr.Mid(is+1,ie-is-1))-1);
pCombo = (CComboBox *)GetDlgItem(IDC_COMBO4);
pCombo->SetCurSel(atoi(substr.Right(il-ie-1))-1);
}
pEdit = (CEdit *)GetDlgItem(IDC_EDIT7);
if(pRst->GetCollect("月还款额").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("月还款额")));
if(pRst->GetCollect("月还款日").vt != VT_NULL)
{
substr = STR(pRst->GetCollect("月还款日"));
int is = substr.Find('-');
int ie = substr.Find('-',is+1);
int il = substr.GetLength();
pCombo = (CComboBox *)GetDlgItem(IDC_COMBO3);
pCombo->SetCurSel(atoi(substr.Right(il-ie-1))-1);
}
pEdit = (CEdit *)GetDlgItem(IDC_EDIT9);
if(pRst->GetCollect("保险额").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("保险额")));
pEdit = (CEdit *)GetDlgItem(IDC_EDIT8);
if(pRst->GetCollect("保险期限").vt != VT_NULL)
{
substr = STR(pRst->GetCollect("保险期限"));
pEdit->SetWindowText(substr.Left(4));
pCombo = (CComboBox *)GetDlgItem(IDC_COMBO6);
int is = substr.Find('-');
int ie = substr.Find('-',is+1);
int il = substr.GetLength();
pCombo->SetCurSel(atoi(substr.Mid(is+1,ie-is-1))-1);
pCombo = (CComboBox *)GetDlgItem(IDC_COMBO7);
pCombo->SetCurSel(atoi(substr.Right(il-ie-1))-1);
}
pEdit = (CEdit *)GetDlgItem(IDC_EDIT11);
if(pRst->GetCollect("调查人").vt != VT_NULL)
pEdit->SetWindowText(STR(pRst->GetCollect("调查人")));
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -