Example #1
0
        public ActionResult Add(AddVehicleVM model)
        {
            using (TruckTransportDbContext _db = new TruckTransportDbContext())
            {
                if (_db.vozila.AsNoTracking().Where(x => x.naziv == model.Name).FirstOrDefault() != null)
                {
                    ModelState.AddModelError("", "Vozilo sa unesenim nazivom već postoji u sistemu!");
                }

                if (ModelState.IsValid)
                {
                    vozila newVehicleDB = new vozila
                    {
                        naziv    = model.Name,
                        marka    = model.Manufacturer,
                        tip      = model.Type,
                        godiste  = model.YearMade,
                        nosivost = model.LoadCapacity
                    };

                    _db.vozila.Add(newVehicleDB);
                    _db.SaveChanges();

                    return(Json(data: new { success = true }));
                }
            }


            return(PartialView(viewName: "_Add", model: model));
        }
        public ActionResult AddVehicle()
        {
            var vm = new AddVehicleVM();

            vm.SetAllLists(ManagerFactory.Create());
            return(View(vm));
        }
Example #3
0
        public ActionResult AddVehicle()
        {
            var makesRepo             = CarMakesRepositoryFactory.GetRepository();
            var vehicleTypesRepo      = VehicleTypesRepositoryFactory.GetRepository();
            var bodyStylesRepo        = BodyStylesRepositoryFactory.GetRepository();
            var transmissionTypesRepo = TransmissionTypesRepositoryFactory.GetRepository();
            var colorsRepo            = ColorsRepositoryFactory.GetRepository();
            var interiorColorsRepo    = InteriorColorsRepositoryFactory.GetRepository();

            var viewModel = new AddVehicleVM();

            viewModel.SetMakeItems(makesRepo.GetAll());
            viewModel.SetVehicleTypeItems(vehicleTypesRepo.GetAll());
            viewModel.SetBodyStyleItems(bodyStylesRepo.GetAll());
            viewModel.SetTransmissionTypeItems(transmissionTypesRepo.GetAll());
            viewModel.SetColorItems(colorsRepo.GetAll());
            viewModel.SetInteriorColorItems(interiorColorsRepo.GetAll());

            return(View(viewModel));
        }
Example #4
0
        public ActionResult AddVehicle(AddVehicleVM addVehicleVM)
        {
            var duplicateVehicle = from v in VehiclesRepositoryFactory.GetRepository().GetAll()
                                   where v.VIN == addVehicleVM.VIN
                                   select v;

            if (duplicateVehicle.Count() != 0)
            {
                ModelState.AddModelError("VIN", "VIN already exists in database. Duplicate vehicles are not allowed.");
            }

            if (ModelState.IsValid)
            {
                var vehicleToAdd = new Vehicle();
                var modelToAdd   = new CarModel();
                var makeToAdd    = new CarMake();

                var employeeId = int.Parse(User.Identity.GetEmployeeId());

                vehicleToAdd.EmployeeId = employeeId;

                var repo = VehiclesRepositoryFactory.GetRepository();

                if (addVehicleVM.File != null && addVehicleVM.File.ContentLength > 0)
                {
                    var newId = repo.GetAll().Max(v => v.VehicleId) + 1;

                    var fileSplit = Path.GetFileName(addVehicleVM.File.FileName).Split('.');

                    var fileExtension = fileSplit[fileSplit.Length - 1];

                    var fileName = "inventory-x-" + newId + "." + fileExtension;
                    var path     = Path.Combine(Server.MapPath("~/Images/"), fileName);
                    addVehicleVM.File.SaveAs(path);

                    vehicleToAdd.ImageFileName = fileName;
                }

                modelToAdd.Name                 = addVehicleVM.ModelName;
                makeToAdd.Name                  = addVehicleVM.MakeName;
                vehicleToAdd.VIN                = addVehicleVM.VIN;
                vehicleToAdd.BodyStyleId        = addVehicleVM.BodyStyleId;
                vehicleToAdd.ModelYear          = addVehicleVM.ModelYear;
                vehicleToAdd.TransmissionTypeId = addVehicleVM.TransmissionTypeId;
                vehicleToAdd.ColorId            = addVehicleVM.ColorId;
                vehicleToAdd.InteriorColorId    = addVehicleVM.InteriorColorId;
                vehicleToAdd.Mileage            = addVehicleVM.Mileage;
                vehicleToAdd.MSRP               = addVehicleVM.MSRP;
                vehicleToAdd.SalePrice          = addVehicleVM.SalePrice;
                vehicleToAdd.Description        = addVehicleVM.Description;
                vehicleToAdd.VehicleTypeId      = addVehicleVM.VehicleTypeId;


                repo.Insert(vehicleToAdd, modelToAdd, makeToAdd);

                return(RedirectToAction("Vehicles"));
            }

            var makesRepo             = CarMakesRepositoryFactory.GetRepository();
            var vehicleTypesRepo      = VehicleTypesRepositoryFactory.GetRepository();
            var bodyStylesRepo        = BodyStylesRepositoryFactory.GetRepository();
            var transmissionTypesRepo = TransmissionTypesRepositoryFactory.GetRepository();
            var colorsRepo            = ColorsRepositoryFactory.GetRepository();
            var interiorColorsRepo    = InteriorColorsRepositoryFactory.GetRepository();
            var modelsRepo            = CarModelsRepositoryFactory.GetRepository();

            addVehicleVM.SetMakeItems(makesRepo.GetAll());
            addVehicleVM.SetVehicleTypeItems(vehicleTypesRepo.GetAll());
            addVehicleVM.SetBodyStyleItems(bodyStylesRepo.GetAll());
            addVehicleVM.SetTransmissionTypeItems(transmissionTypesRepo.GetAll());
            addVehicleVM.SetColorItems(colorsRepo.GetAll());
            addVehicleVM.SetInteriorColorItems(interiorColorsRepo.GetAll());
            addVehicleVM.SetMakeModelItems(modelsRepo.GetDetailsAll());

            return(View("AddVehicle", addVehicleVM));
        }
