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上私有属性,通过方法返回