models

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: May 14, 2021 License: Apache-2.0 Imports: 5 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DeleteBathHostByIds

func DeleteBathHostByIds(ids []uint) int64

func DeleteBathUserByIds

func DeleteBathUserByIds(ids []uint) int64

func DeleteKeyword

func DeleteKeyword(ids []uint) int64

func DeleteTaskHostIsnull

func DeleteTaskHostIsnull() error

func DeleteTaskNotifyReceiversIsnull

func DeleteTaskNotifyReceiversIsnull() error

func RemoveAllTaskRunningID

func RemoveAllTaskRunningID() error

Types

type Filterword

type Filterword struct {
	Model
	Note string `json:"note"` // 过滤内容
}

func QueryFilterwordAll

func QueryFilterwordAll(pageSize int, page int) (words []Filterword, count int64)

type Host

type Host struct {
	Model
	Name     string `json:"name" gorm:"type:string;size:255;not null;unique"` // 主机名称
	Alias    string `json:"alias" gorm:"type:string;size:255;not null;"`      // 主机别名
	Port     int    `json:"port" gorm:"type:string;size:255;not null;"`       // 主机端口
	Username string `json:"username" gorm:"type:string;not null;size:255;"`   // 用户名
	Password string `json:"password" gorm:"type:string;not null;size:255"`    // 密码
	Remark   string `json:"remark" gorm:"type:string;size:255;not null;"`     // 备注
}

主机

func QueryHostAll

func QueryHostAll(pageSize int, page int, args map[string]interface{}) (hosts []Host, count int64)

func (*Host) AddHost

func (h *Host) AddHost() error

func (*Host) DeleteHostByID

func (h *Host) DeleteHostByID() error

func (*Host) QueryHostByID

func (h *Host) QueryHostByID() error

func (*Host) QueryHostByName

func (h *Host) QueryHostByName() error

func (*Host) UpdateHost

func (h *Host) UpdateHost(args map[string]interface{}) error

type Keyword

type Keyword struct {
	Model
	Description    string `json:"description"`                   // 轨迹内容
	TrackStatus    int    `json:"track_status" gorm:"default:1"` // 轨迹映射状态
	TrackMappingEn string `json:"track_mapping_en"`              // 轨迹映射英文
	TrackMappingCn string `json:"track_mapping_cn"`              // 轨迹映射中文
	TrackCode      int    `json:"track_code"`                    // 轨迹代码
}

轨迹映射

func QueryKeywordAll

func QueryKeywordAll(pageSize int, page int, args map[string]interface{}) (keywords []Keyword, count int64)

func (*Keyword) AddKeyword

func (k *Keyword) AddKeyword() error

func (*Keyword) QueryKeywordByDescAndCode

func (k *Keyword) QueryKeywordByDescAndCode() error

func (*Keyword) QueryKeywordByID

func (k *Keyword) QueryKeywordByID() error

func (*Keyword) QueryKeywordsByDescAndCode

func (k *Keyword) QueryKeywordsByDescAndCode() (keywords []Keyword)

func (*Keyword) UpdateKeyword

func (k *Keyword) UpdateKeyword(args map[string]interface{}) error

type Model

type Model struct {
	ID        uint           `gorm:"primary_key" json:"id"`
	CreatedAt time.Time      `json:"created_at"`
	UpdatedAt time.Time      `json:"updated_at"`
	DeletedAt gorm.DeletedAt `gorm:"index" json:"deleted_at"`
}

gorm.Model

type NewScript

type NewScript struct {
	ID   uint   `json:"id"`
	Name string `json:"name"` // 脚本名称
}

func QueryAllScriptIDAndName

func QueryAllScriptIDAndName() (newscript []NewScript)

type Script

