public async Task <IActionResult> AddBlogAsync([FromBody] PostBlogDTO model)
        {
            try
            {
                var post = new PostBlog
                {
                    Name           = model.Name,
                    DateOfCreation = model.DateOfCreation,
                    Plot           = model.Plot
                };
                var userId = caller.Claims.Single(c => c.Type == "id");
                //var customer = await appDbContext.UserInfoes.Include(c => c.Identity).SingleAsync(c => c.Identity.Id == userId.Value);
                var user = await unitOfWork.Users.GetUserByIdentityId(userId.Value);

                var trip = await unitOfWork.Trips.GetTripByIdAsync(model.TripId);

                var isUserCreator = unitOfWork.Trips.IsUserCreator(user.Id, trip.Id);
                if (!isUserCreator)
                {
                    return(Forbid());
                }
                post.Trip = trip;
                unitOfWork.PostBlogs.Add(post);
                logger.LogInfo($"Add some post");
                return(Ok(model));
            }
            catch (Exception ex)
            {
                logger.LogError($"Something went wrong inside AddBlogAsync;{ex.Message}");
                return(StatusCode(500, "Internal Server Error"));
            }
        }
        public async Task <IActionResult> AsyncUpdateBlog(int id, [FromBody] PostBlogDTO model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest());
                }
                var userId = caller.Claims.Single(c => c.Type == "id");
                var user   = await unitOfWork.Users.GetUserByIdentityId(userId.Value);

                var trip          = unitOfWork.Trips.GetTripWithPostBlogs(model.TripId);
                var isUserCreator = unitOfWork.Trips.IsUserCreator(user.Id, trip.Id);
                if (!isUserCreator)
                {
                    return(Forbid());
                }
                var post = await unitOfWork.PostBlogs.GetPostBlogByIdAsync(id);

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

                post.Name = model.Name;
                post.Plot = model.Plot;

                unitOfWork.PostBlogs.Update(post);
                logger.LogInfo($"Post{id} - {model.Name} updated ");
                return(Ok(post));
            }
            catch (Exception ex)
            {
                logger.LogError($"Something went wrong inside AsyncUpdateBlog;{ex.Message}");
                return(StatusCode(500, "Internal Server Error"));
            }
        }