Skip to content

jyjzbk/gczbgl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

中小学实验教学管理平台 (GCZBGL)

完整实现五级组织架构管理和权限控制系统,新增智能实验预约系统

📋 项目概述

实验教学管理平台是一个面向中小学的实验教学管理系统,已实现完整的五级组织架构(省→市→区县→学区→学校)和基于组织层级的权限控制系统。本项目采用前后端分离架构,提供完整的组织管理、用户管理、实验管理和设备管理功能。

🆕 v4.4 设备管理功能完善:修复设备借用状态显示与审批功能,完善权限控制系统,提升用户体验。

🎯 项目特色

  • 完整的组织架构:实现真实的教育系统五级组织结构
  • 精确的权限控制:基于组织层级的递归权限计算
  • 自动化权限过滤:中间件自动应用数据权限
  • 完整的业务闭环:从实验管理到设备管理的完整流程
  • 🆕 智能预约系统:智能冲突检测、自动器材配置、课表可视化
  • 🆕 作品管理系统:多媒体文件上传、质量评分、精选展示

✨ 已完成功能

🏢 组织架构管理

  • 五级组织结构 - 省→市→区县→学区→学校完整层级
  • 权限控制系统 - 基于组织层级的数据权限控制
  • 向下管理机制 - 高级组织可管理所有下级组织数据

🔐 用户管理模块

  • 用户列表管理 - 用户CRUD操作、角色分配、状态管理
  • 角色管理 - 系统角色、权限统计、角色编辑
  • 权限管理 - 树形权限配置、实时保存、权限同步
  • 组织归属 - 用户组织归属管理

🆕 智能实验预约系统

  • 智能预约创建 - 自动填充实验信息、器材清单、冲突检测
  • 课表可视化界面 - 周/月视图、颜色编码、交互操作
  • 设备借用关联 - 预约确认后自动生成借用记录
  • 个人实验档案 - 完整统计、趋势分析、数据导出
  • 实验作品管理 - 多媒体上传、质量评分、精选展示
  • 批量预约管理 - 备课组长统一预约、审核流程

🛠️ 技术栈

前端

  • Vue 3.4+ + TypeScript
  • Element Plus - UI组件库
  • Vue Router - 路由管理
  • Pinia - 状态管理
  • Axios - HTTP客户端
  • Vite - 构建工具
  • ESLint + Prettier - 代码规范

后端

  • Laravel 12 - PHP 8.2框架
  • MySQL 8.0 / MariaDB 10.4 - 数据库
  • JWT - 身份认证
  • RESTful API - 25个接口
  • RBAC + 组织层级权限 - 权限控制

🚀 快速开始

环境要求

  • Node.js 18+
  • PHP 8.2+
  • MySQL 8.0+
  • Composer 2.0+

安装步骤

  1. 克隆项目
git clone https://github.com/your-username/gczbgl.git
cd gczbgl
  1. 后端设置
cd backend
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate --seed
php artisan serve
  1. 前端设置
cd frontend
npm install
npm run dev
  1. 访问应用

🧪 测试账号

用户名 密码 角色 组织 权限范围
province_admin_test password 省级管理员 河北省教育厅 全省数据
city_admin_test password 市级管理员 石家庄市教育局 本市及下级
county_admin_test password 区县管理员 藁城区 本区县及下级
district_admin_test password 学区管理员 廉州学区 本学区学校
school_admin_test password 学校管理员 廉州东城小学 本校数据

🔍 权限测试

运行权限测试脚本

cd backend
# 测试组织权限控制
php test_organization_permissions.php
# 测试API权限控制
php test_organization_api.php

预期测试结果

  • ✅ 省级管理员:可访问15所学校,20台设备
  • ✅ 市级管理员:可访问11所学校,15台设备
  • ✅ 区县管理员:可访问7所学校,10台设备
  • ✅ 学区管理员:可访问4所学校,5台设备
  • ✅ 学校管理员:可访问1所学校,5台设备

📁 项目结构

gczbgl/
├── frontend/                 # Vue 3 前端项目
│   ├── src/
│   │   ├── views/user/      # 用户管理页面
│   │   ├── api/             # API接口
│   │   ├── components/      # 公共组件
│   │   └── router/          # 路由配置
│   └── package.json
├── backend/                  # Laravel 后端项目
│   ├── app/
│   │   ├── Http/Controllers/Api/  # API控制器
│   │   ├── Models/          # 数据模型
│   │   └── Middleware/      # 中间件
│   ├── database/
│   │   ├── migrations/      # 数据库迁移
│   │   └── seeders/         # 数据填充
│   └── routes/api.php       # API路由
├── docs/                     # 项目文档
└── README.md

🎯 功能特性

用户管理

  • ✅ 用户增删改查
  • ✅ 角色分配与权限控制
  • ✅ 用户状态管理
  • ✅ 搜索与筛选
  • ✅ 分页显示

角色管理

  • ✅ 12种系统角色
  • ✅ 角色权限统计
  • ✅ 角色信息编辑
  • ✅ 权限配置跳转

权限管理

  • ✅ 树形权限展示
  • ✅ 角色权限配置
  • ✅ 实时保存与同步
  • ✅ 默认权限模板

📊 系统角色

角色 级别 权限范围
省级管理员 1 全省数据管理
省级教研员 1 全省教研指导
市级管理员 2 本市数据管理
市级教研员 2 本市教研指导
区县管理员 3 本区县数据管理
区县教研员 3 本区县教研指导
学区管理员 4 学区数据管理
校长 5 本校全部数据
教务主任 5 教学管理
实验员 5 实验室管理
任课教师 5 实验教学
学生 5 基础查看

📖 文档

系统设计文档

🆕 智能预约系统文档

📋 开发规划文档

项目管理文档

🔄 开发进度

  • 用户管理模块 (已完成)
    • 用户列表管理
    • 角色管理
    • 权限管理
  • 🆕 智能实验预约系统 (v3.0 新增)
    • 智能预约创建与冲突检测
    • 课表可视化界面
    • 设备借用自动关联
    • 个人实验档案管理
    • 实验作品上传管理
    • 批量预约与审核流程
  • 实验管理模块 (已完成)
  • 设备管理模块 (已完成)
  • 统计报表模块 (已完成)
  • 移动端应用 (计划中)

🤝 贡献指南

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情

📞 联系方式


开发状态:智能实验预约系统开发完成 ✅ (v3.0) 最后更新:2025-07-19 新增功能:智能预约、课表可视化、作品管理、个人档案

About

中小学实验教学管理平台 - 用户管理模块

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published