需求
人事管理系统中,员工入职的时候,需根据公司前缀生成唯一的员工号。
TODO
- 找几个知名公司的工卡看看员工号的格式
- 确保公司信息表中有公司前缀的字段
- 整理成文档。可以节省其他人收集的时间
- 按照入职时间顺序生成员工号。参考之前生成设备序列号的规则,复用一下这部分代码。
- 线上改表
问题的本质
员工号是做什么用的?如果没有员工号,会影响公司运营么?
- 作为员工的唯一标识符
- 作为员工的登录账号
- 作为员工的考勤打卡号。作为一些三方考勤设备的标识。
- 作为员工的薪资发放账号
老员工的问题
按理说应该按照入职时间顺序生成员工号。
头条的做法
为了防止从员工号中推断出入职时间,及职级,改成了随机七位数的员工号。 但是这个方案我不敢用,怕领导打死我。先上线一版最重要,他们觉得不好,就等他们出编号规则就行。
接口
- 新建员工信息时,自动生成员工号。如果没有指定公司,则无法生成员工号。等 update 记录时,判断如果没有员工号,且有了公司,再生成员工号。
- 更新员工信息时,如果之前没有员工号,且现在有了公司,则生成员工号。
- 人才信息转员工信息时,自动生成员工号 (即,之前的简历备案入职,转正时生成员工号)
- 一个批量生成员工号的接口,给老员工补全员工号用的 (只处理没有员工号的记录)
- 员工转岗到另外一个子公司怎么办?员工号不变?还是重新生成?
员工编号格式
格式说明:
公司前缀 + 入职年份 + 四位流水号 例如, 公司前缀是 "SZ" ,入职年份是 2023 年,流水号是 0001 ,则员工编号是 "SZ20230001"
本来要求是使用年份的后两位作为年份标识,但是我觉得不严谨,做百年企业怎么能这么粗糙,于是一意孤行,4 位数得了。
继续阅读
关于作者 🌱
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式