还剩11页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
课程设计报告课程名称面向对象程序设计C++设计题目图书销售管理系统专业计算机科学与技术姓名学号指导教师李晓虹2016年1月1日1.系统需求分析
1.1开发背景随着现代图书流通市场的竞争愈演愈烈,如何以一种便捷的管理方式加快图书流通信息的反馈速度,降低图书库存占用,缩短资金周转时间,提高工作效率,已经成为能否增强图书销售企业竞争力的关键问题以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书销售,入库情况的统计和核实等往往采用对书籍卡号的人工检查进行数据信息处理工作量大,容易出错由于数据繁多,容易丢失,且不易查找总的来说,缺乏系统,规范的信息管理手段信息技术的飞速发展给图书企业的管理带来了全新的变革,采用图书管理系统对图书企业经营运作进行全程管理,不仅使商家摆脱了以往人工管理产生的一系列问题,而且提高了管理效率,减少了管理成本,增加了经济效益通过管理系统对图书企业的发展进行规划,可以收集大量关键可靠的数据综合上述,建立一个图书销售管理系统,使图书销售管理工作更加规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的进行查询和修改图书销售情况等管理操作
1.2开发目的图书市场日益激烈的竞争迫使图书销售商家希望采用一种新的管理方式来加快图书流通信息的反馈速度,而计算机信息技术的发展为图书管理注入了新的生机通过对市场的调查得知,开发一款合格的图书信息管理系统用来解决图书销售管理中的几个问题能够对图书销售信息进行集中管理,能够大大提高图书销售员的工作效率,降低工作成本,能够帮助购买客户更加直观快捷的了解图书相关信息并进行合理购买
1.3功能需求通过对图书销售管理过程的研究分析,在程序设计时系统应实现的功能
(1)实现图书的进货入库管理,根据某种书籍的库存量及销售情况确定进货数量,根据供应商报价选择供应商系统输出一份进货单并自动修改库存量,把本次进货的信息添加到进货库中
(2)实现图书的退货管理,顾客把已买的书籍退还给书店输出一份退货单并自动修改库存量,把本次退货的信息添加到退货库中
(3)实现图书的销售管理进入本系统销售控制台,输入顾客要买书籍的书名及数量,判断购买数量是否超过书籍库存数量,若不超过,决定购买,并同时把此次销售的有关信息添加到日销售库中,若超过,提示不能购买此书籍4实现图书的销售统计,根据销售情况输出统计的报表一般内容为每月的销售总额、销售总量及排行榜
1.4数据需求通过对系统功能需求的分析,可以初步确定该系统的基本数据需求由各个功能模块可以进一步确定具体的数据需求,具体数据需求如下
(1)图书进货管理模块数据需求该模块主要管理图书进货信息,需要表示图书进货信息、供应商信息的数据,应包括排序、进货时间、图书编码、书名、作者、出版商、图书类型、进货价、进货量、供应时间、供应商、供应数量等数据项
(2)图书退货管理模块数据需求该模块主要管理图书退货信息,需要表示图书退货信息的数据,应包括排序、退货时间、图书编码、书名、作者、出版商、图书类型、价格、退货数量等数据项
(3)图书销售管理模块数据需求该模块主要管理图书销售的情况,需要表示图书销售、图书库存信息的数据,应包括排序、售出时间、图书编码、书名、作者、出版商、图书类型、售价、售出数量、库存量、进货价等数据项
(4)图书销售统计管理模块数据需求该模块主要管理图书售出统计的情况,需要表示图书售出统计信息的数据,应包括图书编码、书名、作者、出版商、图书类型、售价、售出数量、售出总量等数据项
2.总体设计
2.1总体设计此图书销售管理系统主要包括图书进货管理,图书退货管理,图书销售管理,和图书销售统计管理等功能具体如图所示图2-
13.详细设计
3.1系统登录模块设计为了防止非法用户进入系统,程序中设计了一个“图书管理系统登陆”窗口在程序启动时,首先显示登陆窗口进行用户身份验证,如果用户输入的用户名或密码不正确,将禁止进入系统只有输入的用户名和密码都正确,才能进入系统,运行效果图如下图3-1图3-2图3-
33.2图书进货管理模块设计图书进货功能设计主要实现在现有图书数量的基础上添加被选中的图书,其中包括图书进货记录显示,供应商报价功能设计,具体设计如下图书进货记录显示界面图3-4图3-5此功能设计思想主要是显示已进货的图书记录,使用的数据表bm_BookStock,bm_Supply主要代码//显示供应商数据库中的所有记录voidCStockManage::OnDisplay{//TODO:AddyourcommandhandlercodehereOnClear;CStringsql;sql.Formatselect*frombm_Supply;m_pRs-raw_Close;//关闭记录集m_pRs-Open_variant_tsqlm_pCon.GetInterfacePtradOpenKeysetadLockOptimisticadCmdText;intindex=0;stockdlg2-m_StockSupplyList.DeleteAllItems;while!m_pRs-adoEOF{index=stockdlg2-m_StockSupplyList.InsertItemstockdlg2-m_StockSupplyList.GetItemCountTCHAR*_bstr_tm_pRs-GetFields-GetItemlong1-Value;forintcol=2;col7;col++stockdlg2-m_StockSupplyList.SetItemTextindexcol-1TCHAR*_bstr_tm_pRs-GetFields-GetItemlongcol-Value;m_pRs-MoveNext;}}
3.3图书退货管理模块设计图书退货管理模块主要实现已售图书退货功能,其中包括办理退货业务、显示退货记录功能,具体设计如下图书退货管理显示界面图3-6图3-7此部分使用的数据表为bm_BookRefund主要代码如下voidCRefundManage::OnSelchangeRefundTabNMHDR*pNMHDRLRESULT*pResult//退货管理界面{//TODO:Addyourcontrolnotificationhandlercodehereintselect=m_RefundTab.GetCurSel;ifselect=0DoTabselect;*pResult=0;}voidCRefundManage::OnExitRefund{//TODO:AddyourcommandhandlercodehereEndDialog0;}
3.4图书销售管理模块设计图书销售管理模块主要实现销售图书功能,其中包括图书交易以及图书查询功能,具体设计如下图书销售管理显示界面此部分使用的数据表bm_BookSoldbm_BookStorage主要代码如下//选书添加到选书单voidCVendManage::OnAddbook{//TODO:Addyourcommandhandlercodehereifm_AddIndex0return;CVendDlgcv;cv.DoModal;if!cv.getcountreturn;ifstr_to_intcv.m_PucheCountstr_to_intm_StorageList.GetItemTextm_AddIndex6{MessageBox库存不够错误!;return;}intindex=m_PucheList.InsertItemm_PucheList.GetItemCountm_StorageList.GetItemTextm_AddIndex0;forinti=1;i6;i++m_PucheList.SetItemTextindexim_StorageList.GetItemTextm_AddIndexi;m_PucheList.SetItemTextindex6cv.m_PucheCount;}
3.5图书销售统计管理模块设计图书销售统计管理模块主要实现已售出图书的统计功能,其中包括查看销售记录、日销售量、销售排行榜功能,具体设计如下图书销售统计管理显示界面图3-8图3-9图3-10此部分使用的数据表bm_BookSummry主要代码如下BOOLCStasticManage::OnInitDialog//图书销售统计管理{CDialog::OnInitDialog;stasticdlg1=newCStasticDlg1;stasticdlg2=newCStasticDlg2;stasticdlg3=newCStasticDlg3;//将对话框贴在标签上...stasticdlg1-CreateIDD_STASTIC_DIALOG1m_StasticTab;stasticdlg2-CreateIDD_STASTIC_DIALOG2m_StasticTab;stasticdlg3-CreateIDD_STASTIC_DIALOG3m_StasticTab;m_StasticTab.InsertItem0销售记录0;m_StasticTab.InsertItem1日销售量1;m_StasticTab.InsertItem2销售排行榜2;m_StasticTab.SetMinTabWidth100;m_StasticTab.SetCurSelPID;DoTabPID;returnTRUE;}4.系统总结
4.1总结通过此次课程设计学习了如何使用MicrosoftVisualC++
6.0和MicrosoftSQLServer2008编写可视化界面的应用程序本设计程序为图书销售管理系统,通过在数据库中建立7个表存储了销售图书的各种不同信息通过对各个数据表的操作实现了图书进货管理,图书退货管理,图书销售管理,销售统计管理等主要基本功能,其中具体包括图书进货时对需要入库的图书种类、图书数量、图书供应商的选择功能和进货图书记录显示功能;图书退货时对需要出库的图书选择与判断功能和退货图书记录显示功能;图书销售时对库中现有图书的购买选择功能、图书库存量判断功能、支付功能及图书模糊查询功能;销售统计时对销售记录、日销售量、销售排行榜的显示功能在操作过程中,这些功能均可实现,操作结果正确无误,操作界面比较美观具体操作截图请见本报告详细设计板块本程序采用MFC编写后台代码,以MicrosoftSQLServer2008作为后台数据库,选用ADO.NET访问数据库本次数据库实验由于之前没有接触过,所以整个过程工作量比较大,遇到的问题困难不少,比如数据库的连接问题,对话框设计问题,自制控件问题,功能代码的编辑问题等等,自己通过查阅相关的一些资料,并向同学老师悉心请教,逐步完成程序的每一步,通过这次课程设计,学习了很多程序设计方法,加深了对MFC的了解与运用,对以后的程序设计提供了很大的帮助
4.2系统不足1系统对进货记录、退货记录和销售统计显示等界面没有保存和打印的功能
(2)销售统计模块销售排行榜只能按图书销量从多到少依次排序,不能倒序排列图书销售管理系统图书进货管理图书退货管理图书销售管理图书销售统计管理进货记录管理供应商信息管理退货查询与操作退货记录管理图书查询管理销售图书管理销售记录管理日销售量管理销售排行榜管理。