metadb

package
v1.0.1-rel-02 Latest Latest
Warning

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

Go to latest
Published: Nov 12, 2024 License: AFL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultTable = "rules"

@Title 文件名称: ichubrecords.go @Description 描述: 元数据--记录

@Author 作者: leijianming@163.com 时间(2024-02-21 22:38:21) @Update 作者: leijianming@163.com 时间(2024-02-21 22:38:21)

Variables

View Source
var DefaultFields = []string{
	"*",
}
View Source
var InstMetadataCache = NewMetadataCache()

Functions

func FindGoType

func FindGoType(table, field string) string

func InjectMetadataColumn

func InjectMetadataColumn(s *MetadataColumn)

func InjectMetadataGofield

func InjectMetadataGofield(s *MetadataGofield)

func InjectMetadataPkinfo

func InjectMetadataPkinfo(s *MetadataPkinfo)

func InjectMetadataRecords

func InjectMetadataRecords(s *MetadataRecords)

func InjectMetadataTable

func InjectMetadataTable(s *MetadataTable)

func LoadMetadataColumn

func LoadMetadataColumn() baseiface.ISingleton

func LoadMetadataGofield

func LoadMetadataGofield() baseiface.ISingleton

func LoadMetadataPkinfo

func LoadMetadataPkinfo() baseiface.ISingleton

func LoadMetadataRecords

func LoadMetadataRecords() baseiface.ISingleton

func LoadMetadataTable

func LoadMetadataTable() baseiface.ISingleton

Types

type MetadataCache

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

func NewMetadataCache

func NewMetadataCache() *MetadataCache

func (*MetadataCache) CacheGet

func (this *MetadataCache) CacheGet(tableName string) (*MetadataTable, bool)

func (*MetadataCache) CacheSet

func (this *MetadataCache) CacheSet(tableName string, table *MetadataTable)

type MetadataColumn

type MetadataColumn struct {
	basedto.BaseEntity
	TableName     string `json:"table_name",gorm:"column:table_name"`
	TableSchema   string `json:"table_schema",gorm:"column:table_schema"`
	ColumnName    string `json:"column_name",gorm:"column:column_name"`
	DataType      string `json:"data_type,"gorm:"column:data_type"`
	ColumnType    string `json:"column_type",gorm:"column:column_type"`
	ColumnKey     string `json:"column_key",gorm:"column:column_key"`
	CharMaxLen    string `json:"char_max_len",gorm:"column:char_max_len"`
	ColumnComment string `json:"column_comment",gorm:"column:column_comment"`
	ColumnDefault string `json:"column_default",gorm:"column:column_default"`
}

@Title 文件名称: coulmns.go @Description 描述: 元数据--表字段

@Author 作者: leijianming@163.com 时间(2024-01-31 22:38:21) @Update 作者: leijianming@163.com 时间(2024-01-31 22:38:21)

func FindBeanMetadataColumn

func FindBeanMetadataColumn() *MetadataColumn

FindBeanMetadataColumn

func NewMetadataColumns

func NewMetadataColumns() *MetadataColumn

func (*MetadataColumn) FindColEsType

func (this *MetadataColumn) FindColEsType() (goType string)

func (*MetadataColumn) FindColGoType

func (this *MetadataColumn) FindColGoType() (goType string)

func (*MetadataColumn) FindGoType

func (this *MetadataColumn) FindGoType(fieldType string) (goType string)

func (*MetadataColumn) IfBitField

func (this *MetadataColumn) IfBitField() bool

func (*MetadataColumn) IfBool

func (this *MetadataColumn) IfBool() bool

func (*MetadataColumn) IfDate

func (this *MetadataColumn) IfDate() bool

func (*MetadataColumn) IfDateTime

func (this *MetadataColumn) IfDateTime() bool

func (*MetadataColumn) IfInt

func (this *MetadataColumn) IfInt() bool

func (*MetadataColumn) IfInt64

func (this *MetadataColumn) IfInt64() bool

func (*MetadataColumn) IfLocalDate

func (this *MetadataColumn) IfLocalDate() bool

func (*MetadataColumn) IfLocalDateInt

func (this *MetadataColumn) IfLocalDateInt() bool

func (*MetadataColumn) IfLocalTime

func (this *MetadataColumn) IfLocalTime() bool

func (*MetadataColumn) IfLocalTimeInt

func (this *MetadataColumn) IfLocalTimeInt() bool

func (*MetadataColumn) IfLocalTimeUTCInt

