diff --git a/docs/sql/02_init_routes.sql b/docs/sql/02_init_routes.sql new file mode 100644 index 0000000..03d832e --- /dev/null +++ b/docs/sql/02_init_routes.sql @@ -0,0 +1,49 @@ +-- ===================================================================== +-- 开放接口中心 注册表初版(T0.13,由全平台 oapi 盘点产出,附录 B.2 为源) +-- 形态:全量最保守——visibility=INTERNAL、auth_mode=SIGNED、cache_ttl_seconds=0、 +-- rate_limit_qps=0(后续逐条放开) +-- 粒度:按 controller 前缀 /** 聚合(行数 = 附录 B.2.2 表行数) +-- 坐标系:path_pattern = 剥掉 target 首段后的路径(如 /userbase/oapi/msg/x → /oapi/msg/x) +-- 可重复执行:INSERT IGNORE(uk_route 命中即跳过) +-- 生产导入:T1.7(provision 建库后与 01_schema.sql 一并执行) +-- ===================================================================== + +INSERT IGNORE INTO open_api_route + (target_code, path_pattern, http_method, visibility, auth_mode, cache_ttl_seconds, cache_scope, + rate_limit_qps, timeout_ms, request_body_limit_mb, enabled, remark, gmt_create, gmt_modified) +VALUES + -- userbase(UserBase 用户中心) + ('userbase', '/oapi/app/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '应用信息:byId/list', NOW(), NOW()), + ('userbase', '/oapi/group/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '组织:tree/byId/list/users/add/edit/delete/batchAdd/move', NOW(), NOW()), + ('userbase', '/oapi/identity/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '身份:current/available/switch', NOW(), NOW()), + ('userbase', '/oapi/user/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '用户:byId/byLoginName/byPhone/modules/add/edit/delete/batchAdd 等 21 端点', NOW(), NOW()), + + -- userclass(BschClass 班级管理;OA 老协议兼容路径保留原大小写) + ('userclass', '/oapi/DbClass/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:班级', NOW(), NOW()), + ('userclass', '/oapi/Common/FamCom/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:家属', NOW(), NOW()), + ('userclass', '/oapi/SchGroup/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:学校组织', NOW(), NOW()), + ('userclass', '/oapi/SchInfo/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:学校信息', NOW(), NOW()), + ('userclass', '/oapi/SubInfo/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:学科', NOW(), NOW()), + ('userclass', '/oapi/Schoolen/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:学段', NOW(), NOW()), + ('userclass', '/oapi/OAStu/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:学生信息(21 端点)', NOW(), NOW()), + ('userclass', '/oapi/TeachInfo/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:任教信息', NOW(), NOW()), + ('userclass', '/oapi/OATea/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:教师信息', NOW(), NOW()), + ('userclass', '/oapi/UserInfo/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:用户信息', NOW(), NOW()), + ('userclass', '/oapi/VSchClass/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, 'OA 兼容:虚拟班级(17 端点)', NOW(), NOW()), + ('userclass', '/oapi/group/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '同步:组织(4 端点)', NOW(), NOW()), + ('userclass', '/oapi/user/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '同步:用户(5 端点)', NOW(), NOW()), + + -- cms(Cms 门户) + ('cms', '/oapi/site/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '站点选项:list', NOW(), NOW()), + + -- svc-hall(办事大厅) + ('svc-hall', '/oapi/svc/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '事项:items/filters/detail/view/attachments/related/snapshot', NOW(), NOW()), + + -- flow-center(流程中心) + ('flow-center','/oapi/flow/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '流程:list/getFlow/apply/instance/progress/diagram/withdraw/callback-reg', NOW(), NOW()), + + -- usermsg(UserMsg 消息中心) + ('usermsg', '/oapi/msg/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '消息:sendUserMsg/list/unreadCount/read/readAll + todo(inc/reset/list) + ws/ticket', NOW(), NOW()), + + -- notice(Notice 通知公告) + ('notice', '/oapi/notice/**', '*', 'INTERNAL', 'SIGNED', 0, 'CALLER', 0, 30000, 10, 1, '字典:getDict', NOW(), NOW());