1 项目简介

1.1 项目背景

电商与全球贸易快速扩张,仓储业务量持续上涨。传统纯人工仓库管理依靠手写账本记录物资,存在三大核心痛点:

  1. 人工登记效率低,出入库、库存统计容易出现人为错误;

  2. 库存信息无法实时同步,经常出现缺货、大量囤货两种极端情况;

  3. 补货、取货流程无线上审批,纸质单据难追溯,管理员无法统一管控仓库物资。

为解决以上问题,开发这套线上仓库管理系统,实现库存自动预警、线上申请审批、人员统一管理、物资信息数字化存储,全程线上流转单据,替代传统纸质办公。

1.2 项目核心价值

  1. 降低人力成本:自动化库存检测、线上审批,减少纸质单据登记、人工盘点工作量;

  2. 实时库存管控:系统自动识别低库存商品,自动推送补货提醒,平衡库存数量;

  3. 流程可追溯:所有补货、取货申请线上留痕,每一笔操作都可查询记录;

  4. 权限分级管理:区分普通员工、管理员账号,不同人员只能操作对应功能,数据更安全。

1.3 适用人群与使用场景

  • 使用人群:仓库一线操作员工、仓库主管 / 系统管理员;

  • 使用场景:中小型电商仓库、生产企业原料仓库、零售门店仓储。

2 行业现状与开发目标

2.1 行业技术现状

国内仓储系统发展

国内仓储数字化正在快速普及,主流方案分为两类:

  1. 轻量化网页仓储系统:SpringBoot+Vue 架构,低成本、易部署,适合中小仓库;

  2. 大型智能仓储:结合 RFID、物联网、机器人,适合大型物流园区,开发成本高。
    目前多数中小企业缺少轻量化低成本仓储工具,本系统恰好适配该市场需求。

国外仓储系统发展

海外仓储普遍结合 RPA 自动化流程、机器学习智能预测库存,自动化程度更高,但软件采购、部署费用昂贵,不适合国内中小仓库使用。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 项目开发目标

  1. 功能目标:实现库存预警、补货申请、取货申请、员工账号管理、物资基础数据维护全流程线上化;

  2. 性能目标:普通电脑浏览器流畅运行,单页面加载时间≤2 秒,支持 50 人同时在线操作;

  3. 易用目标:页面操作简单,仓库员工零基础培训即可上手;

  4. 安全目标:账号分级权限隔离,操作数据永久留存,防止误删、越权操作。

3 整体技术方案

3.1 核心开发技术说明

后端技术 SpringBoot

  1. 优势:无需大量 XML 配置,内置 Tomcat 服务器,打包直接运行;

  2. 项目作用:处理前端所有接口请求,编写库存、申请、人员相关业务逻辑,对接数据库。

前端技术 Vue

  1. 优势:页面组件化开发,数据实时联动,页面渲染速度快;

  2. 项目作用:搭建所有操作页面,实现申请提交、库存查看、数据编辑、列表查询等交互功能。

数据库 MySQL

  1. 优势:开源免费,稳定支持大量数据读写,支持事务保证单据数据不丢失;

  2. 项目作用:存储员工账号、库存物资、补货单据、取货单据、分类字典全部业务数据。

架构模式 MVC

分层解耦,三层分工明确:

  1. View 视图层:Vue 前端页面,展示数据、接收用户点击 / 输入操作;

  2. Controller 控制层:接收前端请求,分发对应业务处理;

  3. Model 模型层:Service 业务逻辑 + MySQL 数据库,负责数据计算、存储。

3.2 开发 & 运行环境

开发环境

  • 电脑系统:Windows 10

  • 代码工具:IDEA

  • Java 版本:JDK1.8

  • 构建工具:Maven

线上运行环境

  • 服务器系统:Windows Server / Linux CentOS

  • 数据库:MySQL 5.7 及以上

  • 访问方式:浏览器直接访问,无需安装客户端

4 系统需求说明

4.1 功能需求(分角色)

角色 1:仓库员工(普通账号)

  1. 补货提醒查看:系统自动识别库存不足商品,展示缺货清单;

  2. 补货申请提交:看到缺货后,线上提交补货单据,等待管理员审核;

  3. 补货申请查询:查看自己提交的补货单审核状态(待审核 / 通过 / 驳回);

  4. 取货申请提交:领用物资时提交出库申请;

  5. 取货申请查询:查看出库申请审批进度、管理员备注意见。

角色 2:系统管理员(主管账号)

  1. 员工账号管理:新增、删除员工账号,修改员工操作权限;

  2. 补货提醒配置:自定义库存预警阈值,调整提醒触发规则;

  3. 补货申请审批:查看所有员工补货单,批准 / 驳回并填写审核意见;

  4. 取货申请审批:审核出库单据,安排物资出库;

  5. 基础物资管理:新增、修改、删除商品分类、物资基础信息。

