public async Task <IActionResult> Post([FromBody] VMVehicle vehicleD)
        {
            try
            {
                if (ModelState.IsValid && vehicleD.Model.ToLower() != "string" && vehicleD.RegNum.ToLower() != "string")
                {
                    var existingV = await _vehicleService.GetByRegnumAsync(vehicleD.RegNum);

                    if (existingV != null)
                    {
                        return(BadRequest("Vehicle with this registration number is already exist."));
                    }
                    var vehicle = _mapper.Map <Vehicle>(vehicleD);
                    await _vehicleService.RegisterVehicle(vehicle);

                    _logger.LogInfo($"Vehicle registered in database.");
                    return(Ok("Vehicle registered please sign in vehicle to sync with system!!"));
                }
                else
                {
                    return(BadRequest("Validation error"));
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"Something went wrong inside RegisterVehicle method: {ex.Message}");
                return(StatusCode(500, "Internal server error"));
            }
        }
        public ActionResult ListProduct()
        {
            List <VMVehicle> vehiclesList = new List <VMVehicle>();
            var v = db.VehicleDetails.Include("VehicleImages").Where(x => x.IsActive == true && x.IsDelete == false).ToList();

            foreach (var vd in v)
            {
                VMVehicle vMVehicle = new VMVehicle();
                vMVehicle.VehicleId   = vd.VehicleId;
                vMVehicle.VehicleName = vd.VehicleName;
                vMVehicle.VehicleNo   = vd.VehicleNo;
                vMVehicle.BrandId     = vd.BrandId;
                //vMVehicle.BrandName = vd.BrandName;
                vMVehicle.CategoryId       = vd.CategoryId;
                vMVehicle.ColorId          = vd.ColorId;
                vMVehicle.Euronum          = vd.Euronum;
                vMVehicle.Kilometers       = vd.Kilometers;
                vMVehicle.RegistrationYear = vd.RegistrationYear;
                vMVehicle.Price            = vd.Price;
                vMVehicle.Weight           = vd.Weight;
                vMVehicle.NoOfSeats        = vd.NoOfSeats;
                vMVehicle.IsSold           = vd.IsSold;
                vMVehicle.SoldDate         = vd.SoldDate;
                vMVehicle.IsActive         = vd.IsActive;
                vMVehicle.IsDelete         = vd.IsDelete;
                vMVehicle.CreatedDate      = vd.CreatedDate;
                vMVehicle.ModifiedDate     = vd.ModifiedDate;
                vMVehicle.CreatedBy        = vd.CreatedBy;
                vMVehicle.ModifiedBy       = vd.ModifiedBy;
                vMVehicle.VehicleImgName   = vd.VehicleImages.Select(d => d.VehicleImgName).FirstOrDefault();

                vehiclesList.Add(vMVehicle);
            }
            return(View(vehiclesList));
        }
Exemplo n.º 3
0
        //[HttpPost]
        public ActionResult SingleVehicle(int id)
        {
            //VMVehicle vehicle = new VMVehicle();
            var vd        = db.VehicleDetails.Include("VehicleImages").FirstOrDefault(x => x.VehicleId == id);
            var vMVehicle = new VMVehicle
            {
                VehicleId        = vd.VehicleId,
                VehicleName      = vd.VehicleName,
                VehicleNo        = vd.VehicleNo,
                BrandId          = vd.BrandId,
                CategoryId       = vd.CategoryId,
                ColorId          = vd.ColorId,
                Euronum          = vd.Euronum,
                Kilometers       = vd.Kilometers,
                RegistrationYear = vd.RegistrationYear,
                Price            = vd.Price,
                Weight           = vd.Weight,
                NoOfSeats        = vd.NoOfSeats,
                IsSold           = vd.IsSold,
                SoldDate         = vd.SoldDate,
                IsActive         = vd.IsActive,
                IsDelete         = vd.IsDelete,
                CreatedDate      = vd.CreatedDate,
                ModifiedDate     = vd.ModifiedDate,
                CreatedBy        = vd.CreatedBy,
                ModifiedBy       = vd.ModifiedBy,
                VehicleImgName   = vd.VehicleImages.Select(d => d.VehicleImgName).FirstOrDefault()
            };

            return(View(vMVehicle));
        }
        public async Task <IActionResult> AuthenticateVehicle([FromBody] VMVehicle userParam)
        {
            try
            {
                var vehicle = await _vehicleService.Authenticate(userParam.RegNum, userParam.Password);

                if (vehicle == null)
                {
                    return(BadRequest(new { message = "Registration or password is incorrect" }));
                }
                _logger.LogInfo($"Vehicle available in database.");
                //Get latest token from DB
                var vehicleLogin = await _vehicleLoginService.GetLatestToken(vehicle.Id);

                HttpContext.Session.SetString("VehicleToken", vehicleLogin.Token);
                var vehicleResult = _mapper.Map <VMVehicle>(vehicle);
                HttpContext.Session.SetString("LoggedVehicle", vehicle.RegNum);
                return(Ok(vehicleResult));
            }
            catch (Exception ex)
            {
                _logger.LogError($"Something went wrong inside Authenticate or GetLatestToken action: {ex.Message}");
                return(StatusCode(500, "Internal server error"));
            }
        }
