飞道的博客

基于JAVA SSM springboot实现的抗疫物质信息管理系统(《精品毕设》源码+sql+论文)主要功能:用户、区域、物质类型、物质详情、物质申请和审核以及我的申请和通知公告以及灵活控制菜单权限

143人阅读  评论(0)

主要技术实现:spring、 springmvc、  springboot、springboot security权限框架  mybatis 、 jquery 、 md5 、bootstarp.js  tomcat、器、拦截器等

具体功能模块:用户模块、角色模块、菜单模块、部门模块以及灵活的权限控制,可控制到页面或按钮,满足绝大部分的权限需求

业务模块功能:区域管理、对不同区域的进行管理以及物质发放等、物质类型管理、物质详情管理、物质申请管理、物质审核管理、我的物质申请管理、以及系统通知公告查看等具体功能模块、以及修改密码退出等。

功能截图如下:

登录模块:


  
  1. /**
  2. * .
  3. *
  4. *
  5. *
  6. *
  7. */
  8. package io.renren.modules.sys.controller;
  9. import com.google.code.kaptcha.Constants;
  10. import com.google.code.kaptcha.Producer;
  11. import io.renren.common.utils.R;
  12. import io.renren.modules.sys.shiro.ShiroUtils;
  13. import org.apache.shiro.authc.*;
  14. import org.apache.shiro.subject.Subject;
  15. import org.springframework.beans.factory. annotation.Autowired;
  16. import org.springframework.stereotype.Controller;
  17. import org.springframework.web.bind. annotation.RequestMapping;
  18. import org.springframework.web.bind. annotation.RequestMethod;
  19. import org.springframework.web.bind. annotation.ResponseBody;
  20. import javax.imageio.ImageIO;
  21. import javax.servlet.ServletOutputStream;
  22. import javax.servlet.http.HttpServletResponse;
  23. import java.awt.image.BufferedImage;
  24. import java.io.IOException;
  25. /**
  26. * 登录相关
  27. *
  28. * @author Mark s.com
  29. */
  30. @Controller
  31. public class SysLoginController {
  32. @Autowired
  33. private Producer producer;
  34. @RequestMapping("captcha.jpg")
  35. public void captcha(HttpServletResponse response)throws IOException {
  36. response.setHeader( "Cache-Control", "no-store, no-cache");
  37. response.setContentType( "image/jpeg");
  38. //生成文字验证码
  39. String text = producer.createText();
  40. //生成图片验证码
  41. BufferedImage image = producer.createImage(text);
  42. //保存到shiro session
  43. ShiroUtils.setSessionAttribute(Constants.KAPTCHA_SESSION_KEY, text);
  44. ServletOutputStream out = response.getOutputStream();
  45. ImageIO.write(image, "jpg", out);
  46. }
  47. /**
  48. * 登录
  49. */
  50. @ResponseBody
  51. @RequestMapping(value = "/sys/login", method = RequestMethod.POST)
  52. public R login(String username, String password, String captcha) {
  53. String kaptcha = ShiroUtils.getKaptcha(Constants.KAPTCHA_SESSION_KEY);
  54. if(!captcha.equalsIgnoreCase(kaptcha)){
  55. return R.error( "验证码不正确");
  56. }
  57. try{
  58. Subject subject = ShiroUtils.getSubject();
  59. UsernamePasswordToken token = new UsernamePasswordToken(username, password); //md5+Jiayan
  60. subject.login(token);
  61. } catch (UnknownAccountException e) {
  62. return R.error(e.getMessage());
  63. } catch (IncorrectCredentialsException e) {
  64. return R.error( "账号或密码不正确");
  65. } catch (LockedAccountException e) {
  66. return R.error( "账号已被锁定,请联系管理员");
  67. } catch (AuthenticationException e) {
  68. return R.error( "账户验证失败");
  69. }
  70. return R.ok();
  71. }
  72. /**
  73. * 退出
  74. */
  75. @RequestMapping(value = "logout", method = RequestMethod.GET)
  76. public String logout() {
  77. ShiroUtils.logout();
  78. return "redirect:login.html";
  79. }
  80. }

用户首页超级管理员页面功能:

用户管理:每个模块对应的CRUD功能都是完善的

角色灵活设置权限:

菜单管理:

区域管理:

