基于SpringBoot+Vue的办公管理系统[毕设+源码+部署]

目录

项目简介

基于 SpringBoot+Vue 技术的办公系统,采用 Spring Boot 、Spring Security和Vue等技术,主要为了提升工作效率。它是通过自动化流程的方式,实现工作效率的提高,可以减少劳动力和物资的浪费,在信息共享方面,可以为企业提供一个便捷的信息交流平台,还可以实现对企业员工相关数据的可视化,提高管理效率和决策能力。

技术栈

  • 后端:Spring Boot、Spring Security、Mybatis Plus、MySQL
  • 前端:HTML、CSS、JavaScript、Vue、ECharts 图表库
  • 数据库:MySQL 、非关系型数据库Redis
  • 权限管理:基于 Spring Security 的用户角色权限管理
  • 数据交互:使用 RESTful API 进行前后端数据交互
  • 页面渲染:使用 Vue框架渲染前端页面
  • 图表展示:使用 ECharts 图表库展示员工、部门、薪资等数据

主要功能

  • 权限管理: 权限模块是该系统中的重要功能之一,它涵盖了系统菜单权
    限管理。在其它需要账户和密码登录的系统中也广泛应用。该系统设计的管理员
    角色是拥有最多权限的角色,可以添加角色,修改其他用户的角色和添加角色。

  • 用户管理: 该功能是为管理该系统的相关人员设计的,以便其能够有效地管理整个企业的实际办公需求。管理员可以设置目录的权限,并按照人力资源、角色等方式将权限分配给不同的用户。所有权限的使用都必须由管理员进行授权,而只有在管理员添加用户信息到数据库中之后,用户才能通过输入账号和密码来进行安全登录,并获得相应的操作范围。

  • 角色管理:角色管理是办公系统中的用户角色资源进行合理分配的,包括以下几个方面的功能:添加角色、设置角色、以及对角色进行授权。

  • 员工管理:该功能旨在对员工的个人信息进行维护管理。通过该功能,可以将新入职的员工信息添加到系统中。

  • 采购记录管理: 记录采购操作,包括采购日期、商品信息、采购数量、采购金额等,用于库存管理和供应链分析。

  • 部门管理: 部门管理功能可以对部门的相关信息进行维护和查询。具体而言,系统需要支持部门的录入,部门管理人员可以通过系统录入新的部门。

  • 职位/职称管理: 系统支持职位/职称信息管理,以便管理人员能够
    方便地对职位/职称信息进行维护和查询。

  • 邮件管理:系统支持邮件管理,以方便用户进行邮件发送、接收、存储和管理。用户可以通过系统编写并且发送邮件,邮件的内容包含邮件的主题、接收邮件方、发送邮件方以及正文部分和附件等信息。邮件接收,系统可以通过网络协议自动接收用户的邮件。

  • 员工账套管理:员工账套管理是企业人力资源管理中非常重要的一个方面,系统支持员工的工资账套添加,对应的系统管理/操作人员有在系统中录入员工对应账套信息包括薪资、津贴、社保等信息。

  • 个人中心:个人中心功能支持用户对自己的关键信息的浏览和编辑。其中用户可以浏览的信息有用户昵称、地址、联系号码等。可以对自己的信息进行编辑,其中可以修改头像和昵称等。密码修改,登陆系统后如果有需要,可以更改自己的登录令牌,确保登陆令牌不被盗取。安全验证,当用户更改自己的密码后,系统为了保证用户信息不被泄露,需要在用户更改登陆令牌后退出登陆并跳转到登陆页面,以确保用户身份的合法性。
    ……

项目优势:

  • 提高运营效率:通过自动化的办公管理和数据统计,帮助企业更高效地运营,减少人工操作和错误。

  • 管理方便:管理员能够有效地管理整个企业的实际办公需求,提高管理效率。

  • 决策支持:通过报表和图表展示数据,帮助决策者进行业务分析和战略决策。

主要功能模块图

系统E-R图

在这里插入图片描述

项目截图

系统登录页面
请添加图片描述
系统首页
请添加图片描述
员工资料
请添加图片描述
员工奖惩
请添加图片描述
员工培训
请添加图片描述
员工调动
请添加图片描述
工资账套
请添加图片描述
员工账套
请添加图片描述
综合信息统计
请添加图片描述
部门管理
请添加图片描述
职位管理
请添加图片描述
职称管理
请添加图片描述
权限管理
请添加图片描述
用户管理
请添加图片描述
邮件信息认证
请添加图片描述
邮件信息
请添加图片描述
在线聊天
请添加图片描述
个人中心
请添加图片描述

UserDetailService实现类代码

package com.fish.server.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.fish.server.dao.AdminMapper;
import com.fish.server.dao.RoleMapper;
import com.fish.server.pojo.Admin;
import com.fish.server.pojo.LoginAdmin;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;

import java.util.Objects;

/**
 * 重新实现UserDetailService从数据库查询
 *
 * @Author: Fish
 */
@Service
public class UserDetailsServiceImpl implements UserDetailsService {

    @Autowired
    private AdminMapper adminMapper;
    @Autowired
    private RoleMapper roleMapper;

    /**
     * 根据用户名查询用户信息
     * @param username
     * @return UserDetails
     * @throws UsernameNotFoundException
     */
    @Override
    public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
        //查询用户信息
        LambdaQueryWrapper<Admin> queryWrapper=new LambdaQueryWrapper<>();
        queryWrapper.eq(Admin::getUsername,username);
        Admin admin = adminMapper.selectOne(queryWrapper);
        admin.setRoles(roleMapper.getRolesByUserId(admin.getId()));
        //查询不到,抛出异常
        if (Objects.isNull(admin)){
            throw new RuntimeException("用户名或密码错误");
        }
        //从数据库查询用户相关权限信息
        //将数据封装成UserDetails返回
        return new LoginAdmin(admin);
    }
}


总结

该办公系统,使用了 SpringBoot 以及 Vue 等框架,该项目具体实现了多个模块,系统虽然已经具备较为完善的功能,但在实际应用中仍然需要进一步完善和优化。例如,可以增加员工考勤管理、绩效管理、文件管理、账单报销管理、请假管理、会议室管理等模块,实现更加细致和全面的管理。

联系作者

V:634836927

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值