前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【开源项目】基于Java+Vue+SpringBoot的在线办公系统

【开源项目】基于Java+Vue+SpringBoot的在线办公系统

作者头像
Designer 小郑
发布2024-01-16 09:01:30
3560
发布2024-01-16 09:01:30
举报
文章被收录于专栏:跟着小郑学JAVA跟着小郑学JAVA

作者主页Designer 小郑 作者简介:3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN博客专家,阿里云社区专家博主,蓝桥云课讲师。

\color{red}{项目编号:T001}

,T 系列项目源码全部开源,希望给粉丝们带来帮助!


一、系统介绍

Vue.js+SpringBoot前后端分离新手入门项目《在线办公系统》,包括员工管理模块、邮件管理模块、人事档案模块、公告管理模块和部门角色菜单模块。

在线办公系统是一种基于互联网技术的应用软件,旨在提供便捷、高效的办公环境和协同工作平台。它通常包含了多个模块,涵盖了日常办公所需的各种功能和工具。


二、功能模块

2.1 后台登录界面

在线办公系统的登录模块是系统的核心功能之一,它负责验证用户的身份信息,确保只有授权用户才能访问系统的各项功能和资源,登录模块通过验证用户名和密码,确认用户是否合法注册用户,系统对密码进行了加密存储,以提高安全性。

在这里插入图片描述
在这里插入图片描述

2.2 员工管理模块

在线办公系统的员工管理模块是一个用于管理和维护企业员工信息的功能模块。它提供了多种功能,以便企业能够有效地管理员工的信息、组织结构、考勤记录和薪资等。该模块可以记录和管理员工的基本信息,包括姓名、职位、部门、联系方式等。管理员可以根据需要对员工信息进行添加、编辑和删除。通过使用在线办公系统的员工管理模块,企业可以更加高效地管理员工信息,提高组织运作的效率,同时也为员工提供了便捷的自助服务。

在这里插入图片描述
在这里插入图片描述

2.3 邮件管理模块

在线办公系统的邮件管理模块是企业内部沟通和协作的重要工具之一。它提供了电子邮件功能,用于发送、接收和管理邮件。用户可以通过邮件管理模块发送和接收邮件。可以编写新邮件,选择收件人、添加附件等,并将邮件发送给指定的收件人。同时,用户也可以查看和管理收到的邮件,并进行回复、转发等操作。通过使用在线办公系统的邮件管理模块,企业可以实现高效的内部沟通和协作,提高工作效率,同时也为用户提供了便捷的邮件管理和操作功能。

在这里插入图片描述
在这里插入图片描述

2.4 人事档案管理模块

在线办公系统的人事档案管理模块是用于存储和管理员工的人事信息和相关文档的功能模块。它提供了一个集中管理员工档案的平台,方便企业对员工信息进行存储、维护和查询。该模块可以记录和存储员工的基本信息,包括个人资料、联系方式、教育背景、工作经历等。管理员可以通过系统添加、编辑和删除员工信息,保证员工档案的完整性和准确性。通过使用在线办公系统的人事档案管理模块,企业可以实现员工档案的集中管理和维护,提高人事管理的效率和准确性,同时也为企业提供了便捷的员工信息查询和统计分析功能。

在这里插入图片描述
在这里插入图片描述

2.5 公告管理模块

在线办公系统的公告管理模块是系统内的一个功能模块,用于方便管理员发布、管理和展示公告信息。管理员可以使用该模块发布公告,包括标题、内容、生效时间和失效时间等信息。可以选择公告的展示方式,如置顶、定时发布等。通过公告管理模块,管理员可以方便地发布各类通知和公告信息,提醒用户关注重要事项,同时也提供了用户浏览和查找公告的便利性,提高工作效率和信息传达效果。

在这里插入图片描述
在这里插入图片描述

2.6 部门管理模块

在线办公系统的部门管理模块是系统内的一个功能模块,用于方便管理员管理和组织公司的部门结构和人员信息。管理员可以使用该模块创建和编辑公司的各个部门,包括部门名称、部门负责人、部门描述等信息。可以设置部门的上级部门,形成层级关系。通过部门管理模块,管理员可以方便地管理和组织公司的部门结构和人员信息,实现部门间的协作和沟通,提高工作效率和管理水平。

在这里插入图片描述
在这里插入图片描述

2.7 用户管理模块

