public int AddCardAction(CardAction cardAction)
        {
            if (cardAction == null)
            {
                throw new Exception("AddCardAction method error: cardAction is null");
            }
            _db.CardActions.Add(cardAction);
            _db.SaveChanges();

            var card = _dbCards.Cards.Find(cardAction.CardId);

            card.AddActionId(cardAction.Id);
            _dbCards.Cards.Update(card);
            _dbCards.SaveChanges();
            return(cardAction.Id);
        }
Пример #2
0
        public void DeleteCard(int id)
        {
            var card = _db.Cards.Find(id);

            if (card == null)
            {
                throw new Exception($"DeleteCard method error: No card with id {id}");
            }
            var board = _dbBoard.Boards.Find(card.BoardId);

            board.DeleteCardId(card.Id);
            _dbBoard.Boards.Update(board);
            _dbBoard.SaveChanges();

            var column = _dbColumn.Columns.Find(card.ColumnId);

            column.DeleteCardId(card.Id);
            _dbColumn.Columns.Update(column);
            _dbColumn.SaveChanges();

            foreach (var actionId in card.GetActionIds())
            {
                var cardAction = _cardActionContext.CardActions.Find(actionId);
                if (cardAction != null)
                {
                    _cardActionContext.CardActions.Remove(cardAction);
                }
            }
            _cardActionContext.SaveChanges();
            _db.Cards.Remove(card);
            _db.SaveChanges();
        }