初始化2

This commit is contained in:
2026-04-08 17:10:58 +08:00
commit 4986d90eb9
532 changed files with 112617 additions and 0 deletions

259
app/api/developer/index.ts Normal file
View File

@@ -0,0 +1,259 @@
import request from '@/utils/request'
// ========== 权限申请接口 ==========
/**
* 获取权限申请列表
*/
export function getPermissionRequests(params?: {
page?: number
size?: number
status?: 'pending' | 'approved' | 'rejected'
}) {
return request.get<{
code: number
message: string
data: {
records: Array<{
id: string | number
repo: string
repoName: string
reason: string
status: 'pending' | 'approved' | 'rejected'
gitUsername: string
createdAt: string
reviewedAt?: string
reviewerName?: string
rejectReason?: string
}>
total: number
}
}>('/api/app/developer/permission-requests', { params })
}
/**
* 提交权限申请
*/
export function createPermissionRequest(data: {
repo: string
reason: string
gitUsername?: string
}) {
return request.post<{
code: number
message: string
data: {
id: string | number
repo: string
repoName: string
reason: string
status: 'pending'
createdAt: string
}
}>('/api/app/developer/permission-requests', data)
}
/**
* 获取权限申请统计
*/
export function getPermissionRequestStats() {
return request.get<{
code: number
message: string
data: {
pending: number
approved: number
rejected: number
total: number
}
}>('/api/app/developer/permission-requests/stats')
}
/**
* 获取可申请的仓库列表
*/
export function getAvailableRepositories() {
return request.get<{
code: number
message: string
data: Array<{
value: string
label: string
description: string
accessLevel?: 'read' | 'write' | 'admin'
isAccessible: boolean
}>
}>('/api/app/developer/permission-requests/available-repos')
}
// ========== Git账号绑定接口 ==========
/**
* 保存Git账号绑定信息
*/
export function saveGitAccount(data: {
username: string
email?: string
remark?: string
}) {
return request.post<{
code: number
message: string
data: {
userId: number
gitUsername: string
email?: string
remark?: string
savedAt: string
status: 'pending' | 'verified' | 'rejected'
}
}>('/api/app/developer/git-account', data)
}
/**
* 获取Git账号绑定状态
*/
export function getGitAccountStatus() {
return request.get<{
code: number
message: string
data: {
username?: string
email?: string
remark?: string
status: 'pending' | 'verified' | 'rejected' | 'not_bound'
lastUpdatedAt?: string
verificationNote?: string
}
}>('/api/app/developer/git-account/status')
}
/**
* 获取Gitea服务器信息
*/
export function getGiteaServerInfo() {
return request.get<{
code: number
message: string
data: {
url: string
version: string
registrationEnabled: boolean
requireEmailConfirmation: boolean
maxRepoCreation: number
}
}>('/api/app/developer/gitea-info')
}
// ========== 管理端 - Git账号审核接口 ==========
export interface GitAccountItem {
id: number
userId: number
username: string
email?: string
remark?: string
status: 'pending' | 'verified' | 'rejected'
verificationNote?: string
createTime: string
updateTime: string
tenantId: number
}
/**
* 分页查询Git账号绑定列表管理端
*/
export function pageGitAccounts(params?: {
page?: number
size?: number
status?: string
keyword?: string
}) {
return request.get<{
code: number
message: string
data: {
records: GitAccountItem[]
total: number
current: number
size: number
}
}>('/api/app/developer/git-account/list', { params })
}
/**
* 审核Git账号绑定 - 通过
*/
export function approveGitAccount(id: number, note?: string) {
return request.put<{
code: number
message: string
}>(`/api/app/developer/git-account/${id}/approve`, { note })
}
/**
* 审核Git账号绑定 - 拒绝
*/
export function rejectGitAccount(id: number, reason: string) {
return request.put<{
code: number
message: string
}>(`/api/app/developer/git-account/${id}/reject`, { reason })
}
// ========== 管理端 - 权限申请审核接口 ==========
export interface PermissionRequestItem {
id: number
userId: number
gitUsername: string
repo: string
repoName: string
reason: string
status: 'pending' | 'approved' | 'rejected'
createdAt: string
reviewedAt?: string
reviewerName?: string
rejectReason?: string
}
/**
* 分页查询权限申请列表(管理端)
*/
export function pagePermissionRequestsAdmin(params?: {
page?: number
size?: number
status?: string
keyword?: string
}) {
return request.get<{
code: number
message: string
data: {
records: PermissionRequestItem[]
total: number
current: number
size: number
}
}>('/api/app/developer/permission-requests/page', { params })
}
/**
* 审核权限申请 - 通过
*/
export function approvePermissionRequest(id: number, note?: string) {
return request.put<{
code: number
message: string
}>(`/api/app/developer/permission-requests/${id}/approve`, { note })
}
/**
* 审核权限申请 - 拒绝
*/
export function rejectPermissionRequest(id: number, reason: string) {
return request.put<{
code: number
message: string
}>(`/api/app/developer/permission-requests/${id}/reject`, { reason })
}