Files
cas_tt_cloud_backend/app/common/model/technology_instance.go
2021-12-03 15:22:23 +08:00

91 lines
3.7 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package model
import (
"SciencesServer/app/basic/config"
"SciencesServer/utils"
)
// TechnologyInstance 技术文档数据模型
type TechnologyInstance struct {
Model
Local
UID uint64 `gorm:"column:uid;type:int;default:0;comment:用户uuid" json:"-"`
PatentID uint64 `gorm:"column:patent_id;type:int;default:0;comment:代表专利" json:"patent_id"`
Title string `gorm:"column:title;type:varchar(30);default:'';comment:名称" json:"title"`
Company string `gorm:"column:company;type:varchar(30);default:'';comment:单位" json:"company"`
Maturity config.TechnologyMaturity `gorm:"column:maturity;type:tinyint(1);default:0;comment:成熟度" json:"maturity"`
Prototype int `gorm:"column:prototype;type:tinyint(1);default:0;comment:样机01" json:"prototype"`
Product string `gorm:"column:product;type:varchar(255);default:'';comment:应用产品" json:"product"`
Source TechnologyInstanceSource `gorm:"column:source;type:tinyint(1);default:0;comment:来源" json:"source"`
Keyword string `gorm:"column:keyword;type:varchar(255);default:'';comment:关键词" json:"keyword"`
Territory uint64 `gorm:"column:territory;type:int(11);default:0;comment:技术领域" json:"territory"`
Transaction int `gorm:"column:transaction;type:tinyint(3);default:0;comment:交易方式" json:"transaction"`
Images
ProveImages string `gorm:"column:prove_images;type:text;comment:证明材料图片" json:"prove_images"`
Introduce string `gorm:"column:introduce;type:text;comment:介绍描述" json:"introduce"`
Purpose string `gorm:"column:purpose;type:text;comment:意图-承担科研项目" json:"purpose"`
Remark string `gorm:"column:remark;type:varchar(255);default:'';comment:备注信息" json:"remark"`
Shelf
Status TechnologyInstanceStatus `gorm:"column:status;type:tinyint(1);default:0;comment:状态" json:"status"`
ModelDeleted
ModelAt
}
// TechnologyInstanceSource 技术来源
type TechnologyInstanceSource int
const (
// TechnologyInstanceSourceForCompany 企业
TechnologyInstanceSourceForCompany TechnologyInstanceSource = iota
// TechnologyInstanceSourceForSchool 院校
TechnologyInstanceSourceForSchool
// TechnologyInstanceSourceForResearch 科研机构
TechnologyInstanceSourceForResearch
// TechnologyInstanceSourceForPerson 个人
TechnologyInstanceSourceForPerson
// TechnologyInstanceSourceForOther 其他
TechnologyInstanceSourceForOther
)
// TechnologyInstanceStatus 技术文档状态
type TechnologyInstanceStatus int
const (
// TechnologyInstanceStatusForDraft 草稿箱
TechnologyInstanceStatusForDraft TechnologyInstanceStatus = iota
// TechnologyInstanceStatusForExamining 审核中
TechnologyInstanceStatusForExamining
// TechnologyInstanceStatusForAgree 审核通过
TechnologyInstanceStatusForAgree
// TechnologyInstanceStatusForRefuse 审核拒绝
TechnologyInstanceStatusForRefuse
)
func (m *TechnologyInstance) TableName() string {
return m.NewTableName("technology_instance")
}
func (m *TechnologyInstance) GetKeywordAttribute() []string {
keywords := make([]string, 0)
_ = utils.FromJSON(m.Keyword, &keywords)
return keywords
}
func (m *TechnologyInstance) SetKeywordAttribute(keywords []string) {
m.Keyword = utils.AnyToJSON(keywords)
}
func (m *TechnologyInstance) GetProductAttribute() []string {
products := make([]string, 0)
_ = utils.FromJSON(m.Product, &products)
return products
}
func (m *TechnologyInstance) SetProductAttribute(products []string) {
m.Product = utils.AnyToJSON(products)
}
func NewTechnologyInstance() *TechnologyInstance {
return &TechnologyInstance{}
}