34 lines
1.9 KiB
SQL
34 lines
1.9 KiB
SQL
-- =============================================================
|
||
-- 移动端「常用功能」自定义入口
|
||
--
|
||
-- 说明:uniapp 子系统首页「常用功能」宫格由用户自行挑选要展示的功能,
|
||
-- 末位固定为「+」用于打开选择器增删。每个租户下的每个用户维护一份有序
|
||
-- 的功能菜单 ID 列表,存于本表。
|
||
--
|
||
-- 关联代码:
|
||
-- 模型 go/models/uniapp_user_quick_menu.go (UniappUserQuickMenu)
|
||
-- 接口 GET /app/home → data.quick_menu_ids(读取)
|
||
-- POST /app/quick-menus → 保存(全量覆盖)
|
||
--
|
||
-- 约定:
|
||
-- - yz_uniapp_ 前缀代表移动端(uniapp)专属数据表
|
||
-- - tid 租户 ID(对应 JWT claims.TenantId)
|
||
-- - uid 用户身份 ID(对应 JWT claims.UserID,与业务表 user_id 同源)
|
||
-- - menu_ids JSON 数组字符串,元素为 yz_system_menu.id,顺序即展示顺序
|
||
-- 例:[81,101,102,113,116]
|
||
-- - 一个 (tid, uid) 仅一条记录,保存走 upsert,唯一键保证。
|
||
--
|
||
-- 本表由人工执行建表,代码不做自动建表(见 models/init.go 约定)。
|
||
-- =============================================================
|
||
|
||
CREATE TABLE IF NOT EXISTS `yz_uniapp_user_quick_menu` (
|
||
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||
`tid` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '租户ID',
|
||
`uid` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '用户身份ID(claims.UserID)',
|
||
`menu_ids` TEXT COMMENT '常用功能菜单ID有序JSON数组',
|
||
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
`update_time` DATETIME NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||
PRIMARY KEY (`id`),
|
||
UNIQUE KEY `uk_tid_uid` (`tid`, `uid`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='移动端用户自定义常用功能入口';
|