legalgo-BE-go/database/subscribe_model.go

28 lines
1016 B
Go
Raw Normal View History

2025-02-26 22:28:19 +08:00
package database
2025-02-24 16:48:20 +08:00
import (
"time"
)
type Subscribe struct {
ID string `gorm:"primaryKey" json:"id"`
SubscribePlanID string `gorm:"not null" json:"subscribe_plan_id"`
2025-02-24 16:48:20 +08:00
StartDate time.Time `gorm:"default:CURRENT_TIMESTAMP"`
EndDate time.Time `gorm:"default:null"`
Status string `gorm:"default:'inactive'"`
AutoRenew bool `gorm:"default:true"`
CreatedAt time.Time `gorm:"default:CURRENT_TIMESTAMP"`
UpdatedAt time.Time `gorm:"default:CURRENT_TIMESTAMP"`
DeletedAt time.Time `gorm:"default:null" json:"deleted_at"`
2025-02-24 16:48:20 +08:00
SubscribePlan SubscribePlan `gorm:"foreignKey:SubscribePlanID;constraint:OnDelete:CASCADE" json:"subscribe_plan"`
2025-02-24 16:48:20 +08:00
}
type SubscribePlan struct {
ID string `gorm:"primaryKey" json:"id"`
2025-03-01 21:27:28 +08:00
Code string `gorm:"not null;unique" json:"code"`
2025-02-24 20:18:09 +08:00
Name string `gorm:"not null" json:"name"`
2025-02-24 16:48:20 +08:00
CreatedAt time.Time `gorm:"default:CURRENT_TIMESTAMP"`
UpdatedAt time.Time `gorm:"default:CURRENT_TIMESTAMP"`
}