Skip to content

湖北民族大学 —— 教务系统

更新: 2025/3/20 11:11:44 字数: 0 字

1. 项目介绍

  为了解决新增的教学需求、完善学校的信息化教育,并减少教务负担,经过校方讨论决定,我校的教务系统需要进行全面升级,以确保能够高效、稳定地支持新的功能和服务。
  我校原有的教务系统能够解决大部分问题,但对于新增的问题尚未集成。因此,这次升级需要将学校的听课、导师制等功能模块一并集成到系统中。
  我校原有的教务系统是基于 struts2 框架和 Template 模板构建的。前端使用HTMLCSSJavaScript 来实现用户界面,并可能结合了一些前端框架(如 jQueryVue.js)来增强交互性和用户体验。后端基于Stuck2 框架,采用 java 进行服务器端开发,以处理业务逻辑、数据库交互等功能。基于市面上层出不穷的技术,我们的后端准备用 spring boot 框架来代替原有的 Stuck2 框架,而前端则使用易学易用、灵活性高、性能优越的 vue.js 框架来开发。
  于是乎,我们的开发方案就确定了,在保留原来 struck2 的业务逻辑的基础上,后端改成 springboot 框架。对于我们新增的业务,我们则在做一个新的 springboot 的后端,而这个后端对应的 web 就是我们新的前端。

新系统登录页面

教务老系统登录页面

老系统主页菜单有直接可以进入新系统的入口 在此我们也可以看到新系统当前上线了那些功能:

2. 项目架构

教务系统架构设计图.drawio

3. 所用技术

前端: vue3 + vue-router + pinia + element-plus + axios + sass
后端: springBoot + mybatis + sqlServer2008

4. 我的职责和任务

我的职责

  1. 负责前端项目的开发与进度规划, 以及前端项目的打包部署, 和前端的工程化控制,以及打包优化;
  2. 负责前端每个通用组件的封装, 比如:通用表格组件、文件上传组件、对话框组件等;
  3. 负责整个前端项目的 git 版本控制;
  4. 负责前端项目的 CI/CD 流程,并且进行测试;
  5. 我主要做的模块有: 审批流系统、听课管理、选课管理、导师制、通信模块;

5. 团队开发模式

  基于教务系统开发有不同的模块,比如实习实训,导师值,排课模块..., 因此我们小组每个人开发是分别分配不同的模块。但是最后的提交和审核需要我们进行统一的整理和提交, 因此,我们决定使用 git 进行版本控制,并使用 gitmerge 功能进行统一整理和提交。
  在开发的过程中我们没有前后端分离得到开发,而是一起进行开发,因此我及做了前端开发也做了后端的开发。

6. 模块介绍

审批流模块

  因为我们的项目中有很多关于审批的业务,比如:申请自主实习、在集中实习中申请请假、学生申请选导师... 这些我们决定将其综合起来,于是乎想到了审批系统模块。
  审批系统有 flowableActiviti
  Flowable 提供了更高的性能和更小的内存占用,支持更多的数据库类型,如 MySQLPostgreSQLOracle等。此外,Flowable还提供了更多的扩展点,使得用户能够更灵活地扩展和定制工作流引擎的功能。Flowable支持 BPMN 2.0CMMN 1.1标准,是一个更加高级、性能更高、扩展性更好的工作流引擎。
主要业务流程:
  管理员定义一个审批的流程将其发布出去。
  这个定义流程必须要绑定一个表单,当表单提交后会被触发。
  开发者可以通过某个手段启动这个流程,并且审批参数带进去。
  用户填写好表单后任务会进入审批系统,其他操作都在审批系统中完成。

听课模块

