1、 大学毕业设计(论文)任务书 学院(直属系):计算机科学与技术系 时间:2014年11月20日 学 生 姓 名 指 导 教 师 设计(论文)题目 物流仓储调度系统的分析与实现 主要研 究内容 仓库调度管理系统(WMS)作为小型企业仓库管理软件,可实现企业的原材料、半成品、成品库存管理。系统提供三种使用者权限,即系统管理员、仓库管理员、查询者。系统具备独特的物料编码和条码管理系统,能够分类管理好中小型企业的库存物料,具备出库、入库等相关功能,并提供相应的库存查询功能、出入库记录等,以及打印相关表单等功能。具备管理中小型自动化立体仓库功能,提供了控制
2、单巷道、多巷道堆垛机的控制接口功能。以及立体仓库对应的货架定义功能。用户可以根据需要自行选择不同的立体仓库及货架数量。 系统提供人性化的操作界面,安全性强,更重要的是可维护、可扩展性强,开发中风格一致,要有精品意识。毕业设计工作认真、务实、严谨,力求创新,按期完成各阶段的任务。 研究方法 完成一各个功能模块及整个系统都相对完善的物流仓储管理系统,能够及时地对物流仓储信息进行添加、修改和删除等操作,并提供丰富的查询功能。 主要技术指标(或研究目标) 采用系统开发的关键技术J2EE模式的系统架构,Structs2框架,JavaScript技术,Ajax技术,Mysql。 主要参考文献
3、 [01] Java编程思想(第4版)/(美)埃克尔(Eckel,B.)著;陈昊鹏译.--北京:机械工业出版社,2007.6 [02] Head First设计模式(中文版)/(美)弗里曼(Freeman,E.)等著;O’Reilly Taiwan公司译,UMLChina改编—北京:中国电力出版社,2007 [03] 疯狂HTML5/CSS3/JavaScript讲义/李刚编著.—北京:电子工业出版社,2012.5 [04] JavaScript权威指南:原书第6版/(美)弗兰纳根(Flanagan,D.)著;淘宝前端团队译.—北京:机械工业出版社,2012.3 [05] CSS
4、权威指南(第3版)/(美)迈耶 著 尹志忠,侯妍译;--北京:中国电力出版社,2008.1 [06] (美)Cay S.Horstmann Gary Cornell 著, JAVA核心技术.北京:机械工业出版社,2008 [07] Struts2.1权威指南/李刚编著.—北京:电子工业出版社,2009.5 [08] JavaScript高级程序设计:第3版/(美)泽卡斯(Zakas,N.C.)著;李松峰,曹力 译.—北京:人民邮电出版社,2012.3 [09] Spring3.x企业应用开发实战/陈雄华,林开雄著.—北京:电子工业出版社,2012.2 [10] 轻量级JavaEE企业
5、应用实战:Struts 2+Spring 3+Hibernate整合开发/李刚编著.—3版.—北京:电子工业出版社,2012.4 [11] 数据结构与算法分析:Java语言描述 第2版/(美)韦斯(Weiss, M. A.)著;冯舜玺译.—北京:机械工业出版社,2008.3 [12] 疯狂Ajax讲义:jQuery/Ext JS/Prototype/DWR企业应用前端开发实战/李刚编著.—3版.—北京:电子工业出版社,2013.2 物流仓储调度系统 摘 要 仓储调度管理是生产企业的重要组成部分,在企业的日常管理中,它影响着企业的生产运营、日常成本控
6、制等各个环节。传统的简单、静态的仓库作业已经无法保证企业各种资源的高效利用。如果不能保证进出货和库存控制的正确性,将会使管理费用增加,服务质量难以保证,从而影响企业的竞争力。 本论文主要以开发仓储调度管理系统软件为目标,从实际工作出发,结合南京康尼科技实业有限公司提供的需求文档,开发智能生产制造系统中的一个子系统WMS(仓储管理系统),实现生产企业的信息化运作,即设计一套系统的数据库,采用目前流行的B/S结构,运用J2EE编程技术结合MVC思想、流行的SSH三大框架技术等,完成对产品、供应商、员工、出入库、库存等信息的一整套增删改查操作,实现信息管理。 关键字:企业,仓储管理系统,W
7、MS,J2EE,SSH,B/S The Storehouse Information Management System In The Logistics Centre Abstract Warehouse management is an important part of manufacturing enterprises. In daily management of the enterprise, It affects the production operations, the daily cost control and
8、 other links. The traditional simple, static warehouse operations have been unable to ensure the efficient use of corporate resources. If you can not guarantee the correctness of inventory control and into the ship, it will make administrative expenses increased and difficult to guarantee the qualit
9、y of service. Thus affecting the competitiveness of enterprises. In this thesis, the goal is in order to develop warehouse management system software. From the practical work, combined with Connie Technology Co., Ltd. Nanjing requirements documents provided, We develop the intelligent manufacturing
10、 systems in a subsystem WMS (Warehouse Management System),to make the enterprises information technology operations. It is the design of a system database, and using the popular B / S structure. The technology of the system is combined with MVC J2EE programming ideas, popular SSH three frameworks te
11、chnology and so on. To achieve information management, a set of CRUD operations for products, suppliers, employees, out of storage, inventory and other information are finished. Keywords: Enterprise,Warehouse Management System, WMS, J2EE, SSH, B/S. II 目 录 摘要 I ABSTRACT II 第一章 绪论
12、 - 1 - 1.1 物流仓储调度系统的项目目的及意义 - 1 - 1.2 仓储管理子系统在智能生产制造系统的地位 - 1 - 第二章 物流仓储调度管理系统实现的理论基础 - 2 - 2.1 研究背景 - 2 - 2.2 用到的相关技术 - 2 - 2.2.1 J2EE技术简介 - 2 - 2.2.2 SSH框架技术 - 2 - 2.2.3 Jquery技术 - 3 - 2.2.4 CSS技术 - 3 - 2.2.5 XML技术 - 4 - 2.2.6 AJAX技术 - 4 - 第三章 仓储调度管理系统需求分析 - 5 - 3.1 系统描述 - 5 - 3
13、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图 -
14、12 - 4.1.2 系统数据表设计 - 16 - 4.2 系统开发环境搭建 - 22 - 4.2.1 B/S结构简介 - 22 - 4.2.2 JDK 简介 - 22 - 4.2.3 MyEclipse简介 - 23 - 4.2.4 Apache Tomcat服务器简介 - 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 库存模块的
15、详细设计 - 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 - 附录
16、Ⅰ:英文技术资料翻译 - 46 - 英文原文: - 46 - 中文译文: - 50 - 附录Ⅱ:源代码 - 54 - III 第一章 绪论 1.1 物流仓储调度系统的项目目的及意义 随着现代技术不断飞速发展,康尼公司通过调研行业需求以及高等院校就业动向,可以看出现代企业对应用型人才的综合性能力要求是越来越高、越来越迫切,而目前能够集成融合多学科、多专业的综合性用于教学实训和科研开发的设备系统却寥寥无几,更多的是相对单一的自动化实训、单一的物流实训系统、单一的物联网实训等等。为弥补这类教学、科研系统的
17、空白,特研制本系统以满足教学实训、科研和创新能力训练等方面需求,通过几乎为实战的训练,用以培养出真正符合现代企业发展所需要的综合性高技能人才。 1.2 仓储管理子系统在智能生产制造系统的地位 仓储管理系统是一个对货品出入库管理的一套非常重要的智能生产制造系统的子系统。该系统的主要目标就是通过对仓库的所有出入库活动进行管理和控制,还有对数据库存储的库存信息进行分析和统计,以保证企业生产中畅通的物流,并且可以使决策人员及早得发现问题,查出问题,采取相应的措施,然后调整库存结构,缩短储备周期,加速资金周转,最大限度地降低库存占用。为各类人员从不同方面提供所需要的信息,以便使企业生产制造获得更
18、大的收益。 企业在生产制造过程中所需的库存物资往往是很繁杂的,而一个有效地管理系统能够很好的解决这类问题。根据当前的企业管理体制,一般仓储管理系统总是需要根据物资的类别来划分区域来进行物资的存放,入库,出库等。根据企业各个部门的需求来发送或接收物资设备,并且通过对库存的实时监控和定期维护,可以使得物资设备的储备达到最佳状态,从而使得企业的整个生产制造流程更加地具有效率。 所有的企业经营活动都离不开物流活动,而整个物流活动都是围绕着仓储的,一个好的能有效使用企业的仓储管理系统是企业生产经营活动的核心。所以,不能忽视仓储管理系统在企业智能生产中的地位。 第二章 物流仓储调度系
19、统实现的理论基础 2.1 研究背景 信息技术的发展使制造业的生产发生了非常大的变化,经济全球化在给企业带来无限的商机的同时,也给企业的生产制造带来巨大的压力。具体表现在:一方面,企业的个性化要求越来越多,对质量、交货期要求越来越严格;另一方面,跨地域的生产和经营活动给企业管理带来巨大的挑战。企业必须采用新技术,开发新产品,压缩产品生命周期,提高劳动生产率,降低成本,才能使企业具有生命力。 仓储作为企业物流不可或缺的环节,是连接生产、供应、销售的中转站,在企业生产全过程中起到非常重要的作用,它是提供对以支持生产、维护、操作以及客户服务为目的而存储的各种物料的有效管理,这些
20、物料包括原材料、成品、半成品等,良好的仓储管理,能够控制好生产与库存的关系,避免由于缺少生产材料而停产以及生产好的产品无处放置等问题发生。 2.2 用到的相关技术 2.2.1 J2EE技术简介 J2EE(Java 2 Enterprise Edition)是一种利用java2平台来简化诸多与企业级解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE平台作为一种可扩展的、多功能的平台,可以将关键的企业应用扩展到任何Web浏览器上,并可适合多种不同的Internet数据流,可以连接几乎任何一种传统数据库和解决方案。正是由于具备这样的优势,J2EE正在成为开发商创建电子商务应用的实际
21、标准。 2.2.2 SSH框架技术 SSH是Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。 Struts2 :Struts2是struts的下一代产品,是在struts1和Web Work的基础上进行了合并的全新的Struts2框架。其体系结构与struts1的体系结构差别巨大。Struts2以Web Work为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2和Web Work差别很小。[07] Spring :Spring是一个开源
22、框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的Java Bean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。[09] Hibernate :Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的
23、Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。[10] 集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。 系统的基本业务流程是:在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收
24、响应(Response),然后Struts根据配置文件(struts.xml)将ActionServlet接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。 2.2.3 Jquery技术 Jquery是一个轻量级的js库,作为一个优秀的JavaScript框架
25、它兼容CSS3和各种浏览器,使用户能方便地处理HTML documents、events、实现动画效果,并且很方便地为网站提供AJAX交互。[08] 2.2.4 CSS技术 CSS即层叠样式表(Cascading Style sheet)。在网页制作时采用CSS技术,可以有效地对页面布局、字体、颜色、背景、和其它效果实现更加精确的控制。[03] [05] 2.2.5 XML技术 XML即可扩展标记语言(extensible Markup Language)是一种用于描述在I/O流中数据应该如何表现的标准语言。可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语
26、言进行定义的源语言。XML及其辅助规范可被用于描述数据的文档的表现,描述XML文档类型的限制,描述XML文档和资源之间的链接,描述XML文档的自动转换和格式化。现在的J2EE规范中主要在定义标准应用程序的部署描述时依赖于XML技术。[18] 2.2.6 AJAX技术 Ajax全称“Asynchronous JavaScript and XML”,即异步JavaScript和XML,是指一种创建交互式网页应用的网页开发技术。Ajax技术可以在浏览器中通过JavaScript脚本使用,也可以使用jQuery框架包装的方法来使用。 和传统的Web开发不同,Ajax并不是以一种基
27、于静态页面的方式来看待Web应用的。从Ajax的角度来看,Web应用是由少量的页面组成,其中每个页面其实是一个更小型的Ajax应用。每个页面上都包括有一些使用JavaScript开发的Ajax组件。这些组件使用XMLHttpRequest对象以异步的方式与服务器通信,从服务器获取需要的数据后使用DOM 的API来更新页面中的一部分内容。因此,Ajax应用与传统的Web应用的区别主要如下: (1)、不刷新整个页面,在页面内与服务器通信。 (2)、使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力。 (3)、应用仅由少量页面组成。大部分交互在页面之内完成,不需要改变整个页
28、面。 所以,可以看出Ajax使得Web应用更加得动态化,能够拥有更高的可编辑性,并且提供了表现能力丰富的Ajax UI组件。这样一类新型的Web应用叫做RIA(Rich Internet Application)应用。[12] 第三章 仓储调度管理系统需求分析 3.1 系统描述 本物流仓储管理系统,其基本任务也就是有效管理仓库中物品的流通,如入库管理、出库管理、库存管理、仓库管理等等。可以对仓库物流管理做更加细致的分析,并从中发现更多的细节特征: 1、仓库中物品流通是以物品为基本单位进行的。 2、仓库物品流通涉及物品的入库,出库两种物流方式。 3、物
29、品流通管理涉及流通数据更新和对流通数据的查询、汇总等。 4、检索操作。 5、库中的物品需要进行合理的分类。 6、规范物品流通管理,仓库中的物品必须在流通前进行登记。 7、当物品出库时必须考虑到库存是否满足。 8、仓库中的物品应该有提供者,所以要考虑供应商数据的登记。 9、物品入库,涉及到物品的存放位置,考虑是否需要动态选择库位。 10、考虑库位则需要制造一个三维空间效果,用来选择具体位置。 11、仓库流通管理是通过仓库工作人员进行的,因此,工作人员需要进行注册登记。 12、仓库工作人员需要有唯一的个人身份标识,它既是工作人员登录系统时的身份
30、验证依据,也是工作人员在进行物品流通操作时的经手人标识。 13、尽管工作人员的姓名也可以用作其身份标识,但不同的工作人员有可能会出现相同的姓名,因此有必要提供一个专门的身份标识码。 14、仓储物流管理虽然是通过诸多工作人员共同完成的,但各工作人员在操作上往往会有所分工,这意味着应该给与工作人员以操作权限限制。 15、当涉及工作人员操作权限的时候,往往需要有一种合理的授权机制与其相配合。例如,可设置一位系统管理员,由他进行全面管理,而其他工作人员则通过他获得局部管理授权。 16、工作人员需要有对应的岗位和部门来安置。 17、库存警告和报警,当库存量达到规定的最低数额
31、时,系统自动报警。 3.2 系统功能概述 1、系统登录 1)、验证登录用户 2)、不同的用户权限进入系统的使用权限不同 2、员工管理 1)、增加员工信息 2)、查询员工信息 3)、删除员工信息 4)、修改员工信息 3、供应商管理 1)、增加供应商信息 2)、查询供应商信息 3)、删除供应商信息 4)、修改供应商信息 4、产品管理 1)、增加产品信息 2)、查询产品信息 3)、删除产品信息 4)、修改产品信息 5、库存管理 1)、增加员工信息 2)、查询库存信息 3)、修
32、改库存信息 6、入库管理 1)、增加入库信息 2)、查询入库信息 7、出库管理 1)、增加出库信息 2)、查询出库信息 8、库位管理 1)、增加库位信息 2)、查询库位信息 3)、删除库位信息 4)、修改库位信息 9、系统权限管理 1)、增加权限信息 2)、查询权限信息 3)、删除权限信息 4)、修改权限信息 3.3 用户特点 系统界面友好,操作简单,效率高,易掌握,并不需要操作人员和维护者有较高的技术水平。该系统是比较标准的信息管理系统,其系统开发过程具有通用性,对类似工作的扩展具有借鉴意义。 3.4
33、主要软件需求 本系统是在Windows7操作系统环境下,使用MyEclipse10.0进行开发,java JDK版本为 1.7.0_21,发布平台为apache-tomcat-7.0.23,数据库采用安装简易的MySQL数据库版本为5.0.23 3.5 功能需求 3.5.1 用户登录 功能用途:系统进入通道,这是信息类系统常用的安全防范机制。 操作权限归属:需要进入系统的所有人员。 输入数据:员工工号,密码,验证码,职称 基本操作:登录信息录入,确定登录,取消登录。 所在位置:系统启动时的系统首页登录界面。 其他说明:系统登录的过程就是对工作人员是否进行过合法登记,
34、而进行的身份验证过程,并且可以区分用户权限,防止非法用户进入。 3.5.2 员工管理 功能用途:登记或设置员工的身份标识等基本信息。 操作权限归属:能够进入系统的普通工作人员,系统管理员。 主要数据:员工工号,姓名,性别,年龄,身份证号码,出生日期,学历,加入日期,住址,联系电话,部门,职位 基本操作:添加记录,删除数据,更新数据,条件查询,登录权限赋予。 所在位置:工作人员对员工信息管理的页面。 其他说明:员工工号是员工的主要身份标识,被用作工作人员登录系统时的身份验证依据,也是工作人员进行物流处理时的经手人识别标记。所以,该身份ID在添加数据时是由系统根据职位和部门id由系统
35、自动生成的,并不能被修改。 3.5.3 客户管理 功能用途:登记或修改供应商的基本信息。 操作权限归属:能够进入系统的仓管人员,系统管理员。 主要数据:供应商编号,名称,负责人,地址,电话,传真,邮件,网址。 基本操作:添加记录,删除数据,更新数据,条件查询。 所在位置:客户管理的页面。 其他说明:供应商对应其提供的产品信息,每一件产品都有其制造商,仓库中的产品在添加时都要填写该项。 3.5.4 产品管理 功能用途:登记或修改产品的基本信息。 操作权限归属:能够进入系统的仓管人员,系统管理员。 主要数据:产品编号,产品全称,分类,供应商,产地,产品的计量单位,有效期,型号
36、备注。 基本操作:添加记录,删除数据,更新数据,条件查询。 所在位置:产品管理的页面。 其他说明:每一件产品信息在添加时都要使用触发器同步更新到库存信息表中,初始数量为0,在修改产品基本信息时,一些必要数据也要同步更改。 3.5.5 库存管理 功能用途:查询库存的基本信息,并在库存报警时能够通过管理员更新库存。 操作权限归属:能够进入系统的仓管人员,系统管理员。 主要数据:产品信息,余量,上下限报警。 基本操作:更新数据,条件查询。 所在位置:库存管理的页面。 其他说明:库存的余量信息是由出入库的情况自动更新的,上下限报警数据可由管理员在获取通知后更新。 3.5.6 入
37、库管理 功能用途:登记或查询入库单信息,并提供打印功能。 操作权限归属:能够进入系统的仓管人员,系统管理员。 主要数据:入库单号,日期,负责人,产品编号,数量,型号,类别,单位,存放位置。 基本操作:添加记录,条件查询,打印。 所在位置:入库管理的页面。 其他说明:入库单号由系统根据日期自动生成,信息填写需要根据实际入库信息填写,有必要的数据验证,和库位选择等,提供打印选项。 3.5.7 出库管理 功能用途:登记或查询供出库单信息,并提供打印功能。 操作权限归属:能够进入系统的仓管人员,系统管理员。 主要数据:出库单号,日期,负责人,产品编号,数量,型号,类别,单位,接收人
38、生产项目编号,备注。 基本操作:添加记录,条件查询,打印。 所在位置:出库管理的页面。 其他说明:出库单号由系统根据日期自动生成,信息填写需要根据实际入库信息填写,有必要的数据验证,提供打印选项。 3.5.8 库位管理 功能用途:登记或修改库位信息。 操作权限归属:系统管理员。 主要数据:仓库区域编号,区域描述,排号编号,排号描述,座号编号,座号描述。 基本操作:添加记录,修改记录,删除记录,条件查询。 所在位置:库位管理的页面。 其他说明:库位模块是产品存放的位置,以模拟三维空间记录存放信息。 3.5.9 系统管理 功能用途:登记或修改系统权限信息。 操作权限归属
39、系统管理员。 主要数据:登录员工的工号,姓名,密码,权限。 基本操作:添加记录,修改记录,删除记录,条件查询。 所在位置:系统管理的页面。 其他说明:系统管理主要是用来管理能够登录的用户,并提供赋予和修改登录用户的权限信息。 第四章 物流仓储调度系统的设计与实现 根据仓储管理系统的特点,可以将其分为员工信息管理,客户信息管理,产品信息管理,库存信息管理,库位信息管理,系统信息管理6大部分,其中各个部分及其包括的具体功能模块如图4.1。 仓储管理系统 客户管理 系统管理 库位管理 库存管理
40、 产品管理 员工管理 权限信息的增删改查 登录信息的删改查 打印 库存报警修改 库存查询 出库单查询 出库单填写 入库单查询 入库单填写 产品信息的增删改查 客户信息的增删改查 职位信息的增删改查 部门信息的增删改查 员工登录权限分配 员工信息的增删改查 座号信息的增删改查 排号信息的增删改查 区域信息的增删改查 图4.1 仓储调度系统功能模块图 4.1 系统数据库设计 MySQL数据库是一个开放源码的小型关联式数据库管理系统,由瑞典MySQL AB公司开发。目前MySQL被
41、广泛地应用在Internet上的中小型项目中。由于速度快、体积小、安装方便、总成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了Oracle的MySQL作为网站数据库。因此本系统选择MySQL用来进行数据管理。 4.1.1 系统实体E-R图 员工实体将记录所有的员工信息,在分配登录权限时将直接引入员工的实体属性。员工实体包括工号、姓名、性别、年龄、身份证号码、出生日期、学历、电话、加入日期、住址、部门编码和职位编码属性。如图4.2所示。 身份证号码 出生日期 年龄 性别 姓名 工号 员 工 职位编码 部门编码 加入日期 住址
42、 电话 学历 图4.2 员工实体E-R图 部门实体将记录所有的部门信息,在员工信息中将引用部门的实体属性。部门实体包括部门编码和部门名称属性。如图4.3所示。 部门编码 部门名称 部 门 图4.3 部门实体E-R图 职位实体将记录所有的职位信息,在员工信息中将引用职位的实体属性。职位实体包括职位编码、职位名称和部门编码属性。如图4.4所示。 职位编码 职位名称 职位 部门编码 图4.4 职位实体E-R图 供应商实体将记录所有的供应商信息,在产品信息中将引入供应商的实体属性。供应商实体包括供应商编号、供应商名称、负责人、地址、电话
43、传真、邮件和网址属性。如图4.5所示。 供应商编码 供应商名称 地址 负责人 供应商 网址 邮件 电话 传真 图4.5 供应商实体E-R图 产品实体将记录所有的产品信息,在库存信息中将引入产品的实体属性。产品实体包括产品编号、产品名称、分类、供应商编码、产地、商品单位、有效期、型号和备注属性。如图4.6所示。 供应商编码 产品名称 产品编号 分类 产 品 有效期 商品单位 备注 型号 产地 图4.6 产品实体E-R图 库存实体将记录所有的库存信息,在出入库信息中将引入库存的实体属性。库存实体包括产品编号、
44、产品名称、产品型号、单位、余量、上线提醒、下限提醒、上限报警和下限报警属性。如图4.7所示。 产品名称 产品编号 单位 型号 库 存 下限报警 上限报警 下限提醒 上限提醒 数量 图4.7 库存实体E-R图 入库单实体将记录所有的入库信息。入库单实体包括入库单号、日期、负责人、产品编号、数量、型号、类别、单位、存放位置和备注属性。如图4.8所示。 负责人 入库单号 日期 产品编号 数量 入库单 单位 备注 存放位置 类别 型号 图4.8 入库单实体E-R图 出库单实体将记录所有的出库信息。出库单实体包括出库单号
45、日期、负责人、产品编号、数量、型号、类别、单位、接收人、生产项目编号和备注属性。如图4.9所示。 负责人 出库单号 日期 产品编号 数量 出库单 生产项目编号 单位 备注 接收人 类别 型号 图4.9 出库单实体E-R图 登录用户实体将记录所有的登录用户信息。登录用户实体包括用户工号、姓名、密码和权限编码属性。如图4.10所示。 登录用户 工号 姓名 权限编码 密码 图4.10 登录表实体E-R图 用户权限实体将记录所有的用户权限信息,在用户登录信息中将引用用户权限的实体属性。用户权限实体包括用户权限编码、权限
46、名称属性。如图4.11所示。 权限编码 用户权限 权限名称 图4.11 用户权限实体E-R图 库位区域实体将记录所有的库位区域信息,在入库单信息中将引用库位区域的实体属性。库位区域实体包括区域编码、区域名称属性。如图4.12所示。 区域编码 库位区域 区域名称 图4.12 库位区域实体E-R图 库位排号实体将记录所有的库位排号信息,在入库单信息中将引用库位排号的实体属性。库位排号实体包括排号编码、排号名称和区域编码属性。如图4.13所示。 排号编码 库位排号 排号名称 区域编码 图4.13 库位排号实体E-R图 库位座号实体将记录
47、所有的库位座号信息,在入库单信息中将引用库位座号的实体属性。库位座号实体包括库位座号编码、座号名称、库位区域编码和库位排号编码属性。如图4.14所示。 座号编码 职位名称 排号编码 库位座号 区域编码 图4.14 库位座号实体E-R图 4.1.2 系统数据表设计 结合实际情况及对用户需求的分析,仓储管理系统wms数据库主要包含如下表4.1所示的13个数据表。 表4.1 仓储调度系统数据表 表 名
48、 说 明 departmentinfotable 部门表 employeeinfitable 员工表 goodsinfotable 产品表 goodslocationtable 库位区域表 goodsrowstable 库位排号表 goodsseatstable 库位座号表 jobsinfotable 职位表 login table 登录表 powerinfotable 权限表 stockinfotable 库存表 stockininfotable 入库表 stockoutinfotable 出库表 supply t
49、able 供应商表 departmentinfotable(部门表)主要用于存储部门信息。该数据表结构如表4.2所示。 表4.2 部门信息表 字段名 数据类型 是否为空 是否主键 默认值 说明 id int(4) 否 是 NULL 自增 depId varchar(20) 否 否 NULL 部门编号 depName varchar(20) 否 否 NULL 部门名称 employeeinfotable(员工表)主要用于存储员工信息。该数据表结构如表4.3所示。 表4.3 员工信息表 字段名 数据类型 是否为空 是否主
50、键 默认值 说明 id int(8) 否 是 NULL 自增 empId varchar(20) 否 否 NULL 员工编号 empName varchar(20) 否 否 NULL 姓名 empSex varchar(4) 否 否 NULL 性别 empAge int(3) 否 否 NULL 年龄 empIdentCard varchar(20) 否 否 NULL 身份证号 empBirthDate varchar(20) 否 否 NULL 出生日期 empDiploma varchar(20) 否






