public async Task <CustomerOrderDetailResponse> GetCustomerOrderDetail(CustomerOrderDetailRequest request) { var customerOrderDetailResonse = new CustomerOrderDetailResponse(); var customer = _customerDetailProvider.GetCustomer(request.User); if (request.CustomerId != customer.customerId) { return(null); } customerOrderDetailResonse.customer = customer; var orderDetail = await Task.Run(() => _customerOrderRepository.GetOrder(request.CustomerId)); if (orderDetail != null) { orderDetail.deliveryAddress = customer.houseNumber + "," + customer.street + "," + customer.town + "," + customer.postcode; orderDetail.orderDate = DateTime.Parse(orderDetail.orderDate).ToString("dd-MMM-yyyy"); orderDetail.deliveryExpected = DateTime.Parse(orderDetail.deliveryExpected).ToString("dd-MMM-yyyy"); customerOrderDetailResonse.order = orderDetail; } return(customerOrderDetailResonse); }
internal void GetCustomerOrderDetialsTest() { CustomerOrderDetailRequest customerOrderDetailRequest = new CustomerOrderDetailRequest(); customerOrderDetailRequest.CustomerId = 24325; RestClient restClient = new RestClient("http://localhost:14547/api/"); Dictionary <string, string> userInfo = new Dictionary <string, string>(); userInfo.Add("Username", "1"); userInfo.Add("Password", "2"); List <CustomerOrderDetailDto> customerOrder = new List <CustomerOrderDetailDto>(); try { customerOrder = restClient.Consume <CustomerOrderDetailResponse>("CustomerOrder/GetCustomerOrderDetail", "POST", customerOrderDetailRequest, userInfo).CustomerOrderDetails; } catch (Exception ex) { } Console.WriteLine("ProductName UnitPrice Quantity"); if (customerOrder != null) { foreach (var testRow in customerOrder) { Console.Write(EditCell(testRow.ProductName, 20)); Console.Write(EditCell(testRow.UnitPrice.ToString(), 12)); Console.Write(EditCell(testRow.Quantity.ToString(), 8)); Console.WriteLine(); } } }
public IEnumerable <CustomerOrderDetailDto> GetCustomerOrderDetail() { CustomerOrderDetailRequest customerOrderDetailRequest = new CustomerOrderDetailRequest(); customerOrderDetailRequest.CustomerId = 24325; RestClient restClient = new RestClient("http://localhost:14547/api/"); Dictionary <string, string> userInfo = new Dictionary <string, string>(); List <CustomerOrderDetailDto> customerOrder = restClient.Consume <CustomerOrderDetailResponse>("CustomerOrder/GetCustomerOrderDetail", "POST", customerOrderDetailRequest, userInfo).CustomerOrderDetails; return(customerOrder); }
public async Task <IActionResult> GetOrderDetail(CustomerOrderDetailRequest customerOrderDetailRequest) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var orderDetail = await _customerOrderDetailProvider.GetCustomerOrderDetail(customerOrderDetailRequest); if (orderDetail is null) { return(NotFound()); } return(Ok(orderDetail)); }
public IActionResult GetCustomerOrderDetail(CustomerOrderDetailRequest request, [FromHeader] object obj) { //try { // credentialValidator.CheckCredentials(this.Request.Headers); //} //catch (Exception ex) { // Services.Create<ILog>().LogFormat("Unauthorized request.Exception:{0}", LogLevel.Warning, ex); // return Unauthorized(); //} CustomerOrderDetailResponse response = orderOperations.GetCustomerOrderDetails(request); if (response == null) { return(NotFound()); } return(new JsonResult(response)); }
public CustomerOrderDetailResponse GetCustomerOrderDetails(CustomerOrderDetailRequest request) { List <CustomerOrderDetailDto> customerOrderDetails = new List <CustomerOrderDetailDto>(); CustomerRepository customers = northWindUnitOfWork.CustomerRepository; OrderRepository orders = northWindUnitOfWork.OrderRepository; OrderDetailRepository orderDetails = northWindUnitOfWork.OrderDetailRepository; ProductRepository products = northWindUnitOfWork.ProductRepository; var testQuery = from c in customers.AsQueryable() join o in orders.Table() on c.CustomerId equals o.CustomerId join od in orderDetails.Table() on o.OrderId equals od.OrderId join p in products.Table() on od.ProductId equals p.ProductId orderby o.OrderId descending orderby c.CompanyName ascending select new CustomerOrderDetailDto() { OrderId = o.OrderId, ProductId = p.ProductId, ProductName = p.ProductName, UnitPrice = od.UnitPrice, Quantity = od.Quantity, Discount = od.Discount, CompanyName = c.CompanyName, ContactName = c.ContactName, Phone = c.Phone, OrderDate = o.OrderDate, RequiredDate = o.RequiredDate, ShippedDate = o.ShippedDate }; customerOrderDetails = testQuery.Top(1).NoLock().ToList(); return(new CustomerOrderDetailResponse() { CustomerOrderDetails = customerOrderDetails }); }