fix(mobile): 审批弹窗加大字号、补请假天数并缩小意见框
同步请假类型下线外出/回家、新增临时回寝的安全 SQL(历史单不迁移)。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
15ed3ec9fb
commit
b26bf58744
2 files changed
+184
-7
No files matched your search
@@ -0,0 +1,168 @@
|
||||
-- =============================================================================
|
||||
-- 请假类型调整:下线「外出请假」「回家请假」,新增「临时回寝」
|
||||
-- 日期:2026-10-21
|
||||
--
|
||||
-- 客户确认策略:
|
||||
-- - 历史请假单:不改类型(仍显示原「外出请假」「回家请假」)
|
||||
-- - 新建/编辑可选列表:不再出现外出、回家;可选择「临时回寝」
|
||||
--
|
||||
-- 影响表:仅 xg_leave_type_config
|
||||
-- 1) 旧类型:软删除 deleted=1 + 关闭 is_enabled=0(不物理删)
|
||||
-- 2) 新增:临时回寝 TEMP_BACK_DORM
|
||||
--
|
||||
-- 不碰:xg_student_leave(历史业务数据零修改)
|
||||
--
|
||||
-- 执行顺序:
|
||||
-- ① 只跑「一、执行前核查」
|
||||
-- ② 确认后跑「二、变更」
|
||||
-- ③ 「三、验收」通过再 COMMIT,否则 ROLLBACK
|
||||
-- =============================================================================
|
||||
|
||||
-- -----------------------------------------------------------------------------
|
||||
-- 一、执行前核查(只读)
|
||||
-- -----------------------------------------------------------------------------
|
||||
|
||||
-- 1.1 当前类型配置
|
||||
SELECT
|
||||
id,
|
||||
leave_type_code,
|
||||
leave_type_name,
|
||||
is_enabled,
|
||||
deleted,
|
||||
sort_order
|
||||
FROM xg_leave_type_config
|
||||
ORDER BY sort_order, id;
|
||||
|
||||
-- 1.2 将被下线的配置(预期:外出 / 回家)
|
||||
SELECT id, leave_type_code, leave_type_name, is_enabled, deleted
|
||||
FROM xg_leave_type_config
|
||||
WHERE deleted = 0
|
||||
AND (
|
||||
leave_type_code IN ('OUT_LEAVE', 'HOME_LEAVE')
|
||||
OR leave_type_name IN ('外出请假', '回家请假')
|
||||
);
|
||||
|
||||
-- 1.3 历史单仍保留旧类型(本脚本不会改这些行,仅供对照)
|
||||
SELECT leave_type_code, leave_type_name, COUNT(*) AS cnt
|
||||
FROM xg_student_leave
|
||||
WHERE deleted = 0
|
||||
AND (
|
||||
leave_type_code IN ('OUT_LEAVE', 'HOME_LEAVE')
|
||||
OR leave_type_name IN ('外出请假', '回家请假')
|
||||
)
|
||||
GROUP BY leave_type_code, leave_type_name;
|
||||
|
||||
-- =============================================================================
|
||||
-- 二、变更(事务)
|
||||
-- =============================================================================
|
||||
|
||||
START TRANSACTION;
|
||||
|
||||
-- 2.1 新增「临时回寝」(幂等:已有同编码或同名称则跳过)
|
||||
INSERT INTO xg_leave_type_config (
|
||||
id,
|
||||
tenant_id,
|
||||
create_dept,
|
||||
create_by,
|
||||
create_time,
|
||||
update_by,
|
||||
update_time,
|
||||
deleted,
|
||||
leave_type_name,
|
||||
leave_type_code,
|
||||
leave_type_desc,
|
||||
sort_order,
|
||||
need_location_on_apply,
|
||||
need_photo_on_cancel,
|
||||
need_location_on_cancel,
|
||||
need_cancel_for_non_leave,
|
||||
can_apply_in_advance,
|
||||
is_enabled,
|
||||
max_apply_duration,
|
||||
cancel_overdue_reminder
|
||||
)
|
||||
SELECT
|
||||
2026102111360000001,
|
||||
'000000',
|
||||
103,
|
||||
1,
|
||||
NOW(),
|
||||
1,
|
||||
NOW(),
|
||||
0,
|
||||
'临时回寝',
|
||||
'TEMP_BACK_DORM',
|
||||
'临时回寝请假(替换原外出请假、回家请假选项;历史单类型不迁移)',
|
||||
3,
|
||||
'1',
|
||||
'1',
|
||||
'1',
|
||||
'1',
|
||||
'1',
|
||||
'1',
|
||||
24.00,
|
||||
2.00
|
||||
FROM DUAL
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM xg_leave_type_config t
|
||||
WHERE t.leave_type_code = 'TEMP_BACK_DORM'
|
||||
OR t.leave_type_name = '临时回寝'
|
||||
);
|
||||
|
||||
-- 若主键冲突:ROLLBACK 后换未占用 id 再执行
|
||||
-- SELECT id FROM xg_leave_type_config WHERE id = 2026102111360000001;
|
||||
|
||||
-- 2.2 下线旧类型:软删 + 关闭(学生端列表按未删除且启用过滤,即选不到)
|
||||
UPDATE xg_leave_type_config
|
||||
SET
|
||||
deleted = 1,
|
||||
is_enabled = '0',
|
||||
update_by = 1,
|
||||
update_time = NOW(),
|
||||
leave_type_desc = CONCAT(
|
||||
IFNULL(leave_type_desc, ''),
|
||||
'【2026-10-21 已下线,新建请选临时回寝;历史数据保留原类型】'
|
||||
)
|
||||
WHERE deleted = 0
|
||||
AND (
|
||||
leave_type_code IN ('OUT_LEAVE', 'HOME_LEAVE')
|
||||
OR leave_type_name IN ('外出请假', '回家请假')
|
||||
);
|
||||
|
||||
-- -----------------------------------------------------------------------------
|
||||
-- 三、执行后验收(事务内)
|
||||
-- -----------------------------------------------------------------------------
|
||||
|
||||
-- 3.1 临时回寝应存在且启用
|
||||
SELECT id, leave_type_code, leave_type_name, is_enabled, deleted
|
||||
FROM xg_leave_type_config
|
||||
WHERE leave_type_code = 'TEMP_BACK_DORM'
|
||||
OR leave_type_name = '临时回寝';
|
||||
|
||||
-- 3.2 外出/回家应已软删关闭
|
||||
SELECT id, leave_type_code, leave_type_name, is_enabled, deleted
|
||||
FROM xg_leave_type_config
|
||||
WHERE leave_type_code IN ('OUT_LEAVE', 'HOME_LEAVE')
|
||||
OR leave_type_name IN ('外出请假', '回家请假');
|
||||
|
||||
-- 3.3 学生端可选类型(deleted=0 且 is_enabled=1):应有临时回寝,无外出/回家
|
||||
SELECT leave_type_code, leave_type_name, sort_order, is_enabled, deleted
|
||||
FROM xg_leave_type_config
|
||||
WHERE deleted = 0
|
||||
AND is_enabled = '1'
|
||||
ORDER BY sort_order, id;
|
||||
|
||||
-- 3.4 历史单旧类型条数应与执行前 1.3 一致(证明业务表未被改动)
|
||||
SELECT leave_type_code, leave_type_name, COUNT(*) AS cnt
|
||||
FROM xg_student_leave
|
||||
WHERE deleted = 0
|
||||
AND (
|
||||
leave_type_code IN ('OUT_LEAVE', 'HOME_LEAVE')
|
||||
OR leave_type_name IN ('外出请假', '回家请假')
|
||||
)
|
||||
GROUP BY leave_type_code, leave_type_name;
|
||||
|
||||
-- ========== 确认后 ==========
|
||||
-- COMMIT;
|
||||
-- 或 ROLLBACK;
|
||||
Reference in new issue
Block a user