Exemplo n.º 5
0
        public ActionResult ViewVehicle()
        {
            //VehicleDetail vd = new VehicleDetail();
            //VehicleImage vi = new VehicleImage();

            var vd = db.VehicleDetails.Include("VehicleImages").FirstOrDefault(v => v.VehicleId == 1);

            VMVehicle vMVehicle = new VMVehicle();

            vMVehicle.VehicleId        = vd.VehicleId;
            vMVehicle.VehicleName      = vd.VehicleName;
            vMVehicle.VehicleNo        = vd.VehicleNo;
            vMVehicle.BrandId          = vd.BrandId;
            vMVehicle.CategoryId       = vd.CategoryId;
            vMVehicle.ColorId          = vd.ColorId;
            vMVehicle.Euronum          = vd.Euronum;
            vMVehicle.Kilometers       = vd.Kilometers;
            vMVehicle.RegistrationYear = vd.RegistrationYear;
            vMVehicle.Price            = vd.Price;
            vMVehicle.Weight           = vd.Weight;
            vMVehicle.NoOfSeats        = vd.NoOfSeats;
            vMVehicle.IsSold           = vd.IsSold;
            vMVehicle.SoldDate         = vd.SoldDate;
            vMVehicle.IsActive         = vd.IsActive;
            vMVehicle.IsDelete         = vd.IsDelete;
            vMVehicle.CreatedDate      = vd.CreatedDate;
            vMVehicle.ModifiedDate     = vd.ModifiedDate;
            vMVehicle.CreatedBy        = vd.CreatedBy;
            vMVehicle.ModifiedBy       = vd.ModifiedBy;
            vMVehicle.VehicleImages    = vd.VehicleImages.ToList();


            return(View(vMVehicle));
        }
Exemplo n.º 6
0
        public ActionResult Quote(VMVehicle vMVehicle, FormCollection fc)
        {
            if (vMVehicle is null)
            {
                throw new ArgumentNullException(nameof(vMVehicle));
            }

            if (Session["userid"] != null)
            {
                int VehicleId    = Convert.ToInt32(fc["VehicleId"]);
                int uid          = Convert.ToInt32(Session["userid"]);
                int downpayment  = Convert.ToInt32(fc["DownPayment"]);
                int duration     = Convert.ToInt32(fc["Duration"]);
                int TotalPayment = Convert.ToInt32(fc["totalpayment"]);
                if (downpayment != 0 || duration != 0)
                {
                    int DeductDownpayment, PerMonth;

                    DeductDownpayment = TotalPayment - downpayment;
                    PerMonth          = DeductDownpayment / duration;
                    if (PerMonth == 0)
                    {
                        ViewBag.BookingMessage = "Booking not Success!!!!";
                        return(RedirectToAction("/SingleVehicle/" + VehicleId));
                    }
                    else
                    {
                        Quote quote = new Quote()
                        {
                            UserId      = uid,
                            VehicleId   = VehicleId,
                            DownPayment = downpayment,
                            Duration    = duration,
                            TotalAmount = TotalPayment,
                            StatusId    = 1,
                            IsActive    = true,
                            IsDelete    = false,
                        };

                        db.Quotes.Add(quote);
                        if (db.SaveChanges() > 0)
                        {
                            return(RedirectToAction("QuoteList"));
                        }
                        ViewBag.BookingMessage = "Booking not Success!!!!";
                        return(RedirectToAction("/SingleVehicle/" + VehicleId));
                    }
                }
                else
                {
                    ViewBag.AmountMessage = "Amount must not be zero!!!!";
                    //return Redirect("/User/Vehicle/SingleVehicle/"+VehicleId);
                    return(RedirectToAction("/SingleVehicle/" + VehicleId));
                    // return View("/Vehicle/SingleVehicle/"+VehicleId);
                }
            }
            return(Redirect("/User/UserLogin/Login"));
        }
