《.Net开发技术基础》课程设计报告商店客户管理系统_第1页
《.Net开发技术基础》课程设计报告商店客户管理系统_第2页
《.Net开发技术基础》课程设计报告商店客户管理系统_第3页
《.Net开发技术基础》课程设计报告商店客户管理系统_第4页
《.Net开发技术基础》课程设计报告商店客户管理系统_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、重庆科技学院.net开发技术基础课程设计报告摘要随着高科技的迅猛发展,信息技术己经深入生活中的各个领域。商店客户管理系统是典型的信息系统,本次课程设计主要包括后台数据库的建立、程序代码的实现和软件测试,要求建立起数据一致性,并建立了触发器、视图、存储过程等。本系统是源于重庆科技学院校园超市的客户管理系统,收银员可以利用员工号进入收银系统,管理员可以利用本系统对客户的信息进行管理,同时对客户购买的历史记录进行查询,客户可以在本系统给管理员留言。系统简单易懂,能够适应大多数能源公司的要求。关键词:信息技术 客户管理系统 软件测试重庆科技学院课程设计任务书设计题目:商店客户管理系统学生姓名课程名称.

2、net开发技术基础课程设计专业班级地 点起止时间2012 年6月 18 日至 202 年 6 月 22日设计内容及要求1、设计内容 : 重庆科技学院校园超市为了更好的管理学校超市的客户(学生、或教师),决定开发一套校园超市客户管理系统。该系统要求有以下功能: 1、客户基本信息录入(姓名,学号或工号,性别,班级或是部门,客户号) 2、商品信息录入、修改。等。 3、客户购买商品信息登记(要求能记录住每一个客户何时、购买了何产品,价格是多少) 4、客户级别管理(当客户在商店累记消费达到一定数量时,可以升为一级会员、二级会员、三级会员、等等,以后不同级别会员购买商品时,客户可以享有不同的折扣或是优惠)

3、 5、查询管理(注册客户信息查询、客户购买产品记录查询,产品数量查询等)2、要求:代码实现要体现ooa程序设计的思想代码实现需采用c#语言代码要能调试通过并运行,体现优化的思想进行创新设计3、技术要求:该系统要求采用c/s模式或是b/s模式实现,但从技术上,必须达到以下要求。1、 安装包(必有10分)2、 运行不出错,要进行错误捕获处理机制(必有15分)3、 数据库连结不出错,写出,读出(必有15分)4、 菜单、下拉框、状态栏(选有10分)5、 水晶报表(必有15分)6、 帮助(必有15分)7、 美工(选有15分)8、 .dll(选有15分)9、 webservice(选有15分)10、 调用

4、了数据库中的视图(10分)、调用了数据库中的存储过程(10分)。(必有)注:必有的技术,必须在实现,选有项,则根据自身要求,和软件项目的要求,自己选用,如果采用除以上技术以外的其它技术,答辨时,请特别提出。 4.数据库设计要求(必须达到以下要求): 1、数据库用的表不少于5个(20分) 2、表与表之间必须有引用,必有参照完整性约束(20分) 3、数据库中的视图必须不少于5个(20分) 4、数据库中的存储过程不少于5个(20分) 5、数据库在的触发器不少于2个(20分)设计参数进度要求第一阶段:分析系统中需要实现的功能; 第二阶段:根据问题描述,设计系统的解决方案; 第三阶段:完成各个功能模块的

5、划分,及其代码编写;第四阶段:测试并完成报告、答辩参考资料1、mickey williams visual c#.net技术内幕(第二版)清华大学出版社2007.32、王辉、张大治visual c#程序设计实用教程(第一版)清华大学出版社2007.3 3、刘烨、吴中元c#编程及应用程序开发教程(第一版) 清华大学出版社2006.5其它考核方法:课程设计报告 20%代码 60%答辩 20%评定方式:总分:100分1、0- 59分:不及格;2、60- 69分:及格;3、70- 79分:中;4、80- 89分:良;5、90-100分:优5、90-100分:优秀说明.本表应在每次实施前一周由负责教师填

6、写二份,院系审批后交院系办备案,一份由负责教师留用。.若填写内容较多可另纸附后。3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。教研室主任: 指导教师: 年 月 日 目 录1 设计要求和内容11.1 设计背景11.2 开发环境11.3 系统内容及要求11.3.1系统目标设计11.3.2 系统功能要求12.2 需求分析221 需求分析22.1.1 系统管理员对功能的需求22.1.2 管理员对功能的需求22.1.3 员工对功能的需求22.2 系统功能描述32.2.1 登陆32.2.2 管理员信箱管理32.2.3 客户信息管理32.2.4 员工信息管理32.2.5 管理员账号管理32

