java基于springboot+vue的在线文档管理系统 nodejs 前后端分离

随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。
在线文档管理系统,主要的模块包括查看首页、个人中心、公告信息管理、部门信息管理、岗位管理、员工管理、文档信息管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。
java基于springboot+vue的在线文档管理系统 nodejs 前后端分离_第1张图片
管理员登录,管理员通过输入用户名、密码、选择角色等信息,然后点击登录就能登录到系统进行系统的使用了

环境需要
1.运行环境:最好是java jdk 1.8,这是目前最稳定的JDK也是被使用最多的JDK版本。
2.IDE环境:IDEA,Eclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat7/Tomcat8/Tomcat9版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:是;
技术栈
后端:Spring+SpringMVC+Mybatis+Springboot
前端:vue+CSS+JavaScript+jQuery+elementui
java基于springboot+vue的在线文档管理系统 nodejs 前后端分离_第2张图片
随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对在线文档管理方面的要求也在不断提高,在线文档管理的数量更是不断增加,使得在线文档管理系统的开发成为必需而且紧迫的事情。在线文档管理系统主要是借助计算机,通过对在线文档管理系统所需的信息管理,增加用户选择,同时也方便对在线文档信息的及时查询、修改以及对文档信息的及时了解。在线文档管理系统对用户带来了更多的便利, 该系统通过和数据库管理系统软件协作来满足用户的需求。
java基于springboot+vue的在线文档管理系统 nodejs 前后端分离_第3张图片
管理员登录进入在线文档管理系统之后,就可以对所有的信息进行查看,可以查看到首页、个人中心、公告信息管理、部门信息管理、岗位管理、员工管理、文档信息管理等,并且还可以对其进行相应的操作管理,
java基于springboot+vue的在线文档管理系统 nodejs 前后端分离_第4张图片
文档信息管理,在文档信息管理页面中可以对索引、文档名称、类型、文档介绍、附件、发布日期等信息进行详情,修改或删除等操作
java基于springboot+vue的在线文档管理系统 nodejs 前后端分离_第5张图片


/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private 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();
    }
}

摘 要 1
1 系统概述 4
1.1 概述 4
1.2课题意义 4
1.3 主要内容 4
2 系统开发环境 5
2.1 Spring Boot框架 5
2.2 Java技术介绍 5
2.3访问数据库实现方法 6
2.4系统对MySQL数据库的两种连接方式 6
2.5 MySql数据库 7
2.6 B/S结构 7
3 需求分析 9
3.1技术可行性:技术背景 9
3.2经济可行性 9
3.3操作可行性 10
3.4系统设计规则 10
3.5系统流程和逻辑 10
4系统概要设计 14
4.1概述 14
4.2系统结构 14
4.3数据库设计 15
4.3.1 数据库实体 15
4.3.2 数据库设计表 16
5 系统详细设计 20
5.1管理员功能模块 20
5.2 员工功能模块 22
6 系统测试 25
6.1系统测试的目的 25
6.2系统测试方法 25
6.3 测试结果 26
结论 27
致 谢 28
参考文献 29

你可能感兴趣的:(spring,boot,vue.js,node.js,elementui,java)