109 lines
4.4 KiB
VB.net
109 lines
4.4 KiB
VB.net
Imports DigitalData.Modules.Logging
|
|
|
|
Public Class frmUserManager
|
|
Private _Logger As Logger
|
|
Private _CommonCommands As ClassCommonCommands
|
|
|
|
Public Sub New()
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
_Logger = My.LogConfig.GetLogger()
|
|
_CommonCommands = New ClassCommonCommands(My.LogConfig)
|
|
End Sub
|
|
|
|
Private Async Sub frmUserManager_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
Await InitUserToGroupData()
|
|
|
|
AddHandler UCUserToGroup.ChildRemoved, AddressOf HandleUserAssignedToGroup
|
|
AddHandler UCUserToGroup.ChildAdded, AddressOf HandleUserDismissedFromGroup
|
|
|
|
RibbonControl.SelectPage(RibbonPageUserManager)
|
|
End Sub
|
|
|
|
Private Sub frmUserManager_VisibleChanged(sender As Object, e As EventArgs) Handles Me.VisibleChanged
|
|
If Visible Then
|
|
RibbonControl.SelectPage(RibbonPageUserManager)
|
|
End If
|
|
End Sub
|
|
|
|
Private Async Function InitUserToGroupData() As Task
|
|
Dim oUserTable = Await GetAttributeListAsync("User")
|
|
Dim oGroupTable = Await GetAttributeListAsync("Group")
|
|
Dim oUserGroupTable = Await GetAttributeListAsync("User2Group")
|
|
|
|
UCUserToGroup.Init(oGroupTable, oUserTable, oUserGroupTable, "GROUP_ID", "USER_ID")
|
|
End Function
|
|
|
|
Private Async Function UpdateUserToGroupData() As Task
|
|
Dim oUserTable = Await GetAttributeListAsync("User")
|
|
Dim oGroupTable = Await GetAttributeListAsync("Group")
|
|
Dim oUserGroupTable = Await GetAttributeListAsync("User2Group")
|
|
|
|
UCUserToGroup.UpdateData(oGroupTable, oUserTable, oUserGroupTable)
|
|
End Function
|
|
|
|
Private Async Sub HandleUserAssignedToGroup(GroupId As Integer, UserId As Integer, RelationRecordId As Integer)
|
|
Dim oRecordId = Await _CommonCommands.FNICM_RADM_NEW_USER2GROUP(GroupId, UserId)
|
|
|
|
Await UpdateUserToGroupData()
|
|
End Sub
|
|
|
|
Private Async Sub HandleUserDismissedFromGroup(GroupId As Integer, UserId As Integer, RelationRecordId As Integer)
|
|
Dim oResult = Await _CommonCommands.FNICM_DELETE_RECORD_FINALLY(RelationRecordId)
|
|
|
|
Await UpdateUserToGroupData()
|
|
End Sub
|
|
|
|
Private Async Function GetAttributeListAsync(AttributeName As String) As Task(Of DataTable)
|
|
Try
|
|
Dim oSQL = $"SELECT * FROM VWICM_{AttributeName.ToUpper}"
|
|
Dim oRequest = Await My.Channel.CreateDatabaseRequestAsync($"List Attribute {AttributeName}", False)
|
|
Dim oResult = Await My.Channel.ReturnDatatableAsync(oSQL)
|
|
|
|
Await My.Channel.CloseDatabaseRequestAsync()
|
|
|
|
Return oResult.Table
|
|
Catch ex As Exception
|
|
_Logger.Error(ex)
|
|
Throw ex
|
|
End Try
|
|
End Function
|
|
|
|
Private Async Sub BarButtonUserEdit_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonUserEdit.ItemClick
|
|
Dim oDatatable = Await GetAttributeListAsync("User")
|
|
Dim oForm As New frmEdit(ClassConstants.DB_USER_ATTRIBUTE_ID, oDatatable)
|
|
'oForm.MdiParent = o
|
|
oForm.Show()
|
|
End Sub
|
|
|
|
Private Async Sub BarButtonGroupEdit_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonGroupEdit.ItemClick
|
|
Dim oDatatable = Await GetAttributeListAsync("Group")
|
|
Dim oForm As New frmEdit(ClassConstants.DB_GROUP_ATTRIBUTE_ID, oDatatable)
|
|
oForm.Show()
|
|
End Sub
|
|
|
|
Private Async Sub BarButtonRefresh_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonRefresh.ItemClick
|
|
Await UpdateUserToGroupData()
|
|
End Sub
|
|
|
|
Private Sub OfficeNavigationBar1_SelectedItemChanged(sender As Object, e As DevExpress.XtraBars.Navigation.NavigationBarItemEventArgs) Handles OfficeNavigationBar1.SelectedItemChanged
|
|
Select Case OfficeNavigationBar1.SelectedItem.Name
|
|
Case "NavbarUser2Group"
|
|
UCUserToGroup.Visible = True
|
|
UCUserToGroup.Dock = DockStyle.Fill
|
|
|
|
UCGroupToGroup.Visible = False
|
|
UCGroupToGroup.Dock = DockStyle.None
|
|
Case "NavbarGroup2Group"
|
|
UCGroupToGroup.Visible = True
|
|
UCGroupToGroup.Dock = DockStyle.Fill
|
|
|
|
UCUserToGroup.Visible = False
|
|
UCUserToGroup.Dock = DockStyle.None
|
|
End Select
|
|
End Sub
|
|
|
|
|
|
End Class |