毕业设计(论文)- 超市进销存系统的设计和实现.doc

上传人:西安人 文档编号:3280862 上传时间:2019-08-07 格式:DOC 页数:41 大小:1.54MB
返回 下载 相关 举报
毕业设计(论文)- 超市进销存系统的设计和实现.doc_第1页
第1页 / 共41页
毕业设计(论文)- 超市进销存系统的设计和实现.doc_第2页
第2页 / 共41页
毕业设计(论文)- 超市进销存系统的设计和实现.doc_第3页
第3页 / 共41页
毕业设计(论文)- 超市进销存系统的设计和实现.doc_第4页
第4页 / 共41页
毕业设计(论文)- 超市进销存系统的设计和实现.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《毕业设计(论文)- 超市进销存系统的设计和实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)- 超市进销存系统的设计和实现.doc(41页珍藏版)》请在三一文库上搜索。

1、2008届毕业生毕业论文题 目: 超市进销存系统的设计和实现 院系名称: 信息科学与工程学院 专业班级: 计算机科学与技术04级7班 学生姓名: *8 学 号: 2004211014 指导教师: * 教师职称: 讲师 2008 年 6 月 12 日35摘 要当前, 随着经济的全球化以及中国经济改革的逐渐深化,使得国内中小企业都面临着巨大的挑战,零售业也面临着越来越激烈的竞争。传统的超市进销存业务在管理时工作量大、费时费力、效率低下,为了方便超市的管理,引入了超市进销存系统。通过分析超市运营的基本业务和管理的总体需求,设计了一个超市进销存系统。首先简要分析了超市进销存系统的现状和发展,并介绍了该

2、系统研究的目的和意义,详细论述了.NET三层架构模式,在分析了这种模式的基础上完成了超市进销存系统的结构设计和功能设计。同时出于应用程序的开发部署和业务逻辑的架构的考虑,采用三层设计模式,即:数据层、业务逻辑层、用户层。其次,在超市进销存系统的功能模块及数据库方面对该系统进行了具体设计,并成功地解决了超市的采购、销售和库存管理问题,实现了超市进销存管理系统的基本功能。最后,对该超市进销存系统进行展望和总结。关键词: 超市进销存 三层模式 数据库 Title Design and Implementation of Supermarket Invoicing System AbstractAt

3、present, with the economic globalization and Chinas economic reforms gradually deepen, making domestic SMEs are faced with enormous challenges, and the retail industry is also faced with increasingly fierce competition .In the management of the traditional supermarket invoicing business ,it is workl

4、oad, time- consuming effort, inefficiency, and for conveniently manage of the supermarket, I introduce a supermarket invoicing system. Through analysis the supermarket operators basic operations and the overall demand for its management, I design a supermarket invoicing system. First, briefly analys

5、is the status and the development of supermarket invoicing system, and introduce the purpose and significance of the system, and discuss the .NET three layer model in detail. On the basis of analysis this model I complete the structural design and functional design of the supermarket invoicing. At t

6、he same time for the development of application and consideration of business logic framework, I adopt the three-tier design, namely: the data layer, business logic layer, user layer. Secondly, I do specific design on function modules and database of the supermarket invoicing system, and I successfu

7、lly resolve the management issue of supermarket purchases, sales and inventory, and I realize the basic functions of the supermarket invoicing system. Finally, outlook and summarize the supermarket invoicing system.Keywords Supermarket Invoicing Three Layer Mode Database 目 次1 引言11.1 超市进销存系统的现状和发展11.

8、2 .NET的出现11.3 论文的主要工作和研究思路22 超市进销存系统的需求分析42.1 超市进销存系统功能需求42.2 超市进销存系统功能模块分析42.3 超市进销存的系统流程分析52.4 超市进销存系统的软硬件需求62.5 超市进销存系统的数据需求63 超市进销存系统的概要设计83.1 超市进销存系统的三层模式描述83.1.1 超市进销存系统数据访问层的描述83.1.2 超市进销存系统业务逻辑层的描述93.1.3 超市进销存系统界面表现层的描述93.2 基础信息模块设计93.3 进货管理模块设计103.4 销售管理模块设计103.5 退货管理模块设计113.6 仓库管理模块设计123.7