func (this *MetadataColumn) IfLocalTimeUTCInt() bool

func (*MetadataColumn) IfNumeric

func (this *MetadataColumn) IfNumeric() bool

func (*MetadataColumn) IfString

func (this *MetadataColumn) IfString() bool

func (*MetadataColumn) IfTime

func (this *MetadataColumn) IfTime() bool

func (*MetadataColumn) ReturnValue

func (this *MetadataColumn) ReturnValue() (ReturnValue string)

func (*MetadataColumn) String

func (this *MetadataColumn) String() string

func (*MetadataColumn) ToString

func (this *MetadataColumn) ToString() string

func (*MetadataColumn) ToText

func (this *MetadataColumn) ToText() string

type MetadataField

type MetadataField struct {
	Field  string      `json:"field"`
	GoType string      `json:"goType"`
	Value  interface{} `json:"value"`
}

@Title 文件名称: ichubField.go @Description 描述: 元数据--FIELD

@Author 作者: leijianming@163.com 时间(2024-02-21 22:38:21) @Update 作者: leijianming@163.com 时间(2024-02-21 22:38:21)

func MakeIchubField

func MakeIchubField(table, field string) *MetadataField

func NewIchubField

func NewIchubField(field string, gotype string, value interface{}) *MetadataField

func (*MetadataField) IfFloat

func (this *MetadataField) IfFloat() bool

func (*MetadataField) IfInt

func (this *MetadataField) IfInt() bool

func (*MetadataField) IfUInt

func (this *MetadataField) IfUInt() bool

type MetadataGofield

type MetadataGofield struct {
	basedto.BaseEntity
	ColumnName string `json:"column_name"`

	DataType   string `json:"data_type"`
	ColumnType string `json:"column_type"`
	GoType     string `json:"go_type"`
}

@Title 文件名称: metadataGoField.go @Description 描述: metadataGoField

@Author 作者: leijianming@163.com 时间(2024-02-21 22:38:21) @Update 作者: leijianming@163.com 时间(2024-02-21 22:38:21)

func FindBeanMetadataGofield

func FindBeanMetadataGofield() *MetadataGofield

FindBeanMetadataGofield

func NewMetadatGofield

func NewMetadatGofield() *MetadataGofield

type MetadataPkinfo

type MetadataPkinfo struct {
	basedto.BaseEntity

	PkName   string `json:"pk_name" gorm:"column:pkname"`
	ColName  string `json:"col_name" gorm:"column:colname"`
	TypeName string `json:"type_name" gorm:"column:typename"`
}
@Title    文件名称: metadata_pkinfo.go
@Description  描述: 元数据--主键

@Author  作者: leijianming@163.com  时间(2024-01-31 22:38:21)
@Update  作者: leijianming@163.com  时间(2024-01-31 22:38:21)

for postgres

func FindBeanMetadataPkinfo

func FindBeanMetadataPkinfo() *MetadataPkinfo

FindBeanMetadataPkinfo

func NewMetadataPkinfo

func NewMetadataPkinfo() *MetadataPkinfo

func (*MetadataPkinfo) String

func (pkInfo *MetadataPkinfo) String() string

func (*MetadataPkinfo) ToString

func (pkInfo *MetadataPkinfo) ToString() string

type MetadataRecords

type MetadataRecords struct {
	basedto.BaseEntity
	TimeToInt bool `json:"time_to_int"`

	TableName string           `json:"table_name"`
	Fields    []string         `json:"fields"`
	Records   []map[string]any `json:"records"`

	Rows  [][]*MetadataField `json:"-"`
	Count int                `json:"count"`
}

func FindBeanMetadataRecords

func FindBeanMetadataRecords() *MetadataRecords

FindBeanMetadataRecords

func NewIchubRecords

func NewIchubRecords() *MetadataRecords

func (*MetadataRecords) AppendRow

func (this *MetadataRecords) AppendRow(row []*MetadataField)

func (*MetadataRecords) CheckType

func (this *MetadataRecords) CheckType(field *MetadataField) string

func (*MetadataRecords) FromArrayUint8

func (this *MetadataRecords) FromArrayUint8(field *MetadataField) interface{}

func (*MetadataRecords) MakeIchubFields

func (this *MetadataRecords) MakeIchubFields() []*MetadataField

func (*MetadataRecords) NewIchubFields2Result

func (this *MetadataRecords) NewIchubFields2Result() ([]interface{}, []*MetadataField)

