Example #1
0
        public ActionResult <BlockReadDto> Create([FromBody] BlockCreateDto request)
        {
            BlockList blockList = _blockListRepository.Get(request.BlockListId);

            if (blockList == null)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Block list doesn't exist."));
            }

            if (blockList.Blocks.Any(e => e.Id == request.BlockedUserId))
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "You already blocked this User."));
            }

            if (blockList.OwnerUserId == request.BlockedUserId)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "You cannot block yourself."));
            }

            if (_userRepository.Get(request.BlockedUserId) == null)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "User doesn't exist."));
            }

            Block newEntity = _mapper.Map <Block>(request);

            newEntity.DateTime = DateTime.UtcNow;

            newEntity = _blockRepository.Create(newEntity);

            return(StatusCode(StatusCodes.Status201Created, _mapper.Map <BlockReadDto>(newEntity)));
        }
Example #2
0
        public ActionResult <BlockReadDto> Create(BlockCreateDto blockCreateDto)
        {
            User blockerUser = _userService.Get(blockCreateDto.BlockerId);

            if (blockerUser == null)
            {
                return(BadRequest("Blocker user doesn't exist"));
            }

            User blockedUser = _userService.Get(blockCreateDto.BlockedId);

            if (blockedUser == null)
            {
                return(BadRequest("Blocked user doesn't exist"));
            }

            if (blockCreateDto.BlockerId == blockCreateDto.BlockedId)
            {
                return(BadRequest("BlockedId and BlockerIds cannot be the same"));
            }

            Block block = _blockRepository.Get(blockCreateDto.BlockerId, blockCreateDto.BlockedId);

            if (block != null)
            {
                return(BadRequest("This block already exists"));
            }

            block = _mapper.Map <Block>(blockCreateDto);
            block.CreateDateTime = DateTime.UtcNow;
            _blockRepository.Create(block);
            _logger.Log("Create a Block");

            return(Ok(block));
        }
        public BlockConfirmationDto Update(Guid id, BlockCreateDto dto)
        {
            if (dto.BlockerId == dto.BlockedId)
            {
                throw new BusinessException("Can not block yourself");
            }

            var blocked = MockedUsers.Users.FirstOrDefault(e => e.Id == dto.BlockedId);
            var blocker = MockedUsers.Users.FirstOrDefault(e => e.Id == dto.BlockerId);

            if (blocked == null || blocker == null)
            {
                throw new BusinessException("User does not exist");
            }

            var block = _context.Blocks.FirstOrDefault(e => e.Id == id);

            if (block == null)
            {
                throw new BusinessException("Block does not exist");
            }

            block.BlockerId = dto.BlockerId;
            block.BlockedId = dto.BlockedId;

            _context.SaveChanges();

            _logger.Log("Block updated!");

            return(_mapper.Map <BlockConfirmationDto>(block));
        }
        public BlockConfirmationDto Create(BlockCreateDto dto)
        {
            if (dto.BlockerId == dto.BlockedId)
            {
                throw new BusinessException("Can not block yourself");
            }

            var blocked = MockedUsers.Users.FirstOrDefault(e => e.Id == dto.BlockedId);
            var blocker = MockedUsers.Users.FirstOrDefault(e => e.Id == dto.BlockerId);

            if (blocked == null || blocker == null)
            {
                throw new BusinessException("User does not exist");
            }

            Block newBlock = new Block()
            {
                Id        = Guid.NewGuid(),
                BlockedId = dto.BlockedId,
                BlockerId = dto.BlockerId
            };

            _context.Blocks.Add(newBlock);

            _context.SaveChanges();

            _logger.Log("New block created!");

            return(_mapper.Map <BlockConfirmationDto>(newBlock));
        }
Example #5
0
        public ActionResult Put(Guid id, BlockCreateDto dto)
        {
            var entity = _repository.Update(id, dto);

            return(Ok(entity));
        }
Example #6
0
        public ActionResult PostCoorporate([FromBody] BlockCreateDto dto)
        {
            var entity = _repository.Create(dto);

            return(Ok(entity));
        }