仓储管理系统——软件工程报告(详细设计)④

news2024/10/6 20:04:55

详细设计

一、系统功能模块的划分

根据系统的功能性需求,本文将部队仓库管理系统分为以下六大模块:系统管理模 块、基础数据模块、出入库管理模块、库存管理模块、仓库信息管理模块、作业管理模 块,每个模块内部又分为很多小功能模块,六大模块相互依赖相互作用共同组成了整个 仓库管理系统。系统具体的功能模块划分如下图 3.1 所示。

         本系统主要功能模块如上图所示,其中系统管理模块主要供超级管理员使用,基础数据模块、出入库管理模块、库存管理模块、仓库信息管理模块主要供仓库管理员使用,作业管理模块主要供仓库操作员使用。

二、系统功能模块设计

2.1系统管理模块

系统管理中将管理员分为三级,一级仓库管理员账号要由系统超级管理员来进行分配和管理,二、三级仓库管理员账号及各营区的各仓库操作员主要由其上级单位仓库管理员进行分配与管理。本系统预设了一个系统管理员账号,负责对系统年度、标识码进行设定,初始化基础数据库信息以及分配初始登录账号。该模块功能设计图如图 3.2 所示。

2.2基础数据模块

基础数据模块主要包括单位目录、装备目录和器材目录等的设置,该模块中的各种基础数据是该仓库管理系统运行过程中极其重要的基础信息资料。整个系统在后期使用时,各种物资信息以及单位信息都是靠基础数据模块进行提供,因此这一模块也要 具备较高的复杂度以及较高的准确性。基础数据模块具体功能图如图 3.3 所示。

 3.3 基础数据模块具体功能图

单位目录设置:在这一模块,将实现增加、修改、删除该部队下各单位信息操作的功能。单位目录一般是从上级获取数据交换文件,然后导入到本系统内。系统在导入成功单位目录文件后能看到登录用户本级及其下属的单位相关信息。 

装备目录设置:在这一模块,将实现增加、修改、删除该部队下基础装备信息的功能。装备目录一般是也从上级获取数据交换文件,然后导入到本系统内。 

器材目录设置:在这一模块,将实现增加、修改、删除该部队下基本器材信息的功能。器材目录一般是从上级获取数据交换文件,然后导入到本系统内。如果采用系统默认的数据库,则系统已经内置了器材目录,不用再重新导入。 

系统初次登录需要超级管理员来初始化一些基本数据:初始化流程如图 3.4 所示

如上图所示,系统超级管理员首次登录系统,首先导入基础数据相关的 XML 或者

Excel 文件,其次管理员需要设置年度信息用于后期的年度结转,然后需要导入装备和 器材目录,最后导入仓库库存的相关信息,系统初始化完成

2.3出入库管理模块

出入库管理模块在整个部队仓库管理系统中至关重要,该模块主要实现对装备、器 材出库以及入库流程的整体监管,并对出入库完成后生成的凭据信息进行管理。出入库 管理模块主要分为出库和入库管理模块。出入库管理模块具体功能图如图 3.5 所示。

 入库流程为:当有入库需求时,仓库管理员下载导入调拨单或者合同,这里面包含 了入库器材、装备、数量、单价等一些基本信息数据;仓库管理员据此生成入库验收单 对这些数据进行清点验收;验收完成后可以通过手动新建或者自动生成的方式去生成入 库单;在验收完成之后,仓库管理员此时就可以下达入库作业了,通过本系统中的仓库 作业顺序优化算法来生成入库作业单,这时本次入库流程将变为已下达入库单,等待仓 库操作员进行仓库作业;最后仓库操作员进行作业,入库作业完成后本次入库流程变为 入库完成,系统将自动生成增加凭据信息。入库整体流程如图 3.6 所示。

出库流程为:当有出库需求时,仓库管理员下载导入调拨单,这里面包含了本次出 库器材、装备、数量、单价等一些基本信息数据以自动生成的方式去生成出库单或者根 据部队人员分队清领的具体情况去生成出库单,仓库管理员也可以通过手动创建的方式 去生成出库单;生成出库单之后仓库管理员就可以下达出库作业,通过本系统中的仓库 作业顺序优化算法来生成除库作业单,这时本次出库流程将变为已下达出库单,等待仓 库操作员进行仓库作业;最后仓库操作员进行作业,出库作业完成后本次出库流程变为 出库完成,系统将自动生成减少凭据信息。上述出库整体如图 3.7 所示。

 

