## 入转调离需求说明文档 [原型地址](https://org.modao.cc/app/8TbRNWjMTqd0JZ16cli1jYF7zfqzIa9)

人事管理系统最基础的功能即为公司员工办理入职，转正，调岗，离职，返聘等手续，以便管理各个员工在公司的工作情况。大部分员工在一家公司的工作过程如下图所示。人事的工作包括缺岗人员招聘，新员工入职，试用考核登记，转正审批，调岗审批，离职审批，返聘审批等一系列工作。

**人事系统上线后员工的工作状态（在职，试用，离职，退休）统一由人事系统维护，不再由原通讯录功能维护（编辑员工信息）。员工账号的登录状态需要人员单独维护（禁止登录或删除），不通过工作状态控制。**

![员工工作过程](image/employeeFlow.png)

### 员工公司职业发展记录

人事管理系统应当能够准确反映某个员工在公司的职业发展记录，即需要记录员工各个节点的信息，包括用工性质，用工形式，工作公司，部门，岗位，薪酬（试用期以试用期为准）起始时间，结束时间。进而可以通过时间轴的形式展示某员工在公司的职业发展历程。

## 入职

员工应聘录用后，即可进行入职手续办理，入职手续主要登记员工的个人信息，用工信息，教育职称信息等。__入职信息录入后，应当在员工职业历程中创建一条入职记录__。

#### 个人信息

员工个人信息包括姓名，手机号，证件照，身份证号码，家庭住址，籍贯，政治面貌，婚姻状况，生日等信息。

| 字段名称  | 类型     | 说明                                    | 是否必填 |
| ----- | ------ | ------------------------------------- | ---- |
| 姓名    | String | 姓名，录入后不允许修改；推荐长度16                    | 是    |
| 手机号   | String | 中国大陆11位手机号                            | 是    |
| 证件照   | File   | jpg，png格式图片，文件大小不超过1MB，尺寸不低于200x200像素 | 是    |
| 身份证号码 | String | 中国大陆18位二代身份证号码                        | 是    |
| 家庭住址  | String | 员工家庭住址，推荐长度不超过64字节                    | 是    |
| 籍贯    | String | 员工祖籍所在地，推荐长度不超过16字节                   | 是    |
| 政治面貌  | Enum   | 政治面貌，可选党员，共青团员，群众和其他4个选项              | 是    |
| 婚姻状况  | Enum   | 已婚，未婚可选                               | 否    |
| 生日    | Date   | 不填则默认使用身份证号日期，公历；需要区分是否是农历            | 是    |

#### 用工信息

用工信息包括如下信息，其中部分信息后续可以进行修改补全。

| 字段名称   | 类型      | 说明                                    | 是否必填       |
| ------ | ------- | ------------------------------------- | ---------- |
| 公司     | String  | 关联分公司ID                               | 系统根据部门自动填充 |
| 部门     | String  | 入职部门ID                                | 是          |
| 岗位     | String  | 入职岗位ID                                | 是          |
| 工号     | String  | 员工编号，推荐长度不超过32字节                      | 否          |
| 入职时间   | Date    | 入职日期，即工资发放起始日期                        | 是          |
| 拟转正时间  | Date    | 预期转正日期，即转正薪酬发放日期                      | 是          |
| 试用期长   | Int     | 试用期月数，无试用期填0，法律上试用期长度不得超过6个月          | 否          |
| 薪酬     | Decimal | 转正后每月薪酬，最多两位小数，最大数值99999.99           | 是          |
| 试用期薪酬  | Decimal | 试用期每月薪酬，最多两位小数，最大数值99999.99           | 是          |
| 入职原因   | String  | 员工招聘入职原因，如缺岗，老员工离职等                   | 否          |
| 用工形式   | Enum    | 有合同，兼职，试用，实习4个选项                      | 是          |
| 是否签署合同 | Bool    | 是或者否，标识该员工是否已经签订了劳务合同                 | 否          |
| 用工性质   | Enum    | 有正式，转正，试用和免试用4个选项                     | 是          |
| 是否参保   | Enum    | 是，否，已到退休年龄，应缴未缴4个选项                   | 否          |
| 工资卡    | Array   | 包括工资卡发卡银行和工资卡卡号信息，一个员工在同一家公司可能有多张工资卡。 | 否          |

#### 教育职称信息

教育职称信息主要记录员工的学历，院校，专业，职称，职级信息，如下表所示。

| 字段名称 | 类型     | 说明                        | 是否必填 |
| ---- | ------ | ------------------------- | ---- |
| 学历   | Enum   | 可选本科，大专，中专，高中，初中，小学，硕士，博士 | 是    |
| 毕业院校 | String | 员工最高学历毕业学校名称，不超过32个字      | 否    |
| 专业   | String | 员工所学专业名称，不超过16个字          | 否    |
| 职称   | String | 员工获得的职称名称，不超过32个字         | 否    |
| 职称级别 | Enum   | 分高级，中级，初级和其他4项            | 否    |

### 转正

员工试用期满后，如果表现合格则可申请转正。转正时需填写如下信息，转正提交后需要等待审批人审批方可生效。

