profileShare

rasmusjy / splitapp-backend-modular-monolith

Read-only snapshot

No repository description.

main default branch 418 files Expires Sep 13, 2026, 9:06 AM
IWishlistService.cs 945 bytes
1 using SplitApp.WebApp.Application.DTO;
2
3 namespace SplitApp.WebApp.Application.Services;
4
5 public interface IWishlistService
6 {
7 Task<List<TripWishlistItemBllDto>> GetByTripIdAsync(Guid tripId, Guid userId); // participant-only
8 Task<TripWishlistItemBllDto?> GetByIdAsync(Guid id, Guid userId); // participant-only
9 Task<TripWishlistItemBllDto?> GetByIdRawAsync(Guid id); // no IDOR
10
11 Task<(TripWishlistItemBllDto? item, string? errorCode)> CreateAsync(TripWishlistItemBllDto item, Guid userId); // participant
12 Task<(bool success, string? errorCode)> UpdateAsync(Guid id, TripWishlistItemBllDto incoming, Guid userId); // creator only
13 Task<(bool success, string? errorCode)> DeleteAsync(Guid id, Guid userId); // creator only
14 Task<(bool success, string? errorCode)> ToggleVoteAsync(Guid id, Guid userId); // participant
15 Task<(bool success, string? errorCode)> ToggleCompleteAsync(Guid id, Guid userId); // participant
16 }
17