Skip to content

MyKCourse在线课程申请及审批系统,通过此系统,学生可以申请所需的课程,而教师可以审批这些申请。系统简化了课程管理和审批流程,提高了效率。

License

Notifications You must be signed in to change notification settings

DiamondMyK/MyKCourse

Repository files navigation

MyKCourse

项目名称: MyKCourse

项目描述: MyKCourse在线课程申请及审批系统,通过此系统,学生可以申请所需的课程,而教师可以审批这些申请。系统简化了课程管理和审批流程,提高了效率。

作者: DiamondMyK

项目链接: MyKCourse

Local Image

项目概述

MyKCourse在线课程申请及审批系统,旨在简化学生课程申请流程并提供教师审批功能。学生可以轻松登录系统,选择所需的课程并提交申请,同时可以跟踪申请的审批进度。教师拥有不同的角色,包括课程主讲教师和主管教师,他们负责审批学生的申请。系统还提供了额外的功能,包括用户管理、审批流程的自定义设置和审批记录查询。项目的设计考虑了兼容性、可用性和持续集成,以确保系统满足现有需求并具备未来发展的能力。这个系统将帮助学校或教育机构更有效地管理课程申请和审批流程,提高了学生和教师的体验。

功能

在线课程申请模块功能:

  1. 学生登录功能

    • 已有账号学生可以在线登录到申请系统中。
    • 用户账户数据可预先存储到数据库中.
  2. 在线申请功能

    • 学生登录后,在可选课程列表中,选择要申请的课程。
    • 每次申请只能选择一门课程,不可重复申请。
    • 申请课程时,应填写必要的申请信息,如申请原因和上传证明等。
    • 课程详细数据可预先存储到数据库中.
  3. 已申请课程,审批进度查询功能

    • 审批过程中的申请可以进行进度查询。
    • 审批状态有:申请已提交、课程主讲教师审批中、课程主管教师审批中、审批成功、申请驳回。
    • 审批结束后,学生可以点击确认,完成本次申请。
    • 结束本次申请后,在进度查询功能中不能再看到该条申请信息。
    • 被驳回的申请的课程可线下沟通后再次重新提交新的申请.
  4. 已申请课程审批记录查询功能

    • 学生可查询本人已申请的全部记录,包括审批通过和驳回的记录。
    • 申请记录可使用分页显示,可使用多条件查询.

在线审批模块功能:

  1. 课程申请审批功能

    • 已有教师角色账号的教师可登录审批功能.
    • 教师角色用户细分为:课程主讲教师和主管教师,主讲教师为该门课程的第一审批人,主管教师为第二审批人.
    • 具体课程的主讲和主管教师对应关系数据,可预先存储到数据库中.
    • 如果已提交的申请不符合申请条件,可以驳回,但驳回必须填写具体的原因,以便学生再次提交新的申请.
  2. 已审批申请查询功能

    • 教师可查询已审批的申请,查询结果可使用分页显示,可使用多条件查询.

额外功能:

  1. 系统后台

    • 系统用户管理、课申请课程管理、用户审批权限管理(课程与审批教师关系)、审批记录查询、导出已审批通过记录等功能.
  2. 创建审批流

    • 可根据具体要求,动态创建课程审批流程,可动态指定不同类别课程的审批步骤及审批人.

拓展需求:

  • 适应兼容性,系统应使用持久化层框架(MyBatis)。
  • 适应通用性,系统应采用MVC设计模式。
  • 适应持续集成,系统应采用容器部署(Docker)。
  • 适应可用性,系统界面需布局合理,用户使用方便快捷,用户体验好。
  • 适应健壮性,系统应充分考虑运行期间的各种异常情况并加以处理,保证运行时不出现异常或业务逻辑错误等重大问题。

亮点

  • MyBatis持久化框架:使用MyBatis来处理数据持久化,降低了代码的耦合性,提高了系统的兼容性和稳定性。MyBatis的轻量级特性和对多种数据库的支持使得系统更具灵活性。

  • Docker容器化部署:可采用Docker容器化技术,系统的部署和运维变得更加简单,同时支持持续集成。容器化部署可以提高开发效率,确保不同环境下的代码运行一致。

  • Layui前端框架:使用Layui作为前端框架,加速了前端开发流程,使得前端页面的设计更加高效,开发者能够更专注于业务逻辑的实现,而不必过多关注前端细节。

  • 自定义工具类:使用自定义工具类,如DBUtil、EncodingUtil、MD5Util和StatusEnum,提高了开发效率、代码复用性、可维护性。这些工具类解决了特定问题,使得开发过程更加便捷,同时保证系统的安全性和可读性。

安装

依赖项

在开始安装项目之前,请确保您的开发环境中已经安装了以下依赖项:

  • 集成开发工具(IDE):我们建议使用IntelliJ IDEA,但您也可以选择其他适用的IDE。
  • Java Development Kit (JDK):项目需要JDK,用于编译和运行Java代码。请安装JDK 1.8或更新的版本。
  • 数据库:需要安装MySQL,用于存储项目的数据。
  • 操作系统:支持Windows操作系统,或其他适用的操作系统。
  • Web服务器:使用Apache Tomcat作为Web服务器,用于部署和运行项目。

安装步骤

