欢迎光临
我们一直在努力

【课程设计】基于Spring+Boot的仓库管理系统设计与实现-计算机毕设 53083

基于Spring Boot的仓库管理系统设计与实现

摘要

传统的仓库管理依靠手工账本和纸质单据传递,物资信息更新迟缓,库存盘点误差频繁出现,采购、仓储、财务等各个部门之间数据彼此分割,不能满足企业对于物资流动的即时性和过程可追溯的要求。为了克服上述弊端,设计出一个可以将申请审批流程和物资全生命周期数据结合在一起的仓库管理系统就具有了现实意义。

本系统以IntelliJ IDEA为开发环境,在前端用Vue框架构建出动态交互的界面,在后端用Spring Boot搭建业务逻辑层,用MySQL数据库来持久化存储物资信息以及操作记录。系统分为管理员和员工两种用户,功能模块分为两类。管理员通过使用员工账号管理分配权限,对仓库、物资分类、供应商等基础信息进行维护,对入库、出库、退货申请进行审核,设置库存预警阈值,发起盘点任务并复核盘盈盘亏数据,控制贵重和危险物资的隔离权限,可以使用即时通讯模块接收业务提醒并和员工一起解决现场问题。员工在线提交账号注册申请,审核通过后登录系统查询物资详情和实时库存,通过物资批次号或者二维码追溯完整的流向,提交入库出库退货申请查看审核状态,执行盘点任务时使用批量录入的方式上报实物数据,系统根据预警配置自动推送库存不足或者物资异常的提醒,员工可以上传异常反馈功能上的说明以及图片来帮助管理员快速处理。系统还具有公告发布、考勤记录查看、数据报表导出等功能,形成了覆盖仓库作业全过程的管理闭环。

系统运行之后实现物资申请线上审批、库存状态实时更新、批次追溯贯通物资从入库到出库的全部过程、即时通讯模块提高了管理员和员工之间交流的工作效率。系统在规范仓库作业流程、保证库存数据准确度上取得预期的效果,给企业内部资源管理和信息共享提供可靠的支持。

关键词:仓库管理,Spring Boot,Vue,申请审批,物资追溯

Abstract

Traditional warehouse management has the problem that materials information update delay, frequent inventory count discrepancy, data of the disconnection between procurement department, warehousing department and the financial department. It is hard to satisfy the urgent demand of enterprises to realize real-time display of materials and processes' traceability during their normal operation. To address the problems mentioned above, it is necessary to Design a warehouse management system that integrates applications and approvals and links materials' life cycle data.

The system adopts the IntelliJ IDEA environment for development. The front end uses the Vue framework to build dynamic interactive interfaces, The back end uses Spring Boot to build the business logic layer, and the MySQL database persists material information and operation records. System functions are around the two users administrator and employee. Administrators manage employee accounts to assign permissions, maintain basic data such as warehouses, material categories and suppliers, review inbound, outbound and return requests, set inventory warning thresholds, start inventory count tasks and confirm the results of discrepancy handling, and control access to valuable and dangerous items. They also use the instant message module to receive business alert, and work with employee in site issue. Employees submit account registration application online, log in after being approved and view material details as well as current inventory status, track the entire material circulation process through batch number or QR code, make inbound, outbound, return applications and check application status. They do the inventory count batch-wise and then report the physical quantity. The system will push alerts for low stock or material anomaly based on set thresholds. Employees can use the feedback function to provide the exceptions mentioned just now, plus pictures for the administrator's fast handling. System also have auxiliary function release announcement, view attendance record as well as data report can be exported and build a full process management chain from beginning to end of the warehouse operation.

Key words: Warehouse Management, Spring Boot, Vue, Application and Approval, Material Traceability

目录

摘要

Abstract

1 绪论

1.1 研究背景与意义

1.2 国内外研究现状

1.3 主要研究内容

2 相关技术介绍

2.1 Spring Boot框架

2.2 Vue.js框架

2.3 MySQL数据库

2.4 前后端分离架构

3 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 操作可行性

3.1.3 经济可行性

3.2 功能需求分析

3.3 非功能需求分析

4 系统设计

4.1 系统架构设计

4.2 系统结构功能设计

4.3 系统流程设计

4.3.1 异常反馈处理流程设计

4.3.2 在线聊天流程设计

4.3.3 入库记录管理流程设计

4.3.4 物资信息查询流程设计

4.3.5 系统总体业务流程设计

4.4 数据库设计

4.4.1 概念设计

4.4.2 E-R图设计

4.4.3 数据库表设计

5 系统实现

5.1 员工用户功能实现

5.1.1 在线聊天功能实现

5.1.2 仓库信息查询功能实现

5.1.3 物资信息查询功能实现

5.1.4 异常反馈功能实现

5.1.5 供应厂商查询功能实现

5.1.6 入库记录查询功能实现

5.1.7 出库记录查询功能实现

5.1.8 退货记录查询功能实现

5.1.9 盘点记录查询功能实现

5.1.10 考勤记录查询功能实现

5.1.11 评论管理功能实现

5.2 管理员功能实现

5.2.1 在线聊天功能实现

5.2.2 仓库信息管理功能实现

5.2.3 供应厂商管理功能实现

5.2.4 物资信息管理功能实现

5.2.5 入库记录管理功能实现

5.2.6 出库记录管理功能实现

5.2.7 退货记录管理功能实现

5.2.8 盘点记录管理功能实现

5.2.9 异常反馈管理功能实现

5.2.10 考勤记录管理功能实现

6 系统测试

6.1 测试目的

6.2 测试方法

6.3 测试内容

6.4 测试结论

7 总结

参考文献

致谢

1绪论

1.1研究背景与意义

传统的仓库管理工作主要依靠手工账本和纸质单据来完成,物资的出入库信息都是用电话或者口头的形式传递出去的,很容易造成数据记录滞后、库存盘点出现偏差、信息传递不准确的情况发生。早期的计算机被引入到企业中之后,一些企业开始使用单机表格软件来管理物资,信息存储方式也由原来的纸质变为电子化,但是由于数据分散在各个部门之间形成了信息孤岛,采购、仓储和财务等环节不能够实现协同工作[1]。互联网技术普及使部分仓库开通基础信息发布网站,员工可以在线查看物资目录,交互方式还只是单向查询,用户不能即时参与到申请、审批和反馈当中来,由于碎片化操作体验以及库存更新滞后所造成的低效性问题被凸显出来。目前企业的物资流动具有即时性、流程审批的交互性、全链条追溯个性化的特点,传统的管理模式以及早期的信息化手段已不能适应精细化管理的要求了[2]。移动互联网和智能终端的普及改变了用户的使用行为模式,仓库作业人员希望可以像使用社交软件一样方便地发起申请、接收提醒、追踪物资的流动情况,因此对于仓库管理系统来说,它需要有更高的实时响应速度以及社群协作的功能要求。

利用Spring Boot创建仓库管理系统可以大大提高物资信息流转的速度,用电子化的申请审批代替纸质单据传递,大大减少人工录入错误和数据重复维护的成本。系统实现的库存预警、实时追溯功能可以促使物资资源在供需双方之间实现精准对接,从而降低由于信息滞后所导致的缺货或者积压的情况[3]。规范化权限分配和操作留痕机制给仓库作业流程标准化赋予技术支撑,员工考勤及绩效考核数据的自动汇集可以塑造起透明的内部管理生态。系统整合即时通讯和公告通知模块,营造仓库社区内部即时协作的氛围,给垂直领域的企业资源管理走向精细化、社交化提供可以落地的实践范例。

1.2国内外研究现状

