www.pudn.com > cygl.rar > Krkd.cpp
// Krkd.cpp : implementation file
//
#include "stdafx.h"
#include "cyglxt.h"
#include "Krkd.h"
#include "ADOConn.h"
#include "yydlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CString FJLX,FJH;
/////////////////////////////////////////////////////////////////////////////
// CKrkd dialog
CKrkd::CKrkd(CWnd* pParent /*=NULL*/)
: CJieMian(pParent)
{
//{{AFX_DATA_INIT(CKrkd)
shuliang = 1;
jiage = 0;
Bjf = 0;
//}}AFX_DATA_INIT
}
void CKrkd::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CKrkd)
DDX_Control(pDX, IDC_BUTTON2, m_SHANCHU);
DDX_Control(pDX, IDC_BUTTON1, m_TIANJIA);
DDX_Control(pDX, IDCANCEL, m_TUICHU);
DDX_Control(pDX, IDOK, m_KAIDAN);
DDX_Control(pDX, IDC_EDIT8, m_heji);
DDX_Control(pDX, IDC_EDIT6, m_beizhu);
DDX_Control(pDX, IDC_LIST2, m_DCB);
DDX_Control(pDX, IDC_EDIT7, m_shuliang);
DDX_Control(pDX, IDC_EDIT3, m_jiage);
DDX_Control(pDX, IDC_EDIT5, m_cpmc);
DDX_Control(pDX, IDC_LIST1, m_CPB);
DDX_Control(pDX, IDC_COMBO2, m_cpfl);
DDX_Control(pDX, IDC_EDIT4, m_bjf);
DDX_Control(pDX, IDC_COMBO1, m_fws);
DDX_Control(pDX, IDC_EDIT1, m_bh);
DDX_Control(pDX, IDC_EDIT2, m_leixing);
DDX_Text(pDX, IDC_EDIT7, shuliang);
DDX_Text(pDX, IDC_EDIT3, jiage);
DDX_Text(pDX, IDC_EDIT4, Bjf);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CKrkd, CDialog)
//{{AFX_MSG_MAP(CKrkd)
ON_WM_PAINT()
ON_WM_SYSCOMMAND()
ON_WM_NCLBUTTONDOWN()
ON_WM_NCMOUSEMOVE()
ON_WM_CTLCOLOR()
ON_CBN_SELCHANGE(IDC_COMBO2, OnCPFL)
ON_NOTIFY(NM_CLICK, IDC_LIST1, OnCPB)
ON_BN_CLICKED(IDC_BUTTON1, OnTianJia)
ON_NOTIFY(NM_CLICK, IDC_LIST2, OnDCB)
ON_BN_CLICKED(IDC_BUTTON2, OnShanChu)
ON_BN_CLICKED(IDOK, OnKD)
ON_WM_SETCURSOR()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CKrkd message handlers
int DCheji=0;
int BJf=0;
void CKrkd::OnPaint()
{
CJieMian::OnPaint();
}
BOOL CKrkd::OnInitDialog()
{
CDialog::OnInitDialog();
m_TIANJIA.LoadBitmaps(IDB_TIANJIA1);
m_TIANJIA.SizeToContent();
m_KAIDAN.LoadBitmaps(IDB_KAIDAN);
m_KAIDAN.SizeToContent();
m_SHANCHU.LoadBitmaps(IDB_SHANCHU1);
m_SHANCHU.SizeToContent();
m_TUICHU.LoadBitmaps(IDB_TUICHU);
m_TUICHU.SizeToContent();
_variant_t var;
m_leixing.SetWindowText(FJLX);
m_bh.SetWindowText(FJH);
CString BJF;
SXfws();
ADOConn rst;
rst.OnInitADOConn();
CString sql;
sql.Format("SELECT*from Czb where 餐桌编号='%s'",FJH);
_RecordsetPtr m_pRecordset;
m_pRecordset=rst.GetRecordSet((_bstr_t)sql);
var=m_pRecordset->GetCollect("包间费");
if(var.vt!=VT_NULL)
BJF=(LPCSTR)_bstr_t(var);
m_bjf.SetWindowText(BJF);
rst.ExitConnect();
m_cpfl.AddString("凉菜类");
m_cpfl.AddString("熟食类");
m_cpfl.AddString("汤类");
m_cpfl.AddString("套餐类");
m_cpfl.AddString("小吃类");
m_cpfl.AddString("零售品");
m_CPB.SetTextColor(RGB (0, 255, 255));
m_CPB.SetTextBkColor(RGB (140, 180, 20));
m_CPB.SetBkColor(RGB (175, 190, 0));
m_CPB.InsertColumn(0,"菜品名称",LVCFMT_LEFT,100);
m_CPB.InsertColumn(1,"单位",LVCFMT_LEFT,38);
m_CPB.InsertColumn(2,"售价(元)",LVCFMT_LEFT,74);
m_CPB.ModifyStyle(0,LVS_REPORT | LVS_SHOWSELALWAYS | LVS_SINGLESEL);
m_CPB.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);
m_DCB.SetTextColor(RGB (0, 255, 255));
m_DCB.SetTextBkColor(RGB (140, 180, 20));
m_DCB.SetBkColor(RGB (175, 190, 0));
m_DCB.InsertColumn(0,"菜品名称",LVCFMT_LEFT,95);
m_DCB.InsertColumn(1,"单位",LVCFMT_LEFT,38);
m_DCB.InsertColumn(2,"售价(元)",LVCFMT_LEFT,65);
m_DCB.InsertColumn(3,"数量",LVCFMT_LEFT,38);
m_DCB.InsertColumn(4,"价格(元)",LVCFMT_LEFT,65);
m_DCB.InsertColumn(5,"备注",LVCFMT_LEFT,106);
m_DCB.ModifyStyle(0,LVS_REPORT | LVS_SHOWSELALWAYS | LVS_SINGLESEL);
m_DCB.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);
UpdateData(true);
DCheji=Bjf;
return TRUE;
}
void CKrkd::OnSysCommand(UINT nID, LPARAM lParam)
{
CJieMian::OnSysCommand(nID, lParam);
}
void CKrkd::OnNcLButtonDown(UINT nHitTest, CPoint point)
{
CJieMian::OnNcLButtonDown(nHitTest, point);
}
void CKrkd::OnNcMouseMove(UINT nHitTest, CPoint point)
{
CJieMian::OnNcMouseMove(nHitTest, point);
}
HBRUSH CKrkd::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
switch (nCtlColor) {
case CTLCOLOR_DLG :
case CTLCOLOR_LISTBOX:
case CTLCOLOR_MSGBOX:
case CTLCOLOR_SCROLLBAR:
case CTLCOLOR_EDIT:
case CTLCOLOR_STATIC:
{
pDC->SetBkMode(TRANSPARENT);
HBRUSH B = CreateSolidBrush(RGB(105,200,148));
return (HBRUSH) B;
}
}
}
void CKrkd::SXfws()
{
for(int i=0;i<50;i++)
{
m_fws.DeleteString(i);
}
ADOConn rst;
rst.OnInitADOConn();
rst.Open("select * from Ygmd",adCmdText);
int recordcount=rst.GetRecordCount();
int ii;
CString tiaojian;
for(ii=1;ii<=recordcount;ii++)
{
tiaojian=rst.GetFieldValue("状态");
if(tiaojian=="空闲")
{
tiaojian=rst.GetFieldValue("员工姓名");
m_fws.AddString(tiaojian);
}
rst.Move(ii);
}
rst.ExitConnect();
}
void CKrkd::OnCPFL()
{
// TODO: Add your control notification handler code here
m_CPB.DeleteAllItems();
UpdateData(true);
ADOConn rst;
rst.OnInitADOConn();
int ii;
int a=0;
CString tiaojian;
m_cpfl.GetWindowText(tiaojian);
if(tiaojian=="凉菜类")
{
rst.Open("select * from Cpb",adCmdText);
int recordcount=rst.GetRecordCount();
for(ii=1;ii<=recordcount;ii++)
{
tiaojian=rst.GetFieldValue("类别");
if(tiaojian=="凉菜类")
{
m_CPB.InsertItem(a,"");
m_CPB.SetItemText(a,0,rst.GetFieldValue("菜品名称"));
m_CPB.SetItemText(a,1,rst.GetFieldValue("单位"));
m_CPB.SetItemText(a,2,rst.GetFieldValue("售价"));
a++;
}
rst.Move(ii);
}
}
else if(tiaojian=="零售品")
{
rst.Open("select * from Lsp",adCmdText);
int recordcount=rst.GetRecordCount();
for(ii=1;ii<=recordcount;ii++)
{
m_CPB.InsertItem(ii-1,"");
m_CPB.SetItemText(ii-1,0,rst.GetFieldValue("零售品名称"));
m_CPB.SetItemText(ii-1,1,rst.GetFieldValue("单位"));
m_CPB.SetItemText(ii-1,2,rst.GetFieldValue("售价"));
rst.Move(ii);
}
}
else if(tiaojian=="熟食类")
{
rst.Open("select * from Cpb",adCmdText);
int recordcount=rst.GetRecordCount();
for(ii=1;ii<=recordcount;ii++)
{
tiaojian=rst.GetFieldValue("类别");
if(tiaojian=="熟食类")
{
m_CPB.InsertItem(a,"");
m_CPB.SetItemText(a,0,rst.GetFieldValue("菜品名称"));
m_CPB.SetItemText(a,1,rst.GetFieldValue("单位"));
m_CPB.SetItemText(a,2,rst.GetFieldValue("售价"));
a++;
}
rst.Move(ii);
}
}
else if(tiaojian=="汤类")
{
rst.Open("select * from Cpb",adCmdText);
int recordcount=rst.GetRecordCount();
for(ii=1;ii<=recordcount;ii++)
{
tiaojian=rst.GetFieldValue("类别");
if(tiaojian=="汤类")
{
m_CPB.InsertItem(a,"");
m_CPB.SetItemText(a,0,rst.GetFieldValue("菜品名称"));
m_CPB.SetItemText(a,1,rst.GetFieldValue("单位"));
m_CPB.SetItemText(a,2,rst.GetFieldValue("售价"));
a++;
}
rst.Move(ii);
}
}
else if(tiaojian=="套餐类")
{
rst.Open("select * from Cpb",adCmdText);
int recordcount=rst.GetRecordCount();
for(ii=1;ii<=recordcount;ii++)
{
tiaojian=rst.GetFieldValue("类别");
if(tiaojian=="套餐类")
{
m_CPB.InsertItem(a,"");
m_CPB.SetItemText(a,0,rst.GetFieldValue("菜品名称"));
m_CPB.SetItemText(a,1,rst.GetFieldValue("单位"));
m_CPB.SetItemText(a,2,rst.GetFieldValue("售价"));
a++;
}
rst.Move(ii);
}
}
else if(tiaojian=="小吃类")
{
rst.Open("select * from Cpb",adCmdText);
int recordcount=rst.GetRecordCount();
for(ii=1;ii<=recordcount;ii++)
{
tiaojian=rst.GetFieldValue("类别");
if(tiaojian=="小吃类")
{
m_CPB.InsertItem(a,"");
m_CPB.SetItemText(a,0,rst.GetFieldValue("菜品名称"));
m_CPB.SetItemText(a,1,rst.GetFieldValue("单位"));
m_CPB.SetItemText(a,2,rst.GetFieldValue("售价"));
a++;
}
rst.Move(ii);
}
}
rst.ExitConnect();
UpdateData(false);
}
void CKrkd::OnCPB(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
if(m_CPB.GetItemCount()==0)
{
return;
}
else
{
UpdateData(true);
int i=m_CPB.GetSelectionMark();
m_cpmc.SetWindowText(m_CPB.GetItemText(i,0));
m_jiage.SetWindowText(m_CPB.GetItemText(i,2));
}
*pResult = 0;
}
void CKrkd::OnTianJia()
{
UpdateData(true);
int count,i;
i=m_CPB.GetSelectionMark();
if(i==-1)
{
MessageBox("请选择要添加的菜品","餐饮管理系统");
return;
}
CString cpmc,shuliang1,shoujia1,beizhu,heji;
m_beizhu.GetWindowText(beizhu);
m_shuliang.GetWindowText(shuliang1);
count=m_DCB.GetItemCount();
int shoujia=jiage*shuliang;
shoujia1.Format("%d",shoujia);
m_DCB.InsertItem(count,"");
m_DCB.SetItemText(count,0,m_CPB.GetItemText(i,0));
m_DCB.SetItemText(count,1,m_CPB.GetItemText(i,1));
m_DCB.SetItemText(count,2,m_CPB.GetItemText(i,2));
m_DCB.SetItemText(count,3,shuliang1);
m_DCB.SetItemText(count,4,shoujia1);
m_DCB.SetItemText(count,5,beizhu);
DCheji=DCheji+shoujia;
heji.Format("%d",DCheji);
m_heji.SetWindowText(heji);
shuliang=1;
m_cpmc.SetWindowText("");
m_jiage.SetWindowText("");
BJf=Bjf;
UpdateData(false);
}
void CKrkd::OnDCB(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
int i=m_DCB.GetSelectionMark();
m_jiage.SetWindowText(m_DCB.GetItemText(i,4));
*pResult = 0;
}
void CKrkd::OnShanChu()
{
UpdateData(true);
int i=m_DCB.GetSelectionMark();
if(i==-1)
{
MessageBox("请选择要删除的菜品","餐饮管理系统");
return;
}
m_DCB.DeleteItem(i);
DCheji=DCheji-jiage;
CString heji;
heji.Format("%d",DCheji);
m_heji.SetWindowText(heji);
int a=m_DCB.GetItemCount();
if(a==0)
{
m_heji.SetWindowText("0");
}
}
void CKrkd::OnCancel()
{
// TODO: Add extra cleanup here
DCheji=0;
Cyydlg *pMyDlg;
pMyDlg = new Cyydlg;
pMyDlg->Create(IDD_YY);
pMyDlg->ShowWindow(SW_SHOW);
CDialog::OnCancel();
}
void CKrkd::OnKD()
{
UpdateData(true);
int i=m_DCB.GetItemCount();
CString czbh,cpmc,shoujia,shuliang,jiage,hj,bz,gongzuo,fws;
m_fws.GetWindowText(fws);
gongzuo="工作";
m_bh.GetWindowText(czbh);
ADOConn rst;
_bstr_t vSQL;
hj.Format("%d",DCheji);
if(i==0)
{
MessageBox("请在点菜单完毕后再提交点菜单","餐饮管理系统");
return;
}
if(fws=="")
{
MessageBox("请选择服务生后再提交点菜单","餐饮管理系统");
return;
}
for(int ii=0;iiCreate(IDD_YY);
pMyDlg->ShowWindow(SW_SHOW);
CDialog::OnOK();
}
BOOL CKrkd::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
if (pWnd==GetDlgItem(IDOK) || pWnd==GetDlgItem(IDCANCEL)||pWnd==GetDlgItem(IDC_BUTTON1)||pWnd==GetDlgItem(IDC_BUTTON2))
{
SetCursor(LoadCursor(NULL,IDC_HAND));
return TRUE;
}
return CDialog::OnSetCursor(pWnd, nHitTest, message);
}