counter: use absolute value for counter

This commit is contained in:
Chris Sexton 2020-01-24 16:32:24 -05:00 committed by Chris Sexton
parent 918d37f591
commit fc18fba2d8
2 changed files with 5 additions and 3 deletions

View File

@ -73,10 +73,11 @@ func GetItems(db *sqlx.DB, nick string) ([]Item, error) {
} }
func LeaderAll(db *sqlx.DB) ([]Item, error) { func LeaderAll(db *sqlx.DB) ([]Item, error) {
s := `select id,item,nick,max(count) as count from counter group by item having count(nick) > 1 and max(count) > 1 order by count desc` s := `select id,item,nick,count from (select id,item,nick,count,max(abs(count)) from counter group by item having count(nick) > 1 and max(abs(count)) > 1) order by count desc`
var items []Item var items []Item
err := db.Select(&items, s) err := db.Select(&items, s)
if err != nil { if err != nil {
log.Error().Msgf("Error querying leaderboard: %w", err)
return nil, err return nil, err
} }
for i := range items { for i := range items {
@ -260,7 +261,7 @@ func (p *CounterPlugin) message(c bot.Connector, kind bot.Kind, message msg.Mess
its, err := cmd() its, err := cmd()
if err != nil { if err != nil {
log.Error().Err(err) log.Error().Err(err).Msg("Error with leaderboard")
return false return false
} else if len(its) == 0 { } else if len(its) == 0 {
return false return false

View File

@ -4,10 +4,11 @@ package counter
import ( import (
"fmt" "fmt"
"github.com/velour/catbase/plugins/cli"
"strings" "strings"
"testing" "testing"
"github.com/velour/catbase/plugins/cli"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/velour/catbase/bot" "github.com/velour/catbase/bot"
"github.com/velour/catbase/bot/msg" "github.com/velour/catbase/bot/msg"