Exemplo n.º 1
0
        public async Task<IActionResult> Put(int id, [FromBody] PostViewModel model)
        {
            if (!ModelState.IsValid)
                return Ok(ResponseResult.Faild("Validation Error"));


            var post = await _service.GetPostByIdAsync(id);

            if (post == null)
                return NotFound();

            var userId = User.FindFirst(ClaimTypes.Name)?.Value;

            if (post.User.Id != userId)
                return Ok(ResponseResult.Faild("Not Authorized")) ;

            model.PostAuthor = post.User;
            model.Id = post.Id;
            var mappedPost = _mapper.Map(model,post);
            var result = await _service.UpdatePostAsync(mappedPost);

            if (result)
                return Ok(ResponseResult.SuccessWithMessage("Updated Successfully"));

            return Ok(ResponseResult.Faild("Faild To Update Post"));
        }
Exemplo n.º 2
0
        public async Task<IActionResult> PostAsync([FromBody] PostViewModel model)
        {
            if (!ModelState.IsValid)
                return Ok(ResponseResult.Faild("Validation Error")) ;

            var userId = User.FindFirst(ClaimTypes.Name)?.Value;

            var user = await _userManager.FindByIdAsync(userId);
            model.PostAuthor = user;

            var mappedPost = _mapper.Map<Post>(model);
            var result = await _service.CreatePostAsync(mappedPost);

            if (result)
                return Ok(ResponseResult.SuccessWithMessage("Created Successfully"));

            return Ok(ResponseResult.Faild("Faild To Create Post"));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> RegisterAsync(RegisterViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(Ok(ResponseResult.Faild("ValidationError")));
            }


            var applicationUser = _mapper.Map <ApplicationUser>(model);

            var result = await _service.CreateUserAsync(applicationUser, model.Password);

            if (!result.Succeeded)
            {
                return(Ok(ResponseResult.Faild(result.Errors.FirstOrDefault().Description)));
            }

            return(Ok(ResponseResult.SuccessWithMessage("Registered Successfully")));
        }
Exemplo n.º 4
0
        public async Task<IActionResult> Delete(int id)
        {
            var post = await _service.GetPostByIdAsync(id);

            if (post == null)
                return NotFound();

            var userId = User.FindFirst(ClaimTypes.Name)?.Value;

            if (post.User.Id != userId)
                return Ok(ResponseResult.Faild("Not Authorized"));

            var result = await _service.DeletePostAsync(post);

            if (result)
            {
                return Ok(ResponseResult.SuccessWithMessage("Post Deleted Successfully"));
            }

            return Ok(ResponseResult.Faild("Faild to Delete Post"));

        }