您好,欢迎来到抵帆知识网。
搜索
您的当前位置:首页物流中心设计文档

物流中心设计文档

来源:抵帆知识网
物流中心设计文档

1. 概述

1.1 业务需求

某物流中心是一家能够接受多家客户的委托管理他们的货物的仓储中心。物流中心能够对仓库内的货物收、发、存、调、移库等操作进行全面的预测、建议、控制和管理。输出报表,及时反映出货物占用状况、收发存情况。使客户能够实现高效管理。

1、委托入库业务:客户出具入库货物清单及货物,物流中心根据清单内容核对入库。 委托入库正常业务的流程如下: 1)仓库收到收货单(客户的发货单),仓库安排车辆,生成入库安排单,运货到仓库。一次运货可以包含多个收货单。 2)当货物运送到库,进行收货确认。 3)依照收货单生成入库单(实际信息)。 4)按照入库单入库,更改库存。

2、发货出库业务:由客户出具提货清单,物流中心根据清单内容进行核对备货并从仓库发送到客户处。 3、拣货安排业务:由多张发货单生成,多张发货单作为一批,生成出库单,同时拣货。 4、移库业务:由于某种需求,商品需要从一个仓库转移到另外一个仓库,这个业务用移库单来发出指令,然后移库。

1.2 上下文图

2. 需求分析

2.1 流程分析

2.1.1 委托入库业务流程分析

当客户有货物需要存到该物流中心时,客户向物流中心提供入库货物清单,物流中心仓库出具入库安排单,主要提供货物入库车辆安排,包括车辆信息、路线信息和时间信息。运输货物车辆根据入库安排单将货物运输到仓库,货物核对员进行收货确认。确认无误后依据收货单生成入库单;工作人员根据入库单将货物移入库位,同时更改库存。

2.1.2 发货出库业务流程分析

客户根据自身需求出具提货清单,物流中心提货员根据清单将货物提到拣货区,货物核对员根据清单内容进行核对备货,若核对有误则重新到仓库提货;若核对无误则生成出库安排单,安排车辆将货物从仓库发送到客户处,同时更改库存。

2.1.3 拣货安排业务流程分析

由多张发货单生成,多张发货单作为一批,生成出库单,同时拣货。

2.1.4 移库业务流程分析

由于物流中心仓库自身需求或是客户的特殊需求,商品需要从一个仓库转移到另外一个仓库,这个业务用移库单来发出指令,然后移库,同时更新库存信息。

2.2 数据建模

2.2.1 委托入库数据流程图

2.2.2 发货出库数据流程图

2.2.3 拣货安排数据流程图

2.2.4 移库数据流程图

2.3 用例建模

物流中心系统的主要角色有四个,分别是:客户、仓库、车辆、货物核对员。其中客户角色

角色:客户 角色:仓库

角色职责: 角色职责:

提供发货单和提货存储货物提供库存

单 信息

角色职责识别: 角色职责识别:

负责提供发货单和负责根据入库出库

提货单,是服务的发单存储货物、提供库

起者 存信息

角色:车辆 角色职责: 运送货物 角色职责识别: 负责根据入库和出库安排单运送货物,由物流中心仓库安排车辆 角色:货物核对员 角色职责: 核对货物 角色职责识别: 负责核对确认入库和出库的货物,无误后方可移入库位或运到客户处 通过分析可以识别出系统的用例为:委托入库管理、发货出库管理、移库管理、拣货安排、提供库存信息。

系统用例图如下:

2.4 基本类模型

通过名词识别法和系统实体识别法等方法可以识别出系统的13个基本类,分别是客户类、仓库类、车辆类、货物类、货物核对员类、库存转移安排单类(父类)、入库安排单类(子类)、出库安排单类(子类)、收货单类(入库货物清单类)、发货单类(提货单类)、移库单类、入库单类、出库单类。

以下用类图来表示基本类模型,包括类名称和类的一些基本属性。如下所示:

客户货物-货物编号-货物名称-客户ID-用户名-密码仓库-仓库ID-库存信息+更改库存()车辆-车牌号-司机

移库单收货单货物核对员-员工编号-密码发货单-编号-客户-货物集合-编号-客户-货物集合-编号-货物-原仓库-移入仓库

入库单-编号-收货单-仓库-货物核对员出库单-编号-发货单-仓库-货物核对员

库存转移安排单-编号-车辆-路线信息-时间信息

入库安排单-编号-收货单出库安排单-编号-出库单

3. 系统设计

3.1 架构设计

由于系统要求实现客户通过互联网查询货物信息和发货信息,结合系统自身的功能需求以及当前的主流经典框架,该系统选择SSH(Struts+spring+hibernate)架构来组织和整合系统各层次之间的服务。

在SSH框架中,struts用来解决MVC中显示、请求控制部分,spring主要负责访问数据库DAO类的事务控制以及它被人称誉的IOC思想在业务类中的恰当运用,hibernate主要是充当数据访问层组件。由于spring对hibernate的良好支持,在DAO类主要由spring来完成,hibernate更多关注的应是O/R影射文件上的配置,如级联关系,延迟加载等如何设置才能使效率更高。

一、表现层

一个典型的web应用的末端是表现层,我们使用struts来负责管理表示层。Struts在该系统中负责管理用户的请求和响应;提供一个控制器将调用委托到业务逻辑层和其他上游处理;组装可以在视图中表现的模型对象;执行UI校验。

二、持久层

持久层是web应用中的关键部分,开发者通常低估了自己创建自己的持久层框架的挑战。Hibernate框架允许Java中对象关系的持久性和查询服务。Hibernate可以查询关系信息到对象中,它是通过称为HQL的查询语言或者使用更有表现能力的规则API来完成这个工作。HQL是一种用于查询对象的自然语言。Hibernate可以存储、更新和删除存储在数据库中的信息;Hibernate同时支持大部分主流SQL数据库,它们支持父/子关系、事务、继承和多态。

三、业务逻辑层

典型的web应用的中间组件一般是业务层和服务层。Spring框架建立在一种叫做依赖注入(dependency injection)的概念之上,Spring中通过针对命名配置参数的bean属性的setter注入来使用。该系统利用Spring来处理应用的业务逻辑和业务校验;管理事务;允许与其他层进行交互的接口;管理业务级对象之间的依赖性;加入了表现和持久层之间的灵活性,以便他们不需要彼此进行直接通信;管理从业务层到表现层的实现。

系统各层次间框架整合后的关系如下图所示:

该物流管理系统的前后台数据交互以及各部分之间的关系图如下:

3.2 界面设计

该物流管理中系统的基本界面设计如下图所示:

3.3 数据库设计

该物流中心管理系统的数据库设计可以使用Mysql这个轻量级的数据库管理系统。物流中心管理系统的数据库设计主要包括12个表结构的设计以及他们之间的关系设计,其主要的表结构以及表之间的关系如下:

3.4 类方法设计

由系统的基本类模型以及系统的需求可以设计出实现系统功能的类方法以及类之间的关系。物流中心管理系统的类方法和类之间的关系如下图所示:

4. 参考文献

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务