9、 系统管理模块设计124 超市进销存系统数据库设计144.1 数据库概念设计144.2 数据库逻辑设计165超市进销存系统的详细设计与实现225.1 超市进销存系统数据访问层225.2 超市进销存系统业务逻辑层235.3 超市进销存系统界面表现层245.3.1 进货管理模块的实现245.3.2 销售管理模块的实现255.3.3 退货管理模块的实现275.3.4 仓库管理模块的实现275.3.5 基础信息模块的实现285.3.6 系统管理模块的实现29结 论32致 谢33参 考 文 献341 引言1.1 超市进销存系统的现状和发展在实际的超市经营过程中,由于超市货品种类繁多,价格不一,对商品信息

10、进行手工管理时,工作量大、重复工作多、费时费力、效率低下。除此之外,做统计报表时又要将一年中所有的进货量和出售量进行总结、归纳,再将结果重新统计,很容易出现不易察觉的错误,带来经济损失,同时花费的时间更长,重复的工作更多。鉴于此,我用.NET编写了一套对超市商品进销存进行综合管理的系统。通过该系统能及时了解各商品的采购、销售及库存等情况。随着超市商品的大量增加,其管理难度越来越大。在计算机技术飞速发展的今天将计算机这一信息处理利器应用于超市的日常管理已是势所必然。这为超市管理带来前所未有的改变,同时为超市带来意想不到的经济效益和社会效益,这主要体现在以下几个方面:(1)极大的提高了超市工作人员

11、的工作效率,避免了以往进销存流程繁琐、杂乱、周期长的弊端。(2)超市管理实现了操作自动化和信息电子化,全面提高了超市的管理水平。(3)基于超市管理的全面自动化,可以大大减少入库管理、出库管理及库存管理中的漏洞,可以节约大量管理开支,增加超市的收入。1.2 .NET的出现2002年2月,Microsoft 推出了.NET,.NET的出现也代表了Windows平台的软件开发将进入一个新的领域。 .NET对于Windows平台上开发工具厂商有着深远的影响,因为.NET对于Windows平台来说是有史以来变动最大的一次,Microsoft第一次把Windows变成了一个虚拟执行环境,使用SOAP/WE

12、B SERVICE 技术把Windows和各种移动和电子装置整合在一起,提供下一代的整合虚拟数字世界。Microsoft称.NET的战略目标是:任何人在任何地方,使用任何设备都可以打开自己熟悉的操作界面。XML,SOAP,WEB SERVICE将为Microsoft实现这个战略提供有力的技术支持。因此.NET的侧重点从连接到互联网的单一网站或设备上,转移到计算机,移动设备和服务群组上,使其通力合作,提供更广泛更丰富的解决方案。用户将能够控制信息的传送方式、时间和内容。计算机、设备和服务将能够相辅相成,从而提供丰富的服务,而不是孤立的。1.2.1 .NET的体系结构整个Microsoft .NE

13、T体系由以下三个部分组成:(1) .NET框架,包括公用语言运行库(Common Language Runtime)、系统类库(Class Libraries)、ASP.NET。(2)Web Services。(3).NET企业服务,包括Biz Talk Server 2000、Exchange 2000 Server、Host Integration Server 2000、Application Center 2000、SQL Server 2000等。.NET体系结构如图1.1所示。User InterfaceWeb Service基于XML的数据交换.NET基础类库公用语言运行库Com

14、mon Language Runtime图1.1 .NET体系结构1.2.2 数据库访问技术ADO.NET数据存取是现代软件开发中的一项主要工作,无疑它在.NET框架中也占有很重要的地位。ADO. NET是Microsoft在.NET中对数据存取问题的解决方案,也是.NET开发平台的核心服务之一。在.NET框架中,ADO.NET是一套类,它为.NET开发人员提供了数据访问服务,用以创建分布式的数据共享应用程序。虽然它的名字非常类似于以前的ActiveX Data Object(ADO),但实际上,ADO.NET是Microsoft的Universal Data Access(通用数据访问)战略

