public async Task <WordCardWordList> AddToList(long cardId, long listId, UserInfo userInfo) { var list = await _wordsListRepository.GetByIdIfAccess(listId, userInfo.UserId); if (list == null) { throw new SomeCustomException(ErrorConsts.NotFound); } var card = await _wordsCardsService.GetByIdIfAccess(cardId, userInfo); if (card == null) { throw new SomeCustomException(ErrorConsts.NotFound); } var relation = await _wordsListRepository.Get(cardId, listId); if (relation != null) { throw new SomeCustomException(ErrorConsts.NotFound);//TODO тут бы указать ошибку точнее, типо уже добавлено в список } return(await _wordsListRepository.AddToList(new WordCardWordList() { WordCardId = cardId, WordsListId = listId })); }
public async Task <WordCard> Create(WordCardInputModel input, UserInfo userInfo) { if (userInfo == null) { throw new NotAuthException(); } var wordCardNew = WordCardFromInputModelNew(input); wordCardNew.UserId = userInfo.UserId; //long? listId = null; if (input.ListId != null) { var lst = await _wordCardListsRepository.GetByIdIfAccess(input.ListId.Value, userInfo.UserId); if (lst != null) { //listId = lst.Id; wordCardNew.WordCardWordList.Add(new WordCardWordList() { WordsListId = lst.Id }); } } try { wordCardNew.ImagePath = await _imageService.CreateUploadFileWithOutDbRecord(input.MainImageNew); var resWordCard = await _wordCardRepository.Add(wordCardNew); return(resWordCard); } catch { throw; } }