コード例 #1
0
        public ActionResult Checkout()
        {
            Users          u         = service.GetUsers().Where(x => x.Id == int.Parse(_httpContextAccessor.HttpContext.Request.Cookies["userCookie"])).FirstOrDefault();
            Carts          c         = service.GetCartByUserId(u.Id);
            List <Burgers> cartItems = service.GetItemsInCart(c.Id);

            CheckoutViewModel cvm = new CheckoutViewModel();

            try
            {
                foreach (Burgers b in cartItems)
                {
                    Burgers original = service.GetProducts().Where(x => x.IdCart == -1 && x.Name == b.Name).FirstOrDefault();
                    original.Number = original.Number - b.Number;
                    service.UpdateBurgerInfo(original);
                    service.DeleteBurger(b);
                }

                cvm.message    = "Thanks for buying at GoodBurger !";
                cvm.Colorstate = "green";
                cvm.cartItems  = cartItems;
            }
            catch
            {
                cvm.message    = "Oops ! Something went wrong, try later";
                cvm.Colorstate = "red";
            }
            return(View(cvm));
        }
コード例 #2
0
        public ActionResult DeleteCartItem(string id)
        {
            Burgers burger = service.GetProducts().Where(x => x.Id == int.Parse(id)).FirstOrDefault();

            CartValidViewModel cvvm = new CartValidViewModel
            {
                Cities      = burger.Cities,
                Components  = burger.Components,
                Description = burger.Description,
                Id          = burger.Id,
                IdCart      = burger.IdCart,
                Name        = burger.Name,
                Number      = burger.Number,
                Picture     = burger.Picture,
                Price       = burger.Price,
                Type        = burger.Type,
            };
            bool error = service.DeleteBurger(burger);

            if (!error)
            {
                cvvm.message    = "Oops, something broke, try again later !";
                cvvm.Colorstate = "red";
            }
            else
            {
                cvvm.message    = cvvm.Name + " deleted successfully from cart";
                cvvm.Colorstate = "green";
            }

            return(View("CartInfo", cvvm));
        }
コード例 #3
0
    private static void burgers_viscous_time_exact1_test01()

    //****************************************************************************80
    //.
    //  Purpose:
    //
    //    BURGERS_VISCOUS_TIME_EXACT1_TEST01 tests sets up a small test case.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    18 November 2011
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        const string filename = "burgers_solution_test01.txt";
        const int    vtn      = 11;
        const int    vxn      = 11;

        double nu = 0.01 / Math.PI;

        Console.WriteLine("");
        Console.WriteLine("BURGERS_VISCOUS_TIME_EXACT1_TEST01");
        Console.WriteLine("  BURGERS_VISCOUS_TIME_EXACT1 evaluates solution #1");
        Console.WriteLine("  to the Burgers equation.");
        Console.WriteLine("");
        Console.WriteLine("  Viscosity NU = " + nu + "");
        Console.WriteLine("  NX = " + vxn + "");
        Console.WriteLine("  NT = " + vtn + "");

        const double xlo = -1.0;
        const double xhi = +1.0;

        double[] vx = typeMethods.r8vec_even_new(vxn, xlo, xhi);
        typeMethods.r8vec_print(vxn, vx, "  X grid points:");

        const double tlo = 0.0;
        const double thi = 3.0 / Math.PI;

        double[] vt = typeMethods.r8vec_even_new(vtn, tlo, thi);
        typeMethods.r8vec_print(vtn, vt, "  T grid points:");

        double[] vu = Burgers.burgers_viscous_time_exact1(nu, vxn, vx, vtn, vt);

        typeMethods.r8mat_print(vxn, vtn, vu, "  U(X,T) at grid points:");

        typeMethods.r8mat_write(filename, vxn, vtn, vu);

        Console.WriteLine("");
        Console.WriteLine("  Data written to file \"" + filename + "\".");
    }
コード例 #4
0
        public void DeleteBurgerAsync()
        {
            var request = new HttpRequestMessage(HttpMethod.Delete, $"api/burgers");

            request.Content = new StringContent(JsonConvert.SerializeObject(BurgerDeleteItem), Encoding.UTF8, "application/json");
            var response = this.client.SendAsync(request).Result;

            Burgers.Remove(this.BurgerDeleteItem);
        }