15、的最新成果,它为SQL Server,OLEDB和XML数据源等各种类型数据提供了一致的数据访问。数据共享客户应用程序可以使用ADO.NET,连接这些数据源,并操作数据。ADO.NET支持不同的开发需求,例如前端数据库客户和由应用程序、工具、语言或Internet浏览器适用的中间商业对象等。1.3 论文的主要工作和研究思路本文是依据超市的管理流程,在熟悉管理系统的相关知识的基础上分析超市运营的基本业务和其管理的总体需求,结合自己的构思并运用.NET技术对超市进销存系统进行分析和设计,提出解决方案。论文首先对超市进销存系统进行需求分析,并根据数据特点提出自己的解决方案,然后论文进入系统概要设计和

16、详细设计部分,通过对三层开发模式的架构分析,划分界面表现层,业务逻辑层和数据访问层。在概要设计的基础上结合.NET技术,重点解决各层的类和接口的设计。在数据库设计阶段,主要解决各种实体、E-R图和表的设计。在详细设计阶段,主要解决各个模块的设计,然后完成界面设计,最后进行系统的测试和完善。研究思路如图1.2所示。.NET技术规范与体系结构研究超市进销存系统的需求分析.NET应用模型和开发方法研究文献资料搜集 基础理论研究系统概要设计系统数据库设计系统详细设计完成论文系统总结系统开发图1.2 研究思路2 超市进销存系统的需求分析超市的日常业务经营活动主要包括基础信息、进货管理、销售管理、仓库管理

17、、退货管理和系统管理等几个方面。因此,如何处理好这几者之间的关系是设计超市进销存管理系统最为关键的部分。2.1 超市进销存系统功能需求本系统开发的总体目标是建立一个能够对超市内商品流动进行监控,即在商品采购、销售、库存等过程中进行监督与控制的进销存管理系统。根据对部分超市管理日常工作的调研结果及其管理的总体需求的分析,系统应具备以下功能: (1)采购员采购商品后,及时录入商品信息数据,在数据库中进行数据更新。(2)商品入库时,生成商品进货单,及时更新数据库。(3)在收银处,随时录入卖出商品信息,如名称、数量、单价等,及时更新数据库数据。(4)从仓库提货时,生成提货报告,并提供该商品的库存信息,

18、剩余信息。(5)对往来单位信息进行综合管理,使管理者可以方便、快捷的得到往来客户的信息。(6)某仓库的货物过多时,可以将该仓库的货物转存到其他仓库,即仓库调拨。并记录调拨的商品,数量,仓库。2.2 超市进销存系统功能模块分析根据超市运营的基本业务和管理的总体需求,进行需求分析,并根据分析绘出系统功能模块图,如图2.1所示。超市进销存系统基础信息模块进货管理模块销售管理模块退货管理模块仓库管理模块往来单位信息添加进货单进货单管理备份数据库查询统计商品信息管理添加销售单销售单管理修改密码仓库调拨仓库设置查询统计添加退货单退货单管理查询统计系统管理模块管理员设置商品分类设置库存报警图2.1 超市进销

19、存系统功能模块2.3 超市进销存的系统流程分析根据需求分析,绘出系统流程如图2.2所示。用户登录系统首页基础信息管理是否成功YN进货管理销售管理仓库管理退货管理系统管理图 2.2 超市进销存系统流程2.4 超市进销存系统的软硬件需求(1)硬件需求CPU: PIII 900 MHz内存:256MB(2)软件需求由于大多数企业内部使用的计算机平台都是基于Windows环境的。为降低系统成本,应最大程度地利用现有的资源、兼容现有的环境,使用下面的开发环境:主机平台:Windows 2000/XP/2003;开发工具:Visual Studio 2005数据库服务器:SQL Server 2000;2

