public async Task ClearPasswordResetTokensAsync(Guid userId) { using (var db = new MainDatabase().Get) { await db.ExecuteAsync("DELETE FROM [dbo].[UserPasswordReset] WHERE UserId = @userId", new { userId }); } }
public async Task DeleteAsync(OdissUser user) { using (var db = new MainDatabase().Get) { var sql = "DELETE FROM [dbo].[Users] WHERE Id = @Id"; await db.ExecuteAsync(sql, user); } }
public async Task UpdateAsync(OdissUser user) { using (var db = new MainDatabase().Get) { var sql = "UPDATE [dbo].[Users] SET UserName = @UserName, Password = @Password, Type = @Type, FirstName = @FirstName, LastName = @LastName, PhoneOffice = @PhoneOffice, PhoneMobile = @PhoneMobile, Email = @Email, Company = @Company, Expire = @Expire, Permissions = @Permissions, Active = @Active, LockAccessUntil = @LockAccessUntil, WrongAccessAttempts = @WrongAccessAttempts WHERE ID = @Id"; await db.ExecuteAsync(sql, user); } }
public async Task CreateAsync(OdissUser user) { using (var db = new MainDatabase().Get) { var sql = "INSERT INTO [dbo].[Users] (UserName, Password, Type, FirstName, LastName, PhoneOffice, PhoneMobile, Email, Company, Expire, Permissions, Active, LockAccessUntil, WrongAccessAttempts) VALUES (@UserName, @Password, @Type, @FirstName, @LastName, @PhoneOffice, @PhoneMobile, @Email, @Company, @Expire, @Permissions, @Active, @LockAccessUntil, @WrongAccessAttempts)"; await db.ExecuteAsync(sql, user); } }
public async Task <string> RegisterPasswordResetTokenAsync(Guid userId, string passwordResetToken) { using (var db = new MainDatabase().Get) using (var transaction = db.BeginTransaction()) { try { var expiryDate = DateTime.Now.Add(expiryLength); await db.ExecuteAsync("DELETE FROM [dbo].[UserPasswordReset] WHERE UserId = @userId", new { userId }, transaction : transaction); var generatedId = await db.QuerySingleAsync <Guid>("INSERT INTO [dbo].[UserPasswordReset] (UserId, ExpiryDate, ResetPasswordToken) OUTPUT INSERTED.Id VALUES (@userId, @expiryDate, @passwordResetToken)", new { userId, expiryDate, passwordResetToken }, transaction : transaction); transaction.Commit(); return(generatedId.ToString()); } catch (SqlException ex) { transaction.Rollback(); throw ex; } } }