SuperAPI AI 工具集

docyrus-app-settings

设计与创作

查看项目

更新于 10-15 21:11

技能介绍

用途:为 Docyrus 应用附加两类数据库存储的设置文档。AppConfig 作用于整个应用,租户内所有用户可见,适合功能开关、默认值、共享筛选、集成配置等由管理员或构建者配置的应用级设置;UserAppConfig 作用于应用与当前登录用户,仅本人可见,适合主题、布局、侧边栏状态、引导提示、个人默认值等偏好。若设置属于租户级区域与格式偏好(语言、日期/数字/货币格式、工作时间),应改用 docyrus-account-settings。

主要能力:两类文档均为单文档、仅支持 upsert,没有列表与查询。文档包含自由设计的 JSON 对象 data、自定义小整数 status(首次写入默认 1)、tenant_app_id、创建与修改信息;用户配置额外含 user_id。

使用方式:在 React/TypeScript 应用中用 @docyrus/app-utils 的 createAppConfigClient 与 createUserAppConfigClient,基于 RestApiClient 和 appId 构建,提供 get/upsert/remove,并自动解包响应。get() 在无文档时不抛错,返回 id 为空的空文档,可用 !doc.id 判断未配置;remove() 在无内容时抛 404。也可通过 docyrus curl 直接调用 /v1/tenant/apps/<appId>/config 与 /user-config 端点,原始响应中设置值位于 response.data.data。可选传入共享 InventoryClient 以缓存读取并就地更新缓存。

限制:data 必须是 JSON 对象,写入为整体替换而非深合并,修改单个键需先读再合并写回;用户配置只能读写本人文档;应用配置写入需要租户管理员级令牌,用户配置写入只需用户自身令牌。完整 HTTP 契约与 OAuth2 权限范围见 references/rest-api.md。