Example #5
0
        public ActionResult Add()
        {
            AddVehicleVM model = new AddVehicleVM();

            return(PartialView(viewName: "_Add", model: model));
        }
        public ActionResult AddVehicle(AddVehicleVM vm)
        {
            var manager = ManagerFactory.Create();

            if (vm.Year < 2000 || vm.Year > DateTime.Now.Year + 1)
            {
                ModelState.AddModelError("", "Error: Vehicle year must be between 2000 and " + (DateTime.Now.Year + 1) + ".");
            }

            if (manager.GetCondition(vm.SelectedConditionId).Name == "New" && vm.Mileage > 1000)
            {
                ModelState.AddModelError("", "Error: If condition is set to new, mileage must be less than 1,000.");
            }

            if (manager.GetCondition(vm.SelectedConditionId).Name == "Used" && vm.Mileage <= 1000)
            {
                ModelState.AddModelError("", "Error: If condition is set to used, mileage must be greater than 1,000.");
            }

            if (vm.VIN == "")
            {
                ModelState.AddModelError("", "Error: VIN cannot be blank.");
            }

            if (vm.MSRP <= 0)
            {
                ModelState.AddModelError("", "Error: MSRP must be greater than 0.");
            }

            if (vm.SalePrice <= 0)
            {
                ModelState.AddModelError("", "Error: sale price must be greater than 0.");
            }

            if (vm.SalePrice > vm.MSRP)
            {
                ModelState.AddModelError("", "Error: Sale price must be lower than MSRP.");
            }

            if (vm.Description == "")
            {
                ModelState.AddModelError("", "Error: A description is required.");
            }
            if (!ModelState.IsValid)
            {
                vm.SetAllLists(manager);
                return(View(vm));
            }
            else
            {
                Vehicle toAdd = new Vehicle
                {
                    BodyStyle     = manager.GetBodyStyle(vm.SelectedStyleId),
                    ConditionType = manager.GetCondition(vm.SelectedConditionId),
                    Description   = vm.Description,
                    ExteriorColor = manager.GetColor(vm.SelectedColorId),
                    InteriorColor = manager.GetColor(vm.SelectedColorId),
                    Mileage       = vm.Mileage,
                    ModelType     = manager.GetModel(vm.SelectedModelId),
                    MSRP          = vm.MSRP,
                    SalePrice     = vm.SalePrice,
                    Trans         = manager.GetTransmission(vm.SelectedTransId),
                    VIN           = vm.VIN,
                    Year          = vm.Year,
                    IsFeatured    = false
                                    //picture path
                };
                var    saved = manager.AddVehicle(toAdd);
                string dir   = Server.MapPath("~/Images");

                vm.Picture.SaveAs(Path.Combine(dir, "inventory-" + saved.Id.ToString() + ".jpg"));
                saved.PicturePath = "~/Images/" + "inventory-" + saved.Id.ToString() + ".jpg";
                manager.EditVehicle(saved);
                return(RedirectToAction("Vehicles"));
            }
        }