2022年物流仓储管理信息系统 .pdf
第 1 章绪论1.1 开发背景随着我国市场经济的发展和人们对产品需求的迅速增加,物流仓储行业正处于一个高速发展的时期。行业的快速发展必然导致竞争的加剧,要想在激烈的市场竞争中谋求发展,客观上要求企业必须加强内部管理,提高运营效率。而我国大部分物流仓储企业虽然经营实现了专业化,但是从信息机制上还没有摆脱传统的管理模式,企业内部没有形成完善、有效的激励和约束的信息化管理机制,企业发展的动力不足,从而影响了企业的持续、稳定、快速的发展。在这样的背景下,进行物流仓储管理信息系统的开发,主要是为了物流仓储管理员更加科学的进行货物管理,可以做到是货物信息的及时处理,信息的实时维护及在物流仓储管理信息系统条件下进行科学的货物管理。1.2 系统发展现状随着计算机技术的发展,网络技术的广泛应用,计算机技术已经涉及到现代企业管理的各个环,企业管理系统相继的出台,货物信息的管理在计算机技术的推动下,由简单的人工单据的手写发展到了货物信息的存储和打印;对货物的管理也由传统的管理模式到了计算机的数据管理,整个货物的管理走上了数字化的管理模式。随着经济的发展,物流仓储管理信息系统应运而生。近年来,由于物流业发展迅速,要求对物流仓储也越来越高,以前的人工记录已经不能满足要求了,所以物流仓储信息系统应运而生,并取得了一定的成绩,但具体环节的操作还不成熟。1.3 系统开发方法的选择管理信息系统(MIS)的开发方法主要有:结构化生命周期开发方法、原型法、面向对象的开发方法等。(1)结构化生命周期开发方法基本思想:用系统工程的思想和工程化的方法,按用户至上的原则,结构化、模块化、自顶向下地对系统进行分析和设计。具体来说,就是先将整个信息系统开发过程划分出若干个相互独立阶段,如系统规划、系统分析、系统设计、系统实现等。这种方法的突出优点就是它强调系统开发过程的整体性和全局性,强调在整体优化的前提下来考虑具体的分析设计问题,即自顶向下的观点。它强调的另一个观点是严格地区分开发阶段,强调一步一步地严格地进行系统分析和设计,每一步工作都及时地总结,发现问题及时地反馈和纠正。这种方法避免了开发过程的混乱状态,是一种被广泛采用的系统开发方法。(2)原型法原型法是指借助于功能强大的辅助系统开发工具,按照不断寻优化的设计思想,通过反复的完善性实验而最终开发出来符合用户要求的管理信息的过程和方法。(3)面向对象的系统开发方法名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 27 页 -面向对象方法(Object Oriented,简称 OO 方法)从面向对象的角度,为人类认识事物进而开发系统提供了一种全新的方法。它分为系统调查和需求分析、分析问题的性质和求解问题、整理问题、程序实现四个阶段。在开发本系统时,采用的是结构化生命周期开发方法,将系统开发过程划分为五个独立的、依次连接的阶段,即系统规划、系统分析、系统设计、系统实现,自顶向下地进行系统的设计。1.4 系统开发工具和技术介绍以及数据库产品的选择物流仓储管理信息系统的开发,严格地遵循了软件工程的管理模式,前台采用了 JSP面向对象的编程语言,后台采用 SQL Server 2000数据库并以 MyEclipse为系统开发平台,从技术上保证了系统的稳定性和可靠性。1.4.1 软件开发工具的选择在物流仓储管理信息系统的开发过程中,所采用的前端开发工具是Jsp之所以会选择 Jsp,是因为其具有以下特点:(1)JSP是一种面向对象的开发工具,软件的重用性有很好的支持;(2)JSP提供了对目前流行的大多数数据库管理系统的支持;(3)JSP提供了良好的跨平台性;1.4.2 系统所用技术介绍JSP 概述按照脚本语言是服务于某一个子系统的语言这种论述,JSP应当被看作是一种脚本语言,然而,作为一种脚本语言,JSP又显得过于强大了,在JSP中几乎可以使用全部的 Java 类。作为一种基于文本的、以显示为中心的开发技术,JSP提供了 Java Servlet的所有好处,并且,当与一个JavaBeans 类结合在一起时,提供了一种使内容和显示逻辑分开的简单方式。分开内容和显示逻辑的好处是,更新页面外观的人员不必懂得Java 代码,而更新 Java Beans类的人员也不必是设计网页的行家里手,就可以用带 JavaBeans 类的 JSP页面来定义 Web模板,以建立一个由具有相似的外观的页面组成的网。JavaBeans 类完成数据提供,这样在模板中就没有Java代码,这意味着这些模板可以由一个 HTML 编写人员来维护。当然,也可以利用Java Servlet来控制网站的逻辑,通过 Java Servlet调用 JSP文件的方式来将网站的逻辑和内容分离.。这种分离网站的逻辑和内容的设计方法做一些更深入的描述。在选择使用一个Java Servlet,还是一个 JSP 页面时,要记住的是,Java Servlet是一个程序设计工具,它最适用于不需要频繁修改的低级应用功能;而 JSP页面则通过以显示为中心的描述性的方法将动态内容和逻辑结合在一起。对于使用一个JSP 页面的简单的基于Web 的应用程序,可以使用定制标记或者 S criptlet,而不是使用 JavaBeans类来将内容与应用逻辑结合起来。通常说来,JSP页面一般是翻译为Servlet的 Java源文件,再经过 Java编译器编译为Servlet 的 class文件。为什么要编译为 Servlet 呢?据说是为了让原先的Servlet引擎可以直接服务于 JSP,而 JSP引擎就仅仅需要将JSP转译为 Servlet就可以了。1.4.3 数据库产品的选择系统设计采用 SQL Server 2000为后台数据库,充分显示了其功能的强大和完备。SQL Server 2000是一个关系型数据库管理系统,是基于Windows NT/2000 操作系统中重要的后台数据库解决方案之一。它提供了在服务器上运行的服务器软件和在客户端运行的客户端软件,SQL Server 2000的客户/服务器提供了许多传统主机数据库所设有的名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 27 页 -先进功能。SQL Server 2000的一个主要优点就是与主流客户/服务器开发工具和桌面应用程序的紧密集成。作为 C/S 的数据库系统,SQL Server2000的特性主要有:(1)Internet 集成。SQL Server 数据库引擎提供完整的XML 支持。(2)可伸缩性和可用性。用一个数据库引擎可以在不同的平台上使用,从运行Windows 98 的便携式电脑到运行 Windows 2000 数据中心版的大型多业务处理器服务器。(3)企业级数据库功能。SQL Server 2000关系型数据库支持当今苛刻的数据处理环境所需的功能,它充分保护数据库完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。(4)易于安装、部署和使用。(5)数据仓库。基于以上所述的SQL Server 2000 的诸多特性,在系统开发时,选择了SQL Server 2000 作为后台数据库,以配合 JSP这一面向对象的编程语言共同完成系统的开发和实际工作。1.5 系统配置1)系统硬件配置(1)一台微机(包括主机、显示器)。(2)打印机。(3)适配器、电缆等其它网络配件。2)软件配置(1)中文多用户操作系统。(2)SQL Server数据库。(3)其它应用软件,如MyEclipse。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 27 页 -第 2 章 需求分析2.1 系统可行性分析所谓可行性是指在组织内外当前的具体条件下进行某项目的必要性和可能性。可行性研究是指按照各种有效的方法和工作程序,对拟建项目在技术上的先进性、适应性,经济上的合理性、盈利性,以及项目的实施等方面进行深入的分析,确定目标,提出问题,制定方案和项目评估,从而为决策提供科学依据。(1)经济上可行性A、做为一个物流仓储管理企业或行业,企业完全有能力承担开发费用;B、物流仓储管理信息系统中的仓库管理,大大地减少了手工的管理,也就减少了企业所面对的人工工资开销;C、物流仓储的日常管理可以做到企业对货物的安全,有条理管理的积累,一些数据还可以为企业的各项决策提供宝贵的资料,带来巨大的经济效益。由以上两方面可以看出,本系统在经济上是可行的。(2)技术上可行性使用 Jsp作为系统开发的开发环境,它是一个面向对象的数据库应用系统开发工具,利用它开发功能强大的、运行在跨平台的、能够操作多个数据库的应用系统,还可以开发客户/服务器、分布式和因特网应用系统等。另外采用SQL Server 2000作为后台数据库,可以为用户提供业界软件开发一直坚持的非常友好、操作简单的用户界面、完善强大的数据库操作功能和简洁明了的数据库接口。综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,在技术上是可行的。(3)运行上可行性物流仓储管理信息系统,所耗费的资源非常的小,对电脑的配置要求非常的低,所以现在的电脑配置无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。(4)操作上可行性本系统的研制和开发充分考虑了用户的业务往来、管理流程和人员素质等,从而能满足使用要求。系统的操作方式在用户组织内可行。2.2 系统的总体目标以计算机为基础的物流仓储管理信息系统的开发,通过对所有货物入库、出库、库存的实时的追踪与控制,不但可以有效地控制管理采购、出库、库存和货物管理等各项业务,同时也可以为货物经营管理层提供高效的决策功能,从而进一步地提高了物流仓储业在整个商业竞争中的竞争力。物流仓储管理信息系统的开发,具体将实现以下标准:(1)系统运行稳定,安全可靠;(2)界面设计美观,人机交互界面友好;(3)信息查询灵活、方便、快捷、准确,数据存储安全可靠;(4)满足键盘和鼠标的双重操作,完全支持回车键;(5)信息安全保密。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 27 页 -本系统将着重从两个方面来实现本次设计的任务:货物在仓库基本信息的管理和货物库存量管理。通过不断的学习和研究,结合任务书的要求,本课题主要实现以下几个方面的目标:(1)全面、规范、完善的货物基础信息管理;(2)合理的权限设置;(3)全方位的快速查询,提高工作效率;(4)对货物的质量、档案、货物的停售和库房货物量进行系统管理;(5)从货物的订购、入库、库存到出库形成一套严密、科学、完善的管理体系。2.3 系统功能分析表 2-1 系统功能分析表模块详细功能描述订货管理查询档案信息:可根据货名查询;增加档案信息:对新的货物信息进行档案新增;删除档案信息:对货物信息的更改维护;修改档案信息:对货物信息的更新,维护。进货管理查询:查询已经入库的信息;入库:对新购物品进行入库。货物出库管理货物出库:对现有库存的货物进行数据出库;出库信息的查询:对已经出库的货物记录查询。货物信息的修改:对出库后的货物及时更新。货物库存管理查询:对现存的货物进行查询;删除:对仓库中的货物、帐对数的盘点;修改:对仓库中的货物、帐对数的盘点。查询管理在本模块中,主要支持管理员对货物的信息核对系统管理是针对登录后使用本系统过程中,更换操作员的操作。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 27 页 -第 3 章 系统分析3.1 系统的任务分析根据本课题的任务要求:(1)充分利用所学知识:JSP和 SQL Server 2000,来完成系统的设计工作;(2)实现系统基本功能:用户登录、订货管理、进货管理、库存管理、出库管理、查询管理及系统管理等功能。可以实现货物信息、仓库及管理员之间信息的沟通;针对任务书的要求,首先,本次设计是用 JSP做界面设计,servlet 和 SQL Server 2000做后台支持的。JSP具备良好的界面设计功能,可以把界面设计的更加的清晰、友好,功能代码基本可以实现软件开发的需求;SQL Server 2000具有强大的数据读取、存储、查询功能,SQL Server 2000事件语句相对比较简单,容易实现。其次,根据系统功能要求,本次设计主要实现如下五个方面的功能:(1)实现用户的登录:根据登录身份,对系统有操作权限;(2)实现采订货管理:根据库存量对外进行购货订单(3)实现进货管理:根据订货清单,进行货物验收(4)实现出库管理:根据需求将出库货物出库(5)实现库存管理:对货物的日常管理。3.2 业务流程分析1、本系统中的仓储业务流程如下图:图 3-1 货物信息流程图货物信息物流仓储管理信息系统货物订单管理货物进货管理货物入库管理货物库存管理货物出库管理货物查询管理系统管理员管理员登录名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 27 页 -2、货物业务流程分析:从开始订货,管理员根据需要从外面商家下订单,经双方协商好后制定一张订单表格,将所需的货物信息,录入数据库。等发货商将货物送来后,进行核对无误后,将所定货物按规定,存入指定地点,并将订单表和进货表核对,经核对无误后,将其录入数据库中货物需要出库,则有出库人,填写出库清单,管理员进行出库信息处理,货物放可以出库。3.3 系统逻辑模型新系统逻辑模型的提出,是以现行系统的数据流程图为基础,并以新系统的目标为依据,逐渐修改现行系统的数据流程图来实现的。在本系统的开发过程中,即采用了结构化分析中的一种最基本、最重要的工具数据流图和数据字典来进行系统分析,按照软件内部数据传递、变换的关系,自顶向下逐层分解,进而得到了系统的逻辑模型。3.3.1 系统的数据流图及数据字典一个基于计算机的信息处理系统由数据流和一系列的转换构成,这些转换将输入数据流变换为输出数据流。数据流图就是用来刻画数据流和转换的信息系统建模技术的。它用简单的图形记号分别表示数据流、转换、数据源以及外部实体。数据流图是直接对一些属性和内容抽象的概括。SA 使用数据字典对数据流名、数据存储名、数据项名、基本加工进行详细说明。系统采用的是面向数据流的需求分析方法,通过数据流图和数据字典的配合使用,来完成需求分析阶段所要解决的问题。一、顶层数据流图顶层数据流图是描述系统总体数据流向和处理的,具体可用下面的图3-2 来表示:图 3-2 物流仓储管理信息系统顶层流程图相应数据字典为:数据项条目:1、用户名称别名:用户名称类型:字符型(varchar)长度:10 简述:唯一标识一个管理员物流仓储管理信息系统用 户登录信息反馈信息名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 27 页 -组成:企业自行规定2用户密码别名:密码类型:字符型(varchar)长度:10 简述:登录凭证组成:管理员自己设定加工条目:加工名:登录加工编号:p0 输入数据流:用户名、密码输出数据流:相关登录信息加工逻辑:根据管理员信息,检索相应数据库表项并返回相关信息数据存储条目:文 件 名:密码表组成:用户名称+密码组织方式:以用户名称为关键字二、第 1 层数据流图第 1 层数据流图介绍了用户在进入系统后所能处理的基本数据及其流向,具体可用下图 3-4 来表示:图 3-3 物流仓储管理信息系统第一层流程图新货物信息入库信息新货物货物入库库存信息出库信息库 存管理出 库管理出库记录库存入库记录订货记录订 货管理查询/入 库管理物流仓储管理信息系统出库库存名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 27 页 -三、子功能数据流图在本层数据流图中,将细化上一层的各个模块的具体功能。在此就以货物档案为例,其数据流图如下所示:图 3-4 物流仓储管理信息子功能流程图相应的数据字典:数据流条目:基本表=货物编号+货物源+货物名称+货物单价+货物数量+发货日期+到货日期+验收方式数据项条目:1货物编号别名:无类型:字符型(varchar 长度:10 简述:唯一标识一种货物组成:企业自行规定2货物源别名:无类型:字符型(varchar)长度:10 简述:无组成:货物来源名称3货物名称别名:无类型:字符型(varchar)长度:10 简述:无组成:货物名称4货物单价别名:货物单价类型:字符型(float)长度:8 简述:货物单价组成:生产厂家提供货物信息数据入库数 据查询数据删除基本表数据修改流程名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 27 页 -5货物数量别名:无类型:字符型(int)长度:4 简述:无组成:货物数量6发货日期别名:无类型:date(datetime)长度:8 简述:无组成:双方协商7到货日期别名:无类型:date(datetime)长度:8 简述:无组成:双方协商8验收方式别名:无类型:char(varchar)长度:10 简述:无组成:订方决定验收方式加工条目:1加工名:货号输入数据流:货物数据输出数据流:档案基本表加工逻辑:根据货物情况输入相应数据并存放在基本表内2加工名:数据查询输入数据流:相关查询条件输出数据流:基本表相关信息加工逻辑:按类型对基本表内的数据进行查询统计3加工名:数据删除输入数据流:相关删除条件输出数据流:基本表加工逻辑:删除满足输入条件的基本表相关信息数据存储条目文 件 名:基本表文件组成:货物编号+货物源+货物名称+货物单价+货物数量+发货日期+到货日期+验收方式组织方式:索引文件,以货号为关键字名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 27 页 -第 4 章 系统设计系统设计阶段的主要目的是将系统分析阶段所提出的反映了用户需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的技术方案。它包括数据库设计以及系统的总体设计。数据库设计包括概念结构设计和逻辑结构设计,而系统的总体结构设计是系统设计阶段的主要活动之一,是为了实现系统总体功能,提高系统的各项指标。这一阶段的主要任务就是将整个系统合理的划分成各个功能模块,正确处理模块之间与模块内部的联系以及它们之间的调用关系和数据联系,定义各模块的内部结构等等。4.1 概念结构设计将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键。概念结构是独立于计算机硬件结构、独立于支持数据库的DBMS。概念结构设计的方法有:(1)自顶向下:首先定义全局概念结构的框架,然后逐步细化。(2)自底向上:首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构。(3)逐步扩张:首先定义最重要的核心概念结构,然后向外扩充。(4)混合策略:即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。在对本系统数据库的具体设计过程中,所采用的是自底向上的设计方法,即自顶向下地进行需求分析,得到每一集体的应用需求,然后反过来根据每一子需求,采用自底向上法分步设计每一局部E-R 模型,综合各局部 E-R 模型,逐层向上回到顶端,最终产生全局 E-R 模型。根据需求分析的结果,在系统的设计过程中得到了如下实体和其E-R 图如下:图 4-1 用户 E-R 图用户登录ID 用户名密码名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 27 页 -图 4-2 货物订货信息E-R 图图 4-3 入库单 E-R 图图 4-4 出库单 E-R 图货物编号货源货物单价货物数量发货日期到货日期验货方式货物货号货物名数量仓库号入库人时间入库号入库单货名数量仓库号出库人时间出库单名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 27 页 -图 4-5 用户-仓管员与入库单E-R 图图 4-6 用户-仓管员与出库单E-R 图图 4-7 用户-仓管员与入库单E-R 图4.2 逻辑结构设计逻辑结构设计是将概念结构设计阶段设计完成的概念模型(基本 E-R 图)转换为能被选定的数据库管理系统(DBMS)支持的逻辑结构。设计逻辑结构的步骤分三步:(1)将概念结构转换为一般的关系、网状、层次模型;(2)将转换来的关系、网状、层次模型向特定DBMS 支持下的数据模型转换;(3)对数据模型进行优化。4.2.1 E-R图向关系模型的转换这一步骤的任务是将实体和实体的属性及实体间的联系转化为关系模式,并确定关系的模式和码。通过对概念结构设计产生的E-R 图的分析,可得出以下关系模型。关系的主码用下划线标出:货物(货号,货物名称,)用户(用户名,密码)入库单(入库单号,货号,数量,入库人,入库日期)出库单(出库单号,货号,数量,出库人,出库日期)库存单(入库单号,货号,数量,入库人,入库日期)4.2.2 数据库表结构本系统采用了数据库管理系统SQL Server 2000,数据库名为毕业设计。在本次设计里,共有 6 张表,具体设计如下:仓管员入库单入库仓管员出库单出库仓管员订货单订货名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 27 页 -(1)用户表,如下:表 4-1 用户表字段名称数据类型字段长度是否为空说明Id Varchar 10 否Id 号码,主键name Varchar 10 否用户名pw Varchar 10 否密码(2)货物档案表,如下:表 4-2 货物档案表字段名称数据类型字段长度是否为空说明huohao Varchar 10 否货号主键huoming Varchar 10 可货名fahuoriqi datetime 8 可发货日期daohuoriqi datetime 8 可到货期danjia Float 8 可单价shuliang Int 4 可数量huoyuan varchar 10 可货源yanhuofangshi varchar 10 可验货方式(3)出库表,如下:表 4-3 出库表字段名称数据类型字段长度是否为空说明huohao varchar 10 否货号主键shuliang Float 8 可数量rukushijian datetime 8 可出库时间rukuren varchar 10 可出库人(4)库存表,如下:表 4-4 库存表字段名称数据类型字段长度是否为空说明huohao varchar 10 否货号shuliang Float 8 可数量cangkuhao Int 4 否仓库号rukushijian datetime 8 可入库时间(5)仓库表,如下:表 4-5 仓库表字段名称数据类型字段长度是否为空说明Cangkuhao Int 4 否仓库号主键Cangkudizhi Varchar 10 否仓库地址名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 27 页 -(6)入库表,如下:表 4-6 入库表字段名称数据类型字段长度是否为空说明rukudanhao varchar 10 否入库单号主键huohao varchar 10 可货物号huoming varchar 10 可货物名称shuliang Float 8 可入库数量cangkuhao varchar 10 可仓库号rukushijian datetime 8 可入库时间rukuren varchar 10 可入库人4.3 系统总体结构设计4.3.1 系统总体功能结构系统模块化结构设计工作是在系统分析阶段对子系统划分的基础上,在进一步地划分,将它逐层的分解成多个大小相同、功能单一、具有一定独立性的模块,以便程序设计工作的同时,有加强了数据库之间的联系,使系统更加的完美。通过分析本课题的功能模块结构图如下:图 4-8 系统功能结构图4.3.2 各模块及功能描述(1)订货管理模块订货管理在本课题设计的系统中占据了非常重要的地位,无论是货物的出库、入库还是货物的日常维护,货物的字段都贯穿其中,可以说其是本系统的基础信息,也可以说是本系统的核心内容。所以在设计的工程中把档案信息的字段设计的比较的全面,在本模块中具体功能如下:查询功能:在货物档案中,对数据库的查询可以分为二种查询:按货号查询、按货物名称查询;货号号和货名查询就具备了一定的实际意义,可以按照操作本人的主观意愿获得相应的货物信息。增加功能:对于新采购的货物,作为物流仓储经营单位,对货物信息的需要新增,物流仓储管理信息系订货管理进货/入库管理货物出库管理货物库存管理用户管理名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 27 页 -在本功能下,数据库所涉及的所有字段,都必须认真填写。删除:主要是满足用户在遇到货物已经被通告停售或货物不再生产,货物信息就有必要删除,否则会增加数据库的负担,影响数据的运行。本模块的功能结构图如下:订货档案管理货名修改删除查询新增货号图 4-9 货物档案管理模块功能结构图(2)进货管理模块进货管理系统模块是货物信息在本系统数据流通的必要操作,主要是对新采购的货物在实物入库后的数据入账工作,在当今企业资金短缺的企业,能够保证实物和系统帐目完全吻合,可以保证企业的资金能够优化分配,不至于资金周转不开,针对本模块,其主要功能如下:查询功能:在本模块中,查询的主要是已经入库的货物信息,本系统支持入库货名查询。货物入库:是指货物的数据入账操作,入库的货物档案信息能正常的系统入账,在本模块中,操作员主要是仓管员身份,另外,入库人员和入库时间是管理员填写的。修改货物:根据进货的情况,管理员可以根据具体情况对货物的更新操作。本模块的功能结构如下:图 4-10 入库管理模块功能结构图入库管理查询入库货名查询名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 27 页 -(3)货物出库管理模块本模块是货物信息在流通中的一个重要节点,基本算是货物仓库管理中的最终出口。是指货物在实物出库后的数据出账操作,其具体功能如下:货物出库:是指货物的出账操作,在本功能操作中需要考虑以下几个方面的内容:A、库的货物必须是库存已经有的;B、出库的数量要小于等于当前库存中的数量;C、出库的货物是货物档案中已经有的,在出库时,出库人和时间也是系统默认的。出库信息查询:在本操作中,是对已经出库的信息查询,查询可以从二个方面查询:出库人查询、货物名查询。本模块的功能结构如下:图 4-11 出库管理功能结构图(4)库存管理模块本模块主要是对管理人员和采购人员做数据参考的,可以根据货物流动数据和现有的货物数量来安排合适的货物采购。本模块的主要功能有:查询:可以根据自身的需要选择查询现有货物的库存数据,也可以进行货号查询。删除:主要是由于货物停售通知单中的货物停售造成的库存数据必须删除。本模块的功能结构图如下:库存管理查询删除修改图 4-12 货物库存管理模块功能结构图(5)系统管理模块本模块主要是针对系统的操作人员在登录本界面后的更改操作员的信息、退出操作界面的管理,其流程图如下所示:出库管理查询货物更新货名查询名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 27 页 -图 4-13 系统管理流程图4.4 系统程序设计模块详细设计也叫过程设计,它不同于编码或编程。在详细设计阶段,要决定各个模块的实现算法,并精确表达这些算法。通常软件开发者都会选择程序流程图来表达这些算法。程序流程图也称程序框图,它独立于任何一种编程语言,比较直观、清晰,易于学习掌握,至今仍是软件开发者最普遍采用的一种工具。4.4.1 模块功能的详细设计(1)登录模块系统登录模块是整个系统的开始,也是本系统权限设置的开始,其界面如下图:图 4-14 登录界面图(2)具体实现步骤为:选择操作员,凭口令进入系统,若口令错误,将不能进入应用程序。开发流程如下:用户系统管理模块系统登陆退出系统名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 27 页 -图 4-15 登录界面流程图图 4-16 失败的界面图用户登录代码:public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException response.setContentType(text/html);request.setCharacterEncoding(utf-8);String name=request.getParameter(userName);String pass=request.getParameter(password);/获取请求的用户名和密码AdminBO bo=new AdminBO();Admin admin=bo.login(name,pass);/管理员登录,查询数据库if(admin!=null)request.setAttribute(admin,admin);用户用户名,密码操作界面用户名或密码错误提示判 断 用户 名 和密码Y N 请重新输入名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 27 页 -request.getRequestDispatcher(myAccount.jsp).forward(request,response);else request.setAttribute(error,用户名或密码错误);request.getRequestDispatcher(index.jsp).forward(request,response);System.out.println(name);(3)订货界面订货界面是仓管员操作的权限,点击“订货管理”并在窗口中的表格中输入入库货物名的字段,点击“提交”,货物信息数据入库了,注:这里的货号是输入的,其界面如下:图 4-18 订货管理界面订单界面代码:代码:public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException response.setContentType(text/html);request.setCharacterEncoding(utf-8);String huoyuan=request.getParameter(huoyuan);String huohao=request.getParameter(huohao);String pinming=request.getParameter(pinming);String shuliang=request.getParameter(shuliang);String jiage=request.getParameter(jiage);String shuilv=request.getParameter(shuilv);String fahuoshijian=request.getParameter(fahuoshijian);String daohuoshijian=request.getParameter(daohuoshijian);名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 27 页 -String fukuanfangshi=request.getParameter(fukuanfangshi);String yanhuofangshi=request.getParameter(yanhuofangshi);IndentE indent=new IndentE();indent.setFahuoshijian(fahuoshijian);indent.sethuohao(huohao);indent.setDaohuoshijian(daohuoshijian);indent.setFukuanfangshi(fukuanfangshi);indent.setHuoyuan(huoyuan);indent.setJiage(jiage);indent.setPinming(pinming);indent.setShuilv(shuilv);indent.setShuliang(shuliang);indent.setYanhuofangshi(yanhuofangshi);AdminBO bo=new AdminBO();boolean isIndent=bo.indent(indent);if(isIndent)request.getRequestDispatcher(indentSuccess.jsp).forward(request,response);else request.setAttribute(error,订单失败!);request.getRequestDispatcher(indent.jsp).forward(request,response);(4)进货管理界面货物入库界面是仓管员操作的权限,点击“进货管理”并在窗口中的表格中输入入库货物名的字段,点击“提交”,货物信息数据入库了,注:这里的货号是输入的,其界面如下图 4-19 进货库界面进货界面代码:名师资料总结-精品资料欢迎下载-名师精心整理-第 21 页,共 27 页 -进货管理$requestScope.error 入库号 货号 货物名 数量 仓库号 入库人 时间 进货查询$error (5)货物出库界面货物入库界面是仓管员操作的权限,是货物信息的数据出库,在界面中输入货物的编号和数量,点击“货物出库”,货物的库存信息,就减去了出库数量,其界面如下:名师资料总结-精品资料欢迎下载-名师精心整理-第 22 页,共 27 页 -图 4-20 货物出库界面界面实现代码:出库管理 修改库存$error 货物名:数 量:查询库存 货物名:(6)出库信息查询此界面是货物出库信息的一个查询,可以支持货物名称查询,其界面如上:(7)货物库存管理货物库存管理,是对货物的库存进行数据管理的一种方式,本界面一般不执行修改和删除操作,只是进行简单的库存查询,输入货号,就可以进行货物库存信息的查询了,名师资料总结-精品资料欢迎下载-名师精心整理-第 23 页,共 27 页 -其界面如下:图 4-21 货物库存界面界面代码:库存查询 删除货物$errorShanchu 修改货物$errorXiugaiHuowu 货物名:修改数量:名师资料总结-精品资料欢迎下载-名师精心整理-第 24 页,共 27 页 -第 5 章 系统运行与维护5.1 系统运行运行环境要求1.操作系统windows XP 或 windows 2000 server/professional 2.CPU 没有大的要求,只要可以运行以上的Windows 操作系统就可以了。当然,速度越快越好。3.内存基本内存需要 1GB,建议使用 512MB 以上内存。4.硬盘空间至少有 50GB 以上可用的硬盘空间。名师资料总结-精品资料欢迎下载-名师精心整理-第 25 页,共 27 页 -5.2 系统测试系统测试,是系统开发后的一种软件测试工作,设计测试用例,并根据系统设计的思想,在系统的各个模块查看数据的流向。软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。编码和单元测试属于软件生存期中的同一个阶段。在结束这个阶段后对软件系统还要进行各种综合测试,这是软件生存期的另一个独立阶段,即测试阶段。在本系统中,首先为各个数据库输入测试数据,然后对各部分,如表、界面等一起进行程序调试及功能测试,如发现错误后立即改正,直到正确通过后,将相关的部分连接起来,进行综合测试,逐步组合,直到整个系统调试成功。测试报告:本测试报告是对本系统所划分的功能模块进行功能测试后所作的测试结果记录。1、系统管理与维护用户登录功能说明:输入用户名称和口令,只有输入正确的数据才能进入系统。测试项目:登录功能输入数据:输入用户名称和口令,单击