feat: add GetContinueWatchingEntry to watchlist service
Expose continue watching entry lookup so other handlers can check saved progress for an anime without needing the playback service.
This commit is contained in:
@@ -12,6 +12,7 @@ type WatchlistService interface {
|
|||||||
UpdateEntry(ctx context.Context, userID string, animeID int64, status string) error
|
UpdateEntry(ctx context.Context, userID string, animeID int64, status string) error
|
||||||
RemoveEntry(ctx context.Context, userID string, animeID int64) error
|
RemoveEntry(ctx context.Context, userID string, animeID int64) error
|
||||||
GetWatchlist(ctx context.Context, userID string) ([]UserWatchListRow, error)
|
GetWatchlist(ctx context.Context, userID string) ([]UserWatchListRow, error)
|
||||||
|
GetContinueWatchingEntry(ctx context.Context, userID string, animeID int64) (db.ContinueWatchingEntry, error)
|
||||||
DeleteContinueWatching(ctx context.Context, userID string, animeID int64) error
|
DeleteContinueWatching(ctx context.Context, userID string, animeID int64) error
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -21,6 +22,7 @@ type WatchlistRepository interface {
|
|||||||
UpsertWatchListEntry(ctx context.Context, arg db.UpsertWatchListEntryParams) (db.WatchListEntry, error)
|
UpsertWatchListEntry(ctx context.Context, arg db.UpsertWatchListEntryParams) (db.WatchListEntry, error)
|
||||||
DeleteWatchListEntry(ctx context.Context, arg db.DeleteWatchListEntryParams) error
|
DeleteWatchListEntry(ctx context.Context, arg db.DeleteWatchListEntryParams) error
|
||||||
GetUserWatchList(ctx context.Context, userID string) ([]db.GetUserWatchListRow, error)
|
GetUserWatchList(ctx context.Context, userID string) ([]db.GetUserWatchListRow, error)
|
||||||
|
GetContinueWatchingEntry(ctx context.Context, arg db.GetContinueWatchingEntryParams) (db.ContinueWatchingEntry, error)
|
||||||
DeleteContinueWatchingEntry(ctx context.Context, arg db.DeleteContinueWatchingEntryParams) error
|
DeleteContinueWatchingEntry(ctx context.Context, arg db.DeleteContinueWatchingEntryParams) error
|
||||||
SaveWatchProgress(ctx context.Context, arg db.SaveWatchProgressParams) error
|
SaveWatchProgress(ctx context.Context, arg db.SaveWatchProgressParams) error
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,6 +34,10 @@ func (r *watchlistRepository) GetUserWatchList(ctx context.Context, userID strin
|
|||||||
return r.queries.GetUserWatchList(ctx, userID)
|
return r.queries.GetUserWatchList(ctx, userID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (r *watchlistRepository) GetContinueWatchingEntry(ctx context.Context, arg db.GetContinueWatchingEntryParams) (db.ContinueWatchingEntry, error) {
|
||||||
|
return r.queries.GetContinueWatchingEntry(ctx, arg)
|
||||||
|
}
|
||||||
|
|
||||||
func (r *watchlistRepository) DeleteContinueWatchingEntry(ctx context.Context, arg db.DeleteContinueWatchingEntryParams) error {
|
func (r *watchlistRepository) DeleteContinueWatchingEntry(ctx context.Context, arg db.DeleteContinueWatchingEntryParams) error {
|
||||||
return r.queries.DeleteContinueWatchingEntry(ctx, arg)
|
return r.queries.DeleteContinueWatchingEntry(ctx, arg)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,6 +55,13 @@ func (s *watchlistService) GetWatchlist(ctx context.Context, userID string) ([]d
|
|||||||
return s.repo.GetUserWatchList(ctx, userID)
|
return s.repo.GetUserWatchList(ctx, userID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *watchlistService) GetContinueWatchingEntry(ctx context.Context, userID string, animeID int64) (db.ContinueWatchingEntry, error) {
|
||||||
|
return s.repo.GetContinueWatchingEntry(ctx, db.GetContinueWatchingEntryParams{
|
||||||
|
UserID: userID,
|
||||||
|
AnimeID: animeID,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
func (s *watchlistService) DeleteContinueWatching(ctx context.Context, userID string, animeID int64) error {
|
func (s *watchlistService) DeleteContinueWatching(ctx context.Context, userID string, animeID int64) error {
|
||||||
_ = s.repo.DeleteContinueWatchingEntry(ctx, db.DeleteContinueWatchingEntryParams{
|
_ = s.repo.DeleteContinueWatchingEntry(ctx, db.DeleteContinueWatchingEntryParams{
|
||||||
UserID: userID,
|
UserID: userID,
|
||||||
|
|||||||
Reference in New Issue
Block a user