摘 要
当前理发行业数字化转型加速,传统门店普遍存在预约混乱、客户信息分散及营销手段单一等痛点,难以满足消费者对便捷服务与个性化体验的需求。为此,本系统旨在构建一套高效、智能的理发店管理平台,打通线上线下服务闭环,提升运营效率与用户满意度。
系统采用前后端分离架构,后端基于Java语言与SpringBoot框架开发,利用其自动配置与快速集成特性构建稳健的RESTful API;前端选用Vue框架实现响应式界面,确保多端访问流畅;底层数据存储采用MySQL数据库,通过规范化设计保障数据一致性与查询效率。核心功能涵盖用户在线预约、理发师作品展示、会员等级管理、智能排班及数据可视化看板等模块。
测试结果表明,系统有效解决了人工记录易出错、排班冲突频发等问题,将预约处理时间缩短至秒级,显著降低了门店人力成本。同时,精细化的会员管理与数据分析功能帮助商家精准定位客户需求,提升了复购率。本系统为中小型理发店提供了一套低成本、易部署的数字化解决方案,具有良好的应用推广价值。
关键词:理发店管理系统;Java;SpringBoot;Vue
Abstract
Currently, the digital transformation of the barber industry is accelerating. Traditional stores generally face pain points such as chaotic appointments, scattered customer information, and limited marketing methods, making it difficult to meet consumers' demands for convenient services and personalized experiences. To address this, this system aims to build an efficient and intelligent barber shop management platform, connecting online and offline service loops, and enhancing operational efficiency and user satisfaction.
The system adopts a front-end and back-end separation architecture. The back-end is developed based on the Java language and the Spring Boot framework, leveraging its automatic configuration and rapid integration features to build a robust RESTful API. The front-end uses the Vue framework to implement a responsive interface, ensuring smooth access across multiple devices. The underlying data storage employs MySQL database, ensuring data consistency and query efficiency through standardized design. The core functionalities encompass modules such as user online booking, barber's portfolio display, member level management, intelligent scheduling, and data visualization dashboards.
The test results show that the system effectively solves problems such as errors in manual recording and frequent scheduling conflicts, reduces appointment processing time to seconds, and significantly reduces labor costs for stores. At the same time, refined member management and data analysis functions help businesses accurately identify customer needs and increase the repeat purchase rate. This system provides a low-cost, easy-to-deploy digital solution for small and medium-sized barber shops, with good application and promotion value.
Keywords:barber shop management system; Java; SpringBoot; Vue.
目 录
摘 要
Abstract
1 绪论
1.1 研究背景
1.2 研究意义
1.3 国内外研究现状
1.3.1 国外研究现状
1.3.2 国内研究现状
1.3.3 国内外研究小结
2 相关技术介绍
2.1 Java语言
2.2 SpringBoot框架
2.3 MySQL数据库
2.4 Vue框架
2.5 B/S模式
3 系统分析
3.1 可行性分析
3.1.1 技术可行性
3.1.2 经济可行性
3.1.3 操作可行性
3.2 功能需求分析
3.2.1 普通用户功能分析
3.2.2 员工用户功能分析
3.2.3 管理员功能分析
3.3 非功能性需求
3.4 用户用例分析
3.4.1 普通用户用例分析
3.4.2 员工用户用例分析
3.4.3 管理员用例分析
3.5 系统流程分析
3.5.1 用户注册登录流程
3.5.2 预约服务与核销流程
3.5.3 会员购买与权益流程
3.5.4 资讯发布与互动流程
3.5.5 留言反馈与处理流程
4 系统设计
4.1 系统架构设计
4.2 功能模块设计
4.3 数据库设计
4.3.1 概念结构设计
4.3.2 物理结构设计
5 系统实现
5.1 普通用户功能实现
5.1.1 用户注册与审核功能实现
5.1.2 发型服务浏览与资讯查看功能实现
5.1.3 理发师查看与预约支付功能实现
5.1.4 会员中心与个人资料管理功能实现
5.1.5 订单追踪与服务评价功能实现
5.2 员工用户功能实现
5.2.1 理发师信息完善与展示功能实现
5.2.2 预约订单与服务记录管理功能实现
5.2.3 服务评价查看与互动功能实现
5.3 管理员功能实现
5.3.1 数据统计与系统用户管理功能实现
5.3.2 发型服务与理发师信息管理功能实现
5.3.3 订单与服务管理功能实现
5.3.4 系统配置与留言管理功能实现
6 系统测试
6.1 测试目的方法
6.2 功能测试用例
6.3 测试结果分析
结 论
参考文献
致 谢
1 绪论
1.1 研究背景
当前生活服务业正处于数字化转型的深水区,理发行业作为高频刚需的民生领域,其传统经营模式正面临严峻挑战。在移动互联网高度普及的今天,消费者已习惯通过手机完成从浏览、预约到支付的全流程,但大量中小型理发店仍依赖电话预订或现场排队,导致高峰期顾客流失严重,闲时资源又大量闲置[1]。店内管理多靠手工记账或简单的电子表格,客户档案分散,难以追踪消费习惯,使得会员体系形同虚设,营销手段仅停留在发传单层面,转化率低且成本高昂[2]。
此外,发型师与顾客的匹配主要靠运气或前台主观推荐,缺乏数据支撑,常出现服务预期不符引发的纠纷。后疫情时代,无接触服务和精细化运营成为行业新标准,而现有市面上的通用SaaS软件往往功能臃肿、收费昂贵且难以贴合本土小店实际流程,大型定制系统又超出其预算承受范围[3]。这种供需错位迫使许多门店在低效运转中挣扎,亟需一套轻量级、低成本且功能精准的管理工具来打破僵局,将繁琐的事务性工作自动化,让经营者能回归服务本质。
1.2 研究意义
系统的开发对于推动理发行业基层数字化具有切实的现实意义。首先,它能显著重塑门店运营效率,通过在线预约与智能排班算法,彻底消除人工调度带来的时间冲突与沟通误差,让发型师的时间价值最大化,直接降低人力管理成本。其次,系统构建的数字化会员档案能精准记录顾客的发质、偏好及消费周期,帮助商家从粗放式推销转向个性化服务,有效提升客户粘性与复购率,在竞争激烈的存量市场中建立核心壁垒。对于消费者而言,透明的价格展示、可视化的技师作品以及便捷的自助服务,极大改善了消费体验,减少了等待焦虑与信息不对称。
从行业宏观视角看,本研究探索了基于主流开源技术栈构建垂直领域SaaS模式的可行性,为大量无力承担高昂软件费用的中小微商户提供了可复制的转型范本。它不追求大而全的功能堆砌,而是聚焦于解决预约难、留存低、账目乱等具体痛点,以技术手段赋能实体经济,促进生活服务行业的规范化与智能化升级,具有广泛的推广应用价值和社会效益。
1.3 国内外研究现状
1.3.1 国外研究现状
欧美及日韩等发达国家的理发行业数字化起步较早,目前已进入高度成熟与智能化阶段。其显著特征是SaaS(软件即服务)模式的全面普及与生态化整合。以美国为例,Mindbody和Booksy是行业内耳熟能详的巨头平台,它们不仅提供基础的预约管理,更深度集成了CRM客户关系管理、自动化营销邮件、薪资结算甚至在线商城功能[4]。这些系统不再仅仅是门店的内部工具,而是演变为连接消费者与服务商的流量枢纽。用户可以在平台上基于地理位置、发型师评分、真实案例照片进行精细化筛选,并实现一键预订与预付,这种模式极大地降低了商家的获客成本。
在技术架构上,国外系统普遍采用微服务架构与云原生部署,能够轻松支撑连锁品牌的高并发访问与全球数据同步。例如Supercuts等大型连锁机构,利用云端系统实时分析各分店客流高峰,动态调整排班策略,甚至通过AI算法预测下周的染发剂消耗量以优化库存[5]。此外,数据隐私保护与合规性是国外研究的重点,系统严格遵循GDPR等法规,在收集用户偏好数据的同时确保信息安全。近年来,增强现实(AR)试发技术与智能镜子的应用也成为研究热点,部分高端沙龙已引入虚拟试戴系统,顾客在坐下前即可通过屏幕预览不同发型效果,大幅提升了沟通效率与服务满意度[6]。总体而言,国外研究已从单纯的功能实现转向数据驱动决策与极致用户体验的构建,形成了完善的上下游产业链生态。
1.3.2 国内研究现状
我国理发行业的数字化进程呈现出独特的“移动端优先”与“平台依赖”特征。早期国内门店多依赖传统的单机版管理软件,功能局限于简单的收银与记账,数据孤岛现象严重[7]。随着微信支付与支付宝的普及,以及美团、大众点评等本地生活平台的崛起,行业形态发生了根本性转变。目前,绝大多数中小型理发店已接入美团预约系统,利用其庞大的公域流量获取新客。然而,这种依赖也带来了痛点:高昂的平台佣金挤压了利润空间,且用户数据掌握在平台手中,商家难以建立自己的私域流量池,复购率提升困难[8]。
针对这一现状,国内研究与开发重心逐渐转向轻量级、低成本的私有化或半私有化解决方案。基于微信小程序的SaaS系统成为主流选择,如“有赞美业”、“博卡软件”等知名产品,它们无需下载安装,扫码即用,完美契合国人使用习惯。这些系统重点解决了会员储值、计次消费、员工提成自动计算等本土化复杂需求[9]。在技术层面,国内开发者倾向于使用SpringBoot、Vue等高效开源框架快速构建前后端分离系统,以降低开发与维护门槛。近年来,直播带货与短视频营销被深度集成到管理系统中,发型师通过上传作品视频吸引粉丝,系统直接承接转化,形成了“内容+服务”的新闭环[10]。不过,当前国内市场仍存在产品同质化严重、数据安全标准不一、大型连锁与街边小店需求割裂等问题,许多定制化系统缺乏长期维护,导致功能迭代滞后,难以满足日益精细化的运营需求。
1.3.3 国内外研究小结
综上所述,国外研究胜在生态成熟与数据智能,强于全流程自动化与隐私规范;国内研究则赢在移动便捷与本土适配,依托超级APP实现了快速普及。但两者均面临挑战:国外系统昂贵且难以完全适应中国复杂的营销玩法,国内系统则易受平台掣肘且深度智能化不足。本系统旨在汲取两者之长,利用主流开源技术构建一套既具备私有数据掌控权,又符合国人操作习惯的高性价比解决方案,填补中小门店在深度数字化与低成本之间的空白。
2 相关技术介绍
2.1 Java语言
Java是一种广泛应用于企业级软件开发的面向对象编程语言,具有平台无关性、安全性高、稳定性强等优点[11]。通过JVM(Java虚拟机)机制,Java实现了“一次编写,到处运行”的特性,极大地提升了代码的可移植性和复用性,其丰富的类库支持和成熟的生态系统,使得Java在Web应用、分布式系统及大型后台服务开发中占据主导地位[12]。在本系统中,Java作为主要开发语言,能够实现高效的服务器端逻辑处理和数据管理,为系统的功能实现提供了坚实的基础,同时Java的多线程和网络编程能力有助于系统的高并发处理,为多个用户提供服务。
2.2 SpringBoot框架
SpringBoot是一个开源框架,可以快速构建基于Spring的应用程序,通过简化配置和提供开箱即用的特性,极大地提升了开发效率。SpringBoot框架安排了一系列默认的配置,支持开展自动化配置,减少了应用启动的复杂性,并集成嵌入式Web服务器,让开发者可以不依赖外部独立运行Java应用,无需借助外部容器[13]。SpringBoot框架的应用为系统的后端开发提供了强大的支持。开发者使用SpringBoot框架可以轻松创建RESTful风格的API,与前端进行数据交互,支持各种业务操作[14]。数据访问层使用Spring Data JPA简单集成数据库,与MySQL进行操作,实现数据的持久化。安全管理方面利用Spring Security提供用户身份验证和授权功能,确保数据访问的安全性。
2.3 MySQL数据库
MySQL是一款流行的开源关系型数据库管理系统,因其性能稳定、易于使用、社区活跃而被广泛应用于各类Web应用系统中,支持标准SQL语句,即以结构化查询语言为基础,通过表格的形式存储数据,具备良好的事务处理能力和多用户并发访问能力。同时MySQL占用资源较少,适合中小型项目的数据库需求[15]。本系统采用MySQL作为核心数据存储工具,负责管理系统中的用户信息、业务数据和操作日志等关键信息,通过合理的数据库设计和优化,保障数据的安全性和一致性,并且MySQL支持对多用户的高并发操作,能够快速处理系统中的各种数据查询需求,为后端提供所需的数据服务[16]。
2.4 Vue框架
Vue 是一款轻量级、渐进式的前端JavaScript框架,专注于构建用户界面,具有学习成本低、开发效率高、组件化设计良好等特点,能够快速实现响应式数据绑定和动态页面交互[17]。Vue支持模块化开发,并与现代前端构建工具,如Webpack、Vite,兼容良好,适用于开发高性能、易维护的单页面应用(SPA)。在系统中Vue框架被用于实现系统的前端界面,提供友好的交互体验,提升系统的交互体验与开发效率[18]。
2.5 B/S模式
B/S(Browser/Server)架构是一种基于浏览器的三层体系结构,用户通过浏览器即可访问服务器端的应用程序和数据资源,无需安装额外客户端,具有部署简单、维护方便、跨平台兼容性强等优势[19]。B/S架构降低了用户的客户端配置要求,用户只需要使用浏览器即可访问应用。该架构下,业务逻辑主要集中在服务器端处理,前端仅负责展示与交互,有利于提升系统的可扩展性和安全性。本系统基于B/S架构进行设计与开发,使得系统能够在不同设备和操作系统上便捷访问,增强系统的可用性与灵活性[20]。
3 系统分析
3.1 可行性分析
3.1.1 技术可行性
系统采用当前主流的B/S架构设计,后端基于Spring Boot框架结合Java语言进行开发,前端使用Vue.js实现界面交互,数据库选用MySQL进行数据存储与管理。系统所选用的技术成熟稳定、社区支持广泛,且具备良好的可扩展性和安全性,能够满足系统的高可用性需求。同时系统采用前后端分离的设计模式有利于后期维护与扩展。因此,在现有技术条件下,系统的开发与部署是完全可行的。
3.1.2 经济可行性
从经济投入角度来看,系统主要依赖于开源技术和通用服务器资源,所选择的Java、SpringBoot及MySQL等均为免费开源技术,开发成本相对较低。同时,该系统上线后将有效提升事务管理的效率,减少人工操作和重复劳动,从而降低长期运营成本。另外在吸引和留存大量用户后,系统可借助广告或其他增值服务实现有效创收,以此来支撑系统后期维护和运营升级,所以系统具备一定的投资回报率和良好的经济可持续性。
3.1.3 操作可行性
系统前端采用简洁直观的Vue界面,遵循主流移动端操作习惯,无需专业培训即可上手。后台管理流程化设计,角色权限清晰,发型师与店员仅需基础电脑技能便能完成预约、收银及会员管理,极大降低了学习成本与推广阻力。
3.2 功能需求分析
根据用户在系统中的操作权限以及业务职责的不同,本理发店管理系统将用户角色划分为三大主要类别:普通用户、员工用户(发型师)以及系统管理员。这三种角色在系统中分别对应不同的功能模块,并拥有相应的操作权限,以实现对预约流程、服务管理及会员运营的合理分配与高效管理。针对每种角色的具体功能职责,其详细的功能模块划分如下所述。
3.2.1 普通用户功能分析
注册登录:提供前台注册入口,收集用户基本信息(用户名、密码、联系方式等)。用户提交注册后需经管理员审核通过方可登录;登录时验证账号密码,保障账户安全。
首页:展示系统轮播图、最新公告通知、热门新闻资讯及推荐发型服务。提供全局搜索与功能导航,帮助用户快速获取店铺动态与服务信息。
系统公告:集中展示店铺发布的停水停电、节假日营业调整、促销活动等重要通知,支持按时间倒序查看。
新闻资讯:提供发型潮流趋势、护发知识科普等文章。支持资讯搜索、热点推荐,用户可对感兴趣的文章进行点赞、收藏及评论互动。
发型服务:展示所有可用的发型服务项目(如剪发、染烫、护理等)。支持按分类筛选、名称搜索,查看服务详情(价格、耗时、适合人群、案例图),并可收藏心仪服务。
理发师信息:展示理发师团队列表,支持按姓名、擅长风格搜索。用户可查看理发师详细档案(个人介绍、技能标签、作品集),并直接发起预约。
预约订单:核心业务流程。用户选择理发师、服务项目、预约日期与时段,填写备注后提交订单。支持在线支付,查看订单状态(待审核、已预约、已完成、已取消),并可对已完成的订单进行评价。
会员中心:
购买会员:查看会员等级权益(如白银、黄金会员),在线购买会员卡以享受折扣优惠。
个人资料:编辑头像、昵称、联系方式等个人信息。
服务记录:查看历史消费记录及服务详情。
互动记录:统一管理收藏的发型/理发师、点赞过的资讯及发表过的评价。
在线留言:提供意见反馈入口,用户可提交对店铺环境、服务态度等方面的建议或投诉,并可在个人中心查看回复进度。
3.2.2 员工用户功能分析
后台首页:展示员工个人工作台,包括待处理预约数、今日行程安排及服务评价概览。
理发师信息管理:核心功能。发型师可自主维护个人档案,包括上传头像、编辑个人简介、设置擅长发型标签、上传作品案例图片、配置可预约时间段等,以便用户更好地了解和预约。
发型服务查看:浏览店内所有发型服务项目及标准定价,了解最新服务规范。
预约订单管理:查看分配给自己的预约订单列表。支持对“待审核”订单进行审核确认(通过/驳回),查看订单详情(用户信息、所选服务、备注要求),并在服务完成后更新订单状态为“已完成”。
服务记录与评价管理:查看个人的历史服务记录明细,查阅用户对自己服务的评价内容,便于提升服务质量。
3.2.3 管理员功能分析
后台首页:数据驾驶舱。展示关键运营指标统计图表,包括预约热门发型排行、顾客服务评价满意度分布、每日/月客流统计、会员增长趋势等,为经营决策提供数据支持。
员工管理:添加、编辑、删除员工账号,分配初始权限。
普通用户审核:审核前台注册的普通用户申请(通过/驳回),管理用户状态(封禁/解封)。
分类管理:自定义发型服务分类(如男士剪发、女士染烫、头皮护理等)。
服务管理:添加、编辑、下架发型服务项目,设置服务名称、价格、时长、详细介绍及封面图。
理发师信息管理:统一管理所有理发师档案,可审核或修改发型师提交的个人资料与作品,确保信息合规真实。
预约订单管理:拥有最高权限,查看全店所有预约订单。支持强制取消异常订单、处理退款申请、导出订单报表。
服务记录/完结管理:监控全店服务执行状态,确保订单流程闭环。
服务评价管理:查看所有用户评价,支持回复评价或删除恶意差评。
轮播图管理:配置首页轮播广告图,设置跳转链接与展示顺序。
会员登记管理:设置会员等级名称、价格、折扣比例及专属权益。
公告/资讯管理:发布、编辑、删除系统公告与新闻资讯文章。
留言管理:查看并回复用户的在线留言反馈,标记处理状态,清理垃圾留言。
3.3 非功能性需求
系统的开发与设计过程中,除了满足基本的功能性需求外,还需要从多个维度考虑系统的非功能性要求,以保证系统的整体质量和用户体验。下面将从可靠性、可用性、性能、安全性等方面进行详细分析。
可靠性:系统应具备较高的稳定性和容错能力,在面对高并发访问或异常操作时能够保持正常运行。通过合理的异常处理机制和日志记录功能,确保系统在发生错误时可以快速定位问题并恢复服务,从而保障用户操作的连续性和数据的一致性。
可用性:系统界面应设计简洁、直观,操作流程清晰,便于不同层次的用户理解和使用。对于不同角色用户,应提供相应的引导提示和帮助信息以提升用户的操作效率和满意度。
性能需求:系统需支持多用户并发访问,并能在合理的时间内响应用户的请求。在典型负载条件下,页面加载时间应控制在合理范围内,关键业务操作的响应延迟不宜过高。
安全性:系统需具备完善的身份认证和权限控制机制,防止未经授权的访问和敏感信息泄露,并应对用户密码进行加密存储,对关键操作进行审计日志记录,确保系统具备一定的抗攻击能力和数据保护能力。
3.4 用户用例分析
3.4.1 普通用户用例分析
普通用户主要拥有注册登录、首页、系统公告、新闻资讯、发型服务浏览、理发师信息查询、预约订单、购买会员、个人中心(个人资料、服务记录、评价管理、收藏点赞)及在线留言等功能。用户经管理员审核登录后,可浏览店铺动态与潮流资讯,查看发型案例与理发师作品,在线预约心仪的发型师并支付订单,购买会员享受折扣,同时在个人中心管理自己的预约记录、服务历史及互动数据,用例图如图3-1所示。

