Ejemplo n.º 1
0
 public IHttpActionResult Create(DishReviewEditModel model)
 {
     return(Command <CreateDishReviewCommand>(
                cmd =>
     {
         cmd.Model = model;
     },
                cmd => Ok(cmd.Model.Id)));
 }
Ejemplo n.º 2
0
        public void Create(DishReviewEditModel model)
        {
            int dishId  = model.DishId ?? 0;
            int placeId = placeService.GetPlaceId(model.Place);

            placeTypeService.CreatePlaceTypesForPlace(placeId, model.Place.GTypes);

            if (!model.DishId.HasValue)
            {
                var newDish = new Dish
                {
                    CreatedByUserId = UserHelper.GetCurrentUserId(),
                    CreatedDateTime = DateTime.Now,
                    Name            = model.DishName,
                    IsConfirmed     = false,
                    IsValid         = true
                };

                dishRepository.Insert(newDish);

                dishId = newDish.Id;
            }

            int?imageId = null;

            if (!string.IsNullOrEmpty(model.ImageUri))
            {
                imageId = imageService.CreateImage(model.ImageUri);
            }

            var review = new Review
            {
                CreatedByUserId = UserHelper.GetCurrentUserId(),
                CreatedDateTime = DateTime.Now,
                Text            = model.Review,
                PlaceId         = placeId,
                IsValid         = true,
                Rating          = model.Rating,
                ImageId         = imageId
            };

            reviewRepository.Insert(review);

            var dishReview = new DishReview
            {
                DishId   = dishId,
                ReviewId = review.Id
            };

            dishService.CreateDishTags(model.TagIdList, dishId);

            dishReviewRepository.Insert(dishReview);
        }
Ejemplo n.º 3
0
        public DishReviewEditModel Get(int id)
        {
            var dishReview = dishReviewRepository.Get(id);

            var model = new DishReviewEditModel
            {
                Id       = dishReview.Id,
                DishId   = dishReview.DishId,
                DishName = dishReview.Dish.Name,
                Review   = dishReview.Review.Text,
                Rating   = dishReview.Review.Rating,
                Tags     = dishReview.Dish.DishTag.Select(x => new TagEditModel
                {
                    Id   = x.TagId,
                    Name = x.Tag.Name
                }).ToArray()
            };

            return(model);
        }