4.2 非功能硬性要求

  1. 可用性:页面简洁,按钮、菜单逻辑符合仓储人员操作习惯,兼容 Chrome、Edge 主流浏览器;

  2. 可靠性:所有单据创建、审核记录永久保存,支持数据备份,操作异常不丢失数据;

  3. 安全性:员工只能查看自己提交的单据,管理员可查看全量数据;账号密码加密存储,无权限人员无法访问后台管理功能。

4.3 项目可行性评估

  1. 经济可行:全部技术开源无收费,普通服务器即可部署,开发、运维成本极低;

  2. 技术可行:SpringBoot+Vue 属于成熟通用技术,网上资料丰富,无技术卡点;

  3. 操作可行:页面操作流程简化,配套简易操作说明,仓库人员快速学会使用。

5 系统架构与数据库设计

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.1 系统分层架构

  1. 前端层(端口 8080):Vue 页面,用户操作入口;

  2. 接口控制层(端口 8181):SpringBoot Controller,接收前端所有请求;

  3. 业务服务层(Service):处理库存计算、单据审核、权限校验核心逻辑;

  4. 数据持久层(Repository):对接 MySQL,执行增删改查;

  5. 实体 & 配置层:Entity 映射数据表,application.yml 配置数据库、端口等参数。

5.2 数据库表设计

项目共 6 张业务数据表,每张表字段、用途说明如下:

表 1 补货申请表 reorder

字段名 类型 主键 说明
Id int 单据唯一 ID
buhuotixing_id int 关联缺货提醒 ID
yonghu_id int 提交员工 ID
buhuoshneqing_yesno_types int 审核状态 0 待审核 / 1 通过 / 2 驳回
buhuoshneqing_yesno_text varchar 管理员审核意见
create_time date 单据创建时间

表 2 补货提醒表 reorder_tip

字段名 类型 主键 说明
Id int 提醒 ID
buhuotixing_name varchar 物资名称
buhuotixing_types int 物资分类编码
buhuotixing_number int 建议补货数量
buhuotixing_stauts_types int 提醒状态
buhuotixing_delete int 软删除标识 0 正常 / 1 删除
create_time date 生成时间

表 3 字典表 dict

存储物资分类、状态编码等通用固定数据

字段名 类型 主键 说明
Id int 主键 ID
dic_code varchar 编码标识
dic_name varchar 编码名称
code_index int 子编码
index_name varchar 子编码名称
super_id int 父级分类 ID
beizhu varchar 备注
create_time date 创建时间

表 4 取货申请表 pickup

字段名 类型 主键 说明
Id int 出库单 ID
quhuoshenqing_name varchar 领用物资名称
buhuotixing_types int 物资分类
yonghu_id int 提交员工 ID
quhuoshenqing_number int 取货数量
quhuoshenqing_yesno_types int 审核状态
quhuoshenqing_yesno_text varchar 审核意见
create_time date 单据创建时间

表 5 员工表 staff

存储仓库员工基础个人信息

字段名 类型 主键 说明
Id int 员工 ID
yonghu_name varchar 员工姓名
yonghu_photo varchar 头像文件路径
yonghu_phone varchar 联系电话
yonghu_id_number varchar 身份证号
yonghu_email varchar 邮箱
yonghu_delete int 软删除标识
create_time date 录入时间

表 6 用户登录表 user

存储登录账号、角色权限

字段名 类型 主键 说明
Id int 账号 ID
username varchar 登录用户名
password varchar 加密密码
role varchar 角色 staff 员工 /admin 管理员
addtime date 账号创建时间

6 各功能模块开发说明

6.1 员工端功能模块

6.1.1 补货提醒管理

  1. 后端核心代码类:InventoryService、NotificationService

  2. 核心逻辑:系统定时自动扫描库存,低于预设阈值自动生成提醒;员工页面展示全部缺货物资,一键提交补货申请;

  3. 页面操作:查看缺货清单 → 填写补货数量 → 提交单据。

6.1.2 补货申请管理

  1. 后端核心代码类:ReorderService

  2. 核心逻辑:员工查看自己提交的所有补货单,实时展示管理员审核状态;未审核单据支持撤回修改;

  3. 页面操作:列表查看单据 → 查看管理员意见 → 撤回未审核单据。

6.1.3 取货申请管理

  1. 后端核心代码类:PickupService、InventoryService

  2. 核心逻辑:员工填写领用物资、数量提交申请;系统自动校验现有库存,库存不足直接拦截提交;

  3. 页面操作:选择物资分类 → 填写领用数量 → 提交出库申请。

6.2 管理员端功能模块

