【原创唯一】基于微信小程序+AI大模型+uni-app的高校新生迎新报到小程序
摘要:本文设计并实现了高校迎新报到小程序。系统面向管理员、志愿者、新生,覆盖社团信息维护、成员与活动管理、经费申请与财务审批、公告发布及数据统计等业务模块,采用Spring Boot 框架、MyBatis 持久层、uni-app、JWT 身份认证、MySQL 数据库、Vue 前端技术等技术完成前后端分离实现,包含约15张数据表与18组业务接口。需求分析明确多角色权限边界与核心流程;系统设计给出总体架构、数据库表结构与REST接口;并对活跃度评分、AI活动策划、经费多级审批、活动报名名额控制等重点功能给出实现说明。通过功能与流程测试验证主要业务可闭环运行,能够支撑高校社团日常管理与经费审批演示需求。需求分析明确管理员、志愿者、新生的权限边界与核心业务流程;系统设计给出总体架构、数据库表结构与REST接口划分;并对系统重点业务模块的实现思路进行说明。经功能与流程测试验证,主要业务可闭环运行,能够支撑高校迎新报到管理系统的演示与应用需求,为同类信息化系统建设提供参考。
技术栈: Spring Boot3+uni-app+Vue3+uViewPlus+Vite+MybatsiPlus+AI大模型+微信小程序
数据库表:15张
创新点:报到流程可视化与自助确认、绿色通道在线申请与审核联动、宿舍在线选择与室友信息展示、AI大模型迎新智能问答辅助报到
演示视频
基于小程序+AI大模型的高校新生迎新报到小程序
🍅文末获取联系🍅
🍅文末获取联系🍅
作者介绍:专注计算机编程,个人开发,坚持原创,非工作室,源码全网唯一。
✅技术主流:SpringBoot+Vue+uni-app前后端分离,MySQL,AI大模型,可本地运行
✅配套资料:源码 + 数据库 + 实验报告/论文 + 答辩 PPT+部署演示+远程调试+问题解答
技术范围:SpringBoot、Vue、数据可视化、小程序、HLMT、Nodejs、uni-app、MySQL数据库、ElementUi等设计与开发。
适用范围:软件工程、软件技术、计算机科学与技术、大数据、云计算、JavaWeb开发、JavaEE、Java、Web应用开发、动态网页设计、小程序的毕设参考
开发文档:创新点说明、功能需求分析、数据库表结构设计、后端接口设计、创新点代码分析
功能展示
小程序
志愿者
管理员
数据库及架构
系统数据库设计为:
数据库设计:
/* Navicat Premium Data Transfer Source Server : 1 Source Server Type : MySQL Source Server Version : 50722 Source Host : localhost:3306 Source Schema : 1vuez_orientation_system Target Server Type : MySQL Target Server Version : 50722 File Encoding : 65001 Date: 17/08/2026 20:46:42 */ SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for admins -- ---------------------------- DROP TABLE IF EXISTS `admins`; CREATE TABLE `admins` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '账号', `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '密码', `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名', `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号', `enabled` tinyint(4) NULL DEFAULT 1 COMMENT '是否启用:0禁用/1启用', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `username`(`username`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '管理员' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for batches -- ---------------------------- DROP TABLE IF EXISTS `batches`; CREATE TABLE `batches` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '批次名称', `year` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '学年', `start_date` date NULL DEFAULT NULL COMMENT '开始日期', `end_date` date NULL DEFAULT NULL COMMENT '结束日期', `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态:0关闭/1开放', `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '说明', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '迎新批次' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for consults -- ---------------------------- DROP TABLE IF EXISTS `consults`; CREATE TABLE `consults` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `freshman_id` bigint(20) NOT NULL COMMENT '新生', `volunteer_id` bigint(20) NULL DEFAULT NULL COMMENT '志愿者', `question` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '咨询问题', `answer` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '回复内容', `status` tinyint(4) NULL DEFAULT 0 COMMENT '状态:0待回复/1已回复/2已上报', `report_remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '上报说明', `created_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '咨询时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '在线咨询' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for dorm_buildings -- ---------------------------- DROP TABLE IF EXISTS `dorm_buildings`; CREATE TABLE `dorm_buildings` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '楼栋名称', `gender_type` tinyint(4) NULL DEFAULT NULL COMMENT '性别限制:0女/1男', `floors` int(11) NULL DEFAULT NULL COMMENT '楼层数', `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '说明', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '宿舍楼' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for dorm_rooms -- ---------------------------- DROP TABLE IF EXISTS `dorm_rooms`; CREATE TABLE `dorm_rooms` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `building_id` bigint(20) NOT NULL COMMENT '所属楼栋', `room_no` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '房间号', `capacity` int(11) NULL DEFAULT 4 COMMENT '床位数', `occupied` int(11) NULL DEFAULT 0 COMMENT '已入住', `gender_type` tinyint(4) NULL DEFAULT NULL COMMENT '性别限制:0女/1男', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '宿舍房间' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for freshmen -- ---------------------------- DROP TABLE IF EXISTS `freshmen`; CREATE TABLE `freshmen` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '账号', `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '密码', `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名', `student_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '学号', `gender` tinyint(4) NULL DEFAULT NULL COMMENT '性别:0女/1男', `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号', `id_card` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '身份证号', `college` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '学院', `major` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '专业', `avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '头像', `batch_id` bigint(20) NULL DEFAULT NULL COMMENT '迎新批次', `dorm_room_id` bigint(20) NULL DEFAULT NULL COMMENT '宿舍房间', `report_status` tinyint(4) NULL DEFAULT 0 COMMENT '报到状态:0未开始/1进行中/2已完成', `enabled` tinyint(4) NULL DEFAULT 1 COMMENT '是否启用:0禁用/1启用', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `username`(`username`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '新生' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for green_channels -- ---------------------------- DROP TABLE IF EXISTS `green_channels`; CREATE TABLE `green_channels` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `freshman_id` bigint(20) NOT NULL COMMENT '新生', `reason` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '申请原因', `material_images` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '证明材料', `status` tinyint(4) NULL DEFAULT 0 COMMENT '状态:0待审核/1通过/2驳回', `review_remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '审核备注', `created_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '申请时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '绿色通道' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for messages -- ---------------------------- DROP TABLE IF EXISTS `messages`; CREATE TABLE `messages` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `sender_id` bigint(20) NULL DEFAULT NULL COMMENT '发送人', `receiver_id` bigint(20) NOT NULL COMMENT '接收人', `receiver_role` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '接收人角色:FRESHMAN/VOLUNTEER/ADMIN', `title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题', `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '内容', `read_flag` tinyint(4) NULL DEFAULT 0 COMMENT '是否已读:0未读/1已读', `ref_type` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '关联类型', `ref_id` bigint(20) NULL DEFAULT NULL COMMENT '关联对象', `created_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '发送时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统消息' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for notices -- ---------------------------- DROP TABLE IF EXISTS `notices`; CREATE TABLE `notices` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标题', `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '内容', `status` tinyint(4) NULL DEFAULT 1 COMMENT '状态:0草稿/1已发布', `created_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '发布时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '迎新公告' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for payment_rules -- ---------------------------- DROP TABLE IF EXISTS `payment_rules`; CREATE TABLE `payment_rules` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `batch_id` bigint(20) NOT NULL COMMENT '所属批次', `item_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '缴费项目', `amount` decimal(10, 2) NOT NULL COMMENT '金额', `sort_order` int(11) NULL DEFAULT 0 COMMENT '排序', `required_flag` tinyint(4) NULL DEFAULT 1 COMMENT '是否必缴:0否/1是', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '缴费规则' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for payments -- ---------------------------- DROP TABLE IF EXISTS `payments`; CREATE TABLE `payments` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `freshman_id` bigint(20) NOT NULL COMMENT '新生', `rule_id` bigint(20) NULL DEFAULT NULL COMMENT '缴费规则', `item_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '缴费项目', `amount` decimal(10, 2) NOT NULL COMMENT '金额', `status` tinyint(4) NULL DEFAULT 0 COMMENT '状态:0未缴/1已缴', `paid_at` datetime NULL DEFAULT NULL COMMENT '缴费时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 16 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '缴费记录' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for registration_progress -- ---------------------------- DROP TABLE IF EXISTS `registration_progress`; CREATE TABLE `registration_progress` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `freshman_id` bigint(20) NOT NULL COMMENT '新生', `step_id` bigint(20) NOT NULL COMMENT '报到环节', `status` tinyint(4) NULL DEFAULT 0 COMMENT '状态:0未开始/2已完成', `operator_id` bigint(20) NULL DEFAULT NULL COMMENT '操作人', `operator_role` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作角色:FRESHMAN/VOLUNTEER/ADMIN', `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注', `completed_at` datetime NULL DEFAULT NULL COMMENT '完成时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 26 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '报到进度' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for registration_steps -- ---------------------------- DROP TABLE IF EXISTS `registration_steps`; CREATE TABLE `registration_steps` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `batch_id` bigint(20) NOT NULL COMMENT '所属批次', `step_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '环节名称', `step_order` int(11) NULL DEFAULT 0 COMMENT '排序', `location` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '办理地点', `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '说明', `required_flag` tinyint(4) NULL DEFAULT 1 COMMENT '是否必办:0否/1是', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '报到环节' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for volunteer_assigns -- ---------------------------- DROP TABLE IF EXISTS `volunteer_assigns`; CREATE TABLE `volunteer_assigns` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `volunteer_id` bigint(20) NOT NULL COMMENT '志愿者', `batch_id` bigint(20) NOT NULL COMMENT '迎新批次', `station_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '岗位名称', `location` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '岗位地点', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '志愿者分配' ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Table structure for volunteers -- ---------------------------- DROP TABLE IF EXISTS `volunteers`; CREATE TABLE `volunteers` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '账号', `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '密码', `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名', `student_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '学号', `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号', `avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '头像', `batch_id` bigint(20) NULL DEFAULT NULL COMMENT '负责批次', `enabled` tinyint(4) NULL DEFAULT 1 COMMENT '是否启用:0禁用/1启用', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `username`(`username`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '迎新志愿者' ROW_FORMAT = DYNAMIC; SET FOREIGN_KEY_CHECKS = 1;擅长:功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路等。
获取联系
项目功能完整,可在本地运行,并可远程调试,确保运行顺利!
👇🏻👇🏻获取联系方式👇🏻👇🏻
毕业设计获取
https://blog.csdn.net/qq_59059632/article/details/163759879?spm=1011.2415.3001.5331