国内仓库管理信息化开始于门户网站时代,新浪财经、搜狐等早期的网站都是由编辑主导的发布宏观仓储物流信息,用户只能被动地浏览信息,没有互动渠道和个性化的服务。随着垂直社区的兴起,虎扑体育旗下的装备仓库板块开始尝试加入用户讨论和二手交易的功能,互动方式由原来的单向阅读变为论坛式的交流,但是物资信息的更新仍然依靠人工发帖,数据割裂的问题没有得到解决[4]。移动互联网爆发之时,懂球帝与腾讯体育一起创建移动端应用程序,把赛事周边商品的仓储状况、查询以及线上购买功能融合起来,用户能实时了解库存情况并能提出订单申请,从而初步达成物资数据同用户操作间的互动[5]。专业数据系统之后进入仓库管理领域,PP体育同主流电商平台对接,创建商品信息标准化录入和分类检索体系,物资编号和二维码溯源技术开始试点应用,明显加快了单品追踪速度[6]。目前我国领先的公司正在探索场景化的社交和仓储数据的融合,用即时通讯模块把仓库管理员和一线员工联系起来,申请审批过程直接在对话框里完成,用户产生的操作记录会自动保存成追溯数据,使管理方式由指令下达变为协同作业[7]。现有的平台个性化预警配置以及全流程追溯的深度还存在欠缺,贵重物资隔离管控和批量数据处理的能力还需提高,不能适应复杂的仓储环境,需要有权限隔离和自动盘点等。

国外的仓库管理信息化走的是两条线,一条是社交媒体属性,一条是数据驱动实时互动。Bleacher Report早期依靠用户生成内容社区来累积体育衍生品仓储信息,粉丝在讨论时会自发地将自己买到的商品库存和使用体验分享出来,平台慢慢开始加入编辑审核的环节以保证物资数据的准确度。SofaScore专注于赛事数据服务,把运动装备仓库信息同比赛实时数据联系起来,用户询问某个物资的时候,可以立刻得到该物资在比赛中出现的次数以及运动员的评价,从而达成商品属性同场景化数据的深入融合[8]。Onefootball将欧洲各个俱乐部官方商城的库存接口整合在一起,用户浏览新闻资讯的时候可以直接看到相关商品的实时库存情况和库位分布,当物资补货或者价格变动的时候,会自动向用户的端口发送通知,使信息传播更加及时、个性化[9]。欧洲豪门俱乐部官方应用把仓库管理系统嵌入到球迷数字生态系统中,会员申请球场参观或者参加青训营的时候[10]。系统后台会同步校验装备仓库的物资可用数量,审批流程加入库存占用逻辑来避免资源超配[11]。Fantasy Premier League创建虚拟经济和实体仓库联动体系,玩家在 fantasy 游戏里获得的奖励积分可以用来兑换实体仓库里的限量版物资,兑换申请触发仓库出库流程[12]。游戏数据和库存数据通过标准化接口实时交互,商业生态深度融合模式给仓库管理系统由企业内部工具向用户互动平台转变赋予了成熟样本。

1.3主要研究内容

本文设计并实现了一个基于Spring Boot的仓库管理系统,系统使用B/S架构和前后端分离的方式进行开发,以管理员和员工这两种用户为主要内容来梳理出系统的功能需求,管理员模块包含员工账号审核、仓库信息维护、物资分类管理、供应商资料录入、入库出库退货申请审批、库存预警阈值设置、盘点任务发起、库位容量设置、特殊物资权限隔离、多维度报表数据导出;员工模块主要包含注册申请、个人资料管理、物资信息及库存状态实时查询、物资批次追溯、入库出库退货申请提交、盘点任务执行、预警信息接收、异常问题反馈、个人操作记录导出;系统按照软件工程规范依次完成了需求分析、架构设计、功能模块划分、数据库表结构设计、编码实现和测试验证,技术路线选择Spring Boot搭建后端业务逻辑,Vue创建动态交互界面,MySQL持久化存储物资信息、操作记录和用户数据,最终实现了物资全流程可追溯、库存状态实时可视、申请审批线上闭环、跨角色即时通讯协同,解决了传统仓库管理信息滞后、流程割裂、追溯困难等问题。

2相关技术介绍

2.1Spring Boot框架

Spring Boot是用Java语言编写的开源微服务框架,它的主要思想就是简化Spring应用的初始搭建和开发。框架中有Tomcat、Jetty这些Servlet容器,开发人员可以不必把应用程序打包成WAR文件,就可以直接运行应用程序。自动配置特性可以依靠扫描类路径下所有的依赖库来自动装配出默认的组件,从而大大减少了传统Spring项目繁琐的XML配置工作[13]。仓库管理系统里,Spring Boot担负起业务逻辑处理层的主要任务,管理员对员工账号的审核工作,物资入库出库申请的审批程序,库存预警规则的触发判定等都在后端服务里被封装起来。控制器层收到前端发出的HTTP请求之后,会将请求传递给业务服务层来处理物资批次追溯、库存数据实时查询这些复杂的需求,然后再利用数据访问对象接口和MySQL数据库来进行交互。框架给出的声明式事务管理机制保证物资出入库操作时数据一致、完整,防止并发情况下库存数量更新出错。Spring Boot和Vue搭建起来的前端页面采用RESTful接口来实现数据交换,这样就形成了松耦合的架构,为以后添加特殊物资管控模块或者对接第三方物流接口等增添了便利。

2.2Vue.js框架

Vue.js是一个用于创建用户界面的渐进式JavaScript框架,它的核心库只关注视图层,并且很容易和其他项目或者现有的库进行整合。框架使用虚拟DOM技术来减少对真实DOM的直接操作,当仓库管理系统中库存总览数据发生改变的时候,Vue可以快速地计算出需要更新的最小页面片段,并且重新渲染[14]。双向数据绑定机制把页面表单元素和底层数据模型自动同步,员工提交入库申请时填写物资名称、数量、供应商等信息,界面输入的内容会实时映射到JavaScript对象里,不需要再写手动取值的代码。组件化开发模式把系统的界面拆分成公告列表、申请审批卡片、物资查询结果表格等独立可复用的部件,每一个组件都包含自己的HTML模板、CSS样式和交互逻辑,管理员在开发即时通讯模块的时候可以把聊天窗口封装成独立的组件,在不同的业务页面中按需调用。路由管理器控制页面之间的跳转权限,未登录的员工访问系统公告查看页面的时候会自动跳转到登录界面,保证系统功能的安全访问[15]。Vue作为仓库管理系统前端主要负责展示管理员和员工不同操作界面,用异步请求同后端Spring Boot服务进行库存预警消息的即时推送以及申请审核状态的实时更新。

2.3MySQL数据库

MySQL属于开源的关系型数据库管理系统,它的多线程架构以及高效的查询优化器可以满足仓库管理系统运行过程中所产生的一系列数据读写操作。数据库用表格形式来组织数据,仓库信息表、物资分类表、供应商资料表之间用主外键约束建立关联,保证物资信息引用分类编号或者供应商编号时的参照完整性[16]。事务处理机制具有ACID特性,员工执行入库确认操作的时候,系统要同时更新库存数量表、插入操作记录表和修改申请状态表,任何一个环节出错都会导致整个事务回滚,不能出现库存数据和操作日志不一致的情况。索引技术在物资信息查询功能里起着关键的作用,管理员按照物资编号、名称、分类等多条件组合检索的时候,数据库可以借助预先创建好的B+树索引来迅速找到需要的数据,从而加快了海量数据环境下响应的速度。存储过程和触发器可以用来实现库存预警的自动判断,当库存数量小于设定的下限值时,就会触发更新预警状态表的逻辑,减少后端应用层的轮询压力。MySQL在系统开发阶段用IntelliJ IDEA集成的数据库工具进行表结构设计和测试数据填充,在运行阶段给物资批次追溯功能提供完整的历史操作数据存储支持,保证物资从入库到出库全生命周期的信息可回溯。