7、.2.6商品信息管理43 数据库分析和设计43.1 e-r实体图43.1.1 管理员实体图43.1.2 员工实体图43.1.3 客户实体图53.1.4 商品实体图53.1.5 购买信息实体图53.1.6 折扣实体图63.2 数据表的建立63.2.1员工信息表63.2.2 客户信息表63.2.3 商品信息表73.2.4 购买信息表73.2.5 折扣信息表84 功能模块的具体设计与实现94.1 客户信息管理:94.2 员工信息管理104.3 管理员账号管理114.4 商品信息管理125 软件测试1351 系统测试1352 测试用例136 致谢167 参考文献17491 设计要求和内容1.1 设计背

8、景重庆科技学院校园超市为了更好的管理学校超市的客户(学生、或教师),实现客户管理的系统化、规范化和自动化,同时为了尽量减少手工操作,使商店管理更加现代化,决定开发一套校园超市客户管理系统。1.2 开发环境本商店客户管理系统的开发与运行环境如下:开发环境:visual studio 2005辅助工具:powerdesigner trial 11数据库管理系统:sql server 2000运行环境:windows 2000/xp/20031.3 系统内容及要求1.3.1系统目标设计1)实现商店客户管理的系统化、规范化和自动化;2)尽量减少手工操作,使商店管理更加现代化。1.3.2 系统功能要求1

9、、客户基本信息录入(姓名,学号或工号,性别,班级或是部门,客户号) 2、商品信息录入、修改。等。 3、客户购买商品信息登记(要求能记录住每一个客户何时、购买了何产品,价格是多少) 4、客户级别管理(当客户在商店累记消费达到一定数量时,可以升为一级会员、二级会员、三级会员、等等,以后不同级别会员购买商品时,客户可以享有不同的折扣或是优惠) 5、查询管理(注册客户信息查询、客户购买产品记录查询,产品数量查询等)2.2 需求分析商店客户管理系统是根据商店日常办公的需要来设计开发的案例,目标是提高商店客户管理的工作效率,实现商店客户管理的系统化、规范化和自动化,具有对客户信息、客户会员等级系统、管理员

10、信息、员工信息、客户购买商品信息、客户留言信息进行管理和维护的功能。系统主要包括系统管理员对功能的需求、管理员对功能的需求和员工对功能的需求。21 需求分析2.1.1 系统管理员对功能的需求 增加管理员的账号密码。2.1.2 管理员对功能的需求 客户基本信息管理:可添加、修改和删除客户的信息; 客户购买商品信息管理:可添加、修改商品信息; 客户级别管理:当客户在商店累记消费达到一定数量时,可以升为一级会员、二级会员、三级会员,以后不同级别会员购买商品时,客户可以享有不同的折扣或是优惠; 查询管理:客户信息查询、客户购买记录查询、商品信息及数量查询、员工基本信息查询; 密码修改:修改本人的密码2

11、.1.3 员工对功能的需求 客户基本信息管理:可添加、修改和删除客户的信息; 密码修改:修改本人的密码; 收银管理:可以对客户购买商品进行管理。2.2 系统功能描述系统的功能包括:登陆、管理员信箱管理、客户信息管理、员工信息管理、管理员账号管理、商品信息管理、收银管理、历史记录管理、客户等级管理。2.2.1 登陆由于本系统涉及不同的用户,因此需要对不同用户分配不同的登陆首页,并记录下是何种类型的用户登陆。2.2.2 管理员信箱管理 客户可以在点击登陆界面下的管理员信箱按钮进入管理员信箱,并根据要求给管理员留言;管理员登陆后,可以在查看信箱选项下查看所有的留言。2.2.3 客户信息管理管理员和员

12、工都拥有对客户信息进行操作的功能,分别登陆各自首页后,可以对客户信息进行查看、增加、删除和修改。2.2.4 员工信息管理管理员在登陆进首页后,可以对客户信息进行查看、修改、密码初始化等功能,而员工在登陆之后可以对自己的密码进行修改。2.2.5 管理员账号管理管理员在登陆之后可以对自己的密码进行修改;系统管理员则拥有增加管理员的功能。2.2.6商品信息管理管理员在登陆之后,可以对商店的商品信息进行查看以及修改。3 数据库分析和设计3.1 e-r实体图3.1.1 管理员实体图管理员实体具有账号和密码两个属性,e-r图如图3.1所示:管理员账号密码图3.1 管理员实体图3.1.2 员工实体图员工实体

