public ActionResult Create([Bind(Include = "VehicleInformationId,VehicleCompany,ApplicationUserId,VehicleName,VehicleColor,VehicleModel,VehicleRate,VehicleBodyNumber,VehicleEngineNumber,VehicleNumber,VehicleWarranty,VehicleDescription,VehicleStatus")] VehicleInformation vehicleInformation) { if (ModelState.IsValid) { vehicleInformation.RegistrationDate = DateTime.Now.Date; List <VehicleImages> fileDetails = new List <VehicleImages>(); for (int i = 0; i < Request.Files.Count; i++) { var file = Request.Files[i]; if (file != null && file.ContentLength > 0) { var fileName = Path.GetFileName(file.FileName); VehicleImages fileDetail = new VehicleImages() { FileName = fileName, Extension = Path.GetExtension(fileName), Id = Guid.NewGuid() }; fileDetails.Add(fileDetail); var path = Path.Combine(Server.MapPath("~/Data/"), fileDetail.Id + fileDetail.Extension); file.SaveAs(path); } } vehicleInformation.VehicleImages = fileDetails; vehicleInformation.ApplicationUserId = User.Identity.GetUserId(); db.VehicleInformations.Add(vehicleInformation); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ApplicationUserId = new SelectList(db.Users, "Id", "Name", vehicleInformation.ApplicationUserId); return(View(vehicleInformation)); }
public ActionResult MyVehiclesGrid(string vehicleIds, decimal fromPrice, decimal toPrice) { string[] selectedVehicles = new string[] { }; if (!string.IsNullOrEmpty(vehicleIds)) { selectedVehicles = vehicleIds.Split(","); } var result = _context.Vehicles.Include(o => o.VehicleTypes).Include(o => o.VehicleImages).Include(o => o.VehicleRatings) .Where(o => o.IsSold == false && o.UserId == GetLoggedInUserId() && (o.SalesPrice > fromPrice && o.SalesPrice < (toPrice == 0 ? 1000000 : toPrice))).ToList(); foreach (var item in result) { if (item.VehicleImages.Count == 0) { var vehicleImage = new VehicleImages { FileNameOnDisk = "logo1.png", VehicleId = item.Id }; item.VehicleImages.Add(vehicleImage); } var stars = 0; if (item.VehicleRatings.Count == 0) { stars = 5; item.Stars = stars; } else { var count = 0; foreach (var item2 in item.VehicleRatings) { count += item2.Stars; } var totalUsers = item.VehicleRatings.Count; var sumOfUserRating = totalUsers * 5; stars = (count * 5) / sumOfUserRating; item.Stars = stars; } } List <Vehicles> vehicles = new List <Vehicles>(); if (selectedVehicles.Count() > 0) { foreach (var item in selectedVehicles) { var vehicle = result.Where(o => o.VehicleTypeId == Convert.ToInt32(item)).ToList(); if (vehicle.Count() > 0) { foreach (var s in vehicle) { vehicles.Add(s); } } } result = vehicles; } return(PartialView(result)); }
public JsonResult DeleteFile(string id) { if (String.IsNullOrEmpty(id)) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json(new { Result = "Error" })); } try { Guid guid = new Guid(id); VehicleImages fileDetail = db.VehicleImages.Find(guid); if (fileDetail == null) { Response.StatusCode = (int)HttpStatusCode.NotFound; return(Json(new { Result = "Error" })); } //Remove from database db.VehicleImages.Remove(fileDetail); db.SaveChanges(); //Delete file from the file system var path = Path.Combine(Server.MapPath("~/Data/"), fileDetail.Id + fileDetail.Extension); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } return(Json(new { Result = "OK" })); } catch (Exception ex) { return(Json(new { Result = "ERROR", Message = ex.Message })); } }
public IActionResult SaveVehicle(Vehicles vehicle, List <IFormFile> files) { vehicle.UserId = 1014; _context.Entry(vehicle).State = vehicle.Id > 0 ? Microsoft.EntityFrameworkCore.EntityState.Modified : Microsoft.EntityFrameworkCore.EntityState.Added; var uploads = Path.Combine(_hostingEnvironment.WebRootPath, "VehicleImages"); foreach (var file in files) { if (file.Length > 0) { var filePath = Path.Combine(uploads, file.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { file.CopyTo(fileStream); } var objVehicleImage = new VehicleImages { FileNameOnDisk = file.FileName, VehicleId = vehicle.Id }; vehicle.VehicleImages.Add(objVehicleImage); } } if (files.Count() > 0) { _context.Database.ExecuteSqlCommand("Delete From VehicleImages Where VehicleId = {0}", vehicle.Id); _context.VehicleImages.AddRange(vehicle.VehicleImages); } _context.SaveChanges(); return(RedirectToAction("Vehicles")); }
public IActionResult AddVehicle(Vehicles vehicle, List <IFormFile> files) { vehicle.UserId = GetLoggedInUserId(); _context.Entry(vehicle).State = vehicle.Id > 0 ? Microsoft.EntityFrameworkCore.EntityState.Modified : Microsoft.EntityFrameworkCore.EntityState.Added; var uploads = Path.Combine(_hostingEnvironment.WebRootPath, "VehicleImages"); foreach (var file in files) { if (file.Length > 0) { var filePath = Path.Combine(uploads, file.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { file.CopyTo(fileStream); } var objVehicleImage = new VehicleImages { FileNameOnDisk = file.FileName, VehicleId = vehicle.Id }; vehicle.VehicleImages.Add(objVehicleImage); } } _context.VehicleImages.AddRange(vehicle.VehicleImages); _context.SaveChanges(); return(RedirectToAction("MyVehicles")); }
public VehicleDto(Vehicle vehicle) { VIN = vehicle.VIN; Username = vehicle.UserIdentityGuid; InstagramUri = vehicle.InstagramUri; FacebookUri = vehicle.FacebookUri; ImageUri = vehicle.Image.Uri; ColorCode = vehicle.Color.Code; ColorName = vehicle.Color.Name; Description = vehicle.Description; Manufacturer = vehicle.ModelYear.Model.Manufacturer.Name; Model = vehicle.ModelYear.Model.Name; Year = vehicle.ModelYear.Year; Transmission = vehicle.Transmission.Name; VehicleLocation = new VehicleLocation(vehicle.VehicleLocation.Latitude, vehicle.VehicleLocation.Longitude); ViewCount = vehicle.ViewCount; Status = vehicle.Status.Name; if (vehicle.VehicleImages != null) { foreach (var vi in vehicle.VehicleImages) { VehicleImages.Add(vi.Image); } } }
public void SaveSeller(ApplicationUser user, List <IFormFile> files) { if (ModelState.IsValid) { foreach (var item in user.Vehicles) { item.UserId = user.Id; _context.Entry(item).State = item.Id > 0 ? Microsoft.EntityFrameworkCore.EntityState.Modified : Microsoft.EntityFrameworkCore.EntityState.Added; var uploads = Path.Combine(_hostingEnvironment.WebRootPath, "VehicleImages"); foreach (var file in files) { if (file.Length > 0) { var filePath = Path.Combine(uploads, file.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { file.CopyTo(fileStream); } var objVehicleImage = new VehicleImages { FileNameOnDisk = file.FileName, VehicleId = item.Id }; item.VehicleImages.Add(objVehicleImage); } } _context.VehicleImages.AddRange(item.VehicleImages); } _context.SaveChanges(); } }
public ActionResult VehicleDetail(int id) { int userId = GetLoggedInUserId(); if (userId > 0) { TempData["IsApplication"] = _context.ApplicantDetails.Any(o => o.UserId == userId); } var result = _context.Vehicles.Include(o => o.User).Include(o => o.VehicleTypes).Include(o => o.VehicleImages) .Include(o => o.VehicleRatings).ThenInclude(o => o.User).FirstOrDefault(o => o.Id == id); if (result != null) { if (result.VehicleImages.Count() == 0) { var vehicleImage = new VehicleImages { FileNameOnDisk = "logo1.png", VehicleId = result.Id }; result.VehicleImages.Add(vehicleImage); } var stars = 0; if (result.VehicleRatings.Count == 0) { stars = 5; result.Stars = stars; } else { var count = 0; foreach (var result2 in result.VehicleRatings) { count += result2.Stars; } var totalUsers = result.VehicleRatings.Count; var sumOfUserRating = totalUsers * 5; stars = (count * 5) / sumOfUserRating; result.Stars = stars; } } return(View(result)); }
public IActionResult BuyerRegistration() { var vehicles = _context.Vehicles.Include(o => o.VehicleTypes) .Include(o => o.VehicleImages).Include(o => o.VehicleRatings).Where(o => o.IsSold == false).ToList(); foreach (var item in vehicles) { if (item.VehicleImages.Count == 0) { var vehicleImage = new VehicleImages { FileNameOnDisk = "logo1.png", VehicleId = item.Id }; item.VehicleImages.Add(vehicleImage); } var stars = 0; if (item.VehicleRatings.Count == 0) { stars = 5; item.Stars = stars; } else { var count = 0; foreach (var item2 in item.VehicleRatings) { count += item2.Stars; } var totalUsers = item.VehicleRatings.Count; var sumOfUserRating = totalUsers * 5; stars = (count * 5) / sumOfUserRating; item.Stars = stars; } } TempData["VehicleTypes"] = _context.VehicleTypes.ToList(); TempData["Vehicles"] = vehicles; return(View()); }
public ActionResult InventoryGrid(string vehicleIds, decimal fromPrice, decimal toPrice, string searchText, string searchModel, DateTime?searchYear, int take, int skip) { string[] selectedVehicles = new string[] { }; ViewBag.TotalVehicles = _context.Vehicles.Count(); if (!string.IsNullOrEmpty(vehicleIds)) { selectedVehicles = vehicleIds.Split(","); } ViewBag.SearchText = searchText; var result = new List <Vehicles>(); searchText = searchText == null ? string.Empty : searchText; result = _context.Vehicles.Include(o => o.VehicleTypes) .Include(o => o.VehicleImages).Include(o => o.VehicleRatings) .Where(o => (o.VehicleTypes.VehicleTypeName.Contains(searchText) || o.Vinnumber.Contains(searchText) || o.Location.Contains(searchText) || o.Mileage.Contains(searchText) || o.CityOrState.Contains(searchText) || o.SalesPrice.Equals(searchText)) && (o.Model.Contains(string.IsNullOrEmpty(searchModel) ? string.Empty : searchModel)) && (o.IsSold == false) && (o.SalesPrice > fromPrice && o.SalesPrice < (toPrice == 0 ? 1000000 : toPrice))).Skip(skip).Take(take).ToList(); if (searchYear.HasValue) { result = result.Where(o => o.MakeYear.Year == searchYear.Value.Year).ToList(); } TempData["TotalVehicles"] = result.Count(); foreach (var item in result) { if (item.VehicleImages.Count == 0) { var vehicleImage = new VehicleImages { FileNameOnDisk = "logo1.png", VehicleId = item.Id }; item.VehicleImages.Add(vehicleImage); } var stars = 0; if (item.VehicleRatings.Count == 0) { stars = 5; item.Stars = stars; } else { var count = 0; foreach (var item2 in item.VehicleRatings) { count += item2.Stars; } var totalUsers = item.VehicleRatings.Count; var sumOfUserRating = totalUsers * 5; stars = (count * 5) / sumOfUserRating; item.Stars = stars; } } List <Vehicles> vehicles = new List <Vehicles>(); if (selectedVehicles.Count() > 0) { foreach (var item in selectedVehicles) { var vehicle = result.Where(o => o.VehicleTypeId == Convert.ToInt32(item)).ToList(); if (vehicle.Count() > 0) { foreach (var s in vehicle) { vehicles.Add(s); } } } result = vehicles; } return(PartialView(result)); }