add sorting option
This commit is contained in:
parent
c78c766825
commit
35bc36ad88
5
serra.go
5
serra.go
@ -23,6 +23,7 @@ var opts struct {
|
|||||||
CardId []string `docopt:"<cardid>"`
|
CardId []string `docopt:"<cardid>"`
|
||||||
SetCode string `docopt:"<setcode>,--set"`
|
SetCode string `docopt:"<setcode>,--set"`
|
||||||
Count int64 `docopt:"--count"`
|
Count int64 `docopt:"--count"`
|
||||||
|
Sort string `docopt:"--sort"`
|
||||||
Rarity string `docopt:"--rarity"`
|
Rarity string `docopt:"--rarity"`
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -34,7 +35,7 @@ func main() {
|
|||||||
Usage:
|
Usage:
|
||||||
serra add <cardid>... [--count=<number>]
|
serra add <cardid>... [--count=<number>]
|
||||||
serra remove <cardid>...
|
serra remove <cardid>...
|
||||||
serra cards [--rarity=<rarity>] [--set=<setcode>]
|
serra cards [--rarity=<rarity>] [--set=<setcode>] [--sort=<sort>]
|
||||||
serra card <cardid>...
|
serra card <cardid>...
|
||||||
serra missing <setcode>
|
serra missing <setcode>
|
||||||
serra set <setcode>
|
serra set <setcode>
|
||||||
@ -60,7 +61,7 @@ Options:
|
|||||||
} else if opts.Remove {
|
} else if opts.Remove {
|
||||||
serra.Remove(opts.CardId)
|
serra.Remove(opts.CardId)
|
||||||
} else if opts.Cards {
|
} else if opts.Cards {
|
||||||
serra.Cards(opts.Rarity, opts.SetCode)
|
serra.Cards(opts.Rarity, opts.SetCode, opts.Sort)
|
||||||
} else if opts.Card {
|
} else if opts.Card {
|
||||||
serra.ShowCard(opts.CardId)
|
serra.ShowCard(opts.CardId)
|
||||||
} else if opts.Sets {
|
} else if opts.Sets {
|
||||||
|
|||||||
@ -80,7 +80,7 @@ func Remove(cards []string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func Cards(rarity, set string) {
|
func Cards(rarity, set, sort string) {
|
||||||
|
|
||||||
var total float64
|
var total float64
|
||||||
client := storage_connect()
|
client := storage_connect()
|
||||||
@ -98,11 +98,22 @@ func Cards(rarity, set string) {
|
|||||||
filter = append(filter, bson.E{"rarity", "rare"})
|
filter = append(filter, bson.E{"rarity", "rare"})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var sortStage bson.D
|
||||||
|
switch sort {
|
||||||
|
case "value":
|
||||||
|
sortStage = bson.D{{"prices.eur", 1}}
|
||||||
|
case "collectornumber":
|
||||||
|
sortStage = bson.D{{"collectornumber", 1}}
|
||||||
|
case "name":
|
||||||
|
sortStage = bson.D{{"name", 1}}
|
||||||
|
}
|
||||||
|
fmt.Println(sortStage)
|
||||||
|
|
||||||
if len(set) > 0 {
|
if len(set) > 0 {
|
||||||
filter = append(filter, bson.E{"set", set})
|
filter = append(filter, bson.E{"set", set})
|
||||||
}
|
}
|
||||||
|
|
||||||
cards, _ := coll.storage_find(filter, bson.D{{"name", 1}})
|
cards, _ := coll.storage_find(filter, sortStage)
|
||||||
|
|
||||||
for _, card := range cards {
|
for _, card := range cards {
|
||||||
LogMessage(fmt.Sprintf("* %dx %s%s%s (%s/%s) %s%.2f EUR%s", card.SerraCount, Purple, card.Name, Reset, card.Set, card.CollectorNumber, Yellow, card.Prices.Eur, Reset), "normal")
|
LogMessage(fmt.Sprintf("* %dx %s%s%s (%s/%s) %s%.2f EUR%s", card.SerraCount, Purple, card.Name, Reset, card.Set, card.CollectorNumber, Yellow, card.Prices.Eur, Reset), "normal")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user