2.4前后端分离架构

前后端分离是把用户界面表示和业务逻辑处理物理上分离的一种软件架构风格,前端使用HTTP协议调用后端发布的API接口来完成数据交互。仓库管理系统采用这种架构模式,Vue构建的浏览器端应用独立运行在用户终端上,Spring Boot部署的服务器应用只负责业务规则和数据持久化,两者之间用JSON格式进行数据交换。前端项目和后端项目各自管理自己的代码仓库以及部署流程,开发团队可以同时对管理员模块的公告发布界面和员工模块的盘点任务执行界面进行开发,不会互相影响[17]。接口契约先行的工作方式,即在编码之前由前后端开发者一起确定API文档,包括物资信息查询接口的请求参数和响应结构等,从而降低集成阶段的沟通成本和调试时间。部署层系统把静态资源部署到Nginx服务器上,动态请求转发给后端应用,该拓扑结构可以很好地分担服务器压力,当大量的员工同时查看公告或者查询库存的时候,Nginx的负载均衡机制可以把请求分发到不同的后端实例上去。前后端分离架构给仓库管理系统带来良好的横向扩展性,对于企业内部新开发的移动端应用或者对接外部供应商系统,只需要使用现有的API接口就可以实现,不会造成业务逻辑的重新设计,为企业的内部资源管理持续发展提供技术支持。

3系统分析

3.1可行性分析

3.1.1技术可行性

系统采用B/S结构,前端用Vue框架实现用户交互,后端用Spring Boot框架实现业务逻辑,MySQL是数据持久化存储技术。该类技术组合已经经过大量的实践检验,在同类web应用开发中具有较好的使用效果,有较多的社区资源,问题排查路径也较为清楚。开发语言选择Java,跨平台特性以及稳定的内存管理机制给系统长期运行打下基础。开发者在本科阶段已经学习了Java编程基础、Spring Boot快速开发、MySQL数据库设计与操作等相关知识,能进行各个功能模块的编码。系统部署在本地服务器上,在数据量不断增多的时候会遇到查询响应变慢的情况,这时可以创建合理的索引、改善SQL语句的结构、分批次加载数据等方法来减轻性能负担。从安全的角度来讲,用户的密码被加密之后保存,操作权限也集中由后端拦截器来检查,可以抵御越权访问以及SQL注入等常见攻击。因此该系统技术上是可行的。

3.1.2操作可行性

目标用户为仓库管理员和一线员工,两类人都是有基本的计算机操作能力,会用浏览器浏览网页并填表。系统界面布局采用上中下结构,顶部为导航栏,左侧为功能菜单,右侧为主操作区,符合一般的管理系统操作习惯。员工在日常工作当中要完成入库出库申请、库存查询、盘点数据录入等工作,系统把分散在纸质单据上的操作汇总到一个平台上,每一项操作都有相应的入口以及反馈信息。管理员审核申请的时候可以直接看到物资图片和历史记录,决策信息全部展示出来不需要切换界面。系统上线之后,原有的手工记录和电话沟通的作业方式逐渐被线上流程所代替,员工通过即时通讯模块同管理员实时交流现场问题,操作路径更加直接。后续维护由管理员进行用户权限重置和基础数据更新的工作,操作权限为分层设置,普通员工不能对核心配置进行干涉,系统运行状态一直保持稳定。因此系统在操作上是可行的。

3.1.3经济可行性

项目开发主要是软件的设计和编码,所需要的硬件资源是普通的开发用计算机以及一台作为服务器的本地主机,企业现有的办公设备就可以满足部署的要求,不需要另外购买专用服务器。软件开发基于IntelliJ IDEA社区版、MySQL数据库、Spring Boot与Vue等开源框架,不产生商业软件授权费用。开发工作是由一个人独自完成的,人力成本主要是指时间成本。系统投入使用之后,仓库管理人员从手工统计和反复核对中解放出来,物资查找效率提高,由于信息滞后而造成的紧急采购次数减少,库存周转速度加快,这些隐性收益可以抵消前期的开发投入。长期运行只须定时备份数据和系统账号,运维费用低。所以系统在经济上是可行的。

3.2功能需求分析

管理员登录系统之后可以管理个人资料和登录密码,系统会自动对信息格式进行校验。管理员可以查看自己所有的考勤记录和出勤统计,发布、修改、删除系统公告,收到出入库审批、员工反馈等业务信息。即时通讯模块可以添加、删除好友,和员工一对一聊天,也可以创建群聊实现多人协同。管理员对员工账号进行新增、编辑、删除、查询、审核员工注册申请、重置密码和分配操作权限。仓库基础信息管理包括新增、修改、删除仓库位置、容量、备注。物资分类可以增删改查。物资信息维护基础详情图片,配二维码和编号。供应商资料记录包含名称、联系方式、地址、供货类型等。物资信息查询可以进行多个条件的组合查询。库存总览显示数量、状态、库位和批次。物资批次追溯用批次号或者二维码查询整个生命周期。入库申请审批核对信息数量供应商通过或者驳回。出库申请审批检查库存是否充足、用途是否符合规定。退货申请的审批确认为后续流程留下记录。库存预警自定上下限触发报警。盘点管理发起任务查看结果审核盘盈盘亏。库位信息设容量、重量上限。特殊物资控制设置权限隔离和使用限制。数据报表导出可以导出库存出入库盘点报表。批量数据处理可以实现物资供应商操作记录的导入导出。管理员角色用例图如图3-1所示。

图3-1 管理员用例图

员工用账号密码登录系统。注册时填写信息提交申请,等待管理员审核。登录后可以查看修改个人资料、登录密码、个人考勤记录、出勤统计。系统公告在登录之后显示最新的任务安排和工作提醒。即时通讯支持添加、删除好友,同管理员同事一对一聊天,加入群聊。物资信息查询可以查看物资详情参数图片二维码,按照编号、名称分类快速检索。库存信息查询按照名称为分类标准,用库位作为对象来查看实时数量、批次、可用情况。物资批次追溯用批次号或者二维码来查找来源入库时间、操作记录和流向。入库申请提交填写名称、数量、供应商、批次等信息。出库申请填写领用部门用途数量批次。个人申请查询可以查看本人所有的申请审核状态、处理结果及历史记录。入库确认在申请审批通过之后执行实物入库更新库存。出库确认核对信息之后执行出库。退货申请,不合格多余损坏物资提交申请并上传说明。库存盘点执行接收任务采用批量录入的方式提交实际库存数据。查看库存不足的物资、异常的设备等信息并反馈给管理员。数据报表导出个人出入库记录操作统计盘点结果。异常问题的反馈上报为物资损坏、设备故障、系统错误、库存异常,上传说明图片。员工角色用例图如图3-2所示。

图3-2 员工用例图

3.3非功能需求分析

1.可用性需求

系统可用性是指系统的高可用性架构,在用户大量并发的情况下也能保证系统的正常运转。系统应该具有快速恢复的特点,在出现故障的时候能够及时地完成自我修复。用户体验要改善的话,那么系统就一定要具备快速响应、低延时的特性,在比较短的时间内就能完成对用户请求的处理,且能立即给出结果。系统应该具有负载均衡的功能,可以将多个服务器上的请求分发出去,防止出现单点故障导致整个系统瘫痪的情况。

2.可靠性需求

