stash/pkg/models/movie.go
gitgiggety be94e52f21
Add movie count to performer and studio card (#1760)
* Add movies and movie_count properties to Performer type

Extend the GraphQL API to allow getting the movies and movie count by
performer.

* Add movies count to performer card

* Add movies and movie_count properties to Studio type

Extend the GraphQL API to allow getting the movies and movie count by
studio.

* Add movies count to studio card
2021-09-27 11:31:49 +10:00

32 lines
1 KiB
Go

package models
type MovieReader interface {
Find(id int) (*Movie, error)
FindMany(ids []int) ([]*Movie, error)
// FindBySceneID(sceneID int) ([]*Movie, error)
FindByName(name string, nocase bool) (*Movie, error)
FindByNames(names []string, nocase bool) ([]*Movie, error)
All() ([]*Movie, error)
Count() (int, error)
Query(movieFilter *MovieFilterType, findFilter *FindFilterType) ([]*Movie, int, error)
GetFrontImage(movieID int) ([]byte, error)
GetBackImage(movieID int) ([]byte, error)
FindByPerformerID(performerID int) ([]*Movie, error)
CountByPerformerID(performerID int) (int, error)
FindByStudioID(studioID int) ([]*Movie, error)
CountByStudioID(studioID int) (int, error)
}
type MovieWriter interface {
Create(newMovie Movie) (*Movie, error)
Update(updatedMovie MoviePartial) (*Movie, error)
UpdateFull(updatedMovie Movie) (*Movie, error)
Destroy(id int) error
UpdateImages(movieID int, frontImage []byte, backImage []byte) error
DestroyImages(movieID int) error
}
type MovieReaderWriter interface {
MovieReader
MovieWriter
}