网上书店管理系统_课程设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

前言各种信息资源的有效管理已经成为人们获取信息的关键所在,这也将是社会资源信息化建设的重点。书是人类不可缺少的精神食粮,也是现代社会步入文明的见证。网上书店管理系统的目的是应用信息化的技术对图书进行的管理,减少大量的数据冗余和传统管理的繁琐工作量,实现管理的系统化、科学化。系统的主要子模块有图书管理,顾客管理等,可实现日常图书进货、发货业务,最终达到提高工作效率的目的。VisualC++6.0是一种功能强大行之有效的可视化编程工具,因此此软件是在VisualC++6.0环境下编写的。对于我们,随着学习的深入,已经基本全部掌握了VisualC++6.0环境下的程序开发。为了将我们的编程能力提升到一个更高的水平,深化面向对象的编程思维和解决问题的能力,值此课程设计周期间,进行基于VisualC++6.0环境的软件开发,利用SQLServer2005作为后台的数据库,以网上书店管理系统作为开始,对VisualC++6.0环境和面向对象程序设计进行回忆和熟悉。本文档详细叙述了基于VisualC++6.0环境下的网上书店管理系统的设计过程以及程序源代码。本文档从概要设计,详细设计,参考源程序代码以及显示程序运行的截屏等方面详尽的介绍了软件开发过程。此次网上书店管理系统的开发目的是使我们用面向对象的方式来思考和解决问题的能力,并且可以掌握数据库的连接、MFC的设计、类的设计和使用以及C++语法。本文档的安排如下:第一章主要介绍了对面向对象C++语言以及VC、SQLServer2005编程环境。第二章主要的介绍说明了本软件的编程思想和总体设计。第三章主要介绍关于软件各个功能的详细设计。第四章主要对软件进行调试,运行程序并截图,显示运行界面。第五章对课程设计进行总结。程序在设计的过程中遇到的问题已及时更正,但由于编者的能力和水平有限,本软件和文档中不免会出现一些不期待的错误,望文档读者能够理解和体谅,并欢迎提醒和纠正,在此表示感谢以及敬意。1课程设计概述1.1VisualC++6.0概述VisualC++是微软公司的重要产品之一,是一种功能强大行之有效的可视化编程工具。它提供了MFC类库,使用户可以方便的开发自己想实现的功能。VisualC++6.0的主要特点:(1)自动化和宏功能。(2)可以灵活地定制工具栏和菜单。(3)可以直接运行和调试程序,还可以使用宏语言来自动操作调试器。(4)支持Internet连接。(5)一个新的便捷的项目系统可以允许一个工作区内包含多个不同的项目类型。(6)在工作区内可以包含多个并列的工程文件。(7)可以在对话框中使用WizardBar将程序同可视化元素联系起来。(8)FindinFile命令支持两个独立的输出窗格,可以保存上一次搜索的结果。这些新特性可以更好地利用VisualC++开发工具进行Windows应用程序开发。1.2VisualC++6.0运行环境图1.1VisualC++6.0运行环境1.3关于数据库数据库的创建是在SQLServerManagementStudioExpress里面用可视化的操作完成。下面用类似的方法建了四个表,分别起名为:book、customer、manager、orders,建表的同时建立约束条件。然后分别在表中输入列名等数据,分析好数据的安排后注意表之间的联系,属性相对应。图1.2数据库建表2软件总体设计2.1软件总体设计思想目前社会上信息管理系统发展飞速,越来越多的企事业单位都引入了信息管理软件来管理自己日益增长的各种信息。各种网店也相继采用了不同的管理系统来管理商品信息,取得了很大的成效,网上书店管理系统也在功能上不但完善和加强,为了使书店管理更加规范化,程序化,科学化,我们研发了这次的网上书店管理系统。本系统的功能是为管理者提供方便的管理、为顾客提供快捷的购买,管理者可以通过登录管理界面实现对图书的添加、修改、删除操作以及发货和查看顾客信息,顾客可以进入图书查询界面通过图书类别、图书名称、图书编号、折扣额度等四种方式查询图书,查到满意的图书后可点击购买。2.2系统层次图图2.1系统层次图2.3各表数据1)图书信息表book:记录书籍的编号、类别、名称、价格、简介、折扣、库存数量等。图2.2book表2)顾客信息表customer:记录顾客的编号、密码、姓名、性别、年龄、住址、联系电话等。图2.3customer表3)管理员信息表manager:记录管理员的登录名和密码。图2.4manager表4)订单表orders:记录订单号、图书编号、顾客编号、顾客姓名、顾客地址、联系电话、付款方式、发货方式等。图2.5orders表2.4基本E-R图图2.6基本E-R图3软件详细设计3.1数据库连接本软件使用ODBC连接数据库,基本思想为为数据库中每个表建立一个RecordSet类,当要对表中数据进行操作时,创建相关记录集,即可引用类中的响应函数进行添加、修改、删除、查询等操作。3.2主界面主界面中显示顾客登录、管理员登录和顾客注册三个按钮,顾客输入登录名和密码后点击顾客登录后进入顾客查询界面,管理员输入登录名和密码后点击管理员登录后进入管理界面,若是新顾客,直接点击注册即可进入注册界面,各对话框之间的连接通过DoModal()函数实现,若需要进行身份验证,未输入用户名或密码则将弹出提示对话框“请输入用户名和密码!”,输入后系统将进入相应的数据库表查询是否有此信息,若无对应信息则弹出对话框提示输入信息错误,信息正确方可进入下一界面,如顾客登录时,系统使用以下代码完成身份验证功能,同时记录下用户信息以便加入订单://生成查询用户账号和密码的SQL语句mSqlStr=select*fromcustomerwherecno=';mSqlStr=mSqlStr+m_no;mSqlStr=mSqlStr+'andcpass=';mSqlStr=mSqlStr+m_password;mSqlStr=mSqlStr+';if(!customer.Open(AFX_DB_USE_DEFAULT_TYPE,mSqlStr)){AfxMessageBox(customer表打开失败!);return;}if(!customer.IsBOF()){//Openallfunctionforuserm_customer_no=customer.m_cno;m_customer_name=customer.m_cname;m_customer_phone=customer.m_cphone;m_customer_add=customer.m_cadd;AfxMessageBox(密码正确,欢迎登录!);EndDialog(IDCANCEL);Cgkcxa;a.DoModal();}else{AfxMessageBox(密码输入错误!!);return;}3.3添加功能本软件的添加功能使用AddNew()函数,应用在顾客注册、顾客购书、管理员添加新书等模块。1)顾客注册:新顾客在主界面中点击注册后即可进入注册界面填写自己的各项信息,完成后点击确定,信息添加到customer表中,并利用触发器自动生成顾客编号作为登录名。相关代码如下:setcustomerc;c.Open();c.AddNew();UpdateData(TRUE);if(m_name.IsEmpty()||m_phone.IsEmpty()||m_add.IsEmpty()||m_password.IsEmpty()||m_mima.IsEmpty()){MessageBox(请输入全部信息!);return;}if(m_password!=m_mima){MessageBox(密码错误,请确认!);return;}c.m_cpass=m_password;c.m_cname=m_name;if(m_sex==0)c.m_csex=男;elsec.m_csex=女;c.m_cage=m_age;c.m_cphone=m_phone;c.m_cadd=m_add;c.m_cpass=m_password;if(m_sex==0)c.m_csex=男;elsec.m_csex=女;c.Update();c.Requery();m_customer_zhanghao=c.m_cno;UpdateData(FALSE);m_customer_xingming=m_name;m_customer_mima=m_password;EndDialog(IDCANCEL);Cxxqra;a.DoModal();2)顾客购书:顾客在查询界面中选择想要购买的图书后点击购买可进入购买界面,选择付款方式、送货方式并确认后,相关信息添加到orders表中,并利用触发器自动生成订单号。相关代码如下:Csetordersorder;setbookbook;order.Open();order.AddNew();UpdateData(TRUE);if(m_zhifu==0)order.m_opay=网银支付;elseorder.m_opay=货到付款;if(m_songhuo==0)order.m_oconvey=快递;elseorder.m_oconvey=EMS;order.m_bno=m_book_no;order.m_cadd=m_customer_add;order.m_cname=m_customer_name;order.m_cno=m_customer_no;order.m_cphone=m_customer_phone;order.Update();order.Requery();m_order_no=order.m_ono;book.Open();book.Edit();book.m_bstock--;book.Update();book.Requery();book.Close();UpdateData(FALSE);CStringtemp;temp.Format(购买成功!);AfxMessageBox(temp);EndDialog(IDCANCEL);Cgkcxa;a.DoModal();3)管理员添加新书:管理员在管理界面中输入各项信息后点击添加,图示信息即可被添加到book表中,相关代码如下:setbooka,b;a.Open();a.AddNew();UpdateData(TRUE);if(m_no.IsEmpty()||m_kind.IsEmpty()||m_name.IsEmpty()||m_price.IsEmpty()||m_intro.IsEmpty()||m_dis==0||m_stock==0){MessageBox(请输入全部信息!);return;}if(b.IsOpen())b.Close();if(m_no!=_T()){b.m_strFilter.Format(bno='%s',m_no);b.Open();if(b.m_bno!=_T()){MessageBox(已经有这条记录了!);return;}}a.m_bno=m_no;a.m_bkind=m_kind;a.m_bname=m_name;a.m_bprice=m_price;a.m_bintro=m_intro;a.m_bdis=m_dis;a.m_bstock=m_stock;CStringaa,bb;m_list.InsertItem(0,a.m_bno,0);m_list.SetItemText(0,1,a.m_bkind);m_list.SetItemText(0,2,a.m_bname);m_list.SetItemText(0,3,a.m_bprice);m_list.SetItemText(0,4,a.m_bintro);aa.Format(%d,a.m_bdis);m_list.SetItemText(0,5,aa);bb.Format(%d,a.m_bstock);m_list.SetItemText(0,6,bb);a.U

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功