public List <SalesReport> GetSalesReports(string user, DateTime startDate, DateTime endDate)
        {
            List <SalesReport> report = new List <SalesReport>();

            using (_ctx = new GuildCarsEntities())
            {
                try
                {
                    if (user != null)
                    {
                        var    getUser  = _ctx.GetUserById(user).FirstOrDefault();
                        string userName = getUser.UserName;
                        var    list     = _ctx.SalesReport(userName, startDate, endDate).ToList();
                        foreach (var r in list)
                        {
                            SalesReport newReport = new SalesReport();

                            newReport.User          = r.SalesPerson;
                            newReport.TotalSales    = decimal.Parse(r.TotalValue.ToString());
                            newReport.TotalVehicles = int.Parse(r.TotalVehicles.ToString());

                            report.Add(newReport);
                        }

                        report = report.Where(u => u.User == userName).ToList();
                    }
                    if (user == null && startDate.ToString() == "1/1/1970 12:00:00 AM" && endDate.ToString() == "1/1/2150 12:00:00 AM")
                    {
                        var list = _ctx.AllSalesReports().ToList();

                        foreach (var r in list)
                        {
                            SalesReport newReport = new SalesReport();

                            newReport.User          = r.SalesPerson;
                            newReport.TotalSales    = decimal.Parse(r.TotalValue.ToString());
                            newReport.TotalVehicles = int.Parse(r.TotalVehicles.ToString());

                            report.Add(newReport);
                        }
                    }

                    if (user == null && startDate.ToString() != "1/1/1970 12:00:00 AM" || endDate.ToString() != "1/1/2150 12:00:00 AM")
                    {
                        var list = _ctx.SalesReportByDate(startDate, endDate).ToList();

                        foreach (var r in list)
                        {
                            SalesReport newReport = new SalesReport();

                            newReport.User          = r.SalesPerson;
                            newReport.TotalSales    = decimal.Parse(r.TotalValue.ToString());
                            newReport.TotalVehicles = int.Parse(r.TotalVehicles.ToString());

                            report.Add(newReport);
                        }
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            return(report);
        }