public ActionResult PlaceOrder(int id, PlaceOrderDTO placeOrder) { try { ApplicationUser user = _userRepository.GetUserBy(User.Identity.Name); if (user is null || !user.Type.Equals(UserType.PASSENGER)) { return(Unauthorized()); } Order order = new Order(); placeOrder.OrderLines.ToList().ForEach(ol => { Product prod = _shopRepository.GetProductById(ol.ProductId); OrderLine line = new OrderLine(prod, ol.Amount); order.OrderLines.Add(line); }); order.Customer = (Passenger)user; _shopRepository.PlaceOrder(id, order); _shopRepository.SaveChanges(); return(Ok(OrderDTO.FromOrder(order))); } catch (Exception e) { return(BadRequest(e.Message)); } }
public int PlaceOrder(PlaceOrderDTO dto, int userid) { var cart = JsonConvert.DeserializeObject <List <CartDesc> >(dto.Cart); var order = new Order() { CustomerId = userid, OrderDate = DateTime.Now, PaymentType = dto.PaymentType, Total = dto.Total, OrderStatusId = (int)EnumOrderStatus.WaitingForConfirmation, }; dBContext.Orders.Add(order); dBContext.SaveChanges(); foreach (var item in cart) { dBContext.OrderDetails.Add(new OrderDetail() { OrderId = order.Id, ProductId = item.ProductId, Quantity = item.Quantity }); } dBContext.SaveChanges(); return(order.Id); }
public IActionResult PlaceOrder([FromBody] PlaceOrderDTO order, [FromServices] PlaceOrderCommand placeOrderCommand) { placeOrderCommand.Order = order; placeOrderCommand.Execute(); return(NoContent()); }
public Boolean PlaceOrder(PlaceOrderDTO placeOrderDto) { try { return(_ordersService.SaveOrder(placeOrderDto)); } catch (Exception e) { Console.WriteLine(e); return(false); } }
public IActionResult Thankyou(PlaceOrderVM placeOrderVM) { var config = new MapperConfiguration(cfg => cfg.CreateMap <PlaceOrderVM, PlaceOrderDTO>()); var mapper = new Mapper(config); PlaceOrderDTO dto = mapper.DefaultContext.Mapper.Map <PlaceOrderDTO>(placeOrderVM); ViewBag.OrderId = _userService.PlaceOrder(dto, placeOrderVM.User.Id); ViewBag.CustomerId = placeOrderVM.User.Id; _userService.SaveCard(placeOrderVM.User.Id, placeOrderVM.CardNo, placeOrderVM.CardExpiry, placeOrderVM.Cvv); ShowToaster("Order Placed successfully", ToasterLevel.Success); ViewBag.menu = JsonConvert.SerializeObject(GetCategory()); return(View()); }
public IHttpActionResult Post([FromBody] PlaceOrderDTO placeOrderDTO) { if (placeOrderDTO.Email != null) { if (cartBusinessOperations.CheckUserProductListBusiness(placeOrderDTO.Email)) { return(Ok("Order(s) placed successfully!!")); } else { return(Ok("Order list is empty!!")); } } else { return(BadRequest("Login Again!!")); } }
public Boolean SaveOrder(PlaceOrderDTO placeOrderDto) { //payment String paymentId = Guid.NewGuid().ToString(); Payment payment = new Payment(); payment.paymentId = paymentId; //todo: add payment status initially payment.status = "NOT"; db.Payments.Add(payment); db.SaveChanges(); string orderId = Guid.NewGuid().ToString(); Order order = new Order(); order.orderId = orderId; //todo: set status order.status = "INIT"; order.customerId = placeOrderDto.customerId; order.paymentId = paymentId; db.Orders.Add(order); db.SaveChanges(); foreach (OrderItem orderItem in placeOrderDto.orderItemList) { OrderDetail orderDetail = new OrderDetail(); string detailId = Guid.NewGuid().ToString(); orderDetail.detailId = detailId; orderDetail.orderId = orderId; orderDetail.price = orderItem.price; orderDetail.qty = orderItem.qty; orderDetail.itemCode = orderItem.itemCode; db.OrderDetails.Add(orderDetail); db.SaveChanges(); } return(true); }