/// <summary> /// Initializes a new instance of the <see cref="DriversAndCarsTabItemViewModel"/> class. /// </summary> /// <param name="modalDialogProvider">The modal dialog service.</param> /// <param name="serviceFactory">The service factory.</param> public DriversAndCarsTabItemViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory) : base(mainViewModel, modalDialogProvider, serviceFactory) { CarDetailsViewModel = new CarDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory); CarListViewModel = new CarListViewModel(MainViewModel, CarDetailsViewModel, ModalDialogProvider, ServiceFactory); DriverDetailsViewModel = new DriverDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory); DriverListViewModel = new DriverListViewModel(MainViewModel, DriverDetailsViewModel, ModalDialogProvider, ServiceFactory); ViewModelProvider.RegisterChildViewModel(CarDetailsViewModel, ViewModelProviderAction.IsReadOnlyChanged | ViewModelProviderAction.SaveInvoked); ViewModelProvider.RegisterChildViewModel(DriverDetailsViewModel, ViewModelProviderAction.IsReadOnlyChanged | ViewModelProviderAction.SaveInvoked); ViewModelProvider.RegisterChildViewModel(CarListViewModel, ViewModelProviderAction.DeleteInvoked); ViewModelProvider.RegisterChildViewModel(DriverListViewModel, ViewModelProviderAction.DeleteInvoked); ViewModelProvider.ChildrenViewModelDeleteInvoked += new System.EventHandler<ViewModelProviderActionEventArgs>(ViewModelProvider_ChildrenViewModelDeleteInvoked); ViewModelProvider.ChildrenViewModelSaveInvoked += new System.EventHandler<ViewModelProviderActionEventArgs>(ViewModelProvider_ChildrenViewModelSaveInvoked); }
public void Delete_WithValidCarObject_ReturnsCar() { var car = new Car() { Id = 1, CarModel = "testModel", ImageUrl = "testUrl", Make = "testMake", Owner = new School(), OwnerId = 1, Transmission = Transmission.Authomatic, VIN = "df33434", InUse = true }; var returnValue = new List <Car>() { car }; this.repository.Setup(r => r.All()).Returns(returnValue.AsQueryable); this.repository.Setup(r => r.Delete(car)).Callback(() => new Car() { Id = 1, CarModel = "testModel", ImageUrl = "testUrl", Make = "testMake", Owner = new School(), OwnerId = 1, Transmission = Transmission.Authomatic, VIN = "df33434", InUse = true }); var model = new CarDetailsViewModel() { Id = 1 }; var result = this.carService.Delete(model).GetAwaiter().GetResult(); Assert.That(result.CarModel, Is.EqualTo("testModel")); }
public async Task <IActionResult> ReturnCar(CarDetailsViewModel carReturnViewModel) { if (!this.ModelState.IsValid) { var parkings = await this.parkingsService.GetAllAsync <ParkingsServiceDropDownModel>(); carReturnViewModel.Parkings = parkings.Select(p => p.To <ParkingsDropDownViewModel>()).ToList(); return(this.View(carReturnViewModel)); } var carServiceModel = carReturnViewModel.To <CarServiceDetailsModel>(); carServiceModel.HireStatus = HireStatus.Available; carServiceModel.ReservationStatus = ReservationStatus.Free; await this.carsService.EditAsync(carServiceModel); return(this.Redirect("/Trips/MyTrips")); }
//TEMP //private static byte[] ResizeImage(byte[] array, float resizePercentage,bool OnlyWhenGreaterThan800kB = false) //{ // if (OnlyWhenGreaterThan800kB) // { // if (array.Length < 800000) // { // Debug.WriteLine("Afbeelding is reeds kleiner dan 800 kB"); // return array; // } // } // Bitmap image; // using (var ms = new System.IO.MemoryStream(array)) // { // image = new Bitmap(ms); // } // int currentWidth = image.Width; // int currentHeight = image.Height; // int width = (int)((float)currentWidth * resizePercentage); // int height = (int)((float)currentHeight * resizePercentage); // Bitmap resizedImage = new Bitmap(width, height); // using (Graphics gfx = Graphics.FromImage(resizedImage)) // { // gfx.DrawImage(image, new Rectangle(0, 0, width, height), // new Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel); // } // ImageConverter converter = new ImageConverter(); // return (byte[])converter.ConvertTo(resizedImage, typeof(byte[])); //} //END TEMP public ActionResult CarDetails(int carID) { CarDetailsViewModel vm = new CarDetailsViewModel(); tblCarsService service = new tblCarsService(); if (service.isSold(service.getCar(carID))) { return(HttpNotFound()); } else { tblBrandsService bservice = new tblBrandsService(); vm.car = service.getCar(carID); vm.images = service.GetImagesByCar(vm.car); vm.car.CarEquipment = Regex.Replace(vm.car.CarEquipment, @"\r\n?|\n", ","); vm.carbrand = bservice.getBrand(vm.car.BrandID).BrandName; vm.carmodel = vm.car.CarModel; return(View(vm)); } }
public IActionResult GetById(int id) { // Se o carro não existir, retornar notfound, senão ok var car = _dbContext.Cars.SingleOrDefault(c => c.Id == id); if (car == null) { return(NotFound()); } var carDetailsViewModel = new CarDetailsViewModel( car.Id, car.Brand, car.Model, car.VinCode, car.Color, car.Year, car.Price, car.ProductionDate); return(Ok(carDetailsViewModel)); }
public IActionResult GetById(int id) { var car = _dbContext.Cars.SingleOrDefault(car => car.Id == id); if (car == null) { return(NotFound()); } var carDetailViewModel = new CarDetailsViewModel( car.Id, car.Brand, car.Model, car.VinCode, car.Year, car.Price, car.Color, car.ProductionDate ); return(Ok(carDetailViewModel)); }
public IActionResult GetById(int id) { //SE CARRO DE IDENTIFICADOR ID NAO EXISTIR, RETORNA NOTFOUND //SENAO RETORN OK var car = _dbContext.Cars.SingleOrDefault(c => c.Id == id); if (car == null) { return(NotFound()); } var carDetailsViewModel = new CarDetailsViewModel( car.Id, car.Brand, car.Model, car.VinCode, car.Year, car.Price, car.ProductionDate ); return(Ok(carDetailsViewModel)); }
public IActionResult GetById(int id) { var car = _dbContext.Cars.SingleOrDefault(c => c.Id == id); if (car == null) { return(NotFound()); } var carDetailsViewModel = new CarDetailsViewModel( car.Id, car.Brand, car.Model, car.VinCode, car.Year, car.Price, car.Color, car.ProductionDate ); return(Ok(carDetailsViewModel)); // IF the id's car don't exists, return NOTFOUND // ELSE, OK }
public ActionResult Details(Guid id) { var carModelById = this.service .GetCarById(id); var viewModel = new CarDetailsViewModel() { Id = carModelById.Id, Manufacturer = carModelById.Manufacturer, Model = carModelById.Model, TypeOfEngine = carModelById.TypeOfEngine, RegistrationNumber = carModelById.RegistrationNumber, VINNumber = carModelById.VINNumber, CountOfTyres = carModelById.CountOfTyres, CountOfDoors = carModelById.CountOfDoors, TypeOfCar = carModelById.TypeOfCar, YearOfManufactoring = carModelById.YearOfManufacturing, ValidUntilAnnualCheckUp = carModelById.ValidUntilAnnualCheckUp, ValidUntilVignette = carModelById.ValidUntilVignette, ValidUntilInsurance = carModelById.ValidUntilInsurance, CarOwnerId = carModelById.UserId }; return(View(viewModel)); }
public CarDetailsViewModel GetCarById(int id) { var selectedCar = _dbContext.Cars .SingleOrDefault(c => c.Id == id); if (selectedCar == null) { return(null); } var response = new CarDetailsViewModel() { Id = selectedCar.Id, Brand = selectedCar.Brand, Model = selectedCar.Model, VinCode = selectedCar.VinCode, Year = selectedCar.Year, Price = selectedCar.Price, ProductionDate = selectedCar.ProductioDate, Color = selectedCar.Color }; return(response); }
public ViewResult Details(Guid id) { //Task<IActionResult> task = Task.Run(async () => await PDFAsync()); Car car = _carsrepository.GetCar(id); //FileDescription file1 = new FileDescription //{ // Id = Guid.NewGuid(), // Ext = ".jpg", // Description = "test1", // Enabled = true //}; //FileDescription file2 = new FileDescription //{ // Id = Guid.NewGuid(), // Ext = ".jpg", // Description = "test2", // Enabled = true //}; //var file1car1 = new CarFile(); //var file2car1 = new CarFile(); //file1car1.Car = car; //file1car1.CarId = car.Id; //file1car1.FileDescription = file1; //file1car1.FileDescriptionId = file1.Id; //file2car1.Car = car; //file2car1.CarId = car.Id; //file2car1.FileDescription = file2; //file2car1.FileDescriptionId = file2.Id; //_fileDescriptionsRepository.Create(file1); //_fileDescriptionsRepository.Create(file2); //_carFilesRepository.Add(file1car1); //_carFilesRepository.Add(file2car1); //dane dla skończonych wynajmów - id klienta,nazwa klienta, użytkownik,tel,mail, od, do, przebieg start, przebieg koniec, id wynajmu List <Rent> rents = _rentsRepository.GetAllRentsByCar(id).ToList(); Rent currentRent = null; var finishedRents = new List <Tuple <Guid, string, string, string, string, DateTime, DateTime, Tuple <int, int, Guid> > >(); string clientName = ""; if (rents != null) { foreach (var rent in rents) { if (rent.IsFinished) { HandoverDocument document = _handoverDocumentsRepository.GetHandoverByRent(rent.Id); var milage = Tuple.Create(document.StartMilage, document.EndMilage, rent.Id); var finishedrent = new Tuple <Guid, string, string, string, string, DateTime, DateTime, Tuple <int, int, Guid> > (rent.ClientId, _clientsRepository.GetClient(rent.ClientId).Name, rent.UserName, rent.UserPhone, rent.UserMail, rent.StartDate, rent.EndDate, milage); finishedRents.Add(finishedrent); } else { if (rent.IsActive) { currentRent = rent; clientName = _clientsRepository.GetClient(rent.ClientId).Name; } } } } Service lastService = null; IEnumerable <Service> services = _sevicesRepository.GetAllbyCar(car.Id); if (services.Count() > 0) { lastService = services.First(); foreach (var item in services) { item.Client = _clientsRepository.GetClient(item.ClientId); if (item.Date > lastService.Date) { lastService = item; } } } DateTime nextServiceDate = car.RegistrationDate.AddYears(car.YearsServiceInterval); int daysToNextService = (nextServiceDate - DateTime.Now.Date).Days; if (lastService != null) { nextServiceDate = lastService.Date.AddYears(car.YearsServiceInterval); daysToNextService = (DateTime.Now.Date - nextServiceDate).Days; } int milageToNextService = car.NextServiceMilage - car.Milage; IEnumerable <TyreInfo> tyres = _tyreInfosRepository.GetAllByCar(car.Id); foreach (var item in tyres) { if (item.TyreShopId != Guid.Empty) { item.TyreShop = _tyreShopsRepository.GetTyreShop(item.TyreShopId); } else { item.TyreShop = null; } } FinancialInfo financial = _financialInfosRepository.GetCarFinancialInfo(car.Id); IEnumerable <MilageRecord> records = _milageRecordsRepository.GetMilageRecordsByCar(car.Id); InsurancePolicy policy = _insurancePoliciesRepository.GetActiveCarPolicy(car.Id); List <InsurancePolicy> previousPolicies = new List <InsurancePolicy>(); foreach (var item in _insurancePoliciesRepository.GetAllCarPolicies(car.Id)) { if (!item.IsActive) { previousPolicies.Add(item); } } CarDetailsViewModel carDetailsViewModel = new CarDetailsViewModel() { DaysToNextService = daysToNextService, NextServiceDate = nextServiceDate, MilageToNextService = milageToNextService, FinancialInfo = financial, Car = car, Services = services, TyreInfos = tyres, MilageHistory = records, PageTitle = "Szczegóły " + car.RegistrationNumber, IsCurrentlyRented = !car.IsAvailable, PreviousRents = finishedRents, CurrentRent = currentRent, CurrentRentClientName = clientName, InsurancePolicy = policy, PreviousInsurancePolicies = previousPolicies }; return(View(carDetailsViewModel)); }
public async Task <IActionResult> Delete(int id, CarDetailsViewModel model) { await this.carService.Delete(id); return(RedirectToAction("All", "Car")); }