public async Task <CardViewDTO> CheckCard(int cardId, bool status, Guid userId) { if (cardId != null && status != null) { Card card = await _cardRepository.GetOne(cardId); Column column = await _columnRepository.GetOne(card.ColumnId); var result = await _cardRepository.CheckCard(cardId, status); UserActions action; if (status) { action = UserActions.CheckedCard; } else { action = UserActions.UncheckedCard; } var history = await _historyService.CreateHistoryObject( action, userId, card.Title, null, null, column.BoardId ); var mapperResult = _mapper.Map <Card, CardViewDTO>(result); return(mapperResult); } else { throw new Exception("Empty card id or card checked status"); } }