public async Task Delete(Permission permission) { var permissionEntity = await AuthorizationDbContext.Permissions .Include(p => p.RolePermissions) .Include(p => p.UserPermissions) .SingleOrDefaultAsync(p => p.PermissionId == permission.Id && !p.IsDeleted); if (permissionEntity == null) { throw new NotFoundException <Permission>( $"Could not find {typeof(Permission).Name} entity with ID {permission.Id}"); } permissionEntity.IsDeleted = true; foreach (var rolePermission in permissionEntity.RolePermissions) { rolePermission.IsDeleted = true; } foreach (var userPermission in permissionEntity.UserPermissions) { userPermission.IsDeleted = true; } await AuthorizationDbContext.SaveChangesAsync(); await EventService.RaiseEventAsync(new EntityAuditEvent <Permission>(EventTypes.EntityDeletedEvent, permission.Id.ToString(), permissionEntity.ToModel())); }
public async Task Delete(Permission model) { var permission = await _authorizationDbContext.Permissions .Include(p => p.RolePermissions) .Include(p => p.UserPermissions) .SingleOrDefaultAsync(p => p.PermissionId == model.Id && !p.IsDeleted); if (permission == null) { throw new NotFoundException <Permission>($"Could not find {typeof(Permission).Name} entity with ID {model.Id}"); } permission.IsDeleted = true; foreach (var rolePermission in permission.RolePermissions) { rolePermission.IsDeleted = true; } foreach (var userPermission in permission.UserPermissions) { userPermission.IsDeleted = true; } await _authorizationDbContext.SaveChangesAsync(); }
public async Task <Permission> Add(Permission model) { var entity = model.ToEntity(); entity.PermissionId = Guid.NewGuid(); entity.SecurableItem = _authorizationDbContext.SecurableItems.First(s => !s.IsDeleted && s.Name == model.SecurableItem); _authorizationDbContext.Permissions.Add(entity); await _authorizationDbContext.SaveChangesAsync(); return(entity.ToModel()); }
public async Task <Permission> Add(Permission permission) { permission.Id = Guid.NewGuid(); var permissionEntity = permission.ToEntity(); permissionEntity.SecurableItem = AuthorizationDbContext.SecurableItems.First(s => !s.IsDeleted && s.Name == permission.SecurableItem); AuthorizationDbContext.Permissions.Add(permissionEntity); await AuthorizationDbContext.SaveChangesAsync(); await EventService.RaiseEventAsync(new EntityAuditEvent <Permission>(EventTypes.EntityCreatedEvent, permission.Id.ToString(), permissionEntity.ToModel())); return(permissionEntity.ToModel()); }
public async Task Update(Permission model) { var permission = await _authorizationDbContext.Permissions .SingleOrDefaultAsync(p => p.PermissionId == model.Id && !p.IsDeleted); if (permission == null) { throw new NotFoundException <Permission>($"Could not find {typeof(Permission).Name} entity with ID {model.Id}"); } model.ToEntity(permission); _authorizationDbContext.Permissions.Update(permission); await _authorizationDbContext.SaveChangesAsync(); }
public async Task Update(Permission permission) { var permissionEntity = await AuthorizationDbContext.Permissions .SingleOrDefaultAsync(p => p.PermissionId == permission.Id && !p.IsDeleted); if (permissionEntity == null) { throw new NotFoundException <Permission>( $"Could not find {typeof(Permission).Name} entity with ID {permission.Id}"); } permission.ToEntity(permissionEntity); AuthorizationDbContext.Permissions.Update(permissionEntity); await AuthorizationDbContext.SaveChangesAsync(); await EventService.RaiseEventAsync(new EntityAuditEvent <Permission>(EventTypes.EntityUpdatedEvent, permission.Id.ToString(), permissionEntity.ToModel())); }