系统的可靠性是指系统长时间工作时,不能经常出现故障或者中断。系统要建立完善的备份与恢复机制,对于由于硬件故障、系统崩溃等造成的数据丢失问题作出应对,保证数据不会被破坏,并且可以迅速恢复到正常的运行状态。系统各个服务及组件应当具有容错性,在某些组件出现故障的时候,可以自动切换到备用服务。

3.安全性需求

系统安全要求用户个人信息、交易记录等重要数据要保密。系统应当使用加密技术来保护用户传输的数据,在传送过程中不使数据被窃取、篡改。系统要实行访问控制,用户只能接触自己具备权限的资源,不能让没有权限的用户踏入系统。系统应当具有身份认证的功能,防止恶意的用户冒充别人的名义进行操作。为了防止外部攻击,系统应设置防火墙、入侵检测系统等安全防护措施来保证系统不受到网络攻击。

4系统设计

4.1系统架构设计

本系统使用基于B/S模式的模块化分层架构来设计,目的是创建出一个高内聚、低耦合的仓库管理系统。系统严格按照Spring Boot默认的单体应用架构规范,把整个软件栈自上而下分成前端交互层、后端业务逻辑层和数据持久化层,并且使用本地缓存来提高响应速度。图4-1是系统的结构图。

前端交互层用vue.js来搭建用户界面。当员工或者管理员用户执行仓库信息查询、物资信息管理等操作的时候,Vue组件会使用Axios库发起异步HTTP请求,把数据传送到后台。后端使用Spring Boot框架进行开发,Controller层是统一的入口,接收到请求之后就将请求传递给具体的Service层去执行入库记录、审核异常反馈等业务逻辑。业务处理时Service层使用Mapper接口同持久化层进行交互。MySQL数据库用来存储用户、仓库、物资、供应厂商、各类记录以及评论等主要的数据。系统在Service层采用本地缓存的方式存储经常被查询、但变化较少的供应厂商信息或者仓库基础信息,以减少不必要的数据库交互,保证系统在高负载的情况下可以迅速地响应。

业务处理结果按照原来的路径回传,前端动态渲染页面,给用户反馈,完成了整个业务的闭环。

整个系统架构如图4-1所示。

图4-1 系统架构图

4.2系统结构功能设计

本文针对仓库资源高效管理的问题,创建起包含员工和管理员两个角色的功能体系。员工用户主要依靠系统完成日常业务操作,主要功能有仓库和物资信息查询、供应厂商检索、各种物资流转记录查阅,即入库、出库、退货、盘点等。员工可以对考勤记录进行查询,可以提出异常问题的反馈意见,也可以进行在线交流,还可以对物资评论进行发表。管理员是系统全面的管理者,它的功能模块在员工查询的基础上增加了全流程的管理,即对仓库、物资、供应厂商、所有流转记录(入库、出库、退货、盘点)、异常反馈、考勤记录、在线聊天等进行统一的维护和处理。该系统功能结构如图4-2所示。

系统功能结构图如图4-2所示。

图4-2 系统功能结构图

4.3系统流程设计

4.3.1异常反馈处理流程设计

员工提交异常反馈时填写问题描述。系统保存反馈至数据库并标记待处理状态。管理员登录后查看待办事项列表。处理完毕填写处理意见。系统将结果反馈给员工并关闭流程。全过程留痕便于追溯。异常反馈处理流程如图4-3所示。

图4-3 异常反馈处理流程图

4.3.2在线聊天流程设计

用户进入聊天模块获取联系人列表。选择对话对象后加载历史消息。发送消息时系统实时存入数据库。接收方在线可立即获取新消息。离线用户下次登录同步消息记录。该模块保障团队即时协作。在线聊天流程如图4-4所示。

图4-4 在线聊天流程图

4.3.3入库记录管理流程设计

管理员进入入库管理界面发起新增入库。系统校验入库单数据完整性。数据写入数据库并更新对应物资库存。管理员可查阅或修改草稿状态的单据。审核通过的记录不可变更。全过程记录操作人及时间戳。入库记录管理流程如图4-5所示。

图4-5 入库记录管理流程图

4.3.4物资信息查询流程设计

员工登录系统后进入物资管理模块。系统检索数据库返回物资列表。用户可通过筛选条件缩小范围。点击查看详情时系统加载完整物资档案。页面展示物资编码、名称、规格及当前库存量。该流程保障库存透明度。物资信息查询流程如图4-6所示。

图4-6 物资信息查询流程图

4.3.5系统总体业务流程设计

用户进入系统首先完成身份验证。员工角色聚焦日常作业执行,涵盖仓库物资检索、流转单据查阅、异常问题上报及同事间即时通讯。管理员角色承担全局管控职责,对所有基础档案与业务单据进行维护。系统构建统一数据视图,确保仓储信息流转闭环。系统总体业务流程如图4-7所示。

图4-7 系统总体业务流程图

4.4数据库设计

4.4.1概念设计

数据库概念设计是通过对系统需求进行抽象与归纳,形成独立于具体数据库管理系统的信息结构。本阶段采用实体-联系模型,从用户业务视角出发,对系统中的核心数据对象及其属性关系进行可视化描述[18]。根据仓库管理系统的功能需求,共抽象出员工用户、物资信息、入库记录、出库记录、退货记录、盘点记录、异常反馈、考勤记录、供应厂商、仓库信息十个核心实体。员工用户实体描述系统操作用户的基本身份信息,物资信息实体记录仓储物资的核心档案数据;入库、出库、退货、盘点四类记录实体分别追踪物资流转各环节的业务明细,异常反馈实体承载员工提交的问题报告信息,考勤记录实体存储员工出勤数据。供应厂商实体维护合作伙伴基础资料,仓库信息实体刻画仓储空间的基础属性[19]。各实体均包含唯一标识字段及描述自身特征的关键属性,为后续逻辑结构设计奠定基础。

员工用户实体主要包括用户姓名、手机号码、审核状态等。实体属性图如图4-8所示。

图4-8 员工用户实体属性图

物资信息实体主要包括物资编码、物资名称、库存数量等。实体属性图如图4-9所示。

图4-9 物资信息实体属性图

入库记录实体主要包括入库单号、物资编码、入库时间、入库数量等。实体属性图如图4-10所示。

图4-10 入库记录实体属性图

出库记录实体主要包括出库单号、物资编码、出库时间、出库数量等。实体属性图如图4-11所示。

图4-11 出库记录实体属性图

退货记录实体主要包括退货编码、物资编码、退货时间、退货数量等。实体属性图如图4-12所示。

图4-12 退货记录实体属性图

盘点记录实体主要包括盘点单号、物资编码、盘点时间、实际库存等。实体属性图如图4-13所示。

图4-13 盘点记录实体属性图

异常反馈实体主要包括反馈编码、员工用户、反馈时间、反馈类型等。实体属性图如图4-14所示。

图4-14 异常反馈实体属性图

考勤记录实体主要包括员工用户、考勤日期、出勤天数、考勤状态等。实体属性图如图4-15所示。

图4-15 考勤记录实体属性图

供应厂商实体主要包括厂家名称、联系电话、厂家地址等。实体属性图如图4-16所示。

图4-16 供应厂商实体属性图

仓库信息实体主要包括仓库名称、仓库状态、仓库容量、仓库位置等。实体属性图如图4-17所示。

图4-17 仓库信息实体属性图

4.4.2E-R图设计

图4-18系统E-R图

4.4.3数据库表设计

员工用户表主要是用来存储企业员工的基本信息。主要包括用户姓名、手机号码、审核状态等字段。如表4-1所示。

表4-1 员工用户表

序号

字段名

类型

长度

备注