在线办公系统的用户管理模块是系统内的一个功能模块,用于方便管理员管理系统的用户账户和权限。管理员可以使用该模块创建和编辑用户账户,包括用户的姓名、用户名、密码、联系方式等信息。可以设置用户的角色和权限,如普通员工、部门负责人、管理员等。通过用户管理模块,管理员可以方便地管理系统的用户账户和权限,确保数据和系统的安全性,同时也提供了用户个人信息的管理和维护的便捷性。

在这里插入图片描述
在这里插入图片描述

2.8 角色管理模块

在线办公系统的角色管理模块是系统内的一个功能模块,用于方便管理员管理系统中的角色和权限。管理员可以使用该模块创建和编辑不同的角色,如普通员工、部门负责人、管理员等。可以设置角色的名称、描述和权限。角色管理模块提供权限分配功能,管理员可以根据需要为不同的角色分配相应的权限。权限可以包括系统模块的访问、功能的使用和数据的操作等。通过角色管理模块,管理员可以方便地管理系统中的角色和权限,确保用户拥有适当的权限,提高系统的安全性和管理效率。同时,角色管理模块还可以降低权限分配的复杂性,提供系统的灵活性和可扩展性。

在这里插入图片描述
在这里插入图片描述

2.9 用户网页端

在线办公系统的用户网页端是系统提供给用户在Web浏览器中访问和使用的界面。通过用户网页端,用户可以方便地访问和使用在线办公系统的各项功能,进行任务管理、日程安排、文件管理和协作沟通,提高工作效率和协作效果。同时,用户网页端的界面友好和操作简便,提供了良好的用户体验。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、核心代码

3.1 保存邮件

代码语言:javascript
复制
@PostMapping
public Result save(@RequestBody Youjian youjian) {
    if (youjian.getId() == null) {
        youjian.setCreatetime(DateUtil.now());
    }
    SimpleMailMessage message = new SimpleMailMessage();
    User user = userService.getById(youjian.getUserid());
    String from = user.getEmail();
    if(StringUtils.isEmpty(from)){
        return Result.error("400","你的账号没有邮箱,不能发送邮件");
    }
    String username = user.getUsername();
    message.setFrom(from);
    message.setTo(youjian.getReceiveemail());
    message.setSubject(youjian.getTitle());
    message.setText(youjian.getContent());
    youjian.setSendemail(user.getEmail());
    try{
        javaMailSender.send(message);
    }catch(Exception e){
        return Result.error("400","请检查你的邮件账号是否正确");
    }
    youjianService.saveOrUpdate(youjian);
    return Result.success();
}

3.2 导出公告消息

代码语言:javascript
复制
@GetMapping("/export")
public void export(HttpServletResponse response) throws Exception {
    // 从数据库查询出所有的数据
    List<Notice> list = noticeService.list();
    // 在内存操作,写出到浏览器
    ExcelWriter writer = ExcelUtil.getWriter(true);

    // 一次性写出list内的对象到excel,使用默认样式,强制输出标题
    writer.write(list, true);

    // 设置浏览器响应的格式
    response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
    String fileName = URLEncoder.encode("Notice信息表", "UTF-8");
    response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");

    ServletOutputStream out = response.getOutputStream();
    writer.flush(out, true);
    out.close();
    writer.close();

    }

3.3 查询部门

代码语言:javascript
复制
@GetMapping("/page")
public Result findPage(@RequestParam(defaultValue = "") String name,
                       @RequestParam Integer pageNum,
                       @RequestParam Integer pageSize) {
    QueryWrapper<Dept> queryWrapper = new QueryWrapper<>();
    queryWrapper.orderByDesc("id");
    if (!"".equals(name)) {
        queryWrapper.like("name", name);
    }
    return Result.success(deptService.page(new Page<>(pageNum, pageSize), queryWrapper));
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-01-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、系统介绍
  • 二、功能模块
    • 2.1 后台登录界面
      • 2.2 员工管理模块
        • 2.3 邮件管理模块
          • 2.4 人事档案管理模块
            • 2.5 公告管理模块
              • 2.6 部门管理模块
                • 2.7 用户管理模块
                  • 2.8 角色管理模块
                    • 2.9 用户网页端
                    • 三、核心代码
                      • 3.1 保存邮件
                        • 3.2 导出公告消息
                          • 3.3 查询部门
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档