2.4库存管理模块

库存管理模块主要功能为对单位库存、库房库存、货位库存、库房储位、库存流水 账进行管理、调配、统计以及盘库和库存报警等。库存管理模块具体功能图如图 3.9 所 示。

 

库存管理功能主要有以下四种模式: 

(1)单位库存表示器材在本单位的数量和收发等情况。在库存初始化完成前,单位库存是可以编辑的。库存初始化完成后,则不能再编辑。单位库存模块面向对象:系统 管理员、仓库管理员、仓库操作员。可以通过大类名称、物品代码、物品名称、型号规格、图号等或者通过更多查询条件来查询筛选信息。

(2)库房库存主要是实现建立库房库存、查看库房数据等功能。库房库存模块面向 对象:系统管理员、仓库管理员、仓库操作员。但仓库操作员只能查询库房库存相关信 息。查询条件如单位库存相同不重复赘述了。

(3)货位库存主要是实现建立货位库存、查看货位数据等功能。查询条件如单位库存相同不重复赘述了。

(4)库房储位是指某栋库房内由哪些货位,主要用来打印储位标志时使用。可以通 过库房号、区号、架号、层号、位号等条件来查询数据。

2.5仓库信息管理模块

仓库信息管理模块主要是由仓库管理员对仓库信息、货架信息进行管理。仓库管理 员根据实际的仓库环境以及货架信息来动态的增加、编辑、删除本系统中的仓库以及货 架信息。仓库信息管理模块用例图如图 3.10 所示。

该模块具体业务设计流程图如图3.11所示。

2.6作业管理模块

作业管理模块主要是由仓库操作员对仓库进行入库作业、出库作业、货位调整作业 进行管理。该模块具体功能图如图3.12所示。

以入库作业为例,仓库管理员可在入库单页面点击下达入库作业单,本系统可根据 入库单详情通过NSGA-II-MOPSO融合算法对入库作业进行作业顺序优化,该功能的实 现详情见第 5 章,以此来生成入库作业单。仓库操作员配有手持机 PDA,可以利用PDA

进行入库作业。首先操作员将入库作业单以XML导入PDA中,操作员根据 PDA 中入 库作业单详情,利用运输车进行作业,作业完成之后,在利用 PDA 手持机的导出功能, 将作业情况导入到仓库管理系统中,入库作业流程图如图 3.13 所示。

三、系统数据库设计

3.1数据库E—R图设计

数据库E-R模型即实体-联系图,是设计关系型数据库的基础,通过 E-R 图可以简单明了的反映出系统数据结构和各个实体之间的联系。根据项目需求,本文针对部队仓库管理系统的具体业务功能设计了四十多余个实体,下面仅对人员、单位、出入库、货位、仓库等较为关键的实体进行分析。

(1)人员信息的实体模型,如图 3.14 所示。

(2)单位信息的实体模型,如图 3.15 所示。

(3)入库单详情的实体模型,如图 3.16 所示。

(4)出库单详情的实体模型,如图 3.17 所示。

 (5)货位信息的实体模型,如图3.18所示。

(6)仓库信息的实体模型,如图 3.19 所示

3.2数据库表结构设计

本系统有几十张表,本文主要列举一些较为关键的表进行分析,主要包括用户信息表、 单位信息表、入库单信息表、入库单详情表、出库单信息表、出库单详情表、装备信息 表、器材信息表、仓库信息表,入库作业单信息表,出库作业单信息表等。部分数据表 详细设计如下所示: 

1)用户信息表 

用户信息表的名称为 user_info,用于记录本系统用户的基本信息,表中的包括用户 编号、用户姓名、登录账号、密码、用户所属单位、角色类型、创建时间、账号状态等, 其中 USER_ID 字段作为该表的主键详细设计如下表 3.1 所示: 

2)入库单信息表 

入库单信息表的名称为 warehouse_list,用于记录本系统中入库单信息,包括入库单 编号、入库类型、操作人、入库详情单编号、单位编号、单位名称、创建时间、备注, 其中入库详情单编号为入库详情表的主键,通过这一外键将两表相关联起来,其中WAR_ID 字段作为该表的主键。详细设计如下表 3.2 所示:

3)出库单信息表 

出库单信息表的名称为 outbount_list,用于记录本系统中出库单信息,包括出库单 编号、出库类型、操作人、出库详情单编号、单位编号、单位名称、创建时间、备注, 其中出库详情单编号为入库详情表的主键,通过这一外键将两表相关联起来,其中

