biz

package
v1.0.16 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2024 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Regexp     = `\$\{(\w|\.)+}`
	FormatJson = "json"
	FormatYaml = "yaml"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Business

type Business struct {
	ktypes.BaseModel
	ServerID    uint32           `json:"server_id" gorm:"not null;comment:服务id"`
	Keyword     string           `json:"keyword" gorm:"not null;type:char(32) binary;comment:变量标识"`
	Type        string           `json:"type" gorm:"not null;size:32;comment:变量类型"`
	Description string           `json:"description" gorm:"not null;size:128;comment:变量描述"`
	Server      *Server          `json:"server" gorm:"constraint:onDelete:cascade"`
	Values      []*BusinessValue `json:"business_value" gorm:"constraint:onDelete:cascade"`
}

type BusinessRepo

type BusinessRepo interface {
	Get(ctx kratosx.Context, id uint32) (*Business, error)
	GetByKeyword(ctx kratosx.Context, key string) (*Business, error)
	PageServerBusiness(ctx kratosx.Context, req *types.PageServerBusinessRequest) ([]*Business, uint32, error)
	AllServerBusiness(ctx kratosx.Context, id uint32) ([]*Business, error)
	Create(ctx kratosx.Context, c *Business) (uint32, error)
	Update(ctx kratosx.Context, c *Business) error
	Delete(ctx kratosx.Context, uint322 uint32) error
	GetValues(ctx kratosx.Context, bid uint32) ([]*BusinessValue, error)
	GetEnvValues(ctx kratosx.Context, eid, sid uint32) ([]*BusinessValue, error)
	UpdateValue(ctx kratosx.Context, rv *BusinessValue) error
}

type BusinessUseCase

type BusinessUseCase struct {
	// contains filtered or unexported fields
}

func NewBusinessUseCase

func NewBusinessUseCase(config *config.Config, repo BusinessRepo) *BusinessUseCase

func (*BusinessUseCase) Add

func (u *BusinessUseCase) Add(ctx kratosx.Context, business *Business) (uint32, error)

Add 添加业务变量信息

func (*BusinessUseCase) AllBusinessField

func (u *BusinessUseCase) AllBusinessField(ctx kratosx.Context, sid uint32) ([]string, error)

AllBusinessField 获取指定服务业务变量的所有可用字段

func (*BusinessUseCase) AllBusinessValue

func (u *BusinessUseCase) AllBusinessValue(ctx kratosx.Context, bid uint32) ([]*BusinessValue, error)

AllBusinessValue 获取指定业务变量的所有环境值

func (*BusinessUseCase) CheckBusinessValue

func (u *BusinessUseCase) CheckBusinessValue(ctx kratosx.Context, bid uint32, values string) error

CheckBusinessValue 检测业务变量值是否合法

func (*BusinessUseCase) Delete

func (u *BusinessUseCase) Delete(ctx kratosx.Context, id uint32) error

Delete 删除业务变量信息

func (*BusinessUseCase) Get

func (u *BusinessUseCase) Get(ctx kratosx.Context, id uint32) (*Business, error)

Get 获取指定业务变量信息

func (*BusinessUseCase) GetByKeyword

func (u *BusinessUseCase) GetByKeyword(ctx kratosx.Context, keyword string) (*Business, error)

GetByKeyword 获取指定标识的业务变量信息

func (*BusinessUseCase) PageServerBusiness

func (u *BusinessUseCase) PageServerBusiness(ctx kratosx.Context, req *types.PageServerBusinessRequest) ([]*Business, uint32, error)

PageServerBusiness 获取指定服务的业务变量

func (*BusinessUseCase) Update

func (u *BusinessUseCase) Update(ctx kratosx.Context, business *Business) error

Update 更新业务变量信息

func (*BusinessUseCase) UpdateBusinessValue

func (u *BusinessUseCase) UpdateBusinessValue(ctx kratosx.Context, rv *BusinessValue) error

UpdateBusinessValue 更新指定业务变量的值

type BusinessValue

type BusinessValue struct {
	ktypes.BaseModel
	EnvID      uint32    `json:"env_id" gorm:"not null;comment:环境id"`
	BusinessID uint32    `json:"business_id" gorm:"not null;comment:业务变量id"`
	Value      string    `json:"value" gorm:"not null;type:text;comment:业务变量id"`
	Env        *Env      `json:"env" gorm:"constraint:onDelete:cascade"`
	Business   *Business `json:"business" gorm:"constraint:onDelete:cascade"`
}

