mirror of
https://github.com/bitwarden/server.git
synced 2026-02-02 07:03:11 +08:00
feat: change revision dates for confirmed grantees; test: updated tests to check assert grantees revision dates are updated
This commit is contained in:
@@ -147,16 +147,23 @@ public class EmergencyAccessRepository : Repository<Core.Auth.Entities.Emergency
|
||||
/// <inheritdoc />
|
||||
public async Task DeleteManyAsync(ICollection<Guid> emergencyAccessIds)
|
||||
{
|
||||
using (var scope = ServiceScopeFactory.CreateScope())
|
||||
{
|
||||
var dbContext = GetDatabaseContext(scope);
|
||||
var rangeToRemove = from ea in dbContext.EmergencyAccesses
|
||||
where emergencyAccessIds.Contains(ea.Id)
|
||||
select ea;
|
||||
dbContext.EmergencyAccesses.RemoveRange(rangeToRemove);
|
||||
using var scope = ServiceScopeFactory.CreateScope();
|
||||
var dbContext = GetDatabaseContext(scope);
|
||||
var rangeToRemove = from ea in dbContext.EmergencyAccesses
|
||||
where emergencyAccessIds.Contains(ea.Id)
|
||||
select ea;
|
||||
dbContext.EmergencyAccesses.RemoveRange(rangeToRemove);
|
||||
|
||||
await dbContext.SaveChangesAsync();
|
||||
}
|
||||
var granteeIds = rangeToRemove
|
||||
.Where(ea => ea.Status == EmergencyAccessStatusType.Confirmed)
|
||||
.Where(ea => ea.GranteeId.HasValue)
|
||||
.Select(ea => ea.GranteeId!.Value) // .Value is safe here due to the Where above
|
||||
.Distinct();
|
||||
|
||||
await dbContext.UserBumpManyAccountRevisionDatesAsync(
|
||||
[.. granteeIds]
|
||||
);
|
||||
|
||||
await dbContext.SaveChangesAsync();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user