Files
zkill-susser/types.go
PhatPhuckDave be23944060 Fix types
oopsie, no shishkebabs :(
2026-01-05 12:51:56 +01:00

77 lines
3.4 KiB
Go

package main
import "time"
type Killmail struct {
KillmailID int64 `json:"killmail_id" gorm:"primaryKey;column:killmail_id"`
KillmailTime time.Time `json:"killmail_time" gorm:"column:killmail_time;index"`
SolarSystemID int64 `json:"solar_system_id" gorm:"column:solar_system_id;index"`
KillmailHash string `json:"killmail_hash" gorm:"column:killmail_hash"`
HTTPLastModified time.Time `json:"http_last_modified" gorm:"column:http_last_modified"`
Attackers []Attacker `json:"attackers" gorm:"foreignKey:KillmailID;references:KillmailID;constraint:OnDelete:CASCADE"`
Victim Victim `json:"victim" gorm:"foreignKey:KillmailID;references:KillmailID;constraint:OnDelete:CASCADE"`
}
func (k *Killmail) TableName() string {
return "zkill_killmails"
}
type Attacker struct {
ID int64 `gorm:"primaryKey;autoIncrement;column:id"`
KillmailID int64 `json:"killmail_id" gorm:"column:killmail_id;index"`
AllianceID int64 `json:"alliance_id" gorm:"column:alliance_id"`
CharacterID int64 `json:"character_id" gorm:"column:character_id"`
CorporationID int64 `json:"corporation_id" gorm:"column:corporation_id"`
DamageDone int64 `json:"damage_done" gorm:"column:damage_done"`
FinalBlow bool `json:"final_blow" gorm:"column:final_blow"`
SecurityStatus float64 `json:"security_status" gorm:"column:security_status"`
ShipTypeID int64 `json:"ship_type_id" gorm:"column:ship_type_id"`
WeaponTypeID int64 `json:"weapon_type_id" gorm:"column:weapon_type_id"`
}
func (a *Attacker) TableName() string {
return "zkill_attackers"
}
type Victim struct {
ID int64 `gorm:"primaryKey;autoIncrement;column:id"`
KillmailID int64 `json:"killmail_id" gorm:"column:killmail_id;index"`
AllianceID int64 `json:"alliance_id" gorm:"column:alliance_id"`
CharacterID int64 `json:"character_id" gorm:"column:character_id"`
CorporationID int64 `json:"corporation_id" gorm:"column:corporation_id"`
DamageTaken int64 `json:"damage_taken" gorm:"column:damage_taken"`
Items []Item `json:"items" gorm:"foreignKey:VictimID;references:ID;constraint:OnDelete:CASCADE"`
Position Position `json:"position" gorm:"foreignKey:VictimID;references:ID;constraint:OnDelete:CASCADE"`
ShipTypeID int64 `json:"ship_type_id" gorm:"column:ship_type_id"`
}
func (v *Victim) TableName() string {
return "zkill_victims"
}
type Item struct {
ID int64 `gorm:"primaryKey;autoIncrement;column:id"`
VictimID int64 `json:"victim_id" gorm:"column:victim_id;index"`
Flag int64 `json:"flag" gorm:"column:flag"`
ItemTypeID int64 `json:"item_type_id" gorm:"column:item_type_id"`
QuantityDestroyed *int64 `json:"quantity_destroyed,omitempty" gorm:"column:quantity_destroyed"`
Singleton int64 `json:"singleton" gorm:"column:singleton"`
QuantityDropped *int64 `json:"quantity_dropped,omitempty" gorm:"column:quantity_dropped"`
}
func (i *Item) TableName() string {
return "zkill_items"
}
type Position struct {
ID int64 `gorm:"primaryKey;autoIncrement;column:id"`
VictimID int64 `json:"victim_id" gorm:"column:victim_id;index"`
X float64 `json:"x" gorm:"column:x"`
Y float64 `json:"y" gorm:"column:y"`
Z float64 `json:"z" gorm:"column:z"`
}
func (p *Position) TableName() string {
return "zkill_positions"
}