public void CanEditVehicle() { IRepository ADORepo = new ADORepository(); VehicleQueryModel model = new VehicleQueryModel(); model.VehicleId = 1; model.ModelId = 5; model.Year = 2019; model.VIN = "00000000000000000"; model.TransmissionType = "Automatic"; model.ConditionType = "New"; model.BodyStyle = "SUV"; model.InteriorColor = "Red"; model.ExteriorColor = "White"; model.MSRP = 55000; model.Mileage = 1; model.Description = "Some big SUV"; model.ImageFileName = "BigSuv.jpg"; model.FeaturedFlag = false; model.SalePrice = 49000; model.UserId = "913dd4f1-4506-4fad-91ae-4539b7a5bdb5"; VehicleQueryModel newModel = ADORepo.EditVehicle(model); Assert.AreEqual(1, newModel.VehicleId); Assert.AreEqual("Red", newModel.InteriorColor); Assert.AreNotEqual("Car", newModel.BodyStyle.ToString()); Assert.AreNotEqual("Black", newModel.InteriorColor.ToString()); Assert.AreNotEqual(1, newModel.ModelId); }
public ActionResult DeleteVehicle(VehicleQueryModel vcm) { var repo = RepositoryFactory.GetRepository(); repo.DeleteVehicle(vcm.VehicleId); return(RedirectToAction("Vehicles", "Admin")); }
//Invetory Detail public ActionResult Detail(int id) { var repo = RepositoryFactory.GetRepository(); VehicleQueryModel model = repo.GetVehicleDetail(id); return(View(model)); }
public ActionResult DeleteVehicle(int id) { var repo = RepositoryFactory.GetRepository(); VehicleQueryModel vcm = new VehicleQueryModel(); vcm = repo.GetVehicleDetail(id); return(View(vcm)); }
public void CanDeleteVehicle() { IRepository ADORepo = new ADORepository(); bool rtrn = ADORepo.DeleteVehicle(3); Assert.IsTrue(rtrn); VehicleQueryModel model = ADORepo.GetVehicleDetail(3); Assert.IsNull(model); }
public async Task <QueryResultModel <VehicleModel> > GetVehicles(VehicleQueryModel filterModel) { var re = Request; var headers = re.Headers; var x = User.Claims; var filter = mapper.Map <VehicleQueryModel, VehicleQuery>(filterModel); var vehicles = await repository.GetAllVehicles(filter); var result = mapper.Map <QueryResult <Vehicle>, QueryResultModel <VehicleModel> >(vehicles); return(result); }
public ActionResult EditVehicle(AddEditVehicleViewModel aevm) { string fileName = string.Empty; if (aevm.UploadedFile != null && aevm.UploadedFile.ContentLength > 0) { string path = Path.Combine(Server.MapPath("~/Images"), Path.GetFileName(aevm.UploadedFile.FileName)); fileName = Path.GetFileName(aevm.UploadedFile.FileName); aevm.UploadedFile.SaveAs(path); } var repo = RepositoryFactory.GetRepository(); VehicleQueryModel vcm = new VehicleQueryModel(); if (string.IsNullOrEmpty(aevm.ImageFileName)) { aevm.ImageFileName = string.Empty; } // Translate the Vechicle Query model to the AddEditVehicleViewModel vcm.ConditionType = aevm.Condition.ToString(); vcm.TransmissionType = aevm.Transmission.ToString(); vcm.VIN = aevm.VIN.ToString(); vcm.Year = aevm.Year; vcm.MSRP = aevm.MSRP; vcm.SalePrice = aevm.SalePrice; vcm.ModelId = aevm.ModelId; vcm.MakeId = aevm.MakeId; vcm.ImageFileName = string.IsNullOrEmpty(fileName) ? aevm.ImageFileName : fileName; vcm.Mileage = aevm.Mileage; vcm.InteriorColor = aevm.InteriorColor.ToString(); vcm.ExteriorColor = aevm.ExteriorColor.ToString(); vcm.Description = aevm.Description.ToString(); vcm.BodyStyle = aevm.BodyStyle.ToString(); vcm.VehicleId = aevm.VehicleId; vcm.FeaturedFlag = aevm.FeaturedFlag; //Find id of logged in user var userName = User.Identity.GetUserName(); var userId = context.Users.FirstOrDefault(u => u.UserName == userName).Id; vcm.UserId = aevm.UserId; repo.EditVehicle(vcm); //Save the changes return(RedirectToAction("Vehicles", "Admin")); }
public ActionResult AddVehicle(AddEditVehicleViewModel model) { string fileName = string.Empty; if (model.UploadedFile != null && model.UploadedFile.ContentLength > 0) { string path = Path.Combine(Server.MapPath("~/Images"), Path.GetFileName(model.UploadedFile.FileName)); fileName = Path.GetFileName(model.UploadedFile.FileName); model.UploadedFile.SaveAs(path); } if (string.IsNullOrEmpty(model.ImageFileName)) { model.ImageFileName = string.Empty; } var repo = RepositoryFactory.GetRepository(); VehicleQueryModel vcm = new VehicleQueryModel(); //Translate VehicleAddEditViewModel to VehicleQueryModel vcm.BodyStyle = model.BodyStyle.ToString(); vcm.ConditionType = model.Condition.ToString(); vcm.Description = model.Description.ToString(); vcm.ExteriorColor = model.ExteriorColor.ToString(); vcm.InteriorColor = model.InteriorColor.ToString(); vcm.MakeId = model.MakeId; vcm.ModelId = model.ModelId; vcm.MSRP = model.MSRP; vcm.SalePrice = model.SalePrice; vcm.Mileage = model.Mileage; vcm.SoldFlag = false; vcm.ImageFileName = string.IsNullOrEmpty(fileName) ? model.ImageFileName : fileName; vcm.TransmissionType = model.Transmission; vcm.SoldFlag = false; vcm.FeaturedFlag = false; vcm.FeaturedFlag = model.FeaturedFlag; vcm.VIN = model.VIN.ToString(); vcm.Year = model.Year; vcm.UserId = "913dd4f1-4506-4fad-91ae-4539b7a5bdb5"; ///Get the logged in user VehicleQueryModel newVehicle = repo.AddVehicle(vcm); int id = newVehicle.VehicleId; return(RedirectToAction("EditVehicle", "Admin", new { id })); //Need RouteValues pass id to edit.. }
public ActionResult Contact(int?vehicleId) { //Set message for contact us page var id = 0; if (vehicleId != null) //Will be null if coming from Home Page Contact link { id = vehicleId.Value; //Not null if from vehicle search / contact us button } Contacts model = new Contacts(); if (id != 0) //Coming from inventory search. VehicleId set. 0 - coming from home page { //custom message - contact about specific vehicle. var repo = RepositoryFactory.GetRepository(); VehicleQueryModel vm = repo.GetVehicleDetail(id); string message = $"Hello, Please Contact me about the {vm.Year} {vm.MakeDescription} {vm.ModelDescription}.\n VIN: {vm.VIN}"; model.Message = message; } return(View(model)); }
public ActionResult EditVehicle(int id) { var repo = RepositoryFactory.GetRepository(); var LookupValueRepo = LookupValueFactory.GetRepository(); VehicleQueryModel vcm = repo.GetVehicleDetail(id); AddEditVehicleViewModel aevm = new AddEditVehicleViewModel(); //Set lookup values aevm.SetBodyStyles(LookupValueRepo.GetBodyStyles()); aevm.SetCondition(LookupValueRepo.GetCondition()); aevm.SetExteriorColor(LookupValueRepo.GetExteriorColor()); aevm.SetInteriorColor(LookupValueRepo.GetInteriorColor()); aevm.SetMakes(repo.GetMakes()); aevm.SetTransmissions(LookupValueRepo.GetTransmissionTypes()); aevm.SetYears(LookupValueRepo.GetYears()); //Get the models for the make of this vehicle aevm.SetModels(repo.GetModelsByMakeId(vcm.MakeId)); // Translate the Vechicle Query model to the AddEditVehicleViewModel aevm.Condition = vcm.ConditionType.ToString(); aevm.Transmission = vcm.TransmissionType.ToString(); aevm.VIN = vcm.VIN.ToString(); aevm.Year = vcm.Year; aevm.MSRP = vcm.MSRP; aevm.SalePrice = vcm.SalePrice; aevm.ModelId = vcm.ModelId; aevm.MakeId = vcm.MakeId; aevm.ImageFileName = vcm.ImageFileName.ToString(); aevm.Mileage = vcm.Mileage; aevm.InteriorColor = vcm.InteriorColor.ToString(); aevm.ExteriorColor = vcm.ExteriorColor.ToString(); aevm.Description = vcm.Description.ToString(); aevm.BodyStyle = vcm.BodyStyle.ToString(); aevm.VehicleId = vcm.VehicleId; aevm.FeaturedFlag = vcm.FeaturedFlag; aevm.UserId = vcm.UserId; return(View(aevm)); }
public VehicleQueryModel AddVehicle(VehicleQueryModel newVehicle) { try { using (var sqlConnection = new SqlConnection()) { sqlConnection.ConnectionString = sqlConnectionString; SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "AddVehicle"; cmd.Parameters.AddWithValue("@ModelId", (int)newVehicle.ModelId); cmd.Parameters.AddWithValue("@Year", (int)newVehicle.Year); cmd.Parameters.AddWithValue("@VIN", newVehicle.VIN).ToString(); cmd.Parameters.AddWithValue("@TransmissionType", newVehicle.TransmissionType).ToString(); cmd.Parameters.AddWithValue("@ConditionType", newVehicle.ConditionType.ToString()); cmd.Parameters.AddWithValue("@BodyStyle", newVehicle.BodyStyle.ToString()); cmd.Parameters.AddWithValue("@InteriorColor", newVehicle.InteriorColor.ToString()); cmd.Parameters.AddWithValue("@ExteriorColor", newVehicle.ExteriorColor.ToString()); cmd.Parameters.AddWithValue("@MSRP", (decimal)newVehicle.MSRP); cmd.Parameters.AddWithValue("@Mileage", (decimal)newVehicle.Mileage); cmd.Parameters.AddWithValue("@Description", newVehicle.Description.ToString()); cmd.Parameters.AddWithValue("@ImageFileName", newVehicle.ImageFileName.ToString()); cmd.Parameters.AddWithValue("@SalePrice", (decimal)newVehicle.SalePrice); cmd.Parameters.AddWithValue("@UserId", newVehicle.UserId.ToString()); cmd.Parameters.Add(new SqlParameter("@NewID", SqlDbType.Int)); cmd.Parameters["@NewID"].Direction = ParameterDirection.Output; sqlConnection.Open(); cmd.ExecuteNonQuery(); newVehicle.VehicleId = (int)cmd.Parameters["@NewID"].Value; } return(newVehicle); } catch { return(null); } }
public VehicleQueryModel EditVehicle(VehicleQueryModel editVehicle) { try { using (var sqlConnection = new SqlConnection()) { sqlConnection.ConnectionString = sqlConnectionString; SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "EditVehicle"; cmd.Parameters.AddWithValue("@VehicleId", (int)editVehicle.VehicleId); cmd.Parameters.AddWithValue("@ModelId", (int)editVehicle.ModelId); cmd.Parameters.AddWithValue("@Year", (int)editVehicle.Year); cmd.Parameters.AddWithValue("@VIN", editVehicle.VIN).ToString(); cmd.Parameters.AddWithValue("@TransmissionType", editVehicle.TransmissionType).ToString(); cmd.Parameters.AddWithValue("@ConditionType", editVehicle.ConditionType.ToString()); cmd.Parameters.AddWithValue("@BodyStyle", editVehicle.BodyStyle.ToString()); cmd.Parameters.AddWithValue("@InteriorColor", editVehicle.InteriorColor.ToString()); cmd.Parameters.AddWithValue("@ExteriorColor", editVehicle.ExteriorColor.ToString()); cmd.Parameters.AddWithValue("@MSRP", (decimal)editVehicle.MSRP); cmd.Parameters.AddWithValue("@Mileage", (decimal)editVehicle.Mileage); cmd.Parameters.AddWithValue("@Description", editVehicle.Description.ToString()); cmd.Parameters.AddWithValue("@ImageFileName", editVehicle.ImageFileName.ToString()); cmd.Parameters.AddWithValue("@FeaturedFlag", (bool)editVehicle.FeaturedFlag); cmd.Parameters.AddWithValue("@SalePrice", (decimal)editVehicle.SalePrice); cmd.Parameters.AddWithValue("@UserId", editVehicle.UserId.ToString()); sqlConnection.Open(); cmd.ExecuteNonQuery(); } return(editVehicle); } catch { return(null); } }
public List <VehicleQueryModel> GetVehicles(int minYear, int maxYear, decimal minPrice, decimal maxPrice, string searchTerm, string condition) { try { List <VehicleQueryModel> model = new List <VehicleQueryModel>(); using (var sqlConnection = new SqlConnection()) { sqlConnection.ConnectionString = sqlConnectionString; SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "GetVehicles"; cmd.Parameters.AddWithValue("@MinPrice", (decimal)minPrice); cmd.Parameters.AddWithValue("@MaxPrice", (decimal)maxPrice); cmd.Parameters.AddWithValue("@MinYear", (int)minYear); cmd.Parameters.AddWithValue("@MaxYear", (int)maxYear); cmd.Parameters.AddWithValue("@Condition", string.IsNullOrEmpty(condition) ? null : condition); cmd.Parameters.AddWithValue("@SearchTerm", string.IsNullOrEmpty(searchTerm) ? null : searchTerm); sqlConnection.Open(); SqlDataReader sqlDataRdr = cmd.ExecuteReader(); while (sqlDataRdr.Read()) { VehicleQueryModel vm = new VehicleQueryModel(); vm.VehicleId = (int)sqlDataRdr["VehicleId"]; vm.Year = (int)sqlDataRdr["Year"]; vm.VIN = sqlDataRdr["VIN"].ToString(); vm.TransmissionType = sqlDataRdr["TransmissionType"].ToString(); vm.ConditionType = sqlDataRdr["ConditionType"].ToString(); vm.BodyStyle = sqlDataRdr["BodyStyle"].ToString(); vm.InteriorColor = sqlDataRdr["InteriorColor"].ToString(); vm.ExteriorColor = sqlDataRdr["ExteriorColor"].ToString(); vm.MSRP = (decimal)sqlDataRdr["MSRP"]; vm.Mileage = (decimal)sqlDataRdr["Mileage"]; vm.Description = sqlDataRdr["Description"].ToString(); vm.ModelDescription = sqlDataRdr["ModelDescription"].ToString(); if (sqlDataRdr["ImageFileName"] != DBNull.Value) { vm.ImageFileName = sqlDataRdr["ImageFileName"].ToString(); } if (sqlDataRdr["FeaturedFlag"] != DBNull.Value) { vm.FeaturedFlag = (bool)sqlDataRdr["FeaturedFlag"]; } if (sqlDataRdr["SoldFlag"] != DBNull.Value) { vm.SoldFlag = (bool)sqlDataRdr["SoldFlag"]; } vm.MakeId = (int)sqlDataRdr["MakeId"]; vm.MakeDescription = sqlDataRdr["MakeDescription"].ToString(); vm.ModelId = (int)sqlDataRdr["ModelId"]; vm.Description = sqlDataRdr["Description"].ToString(); vm.SalePrice = (decimal)sqlDataRdr["SalePrice"]; vm.UserId = sqlDataRdr["UserId"].ToString(); model.Add(vm); } if (model.Count > 0) { return(model); } return(null); } } catch (Exception) { return(null); } }
public VehicleQueryModel GetVehicleDetail(int id) { try { VehicleQueryModel model = null; using (var sqlConnection = new SqlConnection()) { sqlConnection.ConnectionString = sqlConnectionString; SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "GetVehicleById"; cmd.Parameters.AddWithValue("@VehicleId", id); sqlConnection.Open(); SqlDataReader sqlDataRdr = cmd.ExecuteReader(); if (sqlDataRdr.Read()) { model = new VehicleQueryModel(); model.VehicleId = (int)sqlDataRdr["VehicleId"]; model.Year = (int)sqlDataRdr["Year"]; model.VIN = sqlDataRdr["VIN"].ToString(); model.TransmissionType = sqlDataRdr["TransmissionType"].ToString(); model.ConditionType = sqlDataRdr["ConditionType"].ToString(); model.BodyStyle = sqlDataRdr["BodyStyle"].ToString(); model.InteriorColor = sqlDataRdr["InteriorColor"].ToString(); model.ExteriorColor = sqlDataRdr["ExteriorColor"].ToString(); model.MSRP = (decimal)sqlDataRdr["MSRP"]; model.Mileage = (decimal)sqlDataRdr["Mileage"]; model.SalePrice = (decimal)sqlDataRdr["SalePrice"]; model.Description = sqlDataRdr["Description"].ToString(); if (sqlDataRdr["ImageFileName"] != DBNull.Value) { model.ImageFileName = sqlDataRdr["ImageFileName"].ToString(); } if (sqlDataRdr["FeaturedFlag"] != DBNull.Value) { model.FeaturedFlag = (bool)sqlDataRdr["FeaturedFlag"]; } if (sqlDataRdr["SoldFlag"] != DBNull.Value) { model.SoldFlag = (bool)sqlDataRdr["SoldFlag"]; } model.MakeId = (int)sqlDataRdr["MakeId"]; model.MakeDescription = sqlDataRdr["MakeDescription"].ToString(); model.ModelId = (int)sqlDataRdr["ModelId"]; model.Description = sqlDataRdr["Description"].ToString(); model.SalePrice = (decimal)sqlDataRdr["SalePrice"]; model.UserId = sqlDataRdr["UserId"].ToString(); model.ModelDescription = sqlDataRdr["ModelDescription"].ToString(); } return(model); } } catch { return(null); } }
public List <VehicleQueryModel> GetFeaturedVehicles() { try { List <VehicleQueryModel> model = new List <VehicleQueryModel>(); using (var sqlConnection = new SqlConnection()) { sqlConnection.ConnectionString = sqlConnectionString; SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "GetFeaturedVehicles"; sqlConnection.Open(); SqlDataReader sqlDataRdr = cmd.ExecuteReader(); while (sqlDataRdr.Read()) { VehicleQueryModel vm = new VehicleQueryModel(); vm.VehicleId = (int)sqlDataRdr["VehicleId"]; vm.Year = (int)sqlDataRdr["Year"]; vm.VIN = sqlDataRdr["VIN"].ToString(); vm.TransmissionType = sqlDataRdr["TransmissionType"].ToString(); vm.ConditionType = sqlDataRdr["ConditionType"].ToString(); vm.BodyStyle = sqlDataRdr["BodyStyle"].ToString(); vm.InteriorColor = sqlDataRdr["InteriorColor"].ToString(); vm.ExteriorColor = sqlDataRdr["ExteriorColor"].ToString(); vm.MSRP = (decimal)sqlDataRdr["MSRP"]; vm.Mileage = (decimal)sqlDataRdr["Mileage"]; vm.Description = sqlDataRdr["Description"].ToString(); if (sqlDataRdr["ImageFileName"] != DBNull.Value) { vm.ImageFileName = sqlDataRdr["ImageFileName"].ToString(); } if (sqlDataRdr["FeaturedFlag"] != DBNull.Value) { vm.FeaturedFlag = (bool)sqlDataRdr["FeaturedFlag"]; } if (sqlDataRdr["SoldFlag"] != DBNull.Value) { vm.SoldFlag = (bool)sqlDataRdr["SoldFlag"]; } vm.MakeId = (int)sqlDataRdr["MakeId"]; vm.MakeDescription = sqlDataRdr["MakeDescription"].ToString(); vm.ModelId = (int)sqlDataRdr["ModelId"]; vm.Description = sqlDataRdr["Description"].ToString(); vm.SalePrice = (decimal)sqlDataRdr["SalePrice"]; vm.UserId = sqlDataRdr["UserId"].ToString(); vm.ModelDescription = sqlDataRdr["ModelDescription"].ToString(); model.Add(vm); } } if (model.Count > 0) { return(model); } return(null); } catch { return(null); } }