Blame view

项目文档相关/sql/lqXhHyhk-作废删除按钮权限.sql 2.53 KB
e5f8ae55   “wangming”   ```
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
  -- 会员耗卡(lqXhHyhk)作废 / 删除 按钮权限
  -- 菜单 F_Id733911069059187973(会员耗卡)
  -- 删除按钮 btn_remove 已存在:F_Id = 754918927502411013
  -- 本脚本新增作废按钮 btn_cancel,并示例为角色授权
  
  -- ========== 1. 新增「作废」按钮(若尚未配置) ==========
  INSERT INTO BASE_MODULEBUTTON (
    F_Id,
    F_ParentId,
    F_FullName,
    F_EnCode,
    F_Icon,
    F_UrlAddress,
    F_PropertyJson,
    F_Description,
    F_SortCode,
    F_EnabledMark,
    F_CreatorTime,
    F_CreatorUserId,
    F_ModuleId
  )
  SELECT
    '834700000000000001',
    '-1',
    '作废',
    'btn_cancel',
    '',
    NULL,
    NULL,
    '会员耗卡列表/详情作废操作',
    1,
    1,
    NOW(),
    'admin',
    '733911069059187973'
  FROM (SELECT 1) AS _seed
  WHERE NOT EXISTS (
    SELECT 1 FROM BASE_MODULEBUTTON
    WHERE F_ModuleId = '733911069059187973' AND F_EnCode = 'btn_cancel' AND F_DeleteMark IS NULL
  );
  
  -- ========== 2. 为角色授权(按需执行,替换 @ROLE_ID ==========
  -- 查询角色:SELECT F_Id, F_FullName, F_EnCode FROM BASE_ROLE;
  -- 系统管理员示例:94e3a9bb0fce4547886972998fddba1c
  
  SET @ROLE_ID = '94e3a9bb0fce4547886972998fddba1c';
  
  -- 作废按钮授权(btn_cancel
  INSERT INTO BASE_AUTHORIZE (
    F_Id,
    F_ItemType,
    F_ItemId,
    F_ObjectType,
    F_ObjectId,
    F_SortCode,
    F_CreatorTime,
    F_CreatorUserId
  )
  SELECT
    '834700000000000011',
    'button',
    mb.F_Id,
    'Role',
    @ROLE_ID,
    1,
    NOW(),
    'admin'
  FROM BASE_MODULEBUTTON mb
  WHERE mb.F_ModuleId = '733911069059187973'
    AND mb.F_EnCode = 'btn_cancel'
    AND mb.F_DeleteMark IS NULL
    AND NOT EXISTS (
      SELECT 1 FROM BASE_AUTHORIZE a
      WHERE a.F_ItemType = 'button'
        AND a.F_ItemId = mb.F_Id
        AND a.F_ObjectType = 'Role'
        AND a.F_ObjectId = @ROLE_ID
    );
  
  -- 删除按钮授权(btn_remove,按钮已存在)
  INSERT INTO BASE_AUTHORIZE (
    F_Id,
    F_ItemType,
    F_ItemId,
    F_ObjectType,
    F_ObjectId,
    F_SortCode,
    F_CreatorTime,
    F_CreatorUserId
  )
  SELECT
    '834700000000000012',
    'button',
    mb.F_Id,
    'Role',
    @ROLE_ID,
    2,
    NOW(),
    'admin'
  FROM BASE_MODULEBUTTON mb
  WHERE mb.F_ModuleId = '733911069059187973'
    AND mb.F_EnCode = 'btn_remove'
    AND mb.F_DeleteMark IS NULL
    AND NOT EXISTS (
      SELECT 1 FROM BASE_AUTHORIZE a
      WHERE a.F_ItemType = 'button'
        AND a.F_ItemId = mb.F_Id
        AND a.F_ObjectType = 'Role'
        AND a.F_ObjectId = @ROLE_ID
    );
  
  -- ========== 3. 校验 ==========
  -- SELECT F_FullName, F_EnCode, F_Id FROM BASE_MODULEBUTTON
  -- WHERE F_ModuleId = '733911069059187973' AND F_DeleteMark IS NULL
  -- ORDER BY F_SortCode;