32 lines
971 B
C#
32 lines
971 B
C#
using Microsoft.AspNetCore.Http;
|
|
|
|
namespace PowderCoating.Application.Interfaces;
|
|
|
|
public interface ICompanyLogoService
|
|
{
|
|
/// <summary>
|
|
/// Save company logo to filesystem
|
|
/// </summary>
|
|
Task<(bool Success, string FilePath, string ErrorMessage)> SaveCompanyLogoAsync(IFormFile file, int companyId);
|
|
|
|
/// <summary>
|
|
/// Delete company logo from filesystem
|
|
/// </summary>
|
|
Task<(bool Success, string ErrorMessage)> DeleteCompanyLogoAsync(string filePath);
|
|
|
|
/// <summary>
|
|
/// Get company logo from filesystem
|
|
/// </summary>
|
|
Task<(bool Success, byte[] FileContent, string ContentType, string ErrorMessage)> GetCompanyLogoAsync(string filePath);
|
|
|
|
/// <summary>
|
|
/// Check if company logo exists
|
|
/// </summary>
|
|
Task<bool> CompanyLogoExistsAsync(string filePath);
|
|
|
|
/// <summary>
|
|
/// Get the expected logo path for a company
|
|
/// </summary>
|
|
string GetCompanyLogoPath(int companyId, string extension);
|
|
}
|