package models

type Dataconfig struct {
	ID             int64  `gorm:"column:id" json:"id" form:"id"`
	ParentId       int64  `gorm:"column:parent_id" json:"parent_id" form:"parent_id"`
	Module         string `gorm:"column:module" json:"module" form:"module"`
	OrgId          int64  `gorm:"column:org_id" json:"org_id" form:"org_id"`
	Name           string `gorm:"column:name" json:"name" form:"name"`
	FieldName      string `gorm:"column:field_name" json:"field_name" form:"field_name"`
	Value          int    `gorm:"column:value" json:"value" form:"value"`
	CreatedTime    string `gorm:"column:create_time" json:"create_time" form:"create_time"`
	UpdatedTime    string `gorm:"column:update_time" json:"update_time" form:"update_time"`
	CreateUserId   int64  `gorm:"column:create_user_id" json:"create_user_id" form:"create_user_id"`
	Status         int64  `gorm:"column:status" json:"status" form:"status"`
	Remark         string `gorm:"column:remark" json:"remark" form:"remark"`
	DeleteIdSystem int64  `gorm:"column:delete_id_system" json:"delete_id_system" form:"delete_id_system"`
	Title          string `gorm:"column:title" json:"title" form:"title"`
	Content        string `gorm:"column:content" json:"content" form:"content"`
	Order          int64  `gorm:"column:orders" json:"orders" form:"orders"`
}

func (Dataconfig) TableName() string {
	return "xt_data_config"
}

type ConfigViewModel struct {
	ID           int64         `gorm:"column:id" json:"id" form:"id"`
	ParentId     int64         `gorm:"column:parent_id" json:"parent_id" form:"parent_id"`
	Module       string        `gorm:"column:module" json:"module" form:"module"`
	OrgId        int64         `gorm:"column:org_id" json:"org_id" form:"org_id"`
	Name         string        `gorm:"column:name" json:"name" form:"name"`
	FieldName    string        `gorm:"column:field_name" json:"field_name" form:"field_name"`
	Value        int           `gorm:"column:value" json:"value" form:"value"`
	CreatedTime  string        `gorm:"column:create_time" json:"create_time" form:"create_time"`
	UpdatedTime  string        `gorm:"column:update_time" json:"update_time" form:"update_time"`
	CreateUserId int64         `gorm:"column:create_user_id" json:"create_user_id" form:"create_user_id"`
	Status       int64         `gorm:"column:status" json:"status" form:"status"`
	Remark       string        `gorm:"column:remark" json:"remark" form:"remark"`
	Title        string        `gorm:"column:title" json:"title" form:"title"`
	Content      string        `gorm:"column:content" json:"content" form:"content"`
	Order        int64         `gorm:"column:orders" json:"orders" form:"orders"`
	Childs       []*Dataconfig `json:"childs" `
}

func (ConfigViewModel) TableName() string {
	return "xt_data_config"
}

type FiledConfig struct {
	ID          int64  `gorm:"column:id" json:"id"`
	OrgId       int64  `gorm:"column:org_id" json:"org_id"`
	Module      int64  `gorm:"column:module" json:"module"`
	FiledName   string `gorm:"column:filed_name" json:"filed_name"`
	FiledNameCn string `gorm:"column:filed_name_cn" json:"filed_name_cn"`
	IsShow      int64  `gorm:"column:is_show" json:"is_show"`
	CreateTime  int64  `gorm:"column:create_time" json:"create_time"`
	UpdateTime  int64  `gorm:"column:update_time" json:"update_time"`
	SysModule   int64  `gorm:"column:sys_module" json:"sys_module" form:"sys_module"`
}

func (FiledConfig) TableName() string {
	return "xt_filed_config"
}
