Files
cas_tt_cloud_backend/app/common/model/manage_company.go
2022-01-20 15:49:44 +08:00

98 lines
3.2 KiB
Go

package model
import "SciencesServer/utils"
// ManageCompany 公司企业入驻信息管理
type ManageCompany struct {
Model
ModelTenant
InviterID uint64 `gorm:"column:inviter_id;type:int;default:0;comment:邀请人ID" json:"inviter_id"`
Kind ManageCompanyKind `gorm:"column:kind;type:tinyint(1);default:0;comment:企业类型" json:"kind"`
Name string `gorm:"column:name;type:varchar(30);default:'';comment:企业名称" json:"name"`
Code string `gorm:"column:code;type:varchar(30);default:'';comment:信用代码" json:"code"`
Image
Area
Product string `gorm:"column:product;type:varchar(255);default:'';comment:产品信息" json:"product"`
Url string `gorm:"column:url;type:varchar(255);default:'';comment:企业网站" json:"url"`
License string `gorm:"column:license;type:varchar(255);default:'';comment:营业执照" json:"license"`
Industry string `gorm:"column:industry;type:varchar(255);default:'';comment:行业领域" json:"-"`
Keyword string `gorm:"column:keyword;type:varchar(255);default:'';comment:关键词" json:"-"`
Direction string `gorm:"column:direction;type:varchar(255);default:'';comment:生产方向" json:"-"`
Introduce string `gorm:"column:introduce;type:text;comment:介绍描述" json:"introduce"`
Examine
ModelDeleted
ModelAt
}
// ManageCompanyBasic 公司信息
type ManageCompanyBasic struct {
CompanyID uint64 `json:"company_id"`
CompanyKind ManageCompanyKind `json:"company_kind"`
CompanyName string `json:"company_name"`
CompanyImage string `json:"company_image"`
CompanyUrl string `json:"company_url"`
CompanyKeyword string `json:"company_keyword"`
}
// ManageCompanyKind 公司类型
type ManageCompanyKind int
const (
// ManageCompanyKindForListedEnterprise 上市企业
ManageCompanyKindForListedEnterprise ManageCompanyKind = iota + 101
// ManageCompanyKindForHighQuality 优质企业
ManageCompanyKindForHighQuality
// ManageCompanyKindForOrdinary 普通企业
ManageCompanyKindForOrdinary
)
func (m *ManageCompany) TableName() string {
return "manage_company"
}
func (m *ManageCompany) KindTitle() string {
switch m.Kind {
case ManageCompanyKindForListedEnterprise:
return "上市企业"
case ManageCompanyKindForHighQuality:
return "优质企业"
case ManageCompanyKindForOrdinary:
return "普通企业"
}
return ""
}
func (m *ManageCompany) GetIndustryAttribute() []string {
out := make([]string, 0)
_ = utils.FromJSON(m.Industry, &out)
return out
}
func (m *ManageCompany) SetIndustryAttribute(value []string) {
m.Industry = utils.AnyToJSON(value)
}
func (m *ManageCompany) GetKeywordAttribute() []string {
out := make([]string, 0)
_ = utils.FromJSON(m.Keyword, &out)
return out
}
func (m *ManageCompany) SetKeywordAttribute(value []string) {
m.Keyword = utils.AnyToJSON(value)
}
func (m *ManageCompany) GetDirectionAttribute() []string {
out := make([]string, 0)
_ = utils.FromJSON(m.Direction, &out)
return out
}
func (m *ManageCompany) SetDirectionAttribute(value []string) {
m.Direction = utils.AnyToJSON(value)
}
func NewManageCompany() *ManageCompany {
return &ManageCompany{}
}