OUT_ID 字段作为该表的主键。详细设计如下表 3.3 所示:

4)仓库信息表 

仓库信息表的名称为 warehouse_info,用于记录本系统中仓库详情信息,包括仓库 名称、仓库编号、仓库属性、仓库长度、仓库宽度、仓库高度、货架数量,其中仓库编 号 WAREHOUSE_ID 字段作为该表的主键。详细设计如下表 3.4 所示:

3.4本章小结

本章首先根据实际需求将仓库管理系统划分为不同的模块,其次对各功能模块进行业务流程的设计;最后从系统的E-R图设计和数据表的设计方面阐述系统的细节设计。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1411919.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java数据结构与算法刷题-----LeetCode769. 最多能完成排序的块

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 解题思路 这道题可以理解为,只能保证块内有序的情况下&#xf…

力扣 | 141. 环形链表

快慢指针的使用&#xff01; import java.util.HashSet; import java.util.Set;public class _141_linked_list_cycle {// 哈希查找// 时间复杂度&#xff1a;O(n)// 空间复杂度&#xff1a;O(n)public boolean hasCycle1(ListNode head) {Set<ListNode> set new HashSe…

2-SAT问题相关理论和算法

前言 SAT 问题简介 SAT是可满足性、适定性(Satisfiability)问题的简称。一般形式为k-适定性问题或k-可满足性问题&#xff0c;简称 k-SAT。 何为布尔可满足性问题&#xff1f;给定一条真值表达式&#xff0c;包含逻辑变量、逻辑与、逻辑或以及非运算符&#xff0c;如&#x…

uniapp app更新

uniapp app更新 这个版本要随之增加&#xff0c;不然刚更新时直接用app, 新包增加的那些页面跳转会有问题&#xff0c;不能跳新的页面 //app更新检测 updataApp(){const that this;uni.showLoading({title:加载中...})plus.runtime.getProperty(plus.runtime.appid, functio…

JS进阶-高阶技巧

深浅拷贝 首先浅拷贝和深拷贝只针对引用类型 • 浅拷贝 开发中我们经常需要复制一个对象。如果直接用赋值会有下面问题&#xff1a; 这好比有同学来pink老师这里拷视频&#xff0c;竟然用的是剪切…气人不 浅拷贝&#xff1a;拷贝的是地址 1. 拷贝对象&#xff1a;Object…

塑料透光率测定仪评估塑料质量

塑料透光率是指光线通过塑料材料的能力&#xff0c;是评估塑料质量的重要指标之一。透光率越高&#xff0c;塑料的质量通常越好。为了确保生产出的塑料制品具有良好的透光性&#xff0c;对塑料透光率的检测非常重要。 一、塑料透光率检测方法 塑料透光率检测通常采用两种方法…

苹果Find My市场需求火爆,伦茨科技ST17H6x芯片助力客户量产

苹果发布AirTag发布以来&#xff0c;大家都更加注重物品的防丢&#xff0c;苹果的 Find My 就可以查找 iPhone、Mac、AirPods、Apple Watch&#xff0c;如今的Find My已经不单单可以查找苹果的设备&#xff0c;随着第三方设备的加入&#xff0c;将丰富Find My Network的版图。产…

攻防世界WEB新手训练区

view_source 此题我愿称之为网安领域的hello world 查看网页源代码的方式一般有—— 右键->查看网页源代码F12->源代码/来源Ctrlu 随后可以再代码第17行处找到flag&#xff0c;至此迈入网安第一步。可喜可贺&#xff0c;可喜可贺... get_post 考察http的两种请求方式&…

Cesium数据加载

文章目录 0.引言1.影像加载1.1Bing地图1.2天地图1.3ArcGIS在线地图1.4高德地图1.5OSM影像1.6MapBox影像 2.OGC地图服务2.1WMS2.2WMTS2.3TMS 3.GeoJSON数据加载4.KML数据加载5.TIFF数据加载6.点云数据加载7.地形数据加载7.1在线地形数据加载7.2本地地形数据加载 8.倾斜摄影模型数…

Influxdb系列(一)influxdb2.7.x的部署安装

一、influxdb的介绍 InfluxDB 是一种时序数据库&#xff0c;时序数据库通常被用在监控场景&#xff0c;比如运维和 IOT&#xff08;物联网&#xff09;领域。这类数据库旨在存储时序数据并实时处理它们。 比如。我们可以写一个程序将服务器上 CPU 的使用情况每隔 10 秒钟向 In…

