1、毕业设计超市仓库管理信息系统设计与实现902020年5月29日文档仅供参考目 录1 绪论11.1课题背景及意义11.2系统设计的意义11.3任务概述21.3.1项目目标21.3.2项目范围21.4系统开发环境21.4.1 B/S结构21.4.2 ASP.NET21.4.3 SQL Server 数据库32 需求分析42.1系统目标42.2系统功能描述42.2.1功能需求分析42.2.2性能需求分析52.3系统数据流图52.3.1数据流图52.3.2二层数据流图52.3.3三层数据流图62.3.4四层数据流图92.3.5数据字典113 总体设计133.1系统概述133.2系统模块结构133.3数
2、据库设计163.3.1概念结构设计163.3.2逻辑结构设计194 详细设计204.1数据库设计204.2系统功能实现225 编码与实现265.1管理员登录265.2系统自动报警295.3其它功能325.3.1商品管理325.3.2出库入库管理335.3.3盘存管理、系统管理和用户管理346 系统测试356.1测试的种类356.2测试细节35结论37参考文献38翻译部分39英文原文39中文译文46致 谢52摘 要当今社会,超市已经成为了人们生活中必不可少的组成部分。不但仅是销售工作,超市的仓库管理工作对超市而言也是十分重要的。传统的超市仓库管理是采用人工管理的方法,管理员按照自己的一套方法来记
3、录商品信息,比如存放位置、库存情况等等。这种管理方式效率低下,而且管理员劳动强度大,十分不便。随着计算机技术的日益普及,开发一款高效的基于B/S模式的现代超市仓库管理系统显得十分必要。本文详细介绍了使用ASP.NET和SQL Server 数据库对超市仓库管理系统进行设计与实现的过程。本次超市仓库管理系统的开发运用传统的面向过程软件分析和设计思想,开发工具借助ASP.NET+SQL Server ,系统功能主要包括以下几个方面:商品信息管理,商品入库管理,商品出库管理,商品盘存管理,系统管理,用户管理,系统自动报警。系统自动报警是针对超市仓库管理设计的一项功能,当商品库存低于库存下限时,系统自
4、动报警功能被触发,第一时间通知管理员获取信息,防止商品出现缺货。关键词:仓库管理;B/S模式;ASP.NET ABSTRACTIn todays society, the supermarket has become an integral part of peoples lives. Not only sales, the supermarket warehouse management is also very important. Traditional supermarket warehouse management is manual management, the administ
5、rator in accordance with its own set of methods to record product information, such as storage location, inventory, and so on. This management method is inefficient and labor-intensive , and is very inconvenient. With the growing popularity of computer technology, it is very necessary to develop a h
6、ighly efficient supermarket modern warehouse management system based on B / S mode. This paper describes the use of ASP.NET and SQL Server database the supermarket warehouse management process. The supermarket Warehouse Management System was developed by using the traditional software analysis and d
7、esign method, developing tools using ASP.NET + SQL Server , system functions mainly include the following aspects: product information management, product storage management, the product out of database management, inventory management, system management, user management, automatic alarm system. The
8、 automatic alarm system is a feature designed for supermarket warehouse management. When the stock of merchandise inventory is lower than the lower limit, the system automatic alarm function is triggered, the first time to notify the administrator, to prevent merchandise out of stock.Keywords: Wareh
9、ouse Management; B / S mode; ASP.NET1 绪论1.1课题背景及意义随着经济的不断发展,人们生活水平得到了提高,当今社会,超市已经遍布几乎所有大大小小的城市,成为了人们生活中必不可少的一部分。超市为人们提供了一个轻松方便的购物场所,因此深受大家喜欢。为了最大限度满足顾客的购物需求,超市商品的种类越来越繁多,越来越多样化。随之而来的就是商品数量的日渐增多。这样满足了顾客需求,可是也为超市仓库的管理带来了压力。传统的超市仓库管理是采用人工管理的方法,管理员按照自己的一套方法来记录商品信息,比如存放位置、库存情况等等。随着商品信息越来越多,给管理员的管理带来了很多麻烦
10、,比如查询商品困难等。这种方法已经逐渐显出不足,不但仅管理效率低,而且管理员劳动强度越来越大,当超市仓库管理员更换时,新的管理员并不是很了解商品信息和摆放情况,会在以后的工作中遇到更多麻烦,甚至会造成超市销售业绩下滑。另外这种管理方法并不能让管理员第一时间得知库存不足的商品,而是需要管理员自己去查询哪些商品库存不足需要采购补货,这就有可能造成商品真空期,影响销售。因此,开发一个高效的针对超市仓库进行管理的系统迫在眉睫。超市仓库信息管理系统经过计算机对超市仓库进行管理,商品信息存储在系统之中,即使仓库管理员更换,新管理员依然能够方便的经过系统获知商品信息,经过系统对商品进行查询等,而且当商品库存
11、不足时,系统有自动报警功能,通知管理员查看,管理员能够打印需要补货的商品,送达采购部门,以便采购部门及时补货,避免商品真空期。1.2系统设计的意义超市仓库信息管理系统旨在提供一种比传统人工管理更高效的管理方式,借助系统自身的灵活性和便捷性,在超市仓库管理中提高管理效率,降低管理员工作强度,节省超市仓库管理环节的人力物力,降低超市运营成本。系统经过管理员录入商品信息来对商品信息进行记录存储,随便管理员怎样更换,进入系统后商品信息一目了然。而且管理员能够随时查询某一商品信息。系统同时能够对商品的出库入库进行记录,并对库存情况及时更新。当某商品库存量低于库存下限时,系统自身的自动报警功能能够及时通知
12、管理员,从而有效避免了商品真空期的出现。同样管理员能够查询滞销退货的商品,及时获取滞销商品信息,采取相应措施,减少超市损失。与传统人工管理方式相比,该系统在管理效率方面有了提高,而且其自动报警功能能够避免商品缺货情况的出现,使得超市仓库的管理更便捷更精准。1.3任务概述1.3.1项目目标经过对某超市的调研,了解仓库管理员的日常工作,包括其工作内容和工作流程,以此确定系统的在功能上的需求和性能方面的需求,该仓库管理系统旨在提供一种比传统人工管理更高效的管理方式,借助系统自身的灵活性和便捷性,在超市仓库管理中提高管理效率,降低管理员工作强度,节省超市仓库管理环节的人力物力,降低超市运营成本。从安全
13、角度考虑,该系统不支持自主注册,只有一个管理员帐号供管理员使用,没有其它用户,管理员能够对新商品建档和管理,能够对商品进行入库管理以及出库管理,能够进行商品盘存,当商品库存低于限度时系统会自动报警提示补货。管理员还能够对收货单位、供货单位等进行管理,如果有必要还能够修改账号登录密码。1.3.2项目范围根据超市仓库管理工作内容,该系统主要实现商品管理、入库管理、出库管理、盘存管理、系统管理、用户管理等。入库管理能够对正常商品采购入库和商家退货入库进行管理。系统在入库和出库操作时及时对库存量进行更新,当库存低于下限时会自动进行报警,能够有效避免商品出现真空期,避免给超市带来损失。系统运用ASP.N
14、ET技术进行开发,数据库采用SQL Server,为超市提供一个便捷、灵活、安全、高效的仓库管理系统,降低了管理员工作强度,减少了超市在仓库管理方面的投入成本,从另一种意义上说使得超市有更多精力投入到运营销售方面,增加了超市利润。1.4系统开发环境1.4.1 B/S结构B/S结构(Browser/Server,浏览器/服务器模式),与C/S结构不同,其客户端不需要安装专门的软件,只需要浏览器即可。浏览器经过WEB服务器与数据库进行交互,能够方便的在不同平台下进行工作。服务器端可采用高性能计算机,并安装Oracle、Sybase、Informix等大型数据库。B/S结构简化了客户端的工作,它是随
15、着Internet技术兴起而产生的,是对C/S技术的改进,但该结构下服务器的工作较重,对服务器的性能要求更高。1.4.2 ASP.NETASP.NET是Microsoft公司推出的新一代建立动态Web应用程序的开发平台,是一种建立动态Web应用程序的新技术。ASP.NET是Microsoft.NET的一部分,是Active Server Page(简称ASP)的另一个版本。ASP.NET的语法在很大程度上与ASP兼容,同时还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。ASP.NET是一个已编译的、基于.NET的环境,能够用任何与.NET兼容的语言(包括
16、Visual Basic.NET、C#和Jscript.NET)创立应用程序。另外,任何ASP.NET应用程序都能够使用整个.NET Framework。开发人员能够方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全和继承等。Microsoft公司为ASP.NET设计了功能强大的代码,代码易于重用和共享,可用编译类语言编写策略,从而使程序员更容易开发Web应用程序,满足不同客户的需求。ASP.NET有很多优点,它为Web应用程序提供了默认的授权和身份验证方案,有较高的安全性。同时用ASP.NET开发的Web应用程序易于部署。另外ASP.NET与现有ASP应用程序有很好的兼容性
17、,不会因为安装ASP.NET而导致现有ASP应用程序崩溃1。1.4.3 SQL Server 数据库SQL Server 是微软推出的数据库软件产品,也是至今为止最强大最全面的SQL Server版本。 代表其版本系列号,Server是服务器的意思,表明SQL Server 在计算机网络中是一台提供数据服务的服务器。SQL(Structured Query Language)译为结构化查询语言,是各种关系数据库所采用的标准语言。相比以前的版本,SQL Server 在很多方面做了改进,增加了很多新的功能,比之前的任何版本更安全、更高效、更智能。2 需求分析需求分析主要是为了弄明白用户需要计算机
18、来做什么、完成什么任务,该阶段由系统分析员按照自己对问题的理解,对系统的目标和系统的范围进行说明,从用户的视角对需求进行分析和定义,把系统需求准确地表示出来,主要包括系统的功能需求、性能需求、环境约束和外部接口描述等。要做好该阶段的工作,需要系统分析员和用户之间有良好的配合交流。2.1系统目标根据对实际情况的调研分析和客户方提出的需求,本系统应具有如下特点:(1)页面以简洁为主,注重可操作性。(2)从安全性考虑,系统不支持用户自主注册,并增加验证码防止暴力破解。(3)支持对新商品进行建档,存储该商品全面信息。(4)支持出库入库管理,入库包括正常的采购入库和商家退货入库。(5)提供查询功能,能够
19、查询商品信息。(6)当出现库存低于下限的商品时,系统自动弹出报警窗口,第一时间告知管理员。(7)管理员接到报警查看低限商品并能够打印商品列表送交采购部门及时补货。2.2系统功能描述2.2.1功能需求分析(1)管理员登录模块包括对管理员的用户名密码进行匹配性验证,以及登录验证码,防止暴力破解登录。(2)商品管理模块能够对新商品进行建档,管理员能够查看所有已建档商品信息并能够修改或删除。(3)入库管理模块包括正常的采购入库和商品退货入库。管理员能够进行入库登记,能够修改或删除入库记录,也能够按照时间段进行入库情况统计。(4)出库管理模块管理员能够查看所有出库信息,能够进行出库登记,能够修改或删除出
20、库记录。能够按时间段进行统计查询。(5)盘存管理管理员能够查看所有在存商品的库存情况。能够进行商品查询,能够按名称查询单一商品,也能够按种类查询某一种类商品。还能够查询滞销退货信息。(6)系统管理包括供货单位管理、收货单位管理、商品种类管理、经手人管理等。(7)用户管理主要提供用户修改密码的功能。(8)其它系统要具备自动报警功能。当商品库存不足时能够自动报警第一时间告知管理员。同时要具备报表模块,管理员能够打印缺货名单和滞销商品名单。2.2.2性能需求分析(1)安全性系统应具备管理员登录验证和灵活的密码修改功能,确保系统有较高的安全性。(2)稳定性系统要具备持续正常运行的能力,尽量避免系统运行
21、过程中崩溃或引起计算机死机。(3)灵活性系统应具有较高的灵活性,避免重复操作,修改信息时自动绑定并显示要修改的信息,能够直接进行修改。2.3系统数据流图本系统采用结构化分析与设计方法,建立结构化分析模型来对系统模型进行描述。2.3.1数据流图经过对系统的分析,系统只有单一用户即管理员,把整个仓库管理视为一个大的加工,由此得到系统的顶层数据流图,如图2-1所示。图2-1 顶层DFD图系统的用户就是仓库管理员,管理员的一切工作都需要登录系统之后才能进行。管理员负责对仓库商品的管理,对日常的商品入库出库进行登记管理。2.3.2二层数据流图对顶层数据流图进行分解扩展,得到二层数据流图,如图2-2所示。
22、商品管理模块中,管理员能够从商品表中读取所有商品信息,对新商品进行建档,写入商品表。在入库管理中,管理员根据入库单进行操作,把入库信息写入入库表,亦能够读取入库信息。在出库管理中,管理员同样根据出库单进行操作,把出库商品写入出库表,亦能够从出库表获取出库信息。同时出库入库会造成库存量变化,需要修改商品信息表中的库存。在盘存管理中,管理员能够获取商品的当前信息,包括库存量等。该模块同时包括商品查询功能,管理员能够查询某一商品信息。另外系统还有用户管理模块和系统管理模块,方便对用户信息和系统信息进行管理。图2-2 二层DFD图2.3.3三层数据流图对二层数据流图中的加工进行进一步的细分,得出各个加
23、工的三层数据流图。(1)商品管理商品管理子系统的数据流图如图2-3所示。图2-3 商品管理子系统DFD图当管理员对商品建档时,系统先判断商品是否是新商品,如果不是则不能重复建档,否则能够进行建档,将商品信息写入商品表中。管理员能够对商品表中的商品信息进行修改并保存在商品表中。亦能够对商品信息进行删除。(2)入库管理入库管理子系统的数据流图如图2-4所示。图2-4 入库管理子系统DFD图管理员能够获取入库表中所有入库信息,而且能够统计选定时间段内的入库情况。当管理员发现某一入库信息需要更正时,能够选中该信息对该信息进行修改,亦能够删除该入库信息。无论是正常的采购入库还是退货入库,都会对商品的库存
24、造成影响,因此需要修改商品信息表中的库存量以保证数据的正确性。(3)出库管理出库管理子系统的数据流图如图2-5所示。图2-5 出库管理子系统DFD图管理员能够查看所有出库记录,而且能够对其中的错误的记录进行修改或者删除操作。进行出库操作后商品库存量减少,因此需要及时对商品信息表中的商品库存进行修改以保证数据正确无误。管理员能够统计某一段时间段内的出库情况并进行相应分析。(4)盘存管理盘存管理子系统的数据流图如图2-6所示。图2-6 盘存管理子系统DFD图管理员能够查看所有商品的盘存信息,也能够按照查询条件查询相应商品的盘存信息。比如按照名称查询某一商品,也能够按照种类查询某一种类商品。同时对于
25、商家退货的商品,管理员能够进行查询,以便获取这些商品信息并对这些商品进行进一步处理工作。(5)系统管理系统管理子系统的数据流图如图2-7所示。图2-7 系统管理子系统DFD图系统管理子系统包括四个子系统,种类管理、收货单位管理、供货单位管理、经手人管理。所包括的四个加工都是一个更小的系统,都能够继续进行细分,因此需要画第四层数据流图加以描述。(6)用户管理用户管理子系统的数据流图如图2-8所示。图2-8 用户管理子系统DFD图为了安全性,管理员修改密码之前需要输入旧密码进行验证,输入错误则不能进行修改,输入正确才能够继续进行。经过密码验证后,进一步对输入的新密码的有效性进行验证。如果两次输入的
26、新密码不一致,则视为无效密码,不能写入表中。如果两次输入一致但与旧密码相同,也视为无效密码,不予修改。只有两次输入一致且不与旧密码相同才视为有效新密码并进行修改写入表中。2.3.4四层数据流图对系统管理子系统的每个加工进行细分又能够得到四层数据流图。(1)商品种类管理商品种类管理子系统的数据流图如图2-9所示。图2-9 商品种类管理子系统DFD图管理员能够从表中获取商品种类的信息。能够添加种类,能够进行删除或者修改操作。(2)收货单位管理收货单位管理子系统的数据流图如图2-10所示。图2-10 收货单位管理子系统DFD图管理员能够从表中获取收货单位信息,能够添加收货单位,能够进行删除或修改操作
27、。(3)供货单位管理供货单位管理子系统的数据流图,如图2-11所示。图2-11 供货单位子系统DFD图管理员能够从表中获取供货单位信息,能够添加供货单位,能够进行删除或修改操作。(4)经手人管理经手人管理子系统的数据流图如图2-12所示。图2-12 经手人管理子系统DFD图管理员能够从表中获取经手人信息,能够添加经手人,能够进行删除或修改操作。2.3.5数据字典数据字典的作用是对软件中的每个数据规定一个定义条目。下面列举本系统中的字典条目:名称:商品信息描述:描述商品的详细信息来源:原始数据去处:商品信息表组成:商品ID+商品名称+商品种类+商品单位+库存位置+下限+上限+当前库存名称:入库信
28、息描述:描述商品入库信息来源:原始数据去处:入库信息表组成: 入库编号+入库时间+商品名称+商品种类+商品单位+入库数量+入库单价+入库总价+备注名称:出库信息描述:描述商品出库信息来源:原始数据去处:出库信息表组成:出库编号+出库时间+商品名称+商品种类+商品单位+出库数量+出库单价+出库总价名称:商品种类信息描述:描述商品种类信息来源:原始数据去处:商品种类表组成:种类编号+种类名称+父类编号名称:供货单位信息描述:描述供货单位的详细信息来源:原始数据去处:供货单位表组成:供货单位编号+名称+地址+联系电话+联系人名称:收货单位信息描述:描述收货单位的详细信息来源:原始数据去处:收货单位表
29、组成:收货单位编号+名称+地址+联系电话+联系人名称:经手人信息描述:描述经手人的详细信息来源:原始数据去处:经手人表组成:编号+姓名+联系方式名称:用户信息描述:记录用户的账号密码来源:原始数据去处:用户信息表组成:用户编号+用户名+密码3 总体设计系统总体设计又称为概要设计,主要包括系统模块结构设计、数据库设计和文件设计等内容。该阶段采用自顶向下的原则,首先设计总体结构,然后向下逐步细分,直至进行完每一个子模块的设计。3.1系统概述考虑到如今的Internet时代,用浏览器在网上浏览信息已经非常普遍,同时考虑到B/S系统的免安装特性及自身优点,本系统采用B/S模式进行设计。系统基于ASP.
30、NET,数据库采用SQL Server 。3.2系统模块结构根据对超市仓库管理的考察调研,结合客户的功能需求,得到超市仓库信息管理系统的总体模块结构,如图3-1所示。从图中能够清楚看到超市仓库管理系统包括管理员登录、商品管理、入库管理、出库管理、盘存管理、系统管理、用户管理、系统自动报警几大模块。每个模块又包括若干更小的模块。接下来对这些模块进行详细的描述。(1)管理员登录模块该模块具备用户名密码识别功能和验证码功能。首先对验证码进行验证。如果输入的验证码不正确,则会弹出提示框提示验证码输入错误并终止后续验证。验证码验证成功才进一步对输入的用户名密码组合进行验证。如果用户名与数据表中的用户名不
31、一致,则弹出提示框提示用户名不存在。否则继续验证密码是否正确,正确则成功进入系统,错误则弹出密码错误信息框,如图3-2所示。(2)商品管理模块商品管理模块主要实现对商品信息的管理,包括添加、删除、修改等操作,如图3-3所示。在该模块实现的功能中,管理员能够读取所有商品信息,每条商品信息后面都有修改和删除链接,管理员能够选中其中任意一条点击修改或删除进行相关操作。图3-1 系统总体模块结构图图3-2 管理员登录模块图3-3 商品管理模块(3)入库管理模块入库管理模块主要实现对入库信息的管理,包括添加、删除、修改等,同时具备按时间段查询功能,如图3-4所示。图3-4 入库管理模块管理员能够选中某一
32、条入库记录进行修改或删除,还能够查询任意时间段内的入库记录,只需要在日期中选择开始日期和截止日期,点击查询即可。(4)出库管理模块出库管理主要实现对出库信息的管理,包括添加、删除、修改等,同时具备按时间段查询功能,如图3-5所示。该模块和入库管理模块类似,管理员能够对任一出库记录进行修改或删除操作,并能输入开始日期和截止日期进行某一时间段内的出库统计。图3-5 出库管理模块(5)盘存管理模块在盘存管理中管理员能够获取商品的库存剩余量,而且能够查询某一条件商品的盘存情况,如图3-6所示。图3-6 商品盘存模块(6)系统管理模块系统管理包括商品种类管理、供货单位管理、收货单位管理、经手人管理等。主
33、要实现信息的添加、删除、修改等操作,如图3-7所示。图3-7 系统管理模块(7)用户管理模块用户管理模块主要实现对密码的修改功能。3.3数据库设计本系统采用SQL Server 数据库进行数据存储。在数据库中定义系统中涉及到的各种信息表并存储相应数据,在系统运行过程中数据库担当着和系统进行数据交互的任务,对系统数据进行及时的读和写,因此数据库是否稳定直接决定着所开发的系统的稳定性。数据库中表的结构的设计也因此显得十分重要。3.3.1概念结构设计经过前面对系统的分析,我们能够规划出来以下实体:商品信息实体、入库信息实体、出库信息实体、管理员实体、供货单位实体、收货单位实体、经手人实体、商品种类实
34、体。下面给出各个实体对应的E-R图。(1)商品信息实体如图3-8所示。图3-8 商品信息E-R图(2)入库信息实体如图3-9所示。图3-9 入库信息E-R图(3)出库信息实体如图3-10所示。图3-10 出库信息E-R图(4)管理员实体如图3-11所示。图3-11 管理员E-R图(5)供货单位实体如图3-12所示。图3-12 供货单位E-R图(6)收货单位实体如图3-13所示。图3-13 收货单位E-R图(7)经手人实体如图3-14所示。图3-14 经手人E-R图(8)商品种类实体如图3-15所示。图3-15 商品种类E-R图3.3.2逻辑结构设计逻辑结构设计就是把概念设计中的E-R图以数据表
35、的形式展现出来,及进行数据库中表的设计。根据概念设计中的实体,该系统中需要创立的表有:(1)商品信息表:用于存放所有商品的详细信息。(2)入库信息表:用于存放商品入库信息。(3)出库信息表:用于存放商品出库信息。(4)管理员信息表:用于存放登录信息。(5)供货单位表:用于存放供货单位信息。(6)收货单位表:用于存放收货单位信息。(7)经手人表:用于存放经手人信息。(8)商品种类表:用于存放商品种类信息。4 详细设计详细设计是对概要设计的细化,其任务主要包括:为每个模块进行详细的算法设计、为每个模块内的数据结构进行设计、对数据库进行设计。下面主要介绍该系统中数据库的设计和每个模块的具体实现。4.
36、1数据库设计该系统数据库采用SQL Server ,数据库名称为ManagerWarehouse,数据库中建立以下数据表:(1)商品信息表商品信息表用来存储当前在存商品的全部信息,如表3-1所示。表3-1 T_Product商品信息表字段中文描述数据类型是否为空备注HID商品编号int否主键ProductName商品名称nvarchar(10)否ProductKind商品种类nvarchar(10)否Unit商品单位nvarchar(10)否Warehouse存放仓库nvarchar(10)否Position存放位置varchar(20)否LowLine库存下限int否UpLine库存上限in
37、t否Result当前库存int是(2)入库信息表入库信息表用来存储商品入库信息,如表3-2所示。表3-2 T_InWarehouse入库信息表字段中文描述数据类型是否为空备注IId入库编号int否主键IDate入库日期datetime否ProductName商品名称nvarchar(10)否ProductKind商品种类nvarchar(10)否Unit商品单位nvarchar(10)否Count入库数量int否InPrice入库单价decimal(19,4)否Total入库总价decimal(19,4)否SupplyUnit供货单位nvarchar(10)否Person经手人nvarchar
38、(10)否Notes备注nvarchar(10)是(3)出库信息表出库信息表用来存储商品出库信息,如表3-3所示。表3-3 T_OutWarehouse出库信息表字段中文描述数据类型是否为空备注OId出库编号int否主键ODate出库日期datetime否ProductName商品名称nvarchar(10)否ProductKind商品种类nvarchar(10)否Unit商品单位nvarchar(10)否Count出库数量int否OutPrice出库单价decimal(19,4)否Total出库总价decimal(19,4)否ReceivingUnit收货单位nvarchar(10)否Per
39、son经手人nvarchar(10)否(4)管理员信息表管理员信息表用来存储管理员的账号密码,如表3-4所示。表3-4 T_Users管理员信息表字段中文描述数据类型是否为空备注UserID管理员编号int否主键UserName用户名nvarchar(10)否Pwd密码nvarchar(16)否(5)供货单位表供货单位表用来存储供货单位信息,如表3-5所示。表3-5 T_SupplyUnit供货单位表字段中文描述数据类型是否为空备注SId编号int否主键Name名称nvarchar(10)否Address地址nvarchar(20)否person联系人nvarchar(10)否tel联系电话v
40、archar(16)否(6)收货单位表收货单位表用来存储收货单位信息,如表3-6所示。表3-6 T_ReceivingUnit收货单位表字段中文描述数据类型是否为空备注RID编号int否主键Name名称nvarchar(10)否Address地址nvarchar(20)否person 联系人nvarchar(10)否tel联系电话varchar(16)否(7)经手人表经手人表用来存储经手人信息,如表3-7所示。表3-7 T_Person经手人表字段中文描述数据类型是否为空备注UserID编号int否主键Name姓名nvarchar(10)否tel手机号码varchar(16)否(8)商品种类表
41、商品种类表用来存储商品的种类信息,如表3-8所示。表3-8 T_Kind商品种类表字段中文描述数据类型是否为空备注ID编号int否主键Name种类名称nvarchar(10)否FID父类编号int否4.2系统功能实现(1)管理员登录管理员登录需要经过验证码验证和账号密码验证双层验证。首先对验证码进行验证,验证不经过则终止登录。验证经过继续进行用户名验证密码,验证成功则登录系统,失败则结束登录。管理员登录流程图如图4-1所示。图4-1 管理员登录流程图(2)商品管理商品管理对仓库中所有商品信息进行管理。当商品第一次入库时,系统会判断是不是新商品,是则提示需要对商品进行建档,即添加商品信息。管理员
42、能够查看所有商品信息,能够选中某条商品信息进行修改或者删除。(3)入库管理和出库管理商品入库包括正常的采购入库和退货入库。当采购商品入库时,系统首先判断商品是否已经存在,如果存在,只需要修改商品库存即可。如果不存在,则提示需要对商品建档,才能进行入库操作。同时管理员能够对入库信息进行修改或删除。该模块提供查询入库信息的操作,输入查询开始日期和终止日期,查询这一时间段内的所有入库情况。出库管理和入库管理类似,管理员能够添加出库信息,能够对出库信息进行删除或修改。也能够输入开始日期和终止日期进行查询。此处只给出入库管理模块的流程图,如图4-2所示。(4)盘存管理和系统管理盘存管理模块主要任务是能够
43、让管理员掌握商品的当前库存量。因此该模块中管理员能够浏览所有商品的库存信息。同时该模块添加了商品查询功能。管理员能够按照商品名称查询某一特定商品的全部信息,也能够按照商品种类查询某一特定种类的商品信息。系统管理包括收货单位管理、供货单位管理、经手人管理、商品种类管理。主要实现上述信息的最基本的添加、删除、修改操作,不再一一赘述。(5)用户管理用户管理主要做了修改密码功能。修改密码需要用户输入旧密码进行验证,只有验证经过才能进行修改,否则无权进行修改,保证管理员信息安全。验证经过后继续对用户输入的两次新密码一致性进行验证,经过则修改成功,新密码写入数据表,不一致则修改失败,需要重新输入。系统流程
44、图如图4-3所示。图4-2 入库管理流程图图4-3 用户管理流程图5 编码与实现5.1管理员登录登录过程首先进行验证码验证,验证码输入错误则终止本次登录,必须重新登录。验证码验证成功后对用户名进行验证,从用户表中检索输入的用户名是否存在,如果存在就继续验证输入的密码是否匹配。只有经过了验证码验证而且用户名密码相匹配才能进入系统。判断用户名是否存在的代码如下: public bool Isavailable(string UserName) string ConnStr = ConfigurationManager.ConnectionStringsConnStr.ConnectionString; using (SqlConnection conn = new SqlConnection