func (*MetadataRecords) PtrField2Value

func (this *MetadataRecords) PtrField2Value(field *MetadataField) interface{}
func (this *MetadataRecords) CheckType(field *MetadataField) string {
	var mock_irpc_check_allowed.go = field.Value
	switch mock_irpc_check_allowed.go.(type) {
	case *string:
		return "*string"
	case *bool:
		return "*bool"
	case *int:
		return "*int"
	case *int8:
		return "*int8"
	case *int16:
		return "*int16"
	case *int32:
		return "*int32"
	case *int64:
		return "*int64"
	case *byte:
		return "*byte"
	case *time.Time:
		return "*time.Time"

	case *[]uint8:
		return "*[]uint8"

	case *uint16:
		return "*uint16"
	case *uint32:
		return "*uint32"
	case *uint64:
		return "*uint64"
	case *float32:
		return "*float32"
	case *float64:
		return "*float64"

	case time.Time:
		return "time.Time"
	case string:
		return "string"
	case bool:
		return "bool"
	case int:
		return "int"
	case []uint8:
		return "[]uint8"
	case int8:
		return "int8"
	case int16:
		return "int16"
	case int32:
		return "int32"
	case int64:
		return "int64"
	case uint8:
		return "uint8"
	case uint16:
		return "uint16"
	case uint32:
		return "uint32"
	case uint64:
		return "uint64"
	case float32:
		return "float32"
	case float64:
		return "float64"
	}

	return field.GoType
}

func (*MetadataRecords) PtrRow2Result

func (this *MetadataRecords) PtrRow2Result()

func (*MetadataRecords) PtrTimeField2Value

func (this *MetadataRecords) PtrTimeField2Value(field *MetadataField) interface{}

func (*MetadataRecords) ScanRows

func (this *MetadataRecords) ScanRows(timeToInt bool, sqlRows *sql.Rows) error

func (*MetadataRecords) TableFields

func (this *MetadataRecords) TableFields(tableName, fields string) *MetadataRecords

func (*MetadataRecords) TimeField2Value

func (this *MetadataRecords) TimeField2Value(field *MetadataField) interface{}

type MetadataTable

type MetadataTable struct {
	basedto.BaseEntity

	TableSchema  string            `json:"table_schema" gorm:"column:table_schema"`
	TableName    string            `json:"table_name" gorm:"column:table_name"`
	TableComment string            `json:"table_comment" gorm:"column:table_comment"`
	PkInfo       *MetadataPkinfo   `json:"pk_info,omitempty"`
	Columns      []*MetadataColumn `json:"columns"`
	GoFields     []MetadataGofield `json:"go_fields"`

	TableExist bool   `json:"table_exist"`
	FieldsName string `json:"fields_name"`
	IndexName  string `json:"index_name"`
}

@Title 文件名称: meta_table_service.go @Description 描述: 元数据--表信息

@Author 作者: leijianming@163.com 时间(2024-01-31 22:38:21) @Update 作者: leijianming@163.com 时间(2024-01-31 22:38:21)

func FindBeanMetadataTable

func FindBeanMetadataTable() *MetadataTable

FindBeanMetadataTable

func NewMetadataTable

func NewMetadataTable() *MetadataTable

func (*MetadataTable) AlterColumnComment

func (this *MetadataTable) AlterColumnComment(db *gorm.DB, column *MetadataColumn) error

func (*MetadataTable) AlterTableComment

func (this *MetadataTable) AlterTableComment(db *gorm.DB) error

func (*MetadataTable) BuildGoFields

func (this *MetadataTable) BuildGoFields()

func (*MetadataTable) FindGoType

func (this *MetadataTable) FindGoType(field string) string

func (*MetadataTable) FindMetaColumn

func (this *MetadataTable) FindMetaColumn(colname string) *MetadataColumn

func (*MetadataTable) Parse2EsIndex

func (this *MetadataTable) Parse2EsIndex()

func (*MetadataTable) ToColText

func (this *MetadataTable) ToColText() string

func (*MetadataTable) ToFieldsString

func (this *MetadataTable) ToFieldsString() string

func (*MetadataTable) ToMapping

func (this *MetadataTable) ToMapping() map[string]any

func (*MetadataTable) ToMappingStr

func (this *MetadataTable) ToMappingStr() string

func (*MetadataTable) ToString

func (this *MetadataTable) ToString() string

func (*MetadataTable) ToText

func (this *MetadataTable) ToText() string

Jump to

Keyboard shortcuts

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