Hi,同学们好呀,被评为全网最细的丹成学长ヾ(•ω•`)o,今天带大家复盘一个学长帮往届同学做的一个毕业作品
垃圾分类管理系统的设计与实现
计算机毕设选题大全及项目分享:
https://blog.csdn.net/WEB_DC/article/details/127050650
圾分类管理系统广泛适用于各类垃圾分类居民,垃圾分类物业,以及对整个垃圾分类建设和信息化管理表示关心的群体,个人,组织。
垃圾分类管理开发的目标:本网站系统可以彻底解决手工计算、抄写管理垃圾资料、业主资料、住户资料以及文件档案等操作时数量庞大地难题,也可以有效避免长时间无法即时查询某房产或业主资料的繁琐性,用户也可以根据通过系统查看自己的小区的垃圾,对硬件设置进行保修提交等。随时按照小区名称、垃圾站编号、垃圾类型等多种条件任意查询,减少重复,提高工作效率。
(1) 系统普通用户:用户登录后,可以浏览所有垃圾分类的信息,并且可以查询自己的小区,垃圾信息,投诉等信息。
(2) 系统管理员:主要通过后台来管理本系统所有的功能,具有最高权限,可以对垃圾分类信息增删改查,同时整理用户留言意见。
根据需求调研结果确定本系统主要包括以下功能模块
由于垃圾分类管理系统采用了MVC三层架构开发,运用SSM框架搭建系统,集成SSM框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层。其Spring主要负责业务控制的跳转,MyBatis框架对持久层提供支持,Spring主要对MyBatis和SpringMVC进行管理,所以每层各有自己的分工。表示层为用户提供交互操作界面,方便用户操作,业务逻辑层主要负责关键业务的处理和数据的传递,数据访问层负责对数据的访问。系统架构图如图
用户在主页面点击用户登录按钮,然后跳转到用户登录界面如图4.1所示,输入用户名密码,实现页面的登录。
核心代码
/**
* 登录
*/
@ResponseBody
@RequestMapping(value = "/sys/login", method = RequestMethod.POST)
public R login(String username, String password, String captcha) throws IOException {
// String kaptcha = ShiroUtils.getKaptcha(Constants.KAPTCHA_SESSION_KEY);
// if(!captcha.equalsIgnoreCase(kaptcha)){
// return R.error("验证码不正确");
// }
try {
Subject subject = ShiroUtils.getSubject();
//sha256加密
password = new Sha256Hash(password).toHex();
UsernamePasswordToken token = new UsernamePasswordToken(username, password);
subject.login(token);
} catch (UnknownAccountException e) {
return R.error(e.getMessage());
} catch (IncorrectCredentialsException e) {
return R.error(e.getMessage());
} catch (LockedAccountException e) {
return R.error(e.getMessage());
} catch (AuthenticationException e) {
return R.error("账户验证失败");
}
return R.ok();
}
普通用户查看垃圾分类功能的实现
用户在登录之后,点击垃圾分类功能,然后跳转到垃圾分类列表界面如图所示,选中需要垃圾分类的列,可以查看垃圾分类详情信息,点击提交完成垃圾分类的过程。
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params){
if (super.getUserId() > 1)
params.put("user", super.getUserId());
//查询列表数据
Query query = new Query(params);
List<RecordEntity> recordList = recordService.queryList(query);
int total = recordService.queryTotal(query);
PageUtils pageUtil = new PageUtils(recordList, total, query.getLimit(), query.getPage());
return R.ok().put("page", pageUtil);
}
/**
* 列表
*/
@RequestMapping("/list2")
public R list2(@RequestParam Map<String, Object> params){
Query query = new Query(params);
List<RecordEntity> recordList = recordService.queryList(query);
return R.ok().put("list", recordList );
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
RecordEntity record = recordService.queryObject(id);
return R.ok().put("record", record);
}
管理员管理垃圾分类功能的实现
管理员用户在登录之后,点击垃圾站号,然后跳转到垃圾站号列表如图4.3所示,然后点击绑定垃圾站,界面显示垃圾站号基本信息,点击提交确定按钮的过程如图4.4所示。
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params){
//查询列表数据
Query query = new Query(params);
List<RoomEntity> roomList = roomService.queryList(query);
int total = roomService.queryTotal(query);
PageUtils pageUtil = new PageUtils(roomList, total, query.getLimit(), query.getPage());
return R.ok().put("page", pageUtil);
}
/**
* 列表
*/
@RequestMapping("/list2")
public R list2(@RequestParam Map<String, Object> params){
Query query = new Query(params);
List<RoomEntity> roomList = roomService.queryList(query);
return R.ok().put("list", roomList );
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
RoomEntity room = roomService.queryObject(id);
return R.ok().put("room", room);
}
管理员管理垃圾站功能的实现
管理员用户在登录之后,点击报修管理模块,然后跳转到报修列表界面如图4.5所示,选择需要处理的报修选项,点击确定完成报修的处理的过程。
核心代码
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params){
if (super.getUserId() > 1)
params.put("user", super.getUserId());
//查询列表数据
Query query = new Query(params);
List<FixEntity> fixList = fixService.queryList(query);
int total = fixService.queryTotal(query);
PageUtils pageUtil = new PageUtils(fixList, total, query.getLimit(), query.getPage());
return R.ok().put("page", pageUtil);
}
/**
* 列表
*/
@RequestMapping("/list2")
public R list2(@RequestParam Map<String, Object> params){
Query query = new Query(params);
List<FixEntity> fixList = fixService.queryList(query);
return R.ok().put("list", fixList );
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
FixEntity fix = fixService.queryObject(id);
return R.ok().put("fix", fix);
}
计算机毕设选题大全及项目分享:
https://blog.csdn.net/WEB_DC/article/details/127050650