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>
47 lines
2.6 KiB
SQL
47 lines
2.6 KiB
SQL
-- 员工档案表(已有库增量执行)
|
||
-- 关联 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;
|