public void ApproveDelegate(int delegateId, int centreId) { var delegateUser = userDataService.GetDelegateUserById(delegateId); if (delegateUser == null || delegateUser.CentreId != centreId) { throw new UserAccountNotFoundException( $"Delegate user id {delegateId} not found at centre id {centreId}." ); } if (delegateUser.Approved) { logger.LogWarning($"Delegate user id {delegateId} already approved."); } else { userDataService.ApproveDelegateUsers(delegateUser.Id); SendDelegateApprovalEmails(delegateUser); } }