基于JAVA的毕业设计分配选题系统 开源项目

news2024/11/16 1:25:53

在这里插入图片描述


目录

  • 一、摘要
    • 1.1 项目介绍
    • 1.2 项目录屏
  • 二、功能模块
    • 2.1 专业档案模块
    • 2.2 学生选题模块
    • 2.3 教师放题模块
    • 2.4 选题审核模块
  • 三、系统展示
  • 四、核心代码
    • 4.1 查询专业
    • 4.2 新增专业
    • 4.3 选择课题
    • 4.4 取消选择课题
    • 4.5 审核课题
  • 五、免责说明


一、摘要

1.1 项目介绍

基于JAVA+Vue+SpringBoot+MySQL的毕业设计分配选题系统,包含了专业档案模块、学生选题模块、教师放题模块、选题审核模块,还包含系统自带的用户管理、班级管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,毕业设计分配选题系统基于角色的访问控制,给学生、教师、教务管理员使用,可将权限精确到按钮级别,您可以自定义角色并分配权限,系统适合设计精确的权限约束需求。

1.2 项目录屏


二、功能模块

2.1 专业档案模块

毕业设计分配选题系统的专业档案模块是一个重要的功能模块,它主要用来管理学校或院系的专业信息和相关档案。专业档案模块可以记录和管理学校或院系的专业信息,包括专业名称、专业代码、专业介绍、开设学年等。专业档案模块可以建立和管理每个专业的档案,包括专业历史、发展动态、教学特点、师资力量、课程设置等相关信息。学生和教师可以通过专业档案模块进行专业档案的查询和检索,快速获取相关信息。专业档案模块可以实现专业档案的更新和维护,保持档案信息的及时性和准确性。

专业档案模块可以设置不同用户的权限,保护专业档案的安全性,确保只有授权用户可以进行档案管理操作。专业档案模块可以对专业的数据进行统计分析,并通过图表或报表的方式展示,帮助学校或院系了解专业的发展状况和趋势。专业档案模块可以与毕业设计选题系统的其他模块进行集成,实现数据的共享和交互,提高系统的整体效率和便利性。毕业设计分配选题系统的专业档案模块可以有效管理和展示学校或院系的专业信息,为学生和教师提供便捷的查询和参考,促进专业的发展和优化。

2.2 学生选题模块

毕业设计分配选题系统的学生选题模块是系统中非常重要的一部分,它用于学生选择和申请毕业设计选题。教师或学校可以在系统中发布各种可供学生选择的毕业设计选题,包括选题名称、选题描述、选题要求等信息。学生可以在系统中浏览已发布的毕业设计选题,并通过搜索、筛选等方式快速找到感兴趣的选题。学生可以选择心仪的选题,并提交选题申请。申请通常包括个人简介、选题理由、选题计划等相关材料。教师或指导教师可以对学生的选题申请进行审核,评估学生的能力和选题的合理性,决定是否通过选题申请。一旦选题申请通过审核,系统可以根据学校或院系的分配规则,自动分配选题给学生,或由指导教师手动分配选题。

学生可以在系统中查看自己已选的毕业设计选题,并进行选题信息的修改或变更。学生和指导教师可以通过系统内部的消息或讨论功能进行选题相关的交流和沟通。系统可以记录和管理学生的选题进度,包括选题的完成情况、报告的提交和评审等信息,方便学校或教师进行进度管理和评估。毕业设计分配选题系统的学生选题模块可以为学生提供方便快捷的选题流程和交流平台,帮助学生在毕业设计中选择适合自己的选题,并提供一定的管理和监督机制,促进毕业设计的顺利进行。

2.3 教师放题模块

毕业设计分配选题系统的教师放题模块主要负责教师发布毕业设计选题的功能。教师通过用户名和密码登录系统。教师选择自己负责的课程或专业。教师可以创建新的毕业设计选题,包括选题名称、描述、要求等信息。教师可以设置选题的相关属性,如选题类型(理论研究、实验设计、系统开发等)、选题难度(初级、中级、高级等)等。教师可以为选题设置限制条件,如最大选题人数、适合的学生专业等。教师可以预览已创建的选题,确保信息准确无误。教师确认无误后,将选题发布到系统中,供学生选择。教师可以随时查看选题的选择情况和学生名单。