基于springboot+vue旅游网站

摘要 旅游网站的开发是一个综合性的项目&#xff0c;涉及到前端和后端的技术&#xff0c;而基于Spring Boot和Vue.js的组合是一种常见的选择&#xff0c;因为它们可以很好地配合&#xff0c;提供高效且现代化的开发体验。首先&#xff0c;我们使用Spring Boot作为后端框架。Spr…

《WebKit技术内幕》学习之十五(2):Web前端的未来

2 嵌入式应用模式 2.1 嵌入式模式 读者可能会奇怪本章重点表达的是Web应用和Web运行平台&#xff0c;为什么会介绍嵌入式模式&#xff08;Embedded Mode&#xff09;呢&#xff1f;这是因为很多Web运行平台是基于嵌入式模式的接口开发出来的&#xff0c;所以这里先解释一下什…

3ds Max宣传片怎么提升渲染速度?从硬件升级到云渲染,全面提升你的渲染速度!

在3ds Max中&#xff0c;渲染是一项耗时的任务&#xff0c;尤其是对于大型场景和复杂的动画。然而&#xff0c;通过一些优化策略和技巧&#xff0c;你可以显著加速渲染过程。以下是一些建议和技巧&#xff0c;帮助你提高3ds Max的渲染速度&#xff1a; 1.升级硬件&#xff1a; …

Caused by: com.mongodb.MongoTimeoutException: Timed out after 30000 ms

报错 Caused by: com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting to connect. Client view of cluster state is {typeUNKNOWN, servers[{addressmangodb-m.cc.com:3717, typeUNKNOWN, stateCONNECTING, exception{com.mongodb.MongoSocketReadE…

H.264与H.265的主要差异

H.265仍然采用混合编解码&#xff0c;编解码结构域H.264基本一致&#xff0c; H.265与H.264的主要不同 编码块划分结构&#xff1a;采用CU (CodingUnit)、PU(PredictionUnit)和TU(TransformUnit)的递归结构。 并行工具&#xff1a;增加了Tile以及WPP等并行工具集以提高编码速…

梦百合2024经销商大会:优结构、强终端、提质量,深化同频与赋能

2024年1月24日-25日,以“优结构强终端提质量”为主题的梦百合2024年经销商大会在江苏如皋圆满召开,汇聚来自全国各地的400余名经销商代表,总结回顾了梦百合2023年发展成果,描绘2024年发展蓝图,表彰优秀经销商,加强品牌与经销伙伴的同频共振,为2024年的携手共进开好头、起好步。…

赋能未来社区:数据中台智慧园区的全方位解决方案_光点科技

在信息技术与互联网快速发展的今天&#xff0c;传统的园区管理方式已无法满足时代对效率与智能化的追求。数据中台作为企业数字化转型的核心&#xff0c;正引领着智慧园区的发展趋势。一个集成了数据中台的智慧园区&#xff0c;不仅能有效地整合资源&#xff0c;优化管理流程&a…

【 HTML 】引入 favicon 图标、SEO 优化

生命是一本精彩的书&#xff0c;每一天都是一页&#xff0c;每一次努力都是一个章节。用心书写&#xff0c;创造属于自己的绚丽篇章。 1. 网站制作流程 开发一个网站&#xff0c;我们先要熟悉一下网站制作流程 原型图&#xff1a; 页面的布局&#xff0c;告知我们开发人员&…

保险箱(第十四届蓝桥杯省赛PythonB组)

小蓝有一个保险箱&#xff0c;保险箱上共有 n 位数字。 小蓝可以任意调整保险箱上的每个数字&#xff0c;每一次操作可以将其中一位增加 1 或减少 1。 当某位原本为 9 或 0 时可能会向前&#xff08;左边&#xff09;进位/退位&#xff0c;当最高位&#xff08;左边第一位&am…

视频美颜SDK详解:动态贴纸技术的前沿探索

当下&#xff0c;美颜SDK的动态贴纸技术作为视频美颜的独特亮点&#xff0c;吸引了越来越多开发者和用户的关注。 一、技术详解 动态贴纸技术是视频美颜SDK中的一项创新性功能&#xff0c;它通过在实时视频中添加各种动态效果&#xff0c;为用户提供更加生动有趣的拍摄体验。…