Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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));
        }
Ejemplo n.º 3
0
        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 }));
            }
        }
Ejemplo n.º 4
0
        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"));
        }
Ejemplo n.º 5
0
        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"));
        }
Ejemplo n.º 6
0
        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);
                }
            }
        }
Ejemplo n.º 7
0
 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();
     }
 }
Ejemplo n.º 8
0
        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));
        }
Ejemplo n.º 9
0
        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());
        }
Ejemplo n.º 10
0
        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));
        }