admin/scripts/t_employee.sql
zzh c5fb4c7e58 feat: add employee profile, IDE employee nos, and marketing invite/coupon fixes
Introduce t_employee linked to RBAC users, switch employee numbers to IDE001+, and keep invite bind/newcomer coupon backend changes. Drop retired sql/migrate and seed scripts in favor of db.sql.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-26 23:18:57 +08:00

47 lines
2.6 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 员工档案表(已有库增量执行)
-- 关联 RBAC user.Id;工号/手机/邮箱以 user 表为准,本表不重复
SET FOREIGN_KEY_CHECKS = 0;
DROP TABLE IF EXISTS `t_employee`;
CREATE TABLE `t_employee` (
`Id` INT NOT NULL AUTO_INCREMENT COMMENT '主键,自增,步长 1',
`UserId` CHAR(36) NOT NULL COMMENT '关联 RBAC user.Id(工号/手机/邮箱见 user 表)',
`RealName` VARCHAR(64) NOT NULL COMMENT '姓名(人事档案用)',
`Gender` TINYINT NOT NULL DEFAULT 0 COMMENT 'Gender:0=Unknown未知,1=Male男,2=Female女',
`Birthday` DATE NULL COMMENT '出生日期',
`IdCardNo` VARCHAR(32) NULL COMMENT '身份证号',
`HireDate` DATE NULL COMMENT '入职日期',
`ProbationEndDate` DATE NULL COMMENT '试用期结束日期',
`RegularizationDate` DATE NULL COMMENT '转正日期',
`EmploymentStatus` TINYINT NOT NULL DEFAULT 1 COMMENT 'EmploymentStatus:0=None,1=Probation试用,2=Regular正式,3=Suspended停职,4=Resigned离职',
`ResignationDate` DATE NULL COMMENT '离职日期',
`Department` VARCHAR(128) NULL COMMENT '部门',
`Position` VARCHAR(128) NULL COMMENT '岗位/职位',
`JobLevel` VARCHAR(64) NULL COMMENT '职级',
`EmploymentType` TINYINT NOT NULL DEFAULT 1 COMMENT 'EmploymentType:0=None,1=FullTime全职,2=PartTime兼职,3=Intern实习,4=Outsourced外包',
`WorkLocation` VARCHAR(128) NULL COMMENT '工作地点',
`ManagerUserId` CHAR(36) NULL COMMENT '直属上级 user.Id',
`ContractStartDate` DATE NULL COMMENT '合同开始日期',
`ContractEndDate` DATE NULL COMMENT '合同结束日期',
`ContractType` VARCHAR(64) NULL COMMENT '合同类型',
`EmergencyContact` VARCHAR(64) NULL COMMENT '紧急联系人',
`EmergencyPhone` VARCHAR(32) NULL COMMENT '紧急联系人电话',
`Address` VARCHAR(256) NULL COMMENT '住址',
`Education` VARCHAR(64) NULL COMMENT '学历',
`Remark` VARCHAR(512) NULL COMMENT '备注',
`IsDeleted` TINYINT NOT NULL DEFAULT 0 COMMENT '软删除:0-否,1-是',
`ConcurrencyStamp` CHAR(36) NOT NULL DEFAULT (UUID()) COMMENT '并发戳',
`CreateUserId` INT NOT NULL DEFAULT 0 COMMENT '创建人',
`CreateTime` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateUserId` INT NULL COMMENT '更新人',
`UpdateTime` DATETIME NULL COMMENT '更新时间',
PRIMARY KEY (`Id`),
UNIQUE KEY `uk_employee_user` (`UserId`),
KEY `idx_employee_status_dept` (`EmploymentStatus`, `Department`),
KEY `idx_employee_manager` (`ManagerUserId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='员工档案表(关联内部用户)';
SET FOREIGN_KEY_CHECKS = 1;