🔥作者主页:疯狂行者🔥 💖✌java领域优质创作者,专注于Java技术领域技术交流✌💖
💖文末获取源码💖
精彩专栏推荐订阅:在 下方专栏👇🏻👇🏻👇🏻👇🏻Java精彩实战项目案例
Java精彩新手项目案例
Python精彩新手项目案例
文章目录
前言
本次文章主要是介绍Java+SpringBoot大学生实习管理系统的功能,系统分为三个角色,分别是管理员、教师、学生
一、系统功能
1.1 开发环境
- 开发语言:Java - 技术:SpringBoot+HTML
- 数据库:MySQL - 架构:B/S - 源码类型: Web
- 编译工具:Idea、Eclipse、MyEclipse (选其一)
- 其他:jdk1.8、Tomcat8.5【内置】 、Navicat
二、系统设计
2.1 研究思路分析
在系统流程分析当中调查分析它是比较重要的环节,因为在这个系统当中它都涉及到每个环节的业务流程,所以从Java+SpringBoot大学生实习管理系统的设计的整体设计上要保证各个信息的正确输入和输出以及对数据储存的完整,并结合实际的操作步骤来绘制出具体的流程图。具体流程图如下图所示:
2.2 系统功能结构图
系统的功能需求如下:
管理员模块:系统中的核心用户是管理员,管理员登录后,通过管理员功能来管理后台系统。主要功能有:信息管理【学生信息管理、教师信息管理、生产实习信息管理、顶岗实习信息管理】、生产实习管理、顶岗实习管理、实习管理、分享、系统管理【用户管理、菜单管理、角色信息管理】;教师角色功能有学生信息管理、实习管理【生产实习审核、生产实习过程管理、生产实习成绩统计、顶岗实习审核、顶岗实习过程管理、顶岗实习成绩统计】、分享【我的分享、讨论区、信息审核】;学生角色功能有生产实习【生产实习申请、我的生产实习、我的成绩、我的申请】、顶岗实习【顶岗实习申请、我的顶岗实习、我的成绩、我的申请】、分享【我的分享、讨论区】。
三、部分功能展示
☀️登录页面展示☀️
☀️学生_生产实习申请☀️
☀️学生_顶岗实习申请☀️
☀️教师_顶岗实习审核☀️
☀️教师_生产实习审核☀️
☀️管理员_生产实习信息管理☀️
☀️管理员_顶岗实习信息管理☀️
四、部分代码设计
4.1.根据学生ID查找该生生产实习信息【代码如下(示例):】
@PostMapping("/selectAllGrade")
@RequiresPermissions("system:allgrade:list")
@ApiOperation(value = "根据学生ID查找该生生产实习信息")
@ResponseBody
public TableDataInfo selectAllGrade(@RequestParam(value = "stuProdId",defaultValue = "0") long stuProdId,
@RequestParam(value = "productionName",defaultValue = "") String productionName,
@RequestParam(value = "studentName",defaultValue = "") String studentName,
@RequestParam(value = "productionCompany",defaultValue = "") String productionCompany){
startPage();
List<Map<String,Object>> list = myApplyService.selectAllGrade(stuProdId,productionName,studentName,productionCompany);
for(Map map : list){
if(map.get("score") == null){
continue;
}
List<Map<String,Object>> li = myProdService.selectWeeks(Long.parseLong(map.get("productionId").toString()),Long.parseLong(map.get("studentId").toString()),"");
boolean flag = false;
for(Map<String,Object> m : li){
if(m.get("worklyActScore") == null){
map.put("ownScore","无");
flag = true;
break;
}
}
if(!flag){
Double score = Double.parseDouble(map.get("score").toString());
if(score < 60){
map.put("ownScore","不及格");
}else if(score >=60 && score < 70){
map.put("ownScore","及格");
}else if(score >=70 && score < 80){
map.put("ownScore","中等");
}else if(score >=80 && score < 90){
map.put("ownScore","良好");
}else {
map.put("ownScore","优秀");
}
}
}
return getDataTable(list);
}
4.2.根据学生ID查找该生申请的生产实习信息查询【代码如下(示例):】
@PostMapping("/selectProdBystuId")
@RequiresPermissions("system:myprodapply:list")
@ApiOperation(value = "根据学生ID查找该生申请的生产实习信息")
@ResponseBody
public TableDataInfo selectProdBystuId(@RequestParam(value = "productionId",defaultValue = "0") long productionId,
@RequestParam(value = "productionName",defaultValue = "") String productionName,
@RequestParam(value = "productionCompany",defaultValue = "") String productionCompany){
startPage();
long stuId = ShiroUtils.getUserId();
List<Map<String,Object>> list = myApplyService.selectProdBystuId(stuId,productionId,productionName,productionCompany);
return getDataTable(list);
}
@PostMapping("/deleteById")
@RequiresPermissions("system:myprodapply:remove")
@ApiOperation(value = "学生退选生产实习")
@Transactional
@ResponseBody
public AjaxResult deleteById(@RequestParam(value = "ids") long stuProdId){
int Count = myApplyService.deleteById(stuProdId);
if(Count > 0){
return AjaxResult.success("退选成功");
}
return AjaxResult.warn("退选失败");
}
4.3.同意生产实习申请【代码如下(示例):】
@PostMapping("/agree")
@RequiresPermissions("system:prodaudit:agree")
@ApiOperation(value = "同意生产实习申请")
@Transactional
@ResponseBody
public AjaxResult agree(@RequestParam(value = "ids") String stuProdId){
return prodAuditService.agree(stuProdId);
}
@PostMapping("/reject")
@RequiresPermissions("system:prodaudit:reject")
@ApiOperation(value = "拒绝生产实习申请")
@Transactional
@ResponseBody
public AjaxResult reject(@RequestParam(value = "ids") String stuProdId){
return prodAuditService.reject(stuProdId);
}
总结
源码获取:
大家点赞、收藏、关注、评论啦 、
打卡 文章 更新 55/ 365天
精彩专栏推荐订阅:在 下方专栏👇🏻👇🏻👇🏻👇🏻
Java精彩实战项目案例
Java精彩新手项目案例
Python精彩新手项目案例
本文含有隐藏内容,请 开通VIP 后查看