using System.Collections.Generic; using _0_Framework.Application; using _0_Framework.Domain; using AccountManagement.Application.Contracts.Media; using Microsoft.AspNetCore.Http; namespace AccountManagement.Domain.MediaAgg; public interface IMediaRepository : IRepository { public string BasePath { get; protected set; } void CreateMediaWithTaskMedia(long taskId, long mediaId); List GetMediaByTaskId(long taskId); void Remove(long id); void RemoveRange(IEnumerable medias); void CreateTicketMedia(long ticketId, long mediaId); void CreateAdminResponseMedia(long adminResponseId, long mediaId); void CreateClientResponseMedia(long clientResponseId, long mediaId); #region Pooya List GetMedias(List ids); List GetRange(IEnumerable mediaIds); #endregion OperationResult UploadFile(IFormFile file, string fileLabel, string relativePath, int maximumFileLength, List allowedExtensions, string category); }