zhangzengfei
2024-04-29 fe763eba27addfe615d2c107b8984484baef9a23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package models
 
type Cache struct {
    Id         uint   `gorm:"column:id;primary_key;auto_increment;unique;not null;"`
    Type       string `gorm:"column:type;"` // 消息类型 1400, basic
    Data       string `gorm:"column:data;type:text"`
    CreateTime int64  `gorm:"column:create_time;"`
    Retry      int    `gorm:"column:retry;"`
}
 
func (c *Cache) TableName() string {
    return "caches"
}
 
func (c *Cache) FindAll() ([]Cache, error) {
    var caches []Cache
    if err := db.Table(c.TableName()).Find(&caches).Error; err != nil {
        return nil, err
    }
 
    return caches, nil
}
 
func (c *Cache) Save() error {
    return db.Table(c.TableName()).Save(c).Error
}
 
func (c *Cache) UpdateRetryCount() error {
    return db.Table(c.TableName()).Where("id = ?", c.Id).Update("retry", c.Retry+1).Error
}
 
func (c *Cache) Delete() error {
    return db.Table(c.TableName()).Where("id = ?", c.Id).Delete(c).Error
}