随着我国教育制度的改革的发展,各大高校的学生数量也在不断的增加。当前大学生的生活和消费习惯等导致他们更喜欢通过网络来获取自己想要的商品和服务,这也是导致当前校园跑腿盛行的主要原因。为了能够让更多的学生享受到校园跑腿的服务,我们通过springboot框架开发了本次的基于springboot的校园跑腿管理系统。
用户通过本基于springboot的校园跑腿管理系统的发布订单模块,可以看到其他用户发布的订单信息,在发布订单模块中我们通过图片+任务标题的方式进行展示,用户通过点击图片可以看到任务的详细内容,基于springboot的校园跑腿管理系统任务信息效果如图
基于springboot的校园跑腿管理系统根据实际情况分为前后台两部分,前台部分主要是让用户购物使用的,包括用户的注册登录,查看公告,查看招聘信息,查看配送订单并,对个人注册信息进行管理等功能;后台部分功能主要包括用户信息管理,配送员管理,发布订单管理,接取订单管理,配送订单管理,评价信息管理,招聘信息管理,在线留言,系统管理等功能。通过这些功能基本可以满足一个校园跑腿管理系统的需求。
当用户在上一步中的发布订单中点击了订单任务的图片之后系统会根据参数自动的跳转到发布订单的详细界面中来,在订单详情中可以看到订单的具体内容和悬赏金额等信息,基于springboot的校园跑腿管理系统商品详情界面如图
本系统从用户的角度出发,结合当前的校园环境而开发的,在开发语言上是使用的Java语言,在框架上我们是使用的springboot框架,数据库方面使用的是MySQL数据库,开发工具为IDEA。
基于springboot的校园跑腿管理系统中的管理员+配送+用户都可以在后台登录。在本登录界面中输入账号+密码,并选择角色即可完成登录,同时配送员还可以在本界面中进行注册。基于springboot的校园跑腿管理系统管理员登陆界面如图
基于springboot的校园跑腿管理系统的管理人员登录之后可以对系统内的用户信息进行管理,主要包括对用户信息的增删改查等操作。当有新的用户需要添加的时候基于springboot的校园跑腿管理系统的管理人员输入用户账号+用户昵称+密码+性别+手机+头像等内容之后点击[提交]按钮即可完成对新的用户的添加工作。基于springboot的校园跑腿管理系统景点信息管理界面如图
当用户有需要订单让跑腿来完成的时候,可以发布订单,跑腿人员看到用户发布的订单之后可以接取订单,并进行跑腿
当配送人员截取了用户发布的订单之后,要根据实际情况对订单进行派送并完成
当一个订单完成之后,用户可对该订单进行评价
配送人员在看到用户发布的订单之后,可以根据自己的情况对订单进行接取操作
/*** 登录相关*/
@RequestMapping("users")
@RestController
public class UserController{@Autowiredprivate UserService userService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@PostMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null || !user.getPassword().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@PostMapping(value = "/register")public R register(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用户已存在");}userService.insert(user);return R.ok();}/*** 退出*/@GetMapping(value = "logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null) {return R.error("账号不存在");}user.setPassword("123456");userService.update(user,null);return R.ok("密码已重置为:123456");}/*** 列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/list")public R list( UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();ew.allEq(MPUtil.allEQMapPre( user, "user")); return R.ok().put("data", userService.selectListView(ew));}/*** 信息*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 保存*/@PostMapping("/save")public R save(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用户已存在");}userService.insert(user);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);userService.updateById(user);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){userService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}
目录
摘 要 I
Abstract II
目录 III
第1章 系统概述 1
1.1 研究背景 1
1.2 研究意义 1
1.3研究内容 1
第2章 系统开发环境 3
2.1 Java语言介绍 3
2.2 Springboot介绍 3
2.3 MySQL数据库介绍 3
第3章 需求分析 5
3.1基于springboot的校园跑腿管理系统需求分析 5
3.2 可行性分析 5
3.2.1技术可行性 5
3.2.2经济可行性 6
3.2.3操作可行性 6
第4章 系统概要设计 6
4.1系统结构 6
4.2 数据库ER图设计 7
4.3 数据库设计 11
第5章 系统详细设计 17
5.1 基于springboot的校园跑腿管理系统用户部分设计 17
5.1.1 系统首页 17
5.1.2用户注册登录 17
5.1.3发布订单 19
5.1.4招聘信息 21
5.1.5订单信息管理 23
5.2 基于springboot的校园跑腿管理系统管理员部分设计 25
5.2.1后台登录模块的实现 25
5.2.2 用户信息管理 26
5.2.3配送员管理 27
5.2.4公告信息管理 28
5.2.5招聘信息管理 30
5.3 基于springboot的校园跑腿管理系统配送员部分设计 31
5.3.1接取任务管理 31
5.3.2已接取订单管理 32
5.3.3已配送订单管理 32
5.3.4已评价订单管理 32
第6章系统测试 34
6.1 基于springboot的校园跑腿管理系统的测试目的 34
6.2 基于springboot的校园跑腿管理系统的测试方法 34
6.3 基于springboot的校园跑腿管理系统测试用例 34
第7章 总结 36
致 谢 37
参考文献: 38