2.4 选题审核模块

毕业设计分配选题系统的选题审核模块主要负责对学生提交的毕业设计选题进行审核和评审。学生通过系统提交自己的毕业设计选题申请,包括选题名称、描述、所属课程、选题类型等信息。教师登录系统,进入选题审核模块,查看待审核的选题申请。教师对学生提交的选题申请进行审核,包括对选题的可行性、合理性和创新性进行评估。教师根据学生提交的选题申请和相关资料,对选题的研究目标、方法、可行性等进行评审,并给出评审意见和建议。

系统根据教师的审核结果,给学生发送通知,告知选题审核结果,包括审核通过、审核不通过或需要修改等。如果选题审核不通过或需要修改,学生可以根据教师的建议进行相应修改,并重新提交选题申请。教师对学生修改后的选题申请进行再次审核。教师根据最终审核结果,确定选题的通过与否,并将结果反馈给学生和系统。选题审核模块可以实现对学生提交的毕业设计选题进行全面的审核和评审,确保选题的质量和合理性,为学生提供优质的毕业设计选题。


三、系统展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


四、核心代码

4.1 查询专业

@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询专业")
public Result<IPage<Major>> getByPage(@ModelAttribute Major major ,@ModelAttribute PageVo page){
    QueryWrapper<Major> qw = new QueryWrapper<>();
    if(!ZwzNullUtils.isNull(major.getTitle())) {
        qw.like("title",major.getTitle());
    }
    IPage<Major> data = iMajorService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<Major>>().setData(data);
}

4.2 新增专业

@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增专业")
public Result<Major> insert(Major major){
    iMajorService.saveOrUpdate(major);
    return new ResultUtil<Major>().setData(major);
}

4.3 选择课题

@RequestMapping(value = "/checkTopic", method = RequestMethod.POST)
@ApiOperation(value = "选择课题")
public Result<Object> checkTopic(@RequestParam String id){
    Topic topic = iTopicService.getById(id);
    if(topic == null) {
        return ResultUtil.error("课题不存在");
    }
    User currUser = securityUtil.getCurrUser();
    topic.setCheckFlag(true);
    topic.setCheckId(currUser.getId());
    topic.setCheckName(currUser.getNickname());
    iTopicService.saveOrUpdate(topic);
    return ResultUtil.success();
}

4.4 取消选择课题

@RequestMapping(value = "/checkNotTopic", method = RequestMethod.POST)
@ApiOperation(value = "取消选择课题")
public Result<Object> checkNotTopic(@RequestParam String id){
    Topic topic = iTopicService.getById(id);
    if(topic == null) {
        return ResultUtil.error("课题不存在");
    }
    topic.setCheckFlag(false);
    topic.setCheckId("");
    topic.setCheckName("");
    topic.setAuditFlag(false);
    iTopicService.saveOrUpdate(topic);
    return ResultUtil.success();
}

4.5 审核课题

@RequestMapping(value = "/auditTopic", method = RequestMethod.POST)
@ApiOperation(value = "审核课题")
public Result<Object> auditTopic(@RequestParam String id){
    Topic topic = iTopicService.getById(id);
    if(topic == null) {
        return ResultUtil.error("课题不存在");
    }
    topic.setAuditFlag(true);
    iTopicService.saveOrUpdate(topic);
    return ResultUtil.success();
}

五、免责说明

  • 本项目仅供个人学习使用,商用授权请联系博主,否则后果自负。
  • 博主拥有本软件构建后的应用系统全部内容所有权及独立的知识产权,拥有最终解释权。
  • 如有问题,欢迎在仓库 Issue 留言,看到后会第一时间回复,相关意见会酌情考虑,但没有一定被采纳的承诺或保证。

