基于springboot+vue的入校申报审批系统
博主主页:猫头鹰源码
博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战
主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询
文末联系获取
项目介绍:
本系统适合选题:入校申报、申报审批、审批、申报等。系统采用springboot+vue整合开发,前端框架主要使用了element-ui框架、数据层采用mybatis,功能齐全,界面美观。
功能介绍:
系统包含技术:
后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8
部分截图说明:
下面是登录页面
用户管理
公告类型管理
公告管理
管理员管理
入校申报管理
入校检查管理
部分代码:
/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));String role = String.valueOf(request.getSession().getAttribute("role"));if(false)return R.error(511,"永不会进入");else if("用户".equals(role))params.put("yonghuId",request.getSession().getAttribute("userId"));if(params.get("orderBy")==null || params.get("orderBy")==""){params.put("orderBy","id");}PageUtils page = ruxiaojianchaService.queryPage(params);//字典表数据转换List<RuxiaojianchaView> list =(List<RuxiaojianchaView>)page.getList();for(RuxiaojianchaView c:list){//修改对应字典表字段dictionaryService.dictionaryConvert(c, request);}return R.ok().put("data", page);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id, HttpServletRequest request){logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);RuxiaojianchaEntity ruxiaojiancha = ruxiaojianchaService.selectById(id);if(ruxiaojiancha !=null){//entity转viewRuxiaojianchaView view = new RuxiaojianchaView();BeanUtils.copyProperties( ruxiaojiancha , view );//把实体数据重构到view中//级联表RuxiaoshenbaoEntity ruxiaoshenbao = ruxiaoshenbaoService.selectById(ruxiaojiancha.getRuxiaoshenbaoId());if(ruxiaoshenbao != null){BeanUtils.copyProperties( ruxiaoshenbao , view ,new String[]{ "id", "createTime", "insertTime", "updateTime"});//把级联的数据添加到view中,并排除id和创建时间字段view.setRuxiaoshenbaoId(ruxiaoshenbao.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put("data", view);}else {return R.error(511,"查不到数据");}}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody RuxiaojianchaEntity ruxiaojiancha, HttpServletRequest request){logger.debug("save方法:,,Controller:{},,ruxiaojiancha:{}",this.getClass().getName(),ruxiaojiancha.toString());String role = String.valueOf(request.getSession().getAttribute("role"));if(false)return R.error(511,"永远不会进入");Wrapper<RuxiaojianchaEntity> queryWrapper = new EntityWrapper<RuxiaojianchaEntity>().eq("ruxiaoshenbao_id", ruxiaojiancha.getRuxiaoshenbaoId()).eq("ruxiaojiancha_status_types", ruxiaojiancha.getRuxiaojianchaStatusTypes());logger.info("sql语句:"+queryWrapper.getSqlSegment());RuxiaojianchaEntity ruxiaojianchaEntity = ruxiaojianchaService.selectOne(queryWrapper);if(ruxiaojianchaEntity==null){ruxiaojiancha.setCreateTime(new Date());ruxiaojianchaService.insert(ruxiaojiancha);return R.ok();}else {return R.error(511,"表中有相同数据");}}/*** 后端修改*/@RequestMapping("/update")public R update(@RequestBody RuxiaojianchaEntity ruxiaojiancha, HttpServletRequest request){logger.debug("update方法:,,Controller:{},,ruxiaojiancha:{}",this.getClass().getName(),ruxiaojiancha.toString());String role = String.valueOf(request.getSession().getAttribute("role"));
// if(false)
// return R.error(511,"永远不会进入");//根据字段查询是否有相同数据Wrapper<RuxiaojianchaEntity> queryWrapper = new EntityWrapper<RuxiaojianchaEntity>().notIn("id",ruxiaojiancha.getId()).andNew().eq("ruxiaoshenbao_id", ruxiaojiancha.getRuxiaoshenbaoId()).eq("ruxiaojiancha_status_types", ruxiaojiancha.getRuxiaojianchaStatusTypes());logger.info("sql语句:"+queryWrapper.getSqlSegment());RuxiaojianchaEntity ruxiaojianchaEntity = ruxiaojianchaService.selectOne(queryWrapper);if("".equals(ruxiaojiancha.getRuxiaojianchaPhoto()) || "null".equals(ruxiaojiancha.getRuxiaojianchaPhoto())){ruxiaojiancha.setRuxiaojianchaPhoto(null);}if("".equals(ruxiaojiancha.getXingchengPhoto()) || "null".equals(ruxiaojiancha.getXingchengPhoto())){ruxiaojiancha.setXingchengPhoto(null);}if(ruxiaojianchaEntity==null){ruxiaojianchaService.updateById(ruxiaojiancha);//根据id更新return R.ok();}else {return R.error(511,"表中有相同数据");}}
以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。
好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~
相关文章:
基于springboot+vue的入校申报审批系统
博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…...
安卓逆向 - EdXposed LSPosed VirtualXposed
一、引言 接上篇:安卓逆向 - Xposed入门教程_小馒头yy的博客-CSDN博客 我们介绍了Xposed入门安装使用,但是只支持到Android 8,并且安装模块需要重启。今天我们来看看Xposed的其他版本。 二、各种Xposed框架对比 1、Xposed 只支持到安卓8&…...
Linux三大搜索指令的区别
find:可以在指定的路径下进行文件的搜索 —— 真的在磁盘文件中查找 例如find /usr/bin/ -name ls which 可以在指令路径下,/usr/bin,搜索指令文件 例如:which ls whereis:在系统特定的路径下查找,既可以找到可执行程序ÿ…...
C++ -- 特殊类设计
目录 设计一个类,不能被拷贝 C98的做法 C11的做法 设计一个类,只能在堆上创建对象 实现方式1 实现方式2 设计一个类,只能在栈上创建对象 实现方式1 方式1的优化 实现方式2 设计一个类,不能被继承 设计模式 什么是设计…...
指针和数组笔试题的透析
指针---进阶篇(三) 一、前言二、一维数组例题透析:三、指针笔试题1.例一:2.例二:3.例三:4.例四:5.例五:6.例六: 一、前言 那么好了好了,宝子们,从…...
「UG/NX」Block UI 超级点SuperPoint
✨博客主页何曾参静谧的博客📌文章专栏「UG/NX」BlockUI集合📚全部专栏「UG/NX」NX二次开发「UG/NX」BlockUI集合「VS」Visual Studio「QT」QT5程序设计「C/C+&#...
Linux——kafka常用命令
一、Kafka的常用命令包括: 1. 启动Zookeeper服务 前台启动: ./bin/zookeeper-server-start.sh config/zookeeper.properties 后台启动: ./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties 2. 停止Zookeeper服务 .…...
GLTF编辑器如何快速重置模型原点
1、什么是模型原点? 模型原点是三维建模中的概念,它是指在一个虚拟三维空间中确定的参考点。模型原点通常位于模型的几何中心或基本组件的中心位置。如图所示: 可以看到模型的原点在模型的几何中心 2、模型原点的作用 知道了什么是模型原点&…...
【STL】vector常见用法及模拟实现(附源码)
目录 前言1. vector介绍及使用1.1vector的介绍1.2 vector的使用1.2.1 构造函数 1.2.2 vector对象遍历1.2.3 reserve和resize1.2.4 insert和erase 2. vector模拟实现2.1 vector迭代器失效问题2.2 模拟实现reserve函数浅拷贝问题2.3模拟实现源码2.3.1 vector.h2.3.2 test.cpp 前言…...
深度学习保姆级教学
文章目录 前言1.深度学习概论2.神经网络1.基础原理2.损失函数3.SoftMax4.前向传播5.反向传播1.反向传播介绍 6 卷积神经网络应用1.检测任务2.超分辨率重构3.医学检测4.无人驾驶5. 人脸识别 6.卷积网络和传统区别7.卷积神经网络1.卷积做了什么?2.节点网络1.Alexnet2.…...
计算机视觉的优势和挑战
计算机视觉(CV)是一项快速发展的技术,它具有许多优势和挑战。以下是一些可能的例子: 优势: 1. 自动化:CV技术可以自动化任务,例如图像分类、目标检测和跟踪,从而提高生产力和减少人…...
群晖管家+内网穿透实现公网远程访问本地黑群晖
白嫖怪狂喜!黑群晖也能使用群晖管家啦! 文章目录 白嫖怪狂喜!黑群晖也能使用群晖管家啦!1.使用环境要求:2.下载安装群晖管家app3.随机地址登陆群晖管家app4.固定地址登陆群晖管家app 自己组装nas的白嫖怪们虽然也可以通…...
Essential C++【读书笔记 思考总结】
本篇博客是学习过程中的笔记、思考和总结。原文链接: 3 泛型编程风格 Generic Programming3.1 指针的算术运算3.2 了解 Iterator(泛型指针)3.3 所有容器的共通操作 3 泛型编程风格 Generic Programming STL的主要组件:Container&…...
深度学习实战基础案例——卷积神经网络(CNN)基于Xception的猫狗识别|第2例
文章目录 一、环境准备二、数据预处理三、构建模型四、实例化模型五、训练模型5.1 构建训练函数5.2 构建测试函数5.3 开始正式训练 六、可视化精度和损失七、个体预测总结 今天使用轻量级的一个网络Xception做一个简单的猫狗识别案例,我的环境具体如下: …...
Linux Systemd 配置开机自启
博文目录 文章目录 Systemd操作方式配置方式配置示例参考 Systemd Systemd 是一个用于启动、管理和监控 Linux 系统的初始化系统。它是许多现代 Linux 发行版中默认的初始化系统,取代了传统的 SysVinit 和 Upstart。 Systemd 的引入在 Linux 社区引起了一些争议&…...
华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 fio 深度测评华为云云耀云服务器L实例的磁盘性能
本文收录在专栏:#云计算入门与实践 - 华为云 专栏中,本系列博文还在更新中 相关华为云云耀云服务器L实例评测文章列表如下: 华为云云耀云服务器L实例评测 | 从零开始:云耀云服务器L实例的全面使用解析指南华为云云耀云服务器L实…...
卸载Visual Studio 2010学习版 —— 卸载VCExpress
目录 最初安装Visual Studio 2010学习版是因为计算机二级 C语言考试而装,现如今考完试后便可卸载掉了,安装简便而卸载却没有uninstall.exe文件。故本文提供卸载方式。 进入到程序目录,找到setup.exe文件,也可以在程序目录搜索set…...
react的状态管理简单钩子方法
1.recoil useProvider文件: import { atom, useRecoilState } from recoil;const initState atom({key: initState,default: {state: [],}, })// 将业务逻辑拆分到一个单独文件中,方便进行状态管理 export interface StateProps {id: number;text: string;isFini…...
【Git】轻松学会 Git:深入理解 Git 的基本操作
文章目录 前言一、创建 Git 本地仓库1.1 什么是仓库1.2 创建本地仓库1.3 .git 目录结构 二、配置 Git三、认识 Git 的工作区、暂存区和版本库3.1 什么是 Git 的工作区、暂存区和版本库3.2 工作区、暂存区和版本库之间的关系 四、添加文件4.1 添加文件到暂存区和版本库中的命令4…...
什么是HTTP头部(HTTP headers)?
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 理解 HTTP 头部(HTTP Headers)⭐ HTTP 头部的分类⭐ HTTP 头部的应用⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦&#x…...
SpringCloud Alibaba 入门到精通 - Sentinel
SpringCloud Alibaba 入门到精通 - Sentinel 一、基础结构搭建1.父工程创建2.子工程创建 二、Sentinel的整合SpringCloud1.微服务可能存在的问题2.SpringCloud集成Sentinel搭建Dashboard3 SpringCloud 整合Sentinel 三、服务降级1 服务降级-Sentinel2 Sentinel 整合 OpenFeign3…...
【深度学习实验】前馈神经网络(三):自定义多层感知机(激活函数logistic、线性层算Linear)
目录 一、实验介绍 二、实验环境 1. 配置虚拟环境 2. 库版本介绍 三、实验内容 0. 导入必要的工具包 1. 构建数据集 2. 激活函数logistic 3. 线性层算子 Linear 4. 两层的前馈神经网络MLP 5. 模型训练 一、实验介绍 本实验实现了一个简单的两层前馈神经网络 激活函数…...
HJ68 成绩排序
描述 给定一些同学的信息(名字,成绩)序列,请你将他们的信息按照成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 例示: jack 70 peter 96 Tom 70 smith 67 从高到低…...
FPGA——UART串口通信
文章目录 前言一、UART通信协议1.1 通信格式2.2 MSB或LSB2.3 奇偶校验位2.4 UART传输速率 二、UART通信回环2.1 系统架构设计2.2 fsm_key2.3 baud2.4 sel_seg2.5 fifo2.6 uart_rx2.7 uart_tx2.8 top_uart2.9 发送模块时序分析2.10 接收模块的时序分析2.11 FIFO控制模块时序分析…...
华为云Stack的学习(七)
八、华为云Stack存储服务介绍 1.云硬盘EVS 云硬盘(Elastic Volume Service,EVS),又名磁盘,是一种虚拟块存储服务,主要为ECS(Elastic Cloud Server)和BMS(Bare Metal Se…...
安装k8s集群
一、前置环境配置 安装两台centos 实验环境,一台pc配有docker环境,有两个centsos7容器,其中一个容器作为master,一个作为node。如果master与node都是用默认端口,会存在冲突,所以在此基础上做细微的调整。…...
C++中编写没有参数和返回值的函数
C中编写没有参数和返回值的函数 返回值为 void 函数不需要将值返回给调用者。为了告诉编译器函数不返回值,返回类型为 void。例如: #include <iostream>// void means the function does not return a value to the caller void printHi() {std…...
SWC 流程
一个arxml 存储SWC (可以存多个,也可以一个arxml存一个SWC)一个arxml 存储 composition (只能存一个)一个arxml 存储 system description (通过import dbc自动生成system) 存储SWC和composition的arxml文件分开&#…...
怒刷LeetCode的第10天(Java版)
目录 第一题 题目来源 题目内容 解决方法 方法一:两次拓扑排序 第二题 题目来源 题目内容 解决方法 方法一:分治法 方法二:优先队列(Priority Queue) 方法三:迭代 第三题 题目来源 题目内容…...
java框架-Springboot3-场景整合
文章目录 java框架-Springboot3-场景整合批量安装中间件NoSQL整合步骤RedisTemplate定制化 接口文档远程调用WebClientHttp Interface 消息服务 java框架-Springboot3-场景整合 批量安装中间件 linux安装中间件视频 NoSQL 整合redis视频 整合步骤 RedisTemplate定制化 Re…...
wordpress隐藏音乐/seo如何优化排名
上一篇博客我和大家分享了vue render函数的基础使用 这篇博客我们来简单讲一讲render函数他是怎么实现得 先来一张官方得图 在实例初始化得时候,html通过render函数编译生成了一个虚拟dom,视图层会根据虚拟dom生成一个真实dom 然后如果响应数据发生变化得…...
重庆网站优化指导/成都网站快速优化排名
Windows消息被广泛用于各种事件的通知上面,如果你想操作窗口或者控件(UI元素其实也是一种窗口,如:按钮,编辑框,工具栏,树形控件等)的话,给它发送消息即可。消息也可以来至于其他应用程序。你也可以通过消息来实现系统通知,移动鼠标,按下键盘上的某键等操作。 正如我们前面所讨…...
国际网站怎么做/app拉新推广平台渠道
由于种种原因,决定今天开始从centos7转为ubuntu14.0.但是一开始就遇到了一个问题。ubuntu的源貌似被墙了。没有办法,只好换源。如是参考了下面的帖子。 换源参考链接 但是又出现了一个问题,百度了好久才找到 zhaoubuntu:~$ sudo apt-get -f install gcc …...
深圳网站建设现/企业做推广有用吗
unordered_map 是關聯容器,含有帶唯一鍵的鍵-值 pair 。搜索、插入和元素移除擁有平均常數時間複雜度。 Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have…...
售卖网站建设实验报告/网络营销出来可以干什么工作
es6 的 import 语法跟 require 不同,而且 import 必须放在文件的最开始,且前面不允许有其他逻辑代码,这和其他所有编程语言风格一致。 import不同与require,它是编译时的(require是运行时的),它…...
国外网页客服系统/信息流优化师是做什么的
将普通的数字转换为带千位分隔符格式的数字字符串是一个非常常见的问题,千位分隔符格式的规则是数字的整数部分每三位一组,以“,”分节。小数部分不分节 。 示例:19,351,235.235767 这里有几个常见的实现方法。 1.方法一 实现思…...