refactor(user): 将VIP身份统一改为开发者标记
- 审核通过时不再新增角色,而是更新用户isDeveloper布尔标记 - 后端UserService新增markAsDeveloper方法,通过updateById设置isDeveloper - UserController新增PUT接口更新开发者标记,权限使用sys:userRole:save - 前端api新增setUserDeveloper调用新的审核接口 - vip-review页面移除角色相关代码,改为调用setUserDeveloper方法 - 约定开发者身份即sys_user.is_developer字段,不再依赖角色表记录 - app.config.ts追加开发者中心与平台管理相关页面路由 - 新增开发者中心、平台管理的多个API模块(apikey、appProduct、appDomain、developer请求等) - 添加公共工具方法和复用组件用于开发者中心及平台管理功能 - 统一品牌名称为“威数谱软件”,更新文案及界面展现一致性
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
// API Key 管理(对齐 PC /developer/apikeys,基址走 websopy-api)
|
||||
import { get, post, put, del } from '@/utils/request'
|
||||
import { WebsopyBaseUrl } from '@/config/app'
|
||||
|
||||
const BASE = '/app/apikey'
|
||||
|
||||
export interface AppApiKey {
|
||||
id: number
|
||||
name: string
|
||||
apiKey: string
|
||||
keyPrefix?: string
|
||||
status: number // 0正常 1禁用
|
||||
scopes?: string
|
||||
expireTime?: string
|
||||
lastUsedAt?: string
|
||||
usageCount?: number
|
||||
remark?: string
|
||||
createTime?: string
|
||||
}
|
||||
|
||||
export async function pageAppApiKey(params: any) {
|
||||
const res = await get<any>(BASE, params, { baseUrl: WebsopyBaseUrl })
|
||||
if (res?.code === 0) return res.data
|
||||
return Promise.reject(new Error(res?.message || '加载失败'))
|
||||
}
|
||||
|
||||
export async function createAppApiKey(data: any) {
|
||||
const res = await post<any>(BASE, data, { baseUrl: WebsopyBaseUrl })
|
||||
if (res?.code === 0) return res.data
|
||||
return Promise.reject(new Error(res?.message || '创建失败'))
|
||||
}
|
||||
|
||||
export async function updateAppApiKeyStatus(id: number, status: number) {
|
||||
const res = await put<any>(`${BASE}/${id}/status?status=${status}`, {}, { baseUrl: WebsopyBaseUrl })
|
||||
if (res?.code === 0) return res.message
|
||||
return Promise.reject(new Error(res?.message || '操作失败'))
|
||||
}
|
||||
|
||||
export async function removeAppApiKey(id: number) {
|
||||
const res = await del<any>(`${BASE}/${id}`, {}, { baseUrl: WebsopyBaseUrl })
|
||||
if (res?.code === 0) return res.message
|
||||
return Promise.reject(new Error(res?.message || '删除失败'))
|
||||
}
|
||||
|
||||
export async function getAppApiKeyStats() {
|
||||
const res = await get<any>(`${BASE}/stats`, undefined, { baseUrl: WebsopyBaseUrl })
|
||||
if (res?.code === 0) return res.data
|
||||
return Promise.reject(new Error(res?.message || '加载失败'))
|
||||
}
|
||||
Reference in New Issue
Block a user