data

package
v0.0.31 Latest Latest
Warning

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

Go to latest
Published: Sep 11, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ProviderSet = wire.NewSet(
	NewClients,
)

ProviderSet 创建 Core 使用的多数据源客户端。

Functions

func NewClients

func NewClients(configs map[string]*configv1.Data_Database, moduleModels module.Models) (map[string]*gorm.Client, func(), error)

NewClients 创建 Core 使用的多数据源 GORM 客户端集合。

Types

type APILogRecord added in v0.0.25

type APILogRecord struct {
	// ID 是日志编号。
	ID int64
	// TenantID 是租户编号。
	TenantID int64
	// TenantCode 是租户编码。
	TenantCode string
	// UserID 是用户编号。
	UserID int64
	// UserName 是用户名称。
	UserName string
	// RequestID 是请求编号。
	RequestID string
	// TraceID 是链路追踪编号。
	TraceID string
	// ServiceName 是服务名称。
	ServiceName string
	// Operation 是操作标识。
	Operation string
	// Method 是请求方法。
	Method string
	// Path 是请求路径。
	Path string
	// StatusCode 是协议状态码。
	StatusCode int32
	// Result 是日志结果。
	Result int32
	// ReasonCode 是原因编码。
	ReasonCode string
	// Reason 是原因说明。
	Reason string
	// LatencyMs 是请求耗时,单位为毫秒。
	LatencyMs int32
	// ClientIP 是客户端地址。
	ClientIP string
	// UserAgent 是用户代理。
	UserAgent string
	// OccurredAt 是事件发生时间。
	OccurredAt time.Time
	// CreatedAt 是日志创建时间。
	CreatedAt time.Time
}

APILogRecord 表示 API 访问日志所需的字段。

type APIPolicyRecord added in v0.0.25

type APIPolicyRecord struct {
	// Operation 是 RPC 操作标识。
	Operation string
	// Method 是 HTTP 请求方法。
	Method string
}

APIPolicyRecord 表示权限重建所需的接口字段。

type APIRecord added in v0.0.25

type APIRecord struct {
	// ID 是接口编号,用于保留已有运行时配置。
	ID int64
	// ToolName 是工具名称。
	ToolName string
	// ToolPrompts 是工具提示词 JSON。
	ToolPrompts string
	// ServiceName 是服务名称。
	ServiceName string
	// ServiceDesc 是服务描述。
	ServiceDesc string
	// Desc 是接口描述。
	Desc string
	// Operation 是 RPC 操作标识。
	Operation string
	// Method 是 HTTP 请求方法。
	Method string
	// Path 是 HTTP 路径。
	Path string
	// McpStatus 是 MCP 工具状态。
	McpStatus int32
	// AgentStatus 是 Agent 工具状态。
	AgentStatus int32
}

APIRecord 表示 OpenAPI 解析后待保存的接口快照。

type APIStore added in v0.0.25

type APIStore interface {
	// ReplaceAll 替换当前 OpenAPI 接口快照。
	ReplaceAll(context.Context, []*APIRecord) error
	// ReplaceAllTranslations 替换当前 OpenAPI 接口翻译快照。
	ReplaceAllTranslations(context.Context, []*APITranslationRecord) error
	// ListForPolicy 查询权限重建所需的接口字段。
	ListForPolicy(context.Context) ([]*APIPolicyRecord, error)
}

APIStore 提供资源同步和权限重建所需的接口数据能力。

type APITranslationRecord added in v0.0.25

type APITranslationRecord struct {
	// Operation 是 RPC 操作标识。
	Operation string
	// Locale 是语言区域。
	Locale string
	// ToolPrompts 是工具提示词 JSON。
	ToolPrompts string
	// ServiceDesc 是服务描述。
	ServiceDesc string
	// Desc 是接口描述。
	Desc string
}

APITranslationRecord 表示一个接口的单语言展示文本。

type JobLogRecord added in v0.0.25

type JobLogRecord struct {
	// ID 是日志编号。
	ID int64 `json:"id"`
	// JobID 是任务编号。
	JobID int64 `json:"job_id"`
	// Input 是执行参数。
	Input string `json:"input"`
	// Output 是执行输出。
	Output string `json:"output"`
	// Error 是执行错误。
	Error string `json:"error"`
	// Status 是执行状态。
	Status int32 `json:"status"`
	// ProcessTime 是执行耗时,单位为毫秒。
	ProcessTime int32 `json:"process_time"`
	// ExecuteTime 是执行时间。
	ExecuteTime time.Time `json:"execute_time"`
}

JobLogRecord 表示 Core 任务执行日志所需的字段。

type JobRecord added in v0.0.25

type JobRecord struct {
	// ID 是任务编号。
	ID int64
	// InvokeTarget 是任务执行器名称。
	InvokeTarget string
	// Args 是任务参数 JSON。
	Args string
	// CronExpression 是 Cron 表达式。
	CronExpression string
	// Status 是任务状态。
	Status int32
	// EntryID 是运行中的 Cron 入口编号。
	EntryID int32
}

JobRecord 表示 Core 调度任务所需的字段。

type JobStore added in v0.0.25

type JobStore interface {
	// List 查询全部任务。
	List(context.Context) ([]JobRecord, error)
	// FindByID 按任务编号查询任务。
	FindByID(context.Context, int64) (JobRecord, error)
	// UpdateEntryID 更新任务的 Cron 入口编号。
	UpdateEntryID(context.Context, int64, int32) error
	// CreateLog 创建任务执行日志。
	CreateLog(context.Context, JobLogRecord) error
}

