public ActionResult Inventory()
        {
            var newStock  = new Dictionary <string, VehicleStock>();
            var usedStock = new Dictionary <string, VehicleStock>();
            var inventory = DataManager.Instance.GetAvailableCars();

            foreach (var car in inventory)
            {
                var isNew = car.Mileage == 0;
                var key   = $"{car.Year} {car.Make} {car.Model}";
                if (!newStock.ContainsKey(key) && !usedStock.ContainsKey(key))
                {
                    (isNew ? newStock : usedStock).Add(key, new VehicleStock
                    {
                        Year       = car.Year,
                        Make       = car.Make,
                        Model      = car.Model,
                        Count      = 0,
                        StockValue = 1000
                    });
                }

                var vals = (isNew ? newStock : usedStock)[key];
                vals.StockValue += car.MSRP;
                vals.Count++;
            }

            var model = new InventoryReportViewModel
            {
                NewStock  = newStock.Values.OrderBy(s => s.Make).ThenBy(s => s.Model).ThenByDescending(s => s.Year),
                UsedStock = usedStock.Values.OrderBy(s => s.Make).ThenBy(s => s.Model).ThenByDescending(s => s.Year)
            };

            return(View(model));
        }
Example #2
0
        public async Task <IActionResult> InventoryReport()
        {
            var inventories = await _context.Inventories.ToListAsync();

            var model = new InventoryReportViewModel();

            model.Inventories = new List <InventoryDetails>();

            if (inventories != null)
            {
                foreach (var i in inventories)
                {
                    var product = await _context.Products.FirstOrDefaultAsync(p => p.ProductID == i.ProductID);

                    var category = await _context.Categories.FirstOrDefaultAsync(c => c.CategoryID == product.CategoryID);

                    model.Inventories.Add(new InventoryDetails
                    {
                        Category  = category,
                        Product   = product,
                        Inventory = i
                    });
                }


                return(new ViewAsPdf("InventoryReport", model)
                {
                    PageOrientation = Orientation.Landscape,
                    FileName = "Inventory_" + DateTime.Now + ".pdf"
                });
            }

            return(NotFound());
        }
        public IHttpActionResult Inventory()
        {
            IVehicleDetailRepository repo = VehicleDetailRepositoryFactory.GetRepository();
            var inv = new InventoryReportViewModel();

            inv.New  = repo.GetNewUnsold();
            inv.Used = repo.GetUsedUnsold();
            return(Ok(inv));
        }
        public ActionResult Inventory()
        {
            var model = new InventoryReportViewModel();
            var repo  = ReportsFactory.GetRepo();

            model.NewInventory  = repo.GetNewInventoryList();
            model.UsedInventory = repo.GetUsedInventoryList();
            return(View(model));
        }
        public ActionResult Inventory()
        {
            var manager = AdminManagerFactory.GetManager();
            var vm      = new InventoryReportViewModel();

            vm.NewInventory  = manager.GetInventoryReport(false);
            vm.UsedInventory = manager.GetInventoryReport(true);

            return(View(vm));
        }
Example #6
0
        public ActionResult Inventory()
        {
            {
                var repo  = InventoryRepositoryFactory.GetRepository();
                var model = new InventoryReportViewModel();

                model.NewInventoryReport  = repo.CreateNewInventoryReport().ToList();
                model.UsedInventoryReport = repo.CreateUsedInventoryReport().ToList();

                return(View(model));
            }
        }
Example #7
0
        public ActionResult Inventory()
        {
            var model    = new InventoryReportViewModel();
            var repo     = new InventoryRepositoryADO();
            var newRepo  = repo.GetNewInventory().ToList();
            var usedRepo = repo.GetUsedInventory().ToList();

            model.NewInventory  = newRepo;
            model.UsedInventory = newRepo;

            return(View(model));
        }
Example #8
0
        public ActionResult Inventory()
        {
            InventoryReportViewModel model = new InventoryReportViewModel();

            var reports = _reportsRepository.GetInventory();

            model.NewCarsReports = reports.Where(c => c.IsNew == true);

            model.UsedCarsReports = reports.Where(c => c.IsNew == false);

            return(View(model));
        }
        public ActionResult Inventory()
        {
            var bodystyles   = BodyStyleRepositoryFactory.GetBodyStyleRepository().GetBodyStyles();
            var colors       = ColorRepositoryFactory.GetColorRepository().GetColors();
            var makes        = MakeRepositoryFactory.GetMakeRepository().GetMakes();
            var models       = ModelRepositoryFactory.GetModelRepository().GetModels();
            var transmission = TransmissionTypeRepositoryFactory.GetTransmissionTypeRepository().GetTransmissions();
            var vehicles     = VehicleRepositoryFactory.GetVehicleRepository().GetVehicles();

            var vehiclesToReturn = new List <VehicleDisplayVM>();

            foreach (var vehicle in vehicles)
            {
                var model = new VehicleDisplayVM();

                model.Vehicle       = vehicle;
                model.Model         = models.FirstOrDefault(m => m.ModelID == vehicle.ModelID);
                model.Make          = makes.FirstOrDefault(m => m.MakeID == vehicle.MakeID);
                model.BodyStyle     = bodystyles.FirstOrDefault(b => b.BodyStyleID == vehicle.BodyStyleID);
                model.ExteriorColor = colors.FirstOrDefault(c => c.ColorID == vehicle.ExteriorColor);
                model.InteriorColor = colors.FirstOrDefault(c => c.ColorID == vehicle.InteriorColor);
                model.Transmission  = transmission.FirstOrDefault(t => t.TransmissionID == vehicle.TransmissionID);

                vehiclesToReturn.Add(model);
            }

            //vehiclesToReturn = vehiclesToReturn.OrderBy(vehicle => vehicle.Vehicle.Year).ThenBy(vehicle => vehicle.Make.MakeName).ThenBy(vehicle => vehicle.Model.ModelName).ToList();

            var usedVehicles = vehiclesToReturn.Where(v => v.Vehicle.Mileage > 1000).ToList();
            var newVehicles  = vehiclesToReturn.Where(v => v.Vehicle.Mileage <= 1000).ToList();


            List <InventoryReportVehicleGroup> usedVehicleGroupList = VehicleList(usedVehicles);
            List <InventoryReportVehicleGroup> newVehicleGroupList  = VehicleList(newVehicles);

            InventoryReportViewModel viewModel = new InventoryReportViewModel()
            {
                NewVehicles  = newVehicleGroupList,
                UsedVehicles = usedVehicleGroupList
            };

            return(View(viewModel));
        }
 public InventoryReport()
 {
     objInventoryReportViewModel = new InventoryReportViewModel();
     InitializeComponent();
     this.DataContext = objInventoryReportViewModel;
 }
 public InventoryReportTemplate(DateTime date)
 {
     InitializeComponent();
     this.DataContext = (inventoryReportViewModel = new InventoryReportViewModel(date));
 }