type Script struct {
	Model
	Name                        string                    `json:"name" gorm:"type:string;size:255;not null;unique"`                                     // 脚本名称
	Url                         string                    `json:"url" gorm:"type:string;size:1000;not null;"`                                           // 请求地址
	Method                      enum.ScriptMethodType     `json:"method" gorm:"type:int;size:1"`                                                        // 请求方式
	ContentType                 enum.ContentType          `json:"content_type" gorm:"type:string;size:255;not null;"`                                   // Content-type
	Headers                     []ScriptHeader            `json:"headers" gorm:"foreignkey:ScriptID;association_foreignkey:ID"`                         // 请求头
	IsFormData                  bool                      `json:"is_form_data"`                                                                         // 是否表单提交
	IsUrlEncode                 bool                      `json:"is_url_encode"`                                                                        // 是否URL编码
	PostData                    string                    `json:"post_data" gorm:"type:string;size:1000;"`                                              // 请求数据
	ReturnType                  enum.ReturnType           `json:"return_type" gorm:"type:int;size:1"`                                                   // 返回内容格式
	JsonIsReturnArr             bool                      `json:"json_is_return_arr"`                                                                   // 是否取值数组根节点:不是:直接find子节点
	JsonNeedRootField           string                    `json:"json_need_root_field"`                                                                 // json获取根节点
	JsonNeedChildrenFields      []ScriptJsonChildrenField `json:"json_need_children_fields" gorm:"foreignkey:ScriptID;association_foreignkey:ID"`       // json所需子字段
	HtmlNeedClassName           string                    `json:"html_need_class_name"`                                                                 // html获取根节点位置名称
	HtmlNeedClassChildrenFields []ScriptHtmlChildrenField `json:"html_need_class_children_fields" gorm:"foreignkey:ScriptID;association_foreignkey:ID"` // html获取节点位置
	TimeFormat                  bool                      `json:"time_format"`                                                                          // 时间是否需要格式化
	TimeOriginal                string                    `json:"time_original"`                                                                        // 原始时间格式
	TimeSort                    bool                      `json:"sort"`                                                                                 // 时间是否排序
	ParentID                    uint                      `json:"parent_id"`                                                                            // 父脚本ID
}

func QueryScriptAll

func QueryScriptAll(pageSize int, page int, args map[string]interface{}) (scripts []Script, count int64)

func (*Script) AddScript

func (s *Script) AddScript() error

func (*Script) DeleteScriptByID

func (s *Script) DeleteScriptByID() error

func (*Script) QueryScriptByID

func (s *Script) QueryScriptByID() error

func (*Script) QueryScriptByName

func (s *Script) QueryScriptByName() error

func (*Script) UpdatesScript

func (s *Script) UpdatesScript(args map[string]interface{}) error

type ScriptHeader

type ScriptHeader struct {
	ID       int    `json:"id"`
	ScriptID uint   `json:"script_id"`
	Key      string `json:"key" gorm:"type:string;size:255;not null;"`   // 请求头名称
	Value    string `json:"value" gorm:"type:string;size:255;not null;"` // 请求头值
}

type ScriptHtmlChildrenField

type ScriptHtmlChildrenField struct {
	ID       int                     `json:"id"`
	ScriptID uint                    `json:"script_id"`
	Key      enum.ReturnGetFieldType `json:"key" gorm:"type:string;size:255;not null;"`   // html获取位置对应系统字段
	Value    int                     `json:"value" gorm:"type:string;size:255;not null;"` // html获取节点位置
}

type ScriptJsonChildrenField

type ScriptJsonChildrenField struct {
	ID       int                     `json:"id"`
	ScriptID uint                    `json:"script_id"`
	Key      enum.ReturnGetFieldType `json:"key" gorm:"type:string;size:255;not null;"`   // json所需字段对应系统字段
	Value    string                  `json:"value" gorm:"type:string;size:255;not null;"` // json所需字段
}

type Task

type Task struct {
	Model
	TaskName        string                `json:"task_name" gorm:"type:string;not null;size:255"`                      // 任务名称
	TaskGroup       enum.TaskGroupType    `json:"task_group" gorm:"type:int;size:1"`                                   // 任务分组
	TaskType        enum.TaskType         `json:"task_type" gorm:"type:int;size:1"`                                    // 任务类型 HTTP仅支持:GET、POST
	Cron            string                `json:"cron" gorm:"size:255;"`                                               // cron表达式  例如:0 0/5 * * * ?
	InvokingTarget  string                `json:"invoking_target" gorm:"size:255"`                                     // 调用目标
	TargetArgs      string                `json:"target_args" gorm:"size:255"`                                         // 目标参数
	Multiple        bool                  `json:"multiple"`                                                            // 是否并行运行相同的调用目标
	TaskStatus      enum.TaskStatusType   `json:"task_status" gorm:"type:int;size:1"`                                  // 状态  1:禁用  3:正常
	HTTPURL         string                `json:"http_url" gorm:"type:string;size:255;"`                               // http请求url
	Timeout         int                   `json:"timeout" gorm:"type:int;size:11;default:60"`                          // 请求超时时间
	RetryTimes      int                   `json:"retry_times" gorm:"type:int;size:11;default:0"`                       // 重试次数
	RetryInterval   int                   `json:"retry_interval" gorm:"type:int;size:11;"`                             // 重试间隔时间
	NotifyStatus    enum.NotifyStatusType `json:"notify_status" gorm:"type:int;size:1;default:0"`                      // 任务执行结束是否通知
	NotifyType      enum.NotifyType       `json:"notify_type" gorm:"type:int;size:1;default:0"`                        // 通知类型
	NotifyReceivers []TaskNotifyReceiver  `json:"notify_receivers" gorm:"foreignkey:TaskID;association_foreignkey:ID"` // 通知接受者
	TaskHosts       []TaskHost            `json:"task_hosts" gorm:"foreignkey:TaskID;association_foreignkey:ID"`       // 任务主机
	Remark          string                `json:"remark" gorm:"type:string;size:100;not null;"`                        // 任务备注
	TaskRunningID   int                   `json:"task_running_id" gorm:"size:11;"`                                     // task启动时返回的任务id
}

