Änderung der Logik der Vollmachtsverwaltung im Kunden (nun können pro VM-Typ mehrere Vollmachten hinterlegt werden). Weiters wurde die GUI der Vollmachten überarbeitet
This commit is contained in:
318
_VERAG_PROG_ALLGEMEIN/Classes/cEmailBenachrichtigung.vb
Normal file
318
_VERAG_PROG_ALLGEMEIN/Classes/cEmailBenachrichtigung.vb
Normal file
@@ -0,0 +1,318 @@
|
||||
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Reflection
|
||||
|
||||
Public Class cEmailBenachrichtigungList
|
||||
Property eb_KundenNr As Object = Nothing
|
||||
Property eb_ebartId As Object = Nothing
|
||||
Public LIST As New List(Of cEmailBenachrichtigung)
|
||||
Dim SQL As New SQL
|
||||
|
||||
Sub New()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Sub New(eb_KundenNr, eb_ebartId)
|
||||
Me.eb_KundenNr = eb_KundenNr
|
||||
Me.eb_ebartId = eb_ebartId
|
||||
LOAD(Me.eb_KundenNr, Me.eb_ebartId)
|
||||
End Sub
|
||||
Public Sub CLEAR()
|
||||
LIST.Clear()
|
||||
End Sub
|
||||
Public Sub ADD(eb_EMail As String, Optional cc As Boolean = False, Optional bcc As Boolean = False)
|
||||
Dim l As New cEmailBenachrichtigung
|
||||
l.eb_KundenNr = eb_KundenNr
|
||||
l.eb_ebartId = eb_ebartId
|
||||
l.eb_EMail = eb_EMail
|
||||
l.eb_cc = cc
|
||||
l.eb_bcc = bcc
|
||||
LIST.Add(l)
|
||||
End Sub
|
||||
Public Sub LOAD(eb_KundenNr, eb_ebartId)
|
||||
Try
|
||||
LIST.Clear()
|
||||
Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblEmailBenachrichtigung WHERE eb_KundenNr=@eb_KundenNr and eb_ebartId=@eb_ebartId ", conn)
|
||||
cmd.Parameters.AddWithValue("@eb_KundenNr", eb_KundenNr)
|
||||
cmd.Parameters.AddWithValue("@eb_ebartId", eb_ebartId)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
While dr.Read
|
||||
Dim l As New cEmailBenachrichtigung
|
||||
l.eb_KundenNr = dr.Item("eb_KundenNr")
|
||||
l.eb_ebartId = dr.Item("eb_ebartId")
|
||||
l.eb_EMail = dr.Item("eb_EMail")
|
||||
l.eb_cc = dr.Item("eb_cc")
|
||||
l.eb_bcc = dr.Item("eb_bcc")
|
||||
LIST.Add(l)
|
||||
End While
|
||||
dr.Close()
|
||||
End Using
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
|
||||
End Try
|
||||
End Sub
|
||||
Function SAVE()
|
||||
If SQL.doSQLVarList("DELETE FROM tblEmailBenachrichtigung WHERE eb_KundenNr=" & Me.eb_KundenNr & " and eb_ebartId=" & Me.eb_ebartId & " ", "FMZOLL") Then
|
||||
For Each li In LIST
|
||||
If Not li.INSERT() Then Return False
|
||||
Next
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
End Class
|
||||
Public Class cEmailBenachrichtigung
|
||||
Property eb_KundenNr As Object = Nothing
|
||||
Property eb_ebartId As Object = Nothing
|
||||
Property eb_EMail As Object = Nothing
|
||||
Property eb_cc As Boolean = False
|
||||
Property eb_bcc As Boolean = False
|
||||
|
||||
Dim SQL As New SQL
|
||||
|
||||
Sub New()
|
||||
End Sub
|
||||
|
||||
Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_KundenNr", eb_KundenNr))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_ebartId", eb_ebartId))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_EMail", eb_EMail))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_cc", eb_cc))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_bcc", eb_bcc))
|
||||
Return list
|
||||
End Function
|
||||
|
||||
Public Function INSERT() As Boolean
|
||||
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||
Return SQL.doSQLVarList(getInsertCmd, "FMZOLL", , list)
|
||||
End Function
|
||||
|
||||
Public Function getInsertCmd() As String
|
||||
Try
|
||||
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||
Dim str As String = ""
|
||||
Dim values As String = ""
|
||||
For Each i In list
|
||||
If Not i.isPrimaryParam Then
|
||||
str &= "[" & i.Text & "],"
|
||||
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
|
||||
End If
|
||||
Next
|
||||
str = str.Substring(0, str.Length - 1) 'wg. ','
|
||||
values = values.Substring(0, values.Length - 1) 'wg. ','
|
||||
Return (" INSERT INTO tblEmailBenachrichtigung (" & str & ") VALUES(" & values & ") ")
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
|
||||
End Try
|
||||
Return ""
|
||||
End Function
|
||||
|
||||
|
||||
Shared Sub eMails_einlesen(Kdnr As String, art As Integer, ByRef Emails As String, ByRef Emails_CC As String, ByRef Emails_BCC As String, ByRef Emails_list_sent As VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList)
|
||||
'ART:
|
||||
'1=Ankunft
|
||||
'2=Freigabe
|
||||
'3=Ankunft Export
|
||||
'4=Freigabe Export
|
||||
Dim Firmen As New cFirmenDAL
|
||||
Dim Firma As New cFirma
|
||||
|
||||
'In diesen Strings werden die Mailadressen übergeben:
|
||||
Emails = ""
|
||||
Emails_CC = ""
|
||||
Emails_BCC = ""
|
||||
|
||||
If Kdnr Is Nothing OrElse Not IsNumeric(Kdnr) Then Exit Sub
|
||||
' Dim Avisierer As New cKunde(hAuftraggeber_kdnr)
|
||||
' Dim Fraechter As New cKunde(hFrächter_kdnr)
|
||||
Dim Kdnr_Mails As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(Kdnr, art)
|
||||
' Dim Fraechter_Mails As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(hFrächter_kdnr, art)
|
||||
' If hAuftraggeber_kdnr <> hFrächter_kdnr Then Fraechter_Mails = New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(hFrächter_kdnr, art)
|
||||
|
||||
Dim Emails_list As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
|
||||
Dim Emails_CC_list As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
|
||||
Dim Emails_BCC_list As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
|
||||
|
||||
'Dim Emails As String
|
||||
For Each i In Kdnr_Mails.LIST
|
||||
|
||||
|
||||
If i.eb_bcc Then
|
||||
If Not existingNEW(Kdnr, i.eb_bcc, "BCC", Emails_list_sent.LIST) Then Emails_BCC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
ElseIf i.eb_cc Then
|
||||
If Not existingNEW(Kdnr, i.eb_cc, "CC", Emails_list_sent.LIST) Then Emails_CC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
Else
|
||||
If Not existingNEW(Kdnr, i.eb_EMail, "", Emails_list_sent.LIST) Then Emails_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
End If
|
||||
|
||||
'DAS WAR VORHER:::::::::::
|
||||
'If i.eb_bcc Then
|
||||
' If Not existing(Kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existingWOKdNr(i.eb_EMail, Emails_list_sent.LIST) Then Emails_BCC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
'ElseIf i.eb_cc Then
|
||||
' If Not existing(Kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existingWOKdNr(i.eb_EMail, Emails_list_sent.LIST) Then Emails_CC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
'Else
|
||||
' If Not existing(Kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existingWOKdNr(i.eb_EMail, Emails_list_sent.LIST) Then Emails_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
'End If
|
||||
':::::::::::::::::::::::
|
||||
|
||||
'''Es muss mit KdNr geprüft werden, sonst wird zB OPUS/SOMEDAY nciht gesendet (gleiche Mail, andere KdNr)
|
||||
'''If i.eb_bcc Then
|
||||
''' If Not existing(Kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existingWOKdNr(i.eb_EMail, Emails_list_sent.LIST) Then Emails_BCC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
'''ElseIf i.eb_cc Then
|
||||
''' If Not existing(Kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existingWOKdNr(i.eb_EMail, Emails_list_sent.LIST) Then Emails_CC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
'''Else
|
||||
''' If Not existing(Kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existingWOKdNr(i.eb_EMail, Emails_list_sent.LIST) Then Emails_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
'''End If
|
||||
Next
|
||||
|
||||
For Each i In Emails_list.LIST
|
||||
Emails &= i.eb_EMail & ";"
|
||||
Next
|
||||
For Each i In Emails_CC_list.LIST
|
||||
Emails_CC &= i.eb_EMail & ";"
|
||||
Next
|
||||
For Each i In Emails_BCC_list.LIST
|
||||
Emails_BCC &= i.eb_EMail & ";"
|
||||
Next
|
||||
|
||||
For Each i In Emails_list.LIST : Emails_list_sent.LIST.Add(i) : Next
|
||||
For Each i In Emails_CC_list.LIST : Emails_list_sent.LIST.Add(i) : Next
|
||||
For Each i In Emails_BCC_list.LIST : Emails_list_sent.LIST.Add(i) : Next
|
||||
|
||||
End Sub
|
||||
|
||||
Public Shared Function getAbsenderEmail() As String
|
||||
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
Case "IMEX" : Return "noreply@imex-group.at"
|
||||
Case "ATILLA" : Return "noreply@verag.ag"
|
||||
Case "UNISPED" : Return "No-Reply@unisped.at"
|
||||
Case "FRONTOFFICE" : Return "noreply@front-office.eu"
|
||||
Case "AMBAR" : Return "import@ambarlog.com"
|
||||
Case Else : Return "noreply@verag.ag"
|
||||
End Select
|
||||
End Function
|
||||
|
||||
Public Shared Function getBCCEmail() As String
|
||||
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
Case "IMEX" : Return "noreply@imex-group.at"
|
||||
Case "ATILLA" : Return "noreply@verag.ag"
|
||||
Case "UNISPED" : Return "No-Reply@unisped.at"
|
||||
Case "FRONTOFFICE" : Return "noreply@front-office.eu"
|
||||
Case "AMBAR" : Return "" '"noreply@verag.ag"
|
||||
Case Else : Return "noreply@verag.ag"
|
||||
End Select
|
||||
End Function
|
||||
|
||||
Shared Sub eMails_einlesenOLD(hFrächter_kdnr As String, hAuftraggeber_kdnr As String, art As Integer, ByRef Emails As String, ByRef Emails_CC As String, ByRef Emails_BCC As String, ByRef Emails_list_sent As VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList)
|
||||
'ART:
|
||||
'1=Ankunft
|
||||
'2=Freigabe
|
||||
'3=Ankunft Export
|
||||
'4=Freigabe Export
|
||||
Dim Firmen As New cFirmenDAL
|
||||
Dim Firma As New cFirma
|
||||
|
||||
Emails = ""
|
||||
Emails_CC = ""
|
||||
Emails_BCC = ""
|
||||
|
||||
' Dim Avisierer As New cKunde(hAuftraggeber_kdnr)
|
||||
' Dim Fraechter As New cKunde(hFrächter_kdnr)
|
||||
Dim Avisierer_Mails As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(hAuftraggeber_kdnr, art)
|
||||
Dim Fraechter_Mails As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(hFrächter_kdnr, art)
|
||||
If hAuftraggeber_kdnr <> hFrächter_kdnr Then Fraechter_Mails = New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(hFrächter_kdnr, art)
|
||||
|
||||
Dim Emails_list As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
|
||||
Dim Emails_CC_list As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
|
||||
Dim Emails_BCC_list As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
|
||||
|
||||
'Dim Emails As String
|
||||
For Each i In Avisierer_Mails.LIST
|
||||
If i.eb_bcc Then
|
||||
If Not existing(hFrächter_kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existing(hFrächter_kdnr, i.eb_EMail, Emails_list_sent.LIST) Then Emails_BCC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
ElseIf i.eb_cc Then
|
||||
If Not existing(hFrächter_kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existing(hFrächter_kdnr, i.eb_EMail, Emails_list_sent.LIST) Then Emails_CC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
Else
|
||||
If Not existing(hFrächter_kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existing(hFrächter_kdnr, i.eb_EMail, Emails_list_sent.LIST) Then Emails_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
End If
|
||||
Next
|
||||
For Each i In Fraechter_Mails.LIST
|
||||
If i.eb_bcc Then
|
||||
If Not existing(hFrächter_kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existing(hFrächter_kdnr, i.eb_EMail, Emails_list_sent.LIST) Then Emails_BCC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
ElseIf i.eb_cc Then
|
||||
If Not existing(hFrächter_kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existing(hFrächter_kdnr, i.eb_EMail, Emails_list_sent.LIST) Then Emails_CC_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
Else
|
||||
If Not existing(hFrächter_kdnr, i.eb_EMail, Emails_BCC_list.LIST, Emails_CC_list.LIST, Emails_list.LIST) And Not existing(hFrächter_kdnr, i.eb_EMail, Emails_list_sent.LIST) Then Emails_list.LIST.Add(i) ' &= i.eb_EMail & ";"
|
||||
End If
|
||||
Next
|
||||
|
||||
For Each i In Emails_list.LIST
|
||||
Emails &= i.eb_EMail & ";"
|
||||
Next
|
||||
For Each i In Emails_CC_list.LIST
|
||||
Emails_CC &= i.eb_EMail & ";"
|
||||
Next
|
||||
For Each i In Emails_BCC_list.LIST
|
||||
Emails_BCC &= i.eb_EMail & ";"
|
||||
Next
|
||||
|
||||
For Each i In Emails_list.LIST : Emails_list_sent.LIST.Add(i) : Next
|
||||
|
||||
End Sub
|
||||
Shared Function existingNEW(KundenNr As Integer, Email As String, art As String, Emails_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung)) As Boolean
|
||||
If Emails_list IsNot Nothing Then
|
||||
For Each i In Emails_list
|
||||
Select Case art
|
||||
Case "BCC" : If i.eb_bcc = Email And i.eb_KundenNr = KundenNr Then Return True
|
||||
Case "CC" : If i.eb_cc = Email And i.eb_KundenNr = KundenNr Then Return True
|
||||
Case Else : If i.eb_EMail = Email And i.eb_KundenNr = KundenNr Then Return True
|
||||
End Select
|
||||
|
||||
Next
|
||||
End If
|
||||
|
||||
Return False
|
||||
End Function
|
||||
Shared Function existing(KundenNr As Integer, Email As String, Emails_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung), Optional ListEmails_CC_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung) = Nothing, Optional ListEmails_BCC_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung) = Nothing) As Boolean
|
||||
If Emails_list IsNot Nothing Then
|
||||
For Each i In Emails_list
|
||||
If i.eb_EMail = Email And i.eb_KundenNr = KundenNr Then Return True
|
||||
Next
|
||||
End If
|
||||
If ListEmails_CC_list IsNot Nothing Then
|
||||
For Each i In ListEmails_CC_list
|
||||
If i.eb_EMail = Email And i.eb_KundenNr = KundenNr Then Return True
|
||||
Next
|
||||
End If
|
||||
If ListEmails_BCC_list IsNot Nothing Then
|
||||
For Each i In ListEmails_BCC_list
|
||||
If i.eb_EMail = Email And i.eb_KundenNr = KundenNr Then Return True
|
||||
Next
|
||||
End If
|
||||
Return False
|
||||
End Function
|
||||
Shared Function existingWOKdNr(Email As String, Emails_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung), Optional ListEmails_CC_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung) = Nothing, Optional ListEmails_BCC_list As List(Of VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung) = Nothing) As Boolean
|
||||
If Emails_list IsNot Nothing Then
|
||||
For Each i In Emails_list
|
||||
If i.eb_EMail = Email Then Return True
|
||||
Next
|
||||
End If
|
||||
If ListEmails_CC_list IsNot Nothing Then
|
||||
For Each i In ListEmails_CC_list
|
||||
If i.eb_EMail = Email Then Return True
|
||||
Next
|
||||
End If
|
||||
If ListEmails_BCC_list IsNot Nothing Then
|
||||
For Each i In ListEmails_BCC_list
|
||||
If i.eb_EMail = Email Then Return True
|
||||
Next
|
||||
End If
|
||||
Return False
|
||||
End Function
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user