基于 Vue 3 + Flask + LangChain 的高校后勤数字化管理平台,AI 赋能数据决策
长安大学后勤管理系统是一套覆盖 师生服务、后勤管理、资产运营、AI 数据决策 四大维度的数字化管理平台,实现高校后勤业务的在线化、流程化和智能化。
| 模块 | 说明 |
|---|---|
| 🔧 智能报修 | 在线报修 → 派单调度 → 接单维修 → 验收评价 全流程闭环 |
| 🛒 采购申请 | 物资申请 → 部门审核 → 后勤审批 → 采购执行 |
| 🏠 宿舍管理 | 楼栋房间管理 / 学生入住退宿 / 卫生检查 / 能耗记录 |
| 📦 资产管理 | 固定资产台账 / 直线折旧计算 / 二维码标贴 / 维修报废 |
| 🏪 商铺管理 | 商铺台账 / 租赁合同 / 租金收缴 / 到期提醒 |
| 📅 场地预约 | 会议室 / 体育馆 / 操场在线预约与审批 |
| 📢 公告通知 | 富文本公告 / 按角色定向推送 / 已读统计 / 置顶 |
| 💬 投诉建议 | 匿名提交 / 分类处理 / 回复反馈 / 满意度评价 |
| ⚡ 水电缴费 | 电表抄表 / 电费充值 / 网络套餐订阅 / 网费缴纳 / 校园卡余额 |
| 🤖 AI 智能报告 | 周报/月报自动生成 / LangGraph 多 Agent 协作 / 数据洞察建议 |
| 💬 AI 对话助手 | Dify 知识库问答 / 后勤服务智能咨询 |
| 📊 数据驾驶舱 | ECharts 可视化 / 报修趋势 / 资产分布 / 能耗分析(仅管理员) |
| 🔔 消息中心 | WebSocket 实时推送 / 站内信 / 已读未读状态 |
| 📝 操作日志 | 全量操作留痕 / 敏感操作强制记录 |
| ⚙️ 系统配置 | 字典管理 / 参数配置 / 角色权限 RBAC |
| 层级 | 技术 | 说明 |
|---|---|---|
| 前端 | Vue 3 + Element Plus + Vite 8 | 组合式 API,Pinia 状态管理,响应式三档断点 |
| 后端 | Python 3.10+ / Flask 3.x | RESTful API,应用工厂模式 |
| ORM | Flask-SQLAlchemy 2.x | 数据库操作抽象,支持 SQLite / MySQL |
| 认证 | JWT + RBAC | 双 Token 方案(Access + Refresh),五角色权限模型 |
| 实时通信 | Flask-SocketIO | WebSocket 消息推送 + AI 报告进度 |
| AI / LLM | LangChain + LangGraph + 通义千问 | 多 Agent 流水线:采集→清洗→分析→可视化→报告 |
| 定时任务 | APScheduler | 每周一/每月1号自动生成 AI 报告 |
| 数据库 | SQLite(开发)/ MySQL 8.0(生产) | Flask-Migrate 管理表结构变更 |
| 图表 | ECharts 6 | 数据驾驶舱可视化 |
logistics_management_system/
├── server/ # Flask 后端
│ ├── app/
│ │ ├── models/ # 15 个模型文件,30+ 张数据表
│ │ ├── routes/ # 17 个蓝图,150+ API
│ │ ├── services/ # 业务逻辑层(报修/统计/AI)
│ │ ├── agents/ # LangGraph AI Agent(数据采集/清洗/分析/可视化/报告)
│ │ ├── graphs/ # LangGraph 状态图定义
│ │ ├── repositories/ # 数据访问层
│ │ ├── utils/ # 工具(JWT/权限/响应/上传/邮件)
│ │ └── schemas/ # 数据校验(Marshmallow)
│ ├── scripts/ # 种子数据 / 测试账号生成
│ ├── migrations/ # 数据库迁移文件
│ ├── tests/ # 测试用例
│ ├── requirements.txt
│ └── run.py
├── client/ # Vue 3 前端
│ ├── src/
│ │ ├── api/ # 18 个 API 请求模块
│ │ ├── views/ # 20+ 页面视图(按业务模块组织)
│ │ ├── router/ # 路由配置 + 角色权限守卫
│ │ ├── store/ # Pinia 状态管理(用户/应用)
│ │ ├── layout/ # 主布局(Header + Sidebar + Footer)
│ │ ├── components/ # 公共组件(DifyChat / FileUpload)
│ │ └── utils/ # 工具(Socket / 权限指令)
│ ├── public/ # 静态资源(Logo / 图标)
│ └── vite.config.js
├── docs/ # 项目文档
│ └── PPT讲解大纲.md
└── .env.example # 环境变量模板
| 角色 | 编码 | 核心权限 |
|---|---|---|
| 学生 | student |
报修、采购、场地预约、投诉、水电缴费 |
| 教师 | teacher |
同学生权限 |
| 维修工 | worker |
接单维修、工单反馈 |
| 后勤老师 | logistics |
工单调度、宿舍/资产/商铺管理 |
| 系统管理员 | admin |
全局管理 + 数据仪表盘 + AI 报告 + 用户管理 |
- Python 3.10+
- Node.js 18+
- MySQL 8.0(可选,默认使用 SQLite)
# GitHub(推荐)
git clone https://github.com/yellow-yz/logistics_management_system.git
# Gitee(国内镜像)
git clone git@gitee.com:huang-yanzhuo/logistics_management_system.git
cd logistics_management_systemcd server
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境 (Windows)
venv\Scripts\activate
# 激活虚拟环境 (Mac/Linux)
# source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
# 配置环境变量(复制示例文件,按需修改)
cp .env.example .env
# 初始化系统数据
python scripts/seed_data.py
# 启动后端(端口 5000)
python run.pycd client
# 安装依赖
npm install
# 启动开发服务器(端口 5173)
npm run dev打开浏览器访问 http://localhost:5173
运行
python scripts/seed_data.py初始化数据后可用
| 角色 | 用户名 | 密码 |
|---|---|---|
| 系统管理员 | admin |
admin123 |
| 后勤处老师 | hq001 |
123456 |
| 维修工 | wx001 |
123456 |
| 教师 | t20240001 |
123456 |
| 学生 | 2024000001 |
123456 |
登录页内置「测试账号」快速填充按钮,点击即可切换角色体验。
所有 API 在 /api 路径下:
| 前缀 | 模块 | 说明 |
|---|---|---|
/api/auth |
认证 | 登录/注册/邮箱验证/密码重置/Token 刷新 |
/api/repair |
报修 | 工单 CRUD、派单调度、状态流转、维修日志 |
/api/purchase |
采购 | 采购申请、两级审批(部门+后勤) |
/api/dormitory |
宿舍 | 楼栋/房间/入住退宿/卫生检查/能耗 |
/api/asset |
资产 | 固定资产台账、折旧、维修记录 |
/api/shop |
商铺 | 商铺台账、租赁、租金收缴 |
/api/venue |
场地 | 场馆管理、时段预约、审批 |
/api/announcement |
公告 | 富文本发布、定向推送、已读追踪 |
/api/complaint |
投诉 | 匿名/实名提交、分类处理、回复评价 |
/api/dashboard |
驾驶舱 | 多维度统计数据 |
/api/notification |
通知 | 站内信 + SocketIO 实时推送 |
/api/system |
系统 | 字典/配置/RBAC 权限管理 |
/api/log |
日志 | 操作日志查询与导出 |
/api/user |
用户 | 用户 CRUD、角色分配 |
/api/utility |
水电缴费 | 电表抄表、电费充值、网络套餐、网费缴纳 |
/api |
AI 报告 | AI 报告生成/列表/详情(ai_report_bp) |
/api |
AI 对话 | 智能对话接口(chat_bp) |
/api |
Dify | Dify 平台集成代理(dify_bp) |
feat(模块): 新增功能
fix(模块): 修复Bug
docs: 文档更新
refactor: 代码重构
test: 测试相关
chore: 构建/依赖更新
本项目为长安大学课程项目,仅供学习使用。