1

员工用户id

int

11

员工用户ID

2

用户姓名

varchar

50

用户姓名

3

用户性别

varchar

10

用户性别

4

手机号码

varchar

20

手机号码

5

审核状态

varchar

50

审核状态

6

用户id

int

11

用户ID

7

创建时间

datetime

创建时间

8

更新时间

timestamp

更新时间

物资信息表主要是用来存储所有物资的详细信息。主要包括物资编码、物资名称、库存数量等字段。如表4-2所示。

表4-2 物资信息表

序号

字段名

类型

长度

备注

1

物资信息id

int

11

物资信息ID

2

物资编码

varchar

50

物资编码

3

物资条码

varchar

50

物资条码

4

物资名称

varchar

100

物资名称

5

物资封面

varchar

255

物资封面

6

溯源码

varchar

255

溯源码

7

所属仓库

varchar

100

所属仓库

8

物资类型

varchar

100

物资类型

9

特殊物资

varchar

100

特殊物资

10

库存数量

double

库存数量

11

物资单位

varchar

50

物资单位

12

物资简介

text

65535

物资简介

13

详情介绍

longtext

4294967295

详情介绍

14

点击数

int

11

点击数

15

点赞数

int

11

点赞数

16

收藏数

int

11

收藏数

17

评论数

int

11

评论数

18

入库限制次数

int

11

入库限制次数

19

出库限制次数

int

11

出库限制次数

20

退货限制次数

int

11

退货限制次数

21

盘点限制次数

int

11

盘点限制次数

22

创建时间

datetime

创建时间

23

创建用户ID

int

11

创建用户ID

24

更新时间

timestamp

更新时间

入库记录表主要是用来记录物资入库的详细信息。主要包括入库单号、物资编码、入库时间、入库数量等字段。如表4-3所示。

表4-3 入库记录表

序号

字段名

类型

长度

备注

1

入库记录id

int

11

入库记录ID

2

入库单号

varchar

50

入库单号

3

物资编码

varchar

50

物资编码

4

物资名称

varchar

100

物资名称

5

物资类型

varchar

100

物资类型

6

员工用户

int

11

员工用户

7

入库时间

date

入库时间

8

批次号码

varchar

50

批次号码

9

厂商名称

varchar

100

厂商名称

10

入库数量

double

入库数量

11

物资单位

varchar

50

物资单位

12

入库备注

text

65535

入库备注

13

审核状态

varchar

50

审核状态

14

审核回复

varchar

255

审核回复

15

创建时间

datetime

创建时间

16

创建用户ID

int

11

创建用户ID

17

更新时间

timestamp

更新时间

18

额外信息

text

65535

额外信息

19

来源表

varchar

255

来源表

20

来源ID

int

11

来源ID

21

来源用户

int

11

来源用户

出库记录表主要是用来记录物资出库的详细信息。主要包括出库单号、物资编码、出库时间、出库数量等字段。如表4-4所示。

表4-4 出库记录表

序号

字段名

类型

长度

备注

1

出库记录id

int

11

出库记录ID

2

出库单号

varchar

50

出库单号

3

物资编码

varchar

50

物资编码

4

物资名称

varchar

100

物资名称

5

员工用户

int

11

员工用户

6

出库时间

date

出库时间

7

出库数量

double

出库数量

8

物资单位

varchar

50

物资单位

9

领用部门

varchar

100

领用部门

10

出库用途

text

65535

出库用途

11

出库备注

text

65535

出库备注

12

审核状态

varchar

50

审核状态

13

审核回复

varchar

255

审核回复

14

创建时间

datetime

创建时间

15

创建用户ID

int

11

创建用户ID

16

更新时间

timestamp

更新时间

17

额外信息

text

65535

额外信息

18

来源表

varchar

255

来源表

19

来源ID

int

11

来源ID

20

来源用户

int

11

来源用户

退货记录表主要是用来记录物资退货的详细信息。主要包括退货编码、物资编码、退货时间、退货数量等字段。如表4-5所示。

表4-5 退货记录表

序号

字段名

类型

长度

备注

1

退货记录id

int

11

退货记录ID

2

退货编码

varchar

50

退货编码

3

物资编码

varchar

50

物资编码

4

物资名称

varchar

100

物资名称

5

员工用户

int

11

员工用户

6

退货时间

date

退货时间

7

退货数量

double

退货数量

8

物资单位

varchar

50

物资单位

9

退货原因

text

65535

退货原因

10

处理方案

text

65535

处理方案

11

相关说明

text

65535

相关说明

12

审核状态

varchar

50

审核状态

13

审核回复

varchar

255

审核回复

14

创建时间

datetime

创建时间

15

创建用户ID

int

11

创建用户ID

16

更新时间

timestamp

更新时间

17

额外信息

text

65535

额外信息

18

来源表

varchar

255

来源表

19

来源ID

int

11

来源ID

20

来源用户

int

11

来源用户

盘点记录表主要是用来记录物资盘点的详细信息。主要包括盘点单号、物资编码、盘点时间、实际库存等字段。如表4-6所示。

表4-6 盘点记录表

序号

字段名

类型

长度

备注

1

盘点记录id

int

11

盘点记录ID

2

盘点单号

varchar

50

盘点单号

3

物资编码

varchar

50

物资编码

4

物资名称

varchar

100

物资名称

5

员工用户

int

11

员工用户

6

盘点标题

varchar

100

盘点标题

7

盘点时间

date

盘点时间

8

盘点维度

varchar

100

盘点维度

9

盘盈盘亏

varchar

50

盘盈盘亏

10

实际库存

double

实际库存

11

物资单位

varchar

50

物资单位

12

差异原因

text

65535

差异原因

13

创建时间

datetime

创建时间

14

创建用户ID

int

11

创建用户ID

15

更新时间

timestamp

更新时间

16

额外信息

text

65535

额外信息

17

来源表

varchar

255

来源表

18

来源ID

int

11

来源ID

19

来源用户

int

11

来源用户

异常反馈表主要是用来记录员工提交的异常情况。主要包括反馈编码、员工用户、反馈时间、反馈类型等字段。如表4-7所示。

表4-7 异常反馈表

序号

字段名

类型

长度

备注

1

异常反馈id

int

11

异常反馈ID

2

反馈编码

varchar

50

反馈编码

3

员工用户

int

11

员工用户

4

反馈时间

date

反馈时间

5

反馈类型

varchar

50

反馈类型

6

附件图片

varchar

255

附件图片

7

反馈次数

varchar

50

反馈次数

8

反馈备注

text

65535

反馈备注

9

审核状态

varchar

50

审核状态

10

审核回复

varchar

255

审核回复

11

创建时间

datetime

创建时间

12

创建用户ID

int

11

创建用户ID

13

更新时间

timestamp

更新时间

考勤记录表主要是用来记录员工的考勤情况。主要包括员工用户、考勤日期、出勤天数、考勤状态等字段。如表4-8所示。

表4-8 考勤记录表

序号

字段名

类型

长度

备注

1

考勤记录id

int

11

考勤记录ID

2

员工用户

int

11

员工用户

3

考勤日期

date

考勤日期

4

出勤天数

double

出勤天数

5

请假天数

double

请假天数

6

考勤状态

varchar

50

考勤状态

7

考勤备注

text

65535

考勤备注

8

创建时间

datetime

创建时间

9

创建用户ID

int

11

创建用户ID

10

更新时间

timestamp

更新时间

供应厂商表主要是用来存储供应商的基本信息。主要包括厂家名称、联系电话、厂家地址等字段。如表4-9所示。

表4-9 供应厂商表

序号

字段名

类型

长度

备注

1

