2026-09-27-mini-pl-vehicle-recharge-apply-menus.sql 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. -- 小程序:运输管理 → ETC加油充值申请(角色「司机」「押运员」)
  2. -- 可重复执行(NOT EXISTS 防重)
  3. SET NAMES utf8mb4;
  4. -- 测试库补角色(生产已有则跳过)
  5. INSERT INTO `sys_role` (
  6. `id`, `role_name`, `data_scope`, `status`, `tenant_no`, `order_num`, `remark`,
  7. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  8. )
  9. SELECT
  10. 'MINI_ROLE_DRIVER', '司机', '1', '1', 'shanxia2.0', 60, '小程序司机端',
  11. 'system', '', NOW(), NULL, NOW(), 0
  12. FROM DUAL
  13. WHERE NOT EXISTS (
  14. SELECT 1 FROM `sys_role` WHERE `role_name` = '司机' AND `del_flag` = 0
  15. );
  16. INSERT INTO `sys_role` (
  17. `id`, `role_name`, `data_scope`, `status`, `tenant_no`, `order_num`, `remark`,
  18. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  19. )
  20. SELECT
  21. 'MINI_ROLE_ESCORT', '押运员', '1', '1', 'shanxia2.0', 61, '小程序押运端',
  22. 'system', '', NOW(), NULL, NOW(), 0
  23. FROM DUAL
  24. WHERE NOT EXISTS (
  25. SELECT 1 FROM `sys_role` WHERE `role_name` = '押运员' AND `del_flag` = 0
  26. );
  27. INSERT INTO `sys_menu` (
  28. `id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
  29. `is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
  30. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  31. )
  32. SELECT
  33. 'MINI_PL_ROOT', '运输管理', '1', 'M', '/mini/pl', NULL, NULL,
  34. 1, '1', '1', 'shanxia2.0', 4, '小程序运输管理',
  35. 'system', '', NOW(), NULL, NOW(), 0
  36. FROM DUAL
  37. WHERE NOT EXISTS (
  38. SELECT 1 FROM `sys_menu` WHERE `id` = 'MINI_PL_ROOT' AND `del_flag` = 0
  39. );
  40. INSERT INTO `sys_menu` (
  41. `id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
  42. `is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
  43. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  44. )
  45. SELECT
  46. 'MINI_PL_VEHICLE_RECHARGE_APPLY', 'ETC加油充值申请', 'MINI_PL_ROOT', 'C',
  47. 'vehicle-recharge-apply', NULL,
  48. 'mini:pl:vehicleRechargeApply:list',
  49. 1, '1', '1', 'shanxia2.0', 2, '小程序司机/押运 ETC加油充值申请',
  50. 'system', '', NOW(), NULL, NOW(), 0
  51. FROM DUAL
  52. WHERE NOT EXISTS (
  53. SELECT 1 FROM `sys_menu` WHERE `id` = 'MINI_PL_VEHICLE_RECHARGE_APPLY' AND `del_flag` = 0
  54. );
  55. INSERT INTO `sys_role_menu` (
  56. `id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
  57. `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
  58. )
  59. SELECT
  60. MD5(CONCAT(r.id, '|', m.menu_id, '|mini-pl-veh-recharge-apply|v1')),
  61. r.id,
  62. m.menu_id,
  63. IFNULL(NULLIF(r.tenant_no, ''), 'shanxia2.0'),
  64. 0,
  65. '小程序 ETC加油充值申请',
  66. 'system',
  67. '',
  68. NOW(),
  69. NULL,
  70. NOW(),
  71. 0
  72. FROM `sys_role` r
  73. JOIN (
  74. SELECT '1' AS menu_id UNION ALL
  75. SELECT 'MINI_PL_ROOT' UNION ALL
  76. SELECT 'MINI_PL_VEHICLE_RECHARGE_APPLY'
  77. ) m
  78. WHERE r.del_flag = 0
  79. AND r.role_name IN ('司机', '押运员')
  80. AND EXISTS (SELECT 1 FROM `sys_menu` sm WHERE sm.id = m.menu_id AND sm.del_flag = 0)
  81. AND NOT EXISTS (
  82. SELECT 1 FROM `sys_role_menu` x
  83. WHERE x.role_id = r.id AND x.menu_id = m.menu_id AND x.del_flag = 0
  84. );