JobStore 提供任务调度和任务日志所需的宿主持久化能力。

type LogStore added in v0.0.25

type LogStore interface {
	// CreateAPI 创建 API 访问日志。
	CreateAPI(context.Context, APILogRecord) error
	// ExistsAPI 判断指定 API 日志是否已经写入。
	ExistsAPI(context.Context, int64) (bool, error)
	// CreatePolicyEvaluation 创建策略评估日志。
	CreatePolicyEvaluation(context.Context, PolicyEvaluationLogRecord) error
	// ExistsPolicyEvaluation 判断指定策略评估日志是否已经写入。
	ExistsPolicyEvaluation(context.Context, int64) (bool, error)
}

LogStore 提供 Core 审计日志的宿主持久化能力。

type MenuRecord struct {
	// ID 是菜单编号。
	ID int64
	// API 是菜单关联的接口列表 JSON。
	API string
}

MenuRecord 表示权限重建所需的菜单字段。

type PermissionStore added in v0.0.25

type PermissionStore interface {
	// FindTenantByCode 按租户编码查询租户。
	FindTenantByCode(context.Context, string) (TenantRecord, error)
	// ListTenants 查询全部租户的权限字段。
	ListTenants(context.Context) ([]TenantRecord, error)
	// FindRoleByTenantIDAndCode 按租户和角色编码查询角色。
	FindRoleByTenantIDAndCode(context.Context, int64, string) (RoleRecord, error)
	// ListRoles 查询全部角色的权限字段。
	ListRoles(context.Context) ([]RoleRecord, error)
	// ListRolesByCode 查询指定编码的全部角色。
	ListRolesByCode(context.Context, string) ([]RoleRecord, error)
	// UpdateRoleMenus 更新角色关联的菜单列表。
	UpdateRoleMenus(context.Context, RoleRecord) error
	// ListMenusByIDs 按编号批量查询菜单关联接口。
	ListMenusByIDs(context.Context, []int64) ([]MenuRecord, error)
	// ListPolicies 查询全部 Casbin 规则。
	ListPolicies(context.Context) ([]PolicyRecord, error)
	// ReplacePolicies 替换全部 Casbin 规则。
	ReplacePolicies(context.Context, []PolicyRecord) error
}

PermissionStore 提供启动期权限资源同步所需的宿主持久化能力。

type PolicyEvaluationLogRecord added in v0.0.25

type PolicyEvaluationLogRecord struct {
	// ID 是日志编号。
	ID int64
	// TenantID 是租户编号。
	TenantID int64
	// TenantCode 是租户编码。
	TenantCode string
	// UserID 是用户编号。
	UserID int64
	// UserName 是用户名称。
	UserName string
	// RoleID 是角色编号。
	RoleID int64
	// RoleCode 是角色编码。
	RoleCode string
	// RequestID 是请求编号。
	RequestID string
	// TraceID 是链路追踪编号。
	TraceID string
	// ClientIP 是客户端地址。
	ClientIP string
	// Engine 是鉴权引擎。
	Engine string
	// EvaluationType 是评估类型。
	EvaluationType int32
	// Resource 是评估资源。
	Resource string
	// Action 是评估动作。
	Action string
	// Project 是项目范围。
	Project string
	// Decision 是决策结果。
	Decision int32
	// ReasonCode 是原因编码。
	ReasonCode string
	// Reason 是原因说明。
	Reason string
	// DurationMs 是评估耗时,单位为毫秒。
	DurationMs int32
	// CandidateCount 是候选策略数量。
	CandidateCount int32
	// MatchedCount 是命中策略数量。
	MatchedCount int32
	// InputHash 是输入摘要。
	InputHash string
	// OccurredAt 是事件发生时间。
	OccurredAt time.Time
	// CreatedAt 是日志创建时间。
	CreatedAt time.Time
}

PolicyEvaluationLogRecord 表示策略评估日志所需的字段。

type PolicyRecord added in v0.0.25

type PolicyRecord struct {
	// Ptype 是策略类型。
	Ptype string
	// V0 是租户编码。
	V0 string
	// V1 是角色编码。
	V1 string
	// V2 是资源路径。
	V2 string
	// V3 是请求方法。
	V3 string
	// V4 是项目范围。
	V4 string
}

PolicyRecord 表示 Casbin 权限规则所需的字段。

type RoleRecord added in v0.0.25

type RoleRecord struct {
	// ID 是角色编号。
	ID int64
	// TenantID 是租户编号。
	TenantID int64
	// Code 是角色编码。
	Code string
	// Menus 是角色关联的菜单列表 JSON。
	Menus string
}

RoleRecord 表示权限重建和租户菜单同步所需的角色字段。

type TenantRecord added in v0.0.25

type TenantRecord struct {
	// ID 是租户编号。
	ID int64
	// Code 是租户编码。
	Code string
}

TenantRecord 表示权限重建所需的租户字段。

type Transaction

type Transaction interface {
	// Transaction 在事务中执行回调,并将事务上下文传递给宿主 Store。
	Transaction(context.Context, func(context.Context) error) error
}

Transaction 提供宿主数据访问层的事务边界。

Jump to

Keyboard shortcuts

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