extend Server, PlayerFilter, Tribe, VillageFilter models

This commit is contained in:
Dawid Wysokiński 2020-06-21 09:58:47 +02:00
parent 2529c05026
commit 011aa011b9
4 changed files with 46 additions and 40 deletions

View File

@ -18,39 +18,40 @@ type Player struct {
type PlayerFilter struct {
tableName struct{} `urlstruct:"player"`
ID []int `json:"id" gqlgen:"id"`
IdNEQ []int `json:"idNEQ" gqlgen:"idNEQ"`
ID []int `json:"id" gqlgen:"id" xml:"id"`
IdNEQ []int `json:"idNEQ" gqlgen:"idNEQ" xml:"idNEQ"`
Exist *bool `urlstruct:",nowhere" json:"exist" gqlgen:"exist"`
Exist *bool `urlstruct:",nowhere" json:"exist" gqlgen:"exist" xml:"exist"`
Name []string `json:"name" gqlgen:"name"`
NameNEQ []string `json:"nameNEQ" gqlgen:"nameNEQ"`
NameMATCH string `json:"nameMATCH" gqlgen:"nameMATCH"`
NameIEQ string `json:"nameIEQ" gqlgen:"nameIEQ"`
Name []string `json:"name" gqlgen:"name" xml:"name"`
NameNEQ []string `json:"nameNEQ" gqlgen:"nameNEQ" xml:"nameNEQ"`
NameMATCH string `json:"nameMATCH" gqlgen:"nameMATCH" xml:"nameMATCH"`
NameIEQ string `json:"nameIEQ" gqlgen:"nameIEQ" xml:"nameIEQ"`
TotalVillages int `json:"totalVillages" gqlgen:"totalVillages"`
TotalVillagesGT int `json:"totalVillagesGT" gqlgen:"totalVillagesGT"`
TotalVillagesGTE int `json:"totalVillagesGTE" gqlgen:"totalVillagesGTE"`
TotalVillagesLT int `json:"totalVillagesLT" gqlgen:"totalVillagesLT"`
TotalVillagesLTE int `json:"totalVillagesLTE" gqlgen:"totalVillagesLTE"`
TotalVillages int `json:"totalVillages" gqlgen:"totalVillages" xml:"totalVillages"`
TotalVillagesGT int `json:"totalVillagesGT" gqlgen:"totalVillagesGT" xml:"totalVillagesGT"`
TotalVillagesGTE int `json:"totalVillagesGTE" gqlgen:"totalVillagesGTE" xml:"totalVillagesGTE"`
TotalVillagesLT int `json:"totalVillagesLT" gqlgen:"totalVillagesLT" xml:"totalVillagesLT"`
TotalVillagesLTE int `json:"totalVillagesLTE" gqlgen:"totalVillagesLTE" xml:"totalVillagesLTE"`
Points int `json:"points" gqlgen:"points"`
PointsGT int `json:"pointsGT" gqlgen:"pointsGT"`
PointsGTE int `json:"pointsGTE" gqlgen:"pointsGTE"`
PointsLT int `json:"pointsLT" gqlgen:"pointsLT"`
PointsLTE int `json:"pointsLTE" gqlgen:"pointsLTE"`
Points int `json:"points" gqlgen:"points" xml:"points"`
PointsGT int `json:"pointsGT" gqlgen:"pointsGT" xml:"pointsGT"`
PointsGTE int `json:"pointsGTE" gqlgen:"pointsGTE" xml:"pointsGTE"`
PointsLT int `json:"pointsLT" gqlgen:"pointsLT" xml:"pointsLT"`
PointsLTE int `json:"pointsLTE" gqlgen:"pointsLTE" xml:"pointsLTE"`
Rank int `json:"rank" gqlgen:"rank"`
RankGT int `json:"rankGT" gqlgen:"rankGT"`
RankGTE int `json:"rankGTE" gqlgen:"rankGTE"`
RankLT int `json:"rankLT" gqlgen:"rankLT"`
RankLTE int `json:"rankLTE" gqlgen:"rankLTE"`
Rank int `json:"rank" gqlgen:"rank" xml:"rank"`
RankGT int `json:"rankGT" gqlgen:"rankGT" xml:"rankGT"`
RankGTE int `json:"rankGTE" gqlgen:"rankGTE" xml:"rankGTE"`
RankLT int `json:"rankLT" gqlgen:"rankLT" xml:"rankLT"`
RankLTE int `json:"rankLTE" gqlgen:"rankLTE" xml:"rankLTE"`
TribeID []int `json:"tribeID" gqlgen:"tribeID"`
TribeID []int `json:"tribeID" gqlgen:"tribeID" xml:"tribeID"`
TribeFilter *TribeFilter `urlstruct:",nowhere" json:"tribeFilter" gqlgen:"tribeFilter" xml:"tribeFilter"`
Offset int `urlstruct:",nowhere" json:"offset" gqlgen:"offset"`
Limit int `urlstruct:",nowhere" json:"limit" gqlgen:"limit"`
Sort string `urlstruct:",nowhere" json:"sort" gqlgen:"sort"`
Offset int `urlstruct:",nowhere" json:"offset" gqlgen:"offset" xml:"offset"`
Limit int `urlstruct:",nowhere" json:"limit" gqlgen:"limit" xml:"limit"`
Sort string `urlstruct:",nowhere" json:"sort" gqlgen:"sort" xml:"sort"`
OpponentsDefeatedFilter
OpponentsDefeatedFilter `json:"opponentsDefeatedFilter" gqlgen:"opponentsDefeatedFilter" xml:"opponentsDefeatedFilter"`
}

View File

@ -48,9 +48,12 @@ func (ss ServerStatus) MarshalGQL(w io.Writer) {
type Server struct {
tableName struct{} `pg:"alias:server"`
ID int `json:"id" gqlgen:"id" xml:"id"`
Key string `json:"key" gqlgen:"key" pg:",unique" xml:"key"`
Status ServerStatus `json:"status" gqlgen:"status" xml:"status"`
ID int `json:"id" gqlgen:"id" xml:"id"`
Key string `json:"key" gqlgen:"key" pg:",unique" xml:"key"`
Status ServerStatus `json:"status" gqlgen:"status" xml:"status"`
CountPlayers int `pg:",use_zero" json:"countPlayers" gqlgen:"countPlayers" xml:"countPlayers"`
CountVillages int `pg:",use_zero" json:"countVillages" gqlgen:"countVillages" xml:"countVillages"`
CountTribes int `pg:",use_zero" json:"countTribes" gqlgen:"countTribes" xml:"countTribes"`
Config ServerConfig `json:"config" gqlgen:"config" xml:"config"`
BuildingConfig BuildingConfig `json:"buildingConfig" gqlgen:"buildingConfig" xml:"buildingConfig"`

View File

@ -3,15 +3,16 @@ package models
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"`
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"`
OpponentsDefeated
}

View File

@ -58,7 +58,8 @@ type VillageFilter struct {
BonusLT int `json:"bonusLT" gqlgen:"bonusLT"`
BonusLTE int `json:"bonusLTE" gqlgen:"bonusLTE"`
PlayerID []int `json:"playerID" gqlgen:"playerID"`
PlayerID []int `json:"playerID" gqlgen:"playerID"`
PlayerFilter *PlayerFilter `urlstruct:",nowhere" json:"playerFilter" gqlgen:"playerFilter"`
Offset int `urlstruct:",nowhere" json:"offset" gqlgen:"offset"`
Limit int `urlstruct:",nowhere" json:"limit" gqlgen:"limit"`