コード例 #5
0
    private static void burgers_viscous_time_exact2_test02()

    //****************************************************************************80
    //
    //  Purpose:
    //
    //    BURGERS_VISCOUS_TIME_EXACT2_TEST02 tests sets up a finer test case.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    26 September 2015
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        const string filename = "burgers_solution_test04.txt";
        const int    vtn      = 41;
        const int    vxn      = 41;

        const double nu = 0.5;

        Console.WriteLine("");
        Console.WriteLine("BURGERS_VISCOUS_TIME_EXACT2_TEST02");
        Console.WriteLine("  BURGERS_VISCOUS_TIME_EXACT2 evaluates solution #2");
        Console.WriteLine("  to the Burgers equation.");
        Console.WriteLine("");
        Console.WriteLine("  Viscosity NU = " + nu + "");
        Console.WriteLine("  NX = " + vxn + "");
        Console.WriteLine("  NT = " + vtn + "");

        const double xlo = 0.0;
        const double xhi = 2.0 * Math.PI;

        double[] vx = typeMethods.r8vec_even_new(vxn, xlo, xhi);
        typeMethods.r8vec_print(vxn, vx, "  X grid points:");

        const double tlo = 0.0;
        const double thi = 1.0;

        double[] vt = typeMethods.r8vec_even_new(vtn, tlo, thi);
        typeMethods.r8vec_print(vtn, vt, "  T grid points:");

        double[] vu = Burgers.burgers_viscous_time_exact2(nu, vxn, vx, vtn, vt);

        typeMethods.r8mat_write(filename, vxn, vtn, vu);

        Console.WriteLine("");
        Console.WriteLine("  Data written to file \"" + filename + "\".");
    }
コード例 #6
0
 public bool AddProductToBasket(Burgers b)
 {
     using (var db = new GoodBurgerEntitiesContext())
     {
         try
         {
             db.Burger.Add(b);
             db.SaveChanges();
             return(true);
         }
         catch
         {
             return(false);
         }
     }
 }
