Exemplo n.º 1
0
        public async Task <IActionResult> EditAppetizer([FromBody] AppetizerInfo appetizerInfo)
        {
            string emailAddress = HttpContext.User.Identity.Name;

            var restaurant = await _context.Restaurant
                             .Where(rest => rest.EmailAddress.Equals(emailAddress))
                             .FirstOrDefaultAsync();

            string appetizerName = Request.Headers["appetizerName"];

            Appetizer appetizerToUpdate = await _context.Appetizer
                                          .Where(d => d.Name.Equals(appetizerName))
                                          .FirstOrDefaultAsync();

            appetizerToUpdate.Name         = appetizerInfo.Name;
            appetizerToUpdate.Price        = appetizerInfo.Price;
            appetizerToUpdate.Description  = appetizerInfo.Description;
            appetizerToUpdate.HouseSpecial = appetizerInfo.HouseSpecial;

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(appetizerToUpdate);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    throw;
                }
            }

            HttpContext.Response.StatusCode = 200;
            return(new JsonResult("Appetizer successfully updated"));
        }
Exemplo n.º 2
0
        //[ValidateAntiForgeryToken]
        public async Task <JsonResult> CreateAppetizer([FromBody] AppetizerInfo appetiezerInfo)
        {
            string emailAddress = HttpContext.User.Identity.Name;

            var restaurant = await _context.Restaurant
                             .Where(rest => rest.EmailAddress.Equals(emailAddress))
                             .FirstOrDefaultAsync();

            if (checkAppetizerNameInSameRestaurant(appetiezerInfo.Name, restaurant.Id))
            {
                HttpContext.Response.StatusCode = 400;
                return(new JsonResult("Appetiezer " + appetiezerInfo.Name + " already exists in restaurant"));
            }

            Appetizer newAppetizer = new Appetizer
            {
                Name         = appetiezerInfo.Name,
                Description  = appetiezerInfo.Description,
                Price        = appetiezerInfo.Price,
                HouseSpecial = appetiezerInfo.HouseSpecial
            };

            if (ModelState.IsValid)
            {
                newAppetizer.RestaurantId = restaurant.Id;

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

                //return RedirectToAction(nameof(Index), new { id = id });
            }

            HttpContext.Response.StatusCode = 200;
            return(new JsonResult("Appetizer successfully created"));
        }
Exemplo n.º 3
0
        public async Task <JsonResult> Appetiezers()
        {
            string emailAddress = HttpContext.User.Identity.Name;

            var restaurant = await _context.Restaurant
                             .Where(rest => rest.EmailAddress.Equals(emailAddress))
                             .FirstOrDefaultAsync();

            List <AppetizerInfo> appetiezersToReturn = new List <AppetizerInfo>();

            List <Appetizer> restaurantAppetizers = await _context.Appetizer
                                                    .Where(d => d.RestaurantId == restaurant.Id)
                                                    .ToListAsync();

            foreach (Appetizer appetizer in restaurantAppetizers)
            {
                AppetizerInfo appetizerInfo = new AppetizerInfo(appetizer.Name, appetizer.Price, appetizer.Description, appetizer.HouseSpecial);
                appetiezersToReturn.Add(appetizerInfo);
            }

            return(new JsonResult(appetiezersToReturn));
        }