refactor: fix rest filter
This commit is contained in:
parent
d9f61a278c
commit
44671c59c0
|
@ -56,14 +56,14 @@ func (r *albumRepository) Get(id string) (*model.Album, error) {
|
||||||
|
|
||||||
func (r *albumRepository) FindByArtist(artistId string) (model.Albums, error) {
|
func (r *albumRepository) FindByArtist(artistId string) (model.Albums, error) {
|
||||||
sq := r.selectAlbum().Where(Eq{"artist_id": artistId}).OrderBy("year")
|
sq := r.selectAlbum().Where(Eq{"artist_id": artistId}).OrderBy("year")
|
||||||
var res model.Albums
|
res := model.Albums{}
|
||||||
err := r.queryAll(sq, &res)
|
err := r.queryAll(sq, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *albumRepository) GetAll(options ...model.QueryOptions) (model.Albums, error) {
|
func (r *albumRepository) GetAll(options ...model.QueryOptions) (model.Albums, error) {
|
||||||
sq := r.selectAlbum(options...)
|
sq := r.selectAlbum(options...)
|
||||||
var res model.Albums
|
res := model.Albums{}
|
||||||
err := r.queryAll(sq, &res)
|
err := r.queryAll(sq, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@ func (r *albumRepository) GetRandom(options ...model.QueryOptions) (model.Albums
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
var results model.Albums
|
results := model.Albums{}
|
||||||
_, err = r.ormer.Raw(sql, args...).QueryRows(&results)
|
_, err = r.ormer.Raw(sql, args...).QueryRows(&results)
|
||||||
return results, err
|
return results, err
|
||||||
}
|
}
|
||||||
|
@ -151,13 +151,13 @@ func (r *albumRepository) PurgeEmpty() error {
|
||||||
|
|
||||||
func (r *albumRepository) GetStarred(options ...model.QueryOptions) (model.Albums, error) {
|
func (r *albumRepository) GetStarred(options ...model.QueryOptions) (model.Albums, error) {
|
||||||
sq := r.selectAlbum(options...).Where("starred = true")
|
sq := r.selectAlbum(options...).Where("starred = true")
|
||||||
var starred model.Albums
|
starred := model.Albums{}
|
||||||
err := r.queryAll(sq, &starred)
|
err := r.queryAll(sq, &starred)
|
||||||
return starred, err
|
return starred, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *albumRepository) Search(q string, offset int, size int) (model.Albums, error) {
|
func (r *albumRepository) Search(q string, offset int, size int) (model.Albums, error) {
|
||||||
var results model.Albums
|
results := model.Albums{}
|
||||||
err := r.doSearch(q, offset, size, &results, "name")
|
err := r.doSearch(q, offset, size, &results, "name")
|
||||||
return results, err
|
return results, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,7 +69,7 @@ func (r *artistRepository) Get(id string) (*model.Artist, error) {
|
||||||
|
|
||||||
func (r *artistRepository) GetAll(options ...model.QueryOptions) (model.Artists, error) {
|
func (r *artistRepository) GetAll(options ...model.QueryOptions) (model.Artists, error) {
|
||||||
sel := r.selectArtist(options...)
|
sel := r.selectArtist(options...)
|
||||||
var res model.Artists
|
res := model.Artists{}
|
||||||
err := r.queryAll(sel, &res)
|
err := r.queryAll(sel, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
@ -158,7 +158,7 @@ where f.artist_id in ('%s') group by f.artist_id order by f.id`, strings.Join(id
|
||||||
|
|
||||||
func (r *artistRepository) GetStarred(options ...model.QueryOptions) (model.Artists, error) {
|
func (r *artistRepository) GetStarred(options ...model.QueryOptions) (model.Artists, error) {
|
||||||
sq := r.selectArtist(options...).Where("starred = true")
|
sq := r.selectArtist(options...).Where("starred = true")
|
||||||
var starred model.Artists
|
starred := model.Artists{}
|
||||||
err := r.queryAll(sq, &starred)
|
err := r.queryAll(sq, &starred)
|
||||||
return starred, err
|
return starred, err
|
||||||
}
|
}
|
||||||
|
@ -169,7 +169,7 @@ func (r *artistRepository) PurgeEmpty() error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *artistRepository) Search(q string, offset int, size int) (model.Artists, error) {
|
func (r *artistRepository) Search(q string, offset int, size int) (model.Artists, error) {
|
||||||
var results model.Artists
|
results := model.Artists{}
|
||||||
err := r.doSearch(q, offset, size, &results, "name")
|
err := r.doSearch(q, offset, size, &results, "name")
|
||||||
return results, err
|
return results, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ func (r genreRepository) GetAll() (model.Genres, error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
var res model.Genres
|
res := model.Genres{}
|
||||||
_, err = r.ormer.Raw(sql, args).QueryRows(&res)
|
_, err = r.ormer.Raw(sql, args).QueryRows(&res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,28 +50,28 @@ func (r mediaFileRepository) Get(id string) (*model.MediaFile, error) {
|
||||||
|
|
||||||
func (r mediaFileRepository) GetAll(options ...model.QueryOptions) (model.MediaFiles, error) {
|
func (r mediaFileRepository) GetAll(options ...model.QueryOptions) (model.MediaFiles, error) {
|
||||||
sq := r.selectMediaFile(options...)
|
sq := r.selectMediaFile(options...)
|
||||||
var res model.MediaFiles
|
res := model.MediaFiles{}
|
||||||
err := r.queryAll(sq, &res)
|
err := r.queryAll(sq, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r mediaFileRepository) FindByAlbum(albumId string) (model.MediaFiles, error) {
|
func (r mediaFileRepository) FindByAlbum(albumId string) (model.MediaFiles, error) {
|
||||||
sel := r.selectMediaFile().Where(Eq{"album_id": albumId}).OrderBy("disc_number", "track_number")
|
sel := r.selectMediaFile().Where(Eq{"album_id": albumId}).OrderBy("disc_number", "track_number")
|
||||||
var res model.MediaFiles
|
res := model.MediaFiles{}
|
||||||
err := r.queryAll(sel, &res)
|
err := r.queryAll(sel, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r mediaFileRepository) FindByPath(path string) (model.MediaFiles, error) {
|
func (r mediaFileRepository) FindByPath(path string) (model.MediaFiles, error) {
|
||||||
sel := r.selectMediaFile().Where(Like{"path": path + "%"})
|
sel := r.selectMediaFile().Where(Like{"path": path + "%"})
|
||||||
var res model.MediaFiles
|
res := model.MediaFiles{}
|
||||||
err := r.queryAll(sel, &res)
|
err := r.queryAll(sel, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r mediaFileRepository) GetStarred(options ...model.QueryOptions) (model.MediaFiles, error) {
|
func (r mediaFileRepository) GetStarred(options ...model.QueryOptions) (model.MediaFiles, error) {
|
||||||
sq := r.selectMediaFile(options...).Where("starred = true")
|
sq := r.selectMediaFile(options...).Where("starred = true")
|
||||||
var starred model.MediaFiles
|
starred := model.MediaFiles{}
|
||||||
err := r.queryAll(sq, &starred)
|
err := r.queryAll(sq, &starred)
|
||||||
return starred, err
|
return starred, err
|
||||||
}
|
}
|
||||||
|
@ -89,7 +89,7 @@ func (r mediaFileRepository) GetRandom(options ...model.QueryOptions) (model.Med
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
var results model.MediaFiles
|
results := model.MediaFiles{}
|
||||||
_, err = r.ormer.Raw(sql, args...).QueryRows(&results)
|
_, err = r.ormer.Raw(sql, args...).QueryRows(&results)
|
||||||
return results, err
|
return results, err
|
||||||
}
|
}
|
||||||
|
@ -105,7 +105,7 @@ func (r mediaFileRepository) DeleteByPath(path string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r mediaFileRepository) Search(q string, offset int, size int) (model.MediaFiles, error) {
|
func (r mediaFileRepository) Search(q string, offset int, size int) (model.MediaFiles, error) {
|
||||||
var results model.MediaFiles
|
results := model.MediaFiles{}
|
||||||
err := r.doSearch(q, offset, size, &results, "title")
|
err := r.doSearch(q, offset, size, &results, "title")
|
||||||
return results, err
|
return results, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,7 +45,7 @@ var _ = Describe("MediaRepository", func() {
|
||||||
})
|
})
|
||||||
|
|
||||||
It("returns empty array when no tracks are found", func() {
|
It("returns empty array when no tracks are found", func() {
|
||||||
Expect(mr.FindByAlbum("67")).To(Equal(model.MediaFiles(nil)))
|
Expect(mr.FindByAlbum("67")).To(Equal(model.MediaFiles{}))
|
||||||
})
|
})
|
||||||
|
|
||||||
It("finds tracks by path", func() {
|
It("finds tracks by path", func() {
|
||||||
|
|
|
@ -64,7 +64,7 @@ func (r *playlistRepository) GetWithTracks(id string) (*model.Playlist, error) {
|
||||||
}
|
}
|
||||||
mfRepo := NewMediaFileRepository(r.ctx, r.ormer)
|
mfRepo := NewMediaFileRepository(r.ctx, r.ormer)
|
||||||
pls.Duration = 0
|
pls.Duration = 0
|
||||||
var newTracks model.MediaFiles
|
newTracks := model.MediaFiles{}
|
||||||
for _, t := range pls.Tracks {
|
for _, t := range pls.Tracks {
|
||||||
mf, err := mfRepo.Get(t.ID)
|
mf, err := mfRepo.Get(t.ID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -197,7 +197,7 @@ func (r sqlRepository) parseRestOptions(options ...rest.QueryOptions) model.Quer
|
||||||
if len(options[0].Filters) > 0 {
|
if len(options[0].Filters) > 0 {
|
||||||
filters := And{}
|
filters := And{}
|
||||||
for f, v := range options[0].Filters {
|
for f, v := range options[0].Filters {
|
||||||
qo.Filters = append(filters, Like{f: fmt.Sprintf("%s%%", v)})
|
filters = append(filters, Like{f: fmt.Sprintf("%s%%", v)})
|
||||||
}
|
}
|
||||||
qo.Filters = filters
|
qo.Filters = filters
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ func (r *userRepository) Get(id string) (*model.User, error) {
|
||||||
|
|
||||||
func (r *userRepository) GetAll(options ...model.QueryOptions) (model.Users, error) {
|
func (r *userRepository) GetAll(options ...model.QueryOptions) (model.Users, error) {
|
||||||
sel := r.newSelect(options...).Columns("*")
|
sel := r.newSelect(options...).Columns("*")
|
||||||
var res model.Users
|
res := model.Users{}
|
||||||
err := r.queryAll(sel, &res)
|
err := r.queryAll(sel, &res)
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue