基于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,"表中有相同数据");}}

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

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

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

相关文章

MySQL数据库的索引和事务

目录 一、索引 1.1Mysql索引 1.2索引的作用 1.3 创建索引的依据 1.4 普通索引 修改表方式创建索引 删除索引 1.5 唯一索引 修改表方式创建 删除索引 1.6 主键索引 修改表方式创建 1.7 组合索引 1.8 全文索引 1.9查看索引 二、事务 2.1事务概念 2.2事务的ACID特…

C语言每日一题(10):无人生还

文章主题&#xff1a;无人生还&#x1f525;所属专栏&#xff1a;C语言每日一题&#x1f4d7;作者简介&#xff1a;每天不定时更新C语言的小白一枚&#xff0c;记录分享自己每天的所思所想&#x1f604;&#x1f3b6;个人主页&#xff1a;[₽]的个人主页&#x1f3c4;&#x1f…

全套配置细节:缺省路由实验配置

1、实验目的 掌握默认路由的适用场合和配置方法 2、实验拓扑 默认路由的配置 3、实验步骤 &#xff08;1&#xff09;配置网络连通性如下。 1&#xff09;R1 的配置如下 &#xff1a; <Huawei>system-view Enter system view, return user view with CtrlZ. [Huaw…

网络安全——(黑客)自学

想自学网络安全&#xff08;黑客技术&#xff09;首先你得了解什么是网络安全&#xff01;什么是黑客&#xff01;&#xff01;&#xff01; 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队…

Xshell工具连接本地虚拟机Linux系统

你知道的越多&#xff0c;你不知道的越多&#xff1b;本文仅做记录&#xff0c;方便以后备阅。希望也能帮到正在看这篇文章的你。 使用Xshell工具连接Linux系统具有方便&#xff0c;易于操作等诸多特点。对于Xshell的介绍&#xff0c;我就不详细说了。我相信百度百科上的介绍更…

Python实现MYSQL蜜罐

1 LOAD DATA INFILE介绍 首先开启一个Mysql&#xff0c;看一下mysql是如何读取主机文件的。 1.1 linux搭建mysql 1&#xff09;docker运行mysql 2&#xff09;启动Mysql docker run -itd…

算法基础之差分和前缀和

差分 差分介绍 结论&#xff1a;差分是前缀和的逆运算 举例 一维差分 //一维前缀和 a[i]部分就是一维差分数组 s[i] s[i-1]a[i]; //一维差分 a[i] s[i]-s[i-1];二维差分 //二维前缀和 a[i][j]部分就是一维差分数组 s[i][j] s[i-1][j]s[i][j-1]-s[i-1][j-1]a[i][j]; //二…

Python四大数据结构整理

Python四大数据结构整理 列表列表本身的基础造作操作列表的增删改查列表总结 字典字典的创建获取字典视图遍历字典字典生成式 元组与集合元组的创建元组的获取集合集合的创建方式集合的相关操作 对比归纳总结 列表 列表的特点   1.列表元素按顺序有序排放   2.索引映射唯一…

2023-09-19 LeetCode每日一题(打家劫舍 IV)

2023-09-19每日一题 一、题目编号 2560. 打家劫舍 IV二、题目链接 点击跳转到题目位置 三、题目描述 沿街有一排连续的房屋。每间房屋内都藏有一定的现金。现在有一位小偷计划从这些房屋中窃取现金。 由于相邻的房屋装有相互连通的防盗系统&#xff0c;所以小偷 不会窃取…

基于微信小程序的宠物交易商城系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言运行环境说明用户的主要功能有&#xff1a;管理员的主要功能有&#xff1a;具体实现截图详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考论文参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌…

SIEM 中的事件关联

什么是 SIEM 中的事件关联 SIEM 中的事件关联可帮助安全团队识别来自不同来源的安全事件并确定其优先级&#xff0c;从而提供更全面的整体安全环境视图。 在典型的 IT 环境中&#xff0c;会跨各种系统和应用程序生成大量事件和日志。孤立地看&#xff0c;其中许多事件可能看起…

FPGA/数字IC(芯海科技2022)面试题 2(解析版)

以下仅为学习参考(非原创)&#xff0c;如有疑惑欢迎评论区指出&#xff01; 一、单选题&#xff08;共20题&#xff0c;每题3分&#xff0c;共60分&#xff09; 1. D触发器&#xff1a;Tsetup3ns&#xff0c;Thold1ns&#xff0c;Tck2q1ns&#xff0c; 该D触发器最大可运行时…

微信小程序快速入门01(含案例)

文章目录 前言一、组件1.常用视图容器类组件viewscroll-viewswiper、swiper-item 2.text、rich-text3.其他常用组件buttonimagenavigator 二、小程序API三、数据绑定1.定义页面数据2.绑定数据 四、事件绑定1.什么是事件2.小程序中常用的事件3.事件对象 的属性列表target和curre…

SQL 如何提取多级分类目录

前言 POI数据处理&#xff0c;原始数据为csv格式&#xff0c;整理入库至PostGreSQL&#xff0c;本例使用PostGreSQL13版本。 一、POI POI&#xff08;一般作为Point of Interest的缩写&#xff0c;也有Point of Information的说法&#xff09;&#xff0c;通常称作兴趣点&am…

小米手机打开开发者模式

1、打开设置 2、 3、 4、多次连续点击版本&#xff0c;直到提示打开开发者模式 5、进入手机开发者模式后&#xff0c;点击进入“设置”主页的“更多设置”。 6、接着点击进入“开发者选项”。 7、最后打开“USB调试”选项后&#xff0c;手机就打开了USB调试模式。 8、可以…

Web前端的float布局和flex布局

1.float布局 <style>.nav {overflow: hidden;background-color: aqua;}.nav c {float: left;display: block;text-align: center;padding: 10px 20px;text-decoration: none;color: black;}.nav c:hover{background-color: chartreuse;}</style> <div class&q…

30.链表练习题(1)(王道2023数据结构2.3.7节1-15题)

【前面使用的所有链表的定义在第29节】 试题1&#xff1a; 设计一个递归算法&#xff0c;删除不带头结点的单链表L中所有值为x的结点。 首先来看非递归算法&#xff0c;暴力遍历&#xff1a; int Del(LinkList &L,ElemType x){ //此函数实现删除链表中为x的元素LNode *…

WINDOWS 7-11 磁盘分区教程

前言&#xff1a; 现在很多新电脑&#xff0c;尤其是用固态硬盘的电脑&#xff0c;往往内存不是很大&#xff0c;默认系统就给1个c盘&#xff08;系统&#xff09;或者再加一个D盘&#xff08;软件盘&#xff09;。为了更好的管理自己电脑的文件&#xff0c;我们需要增加一个或…

黑马JVM总结(十二)

&#xff08;1&#xff09;五种引用_强软弱 实线箭头表示强引用&#xff0c;虚心线表示软弱虚终结器引用 在平时我们用的引用&#xff0c;基本都为强引用 &#xff0c;比如说创建一个对象通过运算符赋值给了一个变量&#xff0c;那么这个变量呢就强引用了刚刚的对象 强引用的…

VINS中的观测性问题

文章目录 一、背景二、BA problem的观测性问题1、不可观方向2、解决方案3、优化问题中信息矩阵物理意义 三、Keyframe-based Visual-Inertial SLAM的观测性问题1、不可观问题2、解决方案 四、MSCKF观测性分析1、观测性分析2、解决方案3、小结 一、背景 本文档分析以下VINS中的…