public async Task<IActionResult> AddVehicle(AddServiceItemViewModel model) { if (this.ModelState.IsValid) { await _serviceOrderRepository.AddItemToServiceOrderAsync(model, this.User.Identity.Name); return this.RedirectToAction("Create"); } return View(model); }
public async Task AddItemToServiceOrderAsync(AddServiceItemViewModel model, string userName) { var user = await _userHelper.GetUserByEmailAsync(userName); if (user == null) { return; } var vehicle = await _context.Vehicles.FindAsync(model.VehicleId); if (vehicle == null) { return; } var serviceType = await _context.ServiceTypes.FindAsync(model.VehicleId); if (serviceType == null) { return; } var parts = await _context.Parts.FindAsync(model.VehicleId); if (serviceType == null) { return; } var serviceOrderDetailTemp = await _context.ServiceOrderDetailTemp .Where(adt => adt.User == user && adt.Vehicle == vehicle) .FirstOrDefaultAsync(); if (serviceOrderDetailTemp == null) { serviceOrderDetailTemp = new ServiceOrderDetailTemp { LicencePlate = vehicle.VehiclePlateNumber, ServiceType = serviceType.Type, PartName = parts.PartName, Vehicle = vehicle, User = user }; _context.ServiceOrderDetailTemp.Add(serviceOrderDetailTemp); } else { _context.ServiceOrderDetailTemp.Update(serviceOrderDetailTemp); } await _context.SaveChangesAsync(); }
public IActionResult AddVehicle() { var model = new AddServiceItemViewModel { Vehicles = _vehicleRepository.GetComboVehicles(), ServiceType = _serviceTypeRepository.GetAllServiceTypes(), Parts = _partsRepository.GetAllParts() }; return View(model); }
public IEnumerable <SelectListItem> GetAllParts() { var model = new AddServiceItemViewModel(); var list = _context.Parts.Select(p => new SelectListItem { Text = p.PartName, Value = p.Id.ToString() }).ToList(); list.Insert(0, new SelectListItem { Text = "(Select a Part...)", Value = "0" }); return(list); }
public IEnumerable <SelectListItem> GetAllServiceTypes() { var model = new AddServiceItemViewModel(); var list = _context.ServiceTypes.Select(s => new SelectListItem { Text = s.Type, Value = s.Id.ToString() }).ToList(); list.Insert(0, new SelectListItem { Text = "(Select a Service Type...)", Value = "0" }); return(list); }
public IActionResult PhaseTwoAddItemService(AddServiceItemViewModel model) { if (!ModelState.IsValid) { return(BadRequest()); } Guid?_id = null; var user = this._context.Users.FirstOrDefault(u => u.Id == model.UserId); var service = this._context.Services.FirstOrDefault(s => s.Id == model.ServiceId); var booking = this._context.Bookings.FirstOrDefault(b => b.Id == model.BookingId); if (user != null) { if (service != null) { if (booking != null) { booking.ServiceId = model.ServiceId; booking.Price = service.Price; booking.Description = service.Description; booking.ServiceType = service.ServiceType; booking.Title = service.Vehicle; booking.ItemTotal = 1; booking.BookingStatus = Infrastructures.Domain.Enums.BookingStatus.Pending; booking.PaymentType = Infrastructures.Domain.Enums.PaymentType.Unpaid; this._context.Bookings.Update(booking); this._context.SaveChanges(); _id = booking.Id; } } } return(Content(@"/booking/phase-three-booking/" + model.UserId + "/" + _id)); }