shoc-backend/SeaHaven.Services/Interfaces/IAccountService.cs
2026-04-28 18:55:14 -05:00

17 lines
735 B
C#

using SeaHaven.Services.DTOs;
namespace SeaHaven.Services.Interfaces
{
public interface IAccountService
{
Task<AccountDTO?> GetAccountByIdAsync(int id);
Task<AccountDTO?> GetAccountByIdWithDetailsAsync(int id);
Task<IEnumerable<AccountDTO>> GetAllAccountsAsync();
Task<PagedResult<AccountDTO>> GetAccountsPagedAsync(int page, int pageSize, string? search = null);
Task<AccountDTO> CreateAccountAsync(CreateAccountDTO dto, string userId);
Task<AccountDTO> UpdateAccountAsync(int id, UpdateAccountDTO dto, string userId);
Task DeleteAccountAsync(int id, string userId);
Task<bool> AccountExistsAsync(int id);
Task<int> GetTotalAccountCountAsync();
}
}