public IActionResult SalesOrders() { var salesOrders = _salesService.GetSalesOrders(); IList <Dto.Sales.SalesOrder> salesOrdersDto = new List <Dto.Sales.SalesOrder>(); try { foreach (var salesOrder in salesOrders) { var salesOrderDto = new Dto.Sales.SalesOrder() { Id = salesOrder.Id, PaymentTermId = salesOrder.PaymentTermId, CustomerId = salesOrder.CustomerId.Value, CustomerNo = salesOrder.Customer.No, CustomerName = salesOrder.Customer.Party.Name, OrderDate = salesOrder.Date, ReferenceNo = salesOrder.ReferenceNo, Status = (int)salesOrder.Status.GetValueOrDefault(), No = salesOrder.No }; foreach (var line in salesOrder.SalesOrderLines) { var lineDto = new Dto.Sales.SalesOrderLine() { ItemId = line.ItemId, MeasurementId = line.MeasurementId, Quantity = line.Quantity, Amount = line.Amount, Discount = line.Discount, RemainingQtyToInvoice = line.GetRemainingQtyToInvoice() }; salesOrderDto.SalesOrderLines.Add(lineDto); } salesOrdersDto.Add(salesOrderDto); } return(new ObjectResult(salesOrdersDto)); } catch (Exception ex) { return(new ObjectResult(ex)); } }
public IActionResult SalesOrder(int id) { try { var salesOrder = _salesService.GetSalesOrderById(id); var salesOrderDto = new Dto.Sales.SalesOrder() { Id = salesOrder.Id, CustomerId = salesOrder.CustomerId.Value, CustomerNo = salesOrder.Customer.No, CustomerName = _salesService.GetCustomerById(salesOrder.CustomerId.Value).Party.Name, OrderDate = salesOrder.Date, PaymentTermId = salesOrder.PaymentTermId, ReferenceNo = salesOrder.ReferenceNo, SalesOrderLines = new List <Dto.Sales.SalesOrderLine>() }; foreach (var line in salesOrder.SalesOrderLines) { var lineDto = new Dto.Sales.SalesOrderLine(); lineDto.Id = line.Id; lineDto.Amount = line.Amount; lineDto.Discount = line.Discount; lineDto.Quantity = line.Quantity; lineDto.ItemId = line.ItemId; lineDto.ItemDescription = line.Item.Description; lineDto.MeasurementId = line.MeasurementId; lineDto.MeasurementDescription = line.Measurement.Description; lineDto.RemainingQtyToInvoice = line.GetRemainingQtyToInvoice(); salesOrderDto.SalesOrderLines.Add(lineDto); } return(new ObjectResult(salesOrderDto)); } catch (Exception ex) { return(new ObjectResult(ex)); } }