273 lines
12 KiB
VB.net
273 lines
12 KiB
VB.net
Public Class frmBerechtigungsObjekte
|
|
Dim progId = -1
|
|
Dim codename = ""
|
|
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim BerechtigungsObjekte As VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte_List
|
|
Dim BerechtigungenGruppen As VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen_List
|
|
|
|
Sub New(progId)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Me.progId = progId
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
Sub New(progId, codename)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Me.progId = progId
|
|
Me.codename = codename
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
Private Sub frmBerechtigungsObjekte_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
Label10.Text = codename
|
|
init()
|
|
End Sub
|
|
|
|
Sub init()
|
|
MyComboBox1.SelectedIndex = 0
|
|
gdvGruppen.Rows.Clear()
|
|
dgvObjekte.Rows.Clear()
|
|
dgvGruppenBenutzer.Rows.Clear()
|
|
|
|
BerechtigungsObjekte = New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte_List(progId)
|
|
BerechtigungenGruppen = New VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen_List(progId)
|
|
|
|
For Each b In BerechtigungenGruppen.LIST
|
|
gdvGruppen.Rows.Add(b.bergr_id, b.bergr_bezeichnung)
|
|
Next
|
|
|
|
' Dim dt As DataTable = sql.loadDgvBySql("SELECT [bero_id],[bero_bezeichnung],[bero_art] FROM [tblBerechtigungsObjekte] WHERE [bero_progId]=" & progId, "ADMIN")
|
|
For Each b In BerechtigungsObjekte.LIST
|
|
dgvObjekte.Rows.Add(b.bero_id, b.bero_bezeichnung, b.bero_art)
|
|
Next
|
|
|
|
MyComboBox2.Items.Clear()
|
|
MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
For Each i In BerechtigungenGruppen.LIST
|
|
MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(i.bergr_bezeichnung, i.bergr_id))
|
|
Next
|
|
|
|
MyComboBox3.Items.Clear()
|
|
MyComboBox3.fillWithSQL("SELECT [mit_id],[mit_username] + ' (' + mit_vname + ' ' + mit_nname + ') ' + mit_firma FROM [ADMIN].[dbo].[tblMitarbeiter] /*INNER JOIN [ADMIN].[dbo].[tblBerProg] ON mit_id=[bepr_userId] INNER JOIN [ADMIN].[dbo].[tblBerechtigungen] ON [ber_id]=[bepr_berId] " &
|
|
" WHERE ber_progId=" & progId & " AND [ber_allowed]=1*/ ORDER BY mit_username", False, "ADMIN", True)
|
|
gdvGruppen.ClearSelection()
|
|
dgvObjekte.ClearSelection()
|
|
dgvGruppenBenutzer.ClearSelection()
|
|
|
|
|
|
|
|
cboAbteilung.Items.Clear()
|
|
cboAbteilung.fillWithSQL("SELECT [abt_id],[abt_bezeichnung] FROM tblAbteilungen", False, "ADMIN", True)
|
|
cboNiederlassung.Items.Clear()
|
|
cboNiederlassung.fillWithSQL("SELECT [nl_id],[nl_bezeichnung] FROM tblNiederlassungen", False, "ADMIN", True)
|
|
|
|
|
|
|
|
|
|
End Sub
|
|
Private Sub dgvObjekte_SelectionChanged(sender As Object, e As EventArgs) Handles dgvObjekte.SelectionChanged
|
|
dgvGruppenBenutzer.Rows.Clear()
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
loadGruppen()
|
|
End Sub
|
|
|
|
Sub loadGruppen()
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
dgvGruppenBenutzer.Rows.Clear()
|
|
For Each b In BerechtigungsObjekte.LIST
|
|
If b.bero_id = dgvObjekte.SelectedRows(0).Cells("id").Value Then
|
|
If b.BER_OBJ_ZUORD IsNot Nothing Then
|
|
For Each bz In b.BER_OBJ_ZUORD
|
|
dgvGruppenBenutzer.Rows.Add(bz.beroz_id, bz.Bezeichnung, bz.beroz_art, bz.beroz_berechtigungsstufe)
|
|
|
|
' If bz.beroz_art = "B" Then
|
|
' MyListBox2.Items.Add(bz.BenutzerBezeichnung & " (B)")
|
|
' Else
|
|
' MyListBox2.Items.Add(bz.GruppenBezeichnung & " (G)")
|
|
' dgvGruppenBenutzer.Rows.Add(bz.beroz_id, bz.GruppenBezeichnung, bz.beroz_art, bz.beroz_berechtigungsstufe)
|
|
' End If
|
|
Next
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
Next
|
|
End Sub
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
'Gruppe zuordnen
|
|
If MyComboBox2._value = String.Empty Then Exit Sub
|
|
If Not IsNumeric(MyTextBox2.Text) Then Exit Sub
|
|
|
|
Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung
|
|
BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value
|
|
BOZ.beroz_bergrId = MyComboBox2._value
|
|
BOZ.beroz_art = "G"
|
|
BOZ.beroz_berechtigungsstufe = MyTextBox2.Text
|
|
BOZ.INSERT()
|
|
BerechtigungsObjekte.LOAD_LIST()
|
|
loadGruppen()
|
|
MyComboBox2.SelectedIndex = 0
|
|
MyTextBox2.Text = "0"
|
|
End Sub
|
|
|
|
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
'Gruppe zuordnen
|
|
If cboAbteilung._value = String.Empty Then Exit Sub
|
|
If Not IsNumeric(MyTextBox6.Text) Then Exit Sub
|
|
|
|
Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung
|
|
BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value
|
|
BOZ.beroz_bergrId = cboAbteilung._value
|
|
BOZ.beroz_art = "A"
|
|
BOZ.beroz_berechtigungsstufe = MyTextBox6.Text
|
|
BOZ.INSERT()
|
|
BerechtigungsObjekte.LOAD_LIST()
|
|
loadGruppen()
|
|
cboAbteilung.SelectedIndex = 0
|
|
MyTextBox6.Text = "0"
|
|
End Sub
|
|
|
|
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
'Gruppe zuordnen
|
|
If cboNiederlassung._value = String.Empty Then Exit Sub
|
|
If Not IsNumeric(MyTextBox5.Text) Then Exit Sub
|
|
|
|
Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung
|
|
BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value
|
|
BOZ.beroz_bergrId = cboNiederlassung._value
|
|
BOZ.beroz_art = "N"
|
|
BOZ.beroz_berechtigungsstufe = MyTextBox5.Text
|
|
BOZ.INSERT()
|
|
BerechtigungsObjekte.LOAD_LIST()
|
|
loadGruppen()
|
|
cboNiederlassung.SelectedIndex = 0
|
|
MyTextBox5.Text = "0"
|
|
End Sub
|
|
|
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
'Benutzer zuordnen
|
|
If MyComboBox3._value = String.Empty Then Exit Sub
|
|
If Not IsNumeric(MyTextBox3.Text) Then Exit Sub
|
|
|
|
Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung
|
|
BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value
|
|
BOZ.beroz_bergrId = MyComboBox3._value
|
|
BOZ.beroz_art = "B"
|
|
BOZ.beroz_berechtigungsstufe = MyTextBox3.Text
|
|
BOZ.INSERT()
|
|
BerechtigungsObjekte.LOAD_LIST()
|
|
loadGruppen()
|
|
MyComboBox3.SelectedIndex = 0
|
|
MyTextBox3.Text = "0"
|
|
End Sub
|
|
|
|
Private Sub dgvGruppenBenutzer_KeyDown(sender As Object, e As KeyEventArgs) Handles dgvGruppenBenutzer.KeyDown
|
|
If dgvGruppenBenutzer.SelectedRows.Count = 0 Then Exit Sub
|
|
If e.KeyCode = Keys.Delete Then
|
|
If vbYes = MsgBox("Möchten Sie die Zuordnung wirklich löschen?", vbYesNoCancel) Then
|
|
Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung
|
|
BOZ.beroz_id = dgvGruppenBenutzer.SelectedRows(0).Cells("dgvGrBen_id").Value
|
|
BOZ.DELETE()
|
|
BerechtigungsObjekte.LOAD_LIST()
|
|
loadGruppen()
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
|
|
If MyComboBox1.Text = String.Empty Then Exit Sub
|
|
If MyTextBox1.Text = String.Empty Then Exit Sub
|
|
For Each b In BerechtigungsObjekte.LIST
|
|
dgvObjekte.Rows.Add(b.bero_id, b.bero_bezeichnung, b.bero_art)
|
|
If b.bero_bezeichnung = MyTextBox1.Text Then
|
|
MsgBox("Das Objekt existiert bereits!")
|
|
Exit Sub
|
|
End If
|
|
Next
|
|
Dim BO As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte
|
|
BO.bero_progId = progId
|
|
BO.bero_bezeichnung = MyTextBox1.Text
|
|
BO.bero_art = MyComboBox1.Text
|
|
BO.INSERT()
|
|
MyComboBox1.Text = String.Empty
|
|
init()
|
|
End Sub
|
|
|
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
|
If MyTextBox4.Text = String.Empty Then Exit Sub
|
|
Dim BGR As New VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen
|
|
BGR.bergr_progId = progId
|
|
BGR.bergr_bezeichnung = MyTextBox4.Text
|
|
BGR.INSERT()
|
|
MyTextBox4.Text = ""
|
|
init()
|
|
End Sub
|
|
|
|
Private Sub gdvGruppen_KeyDown(sender As Object, e As KeyEventArgs) Handles gdvGruppen.KeyDown
|
|
If gdvGruppen.SelectedRows.Count = 0 Then Exit Sub
|
|
If e.KeyCode = Keys.Delete Then
|
|
If vbYes = MsgBox("Möchten Sie die Gruppe und alle verbundenen Zuordnungen wirklich löschen?", vbYesNoCancel) Then
|
|
Dim BGR As New VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen
|
|
BGR.bergr_id = gdvGruppen.SelectedRows(0).Cells("dgvGrp_id").Value
|
|
BGR.DELETE()
|
|
init()
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub dgvObjekte_KeyDown(sender As Object, e As KeyEventArgs) Handles dgvObjekte.KeyDown
|
|
If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub
|
|
If e.KeyCode = Keys.Delete Then
|
|
If vbYes = MsgBox("Möchten Sie das Objekt und alle verbundenen Zuordnungen wirklich löschen?", vbYesNoCancel) Then
|
|
Dim BGR As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte
|
|
BGR.bero_id = dgvObjekte.SelectedRows(0).Cells("id").Value
|
|
BGR.DELETE()
|
|
init()
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Private Sub gdvGruppen_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles gdvGruppen.CellContentDoubleClick, gdvGruppen.CellDoubleClick
|
|
If gdvGruppen.SelectedRows.Count > 0 Then
|
|
Dim f As New frmBerechtigungenUser()
|
|
f.lbl.Text = "Benutzer in der Gruppe: " & gdvGruppen.SelectedRows(0).Cells("dgvGrp_bez").Value
|
|
Dim dt = sql.loadDgvBySql("SELECT [mit_id],mit_username FROM [tblBerechtigungenBenutzerGruppenZuordnung] inner join tblMitarbeiter on mit_id=berbgz_mitId where [berbgz_bergrId]='" & gdvGruppen.SelectedRows(0).Cells("dgvGrp_id").Value & "' AND isnull(mit_username,'') <>'' ORDER BY mit_username", "ADMIN")
|
|
f.gdvGruppen.Rows.Clear()
|
|
If dt IsNot Nothing Then
|
|
For Each r In dt.Rows
|
|
f.gdvGruppen.Rows.Add(r("mit_id"), r("mit_username"))
|
|
Next
|
|
f.Show()
|
|
Else
|
|
MsgBox("Keine Benutzer gefunden!")
|
|
End If
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
|
|
Dim f As New frmBerechtigungenUser()
|
|
f.lbl.Text = "Freigeschaltene Benutzer: " & Me.codename
|
|
' MsgBox(Me.progId)
|
|
Dim dt = sql.loadDgvBySql("SELECT [mit_id],[mit_username] FROM [ADMIN].[dbo].[tblBerProg] INNER JOIN tblMitarbeiter on mit_id= bepr_userId WHERE bepr_programm='" & Me.codename & "' AND [ber_allowed]=1 AND isnull(mit_username,'') <>''ORDER BY mit_username", "ADMIN")
|
|
f.gdvGruppen.Rows.Clear()
|
|
|
|
If dt IsNot Nothing Then
|
|
For Each r In dt.Rows
|
|
f.gdvGruppen.Rows.Add(r("mit_id"), r("mit_username"))
|
|
Next
|
|
f.Show()
|
|
Else
|
|
MsgBox("Keine Benutzer gefunden!")
|
|
End If
|
|
End Sub
|
|
End Class |