type Configure

type Configure struct {
	ktypes.BaseModel
	ServerID    uint32  `json:"server_id" gorm:"not null;comment:服务id"`
	EnvID       uint32  `json:"env_id" gorm:"not null;comment:环境id"`
	Content     string  `json:"content" gorm:"not null;type:text;comment:配置内容"`
	Version     string  `json:"version" gorm:"not null;size:32;comment:配置版本"`
	Format      string  `json:"format" gorm:"not null;size:32;comment:配置格式"`
	Description *string `json:"description" gorm:"size:128;comment:配置描述"`
	Server      *Server `json:"server" gorm:"constraint:onDelete:cascade"`
	Env         *Env    `json:"env" gorm:"constraint:onDelete:cascade"`
}

type ConfigureRepo

type ConfigureRepo interface {
	Get(ctx kratosx.Context, id uint32) (*Configure, error)
	GetByEnvAndSrv(ctx kratosx.Context, envId, srvId uint32) (*Configure, error)
	Page(ctx kratosx.Context, options *ktypes.PageOptions) ([]*Configure, uint32, error)
	Create(ctx kratosx.Context, c *Configure) (uint32, error)
	Update(ctx kratosx.Context, c *Configure) error
}

type ConfigureUseCase

type ConfigureUseCase struct {
	// contains filtered or unexported fields
}

func NewConfigureUseCase

func NewConfigureUseCase(config *config.Config, repo ConfigureRepo) *ConfigureUseCase

func (*ConfigureUseCase) Add

func (u *ConfigureUseCase) Add(ctx kratosx.Context, configure *Configure) (uint32, error)

Add 添加配置信息

func (*ConfigureUseCase) Compare

Compare 对比配置

func (*ConfigureUseCase) GetByEnvAndSrc

func (u *ConfigureUseCase) GetByEnvAndSrc(ctx kratosx.Context, envId, srvId uint32) (*Configure, error)

GetByEnvAndSrc 获取指定标识的配置信息

func (*ConfigureUseCase) Page

func (u *ConfigureUseCase) Page(ctx kratosx.Context, page, pageSize uint32) ([]*Configure, uint32, error)

Page 获取分页配置信息

func (*ConfigureUseCase) SendWatcher

func (u *ConfigureUseCase) SendWatcher(in *Configure)

func (*ConfigureUseCase) Update

func (u *ConfigureUseCase) Update(ctx kratosx.Context, req *Configure) error

Update 更新模配置

func (*ConfigureUseCase) Watch

type Env

type Env struct {
	types.BaseModel
	Keyword     string `json:"keyword" gorm:"not null;type:char(32) binary;comment:环境标识"`
	Name        string `json:"name" gorm:"not null;size:64;comment:环境名称"`
	Description string `json:"description" gorm:"not null;size:128;comment:环境描述"`
	Token       string `json:"token,omitempty" gorm:"not null;size:128;comment:环境token"`
	Status      *bool  `json:"status" gorm:"default:false;comment:环境状态"`
}

type EnvRepo

type EnvRepo interface {
	Get(ctx kratosx.Context, id uint32) (*Env, error)
	GetByKeyword(ctx kratosx.Context, keyword string) (*Env, error)
	GetByToken(ctx kratosx.Context, keyword string) (*Env, error)
	GetByIds(ctx kratosx.Context, ids []uint32) ([]*Env, error)
	All(ctx kratosx.Context) ([]*Env, error)
	Create(ctx kratosx.Context, c *Env) (uint32, error)
	Update(ctx kratosx.Context, c *Env) error
	Delete(ctx kratosx.Context, uint322 uint32) error
}

type EnvUseCase

type EnvUseCase struct {
	// contains filtered or unexported fields
}

func NewEnvUseCase

func NewEnvUseCase(config *config.Config, repo EnvRepo) *EnvUseCase

func (*EnvUseCase) Add

func (e *EnvUseCase) Add(ctx kratosx.Context, env *Env) (uint32, error)

Add 新建环境

func (*EnvUseCase) All

func (e *EnvUseCase) All(ctx kratosx.Context) ([]*Env, error)

All 查询所有环境

