public ActionResult Pay(PaymentAddressViewModel pymentAddressVM) { if (ModelState.IsValid) { // from orderViewModel to Logic.Order // from Logic.Order to OrderDBModel // from OrderDBModel to Logic.Order // Logic.Order to orderViewModel or simply take the OrderId var order = orderFactory.CreateOrder(); TryUpdateModel(order); order.Username = User.Identity.Name; order.OrderDate = DateTime.Now; var shoppingCartId = cardIdentifier.GetCardId(this.HttpContext); var cart = shoppingCart.GetShoppingCart(shoppingCartId); var orderId = cart.SaveOrder(order); return(RedirectToAction("Complete", new { id = orderId })); } return(View(pymentAddressVM)); }
public static void MyClassInitialize(TestContext testContext) { _container = new UnityContainer(); _container.RegisterInstance <IUnityContainer>(_container); _container.RegisterType <IOrderFactory, OrderFactory>(); _container.RegisterInstance(typeof(Cadastro), "Cliente", new Cadastro()); _container.RegisterInstance(typeof(Cadastro), "Fornecedor", new Cadastro()); _container.RegisterInstance(typeof(Vendedor), "Vendedor", new Vendedor()); IOrderFactory orderFactory = _container.Resolve <IOrderFactory>(); _container.RegisterInstance(typeof(Pedido), "PedidoVenda", orderFactory.CreateOrder(OrderType.SalesOrder)); _container.RegisterInstance(typeof(Pedido), "PedidoCompra", orderFactory.CreateOrder(OrderType.PurchaseOrder)); _container.RegisterInstance <IOrderViewModel>("VM_PedidoVenda", new OrderViewModel(_container, (Pedido)_container.Resolve(typeof(Pedido), "PedidoVenda"))); _container.RegisterInstance <IOrderViewModel>("VM_PedidoCompra", new OrderViewModel(_container, (Pedido)_container.Resolve(typeof(Pedido), "PedidoCompra"))); }
public async Task <IActionResult> PostOrder([FromBody] string message) { var order = factory.CreateOrder(message); var result = await orderManagerClient.SendOrderAsync(order); var okResult = new OkObjectResult(result); return(okResult); }
private async Task <Order> GetOrderAsync(CreateOrderCommand request) { var customerId = await GetCustomerIdAsync(request); var products = await GetProductsAsync(request); var orderItems = CreateOrderItems(request, products); var isPromotion = _applicationContext.IsPromotionDay; return(_orderFactory.CreateOrder(customerId, orderItems)); }
public OrderPaymentSummary PlaceOrder(OrderDto orderDto, Guid customerId) { var customerOrders = customerOrdersRepository.GetByCustomerId(customerId); if (customerOrders == null) { return(OrderPaymentSummary.NoCustoemrFound); } customerOrders.PlaceOrder(orderFactory.CreateOrder(orderDto), pointsCalculator, discountCalculator); customerOrdersRepository.Save(customerOrders); unitOfWork.Commit(); return(OrderPaymentSummary.FromCustomerOrders(customerOrders)); }
public void HandleBatch(int batchSize) { for (int i = 0; i < batchSize; i++) { var order = factory.CreateOrder($"Order{i}"); try { orderManagerClient.SendOrderAsync(order); } catch (Exception ex) { logger.LogError(ex.Message); } } logger.LogDebug($"OrderHandler called with batch size = {batchSize}"); }
public void CreateOrderTest() { IOrderFactory target = _container.Resolve <IOrderFactory>(); Pedido actual = target.CreateOrder(OrderType.SalesOrder); AssertOrder(target.CreateOrder(OrderType.PurchaseOrder), OrderType.PurchaseOrder); AssertOrder(target.CreateOrder(OrderType.SalesOrder), OrderType.SalesOrder); _container.RegisterInstance(typeof(Cadastro), "Cliente", new Cadastro()); _container.RegisterInstance(typeof(Cadastro), "Fornecedor", new Cadastro()); AssertOrder(target.CreateOrder(OrderType.PurchaseOrder), OrderType.PurchaseOrder); AssertOrder(target.CreateOrder(OrderType.SalesOrder), OrderType.SalesOrder); _container.RegisterInstance(typeof(Vendedor), "Vendedor", new Vendedor()); AssertOrder(target.CreateOrder(OrderType.PurchaseOrder), OrderType.PurchaseOrder); AssertOrder(target.CreateOrder(OrderType.SalesOrder), OrderType.SalesOrder); }
public CashierPresenter(ICashierView view, IUnityContainer container) { if (view == null) { throw new ArgumentNullException("view"); } if (container == null) { throw new ArgumentNullException("container"); } this.SubmitCommand = new DelegateCommand <object>(this.Submit, this.CanSubmit); this.CancelCommand = new DelegateCommand <object>(this.Cancel); this._view = view; this._view.SetPresenter(this); this._container = container; IOrderFactory orderFactory = this._container.Resolve <IOrderFactory>(); this._orderViewModel = new OrderViewModel(container, orderFactory.CreateOrder(OrderType.SalesOrder)); this._container.RegisterInstance <IOrderViewModel>(this._orderViewModel, new ExternallyControlledLifetimeManager()); }