Files
RenewCMS/internal/infrastructure/useCases/GetActivitySummary.go
T

24 lines
612 B
Go

package useCases
import (
"RenewCMS/internal/domain/audit"
"time"
)
type GetActivitySummaryUseCase struct {
events audit.Repository
now func() time.Time
}
func NewGetActivitySummaryUseCase(events audit.Repository, now func() time.Time) *GetActivitySummaryUseCase {
return &GetActivitySummaryUseCase{events, now}
}
func (g *GetActivitySummaryUseCase) GetActivitySummary(query ActivityQuery) (audit.Summary, error) {
window, err := resolveActivityWindow(query, g.now())
if err != nil {
return audit.Summary{}, err
}
return g.events.Summary(audit.SummaryQuery{From: window.from, To: window.to})
}