Documentation
¶
Index ¶
- type Logger
- type Login
- func (a *Login) GetCaptcha(c *gin.Context)
- func (a *Login) GetUserInfo(c *gin.Context)
- func (a *Login) Login(c *gin.Context)
- func (a *Login) Logout(c *gin.Context)
- func (a *Login) QueryMenus(c *gin.Context)
- func (a *Login) RefreshToken(c *gin.Context)
- func (a *Login) RefreshTokenWithRefreshToken(c *gin.Context)
- func (a *Login) ResponseCaptcha(c *gin.Context)
- func (a *Login) UpdatePassword(c *gin.Context)
- func (a *Login) UpdateUser(c *gin.Context)
- type Menu
- type Role
- type Tenant
- type TenantEndpoint
- type TenantModel
- type User
- type UserAPIKey
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Logger ¶
Logger management
func (*Logger) Query ¶
@Tags LoggerAPI @Security ApiKeyAuth @Summary Query logger list @Param current query int true "pagination index" default(1) @Param pageSize query int true "pagination size" default(10) @Param level query string false "log level" @Param traceID query string false "trace ID" @Param userName query string false "user name" @Param tag query string false "log tag" @Param message query string false "log message" @Param startTime query string false "start time" @Param endTime query string false "end time" @Success 200 {object} util.ResponseResult{data=[]schema.Logger} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/loggers [get]
type Login ¶
func (*Login) GetCaptcha ¶
@Tags LoginAPI @Summary Get captcha ID @Success 200 {object} util.ResponseResult{data=schema.Captcha} @Router /api/v1/captcha/id [get]
func (*Login) GetUserInfo ¶
@Tags LoginAPI @Security ApiKeyAuth @Summary Get current user info @Success 200 {object} util.ResponseResult{data=schema.User} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/current/user [get]
func (*Login) Login ¶
@Tags LoginAPI @Summary Login system with username and password @Param body body schema.LoginForm true "Request body" @Success 200 {object} util.ResponseResult{data=schema.LoginToken} @Failure 400 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/login [post]
func (*Login) Logout ¶
@Tags LoginAPI @Security ApiKeyAuth @Summary Logout system with optional refresh token revocation @Param body body schema.RefreshTokenForm false "Request body (optional, for refresh token revocation)" @Success 200 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/current/logout [post]
func (*Login) QueryMenus ¶
@Tags LoginAPI @Security ApiKeyAuth @Summary Query current user menus based on the current user role @Success 200 {object} util.ResponseResult{data=[]schema.Menu} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/current/menus [get]
func (*Login) RefreshToken ¶
@Tags LoginAPI @Security ApiKeyAuth @Summary Refresh current access token (requires valid access token) @Success 200 {object} util.ResponseResult{data=schema.LoginToken} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/current/refresh-token [post]
func (*Login) RefreshTokenWithRefreshToken ¶
@Tags LoginAPI @Summary Refresh access token with refresh token (public endpoint) @Param body body schema.RefreshTokenForm true "Request body" @Success 200 {object} util.ResponseResult{data=schema.LoginToken} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/refresh-token [post]
func (*Login) ResponseCaptcha ¶
@Tags LoginAPI @Summary Response captcha image @Param id query string true "Captcha ID" @Param reload query number false "Reload captcha image (reload=1)" @Produce image/png @Success 200 "Captcha image" @Failure 404 {object} util.ResponseResult @Router /api/v1/captcha/image [get]
func (*Login) UpdatePassword ¶
@Tags LoginAPI @Security ApiKeyAuth @Summary Change current user password @Param body body schema.UpdateLoginPassword true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/current/password [put]
func (*Login) UpdateUser ¶
@Tags LoginAPI @Security ApiKeyAuth @Summary Update current user info @Param body body schema.UpdateCurrentUser true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/current/user [put]
type Menu ¶
Menu management for RBAC
func (*Menu) Create ¶
@Tags MenuAPI @Security ApiKeyAuth @Summary Create menu record @Param body body schema.MenuForm true "Request body" @Success 200 {object} util.ResponseResult{data=schema.Menu} @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/menus [post]
func (*Menu) Delete ¶
@Tags MenuAPI @Security ApiKeyAuth @Summary Delete menu record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/menus/{id} [delete]
func (*Menu) Get ¶
@Tags MenuAPI @Security ApiKeyAuth @Summary Get menu record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult{data=schema.Menu} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/menus/{id} [get]
func (*Menu) Query ¶
@Tags MenuAPI @Security ApiKeyAuth @Summary Query menu tree data @Param code query string false "Code path of menu (like xxx.xxx.xxx)" @Param name query string false "Name of menu" @Param includeResources query bool false "Whether to include menu resources" @Success 200 {object} util.ResponseResult{data=[]schema.Menu} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/menus [get]
func (*Menu) Update ¶
@Tags MenuAPI @Security ApiKeyAuth @Summary Update menu record by ID @Param id path string true "unique id" @Param body body schema.MenuForm true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/menus/{id} [put]
type Role ¶
Role management for RBAC
func (*Role) Create ¶
@Tags RoleAPI @Security ApiKeyAuth @Summary Create role record @Param body body schema.RoleForm true "Request body" @Success 200 {object} util.ResponseResult{data=schema.Role} @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/roles [post]
func (*Role) Delete ¶
@Tags RoleAPI @Security ApiKeyAuth @Summary Delete role record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/roles/{id} [delete]
func (*Role) Get ¶
@Tags RoleAPI @Security ApiKeyAuth @Summary Get role record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult{data=schema.Role} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/roles/{id} [get]
func (*Role) Query ¶
@Tags RoleAPI @Security ApiKeyAuth @Summary Query role list @Param current query int true "pagination index" default(1) @Param pageSize query int true "pagination size" default(10) @Param name query string false "Display name of role" @Param status query string false "Status of role (disabled, enabled)" @Success 200 {object} util.ResponseResult{data=[]schema.Role} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/roles [get]
func (*Role) Update ¶
@Tags RoleAPI @Security ApiKeyAuth @Summary Update role record by ID @Param id path string true "unique id" @Param body body schema.RoleForm true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/roles/{id} [put]
type Tenant ¶
Tenant management for RBAC
func (*Tenant) Create ¶
@Tags TenantAPI @Security ApiKeyAuth @Summary Create tenant record @Param body body schema.TenantForm true "Request body" @Success 200 {object} util.ResponseResult{data=schema.Tenant} @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenants [post]
func (*Tenant) Delete ¶
@Tags TenantAPI @Security ApiKeyAuth @Summary Delete tenant record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenants/{id} [delete]
func (*Tenant) Get ¶
@Tags TenantAPI @Security ApiKeyAuth @Summary Get tenant record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult{data=schema.Tenant} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenants/{id} [get]
func (*Tenant) Query ¶
@Tags TenantAPI @Security ApiKeyAuth @Summary Query tenant list @Param current query int true "pagination index" default(1) @Param pageSize query int true "pagination size" default(10) @Param code query string false "Tenant code" @Param name query string false "Name of tenant" @Param status query string false "Status of tenant (activated, freezed)" @Success 200 {object} util.ResponseResult{data=[]schema.Tenant} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenants [get]
func (*Tenant) Update ¶
@Tags TenantAPI @Security ApiKeyAuth @Summary Update tenant record by ID @Param id path string true "unique id" @Param body body schema.TenantForm true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenants/{id} [put]
type TenantEndpoint ¶
type TenantEndpoint struct {
TenantEndpointBIZ *biz.TenantEndpoint
}
TenantEndpoint RBAC 模块下的租户-端点关联 API 接口层
func (*TenantEndpoint) GetAllowedEndpointIDs ¶
func (a *TenantEndpoint) GetAllowedEndpointIDs(c *gin.Context)
@Tags TenantEndpointAPI @Security ApiKeyAuth @Summary 查询租户指定模型下已经允许的端点 ID 列表 @Param tenantCode query string true "租户英文编码" @Param modelId query string true "模型 ID" @Success 200 {object} util.ResponseResult{data=[]string} @Router /api/v1/tenant-models/endpoints [get]
func (*TenantEndpoint) SaveEndpoints ¶
func (a *TenantEndpoint) SaveEndpoints(c *gin.Context)
@Tags TenantEndpointAPI @Security ApiKeyAuth @Summary 批量保存租户大模型的可访问端点白名单 @Param body body schema.TenantEndpointForm true "保存表单" @Success 200 {object} util.ResponseResult @Router /api/v1/tenant-models/endpoints [post]
type TenantModel ¶
type TenantModel struct {
TenantModelBIZ *biz.TenantModel
}
TenantModel management for RBAC
func (*TenantModel) GetAuthorizedModelIDs ¶
func (a *TenantModel) GetAuthorizedModelIDs(c *gin.Context)
@Tags TenantModelAPI @Security ApiKeyAuth @Summary Get all authorized model IDs of the tenant @Param tenantCode path string true "Tenant Code" @Success 200 {object} util.ResponseResult{data=[]string} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenant-models/{tenantCode} [get]
func (*TenantModel) SaveBindings ¶
func (a *TenantModel) SaveBindings(c *gin.Context)
@Tags TenantModelAPI @Security ApiKeyAuth @Summary Batch save tenant model bindings @Param body body schema.TenantModelForm true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/tenant-models/bindings [post]
type User ¶
User management for RBAC
func (*User) Create ¶
@Tags UserAPI @Security ApiKeyAuth @Summary Create user record @Param body body schema.UserForm true "Request body" @Success 200 {object} util.ResponseResult{data=schema.User} @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/users [post]
func (*User) Delete ¶
@Tags UserAPI @Security ApiKeyAuth @Summary Delete user record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/users/{id} [delete]
func (*User) Get ¶
@Tags UserAPI @Security ApiKeyAuth @Summary Get user record by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult{data=schema.User} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/users/{id} [get]
func (*User) Query ¶
@Tags UserAPI @Security ApiKeyAuth @Summary Query user list @Param current query int true "pagination index" default(1) @Param pageSize query int true "pagination size" default(10) @Param username query string false "Username for login" @Param name query string false "Name of user" @Param tenant query string false "Tenant" @Param status query string false "Status of user (activated, freezed)" @Success 200 {object} util.ResponseResult{data=[]schema.User} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/users [get]
func (*User) ResetPassword ¶
@Tags UserAPI @Security ApiKeyAuth @Summary Reset user password by ID @Param id path string true "unique id" @Success 200 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/users/{id}/reset-pwd [patch]
func (*User) Update ¶
@Tags UserAPI @Security ApiKeyAuth @Summary Update user record by ID @Param id path string true "unique id" @Param body body schema.UserForm true "Request body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/users/{id} [put]
type UserAPIKey ¶
type UserAPIKey struct {
UserAPIKeyBIZ *biz.UserAPIKey
}
UserAPIKey 用户 API Key 的 HTTP API 控制器
func (*UserAPIKey) Create ¶
func (a *UserAPIKey) Create(c *gin.Context)
@Tags UserAPIKeyAPI @Security ApiKeyAuth @Summary 创建 API Key @Param body body schema.UserAPIKeyForm true "请求 Body" @Success 200 {object} util.ResponseResult{data=schema.UserAPIKey} @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/user-api-keys [post]
func (*UserAPIKey) Delete ¶
func (a *UserAPIKey) Delete(c *gin.Context)
@Tags UserAPIKeyAPI @Security ApiKeyAuth @Summary 根据 ID 删除记录 @Param id path string true "API Key 记录 ID" @Success 200 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 404 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/user-api-keys/{id} [delete]
func (*UserAPIKey) Get ¶
func (a *UserAPIKey) Get(c *gin.Context)
@Tags UserAPIKeyAPI @Security ApiKeyAuth @Summary 根据 ID 查询单条记录 @Param id path string true "API Key 记录 ID" @Success 200 {object} util.ResponseResult{data=schema.UserAPIKey} @Failure 401 {object} util.ResponseResult @Failure 404 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/user-api-keys/{id} [get]
func (*UserAPIKey) GetPlaintext ¶
func (a *UserAPIKey) GetPlaintext(c *gin.Context)
@Tags UserAPIKeyAPI @Security ApiKeyAuth @Summary 获取 API Key 明文(用于复制操作) @Description 安全接口,返回未脱敏的 API Key 明文,仅用于前端复制功能 @Param id path string true "API Key 记录 ID" @Success 200 {object} util.ResponseResult{data=string} @Failure 401 {object} util.ResponseResult @Failure 404 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/user-api-keys/{id}/plaintext [get]
func (*UserAPIKey) Query ¶
func (a *UserAPIKey) Query(c *gin.Context)
@Tags UserAPIKeyAPI @Security ApiKeyAuth @Summary 查询 API Key 分页列表 @Param current query int true "页码" default(1) @Param pageSize query int true "每页条数" default(10) @Param user_id query string false "关联用户ID" @Param name query string false "友好名称" @Param status query int false "状态: 1-启用, 2-禁用" @Success 200 {object} util.ResponseResult{data=[]schema.UserAPIKey} @Failure 401 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/user-api-keys [get]
func (*UserAPIKey) Update ¶
func (a *UserAPIKey) Update(c *gin.Context)
@Tags UserAPIKeyAPI @Security ApiKeyAuth @Summary 根据 ID 修改记录 @Param id path string true "API Key 记录 ID" @Param body body schema.UserAPIKeyForm true "请求 Body" @Success 200 {object} util.ResponseResult @Failure 400 {object} util.ResponseResult @Failure 401 {object} util.ResponseResult @Failure 404 {object} util.ResponseResult @Failure 500 {object} util.ResponseResult @Router /api/v1/user-api-keys/{id} [put]