正在显示
1 个修改的文件
包含
60 行增加
和
0 行删除
| 1 | +package models | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "fmt" | ||
| 5 | + "time" | ||
| 6 | + | ||
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/domain" | ||
| 8 | + "gorm.io/gorm" | ||
| 9 | + "gorm.io/plugin/soft_delete" | ||
| 10 | +) | ||
| 11 | + | ||
| 12 | +type ArticleTag struct { | ||
| 13 | + Id int64 `gorm:"primaryKey"` // 唯一标识 | ||
| 14 | + CompanyId int64 | ||
| 15 | + CreatedAt int64 | ||
| 16 | + UpdatedAt int64 | ||
| 17 | + DeletedAt int64 | ||
| 18 | + IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"` | ||
| 19 | + Version int | ||
| 20 | + Image domain.Image `gorm:"type:jsonb;serializer:json"` // 图片 | ||
| 21 | + Name string // 标签名称 | ||
| 22 | + Group string // 标签分类 | ||
| 23 | + Remark string // 备注 | ||
| 24 | +} | ||
| 25 | + | ||
| 26 | +func (m *ArticleTag) TableName() string { | ||
| 27 | + return "article_tag" | ||
| 28 | +} | ||
| 29 | + | ||
| 30 | +func (m *ArticleTag) BeforeCreate(tx *gorm.DB) (err error) { | ||
| 31 | + m.CreatedAt = time.Now().Unix() | ||
| 32 | + m.UpdatedAt = time.Now().Unix() | ||
| 33 | + return | ||
| 34 | +} | ||
| 35 | + | ||
| 36 | +func (m *ArticleTag) BeforeUpdate(tx *gorm.DB) (err error) { | ||
| 37 | + m.UpdatedAt = time.Now().Unix() | ||
| 38 | + return | ||
| 39 | +} | ||
| 40 | + | ||
| 41 | +func (m *ArticleTag) CacheKeyFunc() string { | ||
| 42 | + if m.Id == 0 { | ||
| 43 | + return "" | ||
| 44 | + } | ||
| 45 | + return fmt.Sprintf("%v:cache:%v:id:%v", domain.ProjectName, m.TableName(), m.Id) | ||
| 46 | +} | ||
| 47 | + | ||
| 48 | +func (m *ArticleTag) CacheKeyFuncByObject(obj interface{}) string { | ||
| 49 | + if v, ok := obj.(*ArticleTag); ok { | ||
| 50 | + return v.CacheKeyFunc() | ||
| 51 | + } | ||
| 52 | + return "" | ||
| 53 | +} | ||
| 54 | + | ||
| 55 | +func (m *ArticleTag) CachePrimaryKeyFunc() string { | ||
| 56 | + if len("") == 0 { | ||
| 57 | + return "" | ||
| 58 | + } | ||
| 59 | + return fmt.Sprintf("%v:cache:%v:primarykey:%v", domain.ProjectName, m.TableName(), "key") | ||
| 60 | +} |
-
请 注册 或 登录 后发表评论