# 使用springboot的签到系统,内含外置部分中间件 **Repository Path**: anubis176783/sign_page ## Basic Information - **Project Name**: 使用springboot的签到系统,内含外置部分中间件 - **Description**: 签到系统 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: bs - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 1 - **Created**: 2019-06-25 - **Last Updated**: 2024-09-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 课堂在线签到系统——易签 --POWERED BY:INFORSECUR_LAB_NBUT ## 一、项目介绍 ### ● 系统组成: 1、微信小程序 2、Web 3、服务端 ### ● 功能要点: 1、系统适应各个大学的课堂签到需求;大学组织结构:学校-学院-系-专业-班级。(√) 2、系统通过管理员上传的Excel文件获取教师课程信息、学生选课信息。(√) 3、教师/管理员可以对课程的具体安排时间、具体选课学生进行调整。(√) 4、教师上课可提前5分钟点击开始签到。教师点击“开始签到”,根据教师开课信息,选择一节对应该教师的课程进行签到,签到过程持续5分钟。(√) 5、在签到时间内学生点击“签到”系统便可根据学生选课信息为学生签到。(√) 6、系统每10秒刷新一次有效二维码,学生使用小程序进行扫码签到。(√) 7、学生签到状态有三种:正常、迟到、请假、缺席。教师可以在第一次签到后再次开启签到功能并且可以选择是正常签到还是迟到签到。(√) 8、每堂课的状态有:签到完成、正在正常签到、正在迟到签到、未进行签到。(√) 9、教师可查看每次课程的签到情况并进行修改。 10、教师、管理员可将签到情况导出成Excel表格。 ## 二、软件架构 ### ● 分层架构: 1.表现层(presentation):用户界面,负责视觉和用户互动 2.业务层(business):实现业务逻辑 3.持久层(persistence):提供数据,SQL 语句就放在这一层 4.数据库(database) :保存数据 ## 三、数据库表结构设计 1.学校表(学校编号,校名,地址,邮编) 2.学院表(学院编号,学院名称,创建者,创建时间,学校编号,更新时间,更新者) 3.用户表(用户编号,学校编号,学号/工号,姓名,身份,open编号,创建时间(时间戳),位置,删除状态(0,1)) 4.专业表(专业编号,学院编号,创建者,创建时间,专业名称,更新时间,更新者) 5.班级表(班级编号,班级名称,创建者,创建时间,专业编号,更新时间,更新者) 5.课程表(课程编号,教师编号,管理员编号,学院名,专业名,课程名,第一周开始时间,学时,地点) 6.课程描述表(课程描述编号,课程编号,单双周标识,周几,课程开始时间,课程结束时间) 7.签到安排表(签到安排编号,课程编号,课程开始时间,课程结束时间,签到状态,删除状态) 8.学生选课表(选课编号,学生编号,课程编号,删除状态) 9.学生签到表(学生签到编号,学生编号,签到安排编号,学生签到状态) ## 四、备注 本项目是基于浏览器的BS应用,采用前后端模式,使用分层框架,使系统结构简单,容易理解和开发。 后台采用Springboot框架,前端使用BS+VUE的开发模式。 bs分支为后台组成果,web分支为前端组成果