diff --git a/pkg/datastore/datastore.go b/pkg/datastore/datastore.go index 241e236..4df0c9f 100644 --- a/pkg/datastore/datastore.go +++ b/pkg/datastore/datastore.go @@ -3,6 +3,8 @@ package datastore import ( "context" "errors" + "time" + "git.itzana.me/strafesnet/maps-service/pkg/model" ) @@ -45,7 +47,7 @@ type Operations interface { Create(ctx context.Context, smap model.Operation) (model.Operation, error) Update(ctx context.Context, id int32, values OptionalMap) error Delete(ctx context.Context, id int32) error - CountSince(ctx context.Context, owner int64, since int64) (int64, error) + CountSince(ctx context.Context, owner int64, since time.Time) (int64, error) } type Submissions interface { diff --git a/pkg/datastore/gormstore/operations.go b/pkg/datastore/gormstore/operations.go index 87b456f..ab5eb00 100644 --- a/pkg/datastore/gormstore/operations.go +++ b/pkg/datastore/gormstore/operations.go @@ -3,6 +3,7 @@ package gormstore import ( "context" "errors" + "time" "git.itzana.me/strafesnet/maps-service/pkg/datastore" "git.itzana.me/strafesnet/maps-service/pkg/model" @@ -54,9 +55,9 @@ func (env *Operations) Delete(ctx context.Context, id int32) error { return nil } -func (env *Operations) CountSince(ctx context.Context, owner int64, since int64) (int64, error) { +func (env *Operations) CountSince(ctx context.Context, owner int64, since time.Time) (int64, error) { var count int64 - if err := env.db.Where("owner = ? AND created_at > ?",owner,since).Count(&count).Error; err != nil { + if err := env.db.Model(&model.Operation{}).Where("owner = ? AND created_at > ?",owner,since).Count(&count).Error; err != nil { return count, err } diff --git a/pkg/service/mapfixes.go b/pkg/service/mapfixes.go index 17fe5e0..ff276d8 100644 --- a/pkg/service/mapfixes.go +++ b/pkg/service/mapfixes.go @@ -84,7 +84,7 @@ func (svc *Service) CreateMapfix(ctx context.Context, request *api.MapfixTrigger { count, err := svc.DB.Operations().CountSince(ctx, int64(userId), - time.Now().Add(-CreateMapfixRecencyWindow).Unix(), + time.Now().Add(-CreateMapfixRecencyWindow), ) if err != nil { return nil, err diff --git a/pkg/service/submissions.go b/pkg/service/submissions.go index c9a6a80..bf7e9d5 100644 --- a/pkg/service/submissions.go +++ b/pkg/service/submissions.go @@ -75,7 +75,7 @@ func (svc *Service) CreateSubmission(ctx context.Context, request *api.Submissio { count, err := svc.DB.Operations().CountSince(ctx, int64(userId), - time.Now().Add(-CreateSubmissionRecencyWindow).Unix(), + time.Now().Add(-CreateSubmissionRecencyWindow), ) if err != nil { return nil, err