Documentation
¶
Index ¶
- type ActivateInput
- type Avatar
- type Clause
- type Cluster
- func (m *Cluster) AfterSet(colName string, cell xorm.Cell)
- func (m *Cluster) BeforeInsert()
- func (m *Cluster) BeforeUpdate()
- func (m *Cluster) Connect(name string, passwd func(c *Cluster) []byte) (engine *xorm.Engine, err error)
- func (m *Cluster) Databases(passwd func(c *Cluster) []byte) (databases []Database, err error)
- func (m *Cluster) Execute(dbname string, passwd func(c *Cluster) []byte, sql string) (err error)
- func (m *Cluster) GetCreateAt() uint
- func (m *Cluster) GetUpdateAt() *uint
- func (Cluster) IsNode()
- func (Cluster) IsSearchable()
- func (m *Cluster) Metadata(database string, passwd func(c *Cluster) []byte) (tables map[string][]*core.Table, err error)
- func (m *Cluster) Repack(tables []*core.Table) (L []*Table)
- func (m *Cluster) Sha1(data string) []byte
- func (m *Cluster) Stat(name string, passwd func(c *Cluster) []byte) (database *Database, err error)
- func (m *Cluster) String() string
- func (m *Cluster) TableName() string
- type Comment
- type CreateClusterInput
- type CreateCommentInput
- type CreateQueryInput
- type CreateTicketInput
- type CreateUserInput
- type Cron
- type Database
- type Edge
- type Glossary
- type GrantClustersInput
- type GrantReviewersInput
- type GrantRolesInput
- type Log
- type LostPasswdInput
- type Option
- type PatchClusterStatusInput
- type PatchEmailInput
- type PatchOptionValueInput
- type PatchPasswordInput
- type PatchRuleBitwiseInput
- type PatchRuleValuesInput
- type PatchTicketStatusInput
- type PatchUserStatusInput
- type Query
- type ResendActivationMailInput
- type ResetPasswdInput
- type RevokeClustersInput
- type RevokeReviewersInput
- type RevokeRolesInput
- type Role
- type Rule
- type ScheduleTicketInput
- type SoarQueryInput
- type Statement
- func (m *Statement) AfterSet(colName string, _ xorm.Cell)
- func (m *Statement) BeforeInsert()
- func (m *Statement) BeforeUpdate()
- func (m *Statement) GetCreateAt() uint
- func (m *Statement) GetUpdateAt() *uint
- func (Statement) IsNode()
- func (m *Statement) String() string
- func (m *Statement) TableName() string
- type Statistic
- func (m *Statistic) AfterSet(colName string, _ xorm.Cell)
- func (m *Statistic) BeforeInsert()
- func (m *Statistic) BeforeUpdate()
- func (m *Statistic) GetCreateAt() uint
- func (m *Statistic) GetUpdateAt() *uint
- func (Statistic) IsNode()
- func (m *Statistic) String() string
- func (m *Statistic) TableName() string
- type Table
- type Template
- type Ticket
- func (m *Ticket) AfterSet(colName string, _ xorm.Cell)
- func (m *Ticket) BeforeInsert()
- func (m *Ticket) BeforeUpdate()
- func (m *Ticket) GetCreateAt() uint
- func (m *Ticket) GetUpdateAt() *uint
- func (Ticket) IsNode()
- func (Ticket) IsSearchable()
- func (m *Ticket) String() string
- func (m *Ticket) TableName() string
- type UpdateClusterInput
- type UpdateProfileInput
- type UpdateTemplateInput
- type UpdateTicketInput
- type UpdateUserInput
- type User
- type UserLoginInput
- type UserRegisterInput
- type ValidateConnectionInput
- type ValidatePatternInput
- type Violations
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActivateInput ¶
type ActivateInput struct {
Code string `valid:"required" gqlgen:"Code" json:"code"`
}
ActivateInput GraphQL API交互所需要的结构体
type Avatar ¶
type Avatar struct {
AvatarID uint `xorm:"'avatar_id' notnull int pk autoincr <-" valid:"-" json:"avatar_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
URL string `xorm:"'url' notnull tinytext unique(unique_2) <-" valid:"required,length(1|75)" json:"url" gqlgen:"URL"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Avatar 用户可选的头像
type Cluster ¶
type Cluster struct {
ClusterID uint `` //
/* 135-byte string literal not displayed */
UUID string `` //
/* 138-byte string literal not displayed */
Host string `` //
/* 138-byte string literal not displayed */
IP string `` //
/* 136-byte string literal not displayed */
Port uint16 `` //
/* 138-byte string literal not displayed */
Alias string `` //
/* 139-byte string literal not displayed */
User string `` //
/* 138-byte string literal not displayed */
Password []byte `` // 双向加密
/* 135-byte string literal not displayed */
FingerPrint []byte `` //
/* 135-byte string literal not displayed */
Status uint8 `` //
/* 140-byte string literal not displayed */
Version int `` //
/* 135-byte string literal not displayed */
UpdateAt uint `` //
/* 142-byte string literal not displayed */
CreateAt uint `` //
/* 142-byte string literal not displayed */
}
Cluster 群集的模型
func (*Cluster) Connect ¶
func (m *Cluster) Connect(name string, passwd func(c *Cluster) []byte) (engine *xorm.Engine, err error)
Connect 连接到群集的指定数据库
func (*Cluster) Metadata ¶
func (m *Cluster) Metadata(database string, passwd func(c *Cluster) []byte) (tables map[string][]*core.Table, err error)
Metadata 获取群集上某一个具体的数据库的元数据信息
type Comment ¶
type Comment struct {
CommentID uint `xorm:"'comment_id' notnull int pk autoincr" valid:"-" json:"comment_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Content string `xorm:"'content' notnull tinytext" valid:"required,length(1|255)" json:"content" gqlgen:"Content"` //
TicketID uint `xorm:"'ticket_id' notnull int index(index_1)" valid:"required,int,range(0|4294967295)" json:"ticket_id" gqlgen:"-"` //
UserID uint `xorm:"'user_id' notnull int index(index_2)" valid:"required,int,range(0|4294967295)" json:"user_id" gqlgen:"-"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Comment 审核意见建议的模型
type CreateClusterInput ¶
type CreateClusterInput struct {
Host string `valid:"required,length(1|75)" gqlgen:"Host"` //
IP string `valid:"required,ipv4" gqlgen:"IP"` //
Port uint16 `valid:"required,port" gqlgen:"Port"` //
Alias string `valid:"required,length(4|75)" gqlgen:"Alias"` //
User string `valid:"required,length(4|40)" gqlgen:"User"` //
Password string `valid:"required,length(4|40)" gqlgen:"Password"` // 注意:密码最大长度40位,超过40位会导致数据库截断
Status uint8 `valid:"required,int,matches(^(1|2)$)" gqlgen:"Status"` //
}
CreateClusterInput GraphQL API交互所需要的结构体
type CreateCommentInput ¶
type CreateCommentInput struct {
TicketUUID string `valid:"required,length(36|36)" gqlgen:"TicketUUID"` //
Content string `valid:"required,length(1|65535)" gqlgen:"Content"` //
}
CreateCommentInput GraphQL API交互所需要的结构体
type CreateQueryInput ¶
type CreateQueryInput struct {
ClusterUUID string `valid:"required,length(36|36)" gqlgen:"ClusterUUID"` //
Database string `valid:"required,length(1|50)" gqlgen:"Database"` //
Content string `valid:"required,length(1|65535)" gqlgen:"Content"` //
}
CreateQueryInput GraphQL API交互所需要的结构体
type CreateTicketInput ¶
type CreateTicketInput struct {
ClusterUUID string `valid:"required,length(36|36)" gqlgen:"ClusterUUID"` //
Database string `valid:"required,length(1|50)" gqlgen:"Database"` //
Subject string `valid:"required,length(1|75)" gqlgen:"Subject"` //
Content string `valid:"required,length(1|65535)" gqlgen:"Content"` //
ReviewerUUID string `valid:"required,length(36|36)" gqlgen:"ReviewerUUID"` //
}
CreateTicketInput GraphQL API交互所需要的结构体
type CreateUserInput ¶
type CreateUserInput struct {
Email string `valid:"required,length(3|75)" gqlgen:"Email"` //
Password string `valid:"required,length(6|25)" gqlgen:"Password"` //
Name string `valid:"required,length(1|15)" gqlgen:"Name"` //
Phone uint64 `valid:"-" gqlgen:"Phone"` //
RoleUUIDs []string `valid:"required" gqlgen:"RoleUUIDs"` //
ClusterUUIDs []string `valid:"optional" gqlgen:"ClusterUUIDs"` //
ReviewerUUIDs []string `valid:"optional" gqlgen:"ReviewerUUIDs"` //
AvatarUUID string `valid:"required,length(36|36)" gqlgen:"AvatarUUID"` //
Status uint8 `valid:"required,int,matches(^(1|2|3)$)" gqlgen:"Status"` //
}
CreateUserInput GraphQL API交互所需要的结构体
type Cron ¶
type Cron struct {
CronID uint `xorm:"'cron_id' notnull int pk autoincr" valid:"-" json:"cron_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Status string `xorm:"'status' notnull char(1)" valid:"required,matches(^(C|D|E|F|P|R|S)$)" json:"status" gqlgen:"Status"` //
Name string `xorm:"'name' notnull varchar(75)" valid:"-" json:"name" gqlgen:"Name"` //
Cmd string `xorm:"'cmd' notnull varchar(100)" valid:"-" json:"cmd" gqlgen:"Cmd"` //
Params string `xorm:"'params' notnull varchar(75)" valid:"-" json:"params" gqlgen:"Params"` //
Interval string `` //
/* 126-byte string literal not displayed */
Duration string `` //
/* 126-byte string literal not displayed */
LastRun string `xorm:"'last_run' notnull varchar(20)" valid:"-" json:"last_run" gqlgen:"LastRun"` //
NextRun string `xorm:"'next_run' notnull varchar(20)" valid:"-" json:"next_run" gqlgen:"NextRun"` //
Recurrent uint8 `xorm:"'recurrent' notnull tinyint" valid:"-" json:"recurrent" gqlgen:"-"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 126-byte string literal not displayed */
CreateAt uint `` //
/* 126-byte string literal not displayed */
}
Cron 计划任务的模型
type Edge ¶
type Edge struct {
EdgeID uint `xorm:"'edge_id' notnull int pk autoincr" valid:"-" json:"edge_id" gqlgen:"-"` //
UUID string `` //
/* 127-byte string literal not displayed */
Type uint `` //
/* 127-byte string literal not displayed */
AncestorID uint `` //
/* 133-byte string literal not displayed */
DescendantID uint `` //
/* 135-byte string literal not displayed */
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 131-byte string literal not displayed */
CreateAt uint `` //
/* 131-byte string literal not displayed */
}
Edge 根据图论,Edge是连接不同对象的线
type Glossary ¶
type Glossary struct {
Group string `` //
/* 128-byte string literal not displayed */
Key uint `xorm:"'key' notnull tinyint pk <-" valid:"required,range(0|255)" json:"key" gqlgen:"Iota"` //
Value string `xorm:"'value' notnull varchar(50) unique(unique_1) <-" valid:"required,runelength(1|50)" json:"value" gqlgen:"Name"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_2)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Description string `` //
/* 132-byte string literal not displayed */
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 129-byte string literal not displayed */
CreateAt uint `` //
/* 129-byte string literal not displayed */
}
Glossary 系统字典表
type GrantClustersInput ¶
type GrantClustersInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
ClusterUUIDs []string `valid:"required" gqlgen:"ClusterUUIDs"` //
}
GrantClustersInput GraphQL API交互所需要的结构体
type GrantReviewersInput ¶
type GrantReviewersInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
ReviewerUUIDs []string `valid:"required" gqlgen:"ReviewerUUIDs"` //
}
GrantReviewersInput GraphQL API交互所需要的结构体
type GrantRolesInput ¶
type GrantRolesInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
RoleUUIDs []string `valid:"required" gqlgen:"RoleUUIDs"` //
}
GrantRolesInput GraphQL API交互所需要的结构体
type Log ¶
type Log struct {
LogID int `xorm:"'log_id' notnull int pk autoincr" valid:"-" json:"log_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
UserID uint `xorm:"'user_id' notnull int index(index_1)" valid:"required,int,range(0|4294967295)" json:"user_id" gqlgen:"-"` //
Operation string `xorm:"'operation' notnull text" valid:"required,runelength(1|255)" json:"operation" gqlgen:"Operation"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
CreateAt uint `xorm:"'create_at' notnull int index(index_1)" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Log 日志表,记录谁在什么时间做了什么事情
type LostPasswdInput ¶
type LostPasswdInput struct {
Email string `valid:"required,length(1|75)" gqlgen:"Email" json:"email"`
}
LostPasswdInput GraphQL API交互所需要的结构体
type Option ¶
type Option struct {
Name string `xorm:"'name' notnull varchar(50) pk <-" valid:"required,length(1|50),alphanum" json:"group" gqlgen:"Group"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Value string `xorm:"'value' notnull tinytext" valid:"required,length(1|255),alphanum" json:"value" gqlgen:"Value"` //
Writable uint8 `xorm:"'writable' notnull tinyint <-" valid:"required,range(0|1)" json:"writable" gqlgen:"Writable"` //
Description string `` //
/* 127-byte string literal not displayed */
Element string `xorm:"'element' notnull varchar(15) <-" valid:"required,runelength(1|15)" json:"element" gqlgen:"Element"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Option 系统选项
type PatchClusterStatusInput ¶
type PatchClusterStatusInput struct {
ClusterUUID string `valid:"required,length(36|36)" gqlgen:"ClusterUUID"` //
Status uint8 `valid:"required,int,matches(^(1|2)$)" gqlgen:"Status"` //
}
PatchClusterStatusInput GraphQL API交互所需要的结构体
type PatchEmailInput ¶
type PatchEmailInput struct {
NewEmail string `valid:"required,email" gqlgen:"NewEmail"` //
}
PatchEmailInput GraphQL API交互所需要的结构体
type PatchOptionValueInput ¶
type PatchOptionValueInput struct {
OptionUUID string `valid:"required,length(36|36)" gqlgen:"OptionUUID"` //
Value string `valid:"required,length(1|40)" gqlgen:"Value"` //
}
PatchOptionValueInput GraphQL API交互所需要的结构体
type PatchPasswordInput ¶
type PatchPasswordInput struct {
OldPassword string `valid:"required,length(6|25)" gqlgen:"OldPassword"` //
NewPassword string `valid:"required,length(6|25)" gqlgen:"NewPassword"` //
}
PatchPasswordInput GraphQL API交互所需要的结构体
type PatchRuleBitwiseInput ¶
type PatchRuleBitwiseInput struct {
RuleUUID string `valid:"required,length(36|36)" gqlgen:"RuleUUID"` //
Enabled string `valid:"required,matches(^(true|false)$)" gqlgen:"Enabled"` //
}
PatchRuleBitwiseInput GraphQL API交互所需要的结构体
type PatchRuleValuesInput ¶
type PatchRuleValuesInput struct {
RuleUUID string `valid:"required,length(36|36)" gqlgen:"RuleUUID"` //
Values string `valid:"required,length(1|150)" gqlgen:"Values"` //
}
PatchRuleValuesInput GraphQL API交互所需要的结构体
type PatchTicketStatusInput ¶
type PatchTicketStatusInput struct {
TicketUUID string `valid:"required,length(36|36)" gqlgen:"TicketUUID"` //
Status string `valid:"required" gqlgen:"Status"` //
}
PatchTicketStatusInput GraphQL API交互所需要的结构体
type PatchUserStatusInput ¶
type PatchUserStatusInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
Status uint8 `valid:"required,matches(^(0|1|2)$)" gqlgen:"Status"` //
}
PatchUserStatusInput GraphQL API交互所需要的结构体
type Query ¶
type Query struct {
QueryID uint `xorm:"'query_id' notnull int pk autoincr" valid:"-" json:"query_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Type uint8 `xorm:"'type' notnull tinyint" valid:"required,int,range(0|255)" json:"type" gqlgen:"Type"` //
ClusterID uint `xorm:"'cluster_id' notnull int index(index_1)" valid:"required,int,range(0|4294967295)" json:"cluster_id" gqlgen:"-"` //
Database string `xorm:"'database' notnull varchar(50)" valid:"required,length(1|50)" json:"database" gqlgen:"Database"` //
Content string `xorm:"'content' notnull text" valid:"required,length(1|65535)" json:"content" gqlgen:"Content"` //
Plan string `xorm:"'plan' notnull text" valid:"required,length(1|65535),ascii" json:"plan" gqlgen:"Plan"` //
UserID uint `xorm:"'user_id' notnull int index(index_2)" valid:"required,int,range(0|4294967295)" json:"user_id" gqlgen:"-"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Query 记录用户发起一般数据查询及SHOW语句
type ResendActivationMailInput ¶
type ResendActivationMailInput struct {
Email string `valid:"required,length(1|75)" gqlgen:"Email" json:"email"`
}
ResendActivationMailInput GraphQL API交互所需要的结构体
type ResetPasswdInput ¶
type ResetPasswdInput struct {
Code string `valid:"required" gqlgen:"Code" json:"code"`
Password string `valid:"required,length(6|20)" gqlgen:"Password" json:"password"`
}
ResetPasswdInput GraphQL API交互所需要的结构体
type RevokeClustersInput ¶
type RevokeClustersInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
ClusterUUIDs []string `valid:"required" gqlgen:"ClusterUUIDs"` //
}
RevokeClustersInput GraphQL API交互所需要的结构体
type RevokeReviewersInput ¶
type RevokeReviewersInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
ReviewerUUIDs []string `valid:"required" gqlgen:"ReviewerUUIDs"` //
}
RevokeReviewersInput GraphQL API交互所需要的结构体
type RevokeRolesInput ¶
type RevokeRolesInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
RoleUUIDs []string `valid:"required" gqlgen:"RoleUUIDs"` //
}
RevokeRolesInput GraphQL API交互所需要的结构体
type Role ¶
type Role struct {
RoleID uint `xorm:"'role_id' notnull int pk autoincr <-" valid:"-" json:"role_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Name string `xorm:"'name' notnull varchar(50) unique(unique_2) <-" valid:"required,runelength(1|50)" json:"name" gqlgen:"Name"` //
Description string `` //
/* 127-byte string literal not displayed */
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Role 系统角色
type Rule ¶
type Rule struct {
Name string `xorm:"'name' notnull char(10) pk" valid:"required,length(10|10)" json:"name" gqlgen:"Name"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Group uint8 `xorm:"'group' notnull tinyint <-" valid:"required,range(0|255)" json:"group" gqlgen:"Group"` //
Level uint8 `xorm:"'level' notnull tinyint <-" valid:"required,matches(^(1|2|3)$)" json:"level" gqlgen:"Level"` //
VldrGroup uint16 `` //
/* 127-byte string literal not displayed */
Operator string `` //
/* 126-byte string literal not displayed */
Values string `xorm:"'values' notnull varchar(150)" valid:"required,length(1|150)" json:"values" gqlgen:"Values"` //
Bitwise uint8 `xorm:"'bitwise' notnull tinyint" valid:"required,int,matches(^(4|5|6|7)$)" json:"bitwise" gqlgen:"Bitwise"` //
Func string `xorm:"'func' notnull varchar(75) <-" valid:"required,length(1|75)" json:"func" gqlgen:"Func"` //
Message string `xorm:"'message' notnull varchar(150) <-" valid:"required,runelength(1|150)" json:"message" gqlgen:"Message"` //
Description string `` //
/* 129-byte string literal not displayed */
Element string `xorm:"'element' notnull varchar(50) <-" valid:"required,length(1|50)" json:"element" gqlgen:"Element"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 126-byte string literal not displayed */
CreateAt uint `` //
/* 126-byte string literal not displayed */
}
Rule 系统审核规则
type ScheduleTicketInput ¶
type ScheduleTicketInput struct {
TicketUUID string `valid:"required,length(36|36)" gqlgen:"TicketUUID"` //
Schedule string `valid:"required,int" gqlgen:"Schedule"` //
}
ScheduleTicketInput GraphQL API交互所需要的结构体
type SoarQueryInput ¶
type SoarQueryInput struct {
ClusterUUID string `valid:"required,length(36|36)" gqlgen:"ClusterUUID"` //
Database string `valid:"required,length(1|50)" gqlgen:"Database"` //
Content string `valid:"required,length(1|65535)" gqlgen:"Content"` //
}
SoarQueryInput GraphQL API交互所需要的结构体
type Statement ¶
type Statement struct {
TicketID uint `xorm:"'ticket_id' notnull int pk" valid:"required,int,range(0|4294967295)" json:"ticket_id" gqlgen:"-"` //
Sequence uint16 `` //
/* 128-byte string literal not displayed */
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Content string `` //
/* 127-byte string literal not displayed */
Type uint8 `xorm:"'type' notnull tinyint" valid:"required,matches(^([1-9]?[0-9])$)" json:"type" gqlgen:"Type"` // 类型 0-99
Status uint8 `` // 状态 0-99
/* 126-byte string literal not displayed */
Report string `` //
/* 126-byte string literal not displayed */
Plan string `xorm:"'plan' notnull json" valid:"required,length(1|65535)" json:"plan" gqlgen:"Plan"` //
Results string `` //
/* 127-byte string literal not displayed */
RowsAffected uint `` //
/* 132-byte string literal not displayed */
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 128-byte string literal not displayed */
CreateAt uint `` //
/* 128-byte string literal not displayed */
StmtNode ast.StmtNode `xorm:"-" valid:"-" json:"-" gqlgen:"-"` //
Violations *Violations `xorm:"-" valid:"-" json:"-" gqlgen:"-"` //
}
Statement 工单分解出来的单个SQL语句
type Statistic ¶
type Statistic struct {
Group string `xorm:"'group' notnull char(25) pk" valid:"-" json:"group" gqlgen:"Group"` //
Key string `xorm:"'key' notnull varchar(50) pk" valid:"required,length(1|50),alphanum" json:"name" gqlgen:"Key"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Value float64 `xorm:"'value' notnull decimal(18,4)" valid:"required" json:"value" gqlgen:"Value"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Statistic 统计模型
type Table ¶
type Table struct {
Name string
Columns []*core.Column
Indexes map[string]*core.Index
PrimaryKeys []string
AutoIncrement string
Created map[string]bool
Updated string
Deleted string
Version string
StoreEngine string
Charset string
Collate string
Comment string
}
Table 重新封包向外直接暴露Columns
type Template ¶
type Template struct {
UUID string `xorm:"'uuid' notnull char(36) pk" valid:"-" json:"uuid" gqlgen:"UUID"` //
Subject string `xorm:"'subject' notnull varchar(100)" valid:"required,email,length(1|100)" json:"email" gqlgen:"Subject"` //
Body string `xorm:"'body' notnull text" valid:"required,length(1|65535)" json:"-" gqlgen:"Body"` //
Description string `xorm:"'description' notnull varchar(50)" valid:"required,length(1|50)" json:"-" gqlgen:"Description"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `xorm:"'update_at' notnull int" valid:"-" json:"update_at" gqlgen:"UpdateAt"` //
CreateAt uint `xorm:"'create_at' notnull int" valid:"-" json:"create_at" gqlgen:"CreateAt"` //
}
Template 用户模型
type Ticket ¶
type Ticket struct {
TicketID uint `xorm:"'ticket_id' notnull int pk autoincr" valid:"-" json:"ticket_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
ClusterID uint `xorm:"'cluster_id' notnull int index(index_1)" valid:"required,int,range(0|4294967295)" json:"cluster_id" gqlgen:"-"` //
Database string `` //
/* 126-byte string literal not displayed */
Subject string `xorm:"'subject' notnull varchar(50)" valid:"required,runelength(1|50)" json:"subject" gqlgen:"Subject"` //
Content string `xorm:"'content' notnull text" valid:"required,runelength(1|65535)" json:"content" gqlgen:"Content"` //
Status uint8 `xorm:"'status' notnull int" valid:"required,matches(^([1-9]?[0-9])$)" json:"status" gqlgen:"Status"` // 状态 0-99
UserID uint `xorm:"'user_id' notnull int index(index_2)" valid:"required,int,range(0|4294967295)" json:"user_id" gqlgen:"-"` //
ReviewerID uint `xorm:"'reviewer_id' notnull int index(index_3)" valid:"required,int,range(0|4294967295)" json:"reviewer_id" gqlgen:"-"` //
CronID sql.NullInt64 `xorm:"'cron_id' notnull int index(index_4)" valid:"required,int,range(0|4294967295)" json:"cron_id" gqlgen:"-"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 126-byte string literal not displayed */
CreateAt uint `` //
/* 126-byte string literal not displayed */
}
Ticket 工单模型
type UpdateClusterInput ¶
type UpdateClusterInput struct {
ClusterUUID string `valid:"required,length(36|36)" gqlgen:"ClusterUUID"` //
Host string `valid:"required,length(1|75)" gqlgen:"Host"` //
IP string `valid:"required,ipv4" gqlgen:"IP"` //
Port uint16 `valid:"required,port" gqlgen:"Port"` //
Alias string `valid:"required,length(4|75)" gqlgen:"Alias"` //
User string `valid:"required,length(4|40)" gqlgen:"User"` //
Status uint8 `valid:"required,int,matches(^(1|2)$)" gqlgen:"Status"` //
Password string `valid:"required,length(4|40)" gqlgen:"Password"` //
}
UpdateClusterInput GraphQL API交互所需要的结构体
type UpdateProfileInput ¶
type UpdateProfileInput struct {
AvatarUUID string `valid:"required,length(36|36)" gqlgen:"AvatarUUID"` //
Name string `valid:"required,length(1|25)" gqlgen:"Name"` //
Phone uint64 `valid:"-" gqlgen:"Phone"` //
}
UpdateProfileInput GraphQL API交互所需要的结构体
type UpdateTemplateInput ¶
type UpdateTemplateInput struct {
TemplateUUID string `valid:"required,length(36|36)" gqlgen:"TemplateUUID"` //
Subject string `valid:"required,length(1|100)" gqlgen:"Subject"` //
Body string `valid:"required,length(1|65535)" gqlgen:"Body"` //
Description string `valid:"required,length(1|50)" gqlgen:"Description"` //
}
UpdateTemplateInput GraphQL API交互所需要的结构体
type UpdateTicketInput ¶
type UpdateTicketInput struct {
TicketUUID string `valid:"required,length(36|36)" gqlgen:"TicketUUID"` //
ClusterUUID string `valid:"required,length(36|36)" gqlgen:"ClusterUUID"` //
Database string `valid:"required,length(1|50)" gqlgen:"Database"` //
Subject string `valid:"required,length(1|75)" gqlgen:"Subject"` //
Content string `valid:"required,length(1|65535)" gqlgen:"Content"` //
ReviewerUUID string `valid:"required,length(36|36)" gqlgen:"ReviewerUUID"` //
}
UpdateTicketInput GraphQL API交互所需要的结构体
type UpdateUserInput ¶
type UpdateUserInput struct {
UserUUID string `valid:"required,length(36|36)" gqlgen:"UserUUID"` //
Email string `valid:"required,length(3|75)" gqlgen:"Email"` //
Password string `valid:"required,length(3|75)" gqlgen:"Password"` //
Status uint8 `valid:"required,int,matches(^(1|2|3)$)" gqlgen:"Status"` //
Name string `valid:"required,length(1|25)" gqlgen:"Name"` //
Phone uint64 `valid:"-" gqlgen:"Phone"` //
AvatarUUID string `valid:"required,length(36|36)" gqlgen:"AvatarUUID"` //
}
UpdateUserInput GraphQL API交互所需要的结构体
type User ¶
type User struct {
UserID uint `xorm:"'user_id' notnull int pk autoincr" valid:"-" json:"user_id" gqlgen:"-"` //
UUID string `xorm:"'uuid' notnull char(36) unique(unique_1)" valid:"-" json:"uuid" gqlgen:"UUID"` //
Email string `xorm:"'email' notnull varchar(75) unique(unique_2)" valid:"required,email,length(3|75)" json:"email" gqlgen:"Email"` //
Password string `xorm:"'password' notnull char(60)" valid:"required" json:"-" gqlgen:"-"` //
Status uint8 `xorm:"'status' notnull tinyint" valid:"required,matches(^(0|1)$)" json:"status" gqlgen:"Status"` // 0 - 禁用 | 1 - 有效
Name string `xorm:"'name' notnull varchar(25)" valid:"required,runelength(1|25)" json:"name" gqlgen:"Name"` //
Phone uint64 `xorm:"'phone' bigint" valid:"" json:"phone" gqlgen:"Phone"` //
AvatarID uint `xorm:"'avatar_id' notnull int" valid:"required,int,range(0|4294967295)" json:"avatar_id" gqlgen:"-"` //
Version int `xorm:"'version'" valid:"-" json:"version" gqlgen:"-"` //
UpdateAt uint `` //
/* 127-byte string literal not displayed */
CreateAt uint `` //
/* 127-byte string literal not displayed */
}
User 用户模型
type UserLoginInput ¶
type UserLoginInput struct {
Email string `valid:"required,email" gqlgen:"Email"` //
Password string `valid:"required,length(6|25)" gqlgen:"Password"` //
}
UserLoginInput GraphQL API交互所需要的结构体
type UserRegisterInput ¶
type UserRegisterInput struct {
Email string `valid:"required,email" gqlgen:"Email"` //
Password string `valid:"required,length(6|25)" gqlgen:"Password"` //
}
UserRegisterInput GraphQL API交互所需要的结构体
type ValidateConnectionInput ¶
type ValidateConnectionInput struct {
IP string `valid:"required,ipv4" gqlgen:"IP"` //
Port uint16 `valid:"required,port" gqlgen:"Port"` //
User string `valid:"required,length(4|40)" gqlgen:"User"` //
Password string `valid:"required,length(4|40)" gqlgen:"Password"` // 注意:密码最大长度40位,超过40位会导致数据库截断
}
ValidateConnectionInput GraphQL API交互所需要的结构体
type ValidatePatternInput ¶
type ValidatePatternInput struct {
Pattern string `valid:"required,length(1|255)" gqlgen:"Pattern"` //
}
ValidatePatternInput GraphQL API交互所需要的结构体
type Violations ¶
Violations 单独一条语句不通过的所有的信息描述
func (*Violations) Clauses ¶
func (v *Violations) Clauses() []*Clause
Clauses 对于Violations上私有属性,通过方法返回