




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学号:题 目: 基于J2EE的仓库管理系统的设计与实现 学 院: 信息科学与技术学院 专 业: 计算机科学与技术 姓 名: XX 指导教师: 陈廷伟 完成日期: 2012年5月13日 摘 要物流是有形的物品从出发点到消费点的流动存储活动,而仓库承担了公司所有的决策误差所带来的库存压力。仓库管理是一项繁琐而又复杂的工作,每天有大量的单据数据要处理,同时为了能够及时结清每笔业务,准确盘点库存和记录货物流动情况,保证企业生产用料以及货物安全。仓库管理系统是提供一整套仓库业务以及作业的一种管理系统。仓库管理系统通过对入库业务、出库业务的管理,同时结合批次管理、物料对应、库存盘点、等功能的一个综合运用的
2、管理系统。仓库系统的使用,将使仓库的管理更加规范化、正规化,为产品的库管理部门和销售部门提供了极大的方便,降低了仓库的损耗。用户登录系统后,可以实现基本的货物进出库管理,同时可以对仓库内的货物进行查询,盘点等基本功能。本系统采用J2EE技术,使用MYSQL数据库进行开发。关键词:物流;仓库管理;数据库AbstractLogistics is the physical flow of goods from point of departure to the point of consumption of storage activities, and warehouses took over c
3、ompany inventory pressures brought about by the decision of all error. Warehouse management is a tedious and complex task, every day a large number of document data to deal with, at the same time in order to settle each business in a timely manner, accurate inventory and records the movement of good
4、s in stock, guarantee the safety of production materials and goods.Warehouse management system is a management system to provide a full range of warehouse business and jobs. Warehouse management system through the storage business, business management, batch management, combined with features such a
5、s material, inventory counting, and an integrated use of management system. Warehouse, warehouse management more standardized and formalized, product management and sales department offers great convenience, reduces the loss of warehouse.After a user has logged on to the system, you can implement ba
6、sic goods in and out of the library management, at the same time you can query your goods within the warehouse, inventory, and other basic features. This system using J2EE technology, using the MYSQL database development.Key words: Logistics; Warehouse management; Database目 录序 言1第1章仓库管理系统的背景与意义21.1系
7、统开发背景21.2系统开发的意义21.3论文的主要工作31.4论文的结构3第2章 相关技术介绍52.1 C/S结构与B/S结构52.1.1 C/S结构52.1.2 B/S结构52.2 MVC架构风格62.2.1 MVC中的Model组件62.2.2 MVC中的View组件62.2.3 MVC中的Control组件72.3 J2EE体系结构7第3章 仓库管理系统的分析93.1系统的可行性研究93.2系统的需求93.2.1功能性需求93.2.2系统的性能需求113.3需求分析123.3.1系统流程123.3.2数据流13第4章 仓库管理系统的设计144.1 数据库设计144.1.1 实体的关系14
8、4.1.2数据库表的设计164.2模块设计18第5章 仓库管理系统的实现205.1系统实现的环境205.2系统模块的实现205.2.1人员管理205.2.2货物存储信息查询205.2.3货物入库215.2.4货物出库225.2.5货物盘点235.3系统的测试24第6章 结论与建议26参考文献27致 谢28序 言企业的物流就如一条流动的河,而从供应商开始,就意味着物料开始流动。供应商是这条河流的源头,物料经过供应商出货客户企业采购运输配送客户企业检验仓库生产成品加工或装配成品仓库配送给客户的漫长过程。在这个漫长的过程中,任何一个环节出现差错都有可能导致库存,虽然库存出现在供应的不同环节,但无论哪
9、个环节,库存都是“积蓄”在仓库中,于是仓库就成了“河的下游”,于此同时,库存成本控制,也就成了“河的下游的下游”。而众所周知,如果一条河流被污染了,仅仅治理这条河流中下游虽然能起到到一定的租用,但污染根本原因源头,没有解决,这始终是治标不治本。 所以,仓库也就承担起了公司所有的决策误差所带来的库存压力。在现代企业中,仓库管理是一项繁琐而又复杂的工作,每天有大量的单据数据要处理,同时为了能够及时结清每笔业务,准确盘点库存和记录货物流动情况,保证企业生产用料以及货物安全,要花费大量人力物力和时间来做相关的数据记录统计工作。同时,仓库管理是一项既麻烦又单调的工作,长时间重复记录同一种类的货物甚至是相
10、同货物的存取,且种类繁多又具有很大的随机性,仓库管理人员工作起来很不方便。在实际操作过程中,人为的出错率会相对较高,同时出错后也可能很难及时更正。如果单依靠人力来完成这种工作,对于经营者来说根本是不划算的,人力资源成本过高,所以一个可行的仓库管理系统具有其应用价值。本系统通过使用数据库对仓库的管理实现信息化,将人为因素导致的错误降低至最低,同时有效提高了货物管理的效率,较少了不必要的人力配置,在实现仓库自动化的同时,也大大节约了成本。第1章 仓库管理系统的背景与意义1.1系统开发背景物流是有形的物品从出发点到消费点的流动存储活动,包括运输、保管、包装、装卸、搬运、流通加工及信息处理。从职能上可
11、以分为:供应物流、生成物流、销售物流、回收物流和废弃物流。从上世纪70年代开始,计算机技术开始逐渐渗透到物流领域。伴随着物流市场和物流行业信息化的发展,物流软件市场也应运而生且发展迅速,一大批物流软件涌现在国内外市场。物流软件作为一种管理软件,呈现出先进性、高效性、可靠性和安全性等特点,且具备实施风险小、实施迅速、效益显著、见效快等优势,具备广阔的市场。根据目前物流软件的应用范围,物流软件通常包含如下几个子系统:仓库管理系统 (Warehouse Management System, 简称WMS)、运输管理系统 (Transportation Management System,简称TMS)、
12、定单管理系统 (Order Management System,简称OMS)、服务管理系统 (Service Management System,简称SMS)。其中,仓库管理系统是提供一整套仓库业务以及作业的一种管理系统。通过使用仓库管理系统,企业可以实现库位分配的自动化和智能化,提高仓库作业效率和速度,同时还会为企业提供准确的库存信息,并使之与实际库存变化及时同步。根据相关统计,当前国内企业的物流支出成本是国外几倍,物流成本间的巨大差距,将我国企业在原材料和人力成本上的优势削弱,降低了我国企业在国际市场上的竞争力。当前国内的部分企业仍处于低水平的信息处理和分析阶段。信息的记录、收集、汇总方式
13、存在很多弊端:记录中的信息分散、格式随意、应用单一;收集时的不及时、不全面、不完善、保留不科学;汇总时的口径不一、主题多元、结果不一。落后的理分析方法和地下的效率,都使其难以长时间的受到各个企业的支持。1.2系统开发的意义随着企业生产规模不断的扩大,信息管理系统也发挥起了越来越重要的作用。作为企业信息管理系统关键组成部分,仓库管理系统的应用给企业带来了巨大的效益。仓库管理系统的使用将改变企业传统的手工记录模式,通过数据库技术来实现海量数据的存储与处理,可大幅度的缩短主要业务流程的处理时间,提高企业的工作效率,进而获得更高的经济效益。仓库管理系统通过对入库业务、出库业务、库存调拨、库存调整的管理
14、,同时结合批次管理、物料对应、库存盘点、质检管理、实时库存管理等功能的一个综合运用的管理系统。系统对全过程的库存物流和成本管理进行有效的控制和跟踪,可以实现完善的企业仓库信息管理。仓库管理系统的使用,将使仓库的管理更加规范化、正规化,为产品的库管理部门和销售部门提供了极大的方便,降低了仓库的损耗。于此同时企业还可以对售出的产品进行跟踪服务,很大程度的提高了办事效率,节省了费用。除此之外,详细的库管信息还避免了不必要的业务纠纷,为企业与用户建立长期的信任关系提供了基础。1.3论文的主要工作本论文以标准的仓库管理模式为原型,根据软件工程的原理,开发出的基于J2EE采用B/S结构的适用于中小型企业的
15、仓库管理系统。在分析仓库管理需求的基础上,对仓库管理系统进行了设计,基于J2EE对系统进行了实现,主要实现了仓库管理系统的可行性研究、需求分析,并根据需求分析对系统进行了数据库的建模工作,根据模型构建了数据库。后台数据库采用的是适合中小型企业的MySQL。系统根据实际需求划分为五个模块,人员管理模块、货物信息查询模块、货物入库模块、货物出库模块、货物盘点模块。其中,仓库人员管理模块用于管理仓库管理员相关信息,实现对人员进行管理。货物信息模块用于实现货物基础数据、货物信息查询等功能。货物入库模块用于实现登记入库记录的功能。货物出库模块用于实现仓库内的货物的出库记录功能。盘点功能模块通过定期对仓库
16、信息做清点,将仓库中的货物进出及当前仓库的存储情况有效的反应出来,方便仓库管理员有效的了解了货物的流通状况和仓库货物的损耗状况。对各个模块功能实现的基础上,对系统进行了黑盒测试,在测试对应功能的有效性的同时,也测试了系统对敏感数据的处理能力。1.4论文的结构本论文根据对仓库管理的实际操作流程和需求进行设计,基本实现对仓库中货物的出入库管理,查询及盘点等功能。论文全文分为六章,整体上依照软件工程原理的软件开发生命周期编写。第1章仓库管理系统的背景与意义,主要阐述了仓库管理系统在当前社会经济发展中对以企业的重要性,及系统开发的前景及重要意义。第2章相关技术介绍,对本论文中使用的主要技术进行了介绍,
17、阐述了B/S结构与C/S结构的区别,同时对MVC架构以及J2EE进行了简单的介绍。第3章仓库管理系统的分析,本章主要对系统的可行性进行了研究,同时对系统的需求进行了分析。第4章仓库管理系统的设计,根据需求分析,对系统内的实体、实体间的关系进行了研究,并根据实体间的关系设计了数据库表,同时对系统进行了模块划分。第5章仓库管理系统的实现,本章对每个模块的实现进行了描述,并对系统进行了测试。第6章结论与建议,对全文进行总结,并提出建议。第2章 相关技术介绍2.1 C/S结构与B/S结构软件开发主要有两种体系结构:客户端/服务器结构(Client/Server)、浏览器/服务器结构(Brower/Se
18、rver)。这两种结构各有其优缺点。2.1.1 C/S结构C/S结构是软件系统体系结构,通过这种结构可以充分利用两端硬件环境的优势,将任务合理的分配到Client端和Server端来完成,有效降低了系统的通讯开销。目前大多数应用软件系统都是C/S形式的两层结构的,而现在的软件应用系统正在向分布式的Web应用发展,Web应用和C/S应用都可以进行相同的业务处理,使用不同的模块共享逻辑组件。因此,内部用户和外部用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这是目前应用系统的发展方向。传统的C/S体系结构虽然采用开放的模式,但这只是在系统开发一级上的开放。而在特
19、定的应用中,无论是Client端,还是Server端都还需特定的软件来支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统开发不同版本的软件,加之产品的更新换代速度加快,已经很难适应多台电脑组成的局域网中用户同时使用的情况。2.1.2 B/S结构B/S结构即浏览器和服务器结构。它是伴随着网络技术的兴起,对C/S结构的一种演变结构。在这种结构下,用户工作界面是通过互联网浏览器来实现的。结合浏览器的多种Script语言(如VBScript、JavaScript等)和ActiveX技术,通过浏览器实现了原来需要复杂的专用软件才能实现的强大功能,极少部分的事务逻辑在前端实现
20、,主要事务逻辑在服务器端实现,形成了所谓三层结构。在B/S结构下,客户机上只要安装有浏览器(如Internet Explorer、Firefox、Google Chrome等),服务器安装数据库(如Oracle、Sybase、SQL Server等),浏览器就可通过eb Server 同数据库进行数据交互。这样便大大简化了客户端电脑工作量,减轻了系统维护与升级的成本,降低了用户的总体成本。B/S结构是一种全新的软件系统构造技术,随着各种操作系统已经将互联网浏览器植入操作系统内部,这种结构更将成为当今应用软件的首选体系结构。2.2 MVC架构风格MVC是Model(模型)、View(视图)和Co
21、ntrol(控制)的缩写。 MVC模式的目的是为了实现Web系统的职能分工:Model层是用来实现系统中的业务逻辑,通常可以使用JavaBean或EJB来实现;View层则用于与用户的交互,通常使用JSP来实现;Control层是Model与View之间沟通的纽带,它既可以分派用户的请求并选择恰当的视图以用于显示,同时也可以解释用户的输入并将它们映射为模型层的可执行操作。MVC组件之间的关系如图2.1所示。图2.1 MVC中各组件之间的关系2.2.1 MVC中的Model组件模型(Model)用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。模型有对数据直接访问的权力,例如对数据库的
22、访问。模型不依赖视图和控制器,即模型不关心它会被如何显示或是被如何操作。但是模型中数据的变化一般会通过一种刷新机制被公布,为了实现这种机制,那些用于监视该模型的视图必须事先在该模型上注册,这样视图就可以了解在数据模型上发生的改变。模型是业务流程/状态的处理以及业务规则的制定业务流程的处理过程,对于其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计是MVC最主要的核心,目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架,它仅仅告诉你按这种模型设计就可以利用某些技术组件,从
23、而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。2.2.2 MVC中的View组件视图(View)是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面。而在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术也是层出不穷,如Macromedia Flash、XHTML、XML/XSL、JSP、ASP、WML等的一些标识语言以及Web services。如何处理应用程序的界面也就因此变得越来越有挑战性。MVC一个大的好处是它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一
24、个数据库表,作为视图来讲,它只是作为一种输出数据并且允许用户操纵的方式。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理也仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理是交予模型来处理的,比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型 2.2.3 MVC中的Control组件控制(Control)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉程序设计者,它就是一个分发器
25、,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求控制层,而并不做任何的数据处理。例如,用户点击一个连接,控制层受到请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可以对应多个视图,一个视图可以对应多个模型。控制器掌管着用户的请求,当用户点击图形用户界面上的元素执行操作时,控制器会收到HTTP GET或者POST请求。它的主要功能就是调用并协调需要的资源/对象来执行用户的请求。通常控制器会为任务调用合适的模型,以及选择合适的视图。2.3 J2EE体系结构J2EE是Java 2 Platform Enterprise
26、 Edition(Java2平台企业版)的缩写,是一组技术规范与指南。其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。J2EE体系结构提供中间层集成框架来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。
27、J2EE使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分布在不同的机器上。事实上,SUN公司设计J2EE的初衷正是为了解决两层模式(Client/Server)的弊端。在传统模式中,客户端担当了过多的角色而显得臃肿,在这种模式中,第一次部署的时候比较容易,但难于升级或改进,可伸展性也不理想,而且经常基于某种专有的协议通常是某种数据库协议。它使得重用业务逻辑和界面逻辑非常困难。现在J2EE 的多层企业级应用模型将两层化模型中的不同层面切分成许多层。一个多层化应用能够为不同的每种服务提供一个独立的层。J2EE具备典型的四层结构。第一层是运行在客户端机器上的客户层组
28、件。第二层是运行在J2EE服务器上的Web层组件,J2EE web层组件可以是JSP 页面或Servlets按照J2EE规范,静态的HTML页面和Applets不算是Web层组件。第三层是运行在J2EE服务器上的业务逻辑层组件,用来满足银行,零售,金融等特殊商务领域的需要,由运行在业务层上的Enterprise Bean进行处理。第四层则是运行在EIS服务器上的企业信息系统(Enterprise Information System)层软件,包括企业基础建设系统例如企业资源计划 (ERP),大型机事务处理,数据库系统,和其它的遗留信息系统。图2.2中表明了一个Enterprise Bean 是
29、如何从客户端程序接收数据,进行处理(如果必要的话),并发送到EIS层储存的过程,这个过程也可以逆向进行。图2.2 J2EE四层模型示意图第3章 仓库管理系统的分析3.1系统的可行性研究由仓库管理系统的需求结合实际客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量发现此系统具备技术可行性。仓库管理系统是一个数据库管理和查询的系统,以现有的技术的成熟度,和当前硬、软件的性能等各项条件均可满足系统开发测需求,利用现有技术条件可以完全达到系统所要求的各项功能目标。通过估算新系统的成本效益分析,如项目开发的成本,开发费用和今后的运行、维护费用,及对新系统所获得的效益的估算,可以得出开
30、发成本会在可接受的时间内收回,并且系统会在成本收回后得到可观的收益,具备经济可行性。系统开发的大体上包括支出:基础硬件设备支出、相关软件支出、及软件设计和开发费用等。而系统的收益可从经济效益和社会效益两方面考虑:系统应用后仓库管理效率得到提升,人力资源配置将趋于合理化,减少了不必要的支出,同时还会提升整体的工作效率;而系统投入后科学化、现代化的仓库管理系统会为企业带来额外的形象收益。仓库管理系统的开发过程充分考虑仓库管理人员原有的工作习惯,将原来手工及记录查询方式转换为现代化的方式,不会很大程度上的改变原有的工作方式,只要经过简单培训便可以迅速掌握仓库管理系统的使用方法。且新系统的研制和开发都
31、充分考虑到了工作人员对仓库管理及查询的时效性,具备很强的操作可行性。3.2系统的需求3.2.1功能性需求(1)货物入库和出库的管理需求货物存放在仓库中,货物无论是进入仓库还是从仓库中出库都要进行登记记录,货物的出入库登记管理是仓库管理的主要内容。货物入仓从货物提交开始。申请人向仓库管理员提交入库申请单和货物,入库申请单上记录了本次需要入库的货物名称、数量、提交货物的单位、执行提交货物的人员以及相关的注意事项等信息。仓库管理员以送货人员提供的入库申请单为准,对待入库的货物进行检查。核实待入库货物与入库申请单上的货物信息一致时,便允许入库;若实际的货物信息与申请单不符,此批次货物会被禁止入库,直至
32、货物信息与入库申请单内信息完全一致为止。对于允许入库的货物,执行库管需要对货物的信息进行登记,登记信息包括:入库货物名称、数量、入库时间、送货入库人员的信息、执行货物入库人。完成登记后,便可将货物存入仓库中。货物安全存入仓库后,执行完入库操作的仓库管理人员便可以为提出入库申请的入库人员提供入库单,到此入库流程结束。货物从仓库中出库从提交出库申请开始。对货物有需求单位的出库人员向执行出库操作的仓库管理员提交出库申请单。出库申请单上记录了本次申请出库的货物名称、申请出库的数量、申请出库的单位、执行出库申请的人员等信息。执行出库的仓库管理人员核实出库单的真伪后,依据出库申请单上要求出库的货物信息查找
33、仓库中相关货物的信息和库存数量。如货物存在且库存数量满足出库申请单上的需求数量,则执行出库操作的仓库管理员保存出库申请单并进行出库登记。出库登记中记录出库货物的名称、数量、出库后剩余数量、出库时间、货物去向、出库的仓库、执行出库的仓库管理员等信息。进行出库登记后,便可将货物出库,出库结束后,执行仓库管理员会给出库申请人提供出库单,到此出库流程结束。(2)货物的查询与盘点需求仓库的管理人员要能够及时掌握仓库内存储的货物信息、入库记录和出库记录等信息,这样才可以及时地了解仓库的运行现状,使仓库处于良好的运行状态之中。同时,仓库还会定期对仓库内存储的货物进行盘点,盘点的目的是将仓库中的货物记录数据及
34、当前仓库的存储实际情况有效的反应出来,方便仓库管理员有效的了解了货物的流通状况和仓库货物的损耗状况。由此可见,在仓库管理过程中,仓库货物信息查询和盘点功能都是十分必要。(3)仓库的相关信息管理需求仓库主要用途是存放货物,对于存放在仓库中的这些货物本身的信息,对于仓库的管理还说也是非常重要。除此之外,仓库管理系统还必须对其他的相关信息进行管理。如仓库管理员的相关信息,仓库本身的相关信息等,也是仓库管理系统必须具备的功能。管理员是仓库管理的主要操作者,也是保证仓库能够正常运转的重要环节,合理的管理管理员信息,方便管理员实现对仓库管理是仓库管理的前提。3.2.2系统的性能需求仓库管理系统除了上面提到
35、的对系统需要实现的功能的需求外,还有一些非功能性需求也是不能被忽略的。首先是功能性,功能性指与一组功能及其指定的性质有关的一组属性,这里的功能是指满足明确或者隐含的需求的那些功能。包括适合性、准确性、互操作性、依从性、安全性等。适合性是指与规定任务能否提供一组功能,以及这组功能的适合程度有关的软件属性。准确性是指能否得到正确或者相符的结果或者效果有关的软件属性。互操作性是指定系统进行交互的能力有关的软件属性。依从性是使软件遵循有关的标准约定法规及类似规定的软件属性。安全性是与防止对程序技术局的非授权的故意或者意外的访问能力有关的软件属性。第二是可靠性,可靠性之与在规定的一段时间和条件下的软件维
36、持其性能水平的能力有关的一组属性。包括成熟性、容错性、已恢复性。成熟性指的是与有软件故障引起失效的频度有关的软件属性。 容错性是与在软件故障或违反指定接口的情况下维持规定的性能水平的能力有关的软件属性。易恢复性则是与在事故发生后重建其性能水平并恢复直接受影响数据的能力,以及为达到此目的所需时间和努力有关的软件属性。第三是易用性,易用性是与一组规定或者潜在的用户为使用其软件所需做的努力和对这样的使用所作的评价有关的一组属性。包括易理解性、易学习性、易操作性。易理解性是与用户为人质逻辑概念即其应用范围所花的努力有关的软件属性。易学习性是与用户为学习软件应用所花的努力有关的软件属性。易操作性是与用户
37、为操作和运行控制所花的努力有关的软件属性。第四是效率,效率是指与在规定的条件下软件的性能水平与所使用资源量有关的一组属性。包括时间特性、资源特性。时间特性为与软件执行器功能时响应和处理时间及吞吐量有关的软件属性。资源特性是与在软件执行其功能时所使用的资源数量及其使用时间有关的软件属性。第五维护性,维护性是指与进行指定的修改所需的努力有关的一组属性。包括易分析性、易改变性、稳定性、易测试性。易分析性是与为诊断缺陷或者失效原因及为判定待修改的部分所需努力有关的软件属性。易改变性为与进行修改排除错误或者适应环境变化所需努力有关的软件属性。稳定性指的是与修改所造成的未预料结果的风险有关的软件属性。易测
38、试性是与确认已修改软件所需的努力有关的软件属性。最后是可移植性,可移植性是指与软件可从某一环境转移到另一环境的能力有关的一组属性。包括适应性、易安装性、遵循性、可替换性。适应性是与软件无需采用有别于为该软件准备的活动和手段就可能适应不同的规定环境有关的软件属性。易安装性则是与在指定的环境下安装软件所需努力有关的软件属性。遵循性指使软件遵循与可移植性有关的标准或约定的软件属性。可替换性为与软件在该环境中用来替代指定的其他软件的机会和努力有关的软件属性。3.3需求分析3.3.1系统流程由需求分析可得到仓库管理系统的系统流程图,如图3.1所示。图3.1 系统流程图在系统流程图中,描述了系统中入库(出
39、库)流程、查询流程以及盘点流程。在入库流程中,先对入库申请信息进行核实,与实际货物信息相符后,将入库信息录入,然后进行入库,同时更新数据库,打印出入库单。出库流程同入库流程。查询流程需要输入要查询的关键信息,然后在数据库中进行查询,查询结果将会显示在显示器上。盘点流程与查询流程类似,将盘点后的实际信息输入,会与记录的信息进行比较,得到损耗数量等信息,并将盘点信息显示在显示器上。3.3.2数据流由需求分析还可得到仓库管理系统的数据流图,如图3.2所示。图3.2 数据流图在系统的数据流图中,描述了系统中的库(出库)、查询、盘点等信息数据被处理的过程。仓库管理员登陆系统后,会根据执行的管理项目的不同
40、,选择对应的操作,但是各个流程的数据流动方式大体上是相同的,都是管理员执行相关操作后,直接对相应的数据库表进行操作即可,不同的是入库(出库)操作仅仅是对数据库进行更新,查询操作是对的数据库的查询,而盘点操作即会查询数据库也会对数据库进行更新。第4章 仓库管理系统的设计4.1 数据库设计数据库是按照一定数据结构来组织、存储和管理数据的仓库。数据库跟传统的手工记录相比具备很多优点。数据库是以数据为中心组织数据的,其所采用的数据模型不仅要描述数据本身的特点,而且要描述数据之间的联系。数据库中的数据具备冗余小,易修改、易扩充等特点。不同的应用程序可以根据处理要求,从数据库中获取需要的数据,这样就减少了
41、数据的重复存储,也便于增加新的数据结构,便于维护数据的一致性。4.1.1 实体的关系根据需求可以得到,仓库管理系统中的主要实体有员工、仓库、货物信息、库存记录、盘点。其中员工跟仓库之间是多对一关系、仓库跟货物信息是多对多关系、货物信息跟库存记录是多对多关系、货物信息跟盘点时多对多关系。根据各个实体间的关系可以得到E-R图,见图4.1。在E-R图中,每个实体对应的属性如下:员工员工号、员工姓名、性别、密码、联系方式、备注仓库仓库编号、仓库名、负责人、仓库地址货物信息货物编号、货物名称、货物种类、货物规格型号、单位体积、默认供应商、最低库存量、建档人、更改人、更改时间、上次盘点时间货物储存货物编号
42、、仓库编号、数量库存记录单据号、单据类型、操作员、时间、供应商、订货单号、收货单号、发货单号、发票号、备注库存记录明细单据号、货物编号、计量单位、货物单价、货物数量盘点盘点单号、盘点日期、盘点人、仓库编号 盘点明细盘点单号、货物编号、账面数量、实际数量、盘点日期、调整数量、损耗率、损耗原因图4.1 仓库管理系统E-R图4.1.2数据库表的设计员工表(EMP)用于记录员工的相关信息,表中的属性包括:员工号、员工姓名、性别密码、联系方式、备注。其中主键为员工号(empCode),详细信息记录于表4.1。表 4.1员工表(EMP)列名数量类型长度允许空默认值说明empCodechar8员工号empN
43、amevarchar10员工姓名empSexchar2NULL性别Passwordvarchar20123密码empTelvarchar15联系方式Memovarchar100NULL备注仓库表(WH)用于记录仓库的相关信息,表中的属性包括:仓库编号、仓库名、负责人、仓库地址。其中主键为仓库编号(whID),详细信息记录于表4.2。表4.2仓库表(WH)列名数据类型长度允许空默认值说明whIDchar4仓库编号Namevarchar20仓库名whPersonvarchar10负责人whAddrvarchar100仓库地址货物信息表(GDMESS)用于记录仓库中货物的信息,表中的属性包括:货物编
44、号、货物名称、货物种类、货物规格型号、单位体积、默认供应商、最低库存量、建档人、更改人、更改时间、上次盘点时间。其中主键为货物编号(goodsID),详细信息记录于表4.3。表4.3货物信息表(GDMESS)列名数据类型长度允许空默认值说明goodsIDchar8货物编号goodsNamevarchar30货物名称goodsClassvarchar10货物种类goodsStdvarchar20货物规格型号VolumedoubleNULL单位体积Vendorvarchar20默任供应商lowQuantityint最低库存量列名数据类型长度允许空默认值说明Buildervarchar10建档人mo
45、diPersonvarchar10NULL更改人modiTimedatetimeNULL更改时间lastCleckTimedatetimeNULL上次盘点时间货物存储表(GDST)用于记录仓库与货物的存储关系,表中的属性包括:货物编号、仓库编号、数量。其中联合主键为货物编号(goodsID)和仓库编号(whID),详细信息记录于表4.4。表 4.4货物储存表(GDST)列名数据类型长度允许空默认值说明goodsIDchar8货物编号whIDcahr8仓库编号Quantityint数量库存记录表(MSTOCK)用于记录仓库与货物的存储关系,表中的属性包括:单据号、单据类型、操作员、时间、供应商、
46、订货单号、收货单号、发货单号、发票号、备注。其中主键为单据号(Code),详细信息记录于表4.5。表4.5库存记录主表(MSTOCK)列名数据类型长度允许空默认值说明Codechar8单据号vouchTypechar8单据类型Operatorvarchar10操作员opTimedatetime8时间Vendorvarchar30NULL供应商orderCodechar8NULL订货单号receiveCodechar8NULL收货单号dispatchCodechar8NULL发货单号invoiceCodechar8发票号Memovarchar100NULL备注库存明细表(STOCK)用于记录货物
47、存入仓库是的信息,表中的属性包括:单据号、货物编号、计量单位、货物单价、货物数量。其中联合主键为单据号(Code)和货物编号(goodsID),详细信息记录于表4.6。表4.6库存明细表(STOCK)列名数据类型长度允许空默认值说明Codechar8单据号goodsIDchar8货物编号Unitchar8计量单位Quantityint货物数量盘点表(MCHECK)用于记录盘点时的相关信息,表中的属性包括:盘点单号、盘点日期、盘点人、仓库编号。其中主键为盘点单号(CVCode),详细信息记录于表4.7。表4.7盘点表(MCHECK)列名数据类型长度允许空默认值说明CVCodechar8盘点单号C
48、heckDatedatetime盘点日期checkPersonvarchar20盘点人whIDchar8仓库编号盘点明细表(CHECKVOUCHS)用于记录盘点的详细信息,表中的属性包括:盘点单号、货物编号、账面数量、实际数量、盘点日期、调整数量、损耗率、损耗原因。其中联合主键为盘点单号(CVCode)和货物编号(goodsID),详细信息记录于表4.8。4.8盘点明细表(CHECKVOUCHS)列名数据类型长度允许空默认值说明CVCodechar8盘点单号goodsIDchar8货物编号bookQuantityint帐面数量actQuantityint实际数量checkDatedatetim
49、e盘点日期adjQuantityint调整数量Wastedouble损耗率Reasonvarchar100NULL损耗原因4.2模块设计仓库管理系统包含的模块有:仓库人员管理模块、货物信息管理模块、入库功能模块、出库功能模块、盘点功能模块。根据系统的划分,可得到系统的功能层次图,如图4.2所示。图4.2 系统功能层次图仓库管理系统被划分为三大块,人员管理、货物信息管理、仓库管理。仓库人员管理模块用于管理仓库管理员相关信息,方便对人员进行管理。货物信息模块用于实现货物基础数据、货物信息查询等功能,方便仓库管理员及时了解库存信息。仓库管理模块包括了入库模块、出库模块、盘点模块。入库功能模块用于实现
50、登记入库记录的功能。登陆的信息包括:入库单据信息、入库数量信息、入库时间信息、执行入库操作的仓库管理员信息和货物存放仓库的信息等。入库登记时所产生的货物入库记录将为以后进行入库货物的查询和出库操作提供数据支持,以便仓库管理人员能够掌握仓库内存储的货物情况。出库功能模块用于实现仓库内的货物的出库记录功能。记录的信息包括:出库申请单据信息、出库数量信息、出库时间信息、执行出库操作的仓库管理员信息和货物剩余信息等。出库功能以入库登记功能所产生的入库记录数据为依据,产生相应的货物出库记录,并将出库信息记录存入系统。盘点功能模块通过定期对仓库信息做清点,将仓库中的货物进出及当前仓库的存储情况有效的反应出
51、来,方便仓库管理员有效的了解了货物的流通状况和仓库货物的损耗状况。第5章 仓库管理系统的实现5.1系统实现的环境本系统是在同一台机器上模拟实现的,因此实现平台的硬件均为采用Intel双核2.0GHz的CPU, 内存为2.0G。模拟平台采用的操作系统为Windows7(32位),浏览器为Internet Explorer 9.0,数据库采用的是MySQL5.0,服务器使用的Tomcat7.0,使用的开发工具为MyEclispe 8.5。5.2系统模块的实现5.2.1人员管理人员模块主要是用于仓库管理员日常登陆管理系统,主要用于管理员身份识别,保证系统的安全性。当仓库管理员登陆模块在管理员登陆时,
52、调用数据库中员工表中的信息,核对管理员身份和密码正确后便可进入系统。人员登陆系统的主要程序流程如图5.1所示。图5.1 人员登陆程序流程图系统的主页即为系统登录页面,仓库管理员通过用户名密码进行登录。登录系统后,管理员即可进行仓库内货物的查询,管理等操作。5.2.2货物存储信息查询货物存储信息的查询用于查询货物存储表里的信息,货物出入仓库后可对货物状态进行查询。如果所查询的货物不在货物存取表中,那么该货物也就不会存在其它对应此货物的数据库表中。当执行货物存储信息查询时,调用的数据库表为货物信息表。存储信息查询程序流程图如图5.2所示。图5.2存储信息查询程序流程图执行查询操作时,可以根据货物编
53、号、货物名称、货物种类、单据号、发票号供应商、更改时间、盘点时间、损耗率等关键字对仓库内的货物信息进行查询。查询时,可以使用单一关键字,也可使用多个关键字。查询时,将货物信息表、库存明细表、库存记录表、库存记录表、盘点明细表、盘点表连接在一起。5.2.3货物入库当某种货物入库时,只需按入库申请书将入库信息输入系统,数据库更新后,入库操作即完成。入库程序流程图如图5.3所示。图5.3 入库程序流程图核对入库申请单信息正确无误后,根据申请单上的内容,输入收货单号、发票号、供应商、货物名称、货物编号、货物种类、货物规格型号、单位体积、数量。信息输入完成后,执行入库,将表单提交给数据库,将对应的表进行
54、更新。货物信息表中货物编号、货物名称、货物种类、货物规格型号、单位体积、默认供应商等信息根据所填写的内容进行更新,而建档人和更改时间则根据当前用户和当前时间系统自己调用。库存记录表中单据号、供应商、收货单号、发票号等信息根据输入内用更新,单据类型默认为入库单,操作员、时间系统根据当前用户和时间自动填加。库存记录明细表中单据号、货物编号、计量单位、数量等信息根据填写内容进行更新。货物存储表中的数量为原始值加上此次入库的数量值。数据库表更新完成后,入库操作即为完成。货物入库操作界面截图如图5.4所示。图5.4 入库操作界面5.2.4货物出库当库存中某种货物需要出库时,需要输入库存记录的信息,并同时输入相应货物的出库信息,保存到数据库相应表中即完成出库操作。执行出库操作信息核对时需要查询货物存储表中相关货物的数量,计算出库存量是否满足出库数量,如果数量允许出库,则更新货物信息表、库存记录表、库存记录明细表、货物存储表等。提交表单后,先查询货物存储表中数量中的数值,确定所要出库的货物总量是否满足出库需求,如果不满足则提示错误,无法出库。如果满足需求,则根据出库数量,更改货物存储表中的数量值,同时生成出库单,出库单中的发货单号为填写的内容,其余项如:货物名称、货物编号、货物种类、货物规格型号、单位体积、更改人、时间等信息根据表单中的实际信息及当前管理员
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学数学大单元教学中的学生差异化需求分析
- 养老工作课件
- 楷书作品培训课件图片
- 计算机一级《WPS》考试题库及答案
- 互联网广告精准投放算法在2025年的效果评估与优化市场动态与趋势报告
- 2025年能源行业储能技术多元化发展趋势下的产业链分析报告
- 2025年电商平台数据挖掘在个性化营销策略中的应用报告
- 互联网金融平台合规整改与可持续发展:2025年行业合规监管政策解析报告
- 养老培训课件图片
- 互联网金融平台资金存管业务流程优化与安全保障报告
- 《车用动力电池回收利用单体拆解技术规范》
- 防水堵漏工程定额
- 旅游定制师入行培训方案
- 运输大巷揭煤地质说明书(F99)揭煤地质说明书
- 肝恶性肿瘤护理查房课件
- 工作中怎么拍照(摄影技巧)
- 空调电缆施工方案
- 小升初个人简历模板下载
- 答辩过程记录表
- 上海民办尚德实验学校小升初数学期末试卷检测题(Word版-含答案)
- 明渠均匀流计算公式
评论
0/150
提交评论