2018-12-26 21:18:51 +00:00
|
|
|
|
using Microsoft.AspNetCore.Http;
|
|
|
|
|
using Roadie.Library;
|
2018-11-06 04:31:25 +00:00
|
|
|
|
using Roadie.Library.Models;
|
|
|
|
|
using Roadie.Library.Models.Pagination;
|
2018-11-14 23:18:02 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Threading.Tasks;
|
2018-11-06 04:31:25 +00:00
|
|
|
|
|
|
|
|
|
namespace Roadie.Api.Services
|
|
|
|
|
{
|
|
|
|
|
public interface IArtistService
|
|
|
|
|
{
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<Artist>> ByIdAsync(Library.Models.Users.User user, Guid id, IEnumerable<string> includes);
|
2018-11-14 23:18:02 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<bool>> DeleteAsync(Library.Identity.User user, Library.Data.Artist Artist, bool deleteFolder);
|
2019-01-08 22:40:26 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<PagedResult<ArtistList>> ListAsync(Library.Models.Users.User user, PagedRequest request, bool? doRandomize = false, bool? onlyIncludeWithReleases = true);
|
2019-05-29 22:25:40 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<bool>> MergeArtistsAsync(Library.Identity.User user, Guid artistToMergeId, Guid artistToMergeIntoId);
|
2019-01-08 22:40:26 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<bool>> RefreshArtistMetadataAsync(Library.Identity.User user, Guid ArtistId);
|
2019-01-08 22:40:26 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<bool>> ScanArtistReleasesFoldersAsync(Library.Identity.User user, Guid artistId, string destinationFolder, bool doJustInfo);
|
2019-07-07 03:16:33 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<Image>> SetReleaseImageByUrlAsync(Library.Identity.User user, Guid id, string imageUrl);
|
2019-07-07 03:16:33 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<bool>> UpdateArtistAsync(Library.Identity.User user, Artist artist);
|
2019-07-07 03:16:33 +00:00
|
|
|
|
|
2020-06-07 22:46:24 +00:00
|
|
|
|
Task<OperationResult<Image>> UploadArtistImageAsync(Library.Identity.User user, Guid id, IFormFile file);
|
2018-11-06 04:31:25 +00:00
|
|
|
|
}
|
|
|
|
|
}
|