Esempio n. 1
0
        /// <summary>
        /// Request order data.
        /// </summary>
        /// <param name="request">Order request message.</param>
        /// <returns>Order response message.</returns>
        public OrderResponse GetOrders(OrderRequest request)
        {
            var response = new OrderResponse(request.RequestId);

            // Validate client tag, access token, and user credentials
            if (!ValidRequest(request, response, Validate.All))
            {
                return(response);
            }

            var criteria = request.Criteria as OrderCriteria;

            if (request.LoadOptions.Contains("Order"))
            {
                var order = _orderDao.GetOrder(criteria.OrderId);

                if (request.LoadOptions.Contains("Customer"))
                {
                    order.Customer = _customerDao.GetCustomerByOrder(order.OrderId);
                }

                if (request.LoadOptions.Contains("OrderDetails"))
                {
                    order.OrderDetails = _orderDetailDao.GetOrderDetails(order.OrderId);
                }

                response.Order = Mapper.ToDataTransferObject(order);
            }

            if (request.LoadOptions.Contains("Orders"))
            {
                var customer = _customerDao.GetCustomer(criteria.CustomerId);

                var orders = _orderDao.GetOrdersByCustomer(customer.CustomerId);
                if (request.LoadOptions.Contains("OrderDetails"))
                {
                    foreach (Order order in orders)
                    {
                        order.OrderDetails = _orderDetailDao.GetOrderDetails(order.OrderId);
                    }
                }

                response.Orders = Mapper.ToDataTransferObjects(orders);
            }

            return(response);
        }
        // OrderDetail Services

        public List <OrderDetail> GetOrderDetails(int orderId)
        {
            return(orderDetailDao.GetOrderDetails(orderId));
        }
Esempio n. 3
0
 public DataTable GetOrderDetails()
 {
     return(orderDetailDao.GetOrderDetails());
 }