Exemple #1
0
        public async Task <IActionResult> CreateBoard([FromBody] BoardForCreationDto boardForCreationDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var board = _mapper.Map <BoardForCreationDto, Board>(boardForCreationDto);

            _context.Add(board);
            await _context.SaveChangesAsync();

            var boardToReturn = _mapper.Map <Board, BoardDto>(board);

            return(Ok(boardToReturn));
        }
        public async Task <IActionResult> Create(string userId, BoardForCreationDto boardForCreation)
        {
            if (userId != User.FindFirst(ClaimTypes.NameIdentifier).Value)
            {
                return(Unauthorized());
            }

            var currentUser = await _userManager.FindByIdAsync(userId);

            if (currentUser == null)
            {
                return(Unauthorized());
            }

            string boardId = DateTime.Now.ToFileTime().ToString();

            boardId = boardId.Substring(boardId.Length / 2, boardId.Length / 4) + userId.Substring(2, 4);

            Board board = new Board
            {
                OwnerId   = userId,
                BoardName = boardForCreation.Name,
                BoardId   = boardId
            };

            currentUser.UserBoards = new List <UserBoards>
            {
                new UserBoards
                {
                    User  = currentUser,
                    Board = board
                }
            };

            _repo.Add(board);

            if (await _repo.SaveAll())
            {
                var boardToReturn = _mapper.Map <BoardToReturnDto>(board);
                return(Ok(new { board = boardToReturn }));
            }

            return(BadRequest("Something is wrong, please try again."));
        }
Exemple #3
0
        public ActionResult CreateBoard([FromBody] BoardForCreationDto board)
        {
            var boardEntity = _mapper.Map <Board>(board);

            try
            {
                _easyKBTaskBoardRepository.AddBoard(boardEntity);
                _easyKBTaskBoardRepository.Save();
            }
            catch (Exception)
            {
                return(NotFound($"Account with id {board.AccountId} couldn't be found.\nCreating failed."));
            }

            var createdBoardToReturn = _mapper.Map <BoardDto>(boardEntity);

            return(CreatedAtRoute(
                       "GetBoard",
                       new { boardId = createdBoardToReturn.Id },
                       createdBoardToReturn));
        }
Exemple #4
0
        public async Task <IActionResult> Post([FromBody] BoardForCreationDto boardForCreation)
        {
            // Validate boardForCreation, return appropriate error response code if invalid

            var board = new Board
            {
                Name        = boardForCreation.Name,
                Description = boardForCreation.Description
                              // Assign other properties as well

                              // Assing creatorId with the UserId
                              // Add other members by assigning userIds in the list BoardMemberIds of board
            };

            await _unitOfWork.Boards.AddAsync(board);

            await _unitOfWork.SaveChangesAsync();

            // Return appropriate error response code with message if anything wrong happens during the operation

            return(Ok(board));
        }