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);
        }
Ejemplo n.º 2
0
        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);
        }