/// <summary>
        /// Forgot password.
        /// </summary>
        /// <param name="forgot">The forgot.</param>
        /// <returns></returns>

        public string ForgotUserPassword(string Email)
        {
            try
            {
                var    forgotPassword = "******";
                string subject        = "Your Password is";
                string body;
                var    result = parkingContext.UserTable.FirstOrDefault(e => e.Email == Email);
                if (result != null)
                {
                    //string decode = Decryptdata(result.Password);

                    Sender send = new Sender();
                    send.MailSender(forgotPassword);

                    Recever recev      = new Recever();
                    var     forgotLink = recev.MailReciver();
                    body = forgotLink;
                }
                else
                {
                    return("Not Found");
                }

                using (MailMessage mailMessage = new MailMessage("*****@*****.**", Email))
                {
                    mailMessage.Subject    = subject;
                    mailMessage.Body       = body;
                    mailMessage.IsBodyHtml = true;
                    SmtpClient smtp = new SmtpClient();
                    smtp.Host      = "smtp.gmail.com";
                    smtp.EnableSsl = true;
                    NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "9175833272");
                    smtp.UseDefaultCredentials = true;
                    smtp.Credentials           = NetworkCred;
                    smtp.Port = 587;
                    smtp.Send(mailMessage);
                    return("Success");
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
        /// <summary>
        /// Park Unpark Vehical According to IsEmpty Status
        /// </summary>
        /// <param name="unpark">The unpark.</param>
        /// <returns></returns>
        /// <exception cref="Exception">Error While Adding" + e.Message</exception>

        public ParkingResponse UnparkingVehical(int parkingId)
        {
            try
            {
                string subject       = "Your Parking Detail is";
                var    parkingResult = this.parkingContext.ParkingTable.Where <ParkingModel>(model => model.ParkingId == parkingId).SingleOrDefault();
                var    userId        = parkingResult.userId;
                var    results       = parkingContext.UserTable.FirstOrDefault(e => e.userId == userId);
                var    email         = results.Email;

                if (parkingResult != null)
                {
                    //Unpark Vehical if the Vehical is Alredy Parked
                    if (parkingResult.IsEmpty)
                    {
                        parkingResult.IsEmpty = false;
                        var result   = CalculateCharge(parkingResult.ParkingId);
                        var exitTime = DateTime.Now;
                        parkingResult.ExitTime = exitTime;
                        parkingResult.Charges  = (int)(result.VehicalTypeCharges + result.DriverTypeCharges + result.ParkingTypeCharges);
                        result.TotalCharges    = parkingResult.Charges;
                        this.parkingContext.ParkingTable.Update(parkingResult);
                        this.parkingContext.SaveChangesAsync();

                        ///Sending Mail Regarding with Parking Data...
                        var parkVehical = "<h1>Parking Detail </h1><div><b>Hi " + results.FirstName + " </b>,<br></div>" +
                                          "<table border=1px;><tr><td>Vehical No</td><td>" + parkingResult.VehicalNo + "</td></tr>"
                                          + "<tr><td>Entry Time</td><td>" + parkingResult.EntryTime + "</td></tr>"
                                          + "<tr><td>Exit Time</td><td>" + parkingResult.ExitTime + "</td></tr>"
                                          + "<tr><td>Charges</td><td><b>" + parkingResult.Charges + "</b></td></tr></table>";

                        Sender send = new Sender();
                        send.MailSender(parkVehical);
                        Recever recev   = new Recever();
                        var     Parking = recev.MailReciver();
                        var     body    = Parking;

                        using (MailMessage mailMessage = new MailMessage("*****@*****.**", email))
                        {
                            mailMessage.Subject    = subject;
                            mailMessage.Body       = body;
                            mailMessage.IsBodyHtml = true;
                            SmtpClient smtp = new SmtpClient();
                            smtp.Host      = "smtp.gmail.com";
                            smtp.EnableSsl = true;
                            NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "9175833272");
                            smtp.UseDefaultCredentials = true;
                            smtp.Credentials           = NetworkCred;
                            smtp.Port = 587;
                            smtp.Send(mailMessage);
                        }

                        return(result);
                    }

                    //Park Vehical if the Vehical is Not Park
                    else
                    {
                        var result = CalculateCharge(parkingResult.ParkingId);
                        parkingResult.IsEmpty   = true;
                        parkingResult.Charges   = 0;
                        parkingResult.EntryTime = DateTime.Now;
                        parkingResult.ExitTime  = new DateTime(0000 - 0000 - 000);
                        this.parkingContext.ParkingTable.Update(parkingResult);
                        this.parkingContext.SaveChangesAsync();

                        if (results != null)
                        {
                            ///Sending Mail Regarding with Parking Data...

                            var parkVehical = "<h1>Parking Detail </h1><div><b>Hi " + results.FirstName + " </b>,<br></div>" +
                                              "<table border=1px;><tr><td>Vehical No</td><td>" + parkingResult.VehicalNo + "</td></tr>"
                                              + "<tr><td>Entry Time</td><td><b>" + parkingResult.EntryTime + "</b></td></tr></table>";

                            Sender send = new Sender();
                            send.MailSender(parkVehical);

                            Recever recev   = new Recever();
                            var     Parking = recev.MailReciver();
                            var     body    = Parking;

                            using (MailMessage mailMessage = new MailMessage("*****@*****.**", email))
                            {
                                mailMessage.Subject    = subject;
                                mailMessage.Body       = body;
                                mailMessage.IsBodyHtml = true;
                                SmtpClient smtp = new SmtpClient();
                                smtp.Host      = "smtp.gmail.com";
                                smtp.EnableSsl = true;
                                NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "9175833272");
                                smtp.UseDefaultCredentials = true;
                                smtp.Credentials           = NetworkCred;
                                smtp.Port = 587;
                                smtp.Send(mailMessage);
                            }

                            return(result);
                        }
                    }
                }
                return(null);
            }
            catch (Exception e)
            {
                throw new Exception("Error While Unparking" + e.Message);
            }
        }