Example #1
0
        // GET: Order/Edit/{id} aka Update
        public ActionResult Edit(int id)
        {
            var service = CreateOrderService();
            var detail  = service.GetOrderById(id);

            // Trying this
            ViewBag.MenuItemId = CallMenuIdList(detail);

            //var menuItems = new SelectList(_db.MenuItems.ToList(), "MenuItemId", "Name"); Works, but trying something
            //ViewBag.MenuItems = menuItems;

            var model =
                new OrderEdit
            {
                FirstName   = detail.FirstName,
                LastName    = detail.LastName,
                OrderId     = detail.OrderId,
                TypeOfOrder = detail.TypeOfOrder,
                MenuItemId  = detail.MenuItemId,
                Quantity    = detail.Quantity,
                Notes       = detail.Notes
            };

            return(View(model));
        }
        public HalClientTestContext()
        {
            _fixture = new Fixture().Customize(new AutoRhinoMockCustomization());

            _http = _fixture.Freeze <IJsonHttpClient>();

            _version   = _fixture.Create <Version>();
            _order     = _fixture.Build <Order>().With(x => x.DeliveryDate, null).Create();
            _orderItem = _fixture.Create <OrderItem>();
            _paged     = _fixture.Create <PagedList>();
            OrderAdd   = _fixture.Create <OrderAdd>();
            OrderEdit  = _fixture.Create <OrderEdit>();
            _resourceWithJsonAttribute = _fixture.Create <ResourceWithJsonAttribute>();

            _sut = new HalClient(_http);

            _curies =
                new[]
            {
                new
                {
                    href      = "https://retail.com/v1/docs/{rel}",
                    name      = Curie,
                    templated = true
                }
            };
            _hasCurie = true;
        }
        // GET: Admin/Orders/Edit/{id}
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var order = await _orderService.GetOrderByIdAsync(id);

            if (order == null)
            {
                return(HttpNotFound());
            }

            var model =
                new OrderEdit()
            {
                OrderId    = order.OrderId,
                Username   = order.Username,
                FirstName  = order.FirstName,
                LastName   = order.LastName,
                Address    = order.Address,
                City       = order.City,
                State      = order.State,
                PostalCode = order.PostalCode,
                Country    = order.Country,
                Phone      = order.Phone,
                Email      = order.Email,
                Total      = order.Total,
                OrderDate  = order.OrderDate
            };

            return(View(model));
        }
        public async Task <ActionResult> Edit(int id)
        {
            ViewBag.SyncOrAsync = "Asynchronous";
            ViewBag.CustomerId  = await GetCustomerAsync();

            ViewBag.RestaurantId = await GetRestaurantAsync();

            ViewBag.DriverId = await GetDriverAsync();

            ViewBag.MenuId = await GetMenuAsync();

            var service = CreateOrderService();
            var detail  = await service.GetOrderByIdAsync(id);

            var model =
                new OrderEdit
            {
                OrderId = detail.OrderId,
                //Menu = detail.Menu,
                //Price = detail.Price,
                DeliveryCharge      = detail.DeliveryCharge,
                CustomerName        = detail.CustomerName,
                RestaurantName      = detail.RestaurantName,
                RestaurantLatitude  = detail.RestaurantLatitude,
                RestaurantLongitude = detail.RestaurantLongitude,
                CustomerLatitude    = detail.CustomerLatitude,
                CustomerLongitude   = detail.CustomerLongitude,
                DriverLatitude      = detail.DriverLatitude,
                DriverLongitude     = detail.DriverLongitude
            };

            //ViewBag.CategoryID = await GetOrdersAsync();

            return(View(model));
        }
        private void UpdateBuyer(OrderEdit order, OrderEntity orderEntity)
        {
            // Get Buyer Information of this order
            BuyerEntity buyerEntity = _dbContext.Buyers.SingleOrDefault(buyer => buyer.Id == orderEntity.BuyerId);

            // Update Buyer Information
            buyerEntity.FirstName = order.Buyer.FirstName;
            buyerEntity.LastName  = order.Buyer.LastName;
            buyerEntity.Email     = order.Buyer.Email;
            buyerEntity.Phone     = order.Buyer.Phone;

            // Get Shipping Information of this order
            ShippingAddressEntity shippingAddressEntity = _dbContext.ShippingAddresses
                                                          .SingleOrDefault
                                                              (shippingAddress => shippingAddress.Id == orderEntity.ShippingAddressId);

            // Update Shipping Address
            shippingAddressEntity.AddressLine1 = order.ShippingAddress.AddressLine1;
            shippingAddressEntity.AddressLine2 = order.ShippingAddress.AddressLine2;
            shippingAddressEntity.City         = order.ShippingAddress.City;
            shippingAddressEntity.State        = order.ShippingAddress.State;
            shippingAddressEntity.Zip          = order.ShippingAddress.Zip;

            _dbContext.SaveChanges();
        }
        public bool UpdateOrder(OrderEdit model)
        {
            using (var dbContext = new ApplicationDbContext())
            {
                if (user.TypeUser == POSUser.UserTypes.Manager)
                {
                    // If user is a manager they can update any requested order
                    var entity = dbContext.OrderTable
                                 .Single(x => x.OrderId == model.OrderId);

                    entity.Pizzas            = model.Pizzas;
                    entity.Delivery          = model.Delivery;
                    entity.Pending           = model.Pending;
                    entity.Price             = model.Price;
                    entity.ModifiedOrderTime = DateTimeOffset.Now;

                    return(dbContext.SaveChanges() == 1);
                }
                else
                {
                    // If user is a customer or employee they can only update a requested order they took
                    var entity = dbContext.OrderTable
                                 .Single(x => x.OrderId == model.OrderId && x.UserId == _userId);

                    entity.Pizzas            = model.Pizzas;
                    entity.Delivery          = model.Delivery;
                    entity.Pending           = model.Pending;
                    entity.Price             = model.Price;
                    entity.ModifiedOrderTime = DateTimeOffset.Now;

                    return(dbContext.SaveChanges() == 1);
                }
            }
        }
