migrate_20260820_duty_time_range_dict.sql 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. -- backend/scripts/migrate_20260820_duty_time_range_dict.sql
  2. -- 值班排班:值班时段字典(可单选 + allow-create)
  3. -- 可重复执行
  4. SET NAMES utf8mb4;
  5. INSERT INTO `sys_dict_type` (
  6. `id`, `dict_name`, `dict_type`, `tenant_no`, `order_num`, `remark`,
  7. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  8. )
  9. SELECT
  10. 'DUTYDICTTYPE00000000000000000003',
  11. '值班时段',
  12. 'duty_time_range',
  13. 'shanxia2.0',
  14. 92,
  15. '值班排班时段选项',
  16. '',
  17. '',
  18. NOW(),
  19. '',
  20. NOW(),
  21. 0
  22. FROM DUAL
  23. WHERE NOT EXISTS (
  24. SELECT 1 FROM `sys_dict_type`
  25. WHERE `dict_type` = 'duty_time_range'
  26. AND `tenant_no` = 'shanxia2.0'
  27. AND `del_flag` = 0
  28. );
  29. INSERT INTO `sys_dict_data` (
  30. `id`, `dict_label`, `dict_value`, `tag_type`, `dict_type`, `tenant_no`, `order_num`, `remark`,
  31. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  32. )
  33. SELECT * FROM (
  34. SELECT
  35. 'DUTYDICTDATA0000000000000000006' AS id,
  36. '08:00–18:00' AS dict_label,
  37. '08:00|18:00|0' AS dict_value,
  38. '' AS tag_type,
  39. 'duty_time_range' AS dict_type,
  40. 'shanxia2.0' AS tenant_no,
  41. 1 AS order_num,
  42. NULL AS remark,
  43. '' AS create_by,
  44. '' AS create_dept_id,
  45. NOW() AS create_time,
  46. '' AS update_by,
  47. NOW() AS update_time,
  48. 0 AS del_flag
  49. UNION ALL SELECT
  50. 'DUTYDICTDATA0000000000000000007',
  51. '18:00–次日07:00',
  52. '18:00|07:00|1',
  53. '',
  54. 'duty_time_range',
  55. 'shanxia2.0',
  56. 2,
  57. NULL,
  58. '',
  59. '',
  60. NOW(),
  61. '',
  62. NOW(),
  63. 0
  64. ) AS t
  65. WHERE NOT EXISTS (
  66. SELECT 1 FROM `sys_dict_data` d
  67. WHERE d.tenant_no = t.tenant_no
  68. AND d.dict_type = t.dict_type
  69. AND d.dict_value = t.dict_value
  70. AND d.del_flag = 0
  71. );