Files
cas_tt_cloud_backend/app/common/model/user_cooperate_enterprise.go

78 lines
2.6 KiB
Go
Raw Normal View History

2021-11-30 16:09:04 +08:00
package model
import (
"SciencesServer/utils"
"fmt"
"strings"
)
// UserCooperateEnterprise 用户企业数据模型管理
type UserCooperateEnterprise struct {
Model
Local
UID uint64 `gorm:"column:uid;type:int;default:0;comment:用户uuid" json:"-"`
Mode UserCooperateEnterpriseMode `gorm:"column:mode;type:int;default:0;comment:合作模式1已合作2想合作" json:"mode"`
2021-12-03 14:18:06 +08:00
Title string `gorm:"column:title;type:varchar(30);default:'';comment:企业名称" json:"title"`
Name string `gorm:"column:name;type:varchar(50);default:'';comment:企业联系人" json:"name"`
Mobile string `gorm:"column:mobile;type:varchar(15);default:'';comment:企业联系方式" json:"mobile"`
Paper string `gorm:"column:paper;type:varchar(255);default:'';comment:论文信息" json:"-"`
Patent string `gorm:"column:patent;type:varchar(255);default:'';comment:专利信息" json:"-"`
Content string `gorm:"column:content;type:varchar(255);default:'';comment:合作内容" json:"content"`
2021-11-30 16:09:04 +08:00
ModelDeleted
ModelAt
}
// UserCooperateEnterpriseMode 用户企业合作模式
type UserCooperateEnterpriseMode int
const (
// UserCooperateEnterpriseModeForCooperateAlready 已合作
UserCooperateEnterpriseModeForCooperateAlready UserCooperateEnterpriseMode = iota + 1
// UserCooperateEnterpriseModeForCooperateToWant 想合作
UserCooperateEnterpriseModeForCooperateToWant
)
func (m *UserCooperateEnterprise) TableName() string {
return "user_cooperate_enterprise"
}
func (m *UserCooperateEnterprise) GetPaperAttribute() []string {
out := make([]string, 0)
for _, v := range strings.Split(m.Paper, ",") {
out = append(out, (&Model{ID: utils.StringToUnit64(v)}).GetEncodeID())
}
return out
}
func (m *UserCooperateEnterprise) SetPaperAttribute(value []uint64) {
out := make([]string, 0)
for _, v := range value {
out = append(out, fmt.Sprintf("%d", v))
}
m.Paper = strings.Join(out, ",")
}
func (m *UserCooperateEnterprise) GetPatentAttribute() []string {
out := make([]string, 0)
for _, v := range strings.Split(m.Patent, ",") {
out = append(out, (&Model{ID: utils.StringToUnit64(v)}).GetEncodeID())
}
return out
}
func (m *UserCooperateEnterprise) SetPatentAttribute(value []uint64) {
out := make([]string, 0)
for _, v := range value {
out = append(out, fmt.Sprintf("%d", v))
}
m.Patent = strings.Join(out, ",")
}
func NewUserCooperateEnterprise() *UserCooperateEnterprise {
return &UserCooperateEnterprise{}
}