超市管理系统软件开发文档.doc
《超市管理系统软件开发文档.doc》由会员分享,可在线阅读,更多相关《超市管理系统软件开发文档.doc(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、超市管理系统软件开发文档石家庄学院 VC+程序设计 课程名称: 超市管理系统 设计题目: 计算机系 院系: * 专业: * 班级: * 设计者: * 学号: * 指导教师: 2010年 12月 31日 一、题目分析: 这是为小型超市提供的一个应用程序,对收支,进货,销售及人员等情况进行管理.由于商店规模小,可以把全部管理内容的输入和存储,管理都集中在一台计算机上,不需要计算机网络分布处理,因此是一个典型的桌面数据库应用系统。 二、概要设计 部分对话框如下: 控制类型 ID 属性设置 Button IDC_BUTTON_ADD Caption设为“增加(&A)” Button IDC_BUTTO
2、N_DELETE Caption设为“清除记录(&D)” Button IDC_BUTTON_MODIFY Caption设为“返回(M)” Static Text 默认 Caption设为“货品ID” Static Text 默认 Caption设为“售价” Static Text 默认 Caption设为“货品名称” Static Text 默认 Caption设为“数量 Static Text 默认 Caption设为“总价” Static Text 默认 Caption设为“售货员” Edit Box IDC_EDIT_ID 默认 Edit Box IDC_EDIT_NAME 默认 E
3、dit Box IDC_EDIT_NUM 默认 Date Time Picker IDC_EDIT_ZONGJIA 默认 List Control IDC_LIST_EMPLOYEEID View选中Report Group Box 默认 Caption设为“操作” 三、结果分析: (1)登录界面如下图所示: 在登录界面输入正确用户名和密码弹出“欢迎进入吉吉超市管理系统”对话框,如下图所示: 若输入的用户名或密码错误则弹出用户名或密码错误的窗口,提示重新输入,弹出的窗体如下图所示: (2)在弹出的“欢迎进入”的窗体中点击确定,则进入超市管理的主界面,如下图所示,点击则可进入相应的管理界面: (
4、3)点击主界面的登陆管理密码修改,则可以修改密码,以保证安全 若输入的旧密码错误或新密码与密码确认不一致,则弹出“error”,如下图所示: (4) 进入管理主界面的营销管理-进货管理,则进入库存管理,此处输入新进货品信息:货品ID,货品名等,点击添加则列表处显示更新后的货品信息,在列表中点击一行纪录,再点击删除可实现列表处的货品删除,若未选中则弹出“您没有选中纪录”,并且同时更新库存数据库的货品信息。 若在位选中时点击删除,则弹出“您未选任何纪录”的窗口,提示需要选中,如下图所示: 例如在右方输入货品ID,货品名等信息后,点击添加,界面如下图所示: (5) 进入管理主界面的营销管理-销售管理
5、,则进入销售管理界面,在下方填入售货信息后,点击确定可添加到列表框中,点击清空纪录则清除整个列表框中的信息。 例如点击清空纪录后,界面如下图所示: (6) 在计算总价时,点击计算器按钮,则弹出计算器的对话框,便于计算。下图为计算器界面,可以实现加减乘除,开方,求余数以及倒数的运算,点击CE则清零,点击Backspace实现消除一位的操作。 例如点击进行4。5*33,出现的界面如下图所示: (7) 点击主界面中的超市管理-员工管理,则进入此界面,在此可增加或删除和利用员工姓名、员工ID和身份证号查找员工信息。 点击查找,界面如下图所示: 若想按员工ID查找员工信息,在查找条件处选择员工ID,例如
6、输入员工ID号01,界面如下图所示: 按员工姓名查找员工信息,输入李四,界面如下图所示: 按员工身份证号查找员工信息,在查找条件中选择身份证号,例如输入123451,界面如下图所示: 例如选中第三行点击删除后界面如下图所示 (8) 登录超市管理中的VIP管理进入此界面,填入超市会员的VIP号,姓名和积分,可以添加会员纪录,点击删除则删除列表中点中的的会员记录,并同时更新数据库中的信息. 四、附录(各模块程序代码:) (1)登录代码: void CLoginDlg::OnOK() UpdateData(true); CLoginSet m_set; if(m_set。IsOpen()) m_se
7、t.Close(); m_set.m_strFilter.Format(”userid=s AND passwd=%s ,m_userid,m_passwd); m_set.Open(); if(!m_set。IsEOF() MessageBox(Welcome!”); m_ID=m_userid; else MessageBox(”error!”); m_set。Close(); CDialog:OnOK(); void CLoginDlg:OnPaint() CPaintDC dc(this); / device context for painting / TODO: Add your
8、message handler code here / CPaintDC dc(this); / device context for painting CBitmap bitmap; bitmap.LoadBitmap(IDB_chao); CBrush brush; brush。CreatePatternBrush(bitmap); CBrush pOldBrush = dc.SelectObject(brush); dc.Rectangle(0,0,600,400); dc。SelectObject(pOldBrush); / Do not call CDialog::OnPaint()
9、 for painting messages (2)登录管理代码: void CChangePasswd::OnOK() UpdateData(true); CLoginSet m_set; if(m_set。IsOpen()) m_set.Close(); m_set.m_strFilter.Format(”userid=%s AND passwd=%s”,m_ID,m_old); m_set.Open(); if(!m_set.IsEOF()) if(m_new=m_newsure) m_set。Edit(); m_set。m_passwd=m_new; m_set.Update(); M
10、essageBox(Success!”); else MessageBox(error!”); else MessageBox(error!”); m_set.Close(); CDialog::OnOK(); void CChangePasswd:OnPaint() CPaintDC dc(this); / device context for painting / TODO: Add your message handler code here / CPaintDC dc(this); / device context for painting CBitmap bitmap; bitmap
11、.LoadBitmap(IDB_mima); CBrush brush; brush。CreatePatternBrush(&bitmap); CBrush pOldBrush = dc.SelectObject(brush); dc。Rectangle(0,0,600,400); dc。SelectObject(pOldBrush); / Do not call CDialog:OnPaint() for painting messages (3)员工管理代码: BOOL CEmployeeDlg:OnInitDialog() CDialog::OnInitDialog(); m_EmpLi
12、st.SetTextColor(RGB (0, 0, 0); m_EmpList.SetBkColor(RGB(255,255,255)); m_EmpList。SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT); m_EmpList。InsertColumn(0,_T(雇员代号”), LVCFMT_CENTER,100); m_EmpList。InsertColumn(1,_T(姓名”), LVCFMT_CENTER,80); m_EmpList.InsertColumn(2,_T(”性别”), LVCFMT_CENTER,100)
13、; m_EmpList。InsertColumn(3,_T(年龄”), LVCFMT_CENTER,100); m_EmpList。InsertColumn(4,_T(身份证号”), LVCFMT_CENTER,120); m_EmpList.InsertColumn(5,_T(”电话”), LVCFMT_CENTER,100); m_set.Open(); m_set.MoveFirst(); int i=0; / CString str; while(!m_set。IsEOF()) m_EmpList。InsertItem(i,m_set。m_EmpNo); m_EmpList.SetIt
14、emText(i,1,m_set.m_EmpName); m_EmpList。SetItemText(i,2,m_set.m_EmpSex); m_EmpList。SetItemText(i,3,m_set.m_EmpAge); m_EmpList.SetItemText(i,4,m_set。m_EmpID); m_EmpList.SetItemText(i,5,m_set.m_EmpTel); i+; m_set。MoveNext(); m_set.Close(); return TRUE; void CEmployeeDlg:OnDeleteEmp() int i=m_EmpList.Ge
15、tSelectionMark(); if(i=-1) MessageBox(”没有选中纪录!”); else m_EmpList.DeleteItem(i); m_set。Open(); m_set.Move(i); m_set.Delete(); m_set.Close(); void CEmployeeDlg:OnAddEmp() UpdateData(); m_set。Open(); if(IDC_AddEmp) int i=m_EmpList.GetItemCount(); /CString str; m_EmpList。InsertItem(i,m_EmpNo); m_EmpList
16、.SetItemText(i,1,m_EmpName); m_EmpList.SetItemText(i,2,m_EmpSex); m_EmpList.SetItemText(i,3,m_EmpAge); m_EmpList。SetItemText(i,4,m_EmpID); m_EmpList。SetItemText(i,5,m_EmpTel); m_set.AddNew(); m_set.m_EmpNo=m_EmpNo; m_set。m_EmpName=m_EmpName; m_set.m_EmpSex=m_EmpSex; m_set。m_EmpAge=m_EmpAge; m_set。m_
17、EmpID=m_EmpID; m_set。m_EmpTel=m_EmpTel; m_set.Update(); UpdateData(false); m_set.Close(); void CEmployeeDlg:OnPaint() CPaintDC dc(this); / device context for painting / TODO: Add your message handler code here CBitmap bitmap; bitmap.LoadBitmap(IDB_mima); CBrush brush; brush。CreatePatternBrush(&bitma
18、p); CBrush pOldBrush = dc。SelectObject(&brush); dc。Rectangle(0,0,600,400); dc。SelectObject(pOldBrush); / Do not call CDialog::OnPaint() for painting messages (4)会员管理代码: BOOL CVguanli:OnInitDialog() CDialog:OnInitDialog(); / TODO: Add extra initialization here m_Vlist.SetTextColor(RGB (0, 0, 0)); m_V
19、list。SetBkColor(RGB(255,255,255); m_Vlist.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT); m_Vlist。InsertColumn(0,_T(VIP号), LVCFMT_CENTER,100); m_Vlist.InsertColumn(1,_T(”姓名), LVCFMT_CENTER,80); m_Vlist.InsertColumn(2,_T(”积分”), LVCFMT_CENTER,100); m_set。Open(); m_set。MoveFirst(); int i=0; /
20、CString str; while(!m_set。IsEOF()) m_Vlist.InsertItem(i,m_set。m_VIPhao); m_Vlist。SetItemText(i,1,m_set。m_name); m_Vlist.SetItemText(i,2,m_set.m_jifen); i+; m_set。MoveNext(); m_set.Close(); return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return
21、FALSE void CVguanli::Onadd() / TODO: Add your control notification handler code here UpdateData(); m_set.Open(); if(IDC_add) int i=m_Vlist.GetItemCount(); /CString str; m_Vlist.InsertItem(i,m_VIPhao); m_Vlist.SetItemText(i,1,m_name); m_Vlist.SetItemText(i,2,m_jifen); m_set。AddNew(); m_set。m_VIPhao=m
22、_VIPhao; m_set.m_name=m_name; m_set。m_jifen=m_jifen; m_set。Update(); UpdateData(false); m_set。Close(); void CVguanli:Ondelete() int i=m_Vlist.GetSelectionMark(); if(i=1) MessageBox(没有选中纪录!”); else m_Vlist。DeleteItem(i); m_set.Open(); m_set.Move(i); m_set。Delete(); m_set。Close(); / TODO: Add your con
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 管理 系统软件 开发 文档
限制150内