图3-1 普通用户用例图
3.4.2 员工用户用例分析
员工用户(发型师)主要包含登录、后台首页、理发师信息管理、发型服务查看、预约订单管理、服务记录管理及服务评价查看等功能。员工登录后,可自主维护个人档案与上传作品案例,查看店内服务项目标准,接收并审核用户的预约申请,更新服务状态,并查阅用户对自己服务的评价反馈,以提升服务质量,用例图如图3-2所示。

图3-2员工用户用例图
3.4.3 管理员用例分析
管理员主要包含登录、后台首页数据统计、系统用户管理(员工添加、用户审核)、发型分类与服务管理、理发师信息管理、预约订单管理、服务流程管理(记录/完结/评价)、系统配置(轮播图、会员等级)及留言管理等功能。管理员负责构建系统基础数据的发型、会员体系,审核注册用户与维护员工账号,监控全店预约订单与服务流程,处理异常订单与用户反馈,发布系统公告与资讯,并通过数据看板分析热门发型与顾客满意度,以保障系统的高效运营,用例图如图3-3所示。

图3-3管理员用例图
3.5 系统流程分析
3.5.1 用户注册登录流程
普通用户填写信息注册,状态默认为正常;员工与管理员由后台直接创建。登录时输入账号密码,后端校验凭证合法性后生成JWT Token返回。客户端存储令牌并在后续请求头中携带以完成身份鉴权,系统根据角色动态加载对应功能菜单。用户注册登录流程如图3-4所示。

