photoprism/internal/query/moments_time.go
thielepaul f6a611bded Backend: Add API endpoint for photo count per month #152 #154 #218
* Backend: Add API endpoint for photo count per month

* URL: /api/v1/moments/time
2020-01-23 20:05:54 +01:00

25 lines
664 B
Go

package query
// MomentsTimeResult contains photo counts per month and year
type MomentsTimeResult struct {
PhotoYear int
PhotoMonth int
Count int
}
// GetMomentsTime counts photos per month and year
func (s *Repo) GetMomentsTime() (results []MomentsTimeResult, err error) {
q := s.db.NewScope(nil).DB()
q = q.Table("photos").
Where("deleted_at IS NULL").
Select("photos.photo_year, photos.photo_month, COUNT(*) AS count").
Group("photos.photo_year, photos.photo_month").
Order("photos.photo_year DESC, photos.photo_month DESC")
if result := q.Scan(&results); result.Error != nil {
return results, result.Error
}
return results, nil
}