public UserAccessDTO Authenticate(string username, string password, string Con)
        {
            var user = objUserAccess.CheckUser(username, password, Con);

            // var encrypt = _passwordHasher.HashPassword("K@pilit$12345");
            //var decry = _passwordHasher.Decrypt(encrypt);
            // return null if user not found
            if (user == null && user.pPassword.Length > 0 || !_passwordHasher.PasswordMatches(password, user.pPassword))
            {
                return(null);
            }

            if (user.pOtpAuthentication)
            {
                var Status = objUserAccess.SendOTP(Con, user.pMobile, Convert.ToString(user.pUserID), user.pEmail);
            }
            else
            {
                // authentication successful so generate jwt token
                var tokenHandler    = new JwtSecurityTokenHandler();
                var key             = Encoding.ASCII.GetBytes(_appSettings.Secret);
                var tokenDescriptor = new SecurityTokenDescriptor
                {
                    Subject = new ClaimsIdentity(new Claim[]
                    {
                        new Claim(ClaimTypes.Name, user.pRoleid.ToString())
                    }),
                    Expires            = DateTime.UtcNow.AddMinutes(180),
                    SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
                };
                var token = tokenHandler.CreateToken(tokenDescriptor);
                user.pToken = tokenHandler.WriteToken(token);

                // remove password before returning
                user.pPassword = null;
            }
            return(user);
        }
        public IActionResult checkUserLogin(string UserName, string Password)
        {
            UserAccessDTO user = new UserAccessDTO();

            try
            {
                user = objUserAccess.CheckUser(UserName, Password, Con);
            }
            catch (Exception ex)
            {
                throw new FinstaAppException(ex.ToString());
            }
            return(Ok(user));
        }