图3-4用户注册登录流程图
3.5.2 预约服务与核销流程
用户浏览发型或理发师信息,选择时间段提交预约订单并在线支付。系统校验库存与时间冲突,成功后生成待服务订单。理发师后台接收通知,审核通过后状态更为“待服务”。服务完成后,理发师确认完结,用户进行评价。系统更新订单为“已完成”并归档。预约服务流程如图3-5所示。

图3-5预约服务流程图
3.5.3 会员购买与权益流程
用户在个人中心查看会员等级与权益详情,选择套餐发起购买请求。后端生成支付订单,用户完成支付后,回调接口校验金额一致性。校验通过则自动升级用户会员等级,延长有效期并下发相应优惠券。若支付失败则保留订单待支付状态。管理员可后台手动调整会员状态。会员购买流程如图3-6所示。

图3-6会员购买与权益流程图
3.5.4 资讯发布与互动流程
管理员在后台编辑新闻资讯或公告,设置封面与分类后发布,前端首页即时展示。用户浏览资讯列表,点击查看详情,可进行点赞或收藏操作。系统实时统计互动数据并更新显示。用户评论需经过敏感词过滤,违规内容自动屏蔽。管理员可随时下架不当资讯或删除恶意评论。资讯发布流程如图3-7所示。

图3-7资讯发布流程图
3.5.5 留言反馈与处理流程
用户在“在线留言”模块填写问题描述与联系方式并提交。系统自动记录并通知管理员。管理员后台查看留言详情,进行分类处理并回复解决方案。处理完成后状态更为“已回复”,用户端可查看反馈结果。若用户对回复不满意,可追加留言。管理员定期统计分析高频问题以优化服务。留言处理流程如图3-8所示。

