小型超市管理系统的设计与实现毕业论文.docx
- 文档编号:14722547
- 上传时间:2023-06-26
- 格式:DOCX
- 页数:35
- 大小:2.03MB
小型超市管理系统的设计与实现毕业论文.docx
《小型超市管理系统的设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《小型超市管理系统的设计与实现毕业论文.docx(35页珍藏版)》请在冰点文库上搜索。
小型超市管理系统的设计与实现毕业论文
小型超市管理系统的设计与实现
摘要:
超市管理系统现在已是超市管理必不可少的一部分,它提供的信息对于超市的决策者和管理者来说都是至关重要的。
本文简要分析了系统开发的背景、超市管理系统的发展现状,描述了系统需要解决的主要问题和系统的整体情况,该系统由基础信息管理、采购信息管理、库存信息管理、柜存信息管理、销售管理和数据库维护等六大模块组成。
同时,对系统的需求分析和架构设计进行了详细描述,并对部分有代表性的模块的详细设计和实现进行了描述。
系统设计的目标是简化商品销售及商品管理的工作量,提高超市工作效率、降低成本,方便超市人员的管理,满足与用户及时沟通需要。
关键词:
超市管理;采购;库存;柜存;销售
前言
21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是原有意义上的竞争,而是技术的竞争、管理的竞争、人才的竞争。
技术的提升和管理的升级是超市业的竞争核心。
如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。
比如具有相同的基本业务流程:
超市是核心,通过从制造商或批发商处取得商品,通过商场流转,再销售给顾客,从中赚取商品进销差价的利润,这也是商业生存的本质。
随着超市商品数量急剧增加,有关商品的各种信息量也成倍增长。
销售人员不可能准确的记住每一种商品的价格,管理人员也很难做到每天将每种商品库存进行清点,超市时时刻刻需要对商品各种信息进行统计分析,还要做每天的报表、月报表、年报表,从而分析当月当年财务状况,与此同时,尽管商品需求量加大,种类也随之增多了,但是针对服务对象的特点,有些商品成为畅销品,有些商品成为滞销品,而且随着时间的,各种商品的销售状况也不同,比如春季学习用品类商品会增多,夏季零卖水果冷饮类会增多等等,超市管理员需要根据不同销售状况来决定商品采购计划,并且要对库存较多的商品采取一定措施,以此来做到仓库优化。
以往的手动人工的模式在超市业务管理和人员管理上造成了很多不便,随着信息化水平的提高,传统的管理方法必然被以计算机为基础的信息管理所取代。
随着管理信息化进程的进步,市场上出现了很多超市管理系统,但大型的超市管理系统,功能过于强大而造成操作繁琐降低了小超市的工作效率,而且很多超市的实际情况也不允许它像大型超市那样投入大量资金进行信息化建设。
基于这些问题,有必要建立一个超市管理信息系统,使超市商品购、销、存的处理工作规范化、系统化、程序化,避免超市商品管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的对各种商品的购、销、存进行统计和整理。
因此,开发一款小型超市管理系统就具有了现实意义。
1系统概述
1.1系统解决的主要问题
通过该系统的设计,主要解决以下问题:
第一是能够处理超市的日常业务,包括进、销、存管理,商品采购、供销商厂商的管理、销售情况统计报表、员工信息管理的情况统计等。
第二是能够模拟实现前台营业员的pos机扫描收银与手工收银同时进行,在输入商品号时随即显示商品全部信息,时时更新数据库信息。
第三是能满足超市管理对信息的需求,及时准确地收集处理与经营有关的各种信息,并能将其分类整理。
第四是提高集中管理水平,充分利用计算机系统处理大量数据的能力,将各个供销商供给的同类商品集中管理起来,使管理工作规范化,以提高其应变能力。
第五是为了提高管理工作效率,本系统要具有信息传递快捷,海量记忆能力和高速处理能力,可以大大提高业务管理中的工作效率。
第六是解决超市库存管理现阶段的问题,使库存成本降低,提高利润。
有效地控制库存成本是超市经营业绩提高的关键。
第七是满足超市人事管理的个性化需要。
第八是信息化进程接轨,方便各级管理者查看到超市的整体情况,超市员工可以通过该系统查询和提交相关信息,提高超市管理的综合性,服务性。
第九是整体系统按结构化设计,每个模块可以独立运行使用,某些模块可以选择已商品化的部分软件产品,在硬件配置时,配置要合理,要尽量降低系统成本。
1.2开发环境介绍
本系统数据库使用Access,程序采用VisualStudio.NET开发环境。
它继承了以往VisualStudio的风格,成为.NET平台下最为优秀的高度集成的可视化开发环境。
2系统分析
2.1可行性分析
2.1.1技术可行性分析
随着计算机使用的频繁,软件编程技术的不断增加,功能的不断加强,信息管理技术的不断成熟,信息安全的不断完善以及开发工具的日益进步,采用计算机系统来管理超市信息,其要求数据的采集、更新能够完整、准确和及时。
所以开发通用的超市管理系统已经完全可以做到。
2.1.2市场可行性分析
超市形态具有种种优点,但目前仍存在零售业共有的落后的一面,比如:
⑴不能有效的管理每种商品;
⑵收款结算速度慢;
⑶容易出现营业差错;
⑷不宜进行商品调价;
⑸缺乏时时分析功能等。
随着经济高速发展,超市的经营管理也愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售业的发展,新的管理技术随之产生。
2.2系统需求分析
根据对用户需求的调查,为满足用户的基本需要本系统共需设计基础信息管理、采购信息管理、库存信息管理、柜存信息管理、销售管理和数据库维护等六大模块,各模块联系密切,在新商品进入超市前是先把商品收录在商品目录表中,然后管理员从商品目录表中选择本超市需要的商品,以便下订单订货,在商品根据订单要求到货后,管理员进行入库和上柜,在入库时只有管理员下过订单的货物方可入库,而在上柜中分为新货上柜和原有货物上柜两种,待商品上柜完成后进行销售,在顾客对购买的商品不满意时也可进行退货,除此定期管理员可以对后台数据库进行备份和还原。
2.2.1需求获取模式
l.用户需求从提出到实现,是一个从无到有、从抽象到具体的过程。
在这个过程中,系统完成何种业务功能,系统包含哪些用户,分别为其提供哪些功能,在很大程度取决于用户能否系统的、完整的提出需求,这是需求获取阶段的一个重要问题。
2.需求获取的过程需要深入用户业务流程,体会用户业务实现的过程,整个过程需要用户的积极配合和参与,用户能否积极进行配合和参与,也是需求获取阶段的重要问题。
3.克服需求的二义性。
需求二义性问题在以往的需求获取中经常发生,二义性可能会导致如下结果:
用户认为是A,需求获取人员认为是B,设计人员设计完成后变成了C。
所以需求书写的二义性问题也是在需求获取阶段需要重点关注的问题之一。
4.需求是驱动整个软件开发的基础,稳定的需求对于系统开发非常重要,如果需求经常变化,将对软件开发的进度和质量控制产生破坏性的影响,如何应对不断变化的需求、控制用户需求变更是需求阶段必须面对的问题。
2.2.2性能要求
系统的架构设计应具满足结构简洁层次清晰,重用性好,易扩展、保证数据安全的目标。
且应具有高可伸缩性,满足企业未来发展。
要求可用性好、安全性高、系统结构简洁,层次清晰、易操作性、重用性好、易扩展等特点。
2.2.3数据要求
根据实体及其属性,经过分析可以得出如下实体联系:
1、商店中的所有用户(员工)可以销售多种商品,每种商品可由不同用户(员工)销售;
2、每个供货商可以供应多种不同商品,每种商品可由多个供应商供应;
3、一个库存可以存放多批订单商品,每批订单商品都在一个库存;
4、一个柜存可以存放多批订单商品,每批订单商品都在一个柜存。
本次设计的超市管理系统的总体目标是以科学的管理方法为基础,与商品流通信息化接轨,结合商品销售的自身特点,建立一套具有商业企业经营特色的、覆盖超市企业主要业务功能、人机协调的管理系统,实现对商品流转管理、库存管理、柜存管理、人员管理等实时查询、修改、删除、分析的综合性管理信息系统,及时反映企业的经济活动状态和所需的各种商情信息,为超市管理者提供良好的决策支持环境,成为超市管理人员的有力助手,提高超市的经济效益。
3系统概要设计
3.1系统整体设计
3.1.1系统结构设计
本系统是能完成具有商品销售跟管理两方面功能的超市管理系统。
按照功能模块划分该系统包括三大模块:
1.登录验证模块
完成登录、密码找回。
2.后台管理员模块
完成基础信息管理(商品目录信息、员工信息、供应商信息)、采购信息管理(订货单查询、订货单添加、订货单修改、订货单删除)、库存管理(库存查询、库存添加、库存修改、库存删除)、柜存管理(柜存查询、柜存添加、柜存修改、柜存删除)、销售管理(销售查询、退货查询、每日结算)、数据库维护(数据库备份、数据库还原、密码修改)帮助等功能。
3.前台售货员模块
完成销售管理(售货、退货、每日结算)、密码修改、帮助等功能。
3.1.2系统模块结构
该系统的整体结构图,如图3-1所示:
图3-1整体结构图
基础信息管理结构图,如图3-2所示:
图3-2基础信息管理结构图
本模块所包含的三个子模块分别具有查询、添加、修改、删除功能。
采购信息管理结构图,如图3-3所示:
图3-3采购信息管理结构图
库存管理结构图,如图3-4所示:
图3-4库存管理结构图
柜存管理结构图,如图3-5所示:
图3-5柜存管理结构图
管理员模块销售管理结构图,如图3-6所示:
图3-6销售管理(管理员)结构图
售货员模块销售管理结构图,如图3-7所示:
图3-7销售管理(售货员)结构图
数据库维护结构图,如图3-8所示:
图3-8数据库维护结构图
3.2数据库概念设计
概念设计是指在数据分析的基础上自底向上的建立整个系统的数据库概念结构,从用户的角度进行视图设计,然后将视图集成,最后对集成的结构分析优化得到最终结果。
E-R模型是概念设计的有利工具。
下面是超市管理信息系统E-R图,如图3-9所示:
图3-9系统E-R图
3.3数据库逻辑设计
本系统选用的是关系型数据库管理系统,因而在逻辑设计中的工作是将E-R模型所表示的概念结构转换为关系模型,并将关系模式进行规范化,最终可得到系统所需的关系表。
由系统E-R图转换成系统关系模型,因为牵扯表过多,以下只列出一部分:
1.用户表,如表3-1所示:
表3-1用户表
字段名
数据类型
长度
备注
编号
文本
6
主键
姓名
文本
10
登录名
文本
20
登录密码
文本
20
电话
文本
15
密码问题
文本
20
密码答案
文本
20
用户类别
文本
10
2.供应商表,如表3-2所示:
表3-2供应商表
字段名
数据类型
长度
备注
供应商编号
文本
6
主键
供应商名
文本
20
地址
文本
30
联系人
文本
10
电话
文本
15
帐号
文本
20
3.商品表,如表3-3所示:
表3-3商品表
字段名
数据类型
长度
备注
商品号
文本
6
主键
商品名
文本
20
类别号
文本
6
参考价格
数字
双精度型
4.类别表,如表3-4所示:
表3-4类别表
字段名
数据类型
长度
备注
类别号
文本
6
主键
类别名
文本
20
5.订货单表,如表3-5所示:
表3-5订货单表
字段名
数据类型
长度
备注
订单号
文本
6
主键
商品号
文本
6
数量
数字
长整型
单位
文本
6
进价
数字
双精度型
生产日期
日期
短日期
保质期
文本
10
接受管理员
编号
文本
6
供应商号
文本
6
是否到货
文本
4
是否付款
文本
4
是否入库
文本
4
6.库存表,如表3-6所示:
表3-6库存表
字段名
数据类型
长度
备注
编号
自动编号
长整型
主键
订单号
文本
6
库存数量
数字
长整型
3.4数据库结构设计
本系统数据库具有商品表、订货单表、供应商表、类别表、用户表、库存表、柜存表、销售表、退货表、日清结算表,具体关系如图3-7所示:
图3-7数据结构图
4系统详细设计
本系统的所有模块都保持人性化的界面设计,采用统一的布局方式,简易化的操作界面,简单的操作流程,完善的功能设置,使用户能轻松熟练的使用,同时为了保证系统的整体数据安全性,设置了判断程序,在打开一个界面时必须单击该界面的退出按钮,方能操作其余界面,否则不允许用户对其他界面进行操作。
4.1登录验证模块
1.登陆界面,本界面是系统第一步的安全性控制,在验证登录者的登录名、密码、用户类别完全正确的情况下,方能进入相应的操作界面。
如图4-1所示:
图4-1登录界面
具体的数据流图,如图4-2所示:
图4-2登录流程图
2.密码找回界面,此界面进入后需要先验证该登录用户是否存在,若存在显示相应的密码问题,在输入这确的答案后显示本用户密码,如不存在则提示输入错误。
如图4-3所示:
图4-3密码找回界面
4.2后台管理员模块
1.商品目录信息界面,本届面是查询、添加、修改、删除一体化的界面,其中商品号为主键不允许重复与修改,同时设有快速查询功能。
如图4-4所示:
图4-4商品目录信息界面
2.员工信息界面,本届面是查询、添加、修改、删除一体化的界面,其中编号为主键不允许重复与修改。
如图4-5所示:
图4-5员工信息界面
3.订货单查询界面如图4-6所示:
图4-6订货单查询界面
4.库存查询界面,本界面设有快速查询功能,并会在所显示的商品库存数量不足20时,自动弹出提示框,询问用户是否进入订货单添加界面补订该商品。
如图4-7所示:
图4-7库存查询界面
具体代码如下:
ImportsSystem.Data
ImportsSystem.Data.OleDb
PublicClass库存查询
DimconnAsNewOleDbConnection
DimcmdAsNewOleDbCommand
DimdvAsNewDataView
DimdaapAsNewOleDbDataAdapter
DimdsAsNewDataSet
DimiAsInteger
Subbind()
Iftxt库存数量.Text<20Then
IfMsgBox("该货物库存数量不足20件,是否补充商品?
",MsgBoxStyle.OkCancel)=MsgBoxResult.OkThen
o=txt商品号.Text
Me.Close()
添加订货单.MdiParent=管理员界面
添加订货单.Show()
管理员界面.ToolStripLabel1.Text="添加订货单"
添加订货单.txt商品号.Text=o
添加订货单.txt订单号.Focus()
EndIf
EndIf
EndSub
PrivateSub库存查询_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
conn.ConnectionString="provider=microsoft.jet.oledb.4.0;datasource=超市管理系统.mdb"
cmd.Connection=conn
cmd.CommandText="SELECT订货单表.订单号,订货单表.商品号,商品表.商品名,商品表.类别号,类别表.类别名,库存表.库存数量,订货单表.单位,订货单表.进价,供应商表.供应商名FROM(类别表INNERJOIN商品表ON类别表.类别号=商品表.类别号)INNERJOIN((供应商表INNERJOIN订货单表ON供应商表.供应商号=订货单表.供应商号)INNERJOIN库存表ON订货单表.订单号=库存表.订单号)ON商品表.商品号=订货单表.商品号ORDERBY订货单表.订单号;"
conn.Open()
daap.SelectCommand=cmd
daap.Fill(ds,"库存表")
dg.DataSource=ds.Tables("库存表")
dv=ds.Tables("库存表").DefaultView
Dimdtkey()AsDataColumn={ds.Tables(0).Columns("订单号")}
ds.Tables(0).PrimaryKey=dtkey
dg.DataSource=ds.Tables(0)
Ifdv.Count=0Then
MsgBox("暂无可操作数据!
")
Return
EndIf
i=0
txt订单号.Text=ds.Tables(0).Rows(i).Item("订单号")
txt商品号.Text=ds.Tables(0).Rows(i).Item("商品号")
txt商品名.Text=ds.Tables(0).Rows(i).Item("商品名")
txt类别号.Text=ds.Tables(0).Rows(i).Item("类别号")
txt类别名.Text=ds.Tables(0).Rows(i).Item("类别名")
txt库存数量.Text=ds.Tables(0).Rows(i).Item("库存数量")
txt单位.Text=ds.Tables(0).Rows(i).Item("单位")
txt进价.Text=ds.Tables(0).Rows(i).Item("进价")
txt供应商名.Text=ds.Tables(0).Rows(i).Item("供应商名")
conn.Close()
Callbind()
EndSub
PrivateSubButton5_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton5.Click
i=0
txt订单号.Text=ds.Tables(0).Rows(i).Item("订单号")
txt商品号.Text=ds.Tables(0).Rows(i).Item("商品号")
txt商品名.Text=ds.Tables(0).Rows(i).Item("商品名")
txt类别号.Text=ds.Tables(0).Rows(i).Item("类别号")
txt类别名.Text=ds.Tables(0).Rows(i).Item("类别名")
txt库存数量.Text=ds.Tables(0).Rows(i).Item("库存数量")
txt单位.Text=ds.Tables(0).Rows(i).Item("单位").ToString
txt进价.Text=ds.Tables(0).Rows(i).Item("进价")
txt供应商名.Text=ds.Tables(0).Rows(i).Item("供应商名")
Callbind()
EndSub
PrivateSubButton6_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton6.Click
Ifi=0Then
MsgBox("已经到达第一条记录")
Else
i=i-1
txt订单号.Text=ds.Tables(0).Rows(i).Item("订单号")
txt商品号.Text=ds.Tables(0).Rows(i).Item("商品号")
txt商品名.Text=ds.Tables(0).Rows(i).Item("商品名")
txt类别号.Text=ds.Tables(0).Rows(i).Item("类别号")
txt类别名.Text=ds.Tables(0).Rows(i).Item("类别名")
txt库存数量.Text=ds.Tables(0).Rows(i).Item("库存数量")
txt单位.Text=ds.Tables(0).Rows(i).Item("单位").ToString
txt进价.Text=ds.Tables(0).Rows(i).Item("进价")
txt供应商名.Text=ds.Tables(0).Rows(i).Item("供应商名")
Callbind()
EndIf
EndSub
PrivateSubButton7_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton7.Click
Ifi=ds.Tables(0).Rows.Count-1Then
MsgBox("已经到达最后一条记录")
Else
i=i+1
txt订单号.Text=ds.Tables(0).Rows(i).Item("订单号")
txt商品号.Text=ds.Tables(0).Rows(i).Item("商品号")
txt商品名.Text=ds.Tables(0).Rows(i).Item("商品名")
txt类别号.Text=ds.Tables(0).Rows(i).Item("类别号")
txt类别名.Text=ds.Tables(0).Rows(i).Item("类别名")
txt库存数量.Text=ds.Tables(0).Rows(i).Item("库存数量")
txt单位.Text=ds.Tables(0).Rows(i).Item("单位").ToString
txt进价.Text=ds.Tables(0).Rows(i).Item("进价")
txt供应商名.Text=ds.Tables(0).Rows(i).Item("供应商名")
Callbind()
EndIf
EndSub
PrivateSubButton8_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton8.Click
i=ds.Tables(0).Rows.Count-1
txt订单号.Text=ds.Tables(0).Rows(i).Item("订单号")
txt商品号.Text=ds.Tables(0).Rows(i).Item("商品号")
txt商品名.Text=ds.Tables(0).Rows(i).Item("商品名")
txt类别号.Text=ds.Table
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 小型 超市 管理 系统 设计 实现 毕业论文