add new model SpecialServer, add two new fields to Player model: JoinedAt and DailyGrowth, add one new field to Tribe model: CreatedAt
This commit is contained in:
parent
5ae0d5ec33
commit
33cddd7219
|
@ -49,10 +49,11 @@ func (lt LanguageTag) MarshalGQL(w io.Writer) {
|
|||
type LangVersion struct {
|
||||
tableName struct{} `pg:"alias:lang_version"`
|
||||
|
||||
Tag LanguageTag `pg:",pk" json:"tag" gqlgen:"tag"`
|
||||
Name string `json:"name" gqlgen:"name" pg:",unique"`
|
||||
Host string `json:"host" gqlgen:"host"`
|
||||
Timezone string `json:"timezone" gqlgen:"timezone"`
|
||||
Tag LanguageTag `pg:",pk" json:"tag" gqlgen:"tag"`
|
||||
Name string `json:"name" gqlgen:"name" pg:",unique"`
|
||||
Host string `json:"host" gqlgen:"host"`
|
||||
Timezone string `json:"timezone" gqlgen:"timezone"`
|
||||
SpecialServers SpecialServers `json:"specialServers" gqlgen:"specialServers"`
|
||||
}
|
||||
|
||||
type LangVersionFilter struct {
|
||||
|
|
|
@ -1,16 +1,20 @@
|
|||
package models
|
||||
|
||||
import "time"
|
||||
|
||||
type Player struct {
|
||||
tableName struct{} `pg:"?SERVER.players,alias:player"`
|
||||
|
||||
ID int `json:"id" pg:",pk" gqlgen:"id"`
|
||||
Name string `json:"name" gqlgen:"name"`
|
||||
TotalVillages int `json:"totalVillages" pg:",use_zero" gqlgen:"totalVillages"`
|
||||
Points int `json:"points" pg:",use_zero" gqlgen:"points"`
|
||||
Rank int `json:"rank" pg:",use_zero" gqlgen:"rank"`
|
||||
Exist *bool `json:"exist" pg:",use_zero" gqlgen:"exist"`
|
||||
TribeID int `json:"-" pg:",use_zero" gqlgen:"tribeID"`
|
||||
Tribe *Tribe `json:"tribe,omitempty" gqlgen:"-"`
|
||||
ID int `json:"id" pg:",pk" gqlgen:"id"`
|
||||
Name string `json:"name" gqlgen:"name"`
|
||||
Exist *bool `json:"exist" pg:",use_zero" gqlgen:"exist"`
|
||||
TotalVillages int `json:"totalVillages" pg:",use_zero" gqlgen:"totalVillages"`
|
||||
Points int `json:"points" pg:",use_zero" gqlgen:"points"`
|
||||
Rank int `json:"rank" pg:",use_zero" gqlgen:"rank"`
|
||||
TribeID int `json:"-" pg:",use_zero" gqlgen:"tribeID"`
|
||||
Tribe *Tribe `json:"tribe,omitempty" gqlgen:"-"`
|
||||
DailyGrowth int `json:"dailyGrowth" pg:",use_zero" gqlgen:"dailyGrowth"`
|
||||
JoinedAt time.Time `json:"joinedAt" pg:"default:now(),use_zero" gqlgen:"joinedAt"`
|
||||
|
||||
OpponentsDefeated
|
||||
}
|
||||
|
@ -46,6 +50,18 @@ type PlayerFilter struct {
|
|||
RankLT int `json:"rankLT" gqlgen:"rankLT" xml:"rankLT"`
|
||||
RankLTE int `json:"rankLTE" gqlgen:"rankLTE" xml:"rankLTE"`
|
||||
|
||||
DailyGrowth int `json:"dailyGrowth" gqlgen:"dailyGrowth" xml:"dailyGrowth"`
|
||||
DailyGrowthGT int `json:"dailyGrowthGT" gqlgen:"dailyGrowthGT" xml:"dailyGrowthGT"`
|
||||
DailyGrowthGTE int `json:"dailyGrowthGTE" gqlgen:"dailyGrowthGTE" xml:"dailyGrowthGTE"`
|
||||
DailyGrowthLT int `json:"dailyGrowthLT" gqlgen:"dailyGrowthLT" xml:"dailyGrowthLT"`
|
||||
DailyGrowthLTE int `json:"dailyGrowthLTE" gqlgen:"dailyGrowthLTE" xml:"dailyGrowthLTE"`
|
||||
|
||||
JoinedAt time.Time `json:"joinedAt" gqlgen:"joinedAt" xml:"joinedAt"`
|
||||
JoinedAtGT time.Time `json:"joinedAtGT" gqlgen:"joinedAtGT" xml:"joinedAtGT"`
|
||||
JoinedAtGTE time.Time `json:"joinedAtGTE" gqlgen:"joinedAtGTE" xml:"joinedAtGTE"`
|
||||
JoinedAtLT time.Time `json:"joinedAtLT" gqlgen:"joinedAtLT" xml:"joinedAtLT"`
|
||||
JoinedAtLTE time.Time `json:"joinedAtLTE" gqlgen:"joinedAtLTE" xml:"joinedAtLTE"`
|
||||
|
||||
TribeID []int `json:"tribeID" gqlgen:"tribeID" xml:"tribeID"`
|
||||
TribeFilter *TribeFilter `urlstruct:",nowhere" json:"tribeFilter" gqlgen:"tribeFilter" xml:"tribeFilter"`
|
||||
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
package models
|
||||
|
||||
type SpecialServer struct {
|
||||
tableName struct{} `pg:"special_servers,alias:special_server"`
|
||||
|
||||
Tag LanguageTag `json:"tag" gqlgen:"tag" xml:"tag"`
|
||||
LangVersion *LangVersion `json:"omitempty,langVersion" gqlgen:"-" xml:"langVersion"`
|
||||
Key string `json:"key" gqlgen:"key" xml:"key"`
|
||||
}
|
||||
|
||||
type SpecialServers []*SpecialServer
|
||||
|
||||
func (servers SpecialServers) Contains(key string) bool {
|
||||
for _, s := range servers {
|
||||
if s.Key == key {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
|
@ -1,18 +1,21 @@
|
|||
package models
|
||||
|
||||
import "time"
|
||||
|
||||
type Tribe struct {
|
||||
tableName struct{} `pg:"?SERVER.tribes,alias:tribe"`
|
||||
|
||||
ID int `json:"id" gqlgen:"id"`
|
||||
Name string `json:"name" gqlgen:"name"`
|
||||
Tag string `json:"tag" gqlgen:"tag"`
|
||||
TotalMembers int `json:"totalMembers" gqlgen:"totalMembers" pg:",use_zero"`
|
||||
TotalVillages int `json:"totalVillages" gqlgen:"totalVillages" pg:",use_zero"`
|
||||
Points int `json:"points" gqlgen:"points" pg:",use_zero"`
|
||||
AllPoints int `json:"allPoints" gqlgen:"allPoints" pg:",use_zero"`
|
||||
Rank int `json:"rank" gqlgen:"rank" pg:",use_zero"`
|
||||
Dominance float64 `json:"dominance" gqlgen:"dominance" pg:",use_zero"`
|
||||
Exist *bool `json:"exist" gqlgen:"exist" pg:",use_zero"`
|
||||
ID int `json:"id" gqlgen:"id"`
|
||||
Name string `json:"name" gqlgen:"name"`
|
||||
Tag string `json:"tag" gqlgen:"tag"`
|
||||
TotalMembers int `json:"totalMembers" gqlgen:"totalMembers" pg:",use_zero"`
|
||||
TotalVillages int `json:"totalVillages" gqlgen:"totalVillages" pg:",use_zero"`
|
||||
Points int `json:"points" gqlgen:"points" pg:",use_zero"`
|
||||
AllPoints int `json:"allPoints" gqlgen:"allPoints" pg:",use_zero"`
|
||||
Rank int `json:"rank" gqlgen:"rank" pg:",use_zero"`
|
||||
Dominance float64 `json:"dominance" gqlgen:"dominance" pg:",use_zero"`
|
||||
Exist *bool `json:"exist" gqlgen:"exist" pg:",use_zero"`
|
||||
CreatedAt time.Time `json:"createdAt" pg:"default:now(),use_zero" gqlgen:"createdAt"`
|
||||
|
||||
OpponentsDefeated
|
||||
}
|
||||
|
@ -65,6 +68,18 @@ type TribeFilter struct {
|
|||
RankLT int `json:"rankLT" gqlgen:"rankLT"`
|
||||
RankLTE int `json:"rankLTE" gqlgen:"rankLTE"`
|
||||
|
||||
Dominance int `json:"dominance" gqlgen:"dominance"`
|
||||
DominanceGT int `json:"dominanceGT" gqlgen:"dominanceGT"`
|
||||
DominanceGTE int `json:"dominanceGTE" gqlgen:"dominanceGTE"`
|
||||
DominanceLT int `json:"dominanceLT" gqlgen:"dominanceLT"`
|
||||
DominanceLTE int `json:"dominanceLTE" gqlgen:"dominanceLTE"`
|
||||
|
||||
CreatedAt time.Time `json:"createdAt" gqlgen:"createdAt" xml:"createdAt"`
|
||||
CreatedAtGT time.Time `json:"createdAtGT" gqlgen:"createdAtGT" xml:"createdAtGT"`
|
||||
CreatedAtGTE time.Time `json:"createdAtGTE" gqlgen:"createdAtGTE" xml:"createdAtGTE"`
|
||||
CreatedAtLT time.Time `json:"createdAtLT" gqlgen:"createdAtLT" xml:"createdAtLT"`
|
||||
CreatedAtLTE time.Time `json:"createdAtLTE" gqlgen:"createdAtLTE" xml:"createdAtLTE"`
|
||||
|
||||
Offset int `urlstruct:",nowhere" json:"offset" gqlgen:"offset"`
|
||||
Limit int `urlstruct:",nowhere" json:"limit" gqlgen:"limit"`
|
||||
Sort string `urlstruct:",nowhere" json:"sort" gqlgen:"sort"`
|
||||
|
|
Reference in New Issue