Example #7
0
        public async Task <bool> UpdateOrderAsync(OrderEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    await ctx
                    .Orders
                    .Where(p => p.OrderId == model.OrderId)
                    .FirstOrDefaultAsync();

                entity.Username   = model.Username;
                entity.FirstName  = model.FirstName;
                entity.LastName   = model.LastName;
                entity.Address    = model.Address;
                entity.City       = model.City;
                entity.State      = model.State;
                entity.PostalCode = model.PostalCode;
                entity.Country    = model.Country;
                entity.Phone      = model.Phone;
                entity.Email      = model.Email;
                entity.Total      = model.Total;
                entity.OrderDate  = model.OrderDate;

                return(await ctx.SaveChangesAsync() == 1);
            }
        }
Example #8
0
 private void button_Click(object sender, EventArgs e)
 {
     if (!dataGridView4.SelectedRows[0].IsNewRow)
     {
         Form editForm = new OrderEdit(ConnectionToMySQL, this, dataGridView4.SelectedRows[0].Cells[0].Value.ToString());
         this.Visible = false;
         editForm.Show();
     }
 }
        private void Order_Edit_Click(object sender, RoutedEventArgs e)
        {
            Order     order = ListofItemOrder.SelectedItem as Order;
            OrderEdit edit  = new OrderEdit(order);

            edit.ShowDialog();

            DbAccessorService.updateOrder(order);
        }
Example #10
0
        public IActionResult Edit([FromBody] OrderEdit orderEdit)
        {
            Response <Order> response = new Response <Order>();

            Order order = _orderRepository.UpdateOrder(orderEdit.ToOrder());

            response.Data = order;

            return(Ok(response));
        }