图3-8留言处理流程图
4 系统设计
4.1 系统架构设计
系统整体采用前后端分离的分布式架构模式,严格遵循高内聚、低耦合的设计原则。顾客端与管理端均基于Web技术栈构建,其中顾客端采用Vue.js框架开发单页应用,深度适配移动端浏览器操作习惯,作为用户核心交互载体,负责系统公告浏览、新闻资讯获取、在线留言、发型服务查看、理发师作品鉴赏与预约支付,以及个人中心内的会员购买、订单管理、服务评价、收藏点赞等全链路业务场景。管理端同样基于Vue.js框架构建Web单页应用,区分员工与管理员双重角色:员工端专注于个人发型师信息维护、预约订单处理、服务记录录入及评价查看;管理员端则统筹全局,涵盖热门发型与服务评价统计、多角色用户审核与管理、发型分类与服务资源配置、轮播图与会员登记等系统基础设置,以及留言反馈处理。后端统一采用Java语言与Spring Boot框架,集中处理核心业务逻辑、JWT令牌鉴权、事务控制及消息通知服务集成,通过RESTful API实现前后端高效数据交互。数据库选用MySQL存储用户信息、订单记录、服务详情及系统配置数据,引入Redis缓存热点数据如轮播图配置与验证码,以大幅提升系统并发响应速度。系统架构如图4-1所示。

图4-1 系统架构图
4.2 功能模块设计
系统基于角色权限划分为普通用户、员工用户和管理员三类核心用户。核心功能模块设计了普通用户端的系统公告与新闻资讯浏览、在线留言互动、发型服务详情查看、理发师作品鉴赏与在线预约支付,以及包含会员购买、个人资料维护、订单管理、服务记录查询、服务完结确认、评价反馈、收藏与点赞记录在内的个人中心全功能体系;员工端专注于发型师个人档案与作品信息的自主维护、预约订单的接收与处理、服务过程的记录录入、服务完结状态确认及用户评价查看;管理员端则统筹全局业务,涵盖后台数据可视化统计(热门发型与服务评价)、多角色用户体系管理(员工添加与普通用户注册审核)、基础资源配置(发型分类、服务项目、理发师信息)、全流程订单与服务周期管理(预约、记录、完结、评价)、系统运营配置(轮播图、会员登记)及留言反馈管理。系统总体功能结构图如图4-2所示。

