背景
为学生提供便捷的课程选择方式,并帮助学校进行课程管理和资源调配;主要功能包括:课程展示,自主选课,取消选课,后台录入课程,统计每门课程报名情况,导出数据,用户管理,管理员管理等。
- 用户角色:查看课程详情(课程大纲、授课方式、考核方式、学分等信息)、在特定的时间窗口内开放选课,用户可以在规定时间内自由选课
- 管理员角色:发布选修课程信息,包括课程内容、时间安排、教学大纲
- 后台选课管理:按每门课程进行选课统计,支持名单数据导出Excel,打印
概要设计
技术运用
- 前端基于微信小程序平台进行开发
- 后端基于Java Springboot架构开发
- 数据库: MySQL (8.0+)
数据库设计
-- ----------------------------
-- Table structure for enlesson_enroll
-- ----------------------------
DROP TABLE IF EXISTS `enlesson_enroll`;
CREATE TABLE `enlesson_enroll` (`ENROLL_ID` int NOT NULL AUTO_INCREMENT,`ENROLL_TITLE` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,`ENROLL_VOUCH` int NOT NULL DEFAULT 0,`ENROLL_STATUS` int NOT NULL DEFAULT 0,`ENROLL_CATE_ID` int NOT NULL DEFAULT 0,`ENROLL_CATE_NAME` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,`ENROLL_MAX_CNT` int NOT NULL DEFAULT 0,`ENROLL_START` bigint NOT NULL,`ENROLL_END` bigint NOT NULL,`ENROLL_ORDER` int NOT NULL DEFAULT 9999,`ENROLL_VIEW_CNT` int NOT NULL,`ENROLL_JOIN_CNT` int NOT NULL DEFAULT 9,`ENROLL_FORMS` longtext CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,`ENROLL_OBJ` longtext CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,`ADD_TIME` bigint NULL DEFAULT 0,`EDIT_TIME` bigint NULL DEFAULT 0,PRIMARY KEY (`ENROLL_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Table structure for enlesson_enroll_join
-- ----------------------------
DROP TABLE IF EXISTS `enlesson_enroll_join`;
CREATE TABLE `enlesson_enroll_join` (`ENROLL_JOIN_ID` int NOT NULL AUTO_INCREMENT,`ENROLL_JOIN_ENROLL_ID` int NOT NULL DEFAULT 0,`ENROLL_JOIN_USER_ID` int NOT NULL DEFAULT 0,`ENROLL_JOIN_STATUS` int NOT NULL DEFAULT 0,`ADD_TIME` bigint NOT NULL DEFAULT 0,`EDIT_TIME` bigint NOT NULL DEFAULT 0,PRIMARY KEY (`ENROLL_JOIN_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1931 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Table structure for enlesson_fav
-- ----------------------------
DROP TABLE IF EXISTS `enlesson_fav`;
CREATE TABLE `enlesson_fav` (`FAV_ID` int NOT NULL AUTO_INCREMENT,`FAV_USER_ID` int NOT NULL DEFAULT 0,`FAV_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`FAV_TYPE` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`FAV_OID` int NOT NULL DEFAULT 0,`FAV_PATH` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`ADD_TIME` bigint NOT NULL DEFAULT 0,`EDIT_TIME` bigint NOT NULL DEFAULT 0,PRIMARY KEY (`FAV_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 29 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;-- ----------------------------
-- Table structure for enlesson_news
-- ----------------------------
DROP TABLE IF EXISTS `enlesson_news`;
CREATE TABLE `enlesson_news` (`NEWS_ID` int NOT NULL AUTO_INCREMENT,`NEWS_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`NEWS_CATE_ID` int NOT NULL DEFAULT 0,`NEWS_CATE_NAME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,`NEWS_STATUS` int NOT NULL DEFAULT 1,`NEWS_ORDER` int NOT NULL DEFAULT 9999,`NEWS_VOUCH` int NOT NULL DEFAULT 0,`NEWS_CONTENT` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,`NEWS_VIEW_CNT` int NOT NULL DEFAULT 0,`NEWS_PIC` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,`NEWS_OBJ` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,`NEWS_FORMS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,`ADD_TIME` bigint NOT NULL DEFAULT 0,`EDIT_TIME` bigint NOT NULL DEFAULT 0,PRIMARY KEY (`NEWS_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 68 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;-- ----------------------------
-- Table structure for enlesson_setup
-- ----------------------------
DROP TABLE IF EXISTS `enlesson_setup`;
CREATE TABLE `enlesson_setup` (`SETUP_ID` int NOT NULL AUTO_INCREMENT,`SETUP_TYPE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`SETUP_KEY` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`SETUP_VALUE` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`ADD_TIME` bigint NOT NULL DEFAULT 0,`EDIT_TIME` bigint NOT NULL DEFAULT 0,PRIMARY KEY (`SETUP_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;-- ----------------------------
-- Table structure for enlesson_user
-- ----------------------------
DROP TABLE IF EXISTS `enlesson_user`;
CREATE TABLE `enlesson_user` (`USER_ID` int NOT NULL AUTO_INCREMENT,`USER_NAME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`USER_ACCOUNT` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`USER_STATUS` int NOT NULL DEFAULT 1,`USER_PASSWORD` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,`USER_LOGIN_TIME` bigint NOT NULL DEFAULT 0,`USER_LOGIN_CNT` int NOT NULL DEFAULT 0,`USER_OBJ` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,`USER_FORMS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,`ADD_TIME` bigint NOT NULL DEFAULT 0,`EDIT_TIME` bigint NOT NULL DEFAULT 0,PRIMARY KEY (`USER_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1219 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;SET FOREIGN_KEY_CHECKS = 1;
UI设计
后台管理
git代码下载
点击下载