下载本系统代码或使用本系统的用户,必须同意以下内容,否则请勿下载!

  1. 出于自愿而使用/开发本软件,了解使用本软件的风险,且同意自己承担使用本软件的风险。
  2. 利用本软件构建的网站的任何信息内容以及导致的任何版权纠纷和法律争议及后果和博主无关,博主对此不承担任何责任。
  3. 在任何情况下,对于因使用或无法使用本软件而导致的任何难以合理预估的损失(包括但不仅限于商业利润损失、业务中断与业务信息丢失),博主概不承担任何责任。
  4. 必须了解使用本软件的风险,博主不承诺提供一对一的技术支持、使用担保,也不承担任何因本软件而产生的难以预料的问题的相关责任。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1479946.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

四川易点慧电子商务有限公司抖音小店:信赖之选,品质保障

随着电子商务的飞速发展&#xff0c;越来越多的消费者选择在网上购物。四川易点慧电子商务有限公司作为业内佼佼者&#xff0c;其抖音小店自开业以来&#xff0c;就以其卓越的产品品质、完善的售后服务和高效的物流体系&#xff0c;赢得了广大消费者的信赖和好评。 一、品质至上…

远程扫描如何在 Dynamic Web TWAIN 中工作

您是否厌倦了被办公室扫描仪束缚&#xff1f;Dynamic Web TWAIN 版本 18 带来了令人兴奋的远程扫描功能&#xff0c;让您摆脱束缚。借助远程扫描&#xff0c;您现在可以在整个办公网络中共享扫描仪&#xff0c;并通过浏览器从任何设备启动扫描作业。 点击下载Dynamsoft最新版h…

k8s-项目测试环境部署

部署规划 概述 项目开发好后&#xff0c;我们需要部署&#xff0c;我们接下来就基于 阿里云云效 阿里云容器镜像服务 k8s 搭建部署环境 阿里云云效 : 放代码&#xff0c;可以做cicd&#xff08;https://www.aliyun.com/product/yunxiao&#xff09; 阿里云容器镜像服务 :…

初学selenuim[1]($x(‘xpath语法’)、WebDriverWait())

文章目录 初学selenuim记录1、执行driver webdriver.Chrome()后很久才打开浏览器2、浏览器多元素定位 $x(‘xpath语法’)3、打开浏览器driver.get("网址")执行了很久才开始定位元素&#xff1a;等待&#xff08;1&#xff09;driver.set_page_load_timeout(t)&#…

C语言可以干些什么?C语言主要涉及哪些IT领域?

C语言可以干些什么&#xff1f;C语言主要涉及哪些IT领域&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家…

代码随想录算法训练营第五天

● 自己看到题目的第一想法 242. 有效的字母异位词 方法&#xff1a; 方法一&#xff1a; 暴力法 1. 分别对s, t排序 2. 遍历s与t 判断s[i]!t[i] 返回 false 否则 返回true思路&#xff1a; 注意&#xff1a; 代码&#xff1a; bool cmp(char a, char b){return a<b;…

RK3568 Android12 适配抖音 各大APP

RK3568 Android12 适配抖音 各大APP SOC RK3568 system:Android 12 平台要适配抖音和各大APP 平台首先打开抖音发现摄像头预览尺寸不对只存在右上角,我将抖音APP装在手机上预览,发现是全屏 一开始浏览各大博客 给出的解决方法是修改framework 设置为全屏显示: framewo…

Jenkins自动化部署之流水线模式部署

文章目录 任务类型Pipeline流水线项目声明式的Pipeline脚本式Pipeline 示例脚本生成Tools配置示例 高级Pipeline Script from SCM 任务类型 在Jenkins中&#xff0c;有不同类型的任务&#xff08;项目&#xff09;适用于不同的构建需求。以下是一些常见的Jenkins任务类型&…

(vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)

(vue)el-checkbox 实现展示区分 label 和 value&#xff08;展示值与选中获取值需不同&#xff09; 后端数据 解决方法 在 el-checkbox 标签中间传入要展示的文本即可&#xff0c;代码如下&#xff1a; <el-checkbox-groupv-model"formInline.processFieldList"…

章鱼网络 Community Call #18|Omnity 将首先支持 Runes 协议资产跨链