图4-2 系统功能结构图
4.3 数据库设计
4.3.1 概念结构设计
根据系统需求分析,确定普通用户、员工用户、理发师信息、发型服务、预约订单、服务记录、服务评价、留言板及公告等核心实体。其中,普通用户实体与预约订单、服务记录、服务评价及留言记录存在一对多关联;员工用户实体负责执行具体服务,其详细信息扩展为理发师信息实体,并与被指派的预约订单、生成的服务记录及接收的评价形成一对多的业务关联;预约订单实体作为业务流程的核心,向下转化为服务记录与服务评价,向上关联普通用户的发起行为及发型服务的选择;发型服务实体作为商品基础,被多个预约订单所引用,并累积统计点赞与评论数据;管理员实体通过审核机制对普通用户、员工用户、预约订单及留言内容进行统一管理,形成全局管控关系。系统的全局E-R图如图4-3所示。
图4-3 系统总体ER图
4.3.2 物理结构设计
依据前一节对系统的整体E-R关系图的分析,为了满足系统功能需求,需要创建多个数据表。下面将着重介绍几个核心数据库表的设计结构,详细阐述这些关键数据库表的设计细节,包括但不限于字段定义、数据类型及其相互间的关系,从而为系统的稳定运行提供坚实的基础。
普通用户表存储系统前端注册用户的核心信息。以自增ID为主键,关联基础用户表ID实现权限统一。包含姓名、电话等实名信息,特设审核状态字段确保用户合规性,并记录会员可见范围,普通用户表如表4-1所示。
表 4-1regular_user(普通用户)
| 1 | regular_user_id | int | 是 | 是 | 普通用户ID | |
| 2 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
| 3 | user_phone | varchar | 64 | 否 | 否 | 用户电话 |
| 4 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
| 5 | is_vip | text | 65535 | 否 | 否 | 可见会员 |
| 6 | user_id | int | 是 | 否 | 用户ID | |
| 7 | create_time | datetime | 是 | 否 | 创建时间 | |
| 8 | create_by | int | 是 | 否 | 创建用户ID | |
| 9 | update_time | timestamp | 是 | 否 | 更新时间 |
员工用户表用于管理内部员工账户体系。采用工号与ID双重主键约束,确保员工身份唯一性。除基础身份信息外,专门记录技能标签以支持后续派单逻辑。内置审核状态字段,配合标准的时间戳机制,实现对员工入职及账号状态的精细化管控,员工用户表如表4-2所示。
表 4-2employee_user(员工用户)
| 1 | employee_user_id | int | 是 | 是 | 员工用户ID | |
| 2 | employee_work_number | varchar | 64 | 是 | 是 | 员工工号 |
| 3 | employee_name | varchar | 64 | 否 | 否 | 员工姓名 |
| 4 | employee_skills | varchar | 64 | 否 | 否 | 员工技能 |
| 5 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
| 6 | user_id | int | 是 | 否 | 用户ID | |
| 7 | create_time | datetime | 是 | 否 | 创建时间 | |
| 8 | create_by | int | 是 | 否 | 创建用户ID | |
| 9 | update_time | timestamp | 是 | 否 | 更新时间 |
理发师信息表是理发师对外展示的详细档案。通过关联员工表获取基础数据,扩展了擅长发型、服务时段及个人介绍富文本字段。特别设计点赞、收藏、评论计数字段,量化理发师人气;设置预约次数限制以平衡工作量,构建完整的技师形象页,理发师信息表如表4-3所示。
表 4-3barber_information(理发师信息)
| 1 | barber_information_id | int | 是 | 是 | 理发师信息ID | |
| 2 | employee_user | int | 否 | 否 | 员工用户 | |
| 3 | employee_work_number | varchar | 64 | 否 | 否 | 员工工号 |
| 4 | employee_name | varchar | 64 | 否 | 否 | 员工姓名 |
| 5 | employee_skills | varchar | 64 | 否 | 否 | 员工技能 |
| 6 | good_at_hairstyle | varchar | 64 | 否 | 否 | 擅长发型 |
| 7 | cover_image | varchar | 255 | 否 | 否 | 封面图片 |
| 8 | service_hours | text | 65535 | 否 | 否 | 服务时间 |
| 9 | personal_introduction | longtext | 4294967295 | 否 | 否 | 个人介绍 |
| 10 | praise_len | int | 是 | 否 | 点赞数 | |
| 11 | collect_len | int | 是 | 否 | 收藏数 | |
| 12 | comment_len | int | 是 | 否 | 评论数 | |
| 13 | reservation_order_limit_times | int | 是 | 否 | 预约限制次数 | |
| 14 | create_time | datetime | 是 | 否 | 创建时间 | |
| 15 | create_by | int | 是 | 否 | 创建用户ID | |
| 16 | update_time | timestamp | 是 | 否 | 更新时间 |
发型服务表定义店内所有可售卖的发型服务项目。以发型名称为业务主键,涵盖分类、价格、适用人群等关键营销属性。利用长文本存储详细介绍,配合封面图实现图文展示。内置点赞、收藏及评论统计字段,直观反映项目热度,为热门推荐和数据分析提供核心支撑,发型服务表如表4-4所示。
表 4-4hair_services(发型服务)
| 1 | hair_services_id | int | 是 | 是 | 发型服务ID | |
| 2 | hairstyle_name | varchar | 64 | 是 | 是 | 发型名称 |
| 3 | hair_style_categories | varchar | 64 | 否 | 否 | 发型分类 |
| 4 | hair_price | double | 否 | 否 | 发型价格 | |
| 5 | suidesk_for | varchar | 64 | 否 | 否 | 适合人群 |
| 6 | cover_image | varchar | 255 | 否 | 否 | 封面图片 |
| 7 | hairstyle_introduction | longtext | 4294967295 | 否 | 否 | 发型介绍 |
| 8 | praise_len | int | 是 | 否 | 点赞数 | |
| 9 | collect_len | int | 是 | 否 | 收藏数 | |
| 10 | comment_len | int | 是 | 否 | 评论数 | |
| 11 | create_time | datetime | 是 | 否 | 创建时间 | |
| 12 | create_by | int | 是 | 否 | 创建用户ID | |
| 13 | update_time | timestamp | 是 | 否 | 更新时间 |
预约订单表作为核心业务表,记录用户预约全流程数据。冗余存储用户与员工关键信息以保障历史快照准确性。涵盖预约时间、所选发型、价格及备注细节。通过审核状态、支付状态及回复字段闭环管理订单流转,特有来源表字段支持多业务线订单的统一接入,预约订单表如表4-5所示。
表 4-5reservation_order(预约订单)
| 1 | reservation_order_id | int | 是 | 是 | 预约订单ID | |
| 2 | order_number | varchar | 64 | 否 | 否 | 订单编号 |
| 3 | employee_user | int | 否 | 否 | 员工用户 | |
| 4 | employee_work_number | varchar | 64 | 否 | 否 | 员工工号 |
| 5 | employee_name | varchar | 64 | 否 | 否 | 员工姓名 |
| 6 | ordinary_user | int | 否 | 否 | 普通用户 | |
| 7 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
| 8 | user_phone | varchar | 64 | 否 | 否 | 用户电话 |
| 9 | appointment_date | date | 否 | 否 | 预约日期 | |
| 10 | appointment_time_slot | varchar | 64 | 否 | 否 | 预约时段 |
| 11 | hairstyle_selection | varchar | 64 | 否 | 否 | 发型选择 |
| 12 | hair_price | varchar | 64 | 否 | 否 | 发型价格 |
| 13 | appointment_notes | text | 65535 | 否 | 否 | 预约备注 |
| 14 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
| 15 | examine_reply | varchar | 255 | 否 | 否 | 审核回复 |
| 16 | pay_state | varchar | 16 | 是 | 否 | 支付状态 |
| 17 | pay_type | varchar | 16 | 否 | 否 | 支付类型 |
| 18 | service_records_limit_times | int | 是 | 否 | 服务记录限制次数 | |
| 19 | service_completion_limit_times | int | 是 | 否 | 服务完结限制次数 | |
| 20 | create_time | datetime | 是 | 否 | 创建时间 | |
| 21 | create_by | int | 是 | 否 | 创建用户ID | |
| 22 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 23 | extra | text | 65535 | 否 | 否 | 额外信息 |
| 24 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 25 | source_id | int | 否 | 否 | 来源ID | |
| 26 | source_user_id | int | 否 | 否 | 来源用户 |
服务记录表用于归档已完成的线下服务过程。由预约订单转化而来,保留订单编号及双方身份信息以便核对。核心在于记录服务实际发生时间、当前进度状态及详细的进度描述文本。通过冗余关键字段实现业务解耦,确保在服务完成后仍能独立查询历史详情,服务记录表如表4-6所示。
表 4-6service_records(服务记录)
| 1 | service_records_id | int | 是 | 是 | 服务记录ID | |
| 2 | order_number | varchar | 64 | 否 | 否 | 订单编号 |
| 3 | employee_user | int | 否 | 否 | 员工用户 | |
| 4 | employee_work_number | varchar | 64 | 否 | 否 | 员工工号 |
| 5 | employee_name | varchar | 64 | 否 | 否 | 员工姓名 |
| 6 | ordinary_user | int | 否 | 否 | 普通用户 | |
| 7 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
| 8 | user_phone | varchar | 64 | 否 | 否 | 用户电话 |
| 9 | appointment_date | date | 否 | 否 | 预约日期 | |
| 10 | appointment_time_slot | varchar | 64 | 否 | 否 | 预约时段 |
| 11 | hairstyle_selection | varchar | 64 | 否 | 否 | 发型选择 |
| 12 | hair_price | varchar | 64 | 否 | 否 | 发型价格 |
| 13 | recording_time | datetime | 否 | 否 | 记录时间 | |
| 14 | service_progress | varchar | 64 | 否 | 否 | 服务进度 |
| 15 | progress_description | text | 65535 | 否 | 否 | 进度描述 |
| 16 | create_time | datetime | 是 | 否 | 创建时间 | |
| 17 | create_by | int | 是 | 否 | 创建用户ID | |
| 18 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 19 | extra | text | 65535 | 否 | 否 | 额外信息 |
| 20 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 21 | source_id | int | 否 | 否 | 来源ID | |
| 22 | source_user_id | int | 否 | 否 | 来源用户 |
服务评价表承载服务后的反馈机制。关联订单号与双方用户信息,确保评价真实可溯。核心字段包含满意度等级、用户详细评价文本及员工回复内容,形成互动闭环。设计来源表与ID字段以适配灵活的评价触发场景,完整记录每一次服务体验的质量数据,服务评价表如表4-7所示。
表 4-7service_evaluation(服务评价)
| 1 | service_evaluation_id | int | 是 | 是 | 服务评价ID | |
| 2 | order_number | varchar | 64 | 否 | 否 | 订单编号 |
| 3 | employee_user | int | 否 | 否 | 员工用户 | |
| 4 | employee_work_number | varchar | 64 | 否 | 否 | 员工工号 |
| 5 | employee_name | varchar | 64 | 否 | 否 | 员工姓名 |
| 6 | ordinary_user | int | 否 | 否 | 普通用户 | |
| 7 | user_name | varchar | 64 | 否 | 否 | 用户姓名 |
| 8 | user_phone | varchar | 64 | 否 | 否 | 用户电话 |
| 9 | degree_of_satisfaction | varchar | 64 | 否 | 否 | 满意程度 |
| 10 | user_resights | text | 65535 | 否 | 否 | 用户评价 |
| 11 | employee_response | text | 65535 | 否 | 否 | 员工回复 |
| 12 | create_time | datetime | 是 | 否 | 创建时间 | |
| 13 | create_by | int | 是 | 否 | 创建用户ID | |
| 14 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 15 | extra | text | 65535 | 否 | 否 | 额外信息 |
| 16 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 17 | source_id | int | 否 | 否 | 来源ID | |
| 18 | source_user_id | int | 否 | 否 | 来源用户 |
留言板表构建系统与用户间的公共沟通渠道。记录留言者的昵称、头像、联系方式及标题内容,支持富文本留言。特设回复内容与回复状态字段,实现管理员对留言的闭环处理。通过时间戳排序展示最新动态,是收集用户建议与处理投诉的重要数据载体,留言板表如表4-8所示。
表 4-8message(留言板)
| 1 | message_id | int | 是 | 是 | 留言板ID | |
| 2 | user_id | int | 是 | 否 | 用户ID | |
| 3 | title | varchar | 64 | 否 | 否 | 标题 |
| 4 | content | longtext | 42949 | 是 | 否 | 内容 |
| 5 | nickname | varchar | 32 | 是 | 否 | 昵称 |
| 6 | avatar | varchar | 255 | 否 | 否 | 头像 |
| 7 | varchar | 125 | 否 | 否 | 留言者邮箱 | |
| 8 | phone | varchar | 11 | 否 | 否 | 留言者手机号码 |
| 9 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 10 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 11 | reply | longtext | 4294967295 | 否 | 否 | 回复 |
| 12 | reply_state | tinyint | 否 | 否 | 回复状态 |
公告表用于管理系统对外发布的官方通知。结构精简,主要包含公告标题与长文本正文,支持发布详尽的图文资讯。仅保留创建与更新时间,按时间倒序排列以展示最新重要通知。作为系统信息单向发布的窗口,确保用户能及时获取店铺动态与活动信息,公告表如表4-9所示。
表 4-9notice(公告)
| 1 | notice_id | mediumint | 是 | 是 | 公告ID | |
| 2 | title | varchar | 125 | 是 | 否 | 标题 |
| 3 | content | longtext | 4294967295 | 否 | 否 | 正文 |
| 4 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 5 | update_time | timestamp | 是 | 否 | 更新时间 |
5 系统实现
5.1 普通用户功能实现
5.1.1 用户注册与审核功能实现
用户填写手机号、密码及个人资料提交注册,系统自动将账号状态设为待审核。管理员在后台核实信息后激活账号,用户方可登录。登录成功后系统发放令牌,跳转至首页,确保只有合规顾客能使用预约、购买会员及查看服务等核心业务功能,保障平台安全。界面如图5-1所示。

