2023-08-25 10:25:24 +10:00
|
|
|
|
using Microsoft.AspNetCore.Http;
|
|
|
|
|
|
using PARR.BLL.Domain;
|
2023-08-24 17:03:12 +10:00
|
|
|
|
|
2023-08-25 10:25:24 +10:00
|
|
|
|
namespace PARR.BLL.Services.Interfaces
|
2023-08-24 17:03:12 +10:00
|
|
|
|
{
|
|
|
|
|
|
public interface IFileService
|
|
|
|
|
|
{
|
|
|
|
|
|
Task<UploadResult?> UploadAsync(IFormFile formFile, string[] rootFolderWithoutStorage);
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Размер файла не превышает лимит?
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="formFile"></param>
|
|
|
|
|
|
/// <param name="limit"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
bool IsNotExceededLimit(IFormFile formFile, int limitMb);
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Разрешено это расширение?
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="formFile"></param>
|
|
|
|
|
|
/// <param name="allowedExtensions"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
bool IsExtensionAllowed(IFormFile formFile, string[] allowedExtensions);
|
2023-08-25 15:32:06 +10:00
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Удалить файл
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="path">Полный путь к файлу</param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
bool DeleteFile(string path);
|
2023-08-24 17:03:12 +10:00
|
|
|
|
}
|
|
|
|
|
|
}
|