feat: oauth 添加字段

This commit is contained in:
Gavan
2025-07-14 14:04:25 +08:00
parent 0776e5eb54
commit bede408e41
13 changed files with 564 additions and 347 deletions

232
ui/src/api/Admin.ts Normal file
View File

@@ -0,0 +1,232 @@
/* eslint-disable */
/* tslint:disable */
// @ts-nocheck
/*
* ---------------------------------------------------------------
* ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##
* ## ##
* ## AUTHOR: acacode ##
* ## SOURCE: https://github.com/acacode/swagger-typescript-api ##
* ---------------------------------------------------------------
*/
import request, { ContentType, RequestParams } from "./httpClient";
import {
DeleteDeleteAdminParams,
DomainAdminUser,
DomainCreateAdminReq,
DomainListAdminLoginHistoryResp,
DomainListAdminUserResp,
DomainLoginReq,
DomainSetting,
DomainUpdateSettingReq,
GetAdminLoginHistoryParams,
GetListAdminUserParams,
WebResp,
} from "./types";
/**
* @description 创建管理员
*
* @tags Admin
* @name PostCreateAdmin
* @summary 创建管理员
* @request POST:/api/v1/admin/create
* @response `200` `(WebResp & {
data?: DomainAdminUser,
})` OK
*/
export const postCreateAdmin = (
param: DomainCreateAdminReq,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainAdminUser;
}
>({
path: `/api/v1/admin/create`,
method: "POST",
body: param,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 删除管理员
*
* @tags Admin
* @name DeleteDeleteAdmin
* @summary 删除管理员
* @request DELETE:/api/v1/admin/delete
* @response `200` `(WebResp & {
data?: Record<string, any>,
})` OK
*/
export const deleteDeleteAdmin = (
query: DeleteDeleteAdminParams,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: Record<string, any>;
}
>({
path: `/api/v1/admin/delete`,
method: "DELETE",
query: query,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 获取管理员用户列表
*
* @tags Admin
* @name GetListAdminUser
* @summary 获取管理员用户列表
* @request GET:/api/v1/admin/list
* @response `200` `(WebResp & {
data?: DomainListAdminUserResp,
})` OK
*/
export const getListAdminUser = (
query: GetListAdminUserParams,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainListAdminUserResp;
}
>({
path: `/api/v1/admin/list`,
method: "GET",
query: query,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 管理员登录
*
* @tags Admin
* @name PostAdminLogin
* @summary 管理员登录
* @request POST:/api/v1/admin/login
* @response `200` `(WebResp & {
data?: DomainAdminUser,
})` OK
*/
export const postAdminLogin = (
param: DomainLoginReq,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainAdminUser;
}
>({
path: `/api/v1/admin/login`,
method: "POST",
body: param,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 获取管理员登录历史
*
* @tags Admin
* @name GetAdminLoginHistory
* @summary 获取管理员登录历史
* @request GET:/api/v1/admin/login-history
* @response `200` `(WebResp & {
data?: DomainListAdminLoginHistoryResp,
})` OK
*/
export const getAdminLoginHistory = (
query: GetAdminLoginHistoryParams,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainListAdminLoginHistoryResp;
}
>({
path: `/api/v1/admin/login-history`,
method: "GET",
query: query,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 获取系统设置
*
* @tags Admin
* @name GetGetSetting
* @summary 获取系统设置
* @request GET:/api/v1/admin/setting
* @response `200` `(WebResp & {
data?: DomainSetting,
})` OK
*/
export const getGetSetting = (params: RequestParams = {}) =>
request<
WebResp & {
data?: DomainSetting;
}
>({
path: `/api/v1/admin/setting`,
method: "GET",
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 更新系统设置
*
* @tags Admin
* @name PutUpdateSetting
* @summary 更新系统设置
* @request PUT:/api/v1/admin/setting
* @response `200` `(WebResp & {
data?: DomainSetting,
})` OK
*/
export const putUpdateSetting = (
param: DomainUpdateSettingReq,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainSetting;
}
>({
path: `/api/v1/admin/setting`,
method: "PUT",
body: param,
type: ContentType.Json,
format: "json",
...params,
});

View File

@@ -12,25 +12,16 @@
import request, { ContentType, RequestParams } from "./httpClient";
import {
DeleteDeleteAdminParams,
DeleteDeleteUserParams,
DomainAdminUser,
DomainCreateAdminReq,
DomainInviteResp,
DomainListAdminLoginHistoryResp,
DomainListAdminUserResp,
DomainListLoginHistoryResp,
DomainListUserResp,
DomainLoginReq,
DomainLoginResp,
DomainOAuthURLResp,
DomainRegisterReq,
DomainSetting,
DomainUpdateSettingReq,
DomainUpdateUserReq,
DomainUser,
GetAdminLoginHistoryParams,
GetListAdminUserParams,
GetListUserParams,
GetLoginHistoryParams,
GetUserOauthCallbackParams,
@@ -38,212 +29,6 @@ import {
WebResp,
} from "./types";
/**
* @description 创建管理员
*
* @tags User
* @name PostCreateAdmin
* @summary 创建管理员
* @request POST:/api/v1/admin/create
* @response `200` `(WebResp & {
data?: DomainAdminUser,
})` OK
*/
export const postCreateAdmin = (
param: DomainCreateAdminReq,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainAdminUser;
}
>({
path: `/api/v1/admin/create`,
method: "POST",
body: param,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 删除管理员
*
* @tags User
* @name DeleteDeleteAdmin
* @summary 删除管理员
* @request DELETE:/api/v1/admin/delete
* @response `200` `(WebResp & {
data?: Record<string, any>,
})` OK
*/
export const deleteDeleteAdmin = (
query: DeleteDeleteAdminParams,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: Record<string, any>;
}
>({
path: `/api/v1/admin/delete`,
method: "DELETE",
query: query,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 获取管理员用户列表
*
* @tags User
* @name GetListAdminUser
* @summary 获取管理员用户列表
* @request GET:/api/v1/admin/list
* @response `200` `(WebResp & {
data?: DomainListAdminUserResp,
})` OK
*/
export const getListAdminUser = (
query: GetListAdminUserParams,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainListAdminUserResp;
}
>({
path: `/api/v1/admin/list`,
method: "GET",
query: query,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 管理员登录
*
* @tags User
* @name PostAdminLogin
* @summary 管理员登录
* @request POST:/api/v1/admin/login
* @response `200` `(WebResp & {
data?: DomainAdminUser,
})` OK
*/
export const postAdminLogin = (
param: DomainLoginReq,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainAdminUser;
}
>({
path: `/api/v1/admin/login`,
method: "POST",
body: param,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 获取管理员登录历史
*
* @tags User
* @name GetAdminLoginHistory
* @summary 获取管理员登录历史
* @request GET:/api/v1/admin/login-history
* @response `200` `(WebResp & {
data?: DomainListAdminLoginHistoryResp,
})` OK
*/
export const getAdminLoginHistory = (
query: GetAdminLoginHistoryParams,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainListAdminLoginHistoryResp;
}
>({
path: `/api/v1/admin/login-history`,
method: "GET",
query: query,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 获取系统设置
*
* @tags User
* @name GetGetSetting
* @summary 获取系统设置
* @request GET:/api/v1/admin/setting
* @response `200` `(WebResp & {
data?: DomainSetting,
})` OK
*/
export const getGetSetting = (params: RequestParams = {}) =>
request<
WebResp & {
data?: DomainSetting;
}
>({
path: `/api/v1/admin/setting`,
method: "GET",
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 更新系统设置
*
* @tags User
* @name PutUpdateSetting
* @summary 更新系统设置
* @request PUT:/api/v1/admin/setting
* @response `200` `(WebResp & {
data?: DomainSetting,
})` OK
*/
export const putUpdateSetting = (
param: DomainUpdateSettingReq,
params: RequestParams = {},
) =>
request<
WebResp & {
data?: DomainSetting;
}
>({
path: `/api/v1/admin/setting`,
method: "PUT",
body: param,
type: ContentType.Json,
format: "json",
...params,
});
/**
* @description 下载VSCode插件
*

View File

@@ -1,3 +1,4 @@
export * from './Admin'
export * from './Billing'
export * from './Dashboard'
export * from './Model'

View File

@@ -185,6 +185,40 @@ export interface DomainCreateModelReq {
provider?: string;
}
export interface DomainCustomOAuth {
/** 自定义OAuth访问令牌URL */
access_token_url?: string;
/** 自定义OAuth授权URL */
authorize_url?: string;
/** 用户信息回包中的头像URL字段名` */
avatar_field?: string;
/** 自定义客户端ID */
client_id?: string;
/** 自定义客户端密钥 */
client_secret?: string;
/** 用户信息回包中的邮箱字段名 */
email_field?: string;
/** 自定义OAuth开关 */
enable?: boolean;
/** 用户信息回包中的ID字段名 */
id_field?: string;
/** 用户信息回包中的用户名字段名` */
name_field?: string;
/** 自定义OAuth Scope列表 */
scopes?: string[];
/** 自定义OAuth用户信息URL */
userinfo_url?: string;
}
export interface DomainDingtalkOAuth {
/** 钉钉客户端ID */
client_id?: string;
/** 钉钉客户端密钥 */
client_secret?: string;
/** 钉钉OAuth开关 */
enable?: boolean;
}
export interface DomainIPInfo {
/** ASN */
asn?: string;
@@ -357,24 +391,12 @@ export interface DomainRegisterReq {
export interface DomainSetting {
/** 创建时间 */
created_at?: number;
/** 自定义OAuth访问令牌URL */
custom_oauth_access_token_url?: string;
/** 自定义OAuth授权URL */
custom_oauth_authorize_url?: string;
/** 自定义OAuth客户端ID */
custom_oauth_client_id?: string;
/** 自定义OAuth Scope列表 */
custom_oauth_scopes?: string[];
/** 自定义OAuth用户信息URL */
custom_oauth_userinfo_url?: string;
/** 钉钉客户端ID */
dingtalk_client_id?: string;
/** 自定义OAuth接入 */
custom_oauth?: DomainCustomOAuth;
/** 钉钉OAuth接入 */
dingtalk_oauth?: DomainDingtalkOAuth;
/** 是否禁用密码登录 */
disable_password_login?: boolean;
/** 是否开启自定义OAuth */
enable_custom_oauth?: boolean;
/** 是否开启钉钉OAuth */
enable_dingtalk_oauth?: boolean;
/** 是否开启SSO */
enable_sso?: boolean;
/** 是否强制两步验证 */
@@ -461,28 +483,12 @@ export interface DomainUpdateModelReq {
}
export interface DomainUpdateSettingReq {
/** 自定义OAuth访问令牌URL */
custom_oauth_access_token_url?: string;
/** 自定义OAuth授权URL */
custom_oauth_authorize_url?: string;
/** 自定义OAuth客户端ID */
custom_oauth_client_id?: string;
/** 自定义OAuth客户端密钥 */
custom_oauth_client_secret?: string;
/** 自定义OAuth Scope列表 */
custom_oauth_scopes?: string[];
/** 自定义OAuth用户信息URL */
custom_oauth_userinfo_url?: string;
/** 钉钉客户端ID */
dingtalk_client_id?: string;
/** 钉钉客户端密钥 */
dingtalk_client_secret?: string;
/** 自定义OAuth配置 */
custom_oauth?: DomainCustomOAuth;
/** 钉钉OAuth配置 */
dingtalk_oauth?: DomainDingtalkOAuth;
/** 是否禁用密码登录 */
disable_password_login?: boolean;
/** 是否开启自定义OAuth */
enable_custom_oauth?: boolean;
/** 是否开启钉钉OAuth */
enable_dingtalk_oauth?: boolean;
/** 是否开启SSO */
enable_sso?: boolean;
/** 是否强制两步验证 */
@@ -499,6 +505,8 @@ export interface DomainUpdateUserReq {
}
export interface DomainUser {
/** 头像URL */
avatar_url?: string;
/** 创建时间 */
created_at?: number;
/** 邮箱 */