| 字段名称   | 类型      | 说明                | 是否必填 |
| ------ | ------- | ----------------- | ---- |
| 转正考核日期 | Date    | 员工转正考核日期，必须晚于入职日期 | 是    |
| 考核人    | String  | 负责考核试用者的员工ID      | 是    |
| 转正日期   | Date    | 实际转正日期，必须晚于入职日期   | 是    |
| 转正薪酬   | Decimal | 转正后每月薪酬，最多2位小数    | 是    |
| 审批人    | String  | 负责审批该员工转正手续的员工ID  | 是    |
| 转正说明   | String  | 员工转正原因说明，不超过120个字 | 是    |

转正申请提交后跳转到转正管理，以便查看提交的转正记录。转正记录的审批状态包括4个，待审批，已撤回，已同意和已驳回。其中撤回只能由发起人（即申请提交人）操作，同意和驳回由审批人操作。审批人审批时需要填写审批意见。__转正审批通过后需要在员工的职业历程记录创建转正记录__。

### 调岗

工作过程中，由于工作需要，个人升迁等原因，会对员工进行调岗，如部门调动，岗位调动等。调岗申请需要填写如下信息。

| 字段名称 | 类型      | 说明                     | 是否必填 |
| ---- | ------- | ---------------------- | ---- |
| 调入部门 | String  | 调入的新部门ID，需自动存储部门所在公司ID | 是    |
| 新岗位  | String  | 员工新岗位ID                | 是    |
| 生效日期 | Date    | 调动生效日期                 | 是    |
| 岗位薪酬 | Decimal | 该员工在新岗位上的每月薪酬，单位元/月    | 是    |
| 审批人  | String  | 负责审批该员工调岗手续的员工ID       | 是    |
| 调岗原因 | String  | 员工调岗原因说明，不超过120个字      | 是    |

调岗申请提交后跳转到调岗管理，以便查看提交的调岗记录。调岗记录的审批状态包括4个，待审批，已撤回，已同意和已驳回。其中撤回只能由发起人（即申请提交人）操作，同意和驳回由审批人操作。审批人审批时需要填写审批意见。__审批通过后需要在员工的职业历程记录创建调岗记录__。

### 离职

员工由于各种原因需要离开公司岗位时，需要办理离职手续后方可离开公司。离职时需要填写如下信息。

| 字段名称   | 类型      | 说明                                             | 是否必填 |
| ------ | ------- | ---------------------------------------------- | ---- |
| 最后工作日期 | Date    | 离职最后薪资结算日期，                                    | 是    |
| 离职原因   | Enum    | 有个人原因，家庭原因，无法胜任工作，公司裁员，严重违法违纪，合同到期不续签，协议解除7个选项 |      |
| 工作交接人  | String  | 离职员工遗留工作接收员工ID                                 | 是    |
| 补偿费用   | Decimal | 离职后如有补偿，填写每月补偿金额，最多两位小数，最大数值999999.99          | 否    |
| 补偿月数   | Int     | 离职补偿月数                                         | 否    |
| 审批人    | String  | 负责审批该员工离职手续的员工ID                               | 是    |
| 离职面谈内容 | String  | 员工离职时面谈内容，不超过120个字                             | 是    |

离职申请提交后跳转到离职管理，以便查看提交的离职记录。离职记录的审批状态包括4个，待审批，已撤回，已同意和已驳回。其中撤回只能由发起人（即申请提交人）操作，同意和驳回由审批人操作。审批人审批时需要填写审批意见。__审批通过后需要在员工的职业历程记录创建离职记录__，同时，审批完成后需要禁止该离职员工的登录账号。离职后的员工可能因为某种原因重新回归公司工作，此时可通过返聘流程将员工重新纳入到公司中。

### 返聘

返聘一般针对退休员工和离职员工，这类员工由于公司需要在其离开公司后重新招聘到公司，未保持同一个员工职业历程的延续性，对于退休或离职的员工推荐使用返聘流程，而不是新员工入职流程添加新员工。返聘员工需要填写如下信息：

| 字段名称   | 类型      | 说明                        | 是否必填 |
| ------ | ------- | ------------------------- | ---- |
| 工作部门   | String  | 返聘员工就职部门ID，同时需要存储部门所在公司ID | 是    |
| 岗位     | Sting   | 返聘员工就职岗位ID                | 是    |
| 工作起始日期 | Date    | 重新上岗日期                    | 是    |
| 岗位薪酬   | Decimal | 每月薪酬，最多不超过2位小数，最大99999.99 | 是    |
| 审批人    | String  | 负责审批该员工返聘手续的员工ID          | 是    |
| 返聘原因   | String  | 说明返聘的具体里有，不超过120个字        | 是    |

返聘申请提交后跳转到返聘管理，以便查看提交的返聘记录。返聘记录的审批状态包括4个，待审批，已撤回，已同意和已驳回。其中撤回只能由发起人（即申请提交人）操作，同意和驳回由审批人操作。审批人审批时需要填写审批意见。__审批通过后需要在员工的职业历程记录创建返聘记录__，同时开通员工的原账号登录功能。
