snapshot of https://github.com/traggo/server.git (master, 2026-09-16; blobs > 131072B omitted)
Some checks failed
build / build (push) Failing after 3s
Some checks failed
build / build (push) Failing after 3s
This commit is contained in:
35
statistics/summary2.go
Normal file
35
statistics/summary2.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package statistics
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/traggo/server/generated/gqlmodel"
|
||||
"github.com/traggo/server/model"
|
||||
"github.com/traggo/server/setting"
|
||||
"github.com/traggo/server/time"
|
||||
)
|
||||
|
||||
// Stats2 another version of the stats endpoint
|
||||
func (r *ResolverForStatistics) Stats2(ctx context.Context, now model.Time, stats gqlmodel.InputStatsSelection) ([]*gqlmodel.RangedStatisticsEntries, error) {
|
||||
|
||||
settings, err := setting.Get(ctx, r.DB)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var ranges []*gqlmodel.Range
|
||||
|
||||
staticRanges, err := time.ParseRange(now.OmitTimeZone(),
|
||||
time.RelativeRange{From: stats.Range.From, To: stats.Range.To},
|
||||
time.InternalInterval(stats.Interval),
|
||||
settings.FirstDayOfTheWeekTimeWeekday(),
|
||||
settings.LastDayOfTheWeekTimeWeekday())
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for _, r := range staticRanges {
|
||||
ranges = append(ranges, &gqlmodel.Range{Start: model.Time(r.From), End: model.Time(r.To)})
|
||||
}
|
||||
|
||||
return r.Stats(ctx, ranges, stats.Tags, stats.ExcludeTags, stats.IncludeTags)
|
||||
}
|
||||
Reference in New Issue
Block a user