This commit is contained in:
Florian Baumann 2022-01-17 13:54:02 +01:00
parent b92df9130d
commit bc1be395cd
2 changed files with 21 additions and 7 deletions

View File

@ -19,7 +19,8 @@ var opts struct {
Sets bool `docopt:"sets"`
Stats bool `docopt:"stats"`
Missing bool `docopt:"missing"`
Raising bool `docopt:"raising"`
Tops bool `docopt:"tops"`
Flops bool `docopt:"flops"`
Update bool `docopt:"update"`
CardId []string `docopt:"<cardid>"`
SetCode string `docopt:"<setcode>,--set"`
@ -39,7 +40,8 @@ Usage:
serra remove <cardid>...
serra cards [--rarity=<rarity>] [--set=<setcode>] [--sort=<sort>]
serra card <cardid>...
serra raising [--limit=<limit>]
serra tops [--limit=<limit>]
serra flops [--limit=<limit>]
serra missing <setcode>
serra set <setcode>
serra sets
@ -71,8 +73,10 @@ Options:
serra.Sets()
} else if opts.Missing {
serra.Missing(opts.SetCode)
} else if opts.Raising {
serra.Raising(opts.Limit)
} else if opts.Tops {
serra.Gains(opts.Limit, -1)
} else if opts.Flops {
serra.Gains(opts.Limit, 1)
} else if opts.Set {
serra.ShowSet(opts.SetCode)
} else if opts.Update {

View File

@ -398,7 +398,7 @@ func Update() error {
return nil
}
func Raising(limit float64) error {
func Gains(limit float64, sort int) error {
client := storage_connect()
coll := &Collection{client.Database("serra").Collection("cards")}
@ -450,12 +450,22 @@ func Raising(limit float64) error {
},
}},
bson.D{{"$sort",
bson.D{{"rate", -1}}}},
bson.D{{"rate", sort}}}},
bson.D{{"$limit", 20}},
}
raise, _ := coll.storage_aggregate(raise_pipeline)
// percentage coloring
var p_color string
if sort == 1 {
p_color = Red
} else {
p_color = Green
}
// print each card
for _, e := range raise {
fmt.Printf("%s%+.0f%%%s %s%s%s %s(%s/%s)%s (%.2f->%s%.2f EUR%s) \n", Green, e["rate"], Reset, Pink, e["name"], Reset, Yellow, e["set"], e["collectornumber"], Reset, e["old"], Green, e["current"], Reset)
fmt.Printf("%s%+.0f%%%s %s %s(%s/%s)%s (%.2f->%s%.2f EUR%s) \n", p_color, e["rate"], Reset, e["name"], Yellow, e["set"], e["collectornumber"], Reset, e["old"], Green, e["current"], Reset)
}
return nil