public async Task <ActionResult <Guid> > CreateCard([FromBody] CreateCardRequest request) { var userId = this.GetUserId(); if (!await deckRepository.IsUsersDeckAsync(request.DeckId, userId).ConfigureAwait(false)) { return(Forbid()); } var result = await manager.AddCardAsync(request.DeckId).ConfigureAwait(false); if (result == null) { return(StatusCode(500)); } // Не совсем корректно отдавать Id, вместо карточки, но норм return(Created($"api/v1/cards/{result.Value}", result.Value)); }
public async Task <IActionResult> UpdateDeck([FromRoute] Guid deckId, [FromBody] UpdateDeckRequest updateDeck) { try { var userId = this.GetUserId(); if (!await deckRepository.IsUsersDeckAsync(deckId, userId).ConfigureAwait(false)) { return(Forbid()); } var result = await manager.UpdateDeckTitleAsync(deckId, updateDeck.Title).ConfigureAwait(false); if (result) { return(Ok()); } return(NotFound()); } catch (Exception e) { return(StatusCode(500, e.Message)); } }