20、.5 超市进销存系统的数据需求超市进销存系统所管理的数据和数据结构大致如下:(1)系统账号表包括的数据项有:用户ID、登录名、用户姓名、密码、部门、电话。(2)部门信息表包括的数据项有:部门ID、部门名。(3)往来单位表包括的数据项有:公司ID、公司名、联系人、电话、邮编、传真、联系人手机、联系人Email、联系人职务、公司网站、数字码、拼音码、地址、备注、类别、信誉程度、区域、是否删除、添加时间。(4)字典维护表包括的数据项有:维护ID、类别、字段名、字段值、作废。(5)商品分类表包括的数据项有:类别ID、类别序号、类别名称、序号列、上一个序号、序号深度、顺序、类别标识。(6)商品表包括的数

21、据项有:商品ID、数字码、拼音码、商品名、商品类别、商品默认价格、规格、单位、商品描述、录入人、添加时间、作废、库存量、仓库。(7)出入库单据表包括的数据项有:出入库单ID、出入库单号、出入库单位、确认、审核、录入人、确认人、审核人、出入库时间、确认时间、审核时间、类别、作废、部门、备注。(8)出入库明细表包括的数据项有:出入库明细定单ID、出入库单ID、商品ID、商品价格、出入库数量、条形码、添加时间、类别、作废、标记、备注。(9)仓库表包括的数据项有:仓库编号、仓库名称。(10)商品调拨表包括的数据项有:调拨编号、调拨商品、调入仓库、调出仓库、调拨数量、调拨日期。(11)数据库备份表包括的

22、数据项有:备份ID、备份名称、备份时间。3 超市进销存系统的概要设计本文采用分层设计思想,将整个系统划分为:(1)数据访问层:专门负责对数据的访问;(2)业务逻辑层:负责业务逻辑;业务逻辑层封装了数据传输和一些具体算法,用来完成表示层的请求,接受从表示层传递的参数,封装表示层需要的、从数据层返回的数据以及建立ADO.NET中关系数据的完整性,主键约束。(3)界面表现层:与用户进行交互,负责将数据和处理结果呈现的用户。本系统的三层结构如图3.1所示。界面表现层数据访问层实体类 DB 用户业务逻辑层实体类图3.1 超市进销存系统的三层结构3.1 超市进销存系统的三层模式描述3.1.1 超市进销存系

23、统数据访问层的描述数据库是系统的最底层,它存储系统的所有数据。数据访问层建立在数据库之上,应用程序通过该层访问数据库。数据访问层一般有数据库的选择,添加,更新和删除等操作,同时还为业务逻辑层提供访问数据库的接口和函数等。该层直接与数据库相关联,同时又为业务逻辑层服务,所以数据访问层设计的好坏关系到整个系统的成败。3.1.2 超市进销存系统业务逻辑层的描述 业务逻辑层又被称为中间层、组件层。业务逻辑层封装了数据传输和一些具体算法,用来完成表示层的请求,接受从表示层传递的参数,封装表示层需要的、从数据层返回的数据以及建立ADO.NET中关系数据的完整性,主键外键约束等。业务逻辑层负责接收浏览器传来

24、的请求并将请求传给数据层,同时将请求处理结果发给浏览器。它由Web表单、XML Web服务和组件服务组成。其中Web表单是ASP.NET应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单交互生成的信息和数据的基础。3.1.3 超市进销存系统界面表现层的描述表示层是三层开发模式的最高层,它一般有WEB页面组成,为用户提供了界面接口。如系统首页Default.aspx及其源文件Default.aspx.cs,系统登录页面Login.aspx及其源文件Login.aspx.cs。 3.2 基础信息模块设计从系统功能描述来看,基础信息模块由商品分类设置、往来单位管