コード例 #7
0
 public ActionResult <Burger> Get(string id)
 {
     try
     {
         Burger found = Burgers.Find(burger => burger.Id == id);
         if (found == null)
         {
             return(BadRequest("No burger with that Id."));
         }
         return(Ok(found));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
コード例 #8
0
 public bool DeleteBurger(Burgers b)
 {
     using (var db = new GoodBurgerEntitiesContext())
     {
         try
         {
             db.Burger.Remove(b);
             db.SaveChanges();
             return(true);
         }
         catch
         {
             return(false);
         }
     }
 }
コード例 #9
0
 public IActionResult Create([FromBody] Burgers burguer)
 {
     try
     {
         if (ModelState.IsValid)
         {
             unitOfWork.Burguer.Insert(burguer);
             unitOfWork.Save();
             return(Created("HamburgerApp/Create", burguer));
         }
     }
     catch (DataException ex)
     {
         return(BadRequest(ex));
     }
     return(BadRequest(burguer));
 }
コード例 #10
0
        public async Task AddBurgerAsync()
        {
            var burger = new Burger
            {
                Name       = AddName,
                Price      = AddPrice,
                Content    = AddContent,
                Restaurant = username
            };

            var response = await client.PostAsJsonAsync($"api/burgers", burger);

            if (response.IsSuccessStatusCode)
            {
                Burgers.Add(burger);
            }
        }
コード例 #11
0
        public ActionResult Delete(string id)
        {
            try
            {
                Burger found = Burgers.Find(Burger => Burger.Id == id);
                if (found == null)
                {
                    return(BadRequest(new { message = "Bad Id" }));
                }
                Burgers.Remove(found);
                return(Ok(new { message = "Deleted" }));
            }

            catch (Exception e)
            {
                return(BadRequest(e));
            }
        }
コード例 #12
0
ファイル: MenuService.cs プロジェクト: TimDohmen/Interfaces
        public void Setup()
        {
            Burger burgerOne = new Burger("Biggest Baddest Burger", 5000, 250, 25, 500, "Ground Angus", 27.96, new List <string>()
            {
                "Bacon", "More Bacon", "Some Eggs"
            }, 3);
            Burger burgerTwo = new Burger("V-Burg", 650, 15, 35, 100, "Impossible Patty", 16.95, new List <string>()
            {
                "V-Cheese", "Tomato", "Lettuce"
            }, 2);
            Burger burgerThree = new Burger("Cowboys Last Ride", 777, 20, 70, 50, "Minecraft Horse Meat", 19.20, new List <string>()
            {
                "Freshly Ground Creeper", "Arrow Shot From Skeleton", "Blaze Rod Powder"
            }, 3);

            Burgers.AddRange(new FoodItem[] { burgerOne, burgerTwo, burgerThree });
            Milkshake shakeone   = new Milkshake("Chocolate", "Malt", "Chocolate Thundas Protein Shake", 200, 10, 50, 00, 9.99, 1);
            Milkshake shaketwo   = new Milkshake("Vanilla", "Classic Shake", "Vanilla Willy's Olde Fashioned", 200, 50, 5, 100, 12.15, 2);
            Milkshake shakeThree = new Milkshake("Strawberry", "Float", "Strawberry Sink or Float", 350, 25, 5, 0, 7.99, 2);

            Shakes.AddRange(new FoodItem[] { shakeone, shaketwo, shakeThree });
            Fries fryOne   = new Fries("Sweet Potato", "Criss-Cut", "Sweeties Sweet Potato Frydish", 750, 300, 20, 200, 8.75, 3);
            Fries fryTwo   = new Fries("Golden Russett", "Classic French", "Golden Frenchies", 400, 95, 10, 100, 5.95, 1);
            Fries fryThree = new Fries("Purple Potato", "Tater Tot", "Purple Power Balls", 450, 75, 17, 20, 12.39, 2);

            Fries.AddRange(new FoodItem[] { fryOne, fryTwo, fryThree });
            FrontDeskPie pieOne   = new FrontDeskPie("Hostess", 125, 9, 5, 25, 7.25, "Chocolate Sunrise", true);
            FrontDeskPie pieTwo   = new FrontDeskPie("Grandma", 200, 0, 20, 50, 12.12, "Mostly Love But Some Rhubarb Crisp", false);
            FrontDeskPie pieThree = new FrontDeskPie("Neighbor Joe", 150, 5, 10, 40, 10.99, "Mystery", true);

            Pies.AddRange(new FoodMerch[] { pieOne, pieTwo, pieThree });
            Food = Burgers;

            Messages.Add($@"
 _                                   _                _    
| |                                 | |              | |   
| |__  _   _ _ __ __ _  ___ _ __ ___| |__   __ _  ___| | __
| '_ \| | | | '__/ _` |/ _ \ '__/ __| '_ \ / _` |/ __| |/ /
| |_) | |_| | | | (_| |  __/ |  \__ \ | | | (_| | (__|   < 
|_.__/ \__,_|_|  \__, |\___|_|  |___/_| |_|\__,_|\___|_|\_\
                  __/ |                                    
                 |___/           ");
            Messages.Add("\nBurgers Available\n");
        }
コード例 #13
0
 public override IBurger MakeBurger(Burgers burger)
 {
     if (burger == Burgers.Rodeo)
     {
         return(new Rodeo());
     }
     if (burger == Burgers.Whopper)
     {
         return(new Whopper());
     }
     if (burger == Burgers.Stacker)
     {
         return(new Stacker());
     }
     if (burger == Burgers.Steakhouse)
     {
         return(new Steakhouse());
     }
     return(new Whopper());
 }
コード例 #14
0
 public IActionResult UpdateUser([FromBody] Burgers burguer)
 {
     try
     {
         if (ModelState.IsValid)
         {
             unitOfWork.Burguer.Update(burguer);
             unitOfWork.Save();
             return(Ok());
         }
         else
         {
             return(BadRequest());
         }
     }
     catch (DataException ex)
     {
         return(BadRequest(ex));
     }
 }
コード例 #15
0
        //NOTE Method called StartUp which creates our data
        public void StartUp()
        {
            //NOTE Adding Ingredients to the list
            Ingredients.Add("Lettuce");
            Ingredients.Add("Tomato");
            Ingredients.Add("Pickles");
            Ingredients.Add("Mayo");

            //NOTE Creating burgers
            Burger cheeseBurger      = new Burger("Cheeze Burger", 2000, 50, 1000, 250, "Beef", 10.00, Ingredients);
            Burger baconCheeseBurger = new Burger("Bacon Cheeze Burger", 2500, 55, 1500, 125, "Beef", 11.00, Ingredients);
            Burger bisonBurger       = new Burger("Bison Burger", 1500, 15, 1750, 100, "Bison", 15.00, Ingredients);

            //NOTE Creating Hotdogs
            HotDog frank = new HotDog("Good ol Frank", 200, 15, 25, 15, 3.25);

            //NOTE adding burgers to the burger list
            Burgers.AddRange(new Burger[] { cheeseBurger, baconCheeseBurger, bisonBurger });
            //NOTE adding hotdos to the hotdog list
            HotDogs.AddRange(new HotDog[] { frank });
        }
コード例 #16
0
        public static bool menu_burger(Cart order)
        {
            bool exit = false;

            while (exit == false)
            {
                cart_view(order);

                Console.WriteLine("Burger Menu");
                Console.WriteLine("\n1. Cheeseburger\t\tR20\n2. Baconburger\t\tR25\n3. Chickenburger\tR10\n0. Back");
                int     option = int.Parse(Console.ReadLine());
                Burgers choice = (Burgers)option;
                switch (choice)
                {
                case Burgers.Cheeseburger:
                    cart_add(order, "Cheeseburger", 20);
                    break;

                case Burgers.Baconburger:
                    cart_add(order, "Baconburger", 25);
                    break;

                case Burgers.Chickenburger:
                    cart_add(order, "Chickenburger", 10);
                    break;

                case Burgers.Back:
                    exit = true;
                    break;

                default:
                    Console.WriteLine("Invaild entry");
                    Console.ReadKey();
                    break;
                }
            }

            return(exit);
        }
コード例 #17
0
 public bool UpdateBurgerInfo(Burgers burger)
 {
     using (var db = new GoodBurgerEntitiesContext())
     {
         try
         {
             Burgers b = db.Burger.Where(x => x.Id == burger.Id).FirstOrDefault();
             b.Children    = burger.Children;
             b.Cities      = burger.Cities;
             b.Components  = burger.Components;
             b.Description = burger.Description;
             b.Number      = burger.Number;
             b.Picture     = burger.Picture;
             b.Price       = burger.Price;
             db.SaveChanges();
             return(true);
         }
         catch
         {
             return(false);
         }
     }
 }
コード例 #18
0
 public ActionResult <IEnumerable <Burger> > Post([FromBody] Burger newBurger)
 {
     Burgers.Add(newBurger);
     return(Ok(Burgers));
 }
コード例 #19
0
    private static void uvwp_burgers_test()

    //****************************************************************************80
    //
    //  Purpose:
    //
    //    UVWP_BURGERS_TEST tests UVWP_BURGERS.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    30 July 2015
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        const double nu = 0.25;

        Console.WriteLine("");
        Console.WriteLine("UVWP_BURGERS_TEST");
        Console.WriteLine("  UVWP_BURGERS evaluates the Burgers solution.");
        Console.WriteLine("  Estimate the range of velocity and pressure");
        Console.WriteLine("  at the initial time T = 0, in a region that is the");
        Console.WriteLine("  cube centered at (0,0,0) with 'radius' 1.0.");
        Console.WriteLine("  Viscosity = " + nu + "");

        const int n = 1000;

        double[] p = new double[n];
        double[] u = new double[n];
        double[] v = new double[n];
        double[] w = new double[n];

        const double xyz_lo = -1.0;
        const double xyz_hi = +1.0;
        int          seed   = 123456789;

        double[] x = UniformRNG.r8vec_uniform_ab_new(n, xyz_lo, xyz_hi, ref seed);
        double[] y = UniformRNG.r8vec_uniform_ab_new(n, xyz_lo, xyz_hi, ref seed);
        double[] z = UniformRNG.r8vec_uniform_ab_new(n, xyz_lo, xyz_hi, ref seed);
        double[] t = typeMethods.r8vec_zeros_new(n);

        Burgers.uvwp_burgers(nu, n, x, y, z, t, ref u, ref v, ref w, ref p);

        Console.WriteLine("");
        Console.WriteLine("           Minimum       Maximum");
        Console.WriteLine("");
        Console.WriteLine("  U:  "
                          + "  " + typeMethods.r8vec_amin(n, u).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, u).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        Console.WriteLine("  V:  "
                          + "  " + typeMethods.r8vec_amin(n, v).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, v).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        Console.WriteLine("  W:  "
                          + "  " + typeMethods.r8vec_amin(n, w).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, w).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        Console.WriteLine("  P:  "
                          + "  " + typeMethods.r8vec_amin(n, p).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, p).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
    }
コード例 #20
0
        public IActionResult Items(string stock, string itemid, string productnb)
        {
            if (productnb == null)
            {
                productnb = "1";
            }
            Burgers            burger = service.GetProducts().Where(x => x.Id == int.Parse(itemid)).FirstOrDefault();
            CartValidViewModel cvvm   = new CartValidViewModel
            {
                Cities      = burger.Cities,
                Components  = burger.Components,
                Description = burger.Description,
                HowMany     = int.Parse(productnb),
                Id          = burger.Id,
                IdCart      = burger.IdCart,
                Name        = burger.Name,
                Number      = burger.Number,
                Picture     = burger.Picture,
                Price       = burger.Price,
                Type        = burger.Type,
                Stock       = int.Parse(stock)
            };

            if (int.Parse(productnb) > int.Parse(stock))
            {
                cvvm.message    = "Oops, we are short on stock for this object !";
                cvvm.Colorstate = "red";
            }
            else
            {
                Burgers b = new Burgers
                {
                    Name       = burger.Name,
                    Price      = burger.Price,
                    Children   = burger.Children,
                    Components = burger.Components,

                    Number      = int.Parse(productnb),
                    Picture     = burger.Picture,
                    Cities      = burger.Cities,
                    Description = burger.Description,
                    Type        = burger.Type
                };
                string temp = _httpContextAccessor.HttpContext.Request.Cookies["sessionCookie"];
                if (temp == null || temp == "")
                {
                    CookieOptions session = new CookieOptions
                    {
                        Expires = DateTime.Now.AddDays(1)
                    };
                    Carts c = service.GetCartByUserId(GetCurrentUser().Id);
                    _httpContextAccessor.HttpContext.Response.Cookies.Append("sessionCookie", c.Guid, session);
                    b.IdCart = c.Id;
                }
                else
                {
                    b.IdCart = service.GetCartIdByGuid(temp);
                }

                bool error = service.AddProductToBasket(b);

                //+ add to cart (or create new cart)
                //+save to db +cart saved to db if new cart
                if (error)
                {
                    cvvm.message    = "Oops, something broke, try again later !";
                    cvvm.Colorstate = "red";
                }
                if (cvvm.HowMany == 1)
                {
                    cvvm.message    = "Item added to cart";
                    cvvm.Colorstate = "green";
                }
                else if (cvvm.HowMany == 0)
                {
                    cvvm.message = "No items added to cart";
                }
                else
                {
                    cvvm.message    = "Items added to cart";
                    cvvm.Colorstate = "green";
                }
            }

            return(View("CartInfo", cvvm));
        }
コード例 #21
0
 public abstract IBurger MakeBurger(Burgers burger);
コード例 #22
0
        public App()
        {
            InitializeComponent();

            MainPage = new Burgers();
        }
コード例 #23
0
    private static void resid_burgers_test()

    //****************************************************************************80
    //
    //  Purpose:
    //
    //    RESID_BURGERS_TEST tests RESID_BURGERS.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    30 July 2015
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        const double nu = 0.25;

        Console.WriteLine("");
        Console.WriteLine("RESID_BURGERS_TEST");
        Console.WriteLine("  RESID_BURGERS evaluates the Burgers residual.");
        Console.WriteLine("  Sample the Navier-Stokes residuals");
        Console.WriteLine("  at the initial time T = 0, using a region that is");
        Console.WriteLine("  the cube centered at (0,0,0) with 'radius' 1.0,");
        Console.WriteLine("  Viscosity = " + nu + "");

        const int n = 1000;

        double[] pr = new double[n];
        double[] ur = new double[n];
        double[] vr = new double[n];
        double[] wr = new double[n];

        const double xyz_lo = -1.0;
        const double xyz_hi = +1.0;
        int          seed   = 123456789;

        double[] x = UniformRNG.r8vec_uniform_ab_new(n, xyz_lo, xyz_hi, ref seed);
        double[] y = UniformRNG.r8vec_uniform_ab_new(n, xyz_lo, xyz_hi, ref seed);
        double[] z = UniformRNG.r8vec_uniform_ab_new(n, xyz_lo, xyz_hi, ref seed);
        double[] t = typeMethods.r8vec_zeros_new(n);

        Burgers.resid_burgers(nu, n, x, y, z, t, ref ur, ref vr, ref wr, ref pr);

        Console.WriteLine("");
        Console.WriteLine("           Minimum       Maximum");
        Console.WriteLine("");
        Console.WriteLine("  Ur:  "
                          + "  " + typeMethods.r8vec_amin(n, ur).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, ur).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        Console.WriteLine("  Vr:  "
                          + "  " + typeMethods.r8vec_amin(n, vr).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, vr).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        Console.WriteLine("  Wr:  "
                          + "  " + typeMethods.r8vec_amin(n, wr).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, wr).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        Console.WriteLine("  Pr:  "
                          + "  " + typeMethods.r8vec_amin(n, pr).ToString(CultureInfo.InvariantCulture).PadLeft(14)
                          + "  " + typeMethods.r8vec_amax(n, pr).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
    }