一、技术路线:
开发语言:Java
前端技术:JavaScript、VUE.js(2.X)、css3
数据库:MySQL 5.7
数据库管理工具:Navicat或sqlyog
开发工具:IDEA或Ecplise
二、项目介绍:
https://www.bilibili.com/video/BV1CC4y1V7J1?t=10.0
三、运行截图:
编程人员在搭建的开发环境中,运用编程技术实现本系统设计的各个操作权限的功能。在本节中,就展示部分操作权限的功能与界面。
3.1 管理员功能实现
3.1.1 健康打卡管理
图3.1 即为编码实现的健康打卡管理界面,管理员在该界面中也能对学生的健康打卡信息进行登记,也可以修改健康打卡信息,包括修改当前所在地区,有无接触确诊病例等信息,可以删除需要删除的健康打卡信息,查看学生的隔离信息,包括是否已隔离以及已隔离天数信息。

图3.1 健康打卡管理界面
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody DakaEntity daka, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,daka:{}",this.getClass().getName(),daka.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(StringUtil.isEmpty(role))
return R.error(511,"权限为空");
else if("学生".equals(role))
daka.setXueshengId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper queryWrapper = new EntityWrapper()
.eq("xuesheng_id", daka.getXueshengId())
.eq("insert_time", new SimpleDateFormat("yyyy-MM-dd").format(new Date()))
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
DakaEntity dakaEntity = dakaService.selectOne(queryWrapper);
if(dakaEntity==null){
daka.setInsertTime(new Date());
daka.setCreateTime(new Date());
dakaService.insert(daka);
return R.ok();
}else {
return R.error(511,"当日已有打卡记录");
}
}
3.1.2 返校申请管理
图3.2 即为编码实现的返校申请管理界面,管理员在该界面中新增学生返校申请信息,审核学生的返校申请,可以修改返校申请的内容信息,包括返校方式,当前地址等信息。

图3.2 返校申请管理界面
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody FanxiaoEntity fanxiao, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,fanxiao:{}",this.getClass().getName(),fanxiao.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(StringUtil.isEmpty(role))
return R.error(511,"权限为空");
else if("学生".equals(role))
fanxiao.setXueshengId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper queryWrapper = new EntityWrapper()
.eq("xuesheng_id", fanxiao.getXueshengId())
.eq("diqu", fanxiao.getDiqu())
.eq("fangshi_types", fanxiao.getFangshiTypes())
.eq("checi", fanxiao.getCheci())
.eq("fengxian_types", fanxiao.getFengxianTypes())
.eq("fanxiao_yesno_types", fanxiao.getFanxiaoYesnoTypes())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
FanxiaoEntity fanxiaoEntity = fanxiaoService.selectOne(queryWrapper);
if(fanxiaoEntity==null){
fanxiao.setFanxiaoYesnoTypes(1);
fanxiao.setInsertTime(new Date());
fanxiao.setCreateTime(new Date());
fanxiaoService.insert(fanxiao);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
3.1.3 老师管理
图3.3 即为编码实现的老师管理界面,管理员在该界面具备添加老师信息,重置老师账号的密码,修改老师信息,对老师信息进行删除等操作权限。

图3.3 老师管理界面
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id, HttpServletRequest request){
logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
LaoshiEntity laoshi = laoshiService.selectById(id);
if(laoshi !=null){
//entity转view
LaoshiView view = new LaoshiView();
BeanUtils.copyProperties( laoshi , view );//把实体数据重构到view中
//修改对应字典表字段
dictionaryService.dictionaryConvert(view, request);
return R.ok().put("data", view);
}else {
return R.error(511,"查不到数据");
}
}
3.1.4 学生管理
图3.4 即为编码实现的学生管理界面,管理员在该界面中具备重置学生账号的密码,修改学生信息,新增学生的资料,删除需要删除的学生信息的权限。

图3.4 学生管理界面
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map params, HttpServletRequest request){
logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));
String role = String.valueOf(request.getSession().getAttribute("role"));
if(StringUtil.isEmpty(role))
return R.error(511,"权限为空");
else if("学生".equals(role))
params.put("xueshengId",request.getSession().getAttribute("userId"));
else if("老师".equals(role))
params.put("laoshiId",request.getSession().getAttribute("userId"));
if(params.get("orderBy")==null || params.get("orderBy")==""){
params.put("orderBy","id");
}
PageUtils page = xueshengService.queryPage(params);
//字典表数据转换
List list =(List)page.getList();
for(XueshengView c:list){
//修改对应字典表字段
dictionaryService.dictionaryConvert(c, request);
}
return R.ok().put("data", page);
}
3.2 老师功能实现
3.2.1 返校申请管理
图3.5 即为编码实现的返校申请管理界面,老师在该界面中参与审核学生的返校申请信息,查询学生的返校申请信息。

图3.5 返校申请管理界面
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Integer[] ids){
logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());
fanxiaoService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
3.2.2 留言管理
图3.6 即为编码实现的留言管理界面,老师在该界面中查询学生留言,对学生留言进行回复。

图3.6 留言管理界面
3.2.3 新闻信息查看
图3.7 即为编码实现的新闻信息查看界面,老师在该界面中主要是对新闻详情进行查看,同时可以在该界面中查询新闻。

图3.7 新闻信息查看界面
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id, HttpServletRequest request){
logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
NewsEntity news = newsService.selectById(id);
if(news !=null){
//entity转view
NewsView view = new NewsView();
BeanUtils.copyProperties( news , view );//把实体数据重构到view中
//修改对应字典表字段
dictionaryService.dictionaryConvert(view, request);
return R.ok().put("data", view);
}else {
return R.error(511,"查不到数据");
}
}
3.3 学生功能实现
3.3.1 健康打卡管理
图3.8 即为编码实现的健康打卡管理界面,学生在该界面中主要就是新增健康打卡,查看健康打卡详情信息,通过打卡日期筛选健康打卡信息。

图3.8 健康打卡管理界面
3.3.2 返校申请管理
图3.9 即为编码实现的返校申请管理界面,学生在该界面中主要对返校申请的详情进行查看,可以新增返校申请信息,查看提交的返校申请是否通过审核。

图3.9 返校申请管理界面
3.3.3 留言管理
图3.10 即为编码实现的留言管理界面,学生在该界面中可以新增留言,可以查看留言的内容以及回复的内容,该回复信息可以是教师的回复信息,也可以是管理员的回复信息。

图3.10 留言管理界面
542

被折叠的 条评论
为什么被折叠?



