fix bug in jobrunner, adsync

This commit is contained in:
Jonathan Jenne
2020-01-09 16:43:31 +01:00
parent 0a7cdaa903
commit 8b84e7b9e4
3 changed files with 26 additions and 24 deletions

View File

@@ -58,6 +58,7 @@ Namespace SyncUsers
_logger.Debug("Creating new user for {0}", oUser)
oUserId = CreateUser(oUser)
_logger.Debug("User created with Id {0}", oUserId)
_logger.Info("Added new User [{0}]", oUser.samAccountName)
End If
Catch ex As Exception
_logger.Error(ex)
@@ -76,6 +77,7 @@ Namespace SyncUsers
' Add the user to group
Try
AddUserToGroup(oUserId, oGroupId)
_logger.Info("User [{0}] added to group [{1}]", oUser.samAccountName, GroupName)
Catch ex As Exception
_logger.Error(ex)
_logger.Warn("Could not add user {0} to group {1}. Skipping.", oUser, GroupName)
@@ -92,12 +94,11 @@ Namespace SyncUsers
Try
Dim oSQL = $"SELECT COUNT(*) FROM TBDD_GROUPS_USER WHERE USER_ID = {UserId} AND GROUP_ID = {GroupId}"
Dim oResult = True
If _mssql.NewExecuteScalar(oSQL) = 0 Then
If _mssql.GetScalarValue(oSQL) = 0 Then
oSQL = $"INSERT INTO TBDD_GROUPS_USER (USER_ID, GROUP_ID, ADDED_WHO) VALUES ({UserId}, {GroupId}, '{ADDED_WHO}')"
oResult = _mssql.NewExecutenonQuery(oSQL)
Else
_logger.Debug($"UserGroup-Relation [{UserId}/{GroupId}] already existing")
End If
If oResult = False Then
@@ -112,7 +113,7 @@ Namespace SyncUsers
Private Function GetGroupId(GroupName As String) As Integer Implements ISyncUsers.GetGroupId
Try
Dim oSQL As String = $"SELECT GUID FROM TBDD_GROUPS WHERE UPPER(NAME) = UPPER('{GroupName}') AND AD_SYNC = 1 AND ACTIVE = 1"
Dim oGroupId = _mssql.NewExecuteScalar(oSQL)
Dim oGroupId = _mssql.GetScalarValue(oSQL)
If IsDBNull(oGroupId) OrElse oGroupId = 0 Then
_logger.Debug("Group {0} not found in database.", GroupName)
@@ -129,7 +130,7 @@ Namespace SyncUsers
Private Function GetUserId(UserName As String) As Integer Implements ISyncUsers.GetUserId
Try
Dim oSQL As String = $"SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER('{UserName}')"
Dim oUserId = _mssql.NewExecuteScalar(oSQL)
Dim oUserId = _mssql.GetScalarValue(oSQL)
If IsDBNull(oUserId) OrElse oUserId = 0 Then
Return 0
@@ -150,7 +151,7 @@ Namespace SyncUsers
Dim oResult = _mssql.NewExecutenonQuery(oSQL)
If oResult = True Then
oUserId = _mssql.NewExecuteScalar("SELECT MAX(GUID) FROM TBDD_USER")
oUserId = _mssql.GetScalarValue("SELECT MAX(GUID) FROM TBDD_USER")
Return oUserId
Else
Throw New Exception("Error while inserting user!")