Beispiel #1
0
        public HttpResponseMessage PostOrderDetail(OrderDetail orderDetail)
        {
            orderDetail = _repository.AddOrderDetail(orderDetail);
            var response = Request.CreateResponse <OrderDetail>(HttpStatusCode.Created, orderDetail);

            string uri = Url.Link("GetOrderDetailByID", new { orderID = orderDetail.OrderID });

            response.Headers.Location = new Uri(uri);
            return(response);
        }
        public IActionResult OrderRequest(OrderDto orderDto)
        {
            if (orderDto.OrderTime > DateTime.Now)
            {
                return(BadRequest("Datetime does not greater than today"));
            }
            else
            {
                var order = new Order
                {
                    ACCOUNT        = orderDto.AccountCode,
                    NUMBER         = orderDto.Number,
                    ORDER_TIME     = orderDto.OrderTime,
                    CUSTOMER_NAME  = orderDto.CustomerName,
                    CUSTOMER_EMAIL = orderDto.CustomerEmail,
                    ORDER_TOTAL    = orderDto.OrderTotal
                };
                _orderRepository.AddOrder(order);


                foreach (var detail in orderDto.OrderDetails)
                {
                    var ItemId = _dataContext.ITEM_MASTER.FirstOrDefault(x => x.CODE == detail.ItemCode);
                    if (ItemId == null)
                    {
                        return(BadRequest("Item Code does not exists in database"));
                    }
                    else
                    {
                        _orderDetailRepository.AddOrderDetail(new OrderDetail
                        {
                            ITEM_ID  = ItemId.ID,
                            ORDER_ID = order.ID,
                            QUANTITY = detail.Quantity,
                        });
                    }
                }
            }

            return(Ok("success"));
        }