package models import ( "time" ) type LinkClick struct { ID uint `gorm:"primaryKey" json:"id"` CreatedAt time.Time `json:"created_at"` ShortLinkID *uint `gorm:"index" json:"short_link_id"` TargetURL string `gorm:"size:2048" json:"target_url"` IPHash string `gorm:"size:64;index" json:"ip_hash"` UserAgent string `gorm:"size:512" json:"user_agent"` Referrer string `gorm:"size:512" json:"referrer"` UTMSource string `gorm:"size:128" json:"utm_source"` UTMMedium string `gorm:"size:128" json:"utm_medium"` UTMCampaign string `gorm:"size:128" json:"utm_campaign"` UTMContent string `gorm:"size:128" json:"utm_content"` UTMTerm string `gorm:"size:128" json:"utm_term"` } func (LinkClick) TableName() string { return "link_clicks" }