public async Task <List <ViewSale> > GetSalesAsync() { var sales = await _Context.Sales.OrderBy(c => c.SalesDate) .Include("Product") .Include("Salesperson") .Include("Customer") .ToListAsync(); if (sales.Count > 0) { List <ViewSale> vsl = new List <ViewSale>(); foreach (var sale in sales) { ViewSale vs = new ViewSale() { Id = sale.Id, CustomerName = sale.Customer.FirstName + " " + sale.Customer.LastName, ProductName = sale.Product.Name + " by " + sale.Product.Manufacturer, SaleDate = sale.SalesDate, SalePrice = sale.SalesPrice, Salesperson = sale.Salesperson.FirstName + " " + sale.Salesperson.LastName, SalespersonCommission = sale.Product.CommissionPercentage }; vsl.Add(vs); } return(vsl); } return(null); }
public List <ViewSale> GetAllSoldItems(string fromDate, string toDate) { Query = "select Item, sum(Quantity) as SaleQuantity from StockOut_tb where Date between @FromDate and @ToDate group by Item"; Command = new SqlCommand(Query, Connection); Connection.Open(); Command.Parameters.AddWithValue("FromDate", fromDate); Command.Parameters.AddWithValue("ToDate", toDate); Reader = Command.ExecuteReader(); List <ViewSale> sales = new List <ViewSale>(); while (Reader.Read()) { ViewSale viewSale = new ViewSale(); viewSale.Item = Reader["Item"].ToString(); viewSale.SaleQuantity = Convert.ToInt32(Reader["SaleQuantity"]); sales.Add(viewSale); } Reader.Close(); Connection.Close(); return(sales); }