Example #11
0
        public void Update([FromBody] OrderEdit order)
        {
            if (!ModelState.IsValid)
            {
                throw new ModelStateException(ModelState.Values.SelectMany(v => v.Errors));
            }

            // Exceptions are handled by Golbal Filter, Please check the ExceptionHandler class
            using (var service = GetService <IOrderEdit>())
            {
                service.Update(order);
            }
        }
Example #12
0
        public IHttpActionResult Put(OrderEdit order)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var service = CreateOrderService();

            if (!service.UpdateOrder(order))
            {
                return(InternalServerError());
            }
            return(Ok());
        }
Example #13
0
        public ActionResult Edit(int id)
        {
            var service = CreateTransactionService();
            var detail  = service.GetTransactionById(id);
            var model   =
                new OrderEdit
            {
                OrderId    = detail.OrderId,
                CustomerId = detail.CustomerId,
                BoardId    = detail.BoardId
            };

            return(View(model));
        }
Example #14
0
 public bool UpdateOrder(OrderEdit model)
 {
     using (var ctx = new ApplicationDbContext())
     {
         var entity = ctx
                      .Orders
                      .Single(e => e.OrderId == model.OrderId && e.OwnerId == _userId);
         entity.OrderId    = model.OrderId;
         entity.Comments   = model.Comments;
         entity.MenuItemId = model.MenuItemId;
         entity.CustomerId = model.CustomerId;
         return(ctx.SaveChanges() == 1);
     }
 }
        public async Task <ActionResult> Edit(int id, OrderEdit model)
        {
            if (ModelState.IsValid)
            {
                if (await _orderService.UpdateOrderAsync(model))
                {
                    TempData["SaveResult"] = "Your order was updated.";
                    return(RedirectToAction("Index"));
                }
            }

            ModelState.AddModelError("", "Your order could not be updated.");

            return(View(model));
        }
Example #16
0
        // PUT
        public bool UpdateOrder(OrderEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .Orders
                    .Single(e => e.OrderId == model.OrderId);
                entity.CustomerId = model.CustomerId;
                entity.ShopId     = model.ShopId;
                entity.TotalPrice = model.TotalPrice;


                return(ctx.SaveChanges() == 1);
            }
        }
Example #17
0
        public bool UpdateTransaction(OrderEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .Orders
                    .Single(e => e.OrderId == model.OrderId);

                entity.CustomerId = model.CustomerId;
                entity.BoardId    = model.BoardId;



                return(ctx.SaveChanges() == 1);
            }
        }
        public ActionResult Edit(int id)
        {
            var service = CreateOrderService();
            var detail  = service.GetOrderById(id);
            var model   =
                new OrderEdit
            {
                OrderId    = detail.OrderId,
                CustomerId = detail.CustomerId,
                ProductId  = detail.ProductId,
                RepId      = detail.RepId,
                Quantity   = detail.Quantity,
                TotalPrice = detail.TotalPrice
            };

            return(View(model));
        }
Example #19
0
        public bool EditOrder(OrderEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .Orders
                    .Single(e => e.OrderId == model.OrderId && e.UserId == _userId);
                entity.CustomerId   = model.CustomerId;
                entity.ProductId    = model.ProductId;
                entity.RepId        = model.RepId;
                entity.Quantity     = model.Quantity;
                entity.TotalPrice   = model.TotalPrice;
                entity.DeliveryDate = model.DeliveryDate;

                return(ctx.SaveChanges() == 1);
            }
        }
Example #20
0
        public async Task <bool> UpdateOrderAsync(OrderEdit note)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity = await
                             ctx
                             .Orders
                             .Where(e => e.OrderId == note.OrderId)
                             .FirstOrDefaultAsync();


                entity.DeliveryCharge = note.DeliveryCharge;
                entity.CustomerId     = note.CustomerId;
                entity.RestaurantId   = note.RestaurantId;
                entity.DriverId       = note.DriverId;
                return(await ctx.SaveChangesAsync() == 1);
            }
        }
