api

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 25, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Overview

Package api 定义控制面 HTTP 之外的请求、响应 DTO 和 handler 编排。

api 层负责参数转换和响应形状,不直接依赖 Gin 或数据库实现。

Index

Constants

View Source
const (
	// CodeSuccess 表示请求成功。
	CodeSuccess int32 = 0
	// CodeInvalidArgument 表示请求参数不合法。
	CodeInvalidArgument int32 = 1
	// CodeEmpty 表示资源不存在。
	CodeEmpty int32 = 4
	// CodeConflict 表示资源已存在或当前状态冲突。
	CodeConflict int32 = 9
	// CodeNoPermission 表示权限不足。
	CodeNoPermission int32 = 26
	// CodeNoAuth 表示未认证或认证失败。
	CodeNoAuth int32 = 27
	// CodeBusy 表示服务端处理失败。
	CodeBusy int32 = 39
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ApplyWorkspaceJoinRequest

type ApplyWorkspaceJoinRequest struct {
	Workspace string `json:"workspace"`
	Reason    string `json:"reason"`
}

ApplyWorkspaceJoinRequest 是申请加入工作空间的请求。

type ApprovalDetailRequest

type ApprovalDetailRequest struct {
	Workspace string `json:"workspace"`
	RequestID string `json:"requestId"`
}

ApprovalDetailRequest 是读取审批单详情的请求。

type ApprovalHandler

type ApprovalHandler struct {
	// contains filtered or unexported fields
}

ApprovalHandler 编排审批 API。

func NewApprovalHandler

func NewApprovalHandler(service *service.ApprovalService) *ApprovalHandler

NewApprovalHandler 创建审批 API handler。

func (*ApprovalHandler) AllRequests

func (*ApprovalHandler) ApplyWorkspaceJoin

func (h *ApprovalHandler) ApplyWorkspaceJoin(ctx context.Context, req *ApplyWorkspaceJoinRequest) (*Response, *ErrorResponse)

func (*ApprovalHandler) Detail

func (*ApprovalHandler) Judge

func (*ApprovalHandler) MyRequests

func (*ApprovalHandler) PendingForMe

func (h *ApprovalHandler) PendingForMe(ctx context.Context, req *ListApprovalRequest) (*Response, *ErrorResponse)

func (*ApprovalHandler) Submit

type AssignMemberRolesRequest

type AssignMemberRolesRequest struct {
	Workspace string   `json:"workspace"`
	UserID    string   `json:"userId"`
	RoleIDs   []string `json:"roleIds"`
}

AssignMemberRolesRequest 是分配成员角色的请求。

type ChangePasswordRequest

type ChangePasswordRequest struct {
	OldPassword string `json:"oldPassword"`
	NewPassword string `json:"newPassword"`
}

ChangePasswordRequest 是当前用户修改密码的请求。

type CloneWorkflowRequest

type CloneWorkflowRequest struct {
	Env              string `json:"env"`
	Workspace        string `json:"workspace"`
	SourceWorkflowID string `json:"sourceWorkflowId"`
	SourceVersion    string `json:"sourceVersion"`
	TargetWorkflowID string `json:"targetWorkflowId"`
	TargetName       string `json:"targetName"`
	TargetVersion    string `json:"targetVersion"`
	Description      string `json:"description"`
}

CloneWorkflowRequest 是复制 workflow 版本到新 workflow 的请求。

type CompareWorkflowVersionRequest

type CompareWorkflowVersionRequest struct {
	Env          string `json:"env"`
	Workspace    string `json:"workspace"`
	WorkflowID   string `json:"workflowId"`
	LeftVersion  string `json:"leftVersion"`
	RightVersion string `json:"rightVersion"`
}

CompareWorkflowVersionRequest 是比较两个 workflow 版本的请求。

type DeleteRoleRequest

type DeleteRoleRequest struct {
	Workspace string `json:"workspace"`
	RoleID    string `json:"roleId"`
}

DeleteRoleRequest 是删除角色的请求。

type DeleteWorkflowRequest

type DeleteWorkflowRequest struct {
	Env        string `json:"env"`
	Workspace  string `json:"workspace"`
	WorkflowID string `json:"workflowId"`
	Version    string `json:"version"`
}

DeleteWorkflowRequest 是删除未发布 workflow 版本的请求。

type DeleteWorkspaceEnvironmentRequest

type DeleteWorkspaceEnvironmentRequest struct {
	Workspace string `json:"workspace"`
	Env       string `json:"env"`
}

DeleteWorkspaceEnvironmentRequest 是删除工作空间环境的请求。

type DisableWorkflowRequest

type DisableWorkflowRequest struct {
	Env        string `json:"env"`
	Workspace  string `json:"workspace"`
	WorkflowID string `json:"workflowId"`
	Version    string `json:"version"`
}

DisableWorkflowRequest 是停用已发布 workflow 的请求。

type ErrorResponse

type ErrorResponse struct {
	HTTPStatus int      `json:"-"`
	Code       int32    `json:"code"`
	Message    string   `json:"message"`
	Details    []string `json:"details,omitempty"`
}

ErrorResponse 是控制面错误响应的统一外壳。

func Error

func Error(err error) *ErrorResponse

Error 将 service/repository/auth 错误映射为 API 错误响应。

func InvalidJSON

func InvalidJSON() *ErrorResponse

InvalidJSON 返回统一且不暴露解析器内部信息的 JSON 入参错误。

type ExecuteWorkflowRequest

type ExecuteWorkflowRequest struct {
	Env        string         `json:"env"`
	Workspace  string         `json:"workspace"`
	WorkflowID string         `json:"workflowId"`
	Version    string         `json:"version"`
	Envelope   *core.Envelope `json:"envelope"`
}

ExecuteWorkflowRequest 是按已发布版本执行 workflow 的请求。

type ExecuteWorkflowResponse

type ExecuteWorkflowResponse struct {
	TraceID string                  `json:"traceId"`
	RunID   string                  `json:"runId"`
	Success bool                    `json:"success"`
	Output  map[string]interface{}  `json:"output"`
	Error   string                  `json:"error,omitempty"`
	Plan    *WorkflowPlanSummary    `json:"plan,omitempty"`
	Events  []*event.Event          `json:"events,omitempty"`
	Stats   *runtime.ExecutionStats `json:"stats,omitempty"`
}

ExecuteWorkflowResponse 是 workflow 执行 API 的响应数据。

type GetPublishedWorkflowRequest

type GetPublishedWorkflowRequest struct {
	Env        string `json:"env"`
	Workspace  string `json:"workspace"`
	WorkflowID string `json:"workflowId"`
	Version    string `json:"version"`
}

GetPublishedWorkflowRequest 是读取已发布 workflow 的请求。

type GetTraceEventsRequest

type GetTraceEventsRequest struct {
	Workspace string `json:"workspace"`
	TraceID   string `json:"traceId"`
	Offset    int    `json:"offset"`
	Limit     int    `json:"limit"`
}

GetTraceEventsRequest 是读取某个 trace 全部事件的请求。

type GetWorkflowVersionRequest

type GetWorkflowVersionRequest struct {
	Env        string `json:"env"`
	Workspace  string `json:"workspace"`
	WorkflowID string `json:"workflowId"`
	Version    string `json:"version"`
}

GetWorkflowVersionRequest 是读取指定 workflow 版本的请求。

type JudgeApprovalRequest

type JudgeApprovalRequest struct {
	Workspace string               `json:"workspace"`
	RequestID string               `json:"requestId"`
	Status    admin.ApprovalStatus `json:"status"`
	Comment   string               `json:"comment"`
}

JudgeApprovalRequest 是审批人处理审批单的请求。

type ListApprovalRequest

type ListApprovalRequest struct {
	Workspace  string                   `json:"workspace"`
	ObjectType admin.ApprovalObjectType `json:"objectType"`
	Status     admin.ApprovalStatus     `json:"status"`
	Keyword    string                   `json:"keyword"`
	Offset     int                      `json:"offset"`
	Limit      int                      `json:"limit"`
}

ListApprovalRequest 是查询审批单列表的请求。

type ListAuditLogRequest

type ListAuditLogRequest struct {
	Workspace  string `json:"workspace"`
	Resource   string `json:"resource"`
	ResourceID string `json:"resourceId"`
	Offset     int    `json:"offset"`
	Limit      int    `json:"limit"`
}

ListAuditLogRequest 是查询审计日志列表的请求。

type ListMemberRequest

type ListMemberRequest struct {
	Workspace string `json:"workspace"`
	Offset    int    `json:"offset"`
	Limit     int    `json:"limit"`
}

ListMemberRequest 是查询工作空间成员列表的请求。

type ListPermissionRequest

type ListPermissionRequest struct {
	Workspace string `json:"workspace"`
	Keyword   string `json:"keyword"`
	Offset    int    `json:"offset"`
	Limit     int    `json:"limit"`
}

ListPermissionRequest 是查询权限列表的请求。

type ListResponse

type ListResponse[T any] struct {
	Items []T   `json:"items"`
	Total int64 `json:"total"`
}

ListResponse 是列表接口的统一响应数据。

type ListRoleRequest

type ListRoleRequest struct {
	Workspace string `json:"workspace"`
	Keyword   string `json:"keyword"`
	Offset    int    `json:"offset"`
	Limit     int    `json:"limit"`
}

ListRoleRequest 是查询角色列表的请求。

type ListUserRequest

type ListUserRequest struct {
	Workspace string `json:"workspace"`
	Keyword   string `json:"keyword"`
	Offset    int    `json:"offset"`
	Limit     int    `json:"limit"`
}

ListUserRequest 是查询用户列表的请求。

type ListWorkflowRequest

type ListWorkflowRequest struct {
	Env       string              `json:"env"`
	Workspace string              `json:"workspace"`
	Keyword   string              `json:"keyword"`
	Status    core.WorkflowStatus `json:"status"`
	Offset    int                 `json:"offset"`
	Limit     int                 `json:"limit"`
}

ListWorkflowRequest 是查询 workflow 列表的请求。

type ListWorkspaceEnvironmentRequest

type ListWorkspaceEnvironmentRequest struct {
	Workspace string `json:"workspace"`
	Keyword   string `json:"keyword"`
	Enabled   *bool  `json:"enabled"`
	Offset    int    `json:"offset"`
	Limit     int    `json:"limit"`
}

ListWorkspaceEnvironmentRequest 是查询工作空间环境列表的请求。

type ListWorkspaceRequest

type ListWorkspaceRequest struct {
	Keyword string `json:"keyword"`
	Offset  int    `json:"offset"`
	Limit   int    `json:"limit"`
}

ListWorkspaceRequest 是查询工作空间列表的请求。

type PlatformHandler

type PlatformHandler struct {
	// contains filtered or unexported fields
}

PlatformHandler 编排平台管理 API。

func NewPlatformHandler

func NewPlatformHandler(service *service.PlatformAdminService) *PlatformHandler

NewPlatformHandler 创建平台管理 API handler。

func (*PlatformHandler) AddMember

func (h *PlatformHandler) AddMember(ctx context.Context, member *admin.WorkspaceMember) (*Response, *ErrorResponse)

func (*PlatformHandler) ChangePassword

func (h *PlatformHandler) ChangePassword(ctx context.Context, req *ChangePasswordRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) CreatePermission

func (h *PlatformHandler) CreatePermission(ctx context.Context, permission *admin.Permission) (*Response, *ErrorResponse)

func (*PlatformHandler) CreateRole

func (h *PlatformHandler) CreateRole(ctx context.Context, role *admin.Role) (*Response, *ErrorResponse)

func (*PlatformHandler) CreateUser

func (h *PlatformHandler) CreateUser(ctx context.Context, user *admin.User) (*Response, *ErrorResponse)

func (*PlatformHandler) CreateWorkspace

func (h *PlatformHandler) CreateWorkspace(ctx context.Context, workspace *admin.Workspace) (*Response, *ErrorResponse)

func (*PlatformHandler) DeleteRole

func (*PlatformHandler) DeleteWorkspaceEnvironment

func (h *PlatformHandler) DeleteWorkspaceEnvironment(ctx context.Context, req *DeleteWorkspaceEnvironmentRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) ListAuditLogs

func (h *PlatformHandler) ListAuditLogs(ctx context.Context, req *ListAuditLogRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) ListMembers

func (h *PlatformHandler) ListMembers(ctx context.Context, req *ListMemberRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) ListPermissions

func (h *PlatformHandler) ListPermissions(ctx context.Context, req *ListPermissionRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) ListRoles

func (*PlatformHandler) ListUsers

func (*PlatformHandler) ListWorkspaceEnvironments

func (h *PlatformHandler) ListWorkspaceEnvironments(ctx context.Context, req *ListWorkspaceEnvironmentRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) ListWorkspaces

func (h *PlatformHandler) ListWorkspaces(ctx context.Context, req *ListWorkspaceRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) RemoveMember

func (h *PlatformHandler) RemoveMember(ctx context.Context, req *RemoveMemberRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) ResetUserPassword

func (h *PlatformHandler) ResetUserPassword(ctx context.Context, req *ResetUserPasswordRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) SaveWorkspaceEnvironment

func (h *PlatformHandler) SaveWorkspaceEnvironment(ctx context.Context, env *admin.WorkspaceEnvironment) (*Response, *ErrorResponse)

func (*PlatformHandler) SetUserDisabled

func (h *PlatformHandler) SetUserDisabled(ctx context.Context, req *SetUserDisabledRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) UpdateMemberRoles

func (h *PlatformHandler) UpdateMemberRoles(ctx context.Context, req *AssignMemberRolesRequest) (*Response, *ErrorResponse)

func (*PlatformHandler) UpdatePermission

func (h *PlatformHandler) UpdatePermission(ctx context.Context, permission *admin.Permission) (*Response, *ErrorResponse)

func (*PlatformHandler) UpdateRole

func (h *PlatformHandler) UpdateRole(ctx context.Context, role *admin.Role) (*Response, *ErrorResponse)

func (*PlatformHandler) UpdateWorkspace

func (h *PlatformHandler) UpdateWorkspace(ctx context.Context, workspace *admin.Workspace) (*Response, *ErrorResponse)

type PublishWorkflowRequest

type PublishWorkflowRequest struct {
	Env        string `json:"env"`
	Workspace  string `json:"workspace"`
	WorkflowID string `json:"workflowId"`
	Version    string `json:"version"`
	Remark     string `json:"remark"`
}

PublishWorkflowRequest 是发布 workflow 版本的请求。

type RemoveMemberRequest

type RemoveMemberRequest struct {
	Workspace string `json:"workspace"`
	UserID    string `json:"userId"`
}

RemoveMemberRequest 是移除工作空间成员的请求。

type ResetUserPasswordRequest

type ResetUserPasswordRequest struct {
	UserID   string `json:"userId"`
	Password string `json:"password"`
}

ResetUserPasswordRequest 是重置用户密码的请求。

type Response

type Response struct {
	Code    int32       `json:"code"`
	Message string      `json:"message"`
	Data    interface{} `json:"data,omitempty"`
}

Response 是控制面成功响应的统一外壳。

func OK

func OK(data interface{}) *Response

OK 创建成功响应。

type RollbackWorkflowRequest

type RollbackWorkflowRequest struct {
	Env           string `json:"env"`
	Workspace     string `json:"workspace"`
	WorkflowID    string `json:"workflowId"`
	Version       string `json:"version"`
	TargetVersion string `json:"targetVersion"`
}

RollbackWorkflowRequest 是回滚 workflow 版本的请求。

type SaveWorkflowRequest

type SaveWorkflowRequest struct {
	Workflow *core.Workflow `json:"workflow"`
}

SaveWorkflowRequest 是新增或编辑 workflow 的请求。

type SearchTraceRequest

type SearchTraceRequest struct {
	Env       string                 `json:"env"`
	Workspace string                 `json:"workspace"`
	TraceID   string                 `json:"traceId"`
	Status    string                 `json:"status"`
	Attrs     map[string]interface{} `json:"attrs"`
	StartTime time.Time              `json:"startTime"`
	EndTime   time.Time              `json:"endTime"`
	Offset    int                    `json:"offset"`
	Limit     int                    `json:"limit"`
}

SearchTraceRequest 是查询 trace 摘要列表的请求。

type SetUserDisabledRequest

type SetUserDisabledRequest struct {
	UserID   string `json:"userId"`
	Disabled bool   `json:"disabled"`
}

SetUserDisabledRequest 是启停用户账号的请求。

type SubmitApprovalRequest

type SubmitApprovalRequest struct {
	Workspace   string                   `json:"workspace"`
	ObjectType  admin.ApprovalObjectType `json:"objectType"`
	ObjectID    string                   `json:"objectId"`
	Title       string                   `json:"title"`
	Reason      string                   `json:"reason"`
	Attrs       map[string]interface{}   `json:"attrs"`
	ApproverIDs []string                 `json:"approverIds"`
}

SubmitApprovalRequest 是提交审批单的请求。

type TraceHandler

type TraceHandler struct {
	// contains filtered or unexported fields
}

TraceHandler 编排 trace 查询 API。

func NewTraceHandler

func NewTraceHandler(service *service.TraceAdminService) *TraceHandler

NewTraceHandler 创建 trace API handler。

func (*TraceHandler) GetEvents

func (*TraceHandler) Search

type WorkerBootstrapRequest

type WorkerBootstrapRequest = workerpull.WorkerBootstrapRequest

WorkerBootstrapRequest 是 worker 拉取发布清单的请求。

type WorkerPublishedWorkflowRequest

type WorkerPublishedWorkflowRequest = workerpull.WorkerPublishedWorkflowRequest

WorkerPublishedWorkflowRequest 是 worker 拉取完整发布 workflow 的请求。

type WorkerPullHandler

type WorkerPullHandler struct {
	// contains filtered or unexported fields
}

WorkerPullHandler 编排业务 worker 拉取发布 workflow 的 API。

func NewWorkerPullHandler

func NewWorkerPullHandler(workerService *service.WorkerPullService) *WorkerPullHandler

NewWorkerPullHandler 创建 worker pull API handler。

func (*WorkerPullHandler) Bootstrap

func (*WorkerPullHandler) GetPublished

type WorkflowHandler

type WorkflowHandler struct {
	// contains filtered or unexported fields
}

WorkflowHandler 编排 workflow 管理和调试执行 API。

func NewWorkflowHandler

func NewWorkflowHandler(workflowService *service.WorkflowAdminService, executionService ...*service.WorkflowExecutionService) *WorkflowHandler

NewWorkflowHandler 创建 workflow API handler。

func (*WorkflowHandler) Clone

func (*WorkflowHandler) CompareVersions

func (*WorkflowHandler) Delete

func (*WorkflowHandler) Disable

func (*WorkflowHandler) ExecutePublished

func (h *WorkflowHandler) ExecutePublished(ctx context.Context, req *ExecuteWorkflowRequest) (*Response, *ErrorResponse)

func (*WorkflowHandler) GetPublished

func (*WorkflowHandler) GetVersion

func (*WorkflowHandler) List

func (*WorkflowHandler) Publish

func (*WorkflowHandler) Rollback

func (*WorkflowHandler) Save

type WorkflowPlanSummary

type WorkflowPlanSummary struct {
	NodeCount  int       `json:"nodeCount"`
	RootNodeID string    `json:"rootNodeId,omitempty"`
	BuiltAt    time.Time `json:"builtAt,omitempty"`
}

WorkflowPlanSummary 是执行计划的轻量摘要。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL