商场购物管理系统
PINGDINGSHAN UNIVERSITY
RFID 原理与应用
课程设计
题 目: 商场购物管理系统的实现
院(系): 信息工程学院
专业年级: 物联网工程专业 2014
姓 名: ghhkkjklk
学 号: uhhkjjjk
指导教师: ghkkjjkj
2016年6月25日
目 录
1 绪论 ............................................................................ 1
1.1 课题的背景及意义 .............................................. 1
1.1.1 系统功能设计 ............................................ 1
1.1.2 系统设计 ................................................... 2
1.2 论文主要工作和结构安排 .................................... 2
2 系统功能 ..................................................................... 4
2.1 系统功能设计 ..................................................... 4
3 相关技术及工具介绍 . ................................................... 8
3.1 系统采用的开发工具 .......................................... 8
3.2 系统采用的技术 . ................................................. 8
4 设计总结 ................................................................... 10
4.1 总结 ................................................................. 10
附 录 ............................................................................ 11
1 绪论
该部分主要介绍当前商场购物管理系统的背景及意义。基于数据库的商场购物管理系统能够使商场商品信息透明化,同时提高商场员工的工作效率。
1.1 课题的背景及意义
不管何时,人们总是喜欢逛商场超市,为了让商场的工作人员能够更加便捷的工作,我们设计了这个商场购物管理系统,能够轻松地查看商品的信息以及完成顾客所买商品的结算功能。
商场购物管理系统是一个功能强大,且具有很强的时效性、可靠性,可方便处理业务。本系统应达到以下目标:
(1)系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。
(2)能够准确、详细查询当前可供查询商品的信息。
(3)能够提供购买商品的功能。
(4)能够添加删除管理员。
1.1.1 系统功能设计
(1)系统选择主要是可选购买登录系统或管理员登录系统。
(2)用户登录是登录进入管理员身份。
(3)商品管理是对超市的所有商品信息进行统计,包括数量单价等。
(4)商品详情是查看统计顾客所要购买的商品的信息。
(5)付款界面是顾客付钱是所支付的钱。
图1. 总体模块设计图
1.1.2 系统设计
商场购物管理系统将所需功能整合在一起统一处理,方便了管理者的多种处理,节约时间、精力。本系统采用C#编程语言,该语言是面向对象的编程语言,模块化处理,扩展性强,便于数据管理,同时也具有较高的安全性,易用性。
本系统采用.net framework 框架结构,管理员登录后就可以对相关数据的操作,使用方便、简单,顾客可以直观的看到自己所买物品的信息并可以对不正确的信息提出申请修改。
本系统采用SQL Sever语言进行数据库的连接,同时可对数据库信息进行备份、恢复及清空数据库操作。数据库是商场购物管理系统的后台,存储着所有的信息,在商场购物管理系统中有着很重要的地位。数据库设计的好与坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率,确保数据信息的完整性和一致性。
1.2 论文主要工作和结构安排
该论文主要工作是在.NET 操作系统下,利用c#开发语言,借助数据库SQL Sever 来实现一个商场购物管理系统。其目标在于
实
现超市对库存商品的信息的清点以及对顾客购物的结算。
结构安排上,该论文主要分为绪论、系统功能、相关技术及工具介绍、总结四个部分,每一个部分具体分工如下:
1、绪论:该部分主要介绍当前文件管理系统的背景及意义,以及论文主要工作及结构安排。基于c#的商场购物管理系统能够安全方便地库存商品的整体动态信息,从而降低工作量。
2、系统功能:该部分主要介绍该系统功能设计以及系统功能分析,从而能够展示整个系统的功能的规划。
3、相关技术及工具介绍:该部分主要介绍系统所采用的技术及开发工具,涉及该系统采用的开发工具及技术,以及该系统涉及的数据库相关知识。
4. 总结:该部分主要介绍在整个管理系统实现过程中所遇到的细节性问题以及对今后的展望。
2 系统功能
该部分主要介绍该系统功能设计以及系统功能分析,从而能够展示整个系统的功能的规划。
2.1 系统功能设计
根据需求分析确定该系统划分为以下几个管理功能:
(1) 系统选择
该界面用于选择进入哪种系统:购买系统或管理员系统,点击相应的按钮则会进入对应的系统。
图2. 系统选择界面图
(2)用户登录
点击管理员登录则进入该进入界面,输入账号密码进行用户登录,并且用户名和密码的信息是建立在数据库中的,如需添加管理员,直接添加在数据库中即可。
图3. 用户登录界面图
表1. 管理员信息表
(3)商品管理
该界面用于查看添加入库商品的信息以及库存商品的信息,并对库存商品的信息进行修改和查询。
在“添加”界面中按要求填入商品的名称、单价、数量,点击添加按钮即可。
在“修改删除”界面中,点击“查询”按钮即可看到所有商品的详细信息,若输入某商品名称仅查看到该商品的信息;点击到商品信息的某一栏,更改数字,点击“修改按钮”则商品的这一信息就被修改成功。
图4. 添加商品信息界面
图5. 商品信息修改删除界面
(4)商品详情
点击“购买系统”则进入商品详情界面。在“物品名称”栏选择顾客购买的商品并填写数量,点击“购买”,商品的数量价格就会出现在下方的列表中,并在“总价”一栏显示所有价格,直到将顾客购买的所有商品都录入完毕。
图6. 购买商品情况界面
图6. 购买商品情况界面
(5)付款
点击“结账”按钮,则进入该界面。在“请你付款”一栏中填入顾客支付的钱,点击“确定”按钮,系统计算得出应找零的数值。
图7. 付款界面
3 相关技术及工具介绍
该部分主要介绍系统所采用的技术及开发工具,涉及该系统采用的开发工具及技术,以及该系统涉及的数据库相关知识。
3.1 系统采用的开发工具
该系统前台采Microsoft 公司的Visual Studio 2010 作为主要的开发工具,可与SQL Server 2008 数据库无缝连接。
Visual Studio 2010具有无可比拟的强大功能,使
用.NET Framework 3.5 加速开发。.NET Framework 中的构建基块可以很方便的用于解决常见编程任务,能够快速构造出色应用程序。C#是目前流行的一种编程应用程序,C#语言类似拥有类似java 的语法,语言简单明了。C#是在Java 流行起来后所诞生的一种新的语言。由于微软在操作系统上占有很大的优势。在以往的开发中累积了不少经验,所形成的.net 平台,所以C#在Windows 方面可以说比Java 具有更大的优势。 C#的强大是依赖于.net 的发展,而.net 的发展是看微软在.net 上的决心和投入有多少。
1、C#.NET提供了丰富的框架,使用户在无需编写代码的前提下快速进行程序开发。
2、.NET 对公共语言运行时的核心进行改进,大大提高了运行速度。
3、提高了Windows Presentation Foundation的性能。
4、实体框架是从ADO.NE T 数据访问技术基础发展而来的。
5、LINQ to SQL新增了支持SQL Server2005中新日期和文件流的功能。
6、用于SQL Server的.NET Framework数据提供程序新增了对SQL Server 2005中的文件流和稀疏列功能的支持。
3.2 系统采用的技术
该系统后台数据库采用Microsoft SQL Server 数据库,该数据
库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大、效率高。
SQL Server 2005 包括了几个在企业级数据管理中关键的增强:易管理、可用性、可伸缩性、安全性。SQL Server 2005提供了一个唯一的管理控制台,使得数据管理人员能够在组织内的任何地方监视、管理和调谐企业中所有的数据库和相关的服务。 它还提供了一个可扩展的管理架构,可以更容易的用SQL 管理对象(SMO )来编程,使得用户可以定制和扩展他们的管理环境。
4 设计总结
该部分主要介绍在整个商场购物管理系统实现过程中所遇到的细节性问题以及对今后的展望。
4.1 总结
通过几个月的上机实习,我对C#又有了崭新的认识。 C#的学习是一个系统的过程,需要长期的知识积累和储备并辅以大量的上级实际操作练习,自己也应该有所体会,在实践中成长,在实践中求知。
作为学生,我们更多的是课本的知识的理解,理论的优势是我们的特色,但是怎样将理论结合实际却是摆在我们面前的难题。有些知识虽然我们学过,但是要把它运用到系统中的过程中还出现了很多问题,比如对于控件ListView 和DataGridView 的使用,在基于多表查询的时候,使用DataGridView 这个控件就难以实现在数据库里的多张表的更新,后来我们还是选择了ListView 这个控件。从这里让我知道了,只是的学习是没有止境的,我们只有在不断的学习中了解更多,并且能够把所学的知识举一反三,这样我们才能更好的吧实训项目做得更好。
我觉得学习了这个,对我参加工作后制表、创建查询、数据分析和材料演示都有很大的作用,这样,我们能更清楚的了解信息并进行分析。当然实习中还有着更多的感触,包括学习,生活各个方面。就学习而言,专业实训它更偏重于应用,更加细致,要求也更加严格。在实际中实现自己的理想,必需不断的增加自己的能力,做事情更加专注。就生活而言,专业学习展示给我们看各个不同的 的实训结果,让我们知道了要善于学习他人的优点。
参考教程
(1)我要自学网.c#入门教程
附 录
程序源码:
(1)管理系统
na me s p a c e 商场管理系统 {
p ub lic p a r tia l cla s s Fo r m1 : Fo r m {
pu b lic Fo r m1() {
In itia li ze Co mp o n e n t() ; }
p r iva te vo id bu tto n 1_C lick (o b je c t s en d e r, E ve n t A rg s e ) //按下按钮跳转到Fo r m5 界面 {
Fo r m5 f r = ne w Fo r m5() ; f r.S ho w() ; }
p r iva te vo id bu tto n 2_Clic k (ob je c t s en d e r, E ve n tA rg s e ) //按下按钮跳转到Fo r m7 界面 {
Fo r m7 f r = ne w Fo r m7() ; f r.S ho w() ; } } }
(2)用户登录
p r iva te vo id b u tton 1_Clic k (ob je c t s e nd e r, E ven tA rg s e ) {
if (te x tBo x1.Tex t == "")
M e s s ag eB ox. Sh o w(" 请输入用户名? ") ; e ls e {
if (te x tB ox 3.Tex t == " ")
M e s sa g eBo x.S h o w(" 请输入密码? ") ; e ls e {
tr y {
s tr ing s ou r c e = Cla s s1. g e t_a dd r e s s () ; S q lC o nn e c tion c o nn = ne w Sq lCo n ne c tio n (so u r ce ) ;
co nn.O p en () ;
s tr ing s e le c t = "s e le c t [u se r ], [pa s s wo r d ] f r o m[lo g in ] wh e re [u s e r ]='" + te x tB ox 1.Tex t + " 'a n d [p as s wo r d ]='" + te x tB ox 3.Tex t + " '";
S q lC o mma n d c md = n e w Sq lCo mma n d (s e lec t, c on n ) ;
S q lD a taR e ad e r d r = c md.E x ec u teR e ad e r () ;
if (dr.H a sR o ws ) {
d r.C lo s e () ;
//str in g n ws e lec t = "s e lec t * f r o m log in whe r e lna me ='" + te x tB ox 1.Tex t + " 'a n d lpa s s wo r d='" +
te x tB ox 3.Tex t + " '";
//Sq lC o mma n d n wc md = ne w Sq lCo mma n d (n ws e le c t, con n ) ; // S q lD a taR ea d e r n wd r = n wc md. E xe c u teR ea d e r () ;
Fo r m6 md i = ne w Fo r m6() ; md i. S h o w() ; } e lse {
M e s sa g eB ox. Sh o w(" 用户名或密码错误, "") ;
}
co nn.C lo s e () ; //this.H id e () ; }
c a tch (Ex ce p tio n e x ) {
M e s s ag eB o x. S ho w(e x. M e s sa g e ) ; } } } }
p r iva t e vo id bu tto n 2_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
th is. C lo s e () ; }
(3)商品管理
na me s p a c e 商场管理系统 {
p ub lic p a r tia l cla s s Fo r m6 : Fo r m {
D a taS e t d s = ne w Da taS e t() ;
Sq lDa taA d a p te r d a = n e w Sq lD a ta Ada p te r () ; pu b lic Fo r m6() {
In itia li ze Co mp o n e n t() ; }
p r iva te vo id bu tto n 1_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
tr y {
s tr ing s ou r c e = Cla s s1. g e t_ad d re s s () ; Sq lCo nn e c tion c o nn = n e w Sq lCo n ne c tio n (so u r ce ) ;
co nn.O pe n () ;
s tr ing in s e r t = "in s e r t in to tr ad e va lu e s ('" + te x tB ox 1.Tex t + " ', '" + te x tB ox 2.Tex t + " ', ' " + te x tB o x3.Te x t + " ' ) "; Sq lCo mma n d c md = n e w S q lC o mma n d (in s e r t , co n n ) ;
c md. Ex e cu teN o nQu e r y() ; co nn.C lo s e () ;
M e s s ag eB ox. Sh o w(" 该物品已添加成功", " 提示",
Me s s a ge Bo xB u tton s.O K) ; }
c a tc h (Ex ce p tio n e x ) {
M e s s ag eB ox. Sh o w(ex. M e s s ag e ) ; } }
p r iva te vo id bu tto n 2_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
th is. C lo s e () ; }
p r iva te vo id bu tto n 3_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
tr y {
d s. Cle a r () ;
s tr ing s ou r c e = Cla s s1. g e t_ad d re s s () ; Sq lCo nn e c tion c o nn = n e w Sq lCo n ne c tio n (so u r ce ) ;
co nn.O pe n () ; s tr ing s e lec t;
if (te x tB ox 4.Tex t == " ")
s e le c t = "s e le c t * f r o m tr a d e "; e ls e
s e le c t = "se le c t * fr o m trad e whe r e na me ='" + te x tB ox 4.Tex t + " '";
da = ne w Sq lDa taA d ap te r (s e lec t, co n n ) ; da. Fill(d s , "tr a d e ") ;
da t aG r idVie w1. A u toG e n e r a teC o lu mn s = tru e ; da t aG r idVie w1.D a taM e mbe r = "tr a d e "; da t aG r idVie w1.D a taS ou r ce = d s ; }
c a tc h (Ex ce p tio n e x ) {
M e s s ag eB ox. Sh o w(ex. M e s s ag e ) ; } }
p r iva te vo id bu tto n 4_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
S q lC o mma n dB u ild e r cb = ne w Sq lCo mma n dB u ild e r (da ) ;
da.U pd a te (((Da taS e t) d a taG r idVie w1.D a ta S o u rc e ).Tab le s [0]) ; M e s s ag eB ox. Sh o w(" 已修改成功|"); }
p r iva te vo id bu tto n 6_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
tr y {
s tr in g s s = da taG r idVie w1. Ro ws [da taG r idVie w1. Cu r r e n tC e ll. Ro wIn d e x ].Ce lls [0].Value.To Str in g () ;
//this. da t aG r idVie w1. Se le c ted Ce lls [0].Va lu e. To Str in g () ;
s tr in g so u r ce = Cla s s1. g e t_a dd r e s s () ;
s tr in g inse r t = "de le te tra de whe r e na me = '" + s s + " '" ;
Sq lC on ne c tio n c on n = n e w Sq lCo n ne c tio n (so u r ce ) ;
c on n.Op e n () ;
Sq lC o mma n d cmd = new SqlCo mma n d (in s e r t, co n n ) ;
c md. Ex e cu teN o nQu e r y() ; c on n.C lo se () ;
M e s sa g eBo x.S h o w(" 你选中的物品·"+s s +" \n已经删除成功|", " 提示? ", M es s a ge Bo xB u tton s.O K) ; }
c a tch (Ex c ep tio n ex ) {
M e s sa g eBo x.S h o w(ex. M es s a ge ) ; } }
p r iva te vo id bu tto n 5_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
th is. C lo s e () ; } } }
(4)商品详情
na me s p a c e 商场管理系统 {
p ub lic p a r tia l cla s s Fo r m5 : Fo r m {
p r iva te f loa t Sp r ic e = 0; pu b lic Fo r m5() {
In itia li ze Co mp o n e n t() ; }
p r iva te vo id In itD a ta () {
s tr ing s ou r c e = C la ss 1. ge t_ad d re s s () ;
S q lC on ne c tio n myC o n = n e w Sq lCo n ne c tio n () ; myC o n. Co nn e c tion Str in g = so u rc e ; myC o n. Ope n () ;
s tr ing Sq l = "s e lec t n a me f r o m tr a d e "; Da ta S e t Ds = ne w Data S e t() ;
S q lD a ta Ada p te r Da = ne w S q lD a taA da p te r (Sq l, myC o n ) ;
Da. Fill(Ds , "tr a de ") ;
c o mb oB ox 1.Da ta S ou r c e = Ds. Ta b le s ["tr a d e "]; c o mb oB ox 1.D isp la yM e mb e r = "n a me "; myC o n. Clo s e () ;
}
p r iva te vo i d la be l1_Clic k (ob je c t sen d e r, Eve n tA rg s e ) {
}
p r iva te vo id bu tto n 1_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
s tr ing s s = co mb o Bo x 1. Ge tI te mTex t(c o mb oB o x1. Ite ms [co mb o Bo x 1. S e lec te d I nd ex ]) ;//获取当前项
if (te x tBo x 1.Tex t Le n g th == 0) {
M e s s ag eB ox. Sh o w(" 请输入购买数量? ", "") ; } e ls e {
s tr ing s ou r c e = Cla s s1. g e t_ad d re s s () ;
Sq lCo nn e c tion myCo n = n e w Sq lCo n ne c tio n (so u r ce ) ;
my Co n.O p en () ;
Sq lCo mma n d se le c tCMD = n e w Sq lCo mma n d ("s e le c t * f r o m tr ad e wh e r e na me ='" + s s + " '", myC on ) ; Sq lDa taR ea d e r cu s tD R = s e lec tCMD. Ex e cu teR e ad e r () ;
cu s tD R. Re a d () ; s tr ing s 1 = cu s tDR.Ge tStr in g (c us t DR.G e tO r d ina l("p r ic e ") ) ; s tr ing s 2 = cu s tDR.Ge tStr in g (c us t DR.G e tO r d ina l("n u m" ) ) ;
cu s tD R. C lo s e () ;
in t q = in t.P a r s e (tex tBo x 1. Te x t) ; in t sn u m = in t.P a r se (s 2) ; if (s nu m
M e s sa g eBo x.S h o w(" 对不起,库存不足,只剩余? +s2+" 件t 商品·", "") ; } e ls e {
f loa t te mp = f loa t.P a r se (s 1) ; s tr ing S = " "; S += q ;
te mp =te mp *q; S p r ic e += te mp ; s tr ing s = ""; s = s + Sp r ic e ;
tex tBo x 2. Te x t = s ; sn u m = sn u m - q; s tr ing s s s = ""; s s s += sn u m; s tr ing s s s s="" ;
s s s s+=te mp ;
{
s tr ing s e le c tTex t = "up d a te tra d e s e t nu m = '" + s s s + " ' wh e re n a me ='" + s s + " '"; S q lC o mma n d CMD = n e w Sq lCo mma n d (s e lec tTe x t, myC o n ) ;
S q lD a taA da p te r cu s = ne w Sq lD a taA d ap te r () ;
cu s.S e le c tC o mma n d = CMD ;
D a taS e t cu s tD = ne w Da taS e t() ; cu s. Fill(c u s tD ) ; } in t ite mN u mb e r = th is. lis tVie w1. I te ms. C ou n t;
s tr in g [] su b Ite m = { s s, S, s s s s };
th is. lis tVie w1. Ite ms. In s e r t(ite mN u mb e r, ne w Lis tVie wI te m(s u b Ite m) ) ;
th is. lis tVie w1. I te ms [i te mN u mb e r ].I ma g e In d ex = 0;
}
my Co n. C lo s e () ;
} }
p r iva te vo id Fo r m5_Lo a d (ob je c t se nd e r, Eve n tA rg s e ) {
In itDa t a () ; }
p r iva te vo id bu tto n 2_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
s tr ing S1 = " "; S 1 += Sp r ice ;
Fo r m2 f r = ne w Fo r m2(S 1) ; f r.S ho w() ; }
p r iva te vo id co mb o Bo x1_Se le c ted In d e xC ha n ge d (ob j ec t s en d e r, Eve n tA rg s e ) { } } }
(5)付款
na me s p a c e 商场管理系统 {
p ub lic p a r tia l cla s s Fo r m2 : Fo r m {
s tr in g mo n e y;
pu b lic Fo r m2(s tr ing s tr ) {
In itia li ze Co mp o n e n t() ; mo n e y = s tr ; } p r iva te vo id bu tto n 1_Clic k (ob je c t s en d e r, Eve n tA rg s e ) {
f lo a t q = f lo a t.P a r se (mo n e y) ; //花¨费? f lo a t w = f lo a t.P a r se (te x tB o x 1. Te x t) ; if (w >= q ) {
s tr ing s = "";
}
} }
s += w - q ;
M e s s ag eB ox. Sh o w(" 找你" + s + " 元!你慢走! " ) ; } e ls e {
M e s s ag eB ox. Sh o w(" 对不起钱不够!? ") ; }