Example #21
0
        //NOTE: Order can ONLY be updated when the order status is not yet dispatched or in draft order status
        public void Update(OrderEdit orderEdit)
        {
            /*Validate*/
            if (orderEdit == null)
            {
                throw new ArgumentNullException(nameof(orderEdit));
            }

            var orderEntity = _dbContext.Orders.SingleOrDefault(o => o.Id == orderEdit.OrderId);

            if (orderEntity == null)
            {
                throw new OrderNotFoundException();
            }

            // Validate data
            var onlyOrderItems = orderEdit.OrderItems.Select(item => item.OrderItem);

            _orderValidator.ValidateAndThrow(new Order {
                Buyer           = orderEdit.Buyer,
                ShippingAddress = orderEdit.ShippingAddress,
                OrderItems      = onlyOrderItems
            });

            /*Ensure products that are ordered must be in stock, check available count*/
            _orderItemsValidator.ValidateItemsAndThrow(onlyOrderItems, _dbContext);

            /*Update Order Object*/
            using (DbContextTransaction transaction = _dbContext.Database.BeginTransaction())
            {
                try
                {
                    UpdateBuyer(orderEdit, orderEntity);
                    //UpdateOrderItems(order, buyerId, shippingAddressId);

                    transaction.Commit();
                }
                catch
                {
                    transaction.Rollback();
                    throw;
                }
            }
        }
Example #22
0
        public bool UpdateCustomer(OrderEdit note)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .Orders
                    .Where(e => e.OrderId == note.OrderId)
                    .FirstOrDefault();
                entity.DeliveryCharge = note.DeliveryCharge;
                entity.CustomerId     = note.CustomerId;
                entity.RestaurantId   = note.RestaurantId;
                entity.DriverId       = note.DriverId;

                //entity.Customer.FirstName = note.CustomerName;

                return(ctx.SaveChanges() == 1);
            }
        }
Example #23
0
        public async Task <ActionResult> Edit(int id)
        {
            var service = CreateOrderService();
            var detail  = await service.GetOrderByIdAsync(id);

            var model =
                new OrderEdit
            {
                OrderId = detail.OrderId,
                //Menu = detail.Menu,
                // Price = detail.Price,
                DeliveryCharge = detail.DeliveryCharge,
                CustomerName   = detail.CustomerName,
                RestaurantName = detail.RestaurantName,
            };

            //ViewBag.CategoryID = await GetOrdersAsync();

            return(View(model));
        }
Example #24
0
        public ActionResult Edit(int id, OrderEdit model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.OrderId != id)
            {
                ModelState.AddModelError("", "Order Id Mismatch");
                return(View(model));
            }

            var service           = CreateOrderService();
            var orderedMenuItemId = model.MenuItemId;

            var item = service.OrderMenuItemDetail(orderedMenuItemId);

            if (item.IsAvailable.Equals(false))
            {
                return(HttpNotFound("Sorry, This Item Is Out Of Order At The Moment. Please Select Something Else."));
            }
            else if (item.ServingsInStock < model.Quantity)
            {
                return(HttpNotFound("Sorry, We Don't Have Enough Of This Item."));
            }
            else
            {
                if (service.UpdateOrder(model))
                {
                    TempData["SaveResult"] = "Your Order Was Updated.";
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ModelState.AddModelError("", "Your Order Could Not Be Updated.");
                    return(View(model));
                }
            }
        }
