DROP TABLE IF EXISTS `user_info`; CREATE TABLE `user_info` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `username` varchar(50) NOT NULL COMMENT '用户名', `realname` varchar(50) NOT NULL COMMENT '姓名', `passwd` varchar(50) NOT NULL COMMENT '密码', `domain_account` varchar(50) COMMENT '域帐号', `email` varchar(50) COMMENT '邮箱', `phone` varchar(50) COMMENT '手机号', `status` int(10) DEFAULT '1' COMMENT '状态 代码取值:1-有效 0-无效', `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `user_leader`; CREATE TABLE `user_leader` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `user_id` bigint(20) unsigned NOT NULL COMMENT '用户id', `owner_id` bigint(20) unsigned NOT NULL COMMENT '业务owner id', `leader_id` bigint(20) unsigned NOT NULL COMMENT '职能leader id', `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `user_role`; CREATE TABLE `user_role` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `user_id` bigint(20) unsigned NOT NULL COMMENT '用户id', `role_id` int(10) DEFAULT '10' COMMENT '角色,10:普通职员,20:职能leader,30:业务owner,40:职能leader&业务owner,50:高级管理角色', `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `kpi_info`; CREATE TABLE `kpi_info` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `item` varchar(50) NOT NULL COMMENT 'kpi考核项', `weight` double NOT NULL COMMENT 'kpi权重', `summary` varchar(300) NOT NULL COMMENT 'kpi指标说明', `status` int(10) DEFAULT '1' COMMENT '状态 代码取值:1-有效 0-无效', `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `appraisal_record_main`; CREATE TABLE `appraisal_record_main` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `user_id` bigint(20) unsigned NOT NULL COMMENT '用户id', `record_year` varchar(10) NOT NULL COMMENT '考核年份', `record_month` varchar(10) NOT NULL COMMENT '考核月份', `self_score` double NOT NULL COMMENT '自评分', `owner_id` bigint(20) unsigned NOT NULL COMMENT '业务owner id', `owner_score` double NOT NULL COMMENT '业务owner评分', `leader_id` bigint(20) unsigned NOT NULL COMMENT '职能leader id', `leader_score` double NOT NULL COMMENT '职能leader评分', `overall_evaluation` varchar(300) NOT NULL COMMENT '综合评价', `status` int(10) DEFAULT '1' COMMENT '流程状态码:0:未提交,1:未审核,2:未审批,3:已完成', `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `appraisal_record_detail`; CREATE TABLE `appraisal_record_detail` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `record_id` bigint(20) unsigned NOT NULL COMMENT '考核记录主表id', `user_id` bigint(20) unsigned NOT NULL COMMENT '用户id', `kpi_id` bigint(20) unsigned NOT NULL COMMENT 'kpi考核项id', `item` varchar(50) NOT NULL COMMENT 'kpi考核项', `weight` double NOT NULL COMMENT 'kpi权重', `summary` varchar(300) NOT NULL COMMENT 'kpi指标说明', `record_year` varchar(10) NOT NULL COMMENT '考核年份', `record_month` varchar(10) NOT NULL COMMENT '考核月份', `self_single_score` double NOT NULL COMMENT '单项自评分', `self_evaluation` varchar(300) NOT NULL COMMENT '单项自我评价', `owner_single_score` double NOT NULL COMMENT '单项业务owner评分', `owner_evaluation` varchar(300) NOT NULL COMMENT '单项业务owner评价', `leader_single_score` double NOT NULL COMMENT '单项职能leader评分', `leader_evaluation` varchar(300) NOT NULL COMMENT '单项职能leader评价', `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
接口规范
测试自研项目-绩效系统-技术方案
· 需求
· 接口概述
· 接口一览
· 接口详设
o 标准返回
o 登录接口:/bumblebee/login
o 登出接口:/bumblebee/logout
o 个人信息:/bumblebee/user
o 下属信息:/bumblebee/user/subordinates
o 获取用户考核记录:/bumblebee/user/appraisalRecords
o 获取考核项:/bumblebee/kpiItems
o 保存绩效考核信息:/bumblebee/appraisalRecord/save
o 获取绩效考核信息详情:/bumblebee/appraisalRecord
o 提交绩效考核信息:/bumblebee/appraisalRecord/submit
o 业务owner审核考核信息:/bumblebee/appraisalRecord/ownerAudit
o 职能leader审核考核信息:/bumblebee/appraisalRecord/leaderAudit
o 查询待办:/bumblebee/appraisalRecords/query/toDoList
o 查询已办:/bumblebee/appraisalRecords/query/doneList
o 综合查询:/bumblebee/appraisalRecords/query/all
· 数据库设计
o 用户信息user_info
o 用户关系表user_leader
o 用户角色表user_role
o kpi信息表kpi_info
o 绩效考核记录表appraisal_record_detail
o 绩效考核主表appraisal_record_main
需求
接口概述
请求方式:http
安全校验:暂无
返回格式:JSON
接口一览
接口名称 |
接口路径 |
类型 |
说明 |
登录接口 |
/bumblebee/login |
POST |
用户登录 |
登出接口 |
/bumblebee/logout |
POST |
用户登出 |
个人信息 |
/bumblebee/user |
POST |
获取用户信息,包括对应owner、leader信息 |
下属信息 |
/bumblebee/user/subordinates |
POST |
获取用户对应角色的下属 |
获取用户考核记录 |
/bumblebee/user/appraisalRecords |
POST |
获取当前用户所有考核记录 |
获取考核项 |
/bumblebee/kpiItems |
POST |
获取kpi考核考核项 |
保存考核 |
/bumblebee/appraisalRecord/save |
POST |
个人保存考核信息 |
获取考核详情 |
/bumblebee/appraisalRecord |
POST |
获取考核信息详情 |
提交考核 |
/bumblebee/appraisalRecord/submit |
POST |
个人提交考核信息 |
业务owner审核 |
/bumblebee/appraisalRecord/ownerAudit |
POST |
业务owner审核 |
职能leader审核 |
/bumblebee/appraisalRecord/leaderAudit |
POST |
职能leader审核 |
查询代办 |
/bumblebee/appraisalRecords/query/todoList |
POST |
查询当前代办的考核记录 |
查询已办 |
/bumblebee/appraisalRecords/query/doneList |
POST |
查询当前已办的考核记录 |
综合查询 |
/bumblebee/appraisalRecords/query/all |
POST |
查询系统所有用户的所有考核记录 |
|
|
|
|
接口详设
标准返回
格式:JSON
系统接口采用统一的返回格式封装,标准格式如下:
参数名 |
类型 |
描述 |
code |
响应代码 |
|
msg |
响应信息 |
|
data |
数据实体 |
根据业务封装了不同的数据实体 |
样例:
返回样例
{"code": 0,"msg": "成功","data": [{"id": 1,"username": "zhangsan","name": "tester"}]}
以下接口返回参数部分,仅说明data部分。
code&msg参加表
登录接口:/bumblebee/login
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
username |
String |
是 |
用户名 |
password |
String |
是 |
密码 |
返回类型:
参数名 |
类型 |
是否必填 |
描述 |
status |
booleam |
是 |
0:登录成功 |
登出接口:/bumblebee/logout
接口类型:HTTP POST
返回类型:
参数名 |
类型 |
是否必填 |
描述 |
status |
booleam |
是 |
1:登出成功 |
个人信息:/bumblebee/user
接口类型:HTTP POST
返回类型:
参数名 |
类型 |
是否必填 |
描述 |
userid |
String |
是 |
用户id |
name |
String |
是 |
用户姓名 |
owner_id |
String |
是 |
业务owner id |
owner |
String |
是 |
业务owner姓名 |
leader_id |
String |
是 |
职能leader id |
leader |
String |
是 |
职能leader姓名 |
role |
int |
是 |
角色,10:普通职员,20:职能leader,30:业务owner,40:职能leader&业务owner,50:高级管理角色 |
下属信息:/bumblebee/user/subordinates
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
role |
int |
是 |
20:业务owner,30:职能leader,40:两者皆有 |
返回类型:
参数名 |
类型 |
是否必填 |
描述 |
userid |
String |
是 |
用户id |
subordinates |
list |
是 |
下属集合 |
subordinates list
参数名 |
类型 |
是否必填 |
描述 |
userId |
String |
是 |
下属用户id |
name |
String |
是 |
下属姓名 |
获取用户考核记录:/bumblebee/user/appraisalRecords
接口类型:HTTP POST
返回类型:
record list
参数名 |
类型 |
是否必填 |
描述 |
recordId |
String |
是 |
考核记录id |
recordYear |
String |
是 |
考评年份 |
recordMonth |
String |
是 |
靠谱月份 |
status |
String |
是 |
流程状态 |
获取考核项:/bumblebee/kpiItems
接口类型:HTTP POST
返回类型:
record list
参数名 |
类型 |
是否必填 |
描述 |
id |
String |
是 |
考核项id |
item |
String |
是 |
kpi考核项 |
weight |
String |
是 |
kpi权重 |
summary |
String |
是 |
kpi指标说明 |
保存绩效考核信息:/bumblebee/appraisalRecord/save
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
records |
list |
是 |
kpi考核记录list |
record list
参数名 |
类型 |
是否必填 |
描述 |
kpiId |
String |
是 |
考核项id |
selfScore |
String |
是 |
月度自评分 |
selfEval |
String |
否 |
月度自我评价 |
获取绩效考核信息详情:/bumblebee/appraisalRecord
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
userId |
String |
是 |
被考核用户id |
返回类型
参数名 |
类型 |
是否必填 |
描述 |
recordId |
String |
是 |
考核记录id |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
name |
String |
是 |
被考核人姓名 |
selfScore |
String |
是 |
被考核人自评分 |
owner |
String |
是 |
业务owner姓名 |
ownerScore |
String |
是 |
业务owner评分 |
leader |
String |
是 |
职能leader姓名 |
leaderScore |
String |
是 |
职能leader评分 |
details |
list |
|
考核项详情列表 |
record_detail_list
参数名 |
类型 |
是否必填 |
描述 |
record_id |
String |
是 |
考核项id |
user_id |
String |
是 |
月度自评分 |
kpi_id |
String |
是 |
kpi考核项id |
kpi_item |
String |
是 |
kpi考核项 |
kpi_weight |
String |
是 |
kpi权重 |
kpi_summary |
String |
是 |
kpi指标说明 |
record_year |
String |
是 |
考核年份 |
record_month |
String |
是 |
考核月份 |
self_single_score |
String |
否 |
自评分 |
self_evaluation |
String |
否 |
月度自我评价 |
owner_single_score |
String |
否 |
业务owner评分 |
owner_evaluation |
String |
否 |
业务owner评价 |
leader_single_score |
String |
否 |
职能leader评分 |
leader_evaluation |
String |
否 |
职能leader评价 |
提交绩效考核信息:/bumblebee/appraisalRecord/submit
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
records |
list |
是 |
kpi考核记录list |
record list
参数名 |
类型 |
是否必填 |
描述 |
kpiId |
String |
是 |
考核项id |
selfScore |
String |
是 |
月度自评分 |
selfEval |
String |
否 |
月度自我评价 |
业务owner审核考核信息:/bumblebee/appraisalRecord/ownerAudit
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
records |
list |
是 |
kpi考核记录list |
record list
参数名 |
类型 |
是否必填 |
描述 |
kpiId |
String |
是 |
考核项id |
ownerScore |
String |
是 |
业务owner评分 |
ownerEval |
String |
否 |
业务owner评价 |
职能leader审核考核信息:/bumblebee/appraisalRecord/leaderAudit
接口类型:HTTP POST
请求参数:
参数名 |
类型 |
是否必填 |
描述 |
record_year |
String |
是 |
自评年份 |
record_month |
String |
是 |
自评月份 |
records |
list |
是 |
kpi考核记录list |
record list
参数名 |
类型 |
是否必填 |
描述 |
kpiId |
String |
是 |
考核项id |
leaderScore |
String |
是 |
职能leader评分 |
leaderEval |
String |
否 |
职能leader评价 |
查询待办:/bumblebee/appraisalRecords/query/toDoList
接口类型:HTTP POST
返回类型:
record list
参数名 |
类型 |
是否必填 |
描述 |
recordId |
String |
是 |
考核记录id |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
name |
String |
是 |
被考核人姓名 |
selfScore |
String |
是 |
被考核人自评分 |
owner |
String |
是 |
业务owner姓名 |
ownerScore |
String |
是 |
业务owner评分 |
leader |
String |
是 |
职能leader姓名 |
leaderScore |
String |
是 |
职能leader评分 |
查询已办:/bumblebee/appraisalRecords/query/doneList
接口类型:HTTP POST
返回类型:
record list
参数名 |
类型 |
是否必填 |
描述 |
recordId |
String |
是 |
考核记录id |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
name |
String |
是 |
被考核人姓名 |
selfScore |
String |
是 |
被考核人自评分 |
owner |
String |
是 |
业务owner姓名 |
ownerScore |
String |
是 |
业务owner评分 |
leader |
String |
是 |
职能leader姓名 |
leaderScore |
String |
是 |
职能leader评分 |
综合查询:/bumblebee/appraisalRecords/query/all
接口类型:HTTP POST
返回类型:
record list
参数名 |
类型 |
是否必填 |
描述 |
recordId |
String |
是 |
考核记录id |
recordYear |
String |
是 |
自评年份 |
recordMonth |
String |
是 |
自评月份 |
name |
String |
是 |
被考核人姓名 |
selfScore |
String |
是 |
被考核人自评分 |
owner |
String |
是 |
业务owner姓名 |
ownerScore |
String |
是 |
业务owner评分 |
leader |
String |
是 |
职能leader姓名 |
leaderScore |
String |
是 |
职能leader评分 |
数据库设计
用户信息user_info
列名 |
类型 |
必填 |
默认值 |
备注 |
id |
bigint(20) unsigned |
是 |
AUTO_INCREMENT |
自增id |
username |
varchar(50) |
是 |
|
用户名 |
realname |
varchar(50) |
是 |
|
昵称 |
passwd |
varchar(50) |
是 |
|
密码 |
domain_account |
varchar(50) |
是 |
|
域帐号 |
|
varchar(50) |
否 |
|
邮箱 |
phone |
varchar(50) |
是 |
|
手机号 |
status |
int(10) |
是 |
1 |
记录状态:1:有效,2:无效 |
gmt_created |
datetime |
是 |
CURRENT_TIMESTAMP |
创建时间 |
gmt_modified |
datetime |
是 |
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
修改时间 |
用户关系表user_leader
列名 |
类型 |
必填 |
默认值 |
备注 |
id |
bigint(20) unsigned |
是 |
AUTO_INCREMENT |
自增id |
user_id |
bigint(20) unsigned |
是 |
|
用户id |
owner_user_id |
bigint(20) unsigned |
是 |
|
业务owner id |
leader_user_id |
bigint(20) unsigned |
是 |
|
职能leader id |
gmt_created |
datetime |
是 |
CURRENT_TIMESTAMP |
创建时间 |
gmt_modified |
datetime |
是 |
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
修改时间 |
用户角色表user_role
列名 |
类型 |
必填 |
默认值 |
备注 |
id |
bigint(20) unsigned |
是 |
AUTO_INCREMENT |
自增id |
user_id |
bigint(20) unsigned |
是 |
|
用户id |
role_id |
int(10) |
是 |
|
角色,10:普通职员,20:职能leader,30:业务owner,40:职能leader&业务owner,50:高级管理角色 |
gmt_created |
datetime |
是 |
CURRENT_TIMESTAMP |
创建时间 |
gmt_modified |
datetime |
是 |
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
修改时间 |
kpi信息表kpi_info
列名 |
类型 |
必填 |
默认值 |
备注 |
id |
bigint(20) unsigned |
是 |
AUTO_INCREMENT |
自增id |
item |
varchar(50) |
是 |
|
kpi考核项 |
weight |
double |
是 |
|
kpi权重 |
summary |
varchar(300) |
是 |
|
kpi指标说明 |
status |
int(10) |
是 |
1 |
生效状态,1:生效,0:未生肖 |
gmt_created |
datetime |
是 |
CURRENT_TIMESTAMP |
创建时间 |
gmt_modified |
datetime |
是 |
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
修改时间 |
绩效考核记录表appraisal_record_detail
列名 |
类型 |
必填 |
默认值 |
备注 |
id |
bigint(20) unsigned |
是 |
AUTO_INCREMENT |
自增id |
record_id |
bigint(20) unsigned |
是 |
|
考核记录主表id |
user_id |
bigint(20) unsigned |
是 |
|
用户id |
kpi_id |
bigint(20) unsigned |
是 |
|
kpi考核项id |
kpi_item |
varchar(50) |
是 |
|
kpi考核项 |
kpi_weight |
double |
是 |
|
kpi权重 |
kpi_summary |
varchar(300) |
是 |
|
kpi指标说明 |
record_year |
varchar(10) |
是 |
|
考核年份 |
record_month |
varchar(10) |
是 |
|
考核月份 |
self_single_score |
double |
否 |
|
自评分 |
self_evaluation |
varchar(300) |
否 |
|
月度自我评价 |
owner_single_score |
double |
否 |
|
业务owner评分 |
owner_evaluation |
varchar(300) |
否 |
|
业务owner评价 |
leader_single_score |
double |
否 |
|
职能leader评分 |
leader_evaluation |
varchar(300) |
否 |
|
职能leader评价 |
gmt_created |
datetime |
是 |
CURRENT_TIMESTAMP |
创建时间 |
gmt_modified |
datetime |
是 |
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
修改时间 |
绩效考核主表appraisal_record_main
列名 |
类型 |
必填 |
默认值 |
备注 |
id |
bigint(20) unsigned |
是 |
AUTO_INCREMENT |
自增id |
user_id |
bigint(20) unsigned |
是 |
|
用户id |
record_year |
varchar(10) |
是 |
|
考核年份 |
record_month |
varchar(10) |
是 |
|
考核月份 |
self_score |
double |
否 |
|
自评分 |
owner_score |
double |
否 |
|
业务owner评分 |
owner_id |
bigint(20) unsigned |
是 |
|
业务owner id |
leader_score |
double |
否 |
|
职能leader评分 |
leader_id |
bigint(20) unsigned |
是 |
|
职能leader id |
overall_evaluation |
varchar(300) |
否 |
|
综合评价 |
status |
int(10) |
是 |
|
流程状态码: 0:未提交,1:未审核,2:未审批,3:已完成 |
gmt_created |
datetime |
是 |
CURRENT_TIMESTAMP |
创建时间 |
gmt_modified |
datetime |
是 |
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
修改时间 |