// API 端点定义 // 注意: baseURL 是 https://api.rwadurian.com/api,Kong 路由前缀是 /api/v1/ // 所以这里的端点需要以 /v1/ 开头 export const API_ENDPOINTS = { // 认证 (identity-service) AUTH: { LOGIN: '/v1/auth/login', LOGOUT: '/v1/auth/logout', REFRESH: '/v1/auth/refresh', FORGOT_PASSWORD: '/v1/auth/forgot-password', REGISTER: '/v1/auth/register', }, // 用户管理 (admin-service) USERS: { LIST: '/v1/admin/users', DETAIL: (id: string) => `/v1/admin/users/${id}`, STATS: '/v1/admin/users/stats/summary', UPDATE: (id: string) => `/v1/admin/users/${id}`, DELETE: (id: string) => `/v1/admin/users/${id}`, EXPORT: '/v1/admin/users/export', BATCH_UPDATE: '/v1/admin/users/batch', }, // 龙虎榜 (leaderboard-service) LEADERBOARD: { RANKINGS: '/v1/leaderboard/rankings', DAILY: '/v1/leaderboard/daily', WEEKLY: '/v1/leaderboard/weekly', MONTHLY: '/v1/leaderboard/monthly', SETTINGS: '/v1/leaderboard/settings', EXPORT: '/v1/leaderboard/export', }, // 授权管理 (authorization-service) AUTHORIZATION: { PROVINCE_COMPANIES: '/v1/authorizations/province-companies', CITY_COMPANIES: '/v1/authorizations/city-companies', PROVINCE_RULES: '/v1/authorizations/province-rules', CITY_RULES: '/v1/authorizations/city-rules', ASSESSMENT_RULES: '/v1/authorizations/assessment-rules', LADDER_TARGETS: '/v1/authorizations/ladder-targets', LIMITS: '/v1/authorizations/limits', AUTHORIZE: (id: string) => `/v1/authorizations/${id}/authorize`, REVOKE: (id: string) => `/v1/authorizations/${id}/revoke`, }, // 数据统计 (reporting-service) STATISTICS: { OVERVIEW: '/v1/reports/overview', TREND: '/v1/reports/trend', REGION: '/v1/reports/region', REGION_PROVINCE: '/v1/reports/region/province', REGION_CITY: '/v1/reports/region/city', LEADERBOARD: '/v1/reports/leaderboard', OPERATIONS: '/v1/reports/operations', REVENUE: '/v1/reports/revenue', EXPORT: '/v1/export', }, // 系统设置 (admin-service) SETTINGS: { ALL: '/v1/admin/settings', SETTLEMENT: '/v1/admin/settings/settlement', LEADERBOARD: '/v1/admin/settings/leaderboard', QUOTA: '/v1/admin/settings/quota', ASSESSMENT: '/v1/admin/settings/assessment', DISPLAY: '/v1/admin/settings/display', SECURITY: '/v1/admin/settings/security', ACCOUNTS: '/v1/admin/settings/accounts', OPERATION_LOGS: '/v1/admin/settings/operation-logs', }, // 系统配置 (admin-service) SYSTEM_CONFIG: { ALL: '/v1/admin/system-config', DISPLAY_SETTINGS: '/v1/admin/system-config/display/settings', BY_KEY: (key: string) => `/v1/admin/system-config/${key}`, }, // 帮助中心 HELP: { DOCUMENTS: '/v1/help/documents', DOCUMENT_DETAIL: (id: string) => `/v1/help/documents/${id}`, FAQ: '/v1/help/faq', SEARCH: '/v1/help/search', FEEDBACK: '/v1/help/feedback', }, // 仪表板 (reporting-service) DASHBOARD: { OVERVIEW: '/v1/dashboard/overview', STATS: '/v1/dashboard/stats', ACTIVITIES: '/v1/dashboard/activities', CHARTS: '/v1/dashboard/charts', REGION: '/v1/dashboard/region', }, // 通知管理 (admin-service) NOTIFICATIONS: { LIST: '/v1/admin/notifications', CREATE: '/v1/admin/notifications', DETAIL: (id: string) => `/v1/admin/notifications/${id}`, UPDATE: (id: string) => `/v1/admin/notifications/${id}`, DELETE: (id: string) => `/v1/admin/notifications/${id}`, }, // 用户画像 - 标签管理 (admin-service) USER_TAGS: { // 标签分类 CATEGORIES: '/v1/admin/tags/categories', CATEGORY_DETAIL: (id: string) => `/v1/admin/tags/categories/${id}`, // 标签 LIST: '/v1/admin/tags', CREATE: '/v1/admin/tags', DETAIL: (id: string) => `/v1/admin/tags/${id}`, UPDATE: (id: string) => `/v1/admin/tags/${id}`, DELETE: (id: string) => `/v1/admin/tags/${id}`, ESTIMATE_USERS: (id: string) => `/v1/admin/tags/${id}/estimate-users`, // 用户标签分配 ASSIGN: '/v1/admin/tags/assign', REMOVE: '/v1/admin/tags/remove', USER_TAGS: (accountSequence: string) => `/v1/admin/tags/users/${accountSequence}`, }, // 用户画像 - 分类规则 (admin-service) CLASSIFICATION_RULES: { LIST: '/v1/admin/rules', CREATE: '/v1/admin/rules', DETAIL: (id: string) => `/v1/admin/rules/${id}`, UPDATE: (id: string) => `/v1/admin/rules/${id}`, DELETE: (id: string) => `/v1/admin/rules/${id}`, EVALUATE: (id: string) => `/v1/admin/rules/${id}/evaluate`, }, // 用户画像 - 人群包 (admin-service) AUDIENCE_SEGMENTS: { LIST: '/v1/admin/segments', CREATE: '/v1/admin/segments', DETAIL: (id: string) => `/v1/admin/segments/${id}`, UPDATE: (id: string) => `/v1/admin/segments/${id}`, DELETE: (id: string) => `/v1/admin/segments/${id}`, REFRESH: (id: string) => `/v1/admin/segments/${id}/refresh`, }, } as const;