Example #25
0
        public ActionResult New()
        {
            OrderEdit oe = new OrderEdit();

            oe.Guests = db.Guests.ToList();
            var guestcount = oe.Guests.Count();

            oe.Menus = db.Menus.ToList();
            var menucount = oe.Menus.Count();

            if (guestcount == 0)
            {
                return(RedirectToAction("New", "Guest"));
            }
            else if (menucount == 0)
            {
                return(RedirectToAction("New", "Menu"));
            }
            else
            {
                return(View(oe));
            }
        }
        public async Task <ActionResult> Edit(int id, OrderEdit note)
        {
            if (!ModelState.IsValid)
            {
                return(View(note));
            }
            if (note.OrderId != id)
            {
                ModelState.AddModelError("", "ID Mismatch");
                ViewBag.CustomerId = await GetCustomerAsync();

                ViewBag.RestaurantId = await GetRestaurantAsync();

                ViewBag.DriverId = await GetDriverAsync();

                ViewBag.MenuId = await GetMenuAsync();

                return(View(note));
            }
            var service = CreateOrderService();

            if (await service.UpdateOrderAsync(note))
            {
                TempData["SaveResult"] = "Order successfully updated.";
                return(RedirectToAction("Index"));
            }
            ViewBag.CustomerId = await GetCustomerAsync();

            ViewBag.RestaurantId = await GetRestaurantAsync();

            ViewBag.DriverId = await GetDriverAsync();

            ViewBag.MenuId = await GetMenuAsync();

            ModelState.AddModelError("", "Order could not be updated.");
            return(View(note));
        }
        public ActionResult Edit(int id, OrderEdit model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.OrderId != id)
            {
                ModelState.AddModelError("", "Id Mismatch");
                return(View(model));
            }

            var service = CreateOrderService();

            if (service.EditOrder(model))
            {
                TempData["SaveResult"] = "Order was updated.";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", "Order could not be updated.");
            return(View(model));
        }
Example #28
0
        public async Task <ActionResult> Edit(int id, OrderEdit note)
        {
            if (!ModelState.IsValid)
            {
                return(View(note));
            }
            if (note.OrderId != id)
            {
                ModelState.AddModelError("", "ID Mismatch");
                //ViewBag.CategoryID = await GetOrdersAsync();

                return(View(note));
            }
            var service = CreateOrderService();

            if (await service.UpdateOrderAsync(note))
            {
                TempData["SaveResult"] = "Order was successfully updated.";
                return(RedirectToAction("Index"));
            }
            //ViewBag.CategoryID = await GetOrdersAsync();
            ModelState.AddModelError("", "Order could not be updated.");
            return(View(note));
        }
Example #29
0
        private void UpdateOrderItems(OrderEdit order, OrderEntity orderEntity)
        {
            //*. Get product information in order to store the information that has been viewed by buyer.
            // Get all the data in single call
            var distinctProducts          = order.OrderItems.Select(item => item.OrderItem.ProductId).Distinct().ToArray();
            List <ProductEntity> products = (from product in _dbContext.Products
                                             where distinctProducts.Contains(product.Id) && product.IsActive
                                             select product).ToList();

            // Iterate through each item and add
            foreach (var orderItem in order.OrderItems)
            {
                if (orderItem == null)
                {
                    continue;
                }

                switch (orderItem.State)
                {
                case ObjectState.Add:
                    AddOrderItem(orderEntity, products, orderItem);
                    break;

                case ObjectState.Modify:
                    UpdateOrderItem(orderEntity, products, orderItem);
                    break;

                case ObjectState.Delete:
                    DeleteOrderItem(orderEntity, orderItem);
                    break;
                }
            }

            //*. Save all changes in database
            _dbContext.SaveChanges();
        }
