device_image.go 978 B

123456789101112131415161718192021
  1. package dao
  2. import "time"
  3. // DeviceImage maps an edge-uploaded image ID to the managed image path.
  4. // Image bytes are stored by the configured OSS provider.
  5. type DeviceImage struct {
  6. ID uint `gorm:"primaryKey" json:"id"`
  7. DeviceCode string `gorm:"size:50;not null;index:idx_device_image_lookup,priority:1" json:"device_code"`
  8. ImageID string `gorm:"size:128;not null;index:idx_device_image_lookup,priority:2;uniqueIndex:uk_device_image" json:"image_id"`
  9. EventID string `gorm:"size:128;index" json:"event_id"`
  10. Direction string `gorm:"size:10" json:"direction"`
  11. URL string `gorm:"type:text;not null" json:"url"`
  12. Key string `gorm:"size:512" json:"key"`
  13. ContentType string `gorm:"size:100" json:"content_type"`
  14. Size int64 `json:"size"`
  15. SHA256 string `gorm:"size:64" json:"sha256"`
  16. CreatedAt time.Time `json:"created_at"`
  17. }
  18. func (DeviceImage) TableName() string { return "device_image" }