public async Task <IActionResult> Edit(int id, [Bind("Id,VehicleTypId,VehicleTyp,RegNr,VehicleColor,VehicleModel,VehicleBrand,NumberOfWheels,ParkInDate,ParkOutDate")] ParkedVehicle parkedVehicle) { if (id != parkedVehicle.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(parkedVehicle); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ParkedVehicleExists(parkedVehicle.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(parkedVehicle)); }
public async Task <IActionResult> Parkthis(int vehicleid) { var thisvehicle = await _context.Vehicles.Where(v => v.Id == vehicleid).FirstOrDefaultAsync(); var memberid = thisvehicle.MemberId; ParkedVehicle InparkedVehicle = new ParkedVehicle { MemberId = memberid, Member = await _context.Members.Where(m => m.Id == memberid).FirstOrDefaultAsync(), VehicleId = vehicleid, Vehicle = thisvehicle }; if (parkhouse.Park(InparkedVehicle)) { _context.Add(InparkedVehicle); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Details), new { id = InparkedVehicle.Id })); } else { var svar = new SingelViewModel { ParkedVehicle = new ParkedViewModel { Vehicle = new Vehicle { RegNr = thisvehicle.RegNr } } }; return(View("GarageFull", svar)); } }
public async Task <IActionResult> Create([Bind("Id,VehicleTypId,VehicleTyp,RegNr,VehicleColor,VehicleModel,VehicleBrand,NumberOfWheels,ParkInDate,ParkOutDate,MemberId")] CreateSetViewModel parkedVehicle) // public async Task<IActionResult> Create(CreateSetViewModel parkedVehicle) { var reg_bussey = await _context.ParkedVehicle.Where(v => v.Vehicle.RegNr == parkedVehicle.RegNr && v.ParkOutDate == null).ToListAsync(); var svar = new SingelViewModel { ParkedVehicle = new ParkedViewModel { Vehicle = new Vehicle { RegNr = parkedVehicle.RegNr } } }; if (reg_bussey.Count > 0) { // return RedirectToAction(nameof(Create)); return(View("NotCreate", svar)); } if (ModelState.IsValid) { await InitPlots(); // if model does not exist. if (!(_context.Vehicles.Any(v => v.RegNr == parkedVehicle.RegNr))) { var initVehicle = new Vehicle { VehicleTypId = parkedVehicle.VehicleTypId, RegNr = parkedVehicle.RegNr, VehicleColor = parkedVehicle.VehicleColor, VehicleModel = parkedVehicle.VehicleModel, VehicleBrand = parkedVehicle.VehicleBrand, NumberOfWheels = parkedVehicle.NumberOfWheels, MemberId = parkedVehicle.MemberId }; _context.Vehicles.Add(initVehicle); await _context.SaveChangesAsync(); } parkedVehicle.VehicleTyp = await _context.VehicleTyp.Where(v => v.VehicleTypId == parkedVehicle.VehicleTypId).FirstOrDefaultAsync(); ParkedVehicle InparkedVehicle = new ParkedVehicle { MemberId = parkedVehicle.MemberId, Member = await _context.Members.Where(m => m.Id == parkedVehicle.MemberId).FirstOrDefaultAsync(), VehicleId = await _context.Vehicles.Where(m => m.RegNr == parkedVehicle.RegNr).Select(m => m.Id).FirstOrDefaultAsync(), Vehicle = await _context.Vehicles.Where(m => m.RegNr == parkedVehicle.RegNr).FirstOrDefaultAsync() }; if (parkhouse.Park(InparkedVehicle)) { _context.Add(InparkedVehicle); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Details), new { id = InparkedVehicle.Id })); } else { return(View("GarageFull", svar)); } } return(View(svar)); }
public static void Initialize(IServiceProvider serviceProvider) { var options = serviceProvider.GetRequiredService <DbContextOptions <Garage_2_0_MPTContext> >(); using (var context = new Garage_2_0_MPTContext(options)) { if (context.Vehicles.Any()) { // ändra till return efter första som funkar context.Members.RemoveRange(context.Members); context.Vehicles.RemoveRange(context.Vehicles); context.ParkedVehicle.RemoveRange(context.ParkedVehicle); } // Let's seed! var members = new List <Member>(); for (int i = 0; i < 5; i++) { string name = Faker.NameFaker.Name(); var member = new Member { FirstName = Faker.NameFaker.FirstName() , LastName = Faker.NameFaker.LastName() , Street = Faker.LocationFaker.Street() , ZipCode = Faker.LocationFaker.PostCode() , City = Faker.LocationFaker.City() , Email = Faker.InternetFaker.Email(), PassWord = new byte[] { 255, 0, 123 }, }; members.Add(member); } context.Members.AddRange(members); var Vehicles = new List <Vehicle>(); foreach (var member in members) { var Vehicle1 = new Vehicle { VehicleTypId = Faker.NumberFaker.Number(5) + 1 , RegNr = Faker.StringFaker.Randomize("ABC ") + Faker.NumberFaker.Number(999) , VehicleColor = myColor() , VehicleModel = "BM" , VehicleBrand = myBrand() , NumberOfWheels = (Faker.NumberFaker.Number(2) * 2) + 2 , MemberId = member.Id }; Vehicles.Add(Vehicle1); int i = 1; while (i < Faker.NumberFaker.Number(5)) { var Vehicle2 = new Vehicle { VehicleTypId = Faker.NumberFaker.Number(5) + 1 , RegNr = Faker.StringFaker.Randomize("CDE ") + Faker.NumberFaker.Number(999) , VehicleColor = myColor() , VehicleModel = "911" , VehicleBrand = myBrand() , NumberOfWheels = (Faker.NumberFaker.Number(2) * 2) + 2 , MemberId = member.Id }; Vehicles.Add(Vehicle2); i++; } } context.Vehicles.AddRange(Vehicles); var ParkedVehicles = new List <ParkedVehicle>(); foreach (var Vehicle in Vehicles) { if (Faker.NumberFaker.Number(1) == 0) { var ParkedVehicle = new ParkedVehicle { ParkInDate = Faker.DateTimeFaker.DateTime(DateTime.Now.AddDays(-7), DateTime.Now) , ParkOutDate = null , Where = null , Position = null , MemberId = Vehicle.MemberId , VehicleId = Vehicle.Id }; if (Faker.NumberFaker.Number(3) == 0 && ParkedVehicle.ParkInDate < DateTime.Now.AddDays(-2)) { ParkedVehicle.ParkOutDate = DateTime.Now.AddDays(-1); } ParkedVehicles.Add(ParkedVehicle); } } context.ParkedVehicle.AddRange(ParkedVehicles); context.SaveChanges(); } }