public AuthenticateResponse Authenticate(AuthenticateRequest model) { DateTime currentDate = DateTime.UtcNow.AddHours(8); var token = ""; model.Password = EncryptAndDecrypt.ConvertToEncrypt(model.Password); _oUser = new Users() { Username = model.Username, Password = model.Password, LastLoginDate = currentDate }; try { int operationType = Convert.ToInt32(OperationType.Login); using (IDbConnection con = new SqlConnection(AppSettings.ConnectionStrings)) { if (con.State == ConnectionState.Closed) { con.Open(); } var oUsers = con.Query <Users>("sp_Users", _oUser.SetParameters(_oUser, operationType), commandType: CommandType.StoredProcedure).ToList(); if (oUsers != null && oUsers.Count() > 0) { _oUser = oUsers.SingleOrDefault(x => x.Username == model.Username && x.Password == model.Password); // authentication successful so generate jwt token token = GenerateJWTToken(_oUser); } } // return null if user not found if (_oUser == null) { return(null); } ; } catch (Exception) { throw; } return(new AuthenticateResponse(_oUser, token)); }
public Users AddUser(Users users) { _oUser = new Users(); DateTime aDate = DateTime.Now; var birthDate = users.BirthDate; users.Password = EncryptAndDecrypt.ConvertToEncrypt(users.Password); users.DateCreated = aDate; try { int operationType = Convert.ToInt32(users.UserId == 0 ? OperationType.Insert : OperationType.Update); using (IDbConnection con = new SqlConnection(AppSettings.ConnectionStrings)) { if (con.State == ConnectionState.Closed) { con.Open(); } var oUsers = con.Query <Users>("sp_Users", _oUser.SetParameters(users, operationType), commandType: CommandType.StoredProcedure); if (oUsers != null && oUsers.Count() > 0) { _oUser = oUsers.FirstOrDefault(); } } } catch (Exception ex) { _oUser.Message = ex.Message; } return(_oUser); }