add user assignment

This commit is contained in:
Jonathan Jenne
2020-03-09 16:29:07 +01:00
parent b004235309
commit e540d93c0d
4 changed files with 1828 additions and 2197 deletions

View File

@@ -1,5 +1,6 @@
Public Class ClassDatatables
#Region "TBDD_GROUP"
Public Shared Function AddGroupToProfile(GroupId As Integer, ProfileId As Integer) As Boolean
Try
Dim oSQL = $"
@@ -27,14 +28,13 @@
Public Shared Function GetAssignedGroups(ProfileId As Integer) As DataTable
Try
Dim oSQL As String = $"
SELECT * FROM TBDD_GROUPS
WHERE (GUID IN
(
SELECT GROUP_ID
FROM TBDD_USRGRP_DOKTYPE
WHERE DOCTYPE_ID = {ProfileId}
)
)
SELECT GUID, NAME FROM TBDD_GROUPS
WHERE GUID IN
(
SELECT GROUP_ID
FROM TBDD_USRGRP_DOKTYPE
WHERE DOCTYPE_ID = {ProfileId}
)
"
Dim oDatatable As DataTable = ClassDatabase.Return_Datatable(oSQL)
@@ -48,13 +48,58 @@
Public Shared Function GetAvailableGroups(ProfileId As Integer) As DataTable
Try
Dim oSQL As String = $"
SELECT * FROM TBDD_GROUPS
WHERE NOT (GUID IN
(
SELECT GROUP_ID
FROM TBDD_USRGRP_DOKTYPE
SELECT GUID, NAME FROM TBDD_GROUPS
WHERE GUID NOT IN
(
SELECT GROUP_ID
FROM TBDD_USRGRP_DOKTYPE
WHERE DOCTYPE_ID = {ProfileId}
)
"
Dim oDatatable As DataTable = ClassDatabase.Return_Datatable(oSQL)
Return oDatatable
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
#End Region
#Region "TBDD_USER"
Public Shared Function AddUserToProfile(UserId As Integer, ProfileId As Integer) As Boolean
Try
Dim oSQL = $"
INSERT INTO TBDD_USER_DOKTYPE
(DOCTYPE_ID, USER_ID, ADDED_WHO)
VALUES ({ProfileId}, {UserId}, '{Environment.UserName}')
"
Return ClassDatabase.Execute_non_Query(oSQL, True)
Catch ex As Exception
LOGGER.Error(ex)
Return False
End Try
End Function
Public Shared Function RemoveUserFromProfile(UserId As Integer, ProfileId As Integer) As Boolean
Try
Dim oSQL = $"DELETE FROM TBDD_USER_DOKTYPE WHERE DOCTYPE_ID = {ProfileId} AND USER_ID = {UserId}"
Return ClassDatabase.Execute_non_Query(oSQL, True)
Catch ex As Exception
LOGGER.Error(ex)
Return False
End Try
End Function
Public Shared Function GetAssignedUsers(ProfileId As Integer) As DataTable
Try
Dim oSQL As String = $"
SELECT GUID, EMAIL, NAME + ', ' + PRENAME AS NAME FROM TBDD_USER
WHERE GUID IN (
SELECT USER_ID
FROM TBDD_USER_DOKTYPE
WHERE DOCTYPE_ID = {ProfileId}
)
)
"
Dim oDatatable As DataTable = ClassDatabase.Return_Datatable(oSQL)
@@ -65,4 +110,30 @@
Return Nothing
End Try
End Function
Public Shared Function GetAvailableUsers(ProfileId As Integer) As DataTable
Try
Dim oSQL As String = $"
SELECT GUID, EMAIL, NAME + ', ' + PRENAME AS NAME FROM TBDD_USER
WHERE GUID NOT IN (
SELECT USER_ID
FROM TBDD_USER_DOKTYPE
WHERE DOCTYPE_ID = {ProfileId}
)
AND GUID IN (SELECT USER_ID FROM [dbo].[FNDD_GET_USER_FOR_MODULE] ('GLOBIX', 1))
"
Dim oDatatable As DataTable = ClassDatabase.Return_Datatable(oSQL)
Return oDatatable
Catch ex As Exception
LOGGER.Error(ex)
Return Nothing
End Try
End Function
#End Region
End Class