func (*EnvUseCase) Delete

func (e *EnvUseCase) Delete(ctx kratosx.Context, id uint32) error

Delete 删除指定id的环境

func (*EnvUseCase) Get

func (e *EnvUseCase) Get(ctx kratosx.Context, id uint32) (*Env, error)

Get 查询指定的服务

func (*EnvUseCase) GetByIds

func (e *EnvUseCase) GetByIds(ctx kratosx.Context, ids []uint32) ([]*Env, error)

GetByIds 查询所有环境

func (*EnvUseCase) GetByKeyword

func (e *EnvUseCase) GetByKeyword(ctx kratosx.Context, keyword string) (*Env, error)

GetByKeyword 通过关键词查找指定环境

func (*EnvUseCase) GetByToken

func (e *EnvUseCase) GetByToken(ctx kratosx.Context, token string) (*Env, error)

GetByToken 通过token查找指定环境

func (*EnvUseCase) ResetToken

func (e *EnvUseCase) ResetToken(ctx kratosx.Context, id uint32) (string, error)

ResetToken 重置环境token

func (*EnvUseCase) Update

func (e *EnvUseCase) Update(ctx kratosx.Context, env *Env) error

Update 更新环境

type Resource

type Resource struct {
	ktypes.BaseModel
	Keyword        string            `json:"keyword" gorm:"not null;type:char(32) binary;comment:变量标识"`
	Description    string            `json:"description" gorm:"not null;size:128;comment:变量描述"`
	Fields         string            `json:"fields" gorm:"not null;size:256;comment:变量字段集合"`
	Tag            string            `json:"tag" gorm:"not null;size:32;comment:变量标签"`
	Private        *bool             `json:"private" gorm:"default:false;comment:是否私有"`
	ResourceServer []*ResourceServer `json:"resource_server" gorm:"constraint:onDelete:cascade"`
	ResourceValue  []*ResourceValue  `json:"resource_value" gorm:"constraint:onDelete:cascade"`
}

type ResourceRepo

type ResourceRepo interface {
	Get(ctx kratosx.Context, id uint32) (*Resource, error)
	GetByKeyword(ctx kratosx.Context, key string) (*Resource, error)
	PageResource(ctx kratosx.Context, req *types.PageResourceRequest) ([]*Resource, uint32, error)
	Create(ctx kratosx.Context, c *Resource) (uint32, error)
	Update(ctx kratosx.Context, c *Resource) error
	Delete(ctx kratosx.Context, uint322 uint32) error
	GetValues(ctx kratosx.Context, rid uint32) ([]*ResourceValue, error)
	GetEnvValues(ctx kratosx.Context, eid, sid uint32) ([]*ResourceValue, error)
	UpdateValue(ctx kratosx.Context, rv *ResourceValue) error
	PageServerResource(ctx kratosx.Context, id uint32, options *ktypes.PageOptions) ([]*Resource, uint32, error)
	AllServerResource(ctx kratosx.Context, id uint32) ([]*Resource, error)
	AllResourceServerId(ctx kratosx.Context, id uint32) ([]uint32, error)
}

type ResourceServer

type ResourceServer struct {
	ServerID   uint32    `json:"server_id" gorm:"uniqueIndex:sr;not null;comment:服务id"`
	ResourceID uint32    `json:"resource_id" gorm:"uniqueIndex:sr;not null;comment:资源id"`
	Server     *Server   `json:"server" gorm:"constraint:onDelete:cascade"`
	Resource   *Resource `json:"resource" gorm:"constraint:onDelete:cascade"`
}

type ResourceUseCase

type ResourceUseCase struct {
	// contains filtered or unexported fields
}

func NewResourceUseCase

func NewResourceUseCase(config *config.Config, rsRepo ResourceRepo) *ResourceUseCase

func (*ResourceUseCase) Add

func (u *ResourceUseCase) Add(ctx kratosx.Context, resource *Resource) (uint32, error)

Add 添加资源信息

func (*ResourceUseCase) AllResourceServerIds

func (u *ResourceUseCase) AllResourceServerIds(ctx kratosx.Context, rid uint32) ([]uint32, error)

AllResourceServerIds 获取指定资源的关联服务id

func (*ResourceUseCase) AllResourceValue

func (u *ResourceUseCase) AllResourceValue(ctx kratosx.Context, rid uint32) ([]*ResourceValue, error)