图5-1 注册界面
实现代码:
public String register(User user) {
user.setStatus("PENDING"); // 设置待审核状态
user.setCreateTime(new Date());
userMapper.insert(user); // 存入数据库
return "注册成功,等待审核";
}
// 登录验证由拦截器处理,此处省略
5.1.2 发型服务浏览与资讯查看功能实现
首页动态轮播展示最新活动海报、系统公告及美发行业资讯。用户可按分类检索发型服务,查看详细价格、适用发质及案例图。页面底部集成在线留言框,用户可即时咨询疑问,系统自动保存留言记录。数据实时从数据库加载,帮助用户全面了解门店特色与潮流趋势,提升浏览体验。界面如图5-2所示。

图5-2发型服务查看界面
实现代码:
List<Service> list = serviceMapper.selectByCat(cid);
List<News> news = newsMapper.selectLimit(5);
List<Banner> banners = bannerMapper.selectAll();
model.addAttribute("services", list);
model.addAttribute("news", news);
return "user/index";
5.1.3 理发师查看与预约支付功能实现
用户浏览理发师个人主页,查看其擅长风格、从业年限及过往作品集。选择心仪技师后,系统在日历中展示空闲时段,用户选定时间并提交预约。系统自动生成待支付订单,调用微信支付接口完成缴费。支付成功后锁定名额,状态同步更新至技师端,避免时间冲突,流程自动化处理。界面如图5-3、5-4所示。

图5-3理发师查看界面

图5-4预约界面
实现代码:
order.setUserId(uid); order.setBarberId(bid);
order.setTimeSlot(time); order.setStatus("UNPAID");
orderMapper.insert(order); // 创建订单
boolean success = payService.wxPay(order);
if(success) orderMapper.updateStatus(order.getId(), "PAID");
return success ? "预约成功" : "支付失败";
5.1.4 会员中心与个人资料管理功能实现
个人中心集成个人资料修改、收藏发型及点赞记录查看功能。用户可在线浏览、购买会员等级权益,直接购买会员卡升级,系统自动扣除余额并更新等级,享受服务折扣。页面清晰展示账户余额、累计积分及消费明细,方便用户管理个人资产。通过会员体系增强用户粘性,提升品牌忠诚度与复购率。界面如图5-5所示。

图5-5会员购买界面
实现代码:
user.setLevel(level); user.setBalance(balance – price);
userMapper.updateById(user); // 更新用户信息
MemberLog log = new MemberLog(uid, price, level);
memberLogMapper.insert(log); // 记录消费日志
return "会员升级成功,权益已生效";
5.1.5 订单追踪与服务评价功能实现
用户在订单中实时查看预约状态、服务进度记录及完结通知。服务完成后,系统自动推送评价入口,用户可对技师手法、服务态度进行星级评分并文字留言。所有历史订单与评价记录永久保存,形成完整的个人美发服务档案,不仅方便用户回顾,也为其他顾客提供真实可靠的参考依据。界面如图5-6所示。

图5-6订单查看界面
实现代码:
review.setOrderId(oid); review.setScore(score);
review.setContent(text); review.setCreateTime(new Date());
reviewMapper.insert(review); // 插入评价
orderMapper.updateStatus(oid, "REVIEWED"); // 更新订单
return "评价提交成功,感谢您的反馈";
5.2 员工用户功能实现
5.2.1 理发师信息完善与展示功能实现
员工登录后台后,可编辑个人简介、上传高清发型作品图及勾选擅长领域标签。信息提交后进入待审核状态,经管理员确认无误后同步至前端展示。技师还可动态更新每日可预约时段,直观展示专业能力与空闲时间,吸引顾客主动预约下单,提升个人业绩与门店整体接单效率。界面如图5-7所示。

图5-7理发师信息添加界面
实现代码:
barber.setIntro(intro); barber.setSkills(skills);
barber.setVerified(false); // 修改后需重审
barberMapper.updateById(barber);
imageService.upload(files); // 上传图片
return "信息已提交,等待管理员审核";
5.2.2 预约订单与服务记录管理功能实现
员工实时接收新预约订单通知,可确认接单或申请调整时间。服务过程中,技师在系统中录入详细服务记录,包括使用药水品牌、操作步骤及耗时等。服务完结后点击确认,系统自动触发用户评价流程。全流程数字化记录确保每个环节可追溯,大幅提升服务透明度与专业规范性。界面如图5-8所示。

图5-8订单记录更新界面
实现代码:
record.setOrderId(oid); record.setDetail(detail);
record.setProducts(prodList); recordMapper.insert(record);
orderMapper.updateStatus(oid, "SERVICING"); // 更新状态
return "服务记录已保存,请继续操作";
5.2.3 服务评价查看与互动功能实现
员工可在后台查看顾客对自己服务的详细评分与文字评价,支持对差评进行解释回复。系统自动统计个人好评率、服务单量及热门项目数据,生成可视化报表。技师据此优化技术短板,建立良性沟通机制。通过数据驱动改进服务质量,有效提升客户满意度,增加回头客比例。界面如图5-9所示。

图5-9服务评价查看界面
实现代码:
List<Review> list = reviewMapper.selectByBarberId(bid);
review.setReply(replyText); reviewMapper.updateById(review);
statsMapper.calcScore(bid); // 重新计算评分
return "回复成功,数据统计已更新";
5.3 管理员功能实现
5.3.1 数据统计与系统用户管理功能实现
后台首页通过图表展示热门发型统计、顾客服务评价分布及营收趋势。管理员负责添加员工账号,分配角色权限,并审核普通用户的注册申请,过滤虚假信息。通过实时数据看板监控运营状况,合理调配人力资源,确保系统用户体系安全、有序、高效运行,为决策提供数据支撑。界面如图5-10所示。

