package model import ( "fmt" "gorm.io/gorm" "time" ) // MyModel definitions from gorm.Model // // swagger:model type gormModel struct { // The ID of the item // example: 1 ID uint `json:"id"` // The date when the item was created // example: 2023-08-10 15:48:25 CreatedAt time.Time `json:"created_at"` // The date when the item was last updated // example: 2023-08-10 15:48:25 UpdatedAt time.Time `json:"updated_at"` // The date when the item was deleted // example: 2023-08-10 15:48:25 DeletedAt *time.Time `json:"-"` } type CrmModel struct { gorm.Model `json:"-"` CreatorId int `json:"-" gorm:"column:creator_id;type:int;comment:创建人id"` Creator User `json:"-" gorm:"foreignKey:CreatorId"` CreateTime string `json:"createTime" gorm:"-"` UpdateTime string `json:"updateTime" gorm:"-"` CreatorName string `json:"creatorName" gorm:"-"` Number string `json:"number"` } func (slf *CrmModel) AfterFind(tx *gorm.DB) (err error) { slf.CreatorName = slf.Creator.Username slf.CreateTime = slf.CreatedAt.Format("2006-01-02 15:04") slf.UpdateTime = slf.UpdatedAt.Format("2006-01-02 15:04") return nil } func (slf *CrmModel) SetNumber(prefix string) { if slf.Number == "" { slf.Number = fmt.Sprintf("%v%v", prefix, slf.ID) } }