AllResourceValue 获取指定资源的所有环境值

func (*ResourceUseCase) AllServerResourceField

func (u *ResourceUseCase) AllServerResourceField(ctx kratosx.Context, sid uint32) ([]string, error)

AllServerResourceField 获取指定服务资源的字段

func (*ResourceUseCase) CheckResourceValue

func (u *ResourceUseCase) CheckResourceValue(ctx kratosx.Context, rid uint32, values string) error

CheckResourceValue 检测资源值是否合法

func (*ResourceUseCase) Delete

func (u *ResourceUseCase) Delete(ctx kratosx.Context, id uint32) error

Delete 删除资源信息

func (*ResourceUseCase) Get

func (u *ResourceUseCase) Get(ctx kratosx.Context, id uint32) (*Resource, error)

Get 获取指定资源信息

func (*ResourceUseCase) GetByKeyword

func (u *ResourceUseCase) GetByKeyword(ctx kratosx.Context, keyword string) (*Resource, error)

GetByKeyword 获取指定标识的资源信息

func (*ResourceUseCase) Page

Page 获取分页资源信息

func (*ResourceUseCase) PageServerResource

func (u *ResourceUseCase) PageServerResource(ctx kratosx.Context, req *types.PageServerResourceRequest) ([]*Resource, uint32, error)

PageServerResource 获取指定服务的分页资源

func (*ResourceUseCase) Update

func (u *ResourceUseCase) Update(ctx kratosx.Context, resource *Resource) error

Update 更新资源信息

func (*ResourceUseCase) UpdateResourceValue

func (u *ResourceUseCase) UpdateResourceValue(ctx kratosx.Context, rv *ResourceValue) error

UpdateResourceValue 更新指定资源的值

type ResourceValue

type ResourceValue struct {
	ktypes.BaseModel
	EnvID      uint32    `json:"env_id" gorm:"uniqueIndex:er;not null;comment:环境id"`
	ResourceID uint32    `json:"resource_id" gorm:"uniqueIndex:er;not null;comment:资源id"`
	Value      string    `json:"value" gorm:"not null;type:text;comment:资源id"`
	Env        *Env      `json:"env" gorm:"constraint:onDelete:cascade"`
	Resource   *Resource `json:"resource" gorm:"constraint:onDelete:cascade"`
}

type Server

type Server struct {
	ktypes.BaseModel
	Keyword     string `json:"keyword" gorm:"not null;type:char(32) binary;comment:服务标识"`
	Name        string `json:"name" gorm:"not null;size:64;comment:服务名称"`
	Description string `json:"description" gorm:"not null;size:128;comment:服务描述"`
}

type ServerRepo

type ServerRepo interface {
	Get(ctx kratosx.Context, id uint32) (*Server, error)
	GetByKeyword(ctx kratosx.Context, key string) (*Server, error)
	GetByIds(ctx kratosx.Context, ids []uint32) ([]*Server, error)
	PageServer(ctx kratosx.Context, req *types.PageServerRequest) ([]*Server, uint32, error)
	All(ctx kratosx.Context, options ktypes.Scopes) ([]*Server, error)
	Create(ctx kratosx.Context, c *Server) (uint32, error)
	Update(ctx kratosx.Context, c *Server) error
	Delete(ctx kratosx.Context, uint322 uint32) error
}

type ServerUseCase

type ServerUseCase struct {
	// contains filtered or unexported fields
}

func NewServerUseCase

func NewServerUseCase(config *config.Config, repo ServerRepo) *ServerUseCase

func (*ServerUseCase) Add

func (s *ServerUseCase) Add(ctx kratosx.Context, server *Server) (uint32, error)

Add 添加服务信息

func (*ServerUseCase) Delete

func (s *ServerUseCase) Delete(ctx kratosx.Context, id uint32) error

Delete 删除服务信息

func (*ServerUseCase) Get

func (s *ServerUseCase) Get(ctx kratosx.Context, id uint32) (*Server, error)

Get 获取指定服务信息

func (*ServerUseCase) GetByIds

func (s *ServerUseCase) GetByIds(ctx kratosx.Context, ids []uint32) ([]*Server, error)

GetByIds 查询所有环境

func (*ServerUseCase) GetByKeyword

