go-common/app/service/live/resource/model/tree.go

165 lines
3.7 KiB
Go
Raw Normal View History

2019-04-22 10:49:16 +00:00
package model
import (
xtime "go-common/library/time"
"time"
)
//App app.
type App struct {
ID int64 `json:"id" gorm:"primary_key"`
Name string `json:"name"`
TreeID int64 `json:"tree_id"`
Env string `json:"env"`
Zone string `json:"zone"`
Token string `json:"token"`
Status int8 `json:"status"`
Ctime xtime.Time `json:"ctime"`
Mtime xtime.Time `json:"mtime"`
}
// TableName app
func (App) TableName() string {
return "app"
}
// Node node.
type Node struct {
Name string `json:"name"`
Path string `json:"path"`
TreeID int64 `json:"tree_id"`
}
// TreeNode TreeNode.
type TreeNode struct {
Alias string `json:"alias"`
CreatedAt string `json:"created_at"`
Name string `json:"name"`
Path string `json:"path"`
Tags interface{} `json:"tags"`
Type int `json:"type"`
}
// Res res.
type Res struct {
Count int `json:"count"`
Data []*TreeNode `json:"data"`
Page int `json:"page"`
Results int `json:"results"`
}
// AppPager app pager
type AppPager struct {
Total int64 `json:"total"`
Pn int64 `json:"pn"`
Ps int64 `json:"ps"`
Items []*App `json:"items"`
}
// Resp tree resp
type Resp struct {
Data map[string]*Tree `json:"data"`
}
// Tree node.
type Tree struct {
Name string `json:"name"`
Type int `json:"type"`
Path string `json:"path"`
Tags *TreeTag `json:"tags"`
Children map[string]*Tree `json:"children"`
}
//TreeTag tree tag.
type TreeTag struct {
Ops string `json:"ops"`
Rds string `json:"rds"`
}
//Env env.
type Env struct {
Name string `json:"name"`
NikeName string `json:"nike_name"`
Token string `json:"token"`
}
//RoleNode roleNode .
type RoleNode struct {
ID int64 `json:"id"`
Name string `json:"name"`
Path string `json:"path"`
Type int8 `json:"type"`
Role int8 `json:"role"`
}
//UpdateTokenReq ...
type UpdateTokenReq struct {
AppName string `form:"app_name" validate:"required"`
Env string `form:"env" validate:"required"`
Zone string `form:"zone" validate:"required"`
TreeID int64 `form:"tree_id" validate:"required"`
}
//CreateReq ...
type CreateReq struct {
AppName string `form:"app_name" validate:"required"`
TreeID int64 `form:"tree_id" validate:"required"`
}
//AppListReq ...
type AppListReq struct {
AppName string `form:"app_name"`
Bu string `form:"bu"`
Team string `form:"team"`
Pn int64 `form:"pn" default:"1" validate:"min=1"`
Ps int64 `form:"ps" default:"20" validate:"min=1"`
Status int8 `form:"status"`
}
//EnvsByTeamReq ...
type EnvsByTeamReq struct {
AppName string `form:"app_name"`
Zone string `form:"zone"`
Team string `form:"team"`
}
//EnvsReq ...
type EnvsReq struct {
AppName string `form:"app_name" validate:"required"`
TreeID int64 `form:"tree_id" validate:"required"`
Zone string `form:"zone" validate:"required"`
}
//NodeTreeReq ...
type NodeTreeReq struct {
Node string `form:"node"`
Team string `form:"team"`
}
//ZoneCopyReq ...
type ZoneCopyReq struct {
AppName string `form:"app_name" validate:"required"`
From string `form:"from_zone" validate:"required"`
To string `form:"to_zone" validate:"required"`
TreeID int64 `form:"tree_id" validate:"required"`
}
//CasterEnvsReq ...
type CasterEnvsReq struct {
TreeID int64 `form:"tree_id" validate:"required"`
Zone string `form:"zone" validate:"required"`
Auth string `form:"auth" validate:"required"`
}
//CacheData ...
type CacheData struct {
Data map[int64]*RoleNode `json:"data"`
CTime time.Time `json:"ctime"`
}
//AppStatusReq ...
type AppStatusReq struct {
TreeID int64 `form:"tree_id" validate:"required"`
Status int8 `form:"status" default:"1"`
}