-- ============================================================= -- 移动端「常用功能」自定义入口 -- -- 说明: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='移动端用户自定义常用功能入口';