liu
6 小时以前 de3907ce04d3bc5d196953a69995c377ef0cdb4b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
-- =============================================
-- HRM 员工台账岗位多选 - 数据库变更汇总脚本
-- 适用:test / prod 等需要手工执行的环境
-- 包含:
--   1. hrm_employee 表新增岗位ID列表(post_ids)列,并迁移旧 post_id 数据
--   2. hrm_salary_structure 表新增休息日/法定节假日加班工资倍率列(修复员工编辑页薪酬结构下拉报错)
-- 注意:MySQL 8 的 ALTER TABLE ADD COLUMN 不支持 IF NOT EXISTS;
--       若某列已存在,对应 ALTER 语句会报"Duplicate column",忽略该条即可继续。
-- =============================================
 
-- ---------- 1. hrm_employee:新增岗位ID列表(JSON),并迁移旧 post_id ----------
ALTER TABLE `hrm_employee` ADD COLUMN `post_ids` varchar(500) DEFAULT NULL COMMENT '岗位ID列表(JSON格式)' AFTER `post_id`;
UPDATE `hrm_employee` SET `post_ids` = CONCAT('[', `post_id`, ']') WHERE `post_id` IS NOT NULL AND (`post_ids` IS NULL OR `post_ids` = '');
 
-- ---------- 2. hrm_salary_structure:新增休息日/法定节假日加班倍率 ----------
ALTER TABLE `hrm_salary_structure` ADD COLUMN `rest_day_overtime_pay_ratio` decimal(4,2) DEFAULT 2.00 COMMENT '休息日加班工资倍率' AFTER `overtime_pay_ratio`;
ALTER TABLE `hrm_salary_structure` ADD COLUMN `legal_holiday_overtime_pay_ratio` decimal(4,2) DEFAULT 3.00 COMMENT '法定节假日加班工资倍率' AFTER `rest_day_overtime_pay_ratio`;
 
-- ---------- 完成提示 ----------
SELECT 'HRM 员工台账岗位多选数据库变更完成!' AS result;