/// <summary> /// Создание заявки /// </summary> public async Task <Order> CreateOrder(OrderCreationData data) { var orderId = Guid.NewGuid(); var order = new Order { Id = orderId, ProductId = data.ProductId, ApplicantId = data.ApplicantId, State = OrderState.New, DateAdd = data.DateAdd }; var context = new OrderContext { Ip = data.Ip, OrderId = orderId, Utm = data.Utm, GoogleAnalyticsId = data.GoogleAnalyticsId, Region = data.Region, Browser = data.Browser, BrowserUserAgent = data.BrowserUserAgent }; await _ordersRepository.CreateOrder(order, context); return(order); }
public static Dal.OrderCreationData ToDalOrderCreationData(this OrderCreationData creationData) { return(new Dal.OrderCreationData { Customer = creationData.Customer, Items = creationData.Items.Select(x => x.ToDalOrderItemManagementData()).ToList() }); }
public IActionResult Create(OrderCreationData request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Client client = GetClient(); if (client == null) { return(Unauthorized()); } int orders = _context.Orders .Count(c => c.Id == client.Id && c.Status != 4); if (orders >= 5) { return(BadRequest(new { message = "Vienu metu klientams leidžiama turėti maksimaliai 5 vykdomus užsakymus." })); } Order order = new Order { AddressId = request.AddressId, ClientId = client.Id }; foreach (int bookId in request.Books) { Book book = _context.Books.SingleOrDefault(c => c.Id == bookId); if (book == null) { return(BadRequest(new { message = "Klaida kuriant užsakymą." })); } order.Ordered.Add(new Ordered { BookId = book.Id, OrderId = order.Id }); } _context.Orders.Add(order); _context.SaveChanges(); return(Ok(new { message = "Užsakymas sėkmingai sukurtas.", orderId = order.Id })); }
public new void SetupTest() { _homePage = new HomePage(AutomatedBrowser.WebDriverInstance); _homeData = new HomeData(); _resturantSelectionData = new ResturantSelectionData(); _resturantSelectionPage = new ResturantSelectionPage(AutomatedBrowser.WebDriverInstance); _orderCreationPage = new OrderCreationPage(AutomatedBrowser.WebDriverInstance); _orderCreationData = new OrderCreationData(); _paymentDetailsData = new PaymentDetailsData(); _paymentDetailsPage = new PaymentDetailsPage(AutomatedBrowser.WebDriverInstance); _paymentConfirmationPage = new PaymentConfirmationPage(AutomatedBrowser.WebDriverInstance); _orderVerificationPage = new OrderVerificationPage(AutomatedBrowser.WebDriverInstance); }
public int Create(OrderCreationData creationData) { var orders = GetOrdersFromSession(); int id = new Random().Next(); orders.Add(new Order { Id = id, CreationDate = creationData.CreationDate, Customer = creationData.Customer, Items = creationData.Items.Select(x => x.ToOrderItem()).ToList(), Status = creationData.Status }); return(id); }
public Task <int> Handle(CreateOrderCommand request, CancellationToken cancellationToken) { OrderCreationData dalOrderData = request.ToDalOrderCreationData(); dalOrderData.CreationDate = DateTime.Now; dalOrderData.Status = (short)OrderStatus.Pending; foreach (OrderItemManagementData item in dalOrderData.Items) { Product product = this.productsDataProvider.GetById(item.ProductId); item.ProductTitle = product.Title; item.Price = product.Price; } return(Task.FromResult(this.ordersDataProvider.Create(dalOrderData))); }
public int Create(OrderCreationData order) { using (IDbConnection db = new SqlConnection(MsSqlHelper.GetConnectionString())) { string insertOrderQuery = @"INSERT INTO [dbo].[Orders]([CreationDate], [CustomerName], [CustomerPhone], [Status]) VALUES (@CreationDate, @CustomerName, @CustomerPhone, @Status); SELECT CAST(SCOPE_IDENTITY() as int);"; int orderId = db.Query <int>(insertOrderQuery, new { CreationDate = order.CreationDate, CustomerName = order.Customer.Name, CustomerPhone = order.Customer.Phone, Status = order.Status }).First(); InsertOrderItems(db, order.Items, orderId); return(orderId); } }
public int Create([FromBody] OrderCreationData order) { Dal.OrderCreationData dalOrderData = order.ToDalOrderCreationData(); dalOrderData.CreationDate = DateTime.Now; dalOrderData.Status = (short)OrderStatus.Pending; foreach (Dal.OrderItemManagementData item in dalOrderData.Items) { Product product = MessageQueue.SendMessage <Product>("GetProduct", new { ProductId = item.ProductId }).Result; item.ProductTitle = product.Title; item.Price = product.Price; } return(this.ordersDataProvider.Create(dalOrderData)); }
public int Create(OrderCreationData order) { int id = new Random().Next(); GetOrdersSet().InsertOne(new Order { Id = id, CreationDate = order.CreationDate, Customer = order.Customer, Items = order.Items.Select(x => new OrderModels.OrderItem { Price = x.Price, ProductId = x.ProductId, ProductTitle = x.ProductTitle, Quantity = x.Quantity }).ToList(), Status = order.Status }); return(id); }
public async Task <int> Create(OrderCreationData order) { Identity identity = await this.restClient.Post <Identity>($"{this.ordersServiceApiUrl}/Create", order); return(int.Parse(identity.Id)); }