25、理、商品信息管理三个子模块组成。用户可以添加往来单位信息和商品信息,并可按照类别、信誉度、区域对往来单位信息进行查询,也可按照商品分类对商品信息进行查询。该功能模块的结构如图3.2所示。数据访问层界面表示层基础信息管理商品分类设置往来单位信息商品信息管理业务逻辑层数据访问层数据库图 3.2 基础信息模块结构3.3 进货管理模块设计从系统功能描述来看,进货模块由添加进货单,进货单管理,查询统计三个子模块组成。用户可按往来单位、单据号、商品名称、条形码和添加时间,对进货单进行查询,也可对进货单进行统计查询。每张单据可以包含多种商品,同时计算出该单据中所进商品的总价格。该功能模块的结构如图3.3所示

26、。数据访问层界面表示层进货管理添加进货单进货单管理查询统计业务逻辑层数据访问层数据库图 3.3 进货管理模块结构3.4 销售管理模块设计从系统功能描述来看,销售模块由添加销售单,销售单管理,查询统计三个子模块组成。用户可按往来单位、单据号、商品名称、条形码和添加时间,对销售单进行查询,也可对销售单进行统计查询。每张单据对应多种商品,同时计算出该单据中销售商品的总价格。该功能模块的结构如图3.4所示。数据访问层界面表示层销售管理添加销售单销售单管理查询统计业务逻辑层数据访问层数据库图 3.4 销售管理模块结构3.5 退货管理模块设计从系统功能描述来看,退货模块由添加退货单,退货单管理,查询统计三

27、个子模块组成。用户可按往来单位、单据号、商品名称、条形码和添加时间,对退货单进行查询,也可对退货单进行统计查询。该功能模块的结构如图3.5所示。注意:退货单中的商品必须是已经存在的商品。数据访问层界面表示层退货管理添加退货单退货单管理查询统计业务逻辑层数据访问层数据库图 3.5 退货管理模块结构3.6 仓库管理模块设计从系统功能描述来看,仓库模块由仓库调拨、仓库设置和库存报警三个子模块组成。用户可以使用仓库调拨功能在各个仓库之间调拨商品,使用仓库设置功能对仓库进行添加、删除和修改。如果当前库存量小于等于1时,则在库存报警页面显示该商品的信息,以提示用户及时进货。该功能模块的结构如图3.6所示。

28、数据访问层界面表示层仓库管理仓库调拨仓库设置库存报警业务逻辑层数据访问层数据库图 3.6 仓库管理模块结构3.7 系统管理模块设计从系统功能描述来看,系统管理模块由备份数据库、管理员设置、修改密码三个子模块组成。登录用户可以对数据库进行备份,添加新的管理员,并能够修改自己的密码。该功能模块的结构如图3.7所示。数据访问层界面表示层系统管理备份数据库管理员设置修改密码业务逻辑层数据访问层数据库图 3.7 系统管理模块结构4 超市进销存系统数据库设计4.1 数据库概念设计概念结构设计是整个数据库设计的关键。概念设计是对现实世界的一种抽象,抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概

29、念精确的加以描述,这些概念组成了某种模型。描述概念模型的有力工具是E-R模型,即实体-联系模型。本系统根据对数据库的需求分析设计出11个实体:用户信息实体、部门信息实体、往来单位实体、字典维护实体、商品分类实体、商品实体、出入库单据实体、出入库明细实体、仓库实体、仓库调拨实体、数据库备份实体。限于篇幅,仅列出主要实体和其E-R图及其关系描述:(1)用户信息实体的描述,如图4.1所示。用户信息联系电话用户账号用户ID用户密码il用户部门用户姓名图4.1 用户信息实体(2)往来单位实体的描述,如图4.2所示。往来单位数字码公司名公司ID联系人电话类别信誉程度添加时间图4.2 往来单位实体(3)商品

