商店管理系统源代码(三) (二)

2014-11-24 03:04:35 · 作者: · 浏览: 8
C_AMOUNT, m_fltAmount);
DDX_Text(pDX, IDC_CLIENT, m_strClient);
DDX_Text(pDX, IDC_BILLCODE, m_strBillCode);
//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CSalesBill, CDialog)
//{{AFX_MSG_MAP(CSalesBill)
ON_BN_CLICKED(IDC_BILL, OnBill)
ON_BN_CLICKED(IDC_SAVE, OnSave)
ON_BN_CLICKED(IDC_UPDATE, OnUpdate)
ON_BN_CLICKED(IDC_DELETE, OnDelete)
ON_BN_CLICKED(IDC_ACCOUNT, OnAccount)
ON_BN_CLICKED(IDC_CLIENTFIND, OnClientfind)
ON_BN_CLICKED(IDC_COMMODITYSERCH, OnCommodityserch)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSalesBill message handlers

BOOL CSalesBill::OnInitDialog()
{
CDialog::OnInitDialog();

// TODO: Add extra initialization here
m_btnCommoditySearch.SetXIcon(IDI_ICONSERCH);
//CBitmapButton bitmapButton;
//bitmapButton.LoadBitmaps(IDB_BITMAP1, IDB_BITMAP1);
bitmapButton.AutoLoad(IDC_BUTTON2, this);
bitmapButton.LoadBitmaps(IDI_ICONSERCH, IDB_BITMAP3);
//bitmapButton.SubclassDlgItem(IDC_COMMODITYSERCH, this);
bitmapButton.SizeToContent();
m_ctrlListMain.InsertColumn(0, "条形码", LVCFMT_CENTER, 100);
m_ctrlListMain.InsertColumn(1, "名称", LVCFMT_CENTER, 100);
m_ctrlListMain.InsertColumn(2, "标准", LVCFMT_CENTER, 100);
m_ctrlListMain.InsertColumn(3, "单位", LVCFMT_CENTER, 50);
m_ctrlListMain.InsertColumn(4, "价格", LVCFMT_CENTER, 50);
m_ctrlListMain.InsertColumn(5, "库存", LVCFMT_CENTER, 50);
m_ctrlListMain.InsertColumn(6, "数量", LVCFMT_CENTER, 50);
m_ctrlListMain.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);

return TRUE;
// return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}

void CSalesBill::OnBill()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
CMyTime myTime;

m_strBillCode = myTime.GetSimpleString();
m_strBillDate = myTime.GetDateString(FALSE);
m_strClient = "";
m_strNote = "";
m_fltSalePrice = 0;
m_iNum = 0;
m_fltAmount = 0;
UpdateData(FALSE);
}

void CSalesBill::OnSave()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
POSITION pos;
int index;
CString strNum, strPrice;

strNum.Format(_T("%d"), m_iNum);
strPrice.Format(_T("%f"), m_fltSalePrice);
pos = m_ctrlListMain.GetFirstSelectedItemPosition();
index = m_ctrlListMain.GetNextSelectedItem(pos);
m_fltAmount = m_fltAmount - atof(m_ctrlListMain.GetItemText(index, 4)) * atoi(m_ctrlListMain.GetItemText(index, 6));
m_ctrlListMain.SetItemText(index, 6, strNum);
m_ctrlListMain.SetItemText(index, 4, strPrice);
m_fltAmount = m_fltAmount + atof(m_ctrlListMain.GetItemText(index, 4)) * atoi(m_ctrlListMain.GetItemText(index, 6));
UpdateData(FALSE);
}

void CSalesBill::OnUpdate()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
CString strSQL, strTemp;
CADOConn adoSaleBill, adoSaleCommodity, adoStoreInfo, adoIntegral;

strSQL = "INSERT INTO SaleBill VALUES ('";
strSQL = strSQL + m_strBillCode + "', '";
strSQL = strSQL + m_strBillDate + "', '"