1 Star 0 Fork 20

hxlilei1314 / 绩效系统

forked from 纪一煌 / 绩效系统 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 11.48 KB
一键复制 编辑 原始数据 按行查看 历史
纪一煌 提交于 2023-04-10 09:15 . v1.1

介绍

绩效考评系统

基于JeecgBoot框架的绩效系统

说明

由于公司人员和运营需求增加,引入了考核制度,并需要对考核数据信息化,看了一些开源项目,并没有发现合适的。于是为了满足公司的绩效考核需求,便自己着手设计了一套绩效系统。

JeecgBoot是一款基于BPM的低代码平台,其中的部门管理和用户管理能满足公司的人员架构,为了节省成本和缩短项目周期,便直接在原基础上进行了设计开发。

链接地址

系统需求

  • JDK >= 1.8
  • MySQL >= 5.7
  • Maven >= 3.0

环境部署

准备工作

JDK >= 1.8 (推荐1.8版本)
MySQL >= 5.7 (推荐1.8版本)
Maven >= 3.0
Redis >= 3.2.100
node.jd >= 16.9.0
npm >= 7.21.1
yarn >= 1.22.19

运行系统

  1. 拉取代码到本地。

  2. 先打开redis服务,Windows双击运行redis-server.exe即可。

  3. 使用IDEA打开项目 -> File -> Open File or Project -> 选中项目根目录,即achiev文件夹,等待IDEA自动加载完Maven依赖,初次加载会比较慢。

  4. 创建数据库achiev并导入数据库脚本nanli_achiev.sql。

  5. 运行achiev.jeecg-boot.jeecg-boot-module-system.src.main.java.org.jeecg.JeecgSystemApplication.java,出现如下图表示启动成功。

    注意

    后续所有项目只指achiev.jeecg-boot.jeecg-boot-module-system项目包,其他包为框架自带的,不做业务代码。

    管理员账号为:admin

    所有账号的默认密码均为:123456

    ----------------------------------------------------------
    	Application Jeecg-Boot is running! Access URLs:
    	Local: 		http://localhost:7081/nanli/
    	External: 	http://192.168.2.180:7081/nanli/
    	Swagger文档: 	http://192.168.2.180:7081/nanli/doc.html
    ----------------------------------------------------------
  6. 修改ant-design-vue-jeecg/.env.development文件内的ip地址为本机的ip地址

    image-20230410091127255

  7. 在IDEA目录栏里右键achiev目录下的ant-design-vue-jeecg文件夹 -> 鼠标移动至Open In -> 点击Terminal, 打开命令提示符 -> 输入npm i -g yarn全局安装yarn -> 输入yarn install下载依赖 -> 输入yarn run serve运行前端页面,出现如下图表示启动成功。

      App running at:
      - Local:   http://localhost:3000/
      - Network: http://192.168.2.180:3000/
    
      Note that the development build is not optimized.
      To create a production build, run npm run build.
  8. 访问地址

    前端:   http://localhost:3000/
    API:   http://localhost:7081/nanli/

必要配置

  • 修改数据库连接,编辑resources目录下的application-dev.yml

    # 数据源配置
    spring:
        datasource:
            master:
              url: 数据库地址
              username: 数据库账号
              password: 数据库密码
  • 修改服务器配置,编辑resources目录下的application.yml

    spring:
      application:
        name: 服务名
      profiles:
        active: 运行环境 dev 或 prod
    # 端口在对应环境的server.port进行修改

项目介绍

image-20230130173431083

主要文件结构

jeecg-boot-module-system.src.main.java.org.jeecg
├── modules
│    └── achievscheme			// 方案总表
│    └── schemecontent			// 方案内容
│    └── schemedescription		// 方案描述内容
│    └── schemeappraiser		// 方案考评人
│    └── achievassess			// 考评总表
│    └── assesscontent			// 考评描述内容
│    └── assessscore			// 考评分数
│    └── quartz					// 定时任务
│    └── system					// 用户,部门,角色,权限等...

考评方案

方案的模板样式以方案名被考评人考评内容分值程度描述考评人完成率内容完成率描述完成率考评人合并实现。

考核内容: 相同名称的考核内容会在生成方案时自动合并, 以此来实现相同考核内容里不同条目可以有不同考评人的情况

  1. 同一个考核内容里有不同条目, 且归不同人考评

    image-20230407114631890

    image-20230407114551164

  2. 同一个考评内容里有不同条目, 但都归一个人考评

    image-20230407114925752

    image-20230407115111491