30、信息实体的描述,如图4.3所示。 商品信息商品价格数字码商品ID库存量仓库商品名商品类别添加时间图4.3 商品信息实体(4)出入库单据实体的描述,如图4.4所示。出入库单据审核人出入库单号出入库ID确认确认人审核出入库时间类别图4.4 出入库单据实体(5)仓库调拨实体的描述,如图4.5所示。仓库调拨调拨日期调拨商品调拨编号调入仓库调拨数量调出仓库图4.5 仓库调拨实体(6)出入库明细实体的描述,如图4.6所示。出入库明细添加时间出入库单号出入库明细ID商品ID条形码商品价格出入库数量类别图4.6 出入库明细实体(7)本系统的E-R 图根据以上需求分析,本系统部分E-R图(实体-关系图),如图4

31、.7所示。往来单位仓库商品mm1nn存储管理发表进货或销售n进货或销售单据调拨发表用户mn图4.7 超市进销存系统E-R 图4.2 数据库逻辑设计(1) 用户信息表(ShUser)存放用户登录信息,如表4.1所示。表4.1 用户信息表字段名称字段描述数据类型长度允许为空备注Id用户IDInt4否PKUserId用户账号nvarchar50PassWd用户密码nvarchar50UseName用户姓名nvarchar50Dept用户部门int4Tel联系电话nvarchar50(2) 部门信息表(ShDept)存放部门信息,如表4.2所示。表4.2 部门信息表字段名称字段描述数据类型长度允许为空

32、备注Id部门IDInt4否PKDeptName部门名字nvarchar50(3) 往来单位表(ShCorp)存放往来单位信息,如表4.3所示。表4.3 往来单位表字段名称字段描述数据类型长度允许为空备注Id公司IDInt4否PKCorpName公司名nvarchar50Linkman联系人nvarchar50Telephone电话nvarchar50PostCode邮编nvarchar50Fax传真nvarchar50Handset联系人手机nvarchar50Email联系人Mailnvarchar2Business联系人职务nvarchar16Web公司网站nvarchar20NumCod

33、e数字码nvarchar16Dspt备注Varchar500CorpKind类别int4CreditLevel信誉程度int4CorpArea区域int4IsWas删除int4AddTime添加时间DateTime16(4) 字典维护表(ShDict)是往来单位的辅助信息,提供往来单位表中某些字段的具体信息。如表4.4所示。表4.4字典维护表字段名称字段描述数据类型长度允许为空备注Id维护IDInt4否PKKind类别nvarchar50WordName字段名nvarchar50IntValue字段值nvarchar50StrValue字段值int4IsWas作废nvarchar50(5) 商

34、品分类表(ShClass)存放商品的分类信息,如表4.5所示。表4.5 商品分类表字段名称字段描述数据类型长度允许为空备注Id类别IDInt4否PKClassId类别序号nvarchar50否ClassName类别名称nvarchar50ClassList序号列nvarchar50否ClassPre上一个序号nvarchar50否PKClassTj序号深度int4否ClassOrder顺序int4ClassKind类别标识Int4否StoreKind仓库int4否(6) 商品信息表(ShProduct)存放商品的所有信息,如表4.6所示。表4.6 商品信息表字段名称字段描述数据类型长度允许为空

35、备注Id商品IDInt4否PKNumCode数字码nvarchar30PyCode拼音码nvarchar4ProName商品名nvarchar4ProClass商品类别int8ProPrice商品价格Money8Spes规格nvarchar500Unit单位nvarchar30ProDes商品描述ntext4OpStf录入人Int4AddTime添加时间datetime8IsWas作废int8StroeCount库存量int16StoreID仓库int16(7) 出入库单据表(ShBill)存放出入库的单据,如表4.7所示。表4.7 出入库单据表字段名称字段描述数据类型长度允许为空备注Id出入

36、库IDint4否PKBillNo出入库单号nvarchar50InCorp出入库单位Int4IsSure确认int4IsCheck审核int4InStf入库人int4SureStf确认人Int4CheckStf审核人Int4InTm出入库时间datetime50SureTm确认时间datetime4CheckTm审核时间datetime4Kind类别int4IsWas作废int4StoreKind仓库int4Dspt备注nvarchar50(8) 出入库明细表(ShBillList)存放出入库单据详情,如表4.8所示。表4.8 出入库明细表字段名称字段描述数据类型长度允许为空备注Id出入库单I

