Skip to content

GitdddCore/Behavior-Score-Management-System

Repository files navigation

操行分管理系统 (BSMS)

English Version: Click Here

项目简介

操行分管理系统(Behavior Score Management System)是可为教师提供便捷的操行分管理的Web程序。

它可以做什么?

  • 对学生:
    • 查看本班级排名
    • 查看操行分详细记录
    • 对不合理的操行分记录进行申诉

  • 对班级管理员(班委):
    • 可对本班级所有学生的操行分进行修改(操作留痕)
    • 可查看本班级的所有学生的操行分记录(不可删除)

  • 对系统管理员(一般是班主任):
    • 数据统计记录页(仪表板)
    • 学生管理:包括增删查改学生信息、学期重置,批量修改/添加
    • 班级管理员管理:允许从本班级学生群体中选出班级管理员
    • 规则管理:可设置本班级的操行分规则
    • 操行分管理:可删除操行分记录,可对本班级所有学生的操行分进行修改(操作留痕)
    • 申诉管理:可对学生提出的申诉进行审核
    • 数据导出:可快捷导出操行记录、学生分数、申诉信息为EXCEL文件

项目截图:

IMAGE-INDEX IMAGE-RANK IMAGE-PROFILE IMAGE-COMMITTEE IMAGE-ADMIN

如何部署

系统环境:

  • PHP 版本:7.4 或更高版本
  • 数据库版本:MySQL 5.7 或更高版本
  • Web 服务器:Apache 或 Nginx

安装步骤:

  1. 下载项目已发布的最新发行版压缩包
  2. 解压压缩包到您的Web服务器的根目录下
  3. 运行 "0 - System Templates/Password Hash Tools.exe" 以将您的管理员密码哈希加密
  4. 复制密码的哈希值,将其替换 "0 - System Templates/SQL Template.sql" 内的默认管理员账户密码列。
  5. 导入数据库模板文件 "0 - System Templates/SQL Template.sql" 到您的MySQL数据库中
  6. 配置 "config/config.json" ,填写MySQL数据库连接信息、Redis数据库连接信息、班级名称、教师名称、默认分数。
  7. 运行 composer install 命令以下载并安装composer.json内的依赖文件
  8. 运行服务
  9. 完成

注意事项

  1. 请确保Redis数据库保留 0, 1, 2 数据库,若因特殊原因不能使用,请配置 "config/config.json" 内的Redis数据库连接信息
      "databases": {
        "0": "session",             // 记住我功能
        "1": "login_security",      // 登录次数记录功能
        "2": "cache"                // 缓存功能

        // 请修改"0", "1", "2"数据库编号为可用数据库!
      }
  1. 本项目默认初始操行分是100分,若需要修改,请配置 "config/config.json"initial_score 值,分数段:0~100

快速开始

恭喜您已安装成功!请观看此段以快速了解如何使用此系统

如何配置学生、班级管理员、规则等功能?

操作均需要登录管理员账户操作!请使用管理员账户(刚安装的系统默认为admin,若您修改了SQL模板内的默认管理员用户名,请使用您修改后的用户名)登录系统!

配置学生:

关于单次添加
  1. 点击导航栏的 学生管理
  2. 点击添加学生
  3. 填写学生信息,点击保存
  4. 完成
关于批量添加
  1. 点击导航栏的 学生管理
  2. 点击批量添加
  3. 选择文本输入 或 文件上传
  • 输入格式为:姓名 学号 操行分 学生状态(可选) 申诉权限(可选),中间用空格隔开,学生状态和申诉权限开启为1,关闭为0,默认为开启
  1. 填写学生信息,点击批量添加
  2. 完成

学生状态设置:

学生状态仅针对学生暂时停学等情况,禁用学生后,学生的班级管理员身份将停用,也不再允许该学生的操行分被修改,但依然可查看当前排名与使用申诉功能等;申诉权限则针对学生恶意申诉,禁用后学生将不允许申诉

  1. 点击导航栏的 学生管理
  2. 对目标血行点击 编辑 按钮
  3. 修改学生信息,点击保存
  4. 完成

配置班级管理员:

  1. 点击导航栏的 班级管理员管理
  2. 点击添加班级管理员
  3. 选择学生(仅支持已添加的学生),选择职位,填写任职时间,填写班级管理员的登录密码(可选,默认为123456),点击保存
  4. 完成

注:若忘了密码可点击班级管理员管理内的编辑按钮重置密码


配置规则:

关于单次添加:
  1. 点击导航栏的 规则管理
  2. 点击添加规则
  3. 填写规则名称,填写规则内容,点击保存
  4. 完成
关于批量添加:
  1. 点击导航栏的 规则管理
  2. 点击批量添加
  3. 选择文本输入 或 文件上传
  • 输入格式为:规则名称 规则描述 分值 类型(reward/penalty) 中间用空格隔开,类型为reward时不允许填写负分,为penalty时不允许填写正分
  1. 填写规则信息,点击批量添加
  2. 完成

执行以上操作后,系统将可正常使用,恭喜你!

常见问题

Q1:班级管理员如何登录?

解决方法:班级管理员登录时,用户名填写班级管理员的学号,密码填写班级管理员设置的登录密码(默认为123456)

Q2:管理员如何修改密码?

解决方法:若管理员忘记密码,则需要通过编辑数据库来重置密码,系统暂不提供UI重置功能,请使用Password Hash Tools.exe来生成新的哈希值存入数据库

Q3:导出时导出了一个json文件?

解决方法:可能是依赖文件缺失导致的,需要重新运行 composer install 命令以下载并安装composer.json内的依赖文件

(等待issue以继续编写...)

更新日志

1.1.1 更新

  • 优化了导出功能

1.1.0 更新

  • 现在被禁用的学生将不再支持被搜索、计入排名、访问个人页,操行分记录也会被隐藏
  • 移除profile.php的平均分数变化功能
  • 调整表单显示效果
  • 修复了操行分提交修改后,选中计数器不会清零的BUG
  • 更新了申诉管理页面的显示效果
  • 修复了操行分记录的操作后分数计算会被已失效的记录影响的BUG

1.0.0 更新

  • 初始版本发布

声明

本项目采用 MIT 协议开源,允许任何人自由使用、修改和分发本软件

免责声明

本软件按"原样"提供,不提供任何形式的明示或暗示保证,包括但不限于对适销性、特定用途适用性和非侵权性的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论是在合同诉讼、侵权行为还是其他方面,由软件或软件的使用或其他交易引起、由此产生或与之相关。

贡献说明

我们欢迎任何形式的贡献!若您发现项目内出现BUG或有改进建议,请向我们提出issue或提交 Pull Request。感谢您对本项目的关注和支持!

About

一个基于Web的操行分管理系统 | A web-based behavior score manager system

Topics

Resources

License

Stars

Watchers

Forks