香港时间2024年2月8日12点&#xff0c;章鱼网络举行第18期 Community Call。 2024年&#xff0c;我们打开一个良好的局面&#xff1a;$NEAR Restaking 已经完成第三方审计&#xff0c;并且经过几次迭代&#xff0c;进入了正式稳定运行的阶段。更重要的是&#xff0c;我们宣布了…

基于移动端的食堂助餐在线点餐配送系统 uniapp微信小程序

本文从管理员、老人、配送员、食堂商家的功能要求出发&#xff0c;养老助餐管理系统小程序中的功能模块主要是实现老人、配送员、食堂商家、食堂大厅、预约选座、餐号信息、美食信息、美食订单、订单信息、订单配送、订单评价、老人食堂、下单信息、饮食分析。经过认真细致的研…

免费下载《金融行业数据安全交换解决方案白皮书》

金融行业包括商业银行业务、证券业务、保险业务、基金业务、信托业务等&#xff0c;因此数据类型多种多样&#xff0c;并且数据涉及主体众多&#xff0c;应用场景上较为多样复杂&#xff0c;在数据交换上存在安全、合规、可控、可靠、高效等需求。 金融行业会面临哪些数据安全…

【FPGA/IC】RAM-Based Shift Register Xilinx IP核的使用

前言 一般来讲&#xff0c;如果要实现移位寄存器的话&#xff0c;通常都是写RTL用reg来构造&#xff0c;比如1bit变量移位一个时钟周期就用1个reg&#xff0c;也就是一个寄存器FF资源&#xff0c;而移位16个时钟周期就需要16个FF&#xff0c;这种方法无疑非常浪费资源。 Xili…

Goose:Golang中的数据库迁移工具

Goose&#xff1a;Golang中的数据库迁移工具 在Golang开发中&#xff0c;数据库迁移是一个常见的任务&#xff0c;用于管理数据库模式的演化和版本控制。Goose是一个轻量级的、易于使用的数据库迁移工具&#xff0c;专为Golang开发者设计。本文将介绍Goose的基本概念、用法和优…

LeetCode 刷题 [C++] 第236题.二叉树的最近公共祖先

题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点 p、q&#xff0c;最近公共祖先表示为一个节点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&#xff08;一个节点也可以…

C++基础知识(八:STL标准库(Vectors和list))

C STL (Standard Template Library标准模板库) 是通用类模板和算法的集合&#xff0c;它提供给程序员一些标准的数据结构的实现如 queues(队列), lists(链表), 和 stacks(栈)等. STL容器的提供是为了让开发者可以更高效率的去开发&#xff0c;同时我们应该也需要知道他们的底层…

Vue——携带参数跳转路由

Vue学习之——跳转路由 前情回顾 当我们进行点击修改时&#xff0c;会进行跳转到修改页面&#xff0c;为了完成回显数据&#xff08;根据对应id查找&#xff09;&#xff0c;我们需要携带对应选择中的id跳转到修改页面&#xff0c;让其进行查找回显 学习useRoute和useRoute…

【Redis】深入理解 Redis 常用数据类型源码及底层实现(6.详解Set和ZSet数据结构)

本文是深入理解 Redis 常用数据类型源码及底层实现系列的第6篇&#xff5e;前5篇可移步(&#xffe3;∇&#xffe3;)/ 【Redis】深入理解 Redis 常用数据类型源码及底层实现&#xff08;1.结构与源码概述&#xff09;-CSDN博客 【Redis】深入理解 Redis 常用数据类型源码及底…

CCDP.01.寄主机SSH连接虚拟机的QA

V0.0 初始版本-2024.2.29 检查VM的网卡配置 如上图&#xff0c;如果enp0s3网卡没有出现形如10.0.0.??/24的ip配置&#xff0c;说明该网卡配置存在错误&#xff0c;或者没有“使能”该网卡。在RockyLinux8.X中可检查“ifcfg-enp0s&#xff1f;” vi /etc/sysconfig/network-…

51-n皇后(回溯算法)

题目 按照国际象棋的规则&#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上&#xff0c;并且使皇后彼此之间不能相互攻击。 给你一个整数 n &#xff0c;返回所有不同的 n 皇后问题 的解决方案。 每一…