37、DInt4否PKBillId出入库单号int4ProId商品IDint4ProPrice商品价格int4mainbarcode条形码nvarchar50InCount出入库数量int4AddTime添加时间datetime8Kind类别int4IsWas作废int4Flag标记int4Dspt备注nvarchar500(9) 仓库表(ShStore)存放仓库信息,如表4.9所示。表4.9仓库表字段名称字段描述数据类型长度允许为空备注StoreID仓库编号Int4否PKStoreType仓库名称char10(10) 仓库调拨表(ShStoreMix)存放商品调拨信息,如表4.10所示。表4.10

38、仓库调拨表字段名称字段描述数据类型长度允许为空备注MixID调拨编号Int4否PKProductID调拨商品Int4StoreTo调入仓库nvarchar50StoreFrom调出仓库nvarchar50MixCount调拨数量int4MixDate调拨日期datetime8(11) 备份信息表(ShDataBack)存放数据库备份信息,如表4.11所示。表4.11备份信息表字段名称字段描述数据类型长度允许为空备注ID信息IDInt4否PKDataName备份名称Nvarchar50BackTime备份时间Datatime85 超市进销存系统的详细设计与实现客户端浏览器使用基于服务器的程序提供

39、的一组服务,这些服务器程序的最高层公开,客户端只与最高层交互,而无法直接了解任何较低的层。在ASP.NET程序中,三层架构的具体实现可能进行多种形式的扩展,在较复杂的ASP.NET程序中,可能将业务层中重要的对象和方法封装到统一的类库中,这些类库以DLL形式提供给系统,其内部也是分层的结构。三层结构组织如图5.1所示。图5.1 三层结构组织5.1 超市进销存系统数据访问层数据访问层的任务就是打开连接,然后创建命令对象,给命令对象的CommandText属性设置值,可以是存储过程名字,也可以SQL语句。然后就调用执行命令的方法,得到结果后返回。本系统将数据库访问的代码封装到了一个类中,这个类是D

40、bHelperSQL.cs,类中的方法都是静态的,可以直接调用。它专门负责访问数据库,这样本系统的各模块的实现只需要调用这个类,就可以取得数据库中的数据。系统中每一个模块的实现都需要在DA层中做相应的声明,例如添加进货单中,当采购员采购回商品时,需要将数据提交给进货单类,这一个业务需要在DA层中声明一个方法InsertData(),然后在业务逻辑层中调用DA层中的这个方法。本系统DA层中主要的处理数据库的类如图5.2所示。图5.2 DA层中的类5.2 超市进销存系统业务逻辑层业务逻辑层封装了数据传输和一些具体算法,用来完成表示层的请求,接受从表示层传递的参数,封装表示层需要的、从数据层返回的数

41、据以及建立ADO.NET中关系数据的完整性,主外键约束等。如进货管理模块,当需要将采购的商品数据提交给进货单类的时候,就需要在业务层中调用相关方法,业务层再通过DA层中的InsertData()这个方法进行操作数据库,就可以完成商品存库并生成进货单这一过程。本系统主要的业务逻辑层类如图5.3所示。图5.3 业务逻辑层类5.3 超市进销存系统界面表现层本系统用的界面表现层是web窗体,通过它来负责和管理者的交互。在本层中运用Visual Studio 2005提供的各类控件,来实现形式各样的显示效果,结合Dreamweaver强大的美化功能,弥补了Studio在界面上的操作不足。在本系统中,进货管理、销售管理、退货管理使用的是同一个页面,通过参数BillType来判断到底是哪个页面、哪个单据类型,从而进行相应操作。因此以下对这三个模块的相同部分只详细分析了一个。5.3.1 进货管理模块的实现该模块包含三个页面:InStoreList.aspx(进货单管理),InStore.aspx(添加进货单

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1