|
|
@@ -0,0 +1,131 @@
|
|
|
+-- =====================================================
|
|
|
+-- 数据权限系统表结构
|
|
|
+-- 创建时间: 2026-02-15
|
|
|
+-- 说明: 用于实现基于CRUD四个维度的数据权限控制
|
|
|
+-- =====================================================
|
|
|
+
|
|
|
+-- 1. 数据权限表
|
|
|
+DROP TABLE IF EXISTS t_data_permission;
|
|
|
+CREATE TABLE t_data_permission (
|
|
|
+ id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
|
|
+ permission_code VARCHAR(100) NOT NULL COMMENT '权限编码(如: product:create)',
|
|
|
+ permission_name VARCHAR(100) NOT NULL COMMENT '权限名称(如: 商品创建)',
|
|
|
+ module_code VARCHAR(50) NOT NULL COMMENT '模块编码(如: product)',
|
|
|
+ module_name VARCHAR(100) NOT NULL COMMENT '模块名称(如: 商品管理)',
|
|
|
+ operation_type VARCHAR(20) NOT NULL COMMENT '操作类型: create/read/update/delete/execute',
|
|
|
+ description VARCHAR(255) COMMENT '权限描述',
|
|
|
+ sort_order INT DEFAULT 0 COMMENT '排序',
|
|
|
+ status TINYINT DEFAULT 1 COMMENT '状态: 1-启用, 0-禁用',
|
|
|
+ create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ UNIQUE KEY uk_permission_code (permission_code),
|
|
|
+ KEY idx_module_code (module_code),
|
|
|
+ KEY idx_operation_type (operation_type)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='数据权限表';
|
|
|
+
|
|
|
+-- 2. 角色权限关联表
|
|
|
+DROP TABLE IF EXISTS t_role_permission;
|
|
|
+CREATE TABLE t_role_permission (
|
|
|
+ id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
|
|
+ role_id BIGINT NOT NULL COMMENT '角色ID',
|
|
|
+ permission_id BIGINT NOT NULL COMMENT '权限ID',
|
|
|
+ create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ UNIQUE KEY uk_role_permission (role_id, permission_id),
|
|
|
+ KEY idx_role_id (role_id),
|
|
|
+ KEY idx_permission_id (permission_id)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色权限关联表';
|
|
|
+
|
|
|
+-- =====================================================
|
|
|
+-- 初始化权限数据
|
|
|
+-- =====================================================
|
|
|
+
|
|
|
+-- 清空现有权限数据
|
|
|
+TRUNCATE TABLE t_data_permission;
|
|
|
+
|
|
|
+-- 商品管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('product:create', '创建商品', 'product', '商品管理', 'create', '添加新商品', 1),
|
|
|
+('product:read', '查询商品', 'product', '商品管理', 'read', '查看商品列表和详情', 2),
|
|
|
+('product:update', '修改商品', 'product', '商品管理', 'update', '编辑商品信息', 3),
|
|
|
+('product:delete', '删除商品', 'product', '商品管理', 'delete', '删除商品', 4);
|
|
|
+
|
|
|
+-- 设备管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('device:create', '添加设备', 'device', '设备管理', 'create', '添加新设备', 11),
|
|
|
+('device:read', '查询设备', 'device', '设备管理', 'read', '查看设备列表和详情', 12),
|
|
|
+('device:update', '修改设备', 'device', '设备管理', 'update', '编辑设备信息', 13),
|
|
|
+('device:delete', '删除设备', 'device', '设备管理', 'delete', '删除设备', 14);
|
|
|
+
|
|
|
+-- 订单管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('order:create', '创建订单', 'order', '订单管理', 'create', '手动创建订单', 21),
|
|
|
+('order:read', '查询订单', 'order', '订单管理', 'read', '查看订单列表和详情', 22),
|
|
|
+('order:update', '修改订单', 'order', '订单管理', 'update', '修改订单信息', 23),
|
|
|
+('order:delete', '删除订单', 'order', '订单管理', 'delete', '删除订单', 24);
|
|
|
+
|
|
|
+-- 门店管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('shop:create', '添加门店', 'shop', '门店管理', 'create', '添加新门店', 31),
|
|
|
+('shop:read', '查询门店', 'shop', '门店管理', 'read', '查看门店列表和详情', 32),
|
|
|
+('shop:update', '修改门店', 'shop', '门店管理', 'update', '编辑门店信息', 33),
|
|
|
+('shop:delete', '删除门店', 'shop', '门店管理', 'delete', '删除门店', 34);
|
|
|
+
|
|
|
+-- 库存管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('inventory:create', '创建库存记录', 'inventory', '库存管理', 'create', '创建库存记录', 41),
|
|
|
+('inventory:read', '查询库存', 'inventory', '库存管理', 'read', '查看库存信息', 42),
|
|
|
+('inventory:update', '修改库存', 'inventory', '库存管理', 'update', '修改库存信息', 43),
|
|
|
+('inventory:delete', '删除库存记录', 'inventory', '库存管理', 'delete', '删除库存记录', 44);
|
|
|
+
|
|
|
+-- 新品申请模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('product-apply:create', '提交新品申请', 'product-apply', '新品申请', 'create', '提交新品申请', 51),
|
|
|
+('product-apply:read', '查询新品申请', 'product-apply', '新品申请', 'read', '查看新品申请列表和详情', 52),
|
|
|
+('product-apply:update', '修改新品申请', 'product-apply', '新品申请', 'update', '修改新品申请或审核', 53),
|
|
|
+('product-apply:delete', '删除新品申请', 'product-apply', '新品申请', 'delete', '删除新品申请', 54);
|
|
|
+
|
|
|
+-- 用户管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('admin:create', '添加用户', 'admin', '用户管理', 'create', '添加管理员账号', 61),
|
|
|
+('admin:read', '查询用户', 'admin', '用户管理', 'read', '查看用户列表和详情', 62),
|
|
|
+('admin:update', '修改用户', 'admin', '用户管理', 'update', '编辑用户信息', 63),
|
|
|
+('admin:delete', '删除用户', 'admin', '用户管理', 'delete', '删除用户账号', 64);
|
|
|
+
|
|
|
+-- 角色管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('role:create', '添加角色', 'role', '角色管理', 'create', '添加新角色', 71),
|
|
|
+('role:read', '查询角色', 'role', '角色管理', 'read', '查看角色列表和详情', 72),
|
|
|
+('role:update', '修改角色', 'role', '角色管理', 'update', '编辑角色信息和权限配置', 73),
|
|
|
+('role:delete', '删除角色', 'role', '角色管理', 'delete', '删除角色', 74);
|
|
|
+
|
|
|
+-- 公告管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('announcement:create', '发布公告', 'announcement', '公告管理', 'create', '发布新公告', 81),
|
|
|
+('announcement:read', '查询公告', 'announcement', '公告管理', 'read', '查看公告列表和详情', 82),
|
|
|
+('announcement:update', '修改公告', 'announcement', '公告管理', 'update', '编辑公告内容', 83),
|
|
|
+('announcement:delete', '删除公告', 'announcement', '公告管理', 'delete', '删除公告', 84);
|
|
|
+
|
|
|
+-- 数据同步模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('sync:read', '查询同步记录', 'sync', '数据同步', 'read', '查看数据同步记录', 91),
|
|
|
+('sync:execute', '执行同步', 'sync', '数据同步', 'execute', '执行数据同步操作', 92);
|
|
|
+
|
|
|
+-- 仪表盘模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('dashboard:read', '查看仪表盘', 'dashboard', '仪表盘', 'read', '查看首页仪表盘数据', 101);
|
|
|
+
|
|
|
+-- 操作日志模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('operation-log:read', '查询操作日志', 'operation-log', '操作日志', 'read', '查看操作日志记录', 111),
|
|
|
+('operation-log:delete', '删除操作日志', 'operation-log', '操作日志', 'delete', '删除或清空操作日志', 112);
|
|
|
+
|
|
|
+-- 客户管理模块
|
|
|
+INSERT INTO t_data_permission (permission_code, permission_name, module_code, module_name, operation_type, description, sort_order) VALUES
|
|
|
+('customer:read', '查询客户', 'customer', '客户管理', 'read', '查看客户列表和详情', 121),
|
|
|
+('customer:update', '修改客户', 'customer', '客户管理', 'update', '编辑客户信息', 123);
|
|
|
+
|
|
|
+-- =====================================================
|
|
|
+-- 为超级管理员角色(role.id=1)分配所有权限
|
|
|
+-- =====================================================
|
|
|
+INSERT INTO t_role_permission (role_id, permission_id)
|
|
|
+SELECT 1, id FROM t_data_permission WHERE status = 1;
|