需求分析
txt
5.3听课管理 
根据教学安排情况,实现教师、校级督导员、学院专家、校领导、中层领导等听课管理,听课结果录入与相关信息查看等需在移动端同步实现。
5.3.1 教师
(1)教师听课
教师选定课程教学班进行听课并将听课结果在移动端或电脑端录入系统。
(2)查看信息
查看自己听课的信息,生成听课记录打印表。
查看其他人员对本人的听课评价信息、其他反馈信息等。
5.3.2 学院专家
(1)专家听课
专家选定课程教学班进行听课,并将听课结果在移动端或电脑端录入系统,生成听课记录打印表。
(2)查看信息
查看自己听课的信息,根据选定范围、时间生成统计表,可查看和导出。
5.3.3校级督导员
(1)督导员听课
督导员选定课程教学班进行个人听课、督导小组共同听课,并将听课结果在移动端或电脑端录入系统,生成听课记录打印表,听课结果推送到被听教师。
(2)查看信息
查看已听课的相关信息,根据范围、时间段导出统计报表。
系统自动生成小组成员听课评分总评情况,根据选定范围、时间生成统计表,供小组成员查看导出。
5.3.4领导
(1)领导听课
领导选定课程教学班进行听课并将听课结果在移动端或电脑端录入系统,生成听课记录打印表。
(2)查看信息
查看已听课的信息,根据选定范围、时间生成统计表。
5.3.5学院管理员
(1)人员管理
分学期维护本单位院级领导名单。
分学期维护本单位专家名单。
(2)查看信息
根据选定的范围、时间,查看本单位听课情况,导出听课情况统计表。
5.3.6学校管理员
(1)人员管理
分学期维护校级督导名单。
分学期维护校领导名单、非教学单位中层领导干部名单。
(2)查看信息
根据选定的范围、时间,查看全校听课情况,导出听课情况统计表。
查看反馈给教学单位事项的进展情况等。
5.4 教学质量信息管理
根据教学及组织情况,实现教学信息收集、反馈及改进情况流程管理,专项抽查、问题反馈与改进结果报告全过程管理。
5.4.1学生教学信息员
学生教学信息员分阶段提交所收集的教学信息,查看提交的教学信息、学校反馈信息等。
5.4.2学院管理员
(1)信息管理
接收相关信息,提出处理措施。
反馈相关事项处理情况。
(2)查看信息
根据选定的范围、时间,查看本单位信息情况。
5.4.3校级督导员
(1)督导员听课
督导员选定课程教学班进行个人听课、督导小组共同听课,并将听课结果在移动端或电脑端录入系统,生成听课记录打印表。
(2)专项检查
根据学校设置的专项检查,将各教学单位检查结果录入系统。
(3)查看信息
查看已听课的相关信息,根据范围、时间段导出统计报表。
系统自动生成小组成员听课评分总评情况,根据选定范围、时间生成统计表,供小组成员查看导出。
查看反馈给教学单位事项的进展情况等。
5.4.4领导
(1)领导听课
领导选定课程教学班进行听课并将听课结果在移动端或电脑端录入系统,生成听课记录打印表。
(2)查看信息
查看已听课的信息,根据选定范围、时间生成统计表。
5.4.5学校管理员
(1)人员管理
维护学院管理员名单。
分学期维护校级督导名单。
分学期维护校领导名单、非教学单位中层领导干部名单。
(2)专项检查管理
设置专项检查项目。
(3)信息反馈管理
根据学生教学信息员提交需改进问题、巡查巡视发现的问题,给教学单位编制的反馈信息。
(4)查看信息
根据选定的范围、时间,查看全校听课情况,导出听课情况统计表。
查看反馈给教学单位事项的进展情况等。
  解决了教师线下听课填写听课表格很繁琐的问题,将线下添加听课表单改为在线填写,同时开发移动端方便教师随时填写。

选课模块

  解决了我校的专业方向选课问题,提高了选课效率,同时提升选课的公平和便捷性。

导师制模块

  解决了导师制选导师问题,提高选导师效率,同时提升选导师的公平和便捷性。同时导师可以给学生布置对应的任务,学生完成任务后, 可以提交对应的报告,系统自动给导师打分,并给出对应的反馈。

通信平台模块

  使用 mina / netty 搭建的通信平台,实现不同服务器之间的通信,可以自定义编解码器实现加密通信。

道友再会.