供应厂商id

int

11

供应厂商ID

2

厂家名称

varchar

100

厂家名称

3

联系电话

varchar

20

联系电话

4

厂家地址

varchar

200

厂家地址

5

供货类型

text

65535

供货类型

6

厂家简介

text

65535

厂家简介

7

创建时间

datetime

创建时间

8

创建用户ID

int

11

创建用户ID

9

更新时间

timestamp

更新时间

仓库信息表主要是用来存储仓库的基本信息和状态。主要包括仓库名称、仓库状态、仓库容量、仓库位置等字段。如表4-10所示。

表4-10 仓库信息表

序号

字段名

类型

长度

备注

1

仓库信息id

int

11

仓库信息ID

2

仓库名称

varchar

100

仓库名称

3

仓库图片

varchar

255

仓库图片

4

仓库状态

varchar

50

仓库状态

5

仓库容量

varchar

100

仓库容量

6

重量上限

varchar

100

重量上限

7

仓库位置

varchar

200

仓库位置

8

仓库备注

text

65535

仓库备注

9

仓库详情

longtext

4294967295

仓库详情

10

点击数

int

11

点击数

11

点赞数

int

11

点赞数

12

收藏数

int

11

收藏数

13

评论数

int

11

评论数

14

创建时间

datetime

创建时间

15

创建用户ID

int

11

创建用户ID

16

更新时间

timestamp

更新时间

5系统实现

5.1员工用户功能实现

5.1.1在线聊天功能实现

员工用户通过在线聊天模块与系统内其他用户进行实时沟通。该功能支持点对点消息发送,方便员工在仓库管理过程中及时协调物资调拨、核对库存信息。在线聊天界面集成于系统主框架,用户可查看联系人列表并收发消息。在线聊天界面如图5-1所示。

图5-1 在线聊天界面

5.1.2仓库信息查询功能实现

员工用户进入仓库信息列表页,系统展示仓库名称、仓库图片、仓库状态等关键信息。用户可通过仓库名称搜索或仓库状态筛选快速定位目标仓库。仓库容量、重量上限等数据直观呈现,帮助员工全面掌握仓储资源状态。仓库信息查询界面如图5-2所示。

图5-2 仓库信息查询界面

5.1.3物资信息查询功能实现

物资信息查询模块支持员工按物资名称、所属仓库、物资类型、特殊物资等多维度检索。系统将物资编码、物资名称、所属仓库、物资类型等信息以列表形式呈现,便于用户快速获取物资详情。物资信息查询界面如图5-3所示。

图5-3 物资信息查询界面

5.1.4异常反馈功能实现

员工在发现物资损坏或其他异常情况时,通过异常反馈模块提交反馈信息。反馈内容涵盖反馈编码、反馈类型、附件图片及反馈备注,系统自动记录反馈时间和员工用户信息。异常反馈界面如图5-4所示。

图5-4 异常反馈界面

5.1.5供应厂商查询功能实现

员工用户可查询系统中已维护的供应厂商信息。列表展示厂家名称、联系电话、厂家地址、供货类型等内容,用户可通过厂家名称或联系电话进行精确检索。供应厂商查询界面如图5-5所示。

图5-5 供应厂商查询界面

5.1.6入库记录查询功能实现

入库记录查询模块允许员工查看物资入库历史。入库单号、物资编码、物资名称、入库时间、入库数量等信息在列表内完整呈现,用户可通过多种条件筛选定位特定入库批次。入库记录查询界面如图5-6所示。

图5-6 入库记录查询界面

5.1.7出库记录查询功能实现

员工通过出库记录查询模块掌握物资出库情况。界面展示出库单号、物资名称、出库时间、出库数量、领用部门等字段,支持按出库时间和审核状态进行筛选。出库记录查询界面如图5-7所示。

图5-7 出库记录查询界面

5.1.8退货记录查询功能实现

退货记录查询模块用于查看物资退货详情。退货编码、物资名称、退货时间、退货数量、退货原因等信息在列表中展示,员工可追踪每笔退货的处理进展。退货记录查询界面如图5-8所示。

图5-8 退货记录查询界面

5.1.9盘点记录查询功能实现

盘点记录查询模块帮助员工查看库存盘点结果。盘点单号、物资名称、盘点时间、实际库存、盘盈盘亏状态等数据清晰列示,员工可依据盘点维度了解盘点工作安排。盘点记录查询界面如图5-9所示。

图5-9 盘点记录查询界面

5.1.10考勤记录查询功能实现

员工用户通过考勤记录模块查询个人出勤情况。系统按考勤日期展示出勤天数、请假天数及考勤状态,用户可选择日期范围和考勤状态进行筛选。考勤记录查询界面如图5-10所示。

图5-10 考勤记录查询界面

5.1.11评论管理功能实现

评论管理模块集中展示用户对仓库、物资等内容的评论信息。员工可查看评论人、评论来源、评论内容及创建时间,系统提供删除操作以便管理不当评论。评论管理界面如图5-11所示。

图5-11 评论管理界面

5.2管理员功能实现

5.2.1在线聊天功能实现

管理员通过在线聊天模块与员工用户进行实时沟通。界面区分好友列表与群聊列表,管理员可查看当前聊天对象并发送消息,及时响应仓库管理中的各项协调需求。在线聊天界面如图5-12所示。

图5-12 在线聊天界面

5.2.2仓库信息管理功能实现

管理员对仓库信息进行增删改查操作。仓库信息列表展示仓库名称、仓库状态、仓库容量、重量上限等字段,管理员可添加新仓库、修改仓库参数或删除失效仓库记录。仓库信息管理界面如图5-13所示。

图5-13 仓库信息管理界面

5.2.3供应厂商管理功能实现

供应厂商管理模块支持管理员维护厂商信息。厂家名称、联系电话、厂家地址、供货类型、厂家简介等内容可批量导入,管理员可新增、编辑、查询或删除厂商记录。供应厂商管理界面如图5-14所示。

图5-14 供应厂商管理界面

5.2.4物资信息管理功能实现

管理员通过物资信息管理模块维护物资基础数据。物资编码、物资条码、物资名称、所属仓库、物资类型等信息集中管理,系统支持数据导入导出功能。物资信息管理界面如图5-15所示。

图5-15 物资信息管理界面

5.2.5入库记录管理功能实现

入库记录管理模块帮助管理员审核和处理物资入库业务。入库单号、物资名称、物资类型、员工用户、入库时间等字段清晰展示,管理员可按入库单号、物资名称、审核状态筛选记录并执行批量审核。入库记录管理界面如图5-16所示。

图5-16 入库记录管理界面

5.2.6出库记录管理功能实现

管理员通过出库记录管理模块审核出库申请。界面展示出库单号、出库用途、出库备注、审核状态等信息,管理员可依据出库时间范围筛选记录,通过批量审核功能处理待审核出库单。出库记录管理界面如图5-17所示。

图5-17 出库记录管理界面

5.2.7退货记录管理功能实现

退货记录管理模块用于处理物资退货业务。货物编码、物资名称、员工用户、退货时间等信息在列表内呈现,管理员可筛选待处理退货记录并执行审核操作。退货记录管理界面如图5-18所示。

图5-18 退货记录管理界面

5.2.8盘点记录管理功能实现

管理员通过盘点记录管理模块组织库存盘点工作。盘点编号、物资名称、员工用户、盘点时间、盘点维度等信息集中展示,管理员可查询盘点记录、导出盘点数据或删除无效盘点记录。盘点记录管理界面如图5-19所示。

图5-19 盘点记录管理界面

5.2.9异常反馈管理功能实现