程度描述:可以实现两种格式的程度描述, 一个考评内容可以拥有多个填空式的描述多个文本式的描述

  1. 填空式描述(会根据完成率自动计算分值, 考评人只需要考评项目完成数量即可):

    30 本月需完成项目数量:xx,已完成项目数量:xx,完成率:xx%。
    ... ...
  2. 文本式描述(多个考评人评分互相独立, 最终取均分进行结算):

    25-30 客户高度赞扬(无投诉、有收到客户认可或表扬信息),工作严谨。
    20-25 客户满意(无投诉、或投诉与表扬相抵),工作纰漏率小于20%。
    10-20 客户基本满意(投诉率低于30%),工作纰漏率在20%-40%。
    0-10 客户极其不满意(投诉率高于20%),工作纰漏率大于40%。
    ... ...

考评人:可以实现一个或者多个, 特殊考评或指定考评人,每个考评人单独评分,最终取均分结算

  • 特殊考评人:领导本部门其他人员

完成率:可以根据不同的需求,实现不同的完成率百分比描述,如出勤率业绩完成率等,也可以不使用完成率模块

  1. 出勤率 **本月应出勤天数:xx, 实际出勤天数(含加班):xx,出勤率:xx% ** 人事总监
  2. 业绩完成率 本月需完成业绩额度:xx, 实际完成额度:xx,完成率:xx% 市场总监

方案编辑

image-20230216102655098

image-20230216102818181

绩效模板

  1. image-20230129152909444


  2. image-20230129152824680


  3. image-20230129152726365

分数计算

考核内容最后括号内的数字为该项的分数最高值, 考评人评分时分数不可超过该值

  1. 单条考核内容由单个人评分,该考评人的分值即是该内容的分值

    image-20230407142536976

  2. 单条考核内容由多个人评分,以已评分的人的均分作为该内容的分值

    image-20230407142855210

  3. 单条考核内容由单个人评分,且是填空的百分比形式,则以最终完成率和分数上限进行计算,如30 * 80% = 24分

    image-20230407143036598

  4. 单条考核内容由单个人评分,且是填空的百分比形式,但同时有不同的条目,则会以各各条目对应的分值和该条目的完成率进行计算,最终取各个条目的分数总和作为该内容的分值

    image-20230407144319693

  5. 多条相同名字的考核内容在评分时会被合并,计算是会取每条考核内容里对应的最终分数相加然后自动取均分

    image-20230407144817633

    image-20230407145053115

  6. 评分制得分合计,总和每条考核内容最终的均分得出评分制得分的总分

    image-20230407164735532

  7. 最终总分,由 评分制得分合计*考评达标率 得出最终总分,如果考评方案里没有设置考评完成率,则直接以评分制得分合计作为最终分数

    image-20230407164956714

功能介绍

用户管理

新增用户并分配角色部门

image-20230216102358207

编辑页

image-20230216103520517

角色管理

新增角色并分配角色权限

  • 新增角色image-20230130154940716

  • 分配权限image-20230130154904243

部门管理

新增部门并处理对应上下级关系,并且可以对部门设置考评表,一个部门或一个岗位只能对应一个考评表

image-20230130154546279

详情页

image-20230216105310857

方案管理

高层角色可以在此处添加编辑考评方案表,考评方案不具体跟某个人绑定,而是跟一整个部门进行绑定,可以对部门人员进行细化方便分类,新增的考评方案可以在部门管理处进行分配

image-20230216100730916

编辑页

image-20230216100843764

考评管理

全部的考评

高层角色可在此处查询所有员工的考评数据,但无法在此处进行修改

image-20230216101457659

详情页

image-20230216101541363

自己的考评

所有的角色都可以在此处查询自己的考评数据,如考评表,考评人,均分,总分等信息

image-20230216101707408

负责的考评

所有的角色都可以在此处查询需要被自己评分的考评数据

image-20230216101749491

编辑页

image-20230216101904008

考勤与完成率

人事或总监等有权限的角色可以在此处查询自己需要评分的完成率数据

image-20230216102154289

编辑页

image-20230216102224870

更多管理

更多管理内有结算按钮, 当拥有人事权限的角色点击该按钮时, 上月的考评数据将会被结算, 无法编辑, 并且自动填充没有一人考评的考评内容数据为满分, 然后会生成当月的数据供下个月进行考评

image-20230407115416377

简单流程

image-20230216114949536

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/hxlilei1314/achiev.git
git@gitee.com:hxlilei1314/achiev.git
hxlilei1314
achiev
绩效系统
master

搜索帮助