6.2.1 员工账号管理

  1. 后端核心代码类:UserService

  2. 核心逻辑:管理员新增 / 删除员工登录账号,分配员工角色权限,修改员工个人信息;删除采用软删除,历史数据保留;

  3. 页面操作:员工列表新增 / 编辑 / 删除,批量管理账号。

6.2.2 补货提醒配置

  1. 后端核心代码类:NotificationService

  2. 核心逻辑:管理员自定义每种物资的库存预警数值,调整提醒推送频率,控制提醒规则;

  3. 页面操作:选择物资 → 修改库存阈值 → 保存配置。

6.2.3 补货申请审批

  1. 后端核心代码类:ReorderService

  2. 核心逻辑:展示全部员工提交的补货单据,管理员选择通过 / 驳回,填写审核意见,状态实时同步给提交员工;

  3. 页面操作:查看单据详情 → 填写意见 → 批准 / 驳回。

6.2.4 取货申请审批

  1. 后端核心代码类:PickupRequestController

  2. 核心逻辑:审核出库单据,确认库存充足后安排物资出库,记录审批记录;

  3. 页面操作:浏览出库单 → 审核操作 → 记录出库安排。

6.2.5 基础物资管理

  1. 后端核心代码类:InventoryManagementController

  2. 核心逻辑:维护物资名称、分类、规格等基础数据,新增 / 修改商品信息;

  3. 页面操作:物资分类新增、物资信息编辑、库存状态修改。

7 系统测试方案与测试结果

7.1 测试目标

  1. 验证所有页面功能可正常使用,单据新增、修改、删除逻辑无 BUG;

  2. 校验权限隔离:员工无法访问管理员专属功能;

  3. 验证库存校验、单据状态流转逻辑准确无误。

7.2 测试方式

  1. 功能黑盒测试:模拟真实员工、管理员操作,逐个页面、按钮全量测试;

  2. 流程联调测试:完整走一遍「库存预警→提交补货→管理员审批」「提交取货→出库审核」全业务流程;

  3. 边界测试:测试库存为 0、账号重复、空表单提交等异常场景。

7.3 核心测试用例 & 结果

测试场景 操作流程 预期效果 实际结果 是否通过
库存自动提醒 将物资库存修改为低于预警值 系统生成补货提醒,员工页面可见 正常生成提醒 通过
提交补货申请 员工查看提醒,填写数量提交 数据库新增单据,状态待审核 单据正常创建 通过
补货单审批驳回 管理员打开单据选择驳回 单据状态更新,员工可看到驳回意见 状态同步正常 通过
库存不足提交取货 物资无库存,提交领用申请 系统弹窗提示,禁止提交 拦截成功 通过
新增员工账号 管理员录入信息创建账号 员工表、登录表同步新增数据 数据写入正常 通过
员工越权访问 员工手动输入管理员页面地址 系统拦截,跳转个人首页 权限拦截生效 通过

7.4 测试总结

全部核心业务流程、页面功能、权限控制测试通过,无阻塞性 BUG;页面响应速度、数据存储、单据流转均满足项目设计要求,系统可正常交付使用。

8 项目上线部署说明

8.1 部署前置准备

  1. 服务器:Windows Server / Linux 云服务器一台;

  2. 环境安装:JDK1.8、MySQL5.7+;

  3. 资源准备:后端 jar 包、前端静态文件、数据库初始化 SQL 脚本。

8.2 部署步骤

  1. 执行 SQL 脚本,在 MySQL 创建 6 张业务数据表;

  2. 上传后端 SpringBoot jar 包至服务器,启动 jar 服务;

  3. 部署 Vue 前端静态文件,配置访问端口 8080;

  4. 配置数据库连接地址、账号密码(修改 application.yml);

  5. 测试浏览器访问登录页面,使用管理员账号登录验证全部功能;

  6. 开启数据库定时自动备份,防止数据丢失。

8.3 日常运维说明

  1. 数据备份:每日凌晨自动备份 MySQL 数据表;

  2. 故障处理:页面加载异常优先检查后端服务是否运行;

  3. 账号管理:离职员工管理员及时禁用账号,避免权限泄露。

9 项目总结与迭代规划

9.1 项目总结

本仓库管理系统完成全部预定开发功能,覆盖仓库员工、管理员日常仓储全流程线上操作。系统使用轻量化 SpringBoot+Vue 技术,部署简单、运维成本低,替代传统纸质单据,解决库存管控难、审批流程难追溯、人工操作出错率高的问题,能够满足中小型仓库日常数字化管理需求。经过全流程测试,系统稳定可靠,权限、库存、单据核心逻辑无问题,可直接上线投入使用。

10、项目资料

在这里插入图片描述

👇🏻 精彩专栏 推荐订阅 👇🏻 在下方专栏👇🏻不然下次找不到哟
《Java精品推荐项目》
《springboot+vue项目100套》
《ssm项目100套》
《微信小程序合集》

更多推荐