SpringBoot3+Vue3+MySQL 药店管理系统源码 前后端分离实战项目
一、项目简介
本系统是一套基于 SpringBoot3 + Vue3 + MySQL 构建的药店管理平台,采用前后端分离架构,支持管理员、药师、收银员三种角色协同工作。系统覆盖药品进销存管理、处方审核、药品养护、供应商管理、采购入库、销售开单、库存预警、近效期提醒及销售数据统计等核心业务环节,提供完整的药店运营管理解决方案。
二、技术栈
| 技术 | 说明 |
|---|---|
| 后端框架 | Spring Boot 3.x |
| ORM | MyBatis-Plus(含分页插件、自动填充、逻辑删除) |
| 权限认证 | JWT(自定义拦截器 + 路由守卫角色校验) |
| 前端框架 | Vue 3(Composition API) |
| 路由管理 | Vue Router(含导航守卫) |
| 构建工具 | Vite |
| 数据库 | MySQL 8.x |
| 密码加密 | BCrypt(Hutool 工具库) |
| 文件上传 | MultipartFile(支持药品图片、处方图片上传) |
三、功能模块
管理员端
- 登录认证:通过用户名和密码登录,系统返回 JWT 令牌及用户基本信息
- 修改密码:提供原密码和新密码,修改本人登录密码
- 仪表盘:展示药品总数、库存预警药品数、近效期药品数、已过期药品数、总订单数、今日订单数、待审核订单数、今日销售额及近 7 天销售趋势图
- 药品管理:分页查询药品列表(支持按药品名称、分类、供应商筛选);新增药品(自动校验药品编码唯一性,默认上架状态);修改、删除、查看药品详情
- 库存预警:查看库存低于预警值的药品列表,按库存升序排列
- 近效期管理:查看 30 天内过期的药品列表,按有效期升序排列
- 供应商管理:分页查询供应商列表(支持按名称筛选);新增(自动校验编码唯一性,默认启用)、修改、删除供应商;获取所有启用供应商列表(用于下拉选择)
- 用户管理:分页查询用户列表(排除管理员,支持按用户名和角色筛选);新增(自动校验用户名唯一性,密码 BCrypt 加密存储,默认启用)、修改(不更新密码)、删除(禁止删除管理员)、重置密码、启用/禁用用户
- 采购入库:分页查询采购入库记录(支持按采购单号和供应商筛选);新增采购入库单(自动生成采购单号:供应商编码+日期+顺序码;自动计算采购总额;入库同时增加对应药品库存并更新批次号)
- 系统操作日志:分页查询日志(支持按操作用户名和模块筛选),记录请求方法、参数、IP、执行时长及操作状态
药师端
- 登录认证:通过用户名和密码登录,系统返回 JWT 令牌及用户基本信息
- 修改密码:提供原密码和新密码,修改本人登录密码
- 处方审核:查看待审核的处方订单列表(仅包含含处方药的待审核订单,按创建时间升序排列);审核通过(APPROVED)或驳回(REJECTED),填写审核备注;审核通过后自动扣减对应药品库存
- 药品养护管理:新增养护记录(选择药品、填写养护类型、养护内容,自动记录操作人,状态默认为待处理);完成养护(填写养护结果和处理措施,状态变更为已完成)
- 养护记录查询:查看药品养护记录列表,支持按养护状态和药品筛选
- 仪表盘查看:与管理员共享仪表盘数据
收银员端
- 登录认证:通过用户名和密码登录,系统返回 JWT 令牌及用户基本信息
- 修改密码:提供原密码和新密码,修改本人登录密码
- 创建销售订单:选择药品(支持多药品)、填写数量、顾客姓名、支付方式(默认现金),上传处方图片(可选);系统自动计算订单总金额;若包含处方药则订单状态为待审核,否则直接完成并扣减库存;自动生成订单编号(日期+收银员编号+顺序码)
- 查看本人订单:查看本人创建的销售订单列表,支持按订单编号和订单状态筛选
- 查看全部订单:管理员和收银员共享全部销售订单列表
- 订单详情查看:包含订单编号、顾客姓名、支付方式、总金额、状态、处方图片、收银员姓名、药师姓名、审核时间、审核备注、订单明细等
- 仪表盘查看:与管理员共享仪表盘数据
四、项目总结
本项目技术亮点在于使用 Spring Boot 3 + Vue 3 最新版本栈,结合 MyBatis-Plus 实现高效数据操作,JWT 权限认证覆盖前后端,支持三种角色协同工作。系统覆盖药店进销存核心业务,包含处方审核、库存预警、近效期提醒等实用功能,适合作为 Java 全栈开发学习项目或中小型药店管理系统的二次开发基础。
界面展示
交付内容
本项目为完整交付,包含:
- 完整后端源码
- 完整前端源码
- 数据库初始化脚本(SQL)
- 万字项目文档(设计文档 / 论文,可作课程设计、毕业设计参考)
获取完整源码
完整前后端源码 + 数据库脚本 + 万字项目文档见 Gitee 仓库:https://gitee.com/kangxihuang/src-K094