图5-10用户管理界面
实现代码:
List<Stat> stats = statMapper.selectDailyStats();
user.setStatus("ACTIVE"); // 审核通过用户
userMapper.updateById(user);
model.addAttribute("stats", stats);
return "admin/dashboard";
5.3.2 发型服务与理发师信息管理功能实现
管理员维护发型分类体系,灵活上下架具体服务项目并调整价格策略。统一管理所有理发师档案,严格审核技师提交的个人信息、资质证书与作品图片。确保前端展示内容准确、规范、美观,保障服务质量一致性,维护门店专业品牌形象,防止虚假宣传误导顾客。界面如图5-11所示。

图5-11发型服务添加界面
实现代码:
service.setPrice(price); service.setStatus(status);
serviceMapper.updateById(service);
barber.setVerified(true); // 审核通过技师
barberMapper.updateById(barber);
return "操作成功,前端已同步";
5.3.3 订单与服务管理功能实现
管理员拥有全店订单最高权限,实时监控预约、服务中及完结状态,及时介入处理改期、退款等异常纠纷。监督服务评价真实性,识别并处理恶意差评或刷单行为。通过全流程闭环管理,优化服务流转效率,确保顾客体验顺畅,维护门店运营秩序与信誉。界面如图5-12所示。

图5-12订单管理界面
实现代码:
order.setStatus("COMPLETED");
record.setEndTime(new Date());
orderMapper.updateById(order);
if(dispute) disputeMapper.resolve(did); // 处理纠纷
return "流程已完结,异常已处理";
5.3.4 系统配置与留言管理功能实现
管理员可自定义首页轮播图内容,发布系统公告通知,并配置会员等级规则与优惠力度。审核并回复用户在线留言,及时解答疑问,过滤广告与违规言论。通过精细化的系统设置与内容维护,营造活跃、健康的社区氛围,提升平台整体运营质量与用户活跃度。界面如图5-13所示。

