public IEnumerable <VehicleItem> GetVehicleItems() { List <VehicleItem> vehicleItems = new List <VehicleItem>(); var repo = VehicleRepositoryFactory.GetRepository(); var vehicles = repo.GetAll(); var salesRepo = SalesInformationRepositoryFactory.GetRepository(); var sales = salesRepo.GetSales(); var bodyRepo = BodyTypesRepositoryFactory.GetRepository(); var bodyTypes = bodyRepo.GetAll(); var makeRepo = CarMakesRepositoryFactory.GetRepository(); var makes = makeRepo.GetAll(); var modelRepo = CarModelItemRepositoryFactory.GetRepository(); var models = modelRepo.GetAll(); var transRepo = TransmissionTypesRepositoryFactory.GetRepository(); var transTypes = transRepo.GetAll(); var extColorRepo = ExtColorsRepositoryFactory.GetRepository(); var extColors = extColorRepo.GetAll(); var intColorRepo = IntColorsRepositoryFactory.GetRepository(); var intColors = intColorRepo.GetAll(); var items = from v in vehicles join make in makes on v.MakeID equals make.MakeID join model in models on v.ModelID equals model.ModelID join body in bodyTypes on v.BodyTypeID equals body.BodyTypeID join tran in transTypes on v.TransmissionID equals tran.TransmissionID join ext in extColors on v.ExtColorID equals ext.ExtColorID join color in intColors on v.IntColorID equals color.IntColorID select new VehicleItem { VehicleID = v.VehicleID, SalesTypeID = v.SalesTypeID, YearBuilt = v.YearBuilt, MakeName = make.MakeName, ModelName = model.ModelName, BodyTypeName = body.BodyTypeName, TransmissionTypeName = tran.TransmissionTypeName, ExtColorName = ext.ExtColorName, IntColorName = color.IntColorName, Mileage = v.Mileage, VINNumber = v.VINNumber, SalesPrice = v.SalesPrice, MSRP = v.MSRP, VehicleDescription = v.VehicleDescription, ImageFileName = v.ImageFileName }; List <VehicleItem> vitems = items.ToList(); return(vitems); }
public List <VehicleInventoryReport> GetUsedInventoryReport() { List <VehicleInventoryReport> reports = new List <VehicleInventoryReport>(); var repo = VehicleRepositoryFactory.GetRepository(); var vehicles = repo.GetAll(); var salesRepo = SalesInformationRepositoryFactory.GetRepository(); var sales = salesRepo.GetSales(); var salesTypeRepo = SalesTypeRepositoryFactory.GetRepository(); var salesTypes = salesTypeRepo.GetAll(); var bodyRepo = BodyTypesRepositoryFactory.GetRepository(); var bodyTypes = bodyRepo.GetAll(); var makeRepo = CarMakesRepositoryFactory.GetRepository(); var makes = makeRepo.GetAll(); var modelRepo = CarModelItemRepositoryFactory.GetRepository(); var models = modelRepo.GetAll(); var transRepo = TransmissionTypesRepositoryFactory.GetRepository(); var transTypes = transRepo.GetAll(); var extColorRepo = ExtColorsRepositoryFactory.GetRepository(); var extColors = extColorRepo.GetAll(); var intColorRepo = IntColorsRepositoryFactory.GetRepository(); var intColors = intColorRepo.GetAll(); var items = from v in vehicles join sale in salesTypes on v.SalesTypeID equals sale.SalesTypeID join make in makes on v.MakeID equals make.MakeID join model in models on v.ModelID equals model.ModelID join s in sales on v.VehicleID equals s.VehicleID where v.SalesTypeID == 2 select new VehicleInventoryReport { VehicleID = v.VehicleID, SalesTypeID = v.SalesTypeID, YearBuilt = v.YearBuilt, MakeName = make.MakeName, ModelName = model.ModelName, Count = sales.Select(x => x.SalesID).Count(), StockValue = vehicles.Sum(x => x.MSRP) }; List <VehicleInventoryReport> report = items.ToList(); return(report); }