Example #30
0
        protected override void OnViewModelSet()
        {
            base.OnViewModelSet();
            if (ViewModel != null)
            {
                ViewModel.OnViewLoaded();
                ViewModel.SubscribeLifetimeChangedIfNecessary();
            }

            var screenSize = new Point();

            WindowManager.DefaultDisplay.GetSize(screenSize);

            SetContentView(Resource.Layout.View_Home);

            _bigButton = (Button)FindViewById(Resource.Id.BigButtonTransparent);

            _orderOptions           = (OrderOptions)FindViewById(Resource.Id.orderOptions);
            _dropOffSelection       = (DropOffSelection)FindViewById(Resource.Id.dropOffSelection);
            _orderReview            = (OrderReview)FindViewById(Resource.Id.orderReview);
            _orderEdit              = (OrderEdit)FindViewById(Resource.Id.orderEdit);
            _orderAirport           = (OrderAirport)FindViewById(Resource.Id.orderAirport);
            _searchAddress          = (AddressPicker)FindViewById(Resource.Id.searchAddressControl);
            _appBar                 = (AppBar)FindViewById(Resource.Id.appBar);
            _frameLayout            = (FrameLayout)FindViewById(Resource.Id.RelInnerLayout);
            _btnSettings            = FindViewById <LinearLayout>(Resource.Id.btnSettings);
            _btnLocation            = FindViewById <LinearLayout>(Resource.Id.btnLocation);
            _appBarBookingStatus    = FindViewById <AppBarBookingStatus>(Resource.Id.appBarBookingStatus);
            _appBarDropOffSelection = FindViewById <AppBarDropOffSelection>(Resource.Id.appBarDropOffSelection);
            _orderStatus            = FindViewById <OrderStatusView>(Resource.Id.orderStatus);

            // attach big invisible button to the OrderOptions to be able to pass it to the address text box and clear focus when clicking outside
            _orderOptions.BigInvisibleButton     = _bigButton;
            _dropOffSelection.BigInvisibleButton = _bigButton;

            ((ViewGroup.MarginLayoutParams)_orderOptions.LayoutParameters).TopMargin = 0;
            ((ViewGroup.MarginLayoutParams)_orderReview.LayoutParameters).TopMargin  = screenSize.Y;
            ((ViewGroup.MarginLayoutParams)_orderAirport.LayoutParameters).TopMargin = screenSize.Y;

            var orderEditLayout = _orderEdit.GetLayoutParameters();

            var isRightToLeftLanguage = this.Services().Localize.IsRightToLeft;

            _orderEdit.SetLayoutParameters(screenSize.X, orderEditLayout.Height,
                                           isRightToLeftLanguage ? orderEditLayout.LeftMargin : screenSize.X,
                                           isRightToLeftLanguage ? screenSize.X : orderEditLayout.RightMargin,
                                           orderEditLayout.TopMargin, orderEditLayout.BottomMargin, orderEditLayout.Gravity);

            ((ViewGroup.MarginLayoutParams)_orderStatus.LayoutParameters).TopMargin = -screenSize.Y;

            // Creating a view controller for MapFragment
            var mapViewSavedInstanceState = _mainBundle != null?_mainBundle.GetBundle("mapViewSaveState") : null;

            _touchMap = (TouchableMap)FragmentManager.FindFragmentById(Resource.Id.mapPickup);
            _touchMap.OnCreate(mapViewSavedInstanceState);
            MapFragment = new OrderMapFragment(_touchMap, Resources, this.Services().Settings);

            var inputManager = (InputMethodManager)ApplicationContext.GetSystemService(InputMethodService);

            MapFragment.TouchableMap.Surface.Touched += (sender, e) =>
            {
                inputManager.HideSoftInputFromWindow(Window.DecorView.RootView.WindowToken, HideSoftInputFlags.None);
            };

            _orderReview.ScreenSize = screenSize;
            _orderReview.OrderReviewHiddenHeightProvider = () => _frameLayout.Height - _orderOptions.Height;
            _orderReview.OrderReviewShownHeightProvider  = () => _orderOptions.Height;
            _orderEdit.ScreenSize        = screenSize;
            _orderEdit.ParentFrameLayout = _frameLayout;

            _orderAirport.ScreenSize = screenSize;
            _orderAirport.OrderAirportHiddenHeightProvider = () => _frameLayout.Height - _orderOptions.Height;
            _orderAirport.OrderAirportShownHeightProvider  = () => _orderOptions.Height;

            ResumeFromBackgroundIfNecessary();

            SetupHomeViewBinding();

            PanelMenuInit();
        }