基于SpringBoot+Vue的教师薪酬管理系统设计和实现(源码+论文+部署讲解等)

博主介绍:✌全网粉丝60W+,csdn特邀作者、Java领域优质创作者、csdn/掘金/哔哩哔哩/知乎/道客/小红书等平台优质作者,计算机毕设实战导师,目前专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌
技术栈范围:SpringBoot、Vue、SSM、Jsp、HLMT、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习、单片机等设计与开发。
主要服务内容:选题定题、开题报告、任务书、程序开发、论文编写和辅导、论文降重、修改润色、论文排版、程序讲解、答辩辅导等,欢迎咨询~
推荐文章👍
2024-2025全网最全计算机软件毕业设计选题大全:不要踩坑了✅
计算机毕业设计不会做怎么办?
👇🏻精彩专栏推荐订阅👇🏻不然下次找不到哟~
Java精品毕设实战案例《1000套》
微信小程序项目实战案例《1000套》
Python网页项目实战案例《100套》
🍅 文末获取源码联系🍅
感兴趣的可以 先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以 给我留言咨询,希望帮助更多的人~

在这里插入图片描述

一、项目介绍

于Spring Boot框架实现的教师薪酬管理系统,系统包含两种角色:管理员、教师主要功能如下。

教师功能

  1. 首页
    • 查看系统首页的最新信息和通知。
  2. 个人中心
    • 修改密码:教师可以更改自己的登录密码。
    • 个人信息:教师可以查看和编辑个人资料。
  3. 公告信息管理
    • 查看公告:教师可以查看系统发布的所有公告信息。
    • 发布公告:教师可以创建新的公告。
  4. 教学质量管理
    • 查看学生评价:教师可以查看学生对教学的评价和反馈。
    • 提交教学计划:教师可以上传和提交自己的教学计划。
  5. 科研管理
    • 查看科研项目:教师可以查看自己参与的科研项目和进展。
  6. 老师考勤管理
    • 查看考勤记录:教师可以查看自己的考勤情况。
    • 请假申请:教师可以提交请假申请。
    • 调课申请:教师可以申请调课。
  7. 薪资管理
    • 查看薪资信息:教师可以查看自己的薪资记录和详情。

管理员功能

  1. 首页
    • 查看管理员首页的概览和重要信息。
  2. 个人中心
    • 修改密码:管理员可以更改自己的登录密码。
    • 个人信息:管理员可以查看和编辑个人资料。
  3. 管理员管理
    • 添加管理员:管理员可以新增系统管理员。
    • 编辑管理员信息:管理员可以修改其他管理员的资料。
  4. 基础数据管理
    • 公告类型管理:管理员可以管理公告的分类。
    • 科研类型管理:管理员可以管理科研项目的分类。
    • 请假类型管理:管理员可以管理请假的分类。
    • 调课申请类型管理:管理员可以管理调课申请的分类。
  5. 公告信息管理
    • 查看公告:管理员可以查看所有发布的公告信息。
    • 发布公告:管理员可以创建新的公告。
  6. 教学质量管理
    • 查看和管理教学质量相关的数据和信息。
  7. 科研管理
    • 管理科研项目和相关信息。
  8. 老师管理
    • 查看老师信息:管理员可以查看所有教师的详细信息。
    • 添加教师:管理员可以新增教师信息。
    • 编辑教师信息:管理员可以修改教师的相关信息。
  9. 老师考勤管理
    • 查看考勤记录:管理员可以查看所有教师的考勤情况。
    • 管理请假申请:管理员可以审核和处理教师的请假申请。
    • 管理调课申请:管理员可以审核和处理教师的调课申请。
  10. 薪资管理
    • 查看薪资信息:管理员可以查看所有教师的薪资记录和详情。
    • 管理薪资发放:管理员可以处理薪资的发放和调整。

二、项目技术

编程语言:Java
数据库:MySQL
项目管理工具:Maven
前端技术:Vue
后端技术:SpringBoot

三、运行环境