异常反馈管理模块帮助管理员处理员工提交的异常报告。反馈编码、员工用户、反馈时间、反馈类型等信息列于表中,管理员可查看详情并执行审核通过操作。异常反馈管理界面如图5-20所示。

图5-20 异常反馈管理界面

5.2.10考勤记录管理功能实现

管理员通过考勤记录管理模块维护员工考勤数据。界面按员工用户展示考勤日期、出勤天数、请假天数及考勤状态,管理员可通过考勤日期范围筛选记录。考勤记录管理界面如图5-21所示。

图5-21 考勤记录管理界面

6系统测试

6.1测试目的

系统测试是在软件投入使用之前,对需求分析、设计实现和代码编写做最后的审查。本次测试以仓库管理系统为对象,在最接近真实生产环境的情况下对系统各个功能的质量和可靠性进行检验。核心目标就是检验系统是否完全实现了设计阶段所规划的所有业务功能,保证员工用户和管理员用户可以顺利完成各自的职责范围内的操作[20]。具体的测试内容就是确认在线聊天模块消息收发是否及时准确,仓库及物资信息查询模块的检索结果是否和数据库记录完全一致,异常反馈的提交、流转、处理过程是否构成一个完整的闭环。还要对各类业务记录进行验证,即入库、出库、退货、盘点等业务记录的查询和管理功能是否达到预期效果,供应厂商信息的修改、考勤记录的查看、物资评论的管理等操作是否具有较好的数据一致性。经过系统的测试,找出设计上的缺陷和编码上的错误,对系统正常操作以及异常输入的情况进行测试,检验数据在前后端交互过程中是否完整,保证交付出来的系统具有较好的稳定性、可用性和数据安全,可以满足企业日常仓储业务运行的实际需要。

6.2测试方法

为了保证测试工作有条理、全面,本系统主要使用黑盒测试的方法,必要时用边界值分析和错误推测法。黑盒测试把系统看作是不透明的总体,完全按照功能需求规格说明来设计有效的输入数据,用以检验输出结果是否符合预期,而不会去考察程序内部具体的实现逻辑。根据仓库管理系统业务特性来创建系统的测试用例,从多方面进行测试。功能验证主要是针对员工、管理员两个角色的所有功能模块,在线聊天、信息查询、记录管理、异常处理等各个方面的在线测试工作,以保证所有的操作入口可以正常响应,数据的流转是正确的。输入设计使用等价类划分法,把输入数据分成有效等价类和无效等价类,在物资信息查询功能中既测试常规关键词检索,又测试特殊字符和超长输入;对数值范围类输入比如日期筛选、库存数量等应用边界值分析,测试临界状态下的系统表现。测试执行包含正常操作流程和异常操作流程,既可以验证用户按照规范操作时功能是否完整,也可以模拟误操作或者非法输入来检验系统的容错能力。对包含多个步骤的业务,比如入库审核以及异常反馈处理等,测试时主要关注状态变化是否正确,操作日志是否完整。采用以上方法相结合的方式,对系统的功能完备性以及操作稳健性进行全方位的评价。

6.3测试内容

入库记录查询模块主要验证用户能否准确检索物资入库历史数据,关注多维度筛选条件下查询结果的准确性与完整性。入库记录查询测试如表6-1所示。

表6-1 入库记录查询测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

单条件查询

验证按入库单号检索功能

输入已有入库单号执行查询

列表显示对应入库记录

符合预期

组合条件查询

验证多条件联合筛选效果

同时选择物资名称与入库时间范围

返回满足全部条件的记录

符合预期

空结果查询

验证无匹配数据时的系统响应

输入不存在的单号或日期

列表显示暂无数据提示

符合预期

出库记录查询模块检验用户对物资出库信息的访问能力,重点验证出库时间范围筛选与审核状态过滤的准确性。出库记录查询测试如表6-2所示。

表6-2 出库记录查询测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

时间范围筛选

验证按出库时间段检索功能

设置起始日期与结束日期

列表显示该时间段内所有出库记录

符合预期

状态过滤

验证按审核状态筛选功能

选择已审核状态

仅显示状态为已审核的记录

符合预期

模糊查询

验证物资名称模糊匹配功能

输入物资名称部分关键字

返回名称中包含关键字的记录

符合预期

异常反馈模块测试员工提交异常报告的业务流程,重点验证反馈信息提交与审核状态更新的准确性。异常反馈测试如表6-3所示。

表6-3 异常反馈测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

反馈提交

验证员工填写异常信息并提交

填写反馈类型、备注并上传附件

系统提示提交成功,列表新增记录

符合预期

审核处理

验证管理员审核异常反馈

管理员进入详情页执行审核通过

反馈状态更新为已审核

符合预期

附件查看

验证附件图片查看功能

点击反馈记录中的附件链接

图片在新页面正常打开

符合预期

物资信息管理模块检验管理员对物资基础数据的维护能力,重点关注新增、编辑与数据导入操作的可靠性。物资信息管理测试如表6-4所示。

表6-4 物资信息管理测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

新增物资

验证添加新物资记录功能

填写物资编码、名称、类型等信息并保存

列表中出现新增物资记录

符合预期

编辑信息

验证修改已有物资信息功能

修改物资名称或所属仓库后保存

更新后的信息正确显示

符合预期

数据导入

验证批量导入物资数据功能

下载模板、填写数据后上传

系统提示导入成功,列表新增多条记录

符合预期

入库记录管理模块测试管理员审核入库申请的操作流程,重点验证批量审核与单条审核的准确性。入库记录管理测试如表6-5所示。

表6-5 入库记录管理测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

单条审核

验证对单条入库记录进行审核

选择一条待审核记录,执行审核通过

记录状态更新为已审核

符合预期

批量审核

验证同时审核多条入库记录

勾选多条记录后点击批量审核

所选记录状态全部更新

符合预期

条件查询

验证按审核状态筛选待处理记录

选择未审核状态执行查询

列表仅显示未审核记录

符合预期

盘点记录管理模块验证库存盘点业务的数据处理能力,重点关注盘点单生成、盘点结果录入与数据导出的准确性。盘点记录管理测试如表6-6所示。

表6-6 盘点记录管理测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

新增盘点

验证创建新盘点记录功能

填写盘点单号、物资信息与盘点结果并保存

盘点记录列表新增条目

符合预期

结果录入

验证实际库存数据录入

在盘点记录中输入实际库存数量

盘盈盘亏状态自动计算

符合预期

数据导出

验证盘点数据导出功能

选择盘点记录点击导出

系统生成包含盘点数据的文件

符合预期

考勤记录管理模块测试管理员对员工考勤数据的管理能力,重点关注考勤数据查看、筛选与记录维护的准确性。考勤记录管理测试如表6-7所示。

表6-7 考勤记录管理测试用例表

测试项

测试目的

测试步骤

预期结果

实际结果

按员工查询

验证按员工用户筛选考勤记录

选择或输入员工姓名执行查询

列表显示该员工全部考勤记录

符合预期

日期范围筛选

验证按考勤日期段检索功能

设置开始日期与结束日期

显示该时间段内所有员工考勤数据

符合预期

状态筛选

验证按考勤状态过滤功能

选择正常或请假状态

列表仅显示对应状态的记录

符合预期

6.4测试结论