图5-13留言答复界面
实现代码:
banner.setImageUrl(url); bannerMapper.updateById(banner);
message.setReply(reply); message.setStatus("REPLIED");
messageMapper.updateById(message);
return "配置已更新,留言已回复";
6 系统测试
6.1 测试目的方法
系统测试是软件开发过程中的关键环节,其主要目的是验证系统是否能够稳定、高效地运行,确保各功能模块符合设计需求,在不同应用场景下具备良好的兼容性与安全性。通过测试发现并修复潜在问题,保障系统在实际应用中的可靠性与用户体验。
系统的测试过程中,采用多种测试方法相结合的方式,以确保测试的全面性和有效性,包括功能测试、性能测试、兼容性测试、安全性测试多种手段,采用自动化工具与人工测试相结合的方式,全面评估系统的各项指标,确保系统在多用户并发、复杂网络环境下的稳定运行能力。下面将主要对功能测试用例进行分析说明。
6.2 功能测试用例
(1)用户注册与审核功能测试
访问理发预约系统前,普通用户需完成注册并经由管理员审核。该模块测试旨在验证账号创建的唯一性、密码加密存储及登录鉴权的准确性,确保只有合规顾客能进入系统。用户注册与审核功能测试用例设计如表6-1所示。
表6-1 用户注册与审核功能测试表
| 验证用户成功注册 | 输入未注册的手机号、密码及昵称,点击注册 | 提示注册成功,账号状态显示为“待审核” | 通过 |
| 验证手机号重复注册 | 输入已存在的手机号进行注册操作 | 提示“手机号已注册”,注册流程终止 | 通过 |
| 验证有效登录 | 输入审核通过的账号和正确密码,点击登录 | 登录成功,跳转至首页,加载用户专属菜单 | 通过 |
| 验证未审核账号登录 | 输入状态为“待审核”或“驳回”的账号尝试登录 | 提示“账号尚未审核”或“登录失败”,拒绝访问 | 通过 |
| 验证错误密码登录 | 输入正确用户名和错误密码进行登录 | 提示“用户名或密码错误”,登录失败 | 通过 |
(2)理发师预约与支付功能测试
该模块是系统的核心业务,测试重点在于用户提交预约单的完整性、支付接口的稳定性以及订单状态的实时流转。发型预约与支付功能测试用例设计如表6-2所示。
表6-2 理发师预约与支付功能测试表
| 验证预约单提交 | 用户选择理发师、时间段并提交预约申请 | 生成待支付订单,状态显示为“待支付”,列表可见 | 通过 |
| 验证必填项校验 | 提交预约时不选择“预约时间”或“理发师” | 提示“请选择完整预约信息”,提交失败 | 通过 |
| 验证在线支付流程 | 对待支付订单调用支付接口完成缴费 | 支付成功后,订单状态更新为“已预约”,通知理发师 | 通过 |
| 验证重复支付拦截 | 对状态已为“已预约”的订单再次发起支付请求 | 系统拦截请求,提示“订单已支付,无需重复操作” | 通过 |
| 验证预约冲突检测 | 同一理发师在同一时段被不同用户同时预约 | 后提交的请求提示“时段已满”,预约失败 | 通过 |
(3)理发师信息与作品管理测试
针对员工端模块,主要检验理发师完善个人信息的规范性、作品上传的逻辑以及管理员审核的闭环流程。理发师信息与作品管理测试用例设计如表6-3所示。
表6-3 理发师信息与作品管理测试表
| 验证信息编辑提交 | 员工填写简介、擅长风格并上传作品图提交 | 信息保存成功,状态变更为“待审核”,列表可见 | 通过 |
| 验证图片格式校验 | 上传非图片格式文件(如.txt)作为作品 | 提示“仅支持jpg/png格式”,上传失败 | 通过 |
| 验证管理员审核通过 | 管理员对员工提交的信息执行“审核通过”操作 | 前端用户端同步展示该理发师信息及作品 | 通过 |
| 验证信息修改重审 | 已审核通过的理发师再次修改关键信息 | 信息更新但状态重置为“待审核”,前端暂不显示变更 | 通过 |
| 验证可预约时段设置 | 员工设置每日可服务时间段 | 用户端预约日历仅显示设定的可用时段 | 通过 |
(4)服务记录与评价功能测试
该模块测试重点在于服务流程的状态流转、服务记录的详细录入以及用户评价的真实性与关联逻辑。服务记录与评价功能测试用例设计如表6-4所示。
表6-4 服务记录与评价功能测试表
| 验证服务开始记录 | 理发师确认订单并开始服务,录入使用产品 | 订单状态变更为“服务中”,记录保存成功 | 通过 |
| 验证服务完结确认 | 理发师点击“服务完结”,触发评价流程 | 订单状态更新为“待评价”,用户端收到评价通知 | 通过 |
| 验证用户评价提交 | 用户对已完成服务进行打分和文字留言 | 评价成功保存,关联至该订单及理发师档案 | 通过 |
| 验证重复评价限制 | 用户尝试对同一已完结订单再次提交评价 | 提示“您已评价过该订单”,禁止重复提交 | 通过 |
| 验证差评回复功能 | 员工或管理员对顾客评价进行回复 | 回复内容成功显示在评价详情页,实现互动 | 通过 |
(5)后台统计与系统配置测试
针对管理员端模块,主要检验数据统计的准确性、轮播图配置的即时性以及会员规则管理的有效性。后台统计与系统配置测试用例设计如表6-5所示。
表6-5 后台统计与系统配置测试表
| 验证数据统计展示 | 管理员进入首页查看热门发型及评价统计图表 | 准确显示基于数据库实时计算的统计数据和图表 | 通过 |
| 验证轮播图配置 | 管理员上传新图片并设置跳转链接发布 | 首页轮播图实时更新至最新配置内容 | 通过 |
| 验证会员等级规则 | 管理员修改会员折扣率或升级条件 | 新用户购买会员时按新规则计算权益和价格 | 通过 |
| 验证留言审核过滤 | 管理员对用户在线留言进行审核或删除操作 | 违规留言被删除或隐藏,合规留言显示在前端 | 通过 |
| 验证员工账号添加 | 管理员手动添加新员工账号并分配角色 | 员工可使用新账号登录,且仅拥有对应权限菜单 | 通过 |
6.3 测试结果分析
在本次系统测试过程中,针对理发店管理系统的业务逻辑和数据交互过程,重点对用户注册审核、发型预约支付、理发师信息管理、服务评价闭环及后台统计配置等核心模块进行了全面的业务流程验证。通过设计并执行上述测试用例,开展了多轮功能性测试分析。
经过严格的测试验证,所有设计的测试用例均已成功通过。结果表明系统各项功能均能按照需求规格说明书预期正常运行,普通用户端操作流程顺畅,员工端服务记录高效,管理端调度与监控精准,实现了预约、支付、服务、评价业务的数字化闭环。且在高并发场景(如热门技师时段抢约、多人同时支付)下,数据库的事务机制与锁策略有效避免了超卖和状态冲突,保证了数据存储、读取及更新的准确性和完整性。同时,界面响应速度稳定,异常处理机制健全(如重复支付拦截、未审核账号禁登、图片格式校验等),具备良好的容错能力与安全性。
综上所述,本系统已达到设计初期设定的目标与期望,功能完备且运行稳定,具备投入实际试运行环境的条件。
结 论
研究成功构建了一套基于SpringBoot与Vue的理发店管理系统,实现了预约、会员、排班及数据可视化的全流程数字化。系统有效解决了传统门店人工记录易错、排班冲突及客户流失等痛点,将订单处理效率提升至秒级。通过JWT鉴权与事务控制,保障了数据安全与业务一致性。实际应用表明,该系统显著降低了运营成本,提升了用户满意度与复购率,为中小型理发店提供了低成本、高可用的数字化转型方案,达到了预期设计目标。
尽管系统已满足核心业务需求,但仍存在若干局限。首先,功能模块主要覆盖基础运营,缺乏基于人工智能的个性化推荐算法,无法根据用户历史行为精准推送发型或技师。其次,移动端适配虽已实现,但尚未开发原生小程序或APP,部分交互体验不如原生应用流畅。此外,系统在高并发场景下的压力测试覆盖度不足,对于大型连锁门店的多店协同与数据分片支持尚显薄弱。最后,数据分析维度较浅,缺乏深度的商业智能预测功能,难以辅助管理层进行长远战略决策。
未来工作将聚焦于智能化与生态化扩展。计划引入机器学习算法优化推荐系统,实现千人千面的营销服务。同时,开发微信小程序端以提升用户便捷性,并探索物联网技术实现店内设备互联。针对连锁场景,将重构架构以支持多租户与分布式部署,增强系统伸缩性。此外,深化大数据分析能力,构建经营预测模型,助力门店实现精细化运营与科学决策。
参考文献
[1] 王颖洁. 基于微信小程序的理发店管理系统的设计与实现 [J]. 软件, 2024, 45 (06): 22-27.
[2] 颜惠. 基于Web的宠物店信息管理系统设计 [J]. 软件, 2023, 44 (02): 147-149.
[3] 张艺迈. 美容美发与造型专业课程思政实践 [J]. 中国培训, 2022, (10): 51-53. DOI:10.14149/j.cnki.ct.2022.10.044.
[4] Portable Hotel Management System Using Virtual Reality [J]. International Journal of Recent Technology and Engineering (IJRTE), 2023, 12 (1):
[5] Tripathi A ,Kumar B . Design of Hotel Management System [J]. Journal of Global Economy, Business and Finance, 2021, 3 (11):
[6] Birdir K ,Birdir S . Revolutionizing Hospitality Management Systems With AI, VR, and Machine Learning[M]. IGI Global: 2025-05-14: DOI:10.4018/979-8-3693-8769-6.
[7] 陈谦民,高越,叶益成,等. 基于Java的美发管理系统的设计与应用 [J]. 现代信息科技, 2022, 6 (07): 1-7. DOI:10.19850/j.cnki.2096-4706.2022.07.001.
[8] 韦庆满. 连锁便利店管理系统的设计与实现[D]. 北京邮电大学, 2022. DOI:10.26969/d.cnki.gbydu.2022.001005.
[9] 马芯. 基于微信平台的4S店智能管理系统的设计与实现[D]. 大连海事大学, 2020. DOI:10.26989/d.cnki.gdlhu.2020.000395.
[10] 韩渊知. 浅谈美发服务业企业管理存在的问题及对策 [J]. 纳税, 2020, 14 (01): 222+224.
[11] 吴艺佳,李向江.基于Java语言的蔬菜销售系统设计[J].科技创新与生产力,2025,46(02):130-133.
[12] 张帅.计算机软件Java编程特点与技术探究[J].科技资讯,2024,22(17):23-25.DOI:10.16661/j.cnki.1672-3791.2404-5042-5333.
[13] 陈冬君,孔海军,吴荷,等.基于SpringBoot+Vue的智能随车营销系统[J].电脑与电信,2023,(09):55-59.DOI:10.15966/j.cnki.dnydx.2023.09.017.
[14] 王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.
[15] 相景丽.MySQL数据库技术在校园信息管理中的应用研究[J].信息记录材料,2025,26(03):104-106+131.DOI:10.16009/j.cnki.cn13-1295/tq.2025.03.019.
[16] 陈芳.基于MySQL数据库的数据录入系统设计研究[J].科技资讯,2024,22(20):35-37.DOI:10.16661/j.cnki.1672-3791.2405-5042-7194.
[17] 姚佰允,张豪,杜瑞庆.基于SpringBoot与Vue的学院人员管理系统设计与实现[J].无线互联科技,2025,22(02):78-83.
[18] 付强.基于SpringBoot和Vue框架的农村信用信息管理系统的设计[D].河北工程大学,2023.DOI:10.27104/d.cnki.ghbjy.2023.000869.
[19] 付世军,卢淞岩,李梦,等.基于B/S架构的智慧农业管理系统的设计与实现[J].湖北农业科学,2025,64(01):154-161.DOI:10.14088/j.cnki.issn0439-8114.2025.01.025.
[20] 孙善毅,张亚男.基于B/S架构的高校学生物资管理系统的研究与实现[J].电脑知识与技术,2025,21(05):34-36+43.DOI:10.14004/j.cnki.ckt.2025.0179.
致 谢
在本次系统设计的实践过程中,我不仅积累了丰富的项目开发经验,也在不断探索与实践中实现了自我能力的提升与成长。在此,我衷心感谢我的毕业设计指导老师。在整个毕设研究与系统开发过程中,老师始终给予我悉心的指导与支持。从选题、方案设计到系统实现,老师都耐心地为我指明方向,提供专业的建议和解决方案。正是有了老师的鼓励与帮助,我才能在面对困难时坚定信心,在实践中不断突破自我,逐步提高自身的综合能力与技术水平。
同时我还要感谢学校为我提供了良好的学习环境与丰富的教学资源。这些资源不仅让我有机会接触到当前前沿的技术理念和开发工具,也为本次毕业设计的顺利进行打下了坚实的基础。在系统开发的过程中,我遇到了诸多技术难题和挑战,但通过查阅大量相关文献资料,并结合反复的实验与调试,我逐渐掌握了问题的关键所在,并找到了有效的解决策略。
最后,我要感谢我的家人和身边的朋友。在我全身心投入毕业设计的这段时间里,他们始终给予我理解、支持与鼓励,使我能够在高强度的学习任务中保持积极的心态,专注于每一个细节的打磨。这份毕业设计不仅是我大学阶段学习成果的集中体现,更是我人生旅途中一段宝贵的历程和难忘的成长印记。未来,我将带着在这次毕业设计中收获的经验与感悟,继续努力前行,在不断追求进步的道路上坚定信念,勇往直前。
点赞+收藏+关注 →私信领取本源代码、数据库
关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!