抗疫物质类型管理:

抗疫物质详情管理;


  
  1. package io.renren.modules.sys.controller;
  2. import io.renren.common.utils.PageUtils;
  3. import io.renren.common.utils.R;
  4. import io.renren.modules.sys.entity.MatterApply;
  5. import io.renren.modules.sys.service.MatterApplyService;
  6. import io.renren.modules.sys.service.impl.MatterApplyServiceImpl;
  7. import org.springframework.beans.factory. annotation.Autowired;
  8. import org.springframework.web.bind. annotation.*;
  9. import java.util.Arrays;
  10. import java.util.Date;
  11. import java.util.Map;
  12. @RestController
  13. @RequestMapping("/sys/matterApply")
  14. public class MatterApplyController extends AbstractController {
  15. @Autowired
  16. private MatterApplyService MatterApplyService;
  17. @Autowired
  18. MatterApplyServiceImpl MatterApplyServiceImpe;
  19. @RequestMapping("/list")
  20. public R list( @RequestParam Map<String, Object> params){
  21. PageUtils page = MatterApplyService.queryPage(params);
  22. return R.ok().put( "page", page);
  23. }
  24. @RequestMapping("/AuditList")
  25. public R AuditList( @RequestParam Map<String, Object> params){
  26. params.put( "applyStu", "未审核");
  27. PageUtils page = MatterApplyService.queryPage(params);
  28. return R.ok().put( "page", page);
  29. }
  30. @RequestMapping("/listByUser")
  31. public R listByUser( @RequestParam Map<String, Object> params){
  32. params.put( "applyUserId",String.valueOf(getUserId()));
  33. PageUtils page = MatterApplyService.queryPage(params);
  34. return R.ok().put( "page", page);
  35. }
  36. @RequestMapping("/info/{id}")
  37. public R info( @PathVariable("id") Long id){
  38. MatterApply matterApply = MatterApplyService.getById(id);
  39. return R.ok().put( "matterApply", matterApply);
  40. }
  41. @RequestMapping("/save")
  42. public R save( @RequestBody MatterApply matterApply){
  43. matterApply.setApplyTime(new Date());
  44. matterApply.setApplyUserId(getUserId());
  45. matterApply.setApplyStu( "未审核");
  46. MatterApplyService.save(matterApply);
  47. return R.ok();
  48. }
  49. @RequestMapping("/update")
  50. public R update( @RequestBody MatterApply matterApply){
  51. MatterApplyService.updateById(matterApply);
  52. return R.ok();
  53. }
  54. @RequestMapping("/delete")
  55. public R delete( @RequestBody Long[] ids){
  56. MatterApplyService.removeByIds(Arrays.asList(ids));
  57. return R.ok();
  58. }
  59. }

用户申请抗疫物质:

管理员审核:

普通用户权限;

数据集设计ER图:


  
  1. CREATE TABLE `NewTable` (
  2. `user_id` bigint( 20) NOT NULL AUTO_INCREMENT ,
  3. `username` varchar( 50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户名' ,
  4. `password` varchar( 100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码' ,
  5. `salt` varchar( 20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '盐' ,
  6. `email` varchar( 100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '邮箱' ,
  7. `mobile` varchar( 100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号' ,
  8. `status` tinyint( 4) NULL DEFAULT NULL COMMENT '状态 0:禁用 1:正常' ,
  9. `dept_id` bigint( 20) NULL DEFAULT NULL COMMENT '部门ID' ,
  10. `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间' ,
  11. PRIMARY KEY ( `user_id`),
  12. UNIQUE INDEX `username` ( `username`) USING BTREE
  13. )
  14. ENGINE= InnoDB
  15. DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_general_ci
  16. COMMENT= '系统用户'
  17. AUTO_INCREMENT= 3
  18. ROW_FORMAT= COMPACT
  19. ;

最后放上我的精美照片镇楼

 

好了、就介绍到这了、这个抗疫物质信息管理系统项目功能比较齐全完善、

适合学生和毕设参考使用、也可以根据要求修改成需要的样子、

有需要的同学可以Q我要代码、作者不易、不免费开源哈望理解哈哈哈。

路过的小伙伴可以一键三连哟。


转载:https://blog.csdn.net/weixin_39709134/article/details/116676268
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场