178 lines
9.1 KiB
VB.net
178 lines
9.1 KiB
VB.net
Imports System.ComponentModel
|
|
|
|
Public Class ClassInit
|
|
Public Sub New()
|
|
End Sub
|
|
|
|
Public Sub InitLogger()
|
|
ClassLogger.Init("", Environment.UserName)
|
|
End Sub
|
|
|
|
Public Function InitDatabase()
|
|
Try
|
|
Dim dbResult As Boolean
|
|
|
|
MySettings_Load()
|
|
|
|
If LoadFileExclusion() = False Then
|
|
MsgBox("The Exclude File Structure for files in Folderwatch could not be initialized!", MsgBoxStyle.Information)
|
|
End If
|
|
|
|
If MyConnectionString <> String.Empty Then
|
|
dbResult = ClassDatabase.Init()
|
|
Else
|
|
frmConfig_Basic.ShowDialog()
|
|
dbResult = ClassDatabase.Init()
|
|
End If
|
|
|
|
If dbResult = False Then
|
|
Throw New Exception("Find more information in the logfile.")
|
|
End If
|
|
Return True
|
|
Catch ex As Exception
|
|
MsgBox("Unexpected Error in Init Database:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
Return False
|
|
End Try
|
|
|
|
End Function
|
|
|
|
Public Sub InitBasics2()
|
|
Try
|
|
Dim configResult As Boolean
|
|
configResult = Settings_LoadBasicConfig()
|
|
|
|
If configResult = False Then
|
|
Throw New Exception("Find more information in the logfile.")
|
|
End If
|
|
Catch ex As Exception
|
|
MsgBox("Unexpected Error in InitBasics2:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Public Shared Function InitUserLogin()
|
|
Try
|
|
Dim sql = sql_UserID
|
|
sql = sql.Replace("@user", Environment.UserName)
|
|
ClassLogger.Add(">> Login at: " & Now.ToString, False)
|
|
ClassLogger.Add(">> Username: " & Environment.UserName, False)
|
|
|
|
USER_GUID = ClassDatabase.Execute_Scalar(sql)
|
|
If USER_GUID Is Nothing Then
|
|
ClassLogger.Add(" - User '" & Environment.UserName & "' not listed in Useradminsitration!", False)
|
|
'MsgBox("Achtung: Sie sind nicht in der Userverwaltung hinterlegt." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:")
|
|
'Me.Close()
|
|
Dim msg = String.Format("Sie sind nicht in der Userverwaltung hinterlegt." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!")
|
|
|
|
If USER_LANGUAGE <> "de-DE" Then
|
|
msg = String.Format("You are not listed in the Useradministration." & vbNewLine & "Please contact the admin.")
|
|
End If
|
|
MsgBox(msg, MsgBoxStyle.Exclamation)
|
|
Return False
|
|
Else
|
|
USER_WAN = ClassDatabase.Execute_Scalar("SELECT WAN_ENVIRONMENT FROM TBDD_USER WHERE GUID = " & USER_GUID, False)
|
|
USER_LANGUAGE = ClassDatabase.Execute_Scalar("SELECT LANGUAGE FROM TBDD_USER WHERE GUID = " & USER_GUID, False)
|
|
Dim DT_CLIENT_USER As DataTable = ClassDatabase.Return_Datatable("SELECT CLIENT_ID FROM TBDD_CLIENT_USER WHERE USER_ID = " & USER_GUID)
|
|
Dim i As Integer = 0
|
|
For Each row As DataRow In DT_CLIENT_USER.Rows
|
|
If i = 0 Then
|
|
USER_CLIENTS_COMMA_SEPERATED = row.Item(0).ToString
|
|
Else
|
|
USER_CLIENTS_COMMA_SEPERATED = USER_CLIENTS_COMMA_SEPERATED & "," & row.Item(0).ToString
|
|
End If
|
|
i += 1
|
|
|
|
Next
|
|
|
|
|
|
sql = "SELECT MODULE_RECORD_ORG FROM TBDD_USER WHERE (LOWER(USERNAME) = LOWER('@user'))"
|
|
sql = sql.Replace("@user", Environment.UserName)
|
|
If ClassDatabase.Execute_Scalar(sql) = False Then
|
|
ClassLogger.Add(" - User: " & Environment.UserName & " nicht für Modul freigegben!", False)
|
|
'MsgBox("Achtung: Sie sind nicht für die Nutzung dieses Moduls freigeschaltet." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:")
|
|
Dim msg = String.Format("Sie sind nicht für die Nutzung dieses Moduls freigeschaltet." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!")
|
|
|
|
If USER_LANGUAGE <> "de-DE" Then
|
|
msg = String.Format("You are not authorized for using this module." & vbNewLine & "Please contact the admin.")
|
|
End If
|
|
MsgBox(msg, MsgBoxStyle.Exclamation)
|
|
Return False
|
|
'Me.Close()
|
|
Else
|
|
'Am System anmelden
|
|
ClassLicence.Refresh_Licence()
|
|
'Am System anmelden
|
|
sql = "UPDATE TBDD_USER SET LOGGED_IN = @LogInOut, LOGGED_WHERE = '@ANGEMELDETWO' WHERE (LOWER(USERNAME) = LOWER('@user'))"
|
|
sql = sql.Replace("@LogInOut", 1)
|
|
sql = sql.Replace("@ANGEMELDETWO", Environment.MachineName)
|
|
sql = sql.Replace("@user", Environment.UserName)
|
|
ClassDatabase.Execute_non_Query(sql)
|
|
sql = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_GUID & " AND MODULE= 'RECORD_ORGANIZER'"
|
|
If ClassDatabase.Execute_non_Query(sql, True) = True Then
|
|
|
|
End If
|
|
|
|
sql = "INSERT INTO TBDD_USER_MODULE_LOG_IN (USER_ID,MODULE) VALUES (" & USER_GUID & ",'RECORD_ORGANIZER')"
|
|
ClassDatabase.Execute_non_Query(sql)
|
|
sql = "SELECT RECORD_ADMIN FROM TBDD_USER WHERE (LOWER(USERNAME) = LOWER('@user'))"
|
|
sql = sql.Replace("@user", Environment.UserName)
|
|
USER_IS_ADMIN = ClassDatabase.Execute_Scalar(sql)
|
|
'If USER_IS_ADMIN = True Then
|
|
' 'Admin
|
|
' pageAdmin.Visible = True
|
|
'End If
|
|
|
|
sql = "SELECT COUNT(*) AS Expr1 FROM TBDD_USER_MODULE_LOG_IN WHERE UPPER(MODULE) = UPPER('RECORD_ORGANIZER')"
|
|
Dim anzahl = ClassDatabase.Execute_Scalar(sql)
|
|
USERS_LOGGED_IN = CInt(anzahl)
|
|
If LogErrorsOnly = False Then ClassLogger.Add(" >> User# logged in: " & anzahl.ToString, False)
|
|
'####
|
|
|
|
If LICENSE_COUNT < USERS_LOGGED_IN And LICENSE_EXPIRED = False Then
|
|
Dim msg = String.Format("Die Anzahl der aktuell angemeldeten User (" & USERS_LOGGED_IN.ToString & ") überschreitet die Anzahl der aktuellen Lizenzen!" & vbNewLine & "Anzahl der Lizenzen: " & LICENSE_COUNT.ToString & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!")
|
|
|
|
If USER_LANGUAGE <> "de-DE" Then
|
|
msg = String.Format("The number of logged Users (" & USERS_LOGGED_IN.ToString & ") exceeds the number of licenses." & vbNewLine & _
|
|
"Number of licenses: " & LICENSE_COUNT.ToString & vbNewLine & "Please contact Your admin!")
|
|
End If
|
|
MsgBox(msg, MsgBoxStyle.Exclamation)
|
|
ClassLogger.Add(" >> The number of logged Users (" & USERS_LOGGED_IN.ToString & ") exceeds the number of licenses (" & LICENSE_COUNT & ") ", False)
|
|
If USER_IS_ADMIN = False Then
|
|
'Anmeldung wieder herausnehmen
|
|
sql = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_GUID & " AND MODULE= 'RECORD_ORGANIZER'"
|
|
ClassDatabase.Execute_non_Query(sql, True)
|
|
ClassLogger.Add(" - logged out the user", False)
|
|
Return False
|
|
End If
|
|
Else
|
|
Try
|
|
'Die FolderWatch starten
|
|
Dim sql1 = "SELECT FOLDER_PATH FROM TBPMO_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'SCAN' AND USER_ID = " & USER_GUID
|
|
Dim folderwatch_SCAN = ClassDatabase.Execute_Scalar(sql1, True)
|
|
|
|
If Not folderwatch_SCAN Is Nothing Then
|
|
CURRENT_SCAN_FOLDERWATCH = folderwatch_SCAN
|
|
If FWSCAN_started = True Then
|
|
ClassFolderWatcher.StartStop_FolderWatchSCAN()
|
|
End If
|
|
End If
|
|
Catch ex As Exception
|
|
ClassLogger.Add("Unexpected Error in Init_Folderwatch: " & ex.Message, True)
|
|
Return False
|
|
End Try
|
|
|
|
End If
|
|
Return True
|
|
'LabelLoggedIn.Caption = "Anzahl Angemeldete User: " & anzahl.ToString
|
|
End If
|
|
End If
|
|
Catch ex As Exception
|
|
ClassLogger.Add("Unexpected Error in InitUserLogin: " & ex.Message, True)
|
|
MsgBox("Unexpected Error in InitUserLogin: " & ex.Message, MsgBoxStyle.Critical)
|
|
Return False
|
|
End Try
|
|
|
|
End Function
|
|
|
|
End Class
|