经过对入库记录查询、出库记录查询、异常反馈、物资信息管理、入库记录管理、盘点记录管理、考勤记录管理七大部分进行系统的测试,所有的测试用例都得到了符合预期的结果。入库记录查询、出库记录查询模块在不同的筛选条件下都可以返回出库匹配的数据,异常反馈模块中信息提交、审核状态更新的流程没有问题。物资信息管理模块可以实现新增、编辑和批量导入的功能,并且数据的一致性较好,入库记录管理模块的单条审核和批量审核功能都可以正确地更新记录的状态。盘点记录管理模块中,盘点单生成、结果录入和数据导出等功能均能正常工作,考勤记录管理模块对员工、日期范围、状态等进行筛选后,可以找到对应的目标记录。测试结果说明各个核心业务模块的功能全部实现,数据流转正确。

7总结

传统的仓库管理依靠人工的纸质记录,信息传递效率低下并且容易造成数据的错误和遗漏,不能满足企业业务扩张后所提出的复杂的控制要求。本文就以上问题提出基于SpringBoot的仓库管理系统,并以此来对物资流转的过程进行整合,为企业员工和管理员提供清晰高效的使用平台。系统采用功能权限分离的方式对仓库信息、物资台账、业务单据进行统一管理,较好地解决了数据孤岛、流程滞后的问题,达到了预期的设计目的。

系统按照软件工程规范来开展研究工作。在需求分析阶段,对员工和管理员的业务需求进行梳理,确定在线聊天、物资查询、异常反馈、各类记录管理等主要功能。系统设计阶段采用B/S架构,前端用Vue框架实现交互界面,后端使用Spring Boot处理业务逻辑,MySQL数据库保存业务数据,开发环境用IntelliJ IDEA。编码实现阶段严格按照模块化原则来划分仓库管理、物资管理、厂商管理、记录管理等各个功能模块。测试阶段根据测试用例设计来对入库查询、出库查询、异常反馈等主要模块做功能测试,保证系统运行正常。技术架构上分层设计提高了系统的可维护性以及扩展性,员工用户可以进行日常的查询和反馈,管理员用户负责全局的控制,三个角色共同工作保证了仓储业务的顺利进行。

受开发周期与个人能力限制,系统仍存在不足之处。物资流转环节没有采用条码扫描技术,数据录入依靠人工完成。异常反馈处理机制比较简陋,没有流程催办和消息提醒的功能。盘点记录模块没有和库存阈值预警联动起来,不能自动发出库存异常的提醒。服务器采用本地化部署,并发能力只能满足小型企业的简单需求。

后续研究可以对上述的不足之处进行改善。采用条码扫描技术来提高物资录入速度。整合地图API来优化供应厂商位置检索。完善异常反馈流程,加入催办、消息推送。根据库存分析数据来建立物资需求预测模型。随着功能的不断改善,系统会越来越适合于企业仓储管理的各种环境。

参考文献

  • 王涛, 王玉琪, 李建良, 等. 基于青岛港资产管理系统的数据治理方案[J]. 港口科技, 2025, 35(05): 1-6.
  • 毕进娜. 基于RFID物联网技术的节点地震仪仓库管理系统[J]. 工业控制计算机, 2025, 38(06): 129-131.
  • 张瑞申, 苏清洲, 王娜娜. 汽车零配件仓储物流中仓库管理系统(WMS)的应用[J]. 中国储运, 2025, 40(09): 159-160.
  • 张良, 孙莉莉, 韩悦. 基于RFID射频识别技术的电力物资仓库管理系统设计[J]. 电子设计工程, 2025, 33(15): 111-115.
  • 郑元勋, 周康康, 胡少伟, 等. 黄河上游多灾种多源预警数据库管理系统设计与实现[J]. 人民黄河, 2025, 47(07): 84-90.
  • 温馨, 李少波. 智能化仓库管理系统设计与实现[J]. 中国储运, 2025, 40(11): 179-180.
  • 宋昕. 基于人工智能的火力发电厂物资仓库自动化管理系统研究[J]. 电气技术与经济, 2025, 30(10): 295-297.
  • WITEK S, RAUCH Ł, BZOWSKI K, et al. Optimizing heat transfer models for efficient coil cooling in Warehouse Management Systems[J]. Archives of Civil and Mechanical Engineering, 2025, 25(7-8): 296-296.
  • Warego Unveils 2025's Top 5 Retail Warehouse Management Systems with Key Features and Pricing[J]. M2 Presswire, 2025, 50(01): 1-2.
  •  Oracle Named a Leader in Gartner® Magic Quadrant™ for Warehouse Management Systems for 10th Consecutive Year[J]. M2 Presswire, 2025, 50(01): 1-2.
  • LIANG C, SUN L, LUO S, et al. Architecture Design of a Smart Logistics Warehouse Management System based on Multi-modal AI[J]. International Core Journal of Engineering, 2025, 11(5): 326-331.
  • NGUYEN Q N, NGUYEN D D, NGUYEN H V, et al. The designing of warehouse management information system: a case study in helmet company[J]. International Journal of Services and Operations Management, 2025, 51(2): 172-189.
  • 熊永平. 基于SpringBoot框架应用开发技术的分析与研究[J]. 电脑知识与技术, 2021, 15(36): 76-77.
  • 秦冬. 浅析Vue框架在前端开发中的应用[J]. 信息与电脑(理论版), 2024, 36(13): 61-63.
  • 陈倩怡, 何军. Vue+Springboot+MyBatis技术应用解析[J]. 电脑编程技巧与维护, 2020, 35(01): 14-15.
  • 李艳杰. MySQL数据库下存储过程的综合运用研究[J]. 现代信息科技, 2023, 7(11): 80-82.
  • 陈倩怡, 何军. Vue+Springboot+MyBatis技术应用解析[J]. 电脑编程技巧与维护, 2020, 35(01): 14-15.
  • 张丹丹, 李弘. 基于B/S架构的办公管理系统设计与开发[J]. 铁路通信信号工程技术, 2024, 21(09): 44-48.
  • 周晓玉, 崔文超. 基于Web技术的数据库应用系统设计[J]. 信息与电脑(理论版), 2023, 35(09): 189-191.
  • 李俊萌. 计算机软件测试技术与开发应用策略分析[J]. 信息记录材料, 2023, 24(03): 50-52. 
  • 致谢

    时间如流水,毕业在即。回忆论文从选题、开题、反复修改到最后定稿的过程,没有校内导师的悉心指导是不能完成的。老师治学严谨,就选题方向、论文框架、系统功能、文字表达等方面给与了详细的指导。在校外实践阶段,企业导师给系统工程的落地提供宝贵的意见,使理论与实践真正地结合起来,在此向企业导师表示最诚挚的感谢。

    毕设创作不是一条平坦的道路,刚开始面对大量的文献以及系统设计中遇到的技术难题时也曾经有过困惑。经过多次调试代码、整理逻辑之后才有了前进的方向,每一次问题的解决都会给人带来成长。回顾大学四年,从基础课到专业核心,知识体系基本形成,现在以毕业设计作为这段学习生涯的句号,心中充满了喜悦。

    感谢学院给予的学习环境、实验条件以及辅导员的关心、任课老师无私的帮助,使四年时光充满充实与温暖。同窗好友一起在实验室中奋斗的日子,对问题的探讨之夜、互相鼓励的时光都被当作珍贵的记忆珍藏起来。正是因为身边有这样一群志同道合的伙伴,求学之路才不会觉得孤单。

    特别感谢父母多年来对我的支持和理解。求学在外,他们默默的付出始终是我最强大的后盾。不管是顺境还是逆境,家人对我的信任与陪伴给我以前行的动力。

    至此,既是终点又是起点。未来的日子会带着这份感激,以更加踏实的姿势投入到工作中去,用所学回报社会。

    请关注点赞+私信博主,免费领取项目源码

    赞(0)
    未经允许不得转载:171主机测评 » 【课程设计】基于Spring+Boot的仓库管理系统设计与实现-计算机毕设 53083
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址