操作系统:Windows、macOS都可以
JDK版本:JDK1.8以上都可以
开发工具:IDEA、Ecplise都可以
数据库: MySQL5.7/8.0版本均可
Web应用服务器:7.x、8.x、9.x版本均可
Maven:任意版本都可以

四、运行截图

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

五、代码实现

教师查看和修改个人信息

教师可以在个人中心查看和编辑自己的个人信息,如联系方式和基本资料。同时,教师可以修改登录密码,以保证账户安全。

@RestController
@RequestMapping("/api/teacher")
public class TeacherController {

    @Autowired
    private TeacherService teacherService;

    @GetMapping("/profile")
    public ResponseEntity<Teacher> getTeacherProfile(@AuthenticationPrincipal UserDetails userDetails) {
        Teacher teacher = teacherService.findByUsername(userDetails.getUsername());
        return ResponseEntity.ok(teacher);
    }

 
    @PutMapping("/profile")
    public ResponseEntity<String> updateTeacherProfile(@RequestBody Teacher teacherDetails, @AuthenticationPrincipal UserDetails userDetails) {
        boolean result = teacherService.updateProfile(userDetails.getUsername(), teacherDetails);
        if (result) {
            return ResponseEntity.ok("个人信息更新成功!");
        } else {
            return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("更新失败!");
        }
    }

    @PutMapping("/change-password")
    public ResponseEntity<String> changePassword(@RequestBody PasswordChangeRequest passwordRequest, @AuthenticationPrincipal UserDetails userDetails) {
        boolean result = teacherService.changePassword(userDetails.getUsername(), passwordRequest);
        if (result) {
            return ResponseEntity.ok("密码修改成功!");
        } else {
            return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("密码修改失败!");
        }
    }
}

管理员查看教师薪资信息

管理员可以查看系统中所有教师的薪资信息,了解薪资发放情况及教师的薪资详情。同时,管理员可以通过此功能管理薪资发放。

@RestController
@RequestMapping("/api/admin/salary")
public class SalaryController {

    @Autowired
    private SalaryService salaryService;
    @GetMapping("/all")
    public ResponseEntity<List<Salary>> getAllSalaries() {
        List<Salary> salaries = salaryService.getAllSalaries();
        return ResponseEntity.ok(salaries);
    }

    @GetMapping("/{teacherId}")
    public ResponseEntity<Salary> getSalaryByTeacherId(@PathVariable Long teacherId) {
        Salary salary = salaryService.getSalaryByTeacherId(teacherId);
        return ResponseEntity.ok(salary);
    }

    @PostMapping("/pay/{teacherId}")
    public ResponseEntity<String> paySalary(@PathVariable Long teacherId) {
        boolean result = salaryService.paySalary(teacherId);
        if (result) {
            return ResponseEntity.ok("薪资发放成功!");
        } else {
            return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("薪资发放失败!");
        }
    }
}

教师查看科研项目

教师可以查看自己参与的科研项目,了解项目的进展情况及相关的科研信息。

@RestController
@RequestMapping("/api/teacher/research")
public class ResearchController {

    @Autowired
    private ResearchService researchService;

 
    @GetMapping("/projects")
    public ResponseEntity<List<ResearchProject>> getTeacherProjects(@AuthenticationPrincipal UserDetails userDetails) {
        List<ResearchProject> projects = researchService.getProjectsByTeacher(userDetails.getUsername());
        return ResponseEntity.ok(projects);
    }
}

六、论文文档

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

为什么选择我

博主本身从事开发软件开发、目前是一名在职大厂程序员,熟悉Java、小程序、安卓、Python等编程语言,有丰富的编程能力和水平。2018年至今,已指导上万名学生顺利通过毕业答辩,博主全网累积粉丝超过60W,是csdn特邀作者、Java领域优质创作者、csdn/掘金/哔哩哔哩/知乎/道客/小红书等平台优质作者,专注于大学生项目实战开发,讲解,文章写作,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌

源码获取

下方名片可以联系我哟~
大家点赞 👍 收藏 ⭐评论 📝 查看👇🏻获取联系方式👇🏻

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值