(免费分享)springboot人事管理系统

基础环境:

1. JDK:1.8

2. MySQL:5.7

3. Maven3.0

1. 核心框架:Spring Boot 2.2.13.RELEASE

2. ORM框架:MyBatisPlus 3.1.2

3. 数据库连接池:Druid 1.2.8

4. 安全框架:Apache Shiro 1.8.0

5. 日志:SLF4J ,Log4j

6. 前端框架:VUE2.2.6,LayUI,Ztree,jQuery,Bootstrap

# 人事管理系统

## 一、系统介绍

本系统为人事管理系统,系统分为七大模块:绩效考核,招聘管理,档案管理,工资管理,考勤管理,培训管理,系统管理。

可满足小企业日常办公。本系统最大特色是有强大和灵活的权限控制功能,所有菜单,按钮功能均可由管理通过配置来控制。

系统默认有四个角色:管理员,财务专员,人事专员,普通用户

- 管理员(admin/admin):可以操作所有功能

- 财务专员(cw/cw):可查看工资管理,考勤管理,培训管理等内容

- 人事专员(rs/rs):可查看和管理招聘管理,档案管理,培训管理等内容

- 普通用户(wdc/wdc):只可查看工资,打卡考勤,参加培训等

所有功能介绍

### 1.绩效考核

绩效考核目前只做了简单的考核设置,后期可扩展更多功能与工资和培训挂钩。后期会从以下几个方面扩展:

1. 季度考核不达标需要参加培训;

2. 考核不达标影响绩效;

3. 在公司做培训增加绩效;

### 2.招聘管理

招聘管理子模块:招聘需求和面试计划。招聘需求是为各个部门需要人才时到招聘需求申请,申请成功后,由人事部门和招聘部门协商面试时间添加面试计划,并跟踪面试结果。

#### (1)招聘需求

可由人事部门或有招聘需求部门填写招聘需求。

#### (2)面试计划

人事专员看到各个部门的招聘需求后,联系候选人并和用人部门协商面试时间,并将面试计划提交,等面试结束再将面试结果同步到系统。招聘结束后结束流程。

### 3.档案管理

档案管理子模块:员工档案和合同管理。

#### (1)员工档案

员工档案是“系统管理-账号管理”的延伸,即“系统管理-账号管理”是系统的登录账号信息,而员工档案是对账号信息的补充。必须由管理员先创建好账户,才能添加员工档案

#### (2)合同档案

公司商业合同管理

### 4.工资管理

工资管理目前有工资查询子模块。普通用户可查看自己工资记录,财务专员可增加员工工资记录。

### 5.考勤管理

考勤管理目前有出勤记录子模块。普通用户可每日打卡,查看出勤记录,后期可扩展与工资计算挂钩。

### 6.培训管理

培训管理子模块:个人计划,工作日报,转正申请和工作日报。

#### (1)个人计划

员工可写当日工作计划

#### (2)工作日报

员工可写当日工作日报

#### (3)转正申请

员工到了转正日期可申请转正由其领导进行审批。后期可与工资和绩效挂钩进行扩展,扩展内容如下:

1. 转正前工资按合同80%计算,转正后100%;

2. 转正后绩效不达标则绩效奖金按百分比算

#### (4)培训计划

可添加新员工培训计划,新技能培训计划,新业务培训计划,后期可扩展会议室管理功能

### 7.系统管理

系统管理子模块:员工管理,部门管理,角色管理,菜单管理和字典管理。

#### (1)账号管理

可为新员工增加系统登录账号,为离职员工删除账号。后期可扩展员工忘记密码后,重置密码功能,通常只有人事专员和管理员可用

#### (2)部门管理

可增加新部门或新成立子公司,通常只有管理员和高级管理领导可用

#### (3)角色管理

可新增角色,并为角色赋予相应权限,如招聘专员只能操作系统管理模块以外的其他模块功能,从财务专员只能进行工资记录添加等,通常只有管理员和高级管理领导可用

#### (4)菜单管理

管理系统左侧的菜单树,只有管理员可用

#### (5)字典管理

管理系统常用字典值,只有管理员可用

免费领取下载链接-关注底部gongzhonghao:032
/**
 * 
 *
 * 
 *
 * 
 */

package com.person.modules.person.controller;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.person.common.annotation.SysLog;
import com.person.common.utils.DateUtils;
import com.person.common.utils.PageUtils;
import com.person.common.utils.R;
import com.person.common.validator.ValidatorUtils;
import com.person.modules.person.entity.SalaryRecordEntity;
import com.person.modules.person.entity.UserDocEntity;
import com.person.modules.person.service.UserDocService;
import com.person.modules.sys.controller.AbstractController;
import org.apache.commons.lang.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

import java.util.Map;

/**
 * 员工档案
 *
 * @author 
 */
@RestController
@RequestMapping("/person/doc")
public class UserDocController  extends AbstractController {
    @Autowired
    private UserDocService userDocService;

    /**
     * 所有员工档案列表
     */
    @RequestMapping("/list")
    @RequiresPermissions("person:doc:list")
    public R list(@RequestParam Map<String, Object> params){
        PageUtils page = userDocService.queryPage(params);

        return R.ok().put("page", page);
    }


    /**
     * 员工档案信息
     */
    @RequestMapping("/info/{id}")
    @RequiresPermissions("person:doc:info")
    @ResponseBody
    public R info(@PathVariable("id") Long id){
        UserDocEntity doc = userDocService.getById(id);

        return R.ok().put("doc", doc);
    }

    /**
     * 保存员工档案
     */
    @SysLog("保存员工档案")
    @RequestMapping("/save")
    @RequiresPermissions("person:doc:save")
    public R save(@RequestBody UserDocEntity doc){
        ValidatorUtils.validateEntity(doc);
        doc.setCreateTime(DateUtils.currentTimeFormat() );
        //查询是否已存在
        UserDocEntity d = new UserDocEntity();
        d.setUserId(doc.getUserId());
        QueryWrapper q = new QueryWrapper();
        q.setEntity(d);
        UserDocEntity one = userDocService.getOne(q);
        if (null != one) {
            return R.error( "该员工已有档案,请勿重复添加");
        }
        doc.setUserNo(StringUtils.leftPad(doc.getUserId().toString(),4,"0"));
        userDocService.save(doc);
        return R.ok();
    }

    /**
     * 修改员工档案
     */
    @SysLog("修改员工档案")
    @RequestMapping("/update")
    @RequiresPermissions("person:doc:update")
    public R update(@RequestBody UserDocEntity doc){
        ValidatorUtils.validateEntity(doc);
        userDocService.update(doc);
        return R.ok();
    }

    /**
     * 删除员工档案
     */
    @SysLog("删除员工档案")
    @RequestMapping("/delete")
    @RequiresPermissions("person:doc:delete")
    public R delete(@RequestBody Long[] ids){
        userDocService.deleteBatch(ids);
        return R.ok();
    }

}
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值