Exemplo n.º 7
0
        public ActionResult AddVehicle(VMVehicle vMVehicle)
        {
            try
            {
                VehicleDetail vehicleDetail = new VehicleDetail();
                vehicleDetail.VehicleName      = vMVehicle.VehicleName;
                vehicleDetail.VehicleNo        = vMVehicle.VehicleNo;
                vehicleDetail.BrandId          = vMVehicle.BrandId;
                vehicleDetail.CategoryId       = vMVehicle.CategoryId;
                vehicleDetail.ColorId          = vMVehicle.ColorId;
                vehicleDetail.Euronum          = vMVehicle.Euronum;
                vehicleDetail.Kilometers       = vMVehicle.Kilometers;
                vehicleDetail.RegistrationYear = vMVehicle.RegistrationYear;
                vehicleDetail.Price            = vMVehicle.Price;
                vehicleDetail.Weight           = vMVehicle.Weight;
                vehicleDetail.NoOfSeats        = vMVehicle.NoOfSeats;
                vehicleDetail.IsSold           = vMVehicle.IsSold;
                vehicleDetail.SoldDate         = vMVehicle.SoldDate;
                vehicleDetail.IsActive         = vMVehicle.IsActive;
                vehicleDetail.IsDelete         = vMVehicle.IsDelete;
                vehicleDetail.CreatedDate      = vMVehicle.CreatedDate;
                vehicleDetail.ModifiedDate     = vMVehicle.ModifiedDate;
                vehicleDetail.CreatedBy        = vMVehicle.CreatedBy;
                vehicleDetail.ModifiedBy       = vMVehicle.ModifiedBy;
                db.VehicleDetails.Add(vehicleDetail);

                foreach (HttpPostedFileBase file in vMVehicle.VehicleImage1)
                {
                    VehicleImage vehicleImage = new VehicleImage();
                    vehicleImage.VehicleImage1 = vMVehicle.VehicleImage1;

                    string VFileName       = Path.GetFileNameWithoutExtension(file.FileName);
                    string VImageExtension = Path.GetExtension(file.FileName);
                    VFileName = VFileName + DateTime.Now.ToString("yymmssff") + VImageExtension;
                    vehicleImage.VehicleImgName = "~/VehicleImages/" + VFileName;
                    VFileName = Path.Combine(Server.MapPath("~/VehicleImages/"), VFileName);
                    file.SaveAs(VFileName);

                    vehicleDetail.VehicleId = vehicleImage.VehicleId;
                    db.VehicleImages.Add(vehicleImage);
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch
            {
                ViewBag.CategoryId = new SelectList(db.Categories, "CategoryId", "CategoryName");
                ViewBag.BrandId    = new SelectList(db.Brands, "BrandId", "BrandName");
                ViewBag.ColorId    = new SelectList(db.Colors, "ColorId", "ColorName");
                return(View());
            }
        }
        public ActionResult VehicleByCategory(int id)
        {
            if (id == 0)
            {
                // HomeController homeController = new HomeController();
                //VMVehicle vehiclesList = homeController.ListProduct();
                return(RedirectToAction("../Home/ListProduct"));
                //return View("../Home/ListProduct");
            }
            else
            {
                List <VMVehicle> vehiclesList = new List <VMVehicle>();
                var v = db.VehicleDetails.Include("VehicleImages").Where(x => x.CategoryId == id).ToList();
                foreach (var vd in v)
                {
                    VMVehicle vMVehicle = new VMVehicle();
                    vMVehicle.VehicleId        = vd.VehicleId;
                    vMVehicle.VehicleName      = vd.VehicleName;
                    vMVehicle.VehicleNo        = vd.VehicleNo;
                    vMVehicle.BrandId          = vd.BrandId;
                    vMVehicle.CategoryId       = vd.CategoryId;
                    vMVehicle.ColorId          = vd.ColorId;
                    vMVehicle.Euronum          = vd.Euronum;
                    vMVehicle.Kilometers       = vd.Kilometers;
                    vMVehicle.RegistrationYear = vd.RegistrationYear;
                    vMVehicle.Price            = vd.Price;
                    vMVehicle.Weight           = vd.Weight;
                    vMVehicle.NoOfSeats        = vd.NoOfSeats;
                    vMVehicle.IsSold           = vd.IsSold;
                    vMVehicle.SoldDate         = vd.SoldDate;
                    vMVehicle.IsActive         = vd.IsActive;
                    vMVehicle.IsDelete         = vd.IsDelete;
                    vMVehicle.CreatedDate      = vd.CreatedDate;
                    vMVehicle.ModifiedDate     = vd.ModifiedDate;
                    vMVehicle.CreatedBy        = vd.CreatedBy;
                    vMVehicle.ModifiedBy       = vd.ModifiedBy;
                    vMVehicle.VehicleImgName   = vd.VehicleImages.Select(d => d.VehicleImgName).FirstOrDefault();

                    vehiclesList.Add(vMVehicle);
                }

                return(View(vehiclesList));
            }
        }
Exemplo n.º 9
0
        public ActionResult ListProductBySearch(VMVehicle vMSerach)
        {
            if (vMSerach.CategoryId == 0 && vMSerach.BrandId == 0 && vMSerach.VehicleName == null)
            {
                return(RedirectToAction("../Home/ListProduct"));
            }
            else if (vMSerach.VehicleName != null && vMSerach.CategoryId == 0 && vMSerach.BrandId == 0)
            {
                List <VMVehicle> vehiclesList = new List <VMVehicle>();
                var v = db.VehicleDetails.Include("VehicleImages").Where(x => (x.VehicleName == vMSerach.VehicleName)).ToList();
                foreach (var vd in v)
                {
                    VMVehicle vMVehicle = new VMVehicle();
                    vMVehicle.VehicleId        = vd.VehicleId;
                    vMVehicle.VehicleName      = vd.VehicleName;
                    vMVehicle.VehicleNo        = vd.VehicleNo;
                    vMVehicle.BrandId          = vd.BrandId;
                    vMVehicle.CategoryId       = vd.CategoryId;
                    vMVehicle.ColorId          = vd.ColorId;
                    vMVehicle.Euronum          = vd.Euronum;
                    vMVehicle.Kilometers       = vd.Kilometers;
                    vMVehicle.RegistrationYear = vd.RegistrationYear;
                    vMVehicle.Price            = vd.Price;
                    vMVehicle.Weight           = vd.Weight;
                    vMVehicle.NoOfSeats        = vd.NoOfSeats;
                    vMVehicle.IsSold           = vd.IsSold;
                    vMVehicle.SoldDate         = vd.SoldDate;
                    vMVehicle.IsActive         = vd.IsActive;
                    vMVehicle.IsDelete         = vd.IsDelete;
                    vMVehicle.CreatedDate      = vd.CreatedDate;
                    vMVehicle.ModifiedDate     = vd.ModifiedDate;
                    vMVehicle.CreatedBy        = vd.CreatedBy;
                    vMVehicle.ModifiedBy       = vd.ModifiedBy;
                    vMVehicle.VehicleImgName   = vd.VehicleImages.Select(d => d.VehicleImgName).FirstOrDefault();

                    vehiclesList.Add(vMVehicle);
                }
                return(View(vehiclesList));
            }
            else
            {
                List <VMVehicle> vehiclesList = new List <VMVehicle>();
                var v = db.VehicleDetails.Include("VehicleImages").Where(x => (x.CategoryId == vMSerach.CategoryId) && (x.BrandId == vMSerach.BrandId)).ToList();
                foreach (var vd in v)
                {
                    VMVehicle vMVehicle = new VMVehicle();
                    vMVehicle.VehicleId        = vd.VehicleId;
                    vMVehicle.VehicleName      = vd.VehicleName;
                    vMVehicle.VehicleNo        = vd.VehicleNo;
                    vMVehicle.BrandId          = vd.BrandId;
                    vMVehicle.CategoryId       = vd.CategoryId;
                    vMVehicle.ColorId          = vd.ColorId;
                    vMVehicle.Euronum          = vd.Euronum;
                    vMVehicle.Kilometers       = vd.Kilometers;
                    vMVehicle.RegistrationYear = vd.RegistrationYear;
                    vMVehicle.Price            = vd.Price;
                    vMVehicle.Weight           = vd.Weight;
                    vMVehicle.NoOfSeats        = vd.NoOfSeats;
                    vMVehicle.IsSold           = vd.IsSold;
                    vMVehicle.SoldDate         = vd.SoldDate;
                    vMVehicle.IsActive         = vd.IsActive;
                    vMVehicle.IsDelete         = vd.IsDelete;
                    vMVehicle.CreatedDate      = vd.CreatedDate;
                    vMVehicle.ModifiedDate     = vd.ModifiedDate;
                    vMVehicle.CreatedBy        = vd.CreatedBy;
                    vMVehicle.ModifiedBy       = vd.ModifiedBy;
                    vMVehicle.VehicleImgName   = vd.VehicleImages.Select(d => d.VehicleImgName).FirstOrDefault();

                    vehiclesList.Add(vMVehicle);
                }

                return(View(vehiclesList));
            }
        }