系统使用技术:springboot+mybatis
前端技术:layui,js,css等
开发工具:idea
数据库:mysql5.7
项目介绍:
该系统为原创,创作于2021年4月,包含详细数据库设计。基于springboot技术,数据层为MyBatis,mysql数据库,具有完整的业务逻辑。适合于毕业设计、课程设计、数据库大作业等。
数据库设计:
功能详情:
系统管理员: 用户管理:用户信息列表,审核普通管理员和用户 失物信息管理:失物信息列表 拾物信息管理:拾物信息列表 待审核管理: 账号审核 待审核认领列表 待审核归还列表 公告管理:发布(删除)公告 普通管理员: 用户管理:用户信息列表 审核用户注册 失物信息管理:失物信息列表 拾物信息管理:拾物信息列表 待审核管理: 账号审核 待审核认领列表 待审核归还列表 公告管理:发布(删除)公告 用户: 登录,注册(需要审核) 招领社区:拾物信息列表(含查询) 拾物信息发布 查看详情和申请认领 寻物社区: 失物信息列表(含查询) 失物信息发布 查看详情和申请归还 我的认领: 待管理员审核列表:申请认领,申请归还的审核情况 我的发布: 公告管理:发布(删除)公告
部分功能展示:
下面我们来看看部分相关功能。
系统登录:
系统管理员-首页
登录成功后进入首页
系统管理员-普通管理员管理
对普通管理员管理
系统管理员-用户管理
对用户管理
系统管理员-失物信息管理
对失物信息进行管理
系统管理员-拾物信息管理
对拾物信息进行管理
系统管理员-公告管理
发布公告,用户可以查看
用户-首页
查看失物或者拾物信息,以及公告
用户-寻物社区
查看寻物信息,可以归还
用户-招领社区
查看拾物信息,可以认领
用户-我的申请归还/认领
可以归还、认领
用户-我发布的拾物/失物信息
查看自己发布的失物或者拾物信息
部分代码:
/** * 登录 * 将提交数据(username,password)写入Admin对象 */ @RequestMapping(value = "/login") public String login(Admin admin, Model model, HttpSession session, HttpServletRequest request) { if(admin.getType()==null || admin.getType().length()<1){ model.addAttribute("msg", "请选择人员类型!"); return "login"; } Map mp = new HashMap(); if(admin.getType().equals("01")){ if(admin.getUsername()==null || admin.getUsername().length()<=0 ){ model.addAttribute("msg", "请输入登录名!"); return "login"; } if(admin.getPassword()==null || admin.getPassword().length()<1){ model.addAttribute("msg", "请输入密码!"); return "login"; } mp.put("username",admin.getUsername()); mp.put("password",admin.getPassword()); List<Admin> ad = adminService.queryFilter(mp); if(ad!=null && ad.size()==1){ String user_type = ad.get(0).getType(); if(!user_type.equals(admin.getType())){ model.addAttribute("msg", "人员类型错误,请重新登录!"); return "login"; } session.setAttribute("ad", ad.get(0)); session.setAttribute("type", "01"); return "homepage1"; }else{ model.addAttribute("msg", "请确定账户信息是否正确!"); return "login"; } }else if(admin.getType().equals("02")){ if(admin.getUsername()==null || admin.getUsername().length()<=0 ){ model.addAttribute("msg", "请输入登录名!"); return "login"; } if(admin.getPassword()==null || admin.getPassword().length()<1){ model.addAttribute("msg", "请输入密码!"); return "login"; } mp.put("username",admin.getUsername()); mp.put("password",admin.getPassword()); List<Admin> ad = adminService.queryFilter(mp); if(ad!=null && ad.size()==1){ String user_type = ad.get(0).getType(); String status = ad.get(0).getStatus(); if(!user_type.equals(admin.getType())){ model.addAttribute("msg", "人员类型错误,请重新登录!"); return "login"; } if(status.equals("00")){ model.addAttribute("msg", "注册信息未审核,请等待系统管理员审核!"); return "login"; } session.setAttribute("ad", ad.get(0)); session.setAttribute("type", "02"); return "homepage2"; }else{ model.addAttribute("msg", "请确定账户信息是否正确!"); return "login"; } }else if(admin.getType().equals("03")){ if(admin.getUsername()==null || admin.getUsername().length()<=0 ){ model.addAttribute("msg", "请输入学号!"); return "login"; } if(admin.getPassword()==null || admin.getPassword().length()<1){ model.addAttribute("msg", "请输入密码!"); return "login"; } mp.put("idcard",admin.getUsername()); mp.put("password",admin.getPassword()); List<User> ad = userService.queryFilter(mp); if(ad!=null && ad.size()==1) { String status = ad.get(0).getStatus(); if(status.equals("00")){ model.addAttribute("msg", "注册信息未审核,请等待管理员审核!"); return "login"; } if(status.equals("02")){ model.addAttribute("msg", "注册信息审核拒绝,请联系管理员!"); return "login"; } if(status.equals("03")){ model.addAttribute("msg", "账户已冻结,请联系管理员!"); return "login"; } session.setAttribute("ad", ad.get(0)); session.setAttribute("type", "03"); return "homepage3"; }else{ model.addAttribute("msg", "请确定账户信息是否正确!"); return "login"; } }else{ model.addAttribute("msg", "请确定用户类型是否正确!"); return "login"; } } /** * 查询个人信息 */ @RequestMapping(value = "/info") public String info(Admin admin, Model model, HttpServletRequest request) { HttpSession session = request.getSession(); if(session.getAttribute("ad") == null){ session.setAttribute("msg", "对不起,请登录!"); return "login"; } return "queryInfo"; }
以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,比较适合毕业设计和课程设计的相关应用。