任务

func QueryTaskAll

func QueryTaskAll(pageSize int, page int, args map[string]interface{}) (tasks []Task, count int64)

func QueryTaskByIds

func QueryTaskByIds(ids []uint) (tasks []Task, err error)

func QueryTaskByStatusEnabledAndRunning

func QueryTaskByStatusEnabledAndRunning(pageSize int, page int) (tasks []Task, count int64)

func (*Task) AddTask

func (t *Task) AddTask() error

func (*Task) DeleteTaskByID

func (t *Task) DeleteTaskByID() error

func (*Task) QueryTaskByID

func (t *Task) QueryTaskByID() error

func (*Task) QueryTaskByInvokingTarget

func (t *Task) QueryTaskByInvokingTarget() error

func (*Task) UpdatesTask

func (t *Task) UpdatesTask(args map[string]interface{}) error

type TaskHost

type TaskHost struct {
	ID     uint `json:"id"`                            // ID
	HostID uint `json:"host_id"`                       // 主机ID
	TaskID uint `gorm:"INDEX" json:"task_id"`          // 任务ID
	Host   Host `json:"host" gorm:"foreignkey:HostID"` // 主机
}

任务执行主机

func QueryTaskHostByUserID

func QueryTaskHostByUserID(ids []uint) (hosts []TaskHost)

type TaskLog

type TaskLog struct {
	Model
	TaskID      uint                `json:"task_id"`                            // 任务ID
	TaskStatus  enum.TaskStatusType `json:"task_status" gorm:"type:int;size:1"` // 任务状态
	StartTime   string              `json:"start_time"`                         // 开始执行时间
	EndTime     string              `json:"end_time"`                           // 执行完成(失败)时间
	NextRunTime string              `json:"next_run_time"`                      // 下次执行时间
}

任务执行日志

func (*TaskLog) AddTaskLog

func (t *TaskLog) AddTaskLog() error

func (*TaskLog) QueryTaskLogByID

func (t *TaskLog) QueryTaskLogByID() error

func (*TaskLog) QueryTaskLogByTaskID

func (t *TaskLog) QueryTaskLogByTaskID() error

func (*TaskLog) UpdateTaskLog

func (t *TaskLog) UpdateTaskLog(args map[string]interface{}) error

type TaskNotifyReceiver

type TaskNotifyReceiver struct {
	ID     uint `json:"id"`                            // ID
	UserID uint `json:"user_id"`                       // 接受者ID
	TaskID uint `gorm:"INDEX" json:"task_id"`          // 任务ID
	User   User `json:"user" gorm:"foreignkey:UserID"` // 接受者
}

任务通知人

func QueryTaskNotifyReceiversByUserID

func QueryTaskNotifyReceiversByUserID(ids []uint) (users []TaskNotifyReceiver)

type User

type User struct {
	Model
	Username string              `json:"username" gorm:"type:string;not null;size:255;unique"` // 用户名
	Password string              `json:"-" gorm:"type:string;not null;size:255"`               // 密码
	OpenID   string              `json:"open_id" gorm:"type:string;not null;size:100"`         // 绑定微信 openid
	Email    string              `json:"email" gorm:"type:string;not null;size:100"`           // 邮箱地址
	IsAdmin  bool                `json:"is_admin" gorm:"type:bool;not null;default:0"`         // 是否是管理员 1:管理员 0:普通用户
	Status   enum.UserStatusType `json:"status" gorm:" not null;default:1"`                    // 账号状态 1: 正常 0:禁用
}

用户

func QueryUserAll

func QueryUserAll(pageSize int, page int, args map[string]interface{}) (users []User, count int64)

func (*User) AddUser

func (u *User) AddUser() error

func (*User) DeleteUserByID

func (u *User) DeleteUserByID() error

func (*User) QueryUserByID

func (u *User) QueryUserByID() error

func (*User) QueryUserByUsername

func (u *User) QueryUserByUsername() error

func (*User) QueryUserByUsernameAndPass

func (u *User) QueryUserByUsernameAndPass() error

func (*User) UpdateUser

func (u *User) UpdateUser(args map[string]interface{}) error

Jump to

Keyboard shortcuts

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