|
|
@@ -0,0 +1,255 @@
|
|
|
+-- ============================================================
|
|
|
+-- 酒店菜品管理模块:分类、菜品、规格组、规格选项、加料、操作日志
|
|
|
+-- ============================================================
|
|
|
+
|
|
|
+-- 菜品分类表
|
|
|
+CREATE TABLE IF NOT EXISTS `hotel_dish_category` (
|
|
|
+ `id` bigint NOT NULL COMMENT '主键ID(雪花算法)',
|
|
|
+ `tenant_id` bigint NOT NULL DEFAULT 1 COMMENT '租户ID',
|
|
|
+ `name` varchar(64) NOT NULL COMMENT '分类名称',
|
|
|
+ `icon` varchar(32) DEFAULT NULL COMMENT '图标(emoji)',
|
|
|
+ `sort_order` int DEFAULT 0 COMMENT '排序号',
|
|
|
+ `status` varchar(16) NOT NULL DEFAULT 'ENABLED' COMMENT '状态(ENABLED=启用, DISABLED=禁用)',
|
|
|
+ `del_flag` bigint NOT NULL DEFAULT 0 COMMENT '删除标记(0=未删除,删除时写入主键ID)',
|
|
|
+ `create_by` bigint DEFAULT NULL COMMENT '创建者',
|
|
|
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
|
|
+ `update_by` bigint DEFAULT NULL COMMENT '更新者',
|
|
|
+ `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ KEY `idx_tenant_status` (`tenant_id`, `status`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='酒店菜品分类表';
|
|
|
+
|
|
|
+-- 菜品表
|
|
|
+CREATE TABLE IF NOT EXISTS `hotel_dish` (
|
|
|
+ `id` bigint NOT NULL COMMENT '主键ID(雪花算法)',
|
|
|
+ `tenant_id` bigint NOT NULL DEFAULT 1 COMMENT '租户ID',
|
|
|
+ `name` varchar(128) NOT NULL COMMENT '菜品名称',
|
|
|
+ `category_id` bigint DEFAULT NULL COMMENT '分类ID',
|
|
|
+ `price` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '基础价格(元)',
|
|
|
+ `image` varchar(512) DEFAULT NULL COMMENT '主图(文件ID)',
|
|
|
+ `images` text DEFAULT NULL COMMENT '附加图片(逗号分隔fileId)',
|
|
|
+ `description` varchar(512) DEFAULT NULL COMMENT '菜品描述',
|
|
|
+ `tags` varchar(255) DEFAULT NULL COMMENT '标签(逗号分隔)',
|
|
|
+ `prep_time` int DEFAULT NULL COMMENT '预计制作时长(分钟)',
|
|
|
+ `sales` int DEFAULT 0 COMMENT '月销量',
|
|
|
+ `status` varchar(16) NOT NULL DEFAULT 'ON_SALE' COMMENT '状态(ON_SALE=在售, OFF_SHELF=下架)',
|
|
|
+ `sold_out` tinyint NOT NULL DEFAULT 0 COMMENT '是否售罄(0=正常, 1=售罄)',
|
|
|
+ `is_recommended` tinyint NOT NULL DEFAULT 0 COMMENT '是否主厨推荐(0=否, 1=是)',
|
|
|
+ `sort_order` int DEFAULT 0 COMMENT '排序权重',
|
|
|
+ `del_flag` bigint NOT NULL DEFAULT 0 COMMENT '删除标记(0=未删除,删除时写入主键ID)',
|
|
|
+ `create_by` bigint DEFAULT NULL COMMENT '创建者',
|
|
|
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
|
|
+ `update_by` bigint DEFAULT NULL COMMENT '更新者',
|
|
|
+ `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ KEY `idx_tenant_category` (`tenant_id`, `category_id`),
|
|
|
+ KEY `idx_tenant_status` (`tenant_id`, `status`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='酒店菜品表';
|
|
|
+
|
|
|
+-- 菜品规格组表
|
|
|
+CREATE TABLE IF NOT EXISTS `hotel_dish_spec_group` (
|
|
|
+ `id` bigint NOT NULL COMMENT '主键ID(雪花算法)',
|
|
|
+ `tenant_id` bigint NOT NULL DEFAULT 1 COMMENT '租户ID',
|
|
|
+ `dish_id` bigint NOT NULL COMMENT '关联菜品ID',
|
|
|
+ `group_name` varchar(64) NOT NULL COMMENT '规格组名称(如:熟度、酱汁)',
|
|
|
+ `required` tinyint NOT NULL DEFAULT 0 COMMENT '是否必选(0=可选, 1=必选)',
|
|
|
+ `sort_order` int DEFAULT 0 COMMENT '排序号',
|
|
|
+ `del_flag` bigint NOT NULL DEFAULT 0 COMMENT '删除标记(0=未删除,删除时写入主键ID)',
|
|
|
+ `create_by` bigint DEFAULT NULL COMMENT '创建者',
|
|
|
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
|
|
+ `update_by` bigint DEFAULT NULL COMMENT '更新者',
|
|
|
+ `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ KEY `idx_dish_id` (`dish_id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='酒店菜品规格组表';
|
|
|
+
|
|
|
+-- 菜品规格选项表
|
|
|
+CREATE TABLE IF NOT EXISTS `hotel_dish_spec_option` (
|
|
|
+ `id` bigint NOT NULL COMMENT '主键ID(雪花算法)',
|
|
|
+ `tenant_id` bigint NOT NULL DEFAULT 1 COMMENT '租户ID',
|
|
|
+ `group_id` bigint NOT NULL COMMENT '关联规格组ID',
|
|
|
+ `option_name` varchar(64) NOT NULL COMMENT '选项名称(如:三分熟、黑椒汁)',
|
|
|
+ `price_extra` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '加价金额(元)',
|
|
|
+ `sort_order` int DEFAULT 0 COMMENT '排序号',
|
|
|
+ `del_flag` bigint NOT NULL DEFAULT 0 COMMENT '删除标记(0=未删除,删除时写入主键ID)',
|
|
|
+ `create_by` bigint DEFAULT NULL COMMENT '创建者',
|
|
|
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
|
|
+ `update_by` bigint DEFAULT NULL COMMENT '更新者',
|
|
|
+ `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ KEY `idx_group_id` (`group_id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='酒店菜品规格选项表';
|
|
|
+
|
|
|
+-- 菜品加料表
|
|
|
+CREATE TABLE IF NOT EXISTS `hotel_dish_addition` (
|
|
|
+ `id` bigint NOT NULL COMMENT '主键ID(雪花算法)',
|
|
|
+ `tenant_id` bigint NOT NULL DEFAULT 1 COMMENT '租户ID',
|
|
|
+ `dish_id` bigint NOT NULL COMMENT '菜品ID',
|
|
|
+ `name` varchar(64) NOT NULL COMMENT '加料名称',
|
|
|
+ `extra_price` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '加料价格(元)',
|
|
|
+ `sort_order` int DEFAULT 0 COMMENT '排序权重',
|
|
|
+ `del_flag` bigint NOT NULL DEFAULT 0 COMMENT '删除标记(0=未删除,删除时写入主键ID)',
|
|
|
+ `create_by` bigint DEFAULT NULL COMMENT '创建者',
|
|
|
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
|
|
+ `update_by` bigint DEFAULT NULL COMMENT '更新者',
|
|
|
+ `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ KEY `idx_dish_id` (`dish_id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='酒店菜品加料表';
|
|
|
+
|
|
|
+-- 菜品操作日志表
|
|
|
+CREATE TABLE IF NOT EXISTS `hotel_dish_log` (
|
|
|
+ `id` bigint NOT NULL COMMENT '主键ID(雪花算法)',
|
|
|
+ `tenant_id` bigint NOT NULL DEFAULT 1 COMMENT '租户ID',
|
|
|
+ `dish_id` bigint DEFAULT NULL COMMENT '菜品ID',
|
|
|
+ `dish_name` varchar(128) DEFAULT NULL COMMENT '菜品名称(冗余)',
|
|
|
+ `operation_type` varchar(32) NOT NULL COMMENT '操作类型(CREATE/EDIT/DELETE/ON_SALE/OFF_SHELF/SOLD_OUT/RESTORE)',
|
|
|
+ `old_value` text DEFAULT NULL COMMENT '变更前值(JSON)',
|
|
|
+ `new_value` text DEFAULT NULL COMMENT '变更后值(JSON)',
|
|
|
+ `remark` varchar(255) DEFAULT NULL COMMENT '备注',
|
|
|
+ `create_by` bigint DEFAULT NULL COMMENT '创建者',
|
|
|
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
|
|
+ `update_by` bigint DEFAULT NULL COMMENT '更新者',
|
|
|
+ `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
+ PRIMARY KEY (`id`),
|
|
|
+ KEY `idx_dish_id` (`dish_id`)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='酒店菜品操作日志表';
|
|
|
+
|
|
|
+-- ============================================================
|
|
|
+-- 字典数据
|
|
|
+-- ============================================================
|
|
|
+
|
|
|
+-- 菜品状态字典类型
|
|
|
+INSERT INTO sys_dict_type (tenant_id, dict_name, dict_type, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品状态', 'hotel_dish_status', 1, '酒店菜品状态', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_type WHERE dict_type = 'hotel_dish_status' AND tenant_id = 1);
|
|
|
+
|
|
|
+-- 菜品状态字典数据
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 1, '在售', 'ON_SALE', 'hotel_dish_status', NULL, 'success', 'N', 1, '在售状态', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_status' AND dict_value = 'ON_SALE' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 2, '下架', 'OFF_SHELF', 'hotel_dish_status', NULL, 'default', 'N', 1, '下架状态', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_status' AND dict_value = 'OFF_SHELF' AND tenant_id = 1);
|
|
|
+
|
|
|
+-- 分类状态字典类型
|
|
|
+INSERT INTO sys_dict_type (tenant_id, dict_name, dict_type, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, '分类状态', 'hotel_category_status', 1, '酒店菜品分类状态', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_type WHERE dict_type = 'hotel_category_status' AND tenant_id = 1);
|
|
|
+
|
|
|
+-- 分类状态字典数据
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 1, '启用', 'ENABLED', 'hotel_category_status', NULL, 'success', 'N', 1, '启用状态', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_category_status' AND dict_value = 'ENABLED' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 2, '禁用', 'DISABLED', 'hotel_category_status', NULL, 'default', 'N', 1, '禁用状态', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_category_status' AND dict_value = 'DISABLED' AND tenant_id = 1);
|
|
|
+
|
|
|
+-- 菜品操作日志类型字典
|
|
|
+INSERT INTO sys_dict_type (tenant_id, dict_name, dict_type, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品操作类型', 'hotel_dish_operation_type', 1, '酒店菜品操作日志类型', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_type WHERE dict_type = 'hotel_dish_operation_type' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 1, '新增', 'CREATE', 'hotel_dish_operation_type', NULL, 'success', 'N', 1, '新增菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'CREATE' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 2, '编辑', 'EDIT', 'hotel_dish_operation_type', NULL, 'primary', 'N', 1, '编辑菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'EDIT' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 3, '删除', 'DELETE', 'hotel_dish_operation_type', NULL, 'error', 'N', 1, '删除菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'DELETE' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 4, '上架', 'ON_SALE', 'hotel_dish_operation_type', NULL, 'success', 'N', 1, '上架菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'ON_SALE' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 5, '下架', 'OFF_SHELF', 'hotel_dish_operation_type', NULL, 'warning', 'N', 1, '下架菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'OFF_SHELF' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 6, '售罄', 'SOLD_OUT', 'hotel_dish_operation_type', NULL, 'error', 'N', 1, '标记售罄', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'SOLD_OUT' AND tenant_id = 1);
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, dict_status, remark, create_time, update_time)
|
|
|
+SELECT 1, 7, '恢复', 'RESTORE', 'hotel_dish_operation_type', NULL, 'success', 'N', 1, '恢复上架', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data WHERE dict_type = 'hotel_dish_operation_type' AND dict_value = 'RESTORE' AND tenant_id = 1);
|
|
|
+
|
|
|
+-- ============================================================
|
|
|
+-- 菜单资源(sys_resource)
|
|
|
+-- ============================================================
|
|
|
+
|
|
|
+-- 菜品管理菜单(挂在酒店管理下,如果酒店管理不存在则创建为一级目录)
|
|
|
+-- 先查找是否已有酒店管理目录
|
|
|
+SET @hotel_parent_id = (SELECT id FROM sys_resource WHERE resource_name = '酒店管理' AND tenant_id = 1 AND parent_id = 0 LIMIT 1);
|
|
|
+
|
|
|
+-- 如果没有酒店管理目录,创建一个
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, path, component, is_external, is_public, menu_status, visible, icon, keep_alive, always_show, remark, create_time, update_time)
|
|
|
+SELECT 1, '酒店管理', 0, 1, 70, '/hotel', NULL, 0, 0, 1, 1, 'mdi:hotel', 0, 1, '酒店管理目录', NOW(), NOW()
|
|
|
+WHERE @hotel_parent_id IS NULL;
|
|
|
+
|
|
|
+SET @hotel_parent_id = IFNULL(
|
|
|
+ (SELECT id FROM sys_resource WHERE resource_name = '酒店管理' AND tenant_id = 1 AND parent_id = 0 LIMIT 1),
|
|
|
+ LAST_INSERT_ID()
|
|
|
+);
|
|
|
+
|
|
|
+-- 菜品管理菜单
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, path, component, is_external, is_public, menu_status, visible, icon, keep_alive, always_show, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品管理', @hotel_parent_id, 2, 20, '/hotel/dish', 'hotel/dish', 0, 0, 1, 1, 'mdi:food', 0, 0, '菜品管理菜单', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE resource_name = '菜品管理' AND parent_id = @hotel_parent_id);
|
|
|
+
|
|
|
+SET @dish_menu_id = (SELECT id FROM sys_resource WHERE resource_name = '菜品管理' AND parent_id = @hotel_parent_id LIMIT 1);
|
|
|
+
|
|
|
+-- 菜品管理按钮权限
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品查询', @dish_menu_id, 3, 1, 'hotel:dish:query', 0, 0, 1, 1, '查询菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dish:query' AND parent_id = @dish_menu_id);
|
|
|
+
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品新增', @dish_menu_id, 3, 2, 'hotel:dish:add', 0, 0, 1, 1, '新增菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dish:add' AND parent_id = @dish_menu_id);
|
|
|
+
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品编辑', @dish_menu_id, 3, 3, 'hotel:dish:edit', 0, 0, 1, 1, '编辑菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dish:edit' AND parent_id = @dish_menu_id);
|
|
|
+
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品删除', @dish_menu_id, 3, 4, 'hotel:dish:delete', 0, 0, 1, 1, '删除菜品', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dish:delete' AND parent_id = @dish_menu_id);
|
|
|
+
|
|
|
+-- 菜品分类菜单
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, path, component, is_external, is_public, menu_status, visible, icon, keep_alive, always_show, remark, create_time, update_time)
|
|
|
+SELECT 1, '菜品分类', @hotel_parent_id, 2, 21, '/hotel/dishCategory', 'hotel/dishCategory', 0, 0, 1, 1, 'mdi:food-apple', 0, 0, '菜品分类菜单', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE resource_name = '菜品分类' AND parent_id = @hotel_parent_id);
|
|
|
+
|
|
|
+SET @category_menu_id = (SELECT id FROM sys_resource WHERE resource_name = '菜品分类' AND parent_id = @hotel_parent_id LIMIT 1);
|
|
|
+
|
|
|
+-- 菜品分类按钮权限
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '分类查询', @category_menu_id, 3, 1, 'hotel:dishCategory:query', 0, 0, 1, 1, '查询分类', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dishCategory:query' AND parent_id = @category_menu_id);
|
|
|
+
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '分类新增', @category_menu_id, 3, 2, 'hotel:dishCategory:add', 0, 0, 1, 1, '新增分类', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dishCategory:add' AND parent_id = @category_menu_id);
|
|
|
+
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '分类编辑', @category_menu_id, 3, 3, 'hotel:dishCategory:edit', 0, 0, 1, 1, '编辑分类', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dishCategory:edit' AND parent_id = @category_menu_id);
|
|
|
+
|
|
|
+INSERT INTO sys_resource (tenant_id, resource_name, parent_id, resource_type, sort, perms, is_external, is_public, menu_status, visible, remark, create_time, update_time)
|
|
|
+SELECT 1, '分类删除', @category_menu_id, 3, 4, 'hotel:dishCategory:delete', 0, 0, 1, 1, '删除分类', NOW(), NOW()
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_resource WHERE perms = 'hotel:dishCategory:delete' AND parent_id = @category_menu_id);
|
|
|
+
|
|
|
+
|