以下是安装项目的步骤:

  1. 下载项目代码:获取项目的源代码。您可以通过项目的版本控制系统(如Git)获取代码,或者下载项目的ZIP压缩文件。将项目代码解压到本地目录。

  2. 导入项目:在您的集成开发工具中导入项目。在使用IntelliJ IDEA的情况下,选择“File” -> “Open” -> 选择项目的根目录 -> 单击“OK”以打开项目。

  3. 配置数据库:在MySQL中创建一个新的数据库,并在项目的配置文件中指定数据库连接信息。通常,数据库连接信息位于项目的 src/main/resources/application.properties 文件中。确保在配置文件中提供正确的数据库URL、用户名和密码。

  4. 构建项目:使用IDE的内置Maven工具来构建项目的依赖。右键单击项目,选择“Maven” -> “Reload Project”以更新依赖。然后,单击“Build” -> “Build Project”以构建项目。

  5. 部署项目:将项目部署到Apache Tomcat中。在IntelliJ IDEA中,右键单击项目,选择“Run” -> “Edit Configurations”,然后单击“+”按钮创建一个新的Tomcat配置。配置Tomcat服务器路径,并在“Before launch”部分添加“Build”操作。保存配置后,单击“Run”以启动Tomcat服务器。

  6. 访问项目:一旦Tomcat服务器启动,您可以在Web浏览器中访问项目。默认情况下,项目应该可以通过 http://localhost:8080/your-artifact-id 访问,其中 your-artifact-id 是项目的Artifact ID。

示例

以下是一个示例的项目访问步骤:

  1. 在Web浏览器中输入 http://localhost:8080/course ,其中 course 是项目的Artifact ID。
  2. 项目的首页应该在浏览器中显示,您可以开始使用在线课程申请及审批系统。

请注意,实际项目的具体步骤可能会根据项目的结构和需求而有所不同。确保按照项目的文档和README文件来进行安装和配置。

使用

1. 登录系统

  1. 启动Tomcat服务器并确保项目已经部署。
  2. 在Web浏览器中输入 http://localhost:8080/course (具体URL可能因部署配置而异)以打开项目的首页。
  3. 在项目首页,您可以看到登录界面。请使用您的学生账号登录。如果尚未拥有账号,请联系管理员创建。

2. 提交课程申请

  1. 在成功登录后,您将被重定向到申请课程页面。选择您想要申请的课程,填写必要的申请信息,例如申请原因和上传证明。
  2. 单击“提交申请”按钮。您的申请将被记录在系统中,且您可以随时查询申请进度。

3. 查询申请进度

  1. 单击页面上的“查询进度”选项卡,您将看到您的申请历史记录。
  2. 这里您可以查看所有以前的申请,包括已批准和被驳回的。还可以使用筛选条件来查找特定的申请记录。

4. 教师审批申请

  1. 教师角色用户(课程主讲教师或主管教师)可登录审批功能。使用教师账号登录。
  2. 在审批页面,您将看到待审批的申请列表。选择要审批的申请,然后单击“审批通过”或“驳回”按钮。
  3. 如果选择驳回,必须提供具体的驳回原因以便学生修改并重新提交。

5. 查询已审批申请

  1. 教师可以单击页面上的“查询已审批”选项卡,以查看已经审批的申请记录。
  2. 这里您可以查看和过滤已经审批的申请。

6. 其他功能

项目还提供了以下其他功能:

  • 系统后台:管理员用户可以管理系统用户、课程和审批权限。
  • 创建审批流:动态创建课程审批流程,指定不同类别课程的审批步骤和审批人。

示例用法

以下是一些示例用法和命令:

  • 登录系统:打开浏览器,输入URL http://localhost:8080/course ,然后使用您的学生账号登录。
  • 提交申请:登录后,选择要申请的课程,填写申请信息,单击“提交申请”按钮。
  • 查询申请进度:单击“查询进度”选项卡,查看申请进度。
  • 审批申请:使用教师账号登录,选择待审批的申请,然后单击“审批通过”或“驳回”按钮。
  • 查询已审批申请:单击“查询已审批”选项卡,查看已审批的申请记录。

请根据项目的实际部署和配置以及您的角色执行上述操作。确保按照项目文档和管理员提供的具体信息进行操作。

项目注意事项

  • 请确保使用的浏览器支持项目的前端框架(如Layui)以获得最佳用户体验。
  • 如果遇到问题或需要进一步的帮助,请联系系统管理员或开发团队。

贡献

我们欢迎和鼓励开发者为项目做出贡献。如果您想参与贡献,可以遵循以下步骤:

  1. 克隆项目的代码仓库到您的本地开发环境。
  2. 创建一个新的分支以进行您的开发工作:git checkout -b 新分支名称
  3. 进行您的修改和开发工作。
  4. 提交您的更改:git commit -m "描述您的更改"
  5. 推送您的分支到项目的远程代码仓库:git push origin 新分支名称
  6. 提交 Pull Request:在项目的代码仓库中创建一个 Pull Request,描述您的更改和解释其目的。
  7. 等待审查和反馈:其他项目维护者将会审查您的 Pull Request,并可能提供反馈或建议。
  8. 合并您的更改:一旦您的 Pull Request 被审阅并通过,它将会被合并到主分支。

请阅读贡献文件CONTRIBUTING.md以获取更多信息。

请确保遵循项目的贡献准则和代码风格。感谢您的贡献!

许可证

MyK在线课程申请及审批系统是一款开源软件,使用的是位于LICENSE.md中的MIT许可证。请阅读许可证文件以获取更多信息。

联系方式

如果您有任何关于项目的问题或建议,请随时联系我们:

致谢

我们要特别感谢以下人员或组织对本项目的贡献和支持:

他们的工作和反馈对项目的改进和发展起到了重要作用。

About

MyKCourse在线课程申请及审批系统,通过此系统,学生可以申请所需的课程,而教师可以审批这些申请。系统简化了课程管理和审批流程,提高了效率。

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published