IBudgetCategoryService.cs
746 bytes
| 1 | using App.BLL.DTO; |
|---|---|
| 2 | |
| 3 | namespace App.BLL.Services; |
| 4 | |
| 5 | public interface IBudgetCategoryService |
| 6 | { |
| 7 | Task<List<BudgetCategoryBllDto>> GetByTripIdAsync(Guid tripId, Guid userId); // participant-only |
| 8 | Task<List<BudgetCategoryBllDto>> GetByTripIdRawAsync(Guid tripId); // no IDOR, used for dropdowns post-check |
| 9 | Task<BudgetCategoryBllDto?> GetByIdAsync(Guid id); // raw (no IDOR yet) |
| 10 | |
| 11 | Task<(BudgetCategoryBllDto? category, string? errorCode)> CreateAsync(BudgetCategoryBllDto category, Guid userId); // organizer only |
| 12 | Task<(bool success, string? errorCode)> UpdateAsync(Guid id, BudgetCategoryBllDto incoming, Guid userId); // organizer only |
| 13 | Task<(bool success, string? errorCode)> DeleteAsync(Guid id, Guid userId); // organizer only |
| 14 | } |
| 15 | |