作者主页:Designer 小郑 作者简介:3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN博客专家,阿里云社区专家博主,蓝桥云课讲师。
,T 系列项目源码全部开源,希望给粉丝们带来帮助!
Vue.js+SpringBoot前后端分离新手入门项目《在线办公系统》,包括员工管理模块、邮件管理模块、人事档案模块、公告管理模块和部门角色菜单模块。
在线办公系统是一种基于互联网技术的应用软件,旨在提供便捷、高效的办公环境和协同工作平台。它通常包含了多个模块,涵盖了日常办公所需的各种功能和工具。
在线办公系统的登录模块是系统的核心功能之一,它负责验证用户的身份信息,确保只有授权用户才能访问系统的各项功能和资源,登录模块通过验证用户名和密码,确认用户是否合法注册用户,系统对密码进行了加密存储,以提高安全性。
在线办公系统的员工管理模块是一个用于管理和维护企业员工信息的功能模块。它提供了多种功能,以便企业能够有效地管理员工的信息、组织结构、考勤记录和薪资等。该模块可以记录和管理员工的基本信息,包括姓名、职位、部门、联系方式等。管理员可以根据需要对员工信息进行添加、编辑和删除。通过使用在线办公系统的员工管理模块,企业可以更加高效地管理员工信息,提高组织运作的效率,同时也为员工提供了便捷的自助服务。
在线办公系统的邮件管理模块是企业内部沟通和协作的重要工具之一。它提供了电子邮件功能,用于发送、接收和管理邮件。用户可以通过邮件管理模块发送和接收邮件。可以编写新邮件,选择收件人、添加附件等,并将邮件发送给指定的收件人。同时,用户也可以查看和管理收到的邮件,并进行回复、转发等操作。通过使用在线办公系统的邮件管理模块,企业可以实现高效的内部沟通和协作,提高工作效率,同时也为用户提供了便捷的邮件管理和操作功能。
在线办公系统的人事档案管理模块是用于存储和管理员工的人事信息和相关文档的功能模块。它提供了一个集中管理员工档案的平台,方便企业对员工信息进行存储、维护和查询。该模块可以记录和存储员工的基本信息,包括个人资料、联系方式、教育背景、工作经历等。管理员可以通过系统添加、编辑和删除员工信息,保证员工档案的完整性和准确性。通过使用在线办公系统的人事档案管理模块,企业可以实现员工档案的集中管理和维护,提高人事管理的效率和准确性,同时也为企业提供了便捷的员工信息查询和统计分析功能。
在线办公系统的公告管理模块是系统内的一个功能模块,用于方便管理员发布、管理和展示公告信息。管理员可以使用该模块发布公告,包括标题、内容、生效时间和失效时间等信息。可以选择公告的展示方式,如置顶、定时发布等。通过公告管理模块,管理员可以方便地发布各类通知和公告信息,提醒用户关注重要事项,同时也提供了用户浏览和查找公告的便利性,提高工作效率和信息传达效果。
在线办公系统的部门管理模块是系统内的一个功能模块,用于方便管理员管理和组织公司的部门结构和人员信息。管理员可以使用该模块创建和编辑公司的各个部门,包括部门名称、部门负责人、部门描述等信息。可以设置部门的上级部门,形成层级关系。通过部门管理模块,管理员可以方便地管理和组织公司的部门结构和人员信息,实现部门间的协作和沟通,提高工作效率和管理水平。
在线办公系统的用户管理模块是系统内的一个功能模块,用于方便管理员管理系统的用户账户和权限。管理员可以使用该模块创建和编辑用户账户,包括用户的姓名、用户名、密码、联系方式等信息。可以设置用户的角色和权限,如普通员工、部门负责人、管理员等。通过用户管理模块,管理员可以方便地管理系统的用户账户和权限,确保数据和系统的安全性,同时也提供了用户个人信息的管理和维护的便捷性。
在线办公系统的角色管理模块是系统内的一个功能模块,用于方便管理员管理系统中的角色和权限。管理员可以使用该模块创建和编辑不同的角色,如普通员工、部门负责人、管理员等。可以设置角色的名称、描述和权限。角色管理模块提供权限分配功能,管理员可以根据需要为不同的角色分配相应的权限。权限可以包括系统模块的访问、功能的使用和数据的操作等。通过角色管理模块,管理员可以方便地管理系统中的角色和权限,确保用户拥有适当的权限,提高系统的安全性和管理效率。同时,角色管理模块还可以降低权限分配的复杂性,提供系统的灵活性和可扩展性。
在线办公系统的用户网页端是系统提供给用户在Web浏览器中访问和使用的界面。通过用户网页端,用户可以方便地访问和使用在线办公系统的各项功能,进行任务管理、日程安排、文件管理和协作沟通,提高工作效率和协作效果。同时,用户网页端的界面友好和操作简便,提供了良好的用户体验。
@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();
}
@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();
}
@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));
}