コード例 #1
0
 public async Task <IPagedResult <SpendingOfUserDto> > HandleAsync(BrowseSpendingOfUser query)
 {
     return(_mapper.Map <IPagedResult <SpendingOfUserDto> >(await _repository.BrowseAsync(query)));
 }
コード例 #2
0
 public async Task <IPagedResult <SpendingOfUserDto> > GetSpendingOfUser(Guid userId, [FromQuery] BrowseSpendingOfUser query)
 => await Dispatcher.QueryAsync(query.Bind(q => q.UserId, userId));
コード例 #3
0
 public async Task <ActionResult <IPagedResult <SpendingOfUser> > > BrowseSpendingOfCurrentUser([FromQuery] BrowseSpendingOfUser query)
 => await BrowseSpendingOfUser(User.GetUserId(), query);
コード例 #4
0
 public async Task <ActionResult <SpendingSumDto> > SumSpendingOfCurrentUser([FromQuery] BrowseSpendingOfUser query)
 => await SumSpendingOfUser(User.GetUserId(), query);
コード例 #5
0
 public async Task <ActionResult <SpendingSumDto> > SumSpendingOfUser(Guid userId, [FromQuery] BrowseSpendingOfUser query)
 {
     if (User.GetUserId() == userId || await _authService.IsAdministrator(User))
     {
         return(new SpendingSumDto(await _accountingService.SumSpendingOfUser(userId, query)));
     }
     else
     {
         return(Unauthorized(new ErrorDto("unauthorized_user_id", "Only administrators can access other users' spending.")));
     }
 }