/// <summary> /// Get Sales Order /// </summary> /// <param name="accountId"></param> /// <param name="salesOrderId"></param> /// <returns></returns> public async Task <ResponseModel <SalesOrderDataTransformation> > GetSalesOrder(int accountId, int salesOrderId) { ResponseModel <SalesOrderDataTransformation> returnResponse = new ResponseModel <SalesOrderDataTransformation>(); SalesOrderDataTransformation salesOrderDataTransformation = new SalesOrderDataTransformation(); try { _inventoryManagementDataService.OpenConnection(_connectionStrings.PrimaryDatabaseConnectionString); SalesOrder salesOrder = await _inventoryManagementDataService.GetSalesOrder(accountId, salesOrderId); salesOrderDataTransformation.SalesOrderId = salesOrderId; salesOrderDataTransformation.SalesOrderNumber = salesOrder.SalesOrderNumber; salesOrderDataTransformation.SalesOrderStatusId = salesOrder.SalesOrderStatusId; salesOrderDataTransformation.CustomerName = salesOrder.CustomerName; salesOrderDataTransformation.AddressLine1 = salesOrder.AddressLine1; salesOrderDataTransformation.AddressLine2 = salesOrder.AddressLine2; salesOrderDataTransformation.City = salesOrder.City; salesOrderDataTransformation.Region = salesOrder.Region; salesOrderDataTransformation.PostalCode = salesOrder.PostalCode; salesOrderDataTransformation.OrderTotal = salesOrder.OrderTotal; salesOrderDataTransformation.SalesOrderStatusDescription = salesOrder.SalesOrderStatus.Description; salesOrderDataTransformation.DateCreated = salesOrder.DateCreated; salesOrderDataTransformation.DateUpdated = salesOrder.DateUpdated; salesOrderDataTransformation.SalesOrderDetails = new List <SalesOrderDetailDataTransformation>(); foreach (SalesOrderDetail salesOrderDetail in salesOrder.SalesOrderDetails) { SalesOrderDetailDataTransformation salesOrderDetailDataTransformation = new SalesOrderDetailDataTransformation(); salesOrderDetailDataTransformation.SalesOrderDetailId = salesOrderDetail.SalesOrderDetailId; salesOrderDetailDataTransformation.SalesOrderId = salesOrderDetail.SalesOrderId; salesOrderDetailDataTransformation.ProductId = salesOrderDetail.ProductId; salesOrderDetailDataTransformation.ProductNumber = salesOrderDetail.Product.ProductNumber; salesOrderDetailDataTransformation.ProductDescription = salesOrderDetail.Product.Description; salesOrderDetailDataTransformation.UnitPrice = salesOrderDetail.UnitPrice; salesOrderDetailDataTransformation.OrderQuantity = salesOrderDetail.OrderQuantity; salesOrderDetailDataTransformation.ShippedQuantity = salesOrderDetail.ShippedQuantity; salesOrderDetailDataTransformation.DateCreated = salesOrderDetail.DateCreated; salesOrderDetailDataTransformation.DateUpdated = salesOrderDetail.DateUpdated; salesOrderDataTransformation.SalesOrderDetails.Add(salesOrderDetailDataTransformation); } returnResponse.ReturnStatus = true; } catch (Exception ex) { returnResponse.ReturnStatus = false; returnResponse.ReturnMessage.Add(ex.Message); } finally { _inventoryManagementDataService.CloseConnection(); } returnResponse.Entity = salesOrderDataTransformation; return(returnResponse); }