func (s *ServerUseCase) GetByKeyword(ctx kratosx.Context, keyword string) (*Server, error)

GetByKeyword 获取指定标识的服务信息

func (*ServerUseCase) Page

Page 获取分页服务信息

func (*ServerUseCase) Update

func (s *ServerUseCase) Update(ctx kratosx.Context, server *Server) error

Update 更新服务信息

type Template

type Template struct {
	ktypes.BaseModel
	ServerID    uint32  `json:"server_id" gorm:"uniqueIndex:sv;not null;comment:模板id"`
	Content     string  `json:"content" gorm:"not null;type:text;comment:模板内容"`
	Version     string  `json:"version" gorm:"uniqueIndex:sv;not null;size:32;comment:模板版本"`
	IsUse       bool    `json:"is_use" gorm:"default:false;comment:是否使用"`
	Format      string  `json:"format" gorm:"not null;size:32;comment:模板格式"`
	Description string  `json:"description" gorm:"not null;size:128;comment:模板描述"`
	Compare     string  `json:"compare" gorm:"not null;type:text;comment:变更详情"`
	Server      *Server `json:"server" gorm:"constraint:onDelete:cascade"`
}

type TemplateRepo

type TemplateRepo interface {
	Get(ctx kratosx.Context, id uint32) (*Template, error)
	GetByVersion(ctx kratosx.Context, version string) (*Template, error)
	Current(ctx kratosx.Context, srvId uint32) (*Template, error)
	PageServerTemplate(ctx kratosx.Context, options *types.PageTemplateRequest) ([]*Template, uint32, error)
	All(ctx kratosx.Context, options ktypes.Scopes) ([]*Template, error)
	Create(ctx kratosx.Context, c *Template) (uint32, error)
	Update(ctx kratosx.Context, c *Template) error
	Use(ctx kratosx.Context, srvId, tpId uint32) error
	Delete(ctx kratosx.Context, uint322 uint32) error
}

type TemplateUseCase

type TemplateUseCase struct {
	// contains filtered or unexported fields
}

func NewTemplateUseCase

func NewTemplateUseCase(config *config.Config, tpRepo TemplateRepo, rsRepo ResourceRepo, bsRepo BusinessRepo) *TemplateUseCase

func (*TemplateUseCase) Add

func (t *TemplateUseCase) Add(ctx kratosx.Context, template *Template) (uint32, error)

Add 添加模板信息

func (*TemplateUseCase) Compare

Compare 对比变更细节

func (*TemplateUseCase) Current

func (t *TemplateUseCase) Current(ctx kratosx.Context, srvId uint32) (*Template, error)

Current 获取当前版本的配置信息

func (*TemplateUseCase) Delete

func (t *TemplateUseCase) Delete(ctx kratosx.Context, id uint32) error

Delete 删除模板信息

func (*TemplateUseCase) Get

func (t *TemplateUseCase) Get(ctx kratosx.Context, id uint32) (*Template, error)

Get 获取指定模板信息

func (*TemplateUseCase) PageServerTemplate

func (t *TemplateUseCase) PageServerTemplate(ctx kratosx.Context, req *types.PageTemplateRequest) ([]*Template, uint32, error)

PageServerTemplate 获取分页模板信息

func (*TemplateUseCase) Parse

Parse 使用指定版本配置

func (*TemplateUseCase) ParseByContent

func (t *TemplateUseCase) ParseByContent(ctx kratosx.Context, req *types.ParseByContentRequest) (string, error)

ParseByContent 指定content生成配置预览

func (*TemplateUseCase) Switch

func (t *TemplateUseCase) Switch(ctx kratosx.Context, srvId, tpId uint32) error

Switch 切换指定版本信息

func (*TemplateUseCase) Update

func (t *TemplateUseCase) Update(ctx kratosx.Context, template *Template) error

Update 更新模板信息

type UserUseCase

type UserUseCase struct {
	// contains filtered or unexported fields
}

func NewUserUseCase

func NewUserUseCase(config *config.Config) *UserUseCase

func (*UserUseCase) Login

func (uc *UserUseCase) Login(ctx kratosx.Context, username, password string) (string, error)

Login 用户登录

func (*UserUseCase) RefreshToken

func (uc *UserUseCase) RefreshToken(ctx kratosx.Context) (string, error)

RefreshToken 刷新用户token

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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