抗疫物质信息管理系统基于javaSSM springboot实现

网友投稿 270 2022-10-01


抗疫物质信息管理系统基于javaSSM springboot实现

主要功能设计:

用户、区域、物质类型、物质详情、物质申请和审核以及我的申请和通知公告以及灵活控制菜单权限

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

具体功能模块:用户模块、角色模块、菜单模块、部门模块以及灵活的权限控制,可控制到页面或按钮,满足绝大部分的权限需求 业务模块功能:区域管理、对不同区域的进行管理以及物质发放等、物质类型管理、物质详情管理、物质申请管理、物质审核管理、我的物质申请管理、以及系统通知公告查看等具体功能模块、以及修改密码退出等。

功能截图如下:

/**

* .

*

*

*

*

*/

package io.renren.modules.sys.controller;

import com.google.code.kaptcha.Constants;

import com.google.code.kaptcha.Producer;

import io.renren.common.utils.R;

import io.renren.modules.sys.shiro.ShiroUtils;

import org.apache.shiro.authc.*;

import org.apache.shiro.subject.Subject;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.ResponseBody;

import javax.imageio.ImageIO;

import javax.servlet.ServletOutputStream;

import javax.servlet.http.HttpServletResponse;

import java.awt.image.BufferedImage;

import java.io.IOException;

/**

* 登录相关

*

* @author Mark s.com

*/

@Controller

public class SysLoginController {

@Autowired

private Producer producer;

@RequestMapping("captcha.jpg")

public void captcha(HttpServletResponse response)throws IOException {

response.setHeader("Cache-Control", "no-store, no-cache");

response.setContentType("image/jpeg");

//生成文字验证码

String text = producer.createText();

//生成图片验证码

BufferedImage image = producer.createImage(text);

//保存到shiro session

ShiroUtils.setSessionAttribute(Constants.KAPTCHA_SESSION_KEY, text);

ServletOutputStream out = response.getOutputStream();

ImageIO.write(image, "jpg", out);

}

/**

* 登录

*/

@ResponseBody

@RequestMapping(value = "/sys/login", method = RequestMethod.POST)

public R login(String username, String password, String captcha) {

String kaptcha = ShiroUtils.getKaptcha(Constants.KAPTCHA_SESSION_KEY);

if(!captcha.equalsIgnoreCase(kaptcha)){

return R.error("验证码不正确");

}

try{

Subject subject = ShiroUtils.getSubject();

UsernamePasswordToken token = new UsernamePasswordToken(username, password);//md5+Jiayan

subject.login(token);

}catch (UnknownAccountException e) {

return R.error(e.getMessage());

}catch (IncorrectCredentialsException e) {

return R.error("账号或密码不正确");

}catch (LockedAccountException e) {

return R.error("账号已被锁定,请联系管理员");

}catch (AuthenticationException e) {

return R.error("账户验证失败");

}

return R.ok();

}

/**

* 退出

*/

@RequestMapping(value = "logout", method = RequestMethod.GET)

public String logout() {

ShiroUtils.logout();

return "redirect:login.html";

}

}

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

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

角色灵活设置权限:

菜单管理:

区域管理:

抗疫物质类型管理:

抗疫物质详情管理;

package io.renren.modules.sys.controller;

import io.renren.common.utils.PageUtils;

import io.renren.common.utils.R;

import io.renren.modules.sys.entity.MatterApply;

import io.renren.modules.sys.service.MatterApplyService;

import io.renren.modules.sys.service.impl.MatterApplyServiceImpl;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.util.Arrays;

import java.util.Date;

import java.util.Map;

@RestController

@RequestMapping("/sys/matterApply")

public class MatterApplyController extends AbstractController {

@Autowired

private MatterApplyService MatterApplyService;

@Autowired

MatterApplyServiceImpl MatterApplyServiceImpe;

@RequestMapping("/list")

public R list(@RequestParam Map params){

PageUtils page = MatterApplyService.queryPage(params);

return R.ok().put("page", page);

}

@RequestMapping("/AuditList")

public R AuditList(@RequestParam Map params){

params.put("applyStu","未审核");

PageUtils page = MatterApplyService.queryPage(params);

return R.ok().put("page", page);

}

@RequestMapping("/listByUser")

public R listByUser(@RequestParam Map params){

params.put("applyUserId",String.valueOf(getUserId()));

PageUtils page = MatterApplyService.queryPage(params);

return R.ok().put("page", page);

}

@RequestMapping("/info/{id}")

public R info(@PathVariable("id") Long id){

MatterApply matterApply = MatterApplyService.getById(id);

return R.ok().put("matterApply", matterApply);

}

@RequestMapping("/save")

public R save(@RequestBody MatterApply matterApply){

matterApply.setApplyTime(new Date());

matterApply.setApplyUserId(getUserId());

matterApply.setApplyStu("未审核");

MatteAiAECgECnrApplyService.save(matterApply);

return R.ok();

}

AiAECgECn @RequestMapping("/update")

public R update(@RequestBody MatterApply matterApply){

MatterApplyService.updateById(matterApply);

return R.ok();

}

@RequestMapping("/delete")

public R delete(@RequestBody Long[] ids){

MatterApplyService.removeByIds(Arrays.asList(ids));

return R.ok();

}

}

用户申请抗疫物质:

管理员审核:

普通用户权限;

数据集设计ER图:

CREATE TABLE `NewTable` (

`user_id` bigint(20) NOT NULL AUTO_INChttp://REMENT ,

`username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户名' ,

`password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码' ,

`salt` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '盐' ,

`email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '邮箱' ,

`mobile` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号' ,

`status` tinyint(4) NULL DEFAULT NULL COMMENT '状态 0:禁用 1:正常' ,

`dept_id` bigint(20) NULL DEFAULT NULL COMMENT '部门ID' ,

`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间' ,

PRIMARY KEY (`user_id`),

UNIQUE INDEX `username` (`username`) USING BTREE

)

ENGINE=InnoDB

DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_general_ci

COMMENT='系统用户'

AUTO_INCREMENT=3

ROW_FORMAT=COMPACT

;


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:等级保护和风险评估分别是什么意思?有什么联系?(风险评估的等级分为)
下一篇:Zabbix Server Trapper远程代码执行漏洞(CVE-2017-2824)(zabbix怎么读)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~