13、具有员工号、员工姓名、性别、联系方式和密码五个属性,e-r图如图3.2所示:性别管理员员工号员工姓名联系方式密码图3.2 员工实体图3.1.3 客户实体图客户具有客户号、客户姓名、学号(或工号)、性别、部门(或班级)、客户等级、联系方式七个属性,e-r图如图3.3所示:管理员客户号客户姓名联系方式部门(或班级)性别客户等级学号(或工号)图3.3 客户实体图3.1.4 商品实体图商品具有商品号、商品名、价格、供应商、进价、剩余数量六个属性,e-r图如图3.4所示:价格管理员商品号商品名供应商进价剩余数量图3.4 商品实体图3.1.5 购买信息实体图购买信息具有流水号、客户号、商品号、经办人、购买

14、日期、购买数量、购买价格七个属性,e-r图如图3.5所示:商品号管理员流水号客户号经办人购买日期价格购买数量图3.5 购买信息实体图3.1.6 折扣实体图折扣具有客户等级、等级折扣、所需购买价格三个属性,e-r图如图3.6所示管理员客户等级购买所需价格等级折扣图3.6 折扣实体图3.2 数据表的建立3.2.1员工信息表员工信息表用来存放商店客户管理系统中员工登陆的账号、密码以及一些基本信息,表中的各个字段的数据类型、大小如表3.1所示:表3.1员工信息表namecodedata typelength备注员工号snova1515姓名snameva3030性别ssexa22联系方式stelva15

15、15密码spasswordva15153.2.2 客户信息表客户信息表用来存放注册客户的基本信息,表中的各个字段的数据类型、大小如表3.2所示:表3.2 客户信息表namecodedata typelength备注客户号cnova1515姓名csnameva3030学号或工号csnova1515性别cssexa22班级或部门csclassva3030会员等级csleveli联系方式stelva15153.2.3 商品信息表商品信息表用来存放商店商品的基本信息,表中的各个字段的数据类型、大小如表3.3所示:表3.3品信息表namecodedata typelength备注商品代号gnova151

16、5商品名称gnameva3030商品单价gpricemn进价gjpricemn商品供应商名称ggongyingva3030剩余数量gamounti3.2.4 购买信息表购买信息表用来存放客户购买的基本信息,表中的各个字段的数据类型、大小如表3.4所示:表3.4 购买信息表namecodedata typelength备注流水号bnova1515商品代号gnova1515客户号cnova1515员工号snova1515购买数量gbuyamounti购买价格gbuypricemn购买时间btimedt3.2.5 折扣信息表折扣信息表用来存放折扣的基本信息,表中的各个字段的数据类型、大小如表3.6所

17、示:图3.6 折扣信息表namecodedata typelength备注会员等级csleveli折扣zhekouf所需消费xiaofeimn4 功能模块的具体设计与实现4.1 客户信息管理:客户信息管理的具体功能如下:员工和管理员都可对客户进行操作,包括增加、删除和修改功能,具体实现代码如下:1)查看客户信息主要代码(学号查询):class1 ss = new class1(); string strsql = select cno as 客户号,csname as 姓名,csno as 学号或工号,cssex as 性别,csclass as 班级或部门,cslevel as 会员等级,c

18、stel as 联系方式from customers where csno = 0; strsql = string.format(strsql, textbox1.text.trim(); dataset ds = ss.getdata(strlianjie, strsql); datagridview1.datasource = ds; datagridview1.datamember = ds.tables0.tostring(); if (ds.tables0.rows.count = 1) for (int i = 0; i 0) messagebox.show(已存在此管理员);

19、textbox1.text = ; return; string strsql1 = insert into admin values(0,123456); strsql1 = string.format(strsql1, textbox1.text.trim(); ss.updatedata(strlianjie, strsql1); messagebox.show(增加成功);2)初始化员工信息主要代码class1 ss = new class1(); string strsql = select * from admin where ano = 0; strsql = string.fo

20、rmat(strsql, textbox1.text.trim(); dataset ds = ss.getdata(strlianjie, strsql); if (ds.tables0.rows.count = 0) messagebox.show(该管理员不存在); textbox1.text = ; return; string strsql1 = update admin set apassword = 123456 where ano = 0; strsql1 = string.format(strsql1, textbox1.text.trim(); ss.updatedata(

21、strlianjie, strsql1); messagebox.show(初始化成功);4.4 商品信息管理商品信息管理的具体功能如下:管理员可以对商品的基本信息进行增加和修改,具体实现代码如下:1)查看商品信息主要代码(商品号查询):class1 ss = new class1(); string strsql = select gno as 商品代号,gname as 商品名,gprice as 价格,gjprice as 进价,ggongying as 供应商,gamount as 剩余数量from goods where gno = 0; strsql = string.format

22、(strsql, textbox1.text.trim(); dataset ds = ss.getdata(strlianjie, strsql); datagridview1.datasource = ds; datagridview1.datamember = ds.tables0.tostring(); if (ds.tables0.rows.count = 1) for (int i = 0; i ds.tables0.rows.count; i+) combobox2.items.add(ds.tables0.rowsi商品代号.tostring(); 2)商品信息修改主要代码:c

23、lass1 ss = new class1(); string strsql = update goods set gprice= 0,gjprice = 1,ggongying = 2,gamount = 3where gno = 4; strsql = string.format(strsql,textbox5.text.trim(),textbox6.text.trim(),textbox4.text.trim(),textbox7.text.trim(),textbox2.text.trim(); ss.updatedata(strlianjie, strsql); messagebo

24、x.show(修改成功);5 软件测试51 系统测试为了总结系统中遇到的问题,描述系统是否符合需求,特进行本次需求分析。由于条件限制,测试人员即为开发人员。软件测试主要由单元测试、综合测试和确认测试三部分组成。综合测试:主要测试软件结构问题,因测试建立在各功能模块的接口上,使用黑盒测试法,以便对主要的功能路径进行测试,验收测试根据需求分析时确立的标准检验软件是否满足功能要求、行为和性能方面的要求,这步完全采用黑盒法,整个系统确认后,将与系统其他所有部分集成后进行系统测试检验系统的协调性及功能和性能是否达到要求。单元测试:本次测试所采用的是白盒测试法,检查模块控制结构的某些特殊路径,期望覆盖尽可

25、能多的出错点;经过单元侧试后的模块,组装为软件包,对软件包进行综合测试。确认测试:根据需求分析时确定的验收标准检验软件是否满足功能、行为和性能方面的要求,这一步完全采用黑盒法。52 测试用例图5.1 客户信息管理测试图5.2 增加客户测试图5.3 商品信息管理测试图5.4 增加商品测试图5.5 增加员工测试图5.6 员工信息管理测试6 致谢在一周的课程设计里,感谢裴老师的悉心指导,感谢各位帮助过我的同学们。7 参考文献1、mickey williams visual c#.net技术内幕(第二版)清华大学出版社2007.32、王辉、张大治visual c#程序设计实用教程(第一版)清华大学出版

26、社2007.3 3、刘烨、吴中元c#编程及应用程序开发教程(第一版) 清华大学出版社2006.5登录窗体代码:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.linq;using system.text;using system.windows.forms;using thesqllibrary;namespace supermarket public partial class form1

27、: form private string _username; private string _uid; public string username get return _username; public string uid get return _uid; public form1() initializecomponent(); private void ok_click(object sender, eventargs e) if (check() dialogresult = dialogresult.ok; else messagebox.show(输入有误,请重新输入!);

28、 textname.text = ; textnum.text = ; textpwd.text = ; textname.focus(); bool check() string str = select * from employeetable where ename=0 and euid=1 and epwd=2; str = string.format(str, textname.text, textnum.text, textpwd.text); dataset ds = myku.getdataset(str); if (ds.tables0.rows.count = 1) _us

29、ername = this.textname.text; _uid = ds.tables0.rows00.tostring(); return true; return false; private void cancel_click(object sender, eventargs e) dialogresult = dialogresult.cancel; this.close(); private void label5_click(object sender, eventargs e) form9 frm9 = new form9(); frm9.showdialog(); 主窗体代

30、码:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.data.sqlclient;using system.drawing;using system.linq;using system.text;using crystaldecisions.crystalreports.engine;using system.windows.forms;using thesqllibrary;using system.diagnostics;name

31、space supermarket public partial class form2 : form private sqlconnection con = new sqlconnection(data source=(local);initial catalog=thesupermarket;integrated security = true); private sqlcommand cmd = new sqlcommand(); private string _username; private string _uid; public string username get retur

32、n _username; set _username = value; public string uid set _uid = value; get return _uid; public form2() initializecomponent(); private void form2_shown(object sender, eventargs e) this.text = _username + 工号: + _uid; private void hy_click(object sender, eventargs e) form5 frm5 = new form5(); frm5.sho

33、wdialog(); private void kh_click(object sender, eventargs e) form3 frm3 = new form3(); frm3.showdialog(); private void gpxx_click(object sender, eventargs e) form4 frm4 = new form4(); frm4.showdialog(); private void datagridview1_cellcontentclick(object sender, datagridviewcelleventargs e) private v

34、oid groupbox3_enter(object sender, eventargs e) private void ok1_click(object sender, eventargs e) string strsql = select * from buytable; dataset ds; ds = myku.getdataset(strsql); datagridview1.datasource = ds; datagridview1.datamember = ds.tables0.tablename; private void ok2_click(object sender, e

35、ventargs e) string strsql = select * from buytable where cnum = 0; strsql = string .format (strsql ,textnum1 .text ); dataset ds; ds = myku.getdataset(strsql); datagridview1.datasource = ds; datagridview1.datamember = ds.tables0.tablename; private void sc_click(object sender, eventargs e) if (check() = false) st

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论