物流仓储调度系统学士学位论文.docx
《物流仓储调度系统学士学位论文.docx》由会员分享,可在线阅读,更多相关《物流仓储调度系统学士学位论文.docx(83页珍藏版)》请在冰豆网上搜索。
物流仓储调度系统学士学位论文
物流仓储调度系统
摘要
仓储调度管理是生产企业的重要组成部分,在企业的日常管理中,它影响着企业的生产运营、日常成本控制等各个环节。
传统的简单、静态的仓库作业已经无法保证企业各种资源的高效利用。
如果不能保证进出货和库存控制的正确性,将会使管理费用增加,服务质量难以保证,从而影响企业的竞争力。
本论文主要以开发仓储调度管理系统软件为目标,从实际工作出发,结合南京康尼科技实业有限公司提供的需求文档,开发智能生产制造系统中的一个子系统WMS(仓储管理系统),实现生产企业的信息化运作,即设计一套系统的数据库,采用目前流行的B/S结构,运用J2EE编程技术结合MVC思想、流行的SSH三大框架技术等,完成对产品、供应商、员工、出入库、库存等信息的一整套增删改查操作,实现信息管理。
关键字:
企业,仓储管理系统,WMS,J2EE,SSH,B/S
TheStorehouseInformationManagementSystemInTheLogisticsCentre
Abstract
Warehousemanagementisanimportantpartofmanufacturingenterprises.Indailymanagementoftheenterprise,Itaffectstheproductionoperations,thedailycostcontrolandotherlinks.Thetraditionalsimple,staticwarehouseoperationshavebeenunabletoensuretheefficientuseofcorporateresources.Ifyoucannotguaranteethecorrectnessofinventorycontrolandintotheship,itwillmakeadministrativeexpensesincreasedanddifficulttoguaranteethequalityofservice.Thusaffectingthecompetitivenessofenterprises.
Inthisthesis,thegoalisinordertodevelopwarehousemanagementsystemsoftware.Fromthepracticalwork,combinedwithConnieTechnologyCo.,Ltd.Nanjingrequirementsdocumentsprovided,WedeveloptheintelligentmanufacturingsystemsinasubsystemWMS(WarehouseManagementSystem),tomaketheenterprisesinformationtechnologyoperations.Itisthedesignofasystemdatabase,andusingthepopularB/Sstructure.ThetechnologyofthesystemiscombinedwithMVCJ2EEprogrammingideas,popularSSHthreeframeworkstechnologyandsoon.Toachieveinformationmanagement,asetofCRUDoperationsforproducts,suppliers,employees,outofstorage,inventoryandotherinformationarefinished.
Keywords:
Enterprise,WarehouseManagementSystem,WMS,J2EE,SSH,B/S.
目录
摘要I
AbstractII
第一章绪论-1-
1.1物流仓储调度系统的项目目的及意义-1-
1.2仓储管理子系统在智能生产制造系统的地位-1-
第二章物流仓储调度管理系统实现的理论基础-2-
2.1研究背景-2-
2.2用到的相关技术-2-
2.2.1J2EE技术简介-2-
2.2.2SSH框架技术-2-
2.2.3Jquery技术-3-
2.2.4CSS技术-3-
2.2.5XML技术-4-
2.2.6AJAX技术-4-
第三章仓储调度管理系统需求分析-5-
3.1系统描述-5-
3.2系统功能概述-6-
3.3用户特点-7-
3.4主要软件需求-7-
3.5功能需求-7-
3.5.1用户登录-7-
3.5.2员工管理-8-
3.5.3客户管理-8-
3.5.4产品管理-8-
3.5.5库存管理-9-
3.5.6入库管理-9-
3.5.7出库管理-9-
3.5.8库位管理-10-
3.5.9系统管理-10-
第四章物流仓储调度系统的设计与实现-11-
4.1系统数据库设计-12-
4.1.1系统实体E-R图-12-
4.1.2系统数据表设计-16-
4.2系统开发环境搭建-22-
4.2.1B/S结构简介-22-
4.2.2JDK简介-22-
4.2.3MyEclipse简介-23-
4.2.4ApacheTomcat服务器简介-23-
4.2.5项目搭建-23-
4.3系统功能模块设计-25-
4.3.1登录模块的详细设计-25-
4.3.2用户模块的详细设计-26-
4.3.3客户模块的详细设计-27-
4.3.4产品模块的详细设计-28-
4.3.5库存模块的详细设计-29-
第五章仓储管理系统的测试和功能演示-31-
5.1用户登录测试-31-
5.2员工管理测试-32-
5.3客户管理测试-34-
5.4产品管理测试-34-
5.5库存管理测试-35-
5.6库存容量预警测试-38-
5.7仓库管理测试-38-
5.8系统管理功能演示-40-
第六章结束语-42-
6.1仓储管理系统的难点与创新-42-
6.2仓储管理系统的设计收获-43-
参考文献-44-
致 谢-45-
附录Ⅰ:
英文技术资料翻译-46-
英文原文:
-46-
中文译文:
-50-
附录Ⅱ:
源代码-54-
第一章绪论
1.1物流仓储调度系统的项目目的及意义
随着现代技术不断飞速发展,康尼公司通过调研行业需求以及高等院校就业动向,可以看出现代企业对应用型人才的综合性能力要求是越来越高、越来越迫切,而目前能够集成融合多学科、多专业的综合性用于教学实训和科研开发的设备系统却寥寥无几,更多的是相对单一的自动化实训、单一的物流实训系统、单一的物联网实训等等。
为弥补这类教学、科研系统的空白,特研制本系统以满足教学实训、科研和创新能力训练等方面需求,通过几乎为实战的训练,用以培养出真正符合现代企业发展所需要的综合性高技能人才。
1.2仓储管理子系统在智能生产制造系统的地位
仓储管理系统是一个对货品出入库管理的一套非常重要的智能生产制造系统的子系统。
该系统的主要目标就是通过对仓库的所有出入库活动进行管理和控制,还有对数据库存储的库存信息进行分析和统计,以保证企业生产中畅通的物流,并且可以使决策人员及早得发现问题,查出问题,采取相应的措施,然后调整库存结构,缩短储备周期,加速资金周转,最大限度地降低库存占用。
为各类人员从不同方面提供所需要的信息,以便使企业生产制造获得更大的收益。
企业在生产制造过程中所需的库存物资往往是很繁杂的,而一个有效地管理系统能够很好的解决这类问题。
根据当前的企业管理体制,一般仓储管理系统总是需要根据物资的类别来划分区域来进行物资的存放,入库,出库等。
根据企业各个部门的需求来发送或接收物资设备,并且通过对库存的实时监控和定期维护,可以使得物资设备的储备达到最佳状态,从而使得企业的整个生产制造流程更加地具有效率。
所有的企业经营活动都离不开物流活动,而整个物流活动都是围绕着仓储的,一个好的能有效使用企业的仓储管理系统是企业生产经营活动的核心。
所以,不能忽视仓储管理系统在企业智能生产中的地位。
第二章物流仓储调度系统实现的理论基础
2.1研究背景
信息技术的发展使制造业的生产发生了非常大的变化,经济全球化在给企业带来无限的商机的同时,也给企业的生产制造带来巨大的压力。
具体表现在:
一方面,企业的个性化要求越来越多,对质量、交货期要求越来越严格;另一方面,跨地域的生产和经营活动给企业管理带来巨大的挑战。
企业必须采用新技术,开发新产品,压缩产品生命周期,提高劳动生产率,降低成本,才能使企业具有生命力。
仓储作为企业物流不可或缺的环节,是连接生产、供应、销售的中转站,在企业生产全过程中起到非常重要的作用,它是提供对以支持生产、维护、操作以及客户服务为目的而存储的各种物料的有效管理,这些物料包括原材料、成品、半成品等,良好的仓储管理,能够控制好生产与库存的关系,避免由于缺少生产材料而停产以及生产好的产品无处放置等问题发生。
2.2用到的相关技术
2.2.1J2EE技术简介
J2EE(Java2EnterpriseEdition)是一种利用java2平台来简化诸多与企业级解决方案的开发、部署和管理相关的复杂问题的体系结构。
J2EE平台作为一种可扩展的、多功能的平台,可以将关键的企业应用扩展到任何Web浏览器上,并可适合多种不同的Internet数据流,可以连接几乎任何一种传统数据库和解决方案。
正是由于具备这样的优势,J2EE正在成为开发商创建电子商务应用的实际标准。
2.2.2SSH框架技术
SSH是Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。
Struts2:
Struts2是struts的下一代产品,是在struts1和WebWork的基础上进行了合并的全新的Struts2框架。
其体系结构与struts1的体系结构差别巨大。
Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2和WebWork差别很小。
[07]
Spring:
Spring是一个开源框架,它由RodJohnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
[09]
Hibernate:
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
[10]
集成SSH框架的系统从职责上分为四层:
表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。
系统的基本业务流程是:
在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts.xml)将ActionServlet接收到的Request委派给相应的Action处理。
在业务层中,管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。
而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。
2.2.3Jquery技术
Jquery是一个轻量级的js库,作为一个优秀的JavaScript框架,它兼容CSS3和各种浏览器,使用户能方便地处理HTMLdocuments、events、实现动画效果,并且很方便地为网站提供AJAX交互。
[08]
2.2.4CSS技术
CSS即层叠样式表(CascadingStylesheet)。
在网页制作时采用CSS技术,可以有效地对页面布局、字体、颜色、背景、和其它效果实现更加精确的控制。
[03][05]
2.2.5XML技术
XML即可扩展标记语言(extensibleMarkupLanguage)是一种用于描述在I/O流中数据应该如何表现的标准语言。
可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
XML及其辅助规范可被用于描述数据的文档的表现,描述XML文档类型的限制,描述XML文档和资源之间的链接,描述XML文档的自动转换和格式化。
现在的J2EE规范中主要在定义标准应用程序的部署描述时依赖于XML技术。
[18]
2.2.6AJAX技术
Ajax全称“AsynchronousJavaScriptandXML”,即异步JavaScript和XML,是指一种创建交互式网页应用的网页开发技术。
Ajax技术可以在浏览器中通过JavaScript脚本使用,也可以使用jQuery框架包装的方法来使用。
和传统的Web开发不同,Ajax并不是以一种基于静态页面的方式来看待Web应用的。
从Ajax的角度来看,Web应用是由少量的页面组成,其中每个页面其实是一个更小型的Ajax应用。
每个页面上都包括有一些使用JavaScript开发的Ajax组件。
这些组件使用XMLHttpRequest对象以异步的方式与服务器通信,从服务器获取需要的数据后使用DOM的API来更新页面中的一部分内容。
因此,Ajax应用与传统的Web应用的区别主要如下:
(1)、不刷新整个页面,在页面内与服务器通信。
(2)、使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力。
(3)、应用仅由少量页面组成。
大部分交互在页面之内完成,不需要改变整个页面。
所以,可以看出Ajax使得Web应用更加得动态化,能够拥有更高的可编辑性,并且提供了表现能力丰富的AjaxUI组件。
这样一类新型的Web应用叫做RIA(RichInternetApplication)应用。
[12]
第三章仓储调度管理系统需求分析
3.1系统描述
本物流仓储管理系统,其基本任务也就是有效管理仓库中物品的流通,如入库管理、出库管理、库存管理、仓库管理等等。
可以对仓库物流管理做更加细致的分析,并从中发现更多的细节特征:
1、仓库中物品流通是以物品为基本单位进行的。
2、仓库物品流通涉及物品的入库,出库两种物流方式。
3、物品流通管理涉及流通数据更新和对流通数据的查询、汇总等。
4、检索操作。
5、库中的物品需要进行合理的分类。
6、规范物品流通管理,仓库中的物品必须在流通前进行登记。
7、当物品出库时必须考虑到库存是否满足。
8、仓库中的物品应该有提供者,所以要考虑供应商数据的登记。
9、物品入库,涉及到物品的存放位置,考虑是否需要动态选择库位。
10、考虑库位则需要制造一个三维空间效果,用来选择具体位置。
11、仓库流通管理是通过仓库工作人员进行的,因此,工作人员需要进行注册登记。
12、仓库工作人员需要有唯一的个人身份标识,它既是工作人员登录系统时的身份验证依据,也是工作人员在进行物品流通操作时的经手人标识。
13、尽管工作人员的姓名也可以用作其身份标识,但不同的工作人员有可能会出现相同的姓名,因此有必要提供一个专门的身份标识码。
14、仓储物流管理虽然是通过诸多工作人员共同完成的,但各工作人员在操作上往往会有所分工,这意味着应该给与工作人员以操作权限限制。
15、当涉及工作人员操作权限的时候,往往需要有一种合理的授权机制与其相配合。
例如,可设置一位系统管理员,由他进行全面管理,而其他工作人员则通过他获得局部管理授权。
16、工作人员需要有对应的岗位和部门来安置。
17、库存警告和报警,当库存量达到规定的最低数额时,系统自动报警。
3.2系统功能概述
1、系统登录
1)、验证登录用户
2)、不同的用户权限进入系统的使用权限不同
2、员工管理
1)、增加员工信息
2)、查询员工信息
3)、删除员工信息
4)、修改员工信息
3、供应商管理
1)、增加供应商信息
2)、查询供应商信息
3)、删除供应商信息
4)、修改供应商信息
4、产品管理
1)、增加产品信息
2)、查询产品信息
3)、删除产品信息
4)、修改产品信息
5、库存管理
1)、增加员工信息
2)、查询库存信息
3)、修改库存信息
6、入库管理
1)、增加入库信息
2)、查询入库信息
7、出库管理
1)、增加出库信息
2)、查询出库信息
8、库位管理
1)、增加库位信息
2)、查询库位信息
3)、删除库位信息
4)、修改库位信息
9、系统权限管理
1)、增加权限信息
2)、查询权限信息
3)、删除权限信息
4)、修改权限信息
3.3用户特点
系统界面友好,操作简单,效率高,易掌握,并不需要操作人员和维护者有较高的技术水平。
该系统是比较标准的信息管理系统,其系统开发过程具有通用性,对类似工作的扩展具有借鉴意义。
3.4主要软件需求
本系统是在Windows7操作系统环境下,使用MyEclipse10.0进行开发,javaJDK版本为1.7.0_21,发布平台为apache-tomcat-7.0.23,数据库采用安装简易的MySQL数据库版本为5.0.23
3.5功能需求
3.5.1用户登录
功能用途:
系统进入通道,这是信息类系统常用的安全防范机制。
操作权限归属:
需要进入系统的所有人员。
输入数据:
员工工号,密码,验证码,职称
基本操作:
登录信息录入,确定登录,取消登录。
所在位置:
系统启动时的系统首页登录界面。
其他说明:
系统登录的过程就是对工作人员是否进行过合法登记,而进行的身份验证过程,并且可以区分用户权限,防止非法用户进入。
3.5.2员工管理
功能用途:
登记或设置员工的身份标识等基本信息。
操作权限归属:
能够进入系统的普通工作人员,系统管理员。
主要数据:
员工工号,姓名,性别,年龄,身份证号码,出生日期,学历,加入日期,住址,联系电话,部门,职位
基本操作:
添加记录,删除数据,更新数据,条件查询,登录权限赋予。
所在位置:
工作人员对员工信息管理的页面。
其他说明:
员工工号是员工的主要身份标识,被用作工作人员登录系统时的身份验证依据,也是工作人员进行物流处理时的经手人识别标记。
所以,该身份ID在添加数据时是由系统根据职位和部门id由系统自动生成的,并不能被修改。
3.5.3客户管理
功能用途:
登记或修改供应商的基本信息。
操作权限归属:
能够进入系统的仓管人员,系统管理员。
主要数据:
供应商编号,名称,负责人,地址,电话,传真,邮件,网址。
基本操作:
添加记录,删除数据,更新数据,条件查询。
所在位置:
客户管理的页面。
其他说明:
供应商对应其提供的产品信息,每一件产品都有其制造商,仓库中的产品在添加时都要填写该项。
3.5.4产品管理
功能用途:
登记或修改产品的基本信息。
操作权限归属:
能够进入系统的仓管人员,系统管理员。
主要数据:
产品编号,产品全称,分类,供应商,产地,产品的计量单位,有效期,型号,备注。
基本操作:
添加记录,删除数据,更新数据,条件查询。
所在位置:
产品管理的页面。
其他说明:
每一件产品信息在添加时都要使用触发器同步更新到库存信息表中,初始数量为0,在修改产品基本信息时,一些必要数据也要同步更改。
3.5.5库存管理
功能用途:
查询库存的基本信息,并在库存报警时能够通过管理员更新库存。
操作权限归属:
能够进入系统的仓管人员,系统管理员。
主要数据:
产品信息,余量,上下限报警。
基本操作:
更新数据,条件查询。
所在位置:
库存管理的页面。
其他说明:
库存的余量信息是由出入库的情况自动更新的,上下限报警数据可由管理员在获取通知后更新。
3.5.6入库管理
功能用途:
登记或查询入库单信息,并提供打印功能。
操作权限归属:
能够进入系统的仓管人员,系统管理员。
主要数据:
入库单号,日期,负责人,产品编号,数量,型号,类别,单位,存放位置。
基本操作:
添加记录,条件查询,打印。
所在位置:
入库管理的页面。
其他说明:
入库单号由系统根据日期自动生成,信息填写需要根据实际入库信息填写,有必要的数据验证,和库位选择等,提供打印选项。
3.5.7出库管理
功能用途:
登记或查询供出库单信息,并提供打印功能。
操作权限归属:
能够进入系统的仓管人员,系统管理员。
主要数据:
出库单号,日期,负责人,产品编号,数量,型号,类别,单位,接收人,生产项目编号,备注。
基本操作:
添加记录,条件查询,打印。
所在位置:
出库管理的页面。
其他说明:
出库单号由系统根据日期自动生成,信息填写需要根据实际入库信息填写,有必要的数据验证,提供打印选项。
3.5.8库位管理
功能用途:
登记或修改库位信息。
操作权限归属:
系统管理员。
主要数据:
仓库区域编号,区域描述,排号编号,排号描述,座号编号,座号描述。
基本操作:
添加记录,修改记录,删除记录,条件查询。
所在位置:
库位管理的页面。
其他说明:
库位模块是产品存放的位置,以模拟三维空间记录存放信息。
3.5.9系统管理
功能用途:
登记或修改系统权限信息。
操作权限归属:
系统管理员。
主要数据:
登录员工的工号,姓名,密码,权限。
基本操作:
添加记录,修改记录,删除记录,条件查询。
所在位置:
系统管理的页面。
其他说明:
系统管理主要是用来管理能够登录的用户,并提供赋予和修改登录用户的权限信息。
第四章物流仓储调度系统的设计与实现
根据仓储管理系统的特点,可以将其分为员工信息管理,客户信息管理,产品信息管