ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

【原创唯一】基于微信小程序+uni-app+AI大模型的实验室预约小程序

【原创唯一】基于微信小程序+uni-app+AI大模型的实验室预约小程序 摘要本项目设计并实现了高校实验室预约小程序。系统面向管理员与学生两类角色覆盖实验室与分类管理、设备与维护管理、预约规则与预约审核、签到签退与使用记录、设备借用审批、违规与信用分、公告消息以及智能实验室与设备推荐等业务模块。技术上采用 Spring Boot、MyBatis-Plus、JWT、MySQL、Vue 3、Element Plus、ECharts、Vite 与 uni-app 小程序实现前后端分离与移动端访问。系统通过预约时段冲突检测保障实验室有序使用通过预约流程表完整记录提交、审批、签到、签退与爽约节点通过信用分与封禁阈值约束爽约和违规行为并通过大模型接口根据实验需求推荐本院实验室与设备。全文从研究背景与意义、相关技术、需求分析、总体与数据库设计、接口设计、创新点实现及系统测试等方面进行阐述形成可运行、可演示的毕设级业务闭环。在实现上管理端侧重资源与审核配置学生端侧重办理与查询小程序复用同一套后端接口便于移动场景下的预约与借用。通过对关键页面删除、流程中文化与借用实验室字段补全等细节完善提高了系统可用性与文档描述的一致性。技术栈 Spring Boot3uni-appVue3uViewPlusViteMybatsiPlusEcharts微信小程序数据库表15张创新点预约时段冲突自动检测与流程追溯、AI大模型智能实验室与设备推荐、学生信用分与低分封号联动演示视频基于微信小程序uni-appAI大模型的实验室预约小程序文末获取联系文末获取联系作者介绍专注计算机编程个人开发坚持原创非工作室源码全网唯一。✅技术主流SpringBootVueuni-app前后端分离MySQLEcharts可本地运行✅配套资料源码 数据库 实验报告/论文 答辩 PPT部署演示远程调试问题解答技术范围SpringBoot、Vue、数据可视化、小程序、HLMT、Nodejs、uni-app、MySQL数据库、ElementUi等设计与开发。适用范围软件工程、软件技术、计算机科学与技术、大数据、云计算、JavaWeb开发、JavaEE、Java、Web应用开发、动态网页设计、小程序的毕设参考开发文档创新点说明、功能需求分析、数据库表结构设计、后端接口设计、创新点代码分析功能展示小程序序号菜单名称功能描述1首页浏览系统入口、公告摘要与快捷服务。2实验室浏览开放实验室并进入详情发起预约。3智能推荐输入实验需求获取智能实验室与设备推荐。4公告通知查看已发布的公告通知。5预约申请选择实验室与时段提交预约申请。6我的预约查看个人预约、取消或删除终态记录并追溯流程。7签到签退对已通过预约进行签到签退。8设备借用查看个人设备借用记录并归还设备。9申请借用以卡片方式选择可借设备并提交借用申请。10个人使用记录查看个人实验室使用时长记录。11违规记录查看个人违规与信用扣分明细。12系统消息接收预约、借用、封禁等系统消息。后台序号菜单名称功能描述1数据统计汇总实验室、预约、借用、违规等核心指标支撑管理决策。2实验室分类维护实验室分类名称、排序与启用状态。3实验室管理管理实验室基本信息、开放时段、容量与启用状态。4设备管理维护设备所属实验室、型号编号与运行状态。5设备维护登记设备维护计划或故障报修并跟踪完成情况。6耗材库存管理实验耗材库存数量与预警阈值。7预约规则配置单日预约上限、提前天数、爽约扣分与信用分封禁阈值。8预约管理审核学生实验室预约查看流程追溯并处理相关记录。9借用管理审批设备借用申请、确认归还并维护借用台账。10使用记录查询学生签到签退与实际使用时长记录。11违规管理登记违规类型与信用扣分联动学生信用分。12公告管理发布与管理面向学生的公告通知。13学生管理维护学生账号、信用分支持封号与解封。14管理员账号维护后台管理员账号与启用状态。数据库及架构系统数据库设计为数据库设计/* Navicat Premium Data Transfer Source Server : 1 Source Server Type : MySQL Source Server Version : 50722 Source Host : localhost:3306 Source Schema : 1vuez_lab_system Target Server Type : MySQL Target Server Version : 50722 File Encoding : 65001 Date: 15/08/2026 23:22:54 */ 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 是否启用, 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 borrows -- ---------------------------- DROP TABLE IF EXISTS borrows; CREATE TABLE borrows ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, device_id bigint(20) NOT NULL COMMENT 设备, student_id bigint(20) NOT NULL COMMENT 借用人, apply_reason varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 申请原因, borrow_date date NULL DEFAULT NULL COMMENT 借用日期, expect_return_date date NULL DEFAULT NULL COMMENT 预计归还, actual_return_date date NULL DEFAULT NULL COMMENT 实际归还, status tinyint(4) NULL DEFAULT 0 COMMENT 状态【0待审核1驳回2借用中3已归还】, reject_reason 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 device_maintains -- ---------------------------- DROP TABLE IF EXISTS device_maintains; CREATE TABLE device_maintains ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, device_id bigint(20) NOT NULL COMMENT 设备, maintain_type tinyint(4) NULL DEFAULT 1 COMMENT 维护类型【1例行保养2故障维修】, plan_date date NULL DEFAULT NULL COMMENT 计划日期, content varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 维护内容, status tinyint(4) NULL DEFAULT 0 COMMENT 状态【0待执行1已完成】, finished_at datetime NULL DEFAULT NULL COMMENT 完成时间, 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 3 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 设备维护 ROW_FORMAT DYNAMIC; -- ---------------------------- -- Table structure for devices -- ---------------------------- DROP TABLE IF EXISTS devices; CREATE TABLE devices ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, lab_id bigint(20) NOT NULL COMMENT 所属实验室, name varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 设备名称, model varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 型号, serial_no varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 编号, status tinyint(4) NULL DEFAULT 1 COMMENT 状态【1正常2维修中3报废】, enabled tinyint(4) NULL DEFAULT 1 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 lab_categories -- ---------------------------- DROP TABLE IF EXISTS lab_categories; CREATE TABLE lab_categories ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, name varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 分类名称, sort_order int(11) NULL DEFAULT 0 COMMENT 排序, enabled tinyint(4) NULL DEFAULT 1 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 labs -- ---------------------------- DROP TABLE IF EXISTS labs; CREATE TABLE labs ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, name varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 实验室名称, location varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 位置, capacity int(11) NULL DEFAULT 30 COMMENT 容量, category_id bigint(20) NULL DEFAULT NULL COMMENT 所属分类, open_time time NULL DEFAULT NULL COMMENT 开放开始, close_time time NULL DEFAULT NULL COMMENT 开放结束, description text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT 说明, status tinyint(4) NULL DEFAULT 1 COMMENT 状态【1正常开放2暂停使用】, enabled tinyint(4) NULL DEFAULT 1 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 主键, user_id bigint(20) NOT NULL COMMENT 接收用户, user_role varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 接收角色【STUDENT学生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 内容, is_read tinyint(4) NULL DEFAULT 0 COMMENT 是否已读【0未读1已读】, created_at datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, PRIMARY KEY (id) USING BTREE ) ENGINE InnoDB AUTO_INCREMENT 13 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 内容, publisher_id bigint(20) NULL DEFAULT NULL COMMENT 发布人, publisher_role varchar(20) 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 3 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 公告 ROW_FORMAT DYNAMIC; -- ---------------------------- -- Table structure for reservation_process -- ---------------------------- DROP TABLE IF EXISTS reservation_process; CREATE TABLE reservation_process ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, reservation_id bigint(20) NOT NULL COMMENT 预约, step varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 流程步骤【SUBMIT提交APPROVE通过REJECT驳回CHECKIN签到CHECKOUT签退】, operator_id bigint(20) NULL DEFAULT NULL COMMENT 操作人, operator_role varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 操作角色, 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 12 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 预约流程 ROW_FORMAT DYNAMIC; -- ---------------------------- -- Table structure for reservations -- ---------------------------- DROP TABLE IF EXISTS reservations; CREATE TABLE reservations ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, lab_id bigint(20) NOT NULL COMMENT 实验室, student_id bigint(20) NULL DEFAULT NULL COMMENT 预约学生, reserve_date date NOT NULL COMMENT 预约日期, start_time time NOT NULL COMMENT 开始时间, end_time time NOT NULL COMMENT 结束时间, purpose varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用途说明, status tinyint(4) NULL DEFAULT 0 COMMENT 状态【0待审核1驳回2待签到3使用中4已完成】, reject_reason 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 6 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 实验室预约 ROW_FORMAT DYNAMIC; -- ---------------------------- -- Table structure for reserve_rules -- ---------------------------- DROP TABLE IF EXISTS reserve_rules; CREATE TABLE reserve_rules ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, name varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 规则名称, max_hours_per_day int(11) NULL DEFAULT 4 COMMENT 每日上限小时, advance_days int(11) NULL DEFAULT 7 COMMENT 可提前预约天数, no_show_penalty int(11) NULL DEFAULT 1 COMMENT 爽约扣分, credit_ban_threshold int(11) NULL DEFAULT 60 COMMENT 信用分封禁阈值, enabled tinyint(4) NULL DEFAULT 1 COMMENT 是否启用, PRIMARY KEY (id) USING BTREE ) ENGINE InnoDB AUTO_INCREMENT 2 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 预约规则 ROW_FORMAT DYNAMIC; -- ---------------------------- -- Table structure for stocks -- ---------------------------- DROP TABLE IF EXISTS stocks; CREATE TABLE stocks ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, lab_id bigint(20) NOT NULL COMMENT 实验室, name varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 耗材名称, unit varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 单位, quantity int(11) NULL DEFAULT 0 COMMENT 库存数量, warn_quantity int(11) NULL DEFAULT 10 COMMENT 预警数量, enabled tinyint(4) NULL DEFAULT 1 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 students -- ---------------------------- DROP TABLE IF EXISTS students; CREATE TABLE students ( 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 头像, credit_score int(11) NULL DEFAULT 100 COMMENT 信用分(满分100), enabled tinyint(4) NULL DEFAULT 1 COMMENT 是否启用, 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; -- ---------------------------- -- Table structure for usage_records -- ---------------------------- DROP TABLE IF EXISTS usage_records; CREATE TABLE usage_records ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, reservation_id bigint(20) NULL DEFAULT NULL COMMENT 关联预约, student_id bigint(20) NOT NULL COMMENT 学生, lab_id bigint(20) NOT NULL COMMENT 实验室, check_in_at datetime NULL DEFAULT NULL COMMENT 签到时间, check_out_at datetime NULL DEFAULT NULL COMMENT 签退时间, duration_minutes int(11) NULL DEFAULT 0 COMMENT 使用分钟, created_at datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, PRIMARY KEY (id) USING BTREE ) ENGINE InnoDB AUTO_INCREMENT 2 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 使用记录 ROW_FORMAT DYNAMIC; -- ---------------------------- -- Table structure for violations -- ---------------------------- DROP TABLE IF EXISTS violations; CREATE TABLE violations ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键, student_id bigint(20) NOT NULL COMMENT 学生, violation_type varchar(50) 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 说明, penalty int(11) NULL DEFAULT 0 COMMENT 扣分, status tinyint(4) NULL DEFAULT 1 COMMENT 状态【1有效0撤销】, 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; SET FOREIGN_KEY_CHECKS 1;擅长功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路等。获取联系项目功能完整可在本地运行并可远程调试确保运行顺利获取联系方式毕业设计获取https://blog.csdn.net/qq_59059632/article/details/163759879?spm1011.2415.3001.5331
返回列表