This commit is contained in:
2021-03-04 15:47:27 +01:00
parent 8431ce57eb
commit 569991b011
22 changed files with 14399 additions and 116 deletions

View File

@@ -277,6 +277,127 @@ Public Class frmStartOptions
Next
End If
End Sub
Sub doMailZollbeleg(pfad, art, dy_id)
Try
Dim DY As New DAKOSY_Worker.cDakosy_Zollanmeldungen(dy_id)
If DY.dy_SendungsId IsNot Nothing AndAlso CInt(DY.dy_SendungsId) > 0 Then
Dim SND As New VERAG_PROG_ALLGEMEIN.cSendungen(DY.dy_SendungsId)
Dim list As New List(Of Integer)
sendMailZollbeleg(pfad, SND.tblSnd_EmpfaengerKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_AbsenderKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_FrachtfuehrerKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_AvisiererKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_AuftraggeberKdNr, art, list, DY, SND)
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
End Try
End Sub
Sub sendMailZollbeleg(pfad As String, KundenNr As Integer, art As String, ByRef list As List(Of Integer), DY As DAKOSY_Worker.cDakosy_Zollanmeldungen, SND As VERAG_PROG_ALLGEMEIN.cSendungen)
Try
If KundenNr > 0 Then
If Not list.Find(Function(x) x = KundenNr) Then 'nicht bereits verarbeitet
list.Add(KundenNr)
Dim pfadList As New List(Of String)
pfadList.Add(pfad)
Dim KD As New VERAG_PROG_ALLGEMEIN.cKunde(KundenNr)
Dim KD_ERW As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(KundenNr)
If KD_ERW IsNot Nothing AndAlso KD IsNot Nothing AndAlso KD.EmailFreigabe Then
If KD_ERW.EmailFreigabe_Art = "BLG" Then
Dim Standort = "SUB"
Select Case SND.FilialenNr
Case "5501" : Standort = "IMX"
Case "5601" : Standort = "UNI"
Case "5701" : Standort = "FO"
Case "5801" : Standort = "AMB"
Case "4801" : Standort = "ATL"
Case "5003" : Standort = "SBG"
Case "5103" : Standort = "WAI"
Case "5303" : Standort = "NKD"
Case Else
Standort = "SUB"
End Select
Dim cStandorteDAL As New VERAG_PROG_ALLGEMEIN.cStandorteDAL
'Dim gst = ""
'Dim AVISO = VERAG_PROG_ALLGEMEIN.cAviso.getAvisoById(DY.dy_AvisoId)
'If AVISO IsNot Nothing Then
' gst = AVISO.Grenzstelle.Replace("???", "")
'End If
Dim cStandort = cStandorteDAL.LesenStandort(-1, "", "SELECT * FROM Standorte WHERE Standort = '" & Standort & "'")
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale2(SND.FilialenNr)
Dim betreff = cStandort.eMail_Zollbeleg_Betreff '"Zollbeleg"
betreff = betreff.Replace("%LKW%", "")
betreff = betreff.Replace("%Standort%", "")
betreff = betreff.Replace("%Uhrzeit%", "")
Dim body = cStandort.eMail_Zollbeleg_Text
Dim EMails As String = ""
Dim EMails_CC As String = ""
Dim EMails_BCC As String = ""
Dim Emails_list_sent As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung.eMails_einlesen(KundenNr, 2, EMails, EMails_CC, EMails_BCC, Emails_list_sent)
body = body.Replace("%Platzhalter%", "E-Mails: " & EMails & " CC: " & EMails_CC & " BCC:" & EMails_BCC)
EMails = "al@verag.ag"
EMails_CC = ""
EMails_BCC = ""
Select Case art
Case "STB"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Abgabenbescheid " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
Case "VBD"
If KD_ERW.EmailFreigabe_VBDPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Versandbegleitdokument " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
Case "ABD"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Ausfuhrbegleitdokument " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
Case "AVM"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Ausgangsvermerk " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
End Select
End If
End If
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
End Try
End Sub
Public Shared Function getAbsenderEmail(Optional FirmaTmp = "") As String
Select Case If(FirmaTmp = "", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA, FirmaTmp)
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 Else : Return "noreply@verag.ag"
End Select
End Function
Sub importFileFromDyMailAnhang(pfad, betreff)
@@ -318,6 +439,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_VBD_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_VBD='" & DS.da_id & "' where AtlasBezNrNCTS='" & betreff.ToString.Trim & "' AND DokumentId_VBD is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "VBD", dy_id)
End If
End If
@@ -351,6 +473,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_STEUERBESCHEID_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_Steuerbeleg='" & DS.da_id & "' where AtlasBezNrEZA='" & betreff.ToString.Trim & "' AND DokumentId_Steuerbeleg is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "STB", dy_id)
End If
End If
@@ -373,8 +496,6 @@ Public Class frmStartOptions
End If
' IO.Directory.CreateDirectory(VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir() & "DAKOSY\ECHTSYSTEM\ZOLLDATEN\TEST3\")
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("TEST: " & dy_id, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
DS = New VERAG_PROG_ALLGEMEIN.cDATENSERVER("ZOLLDATEN", "ABD", dy_id, "", "", betreff.ToString.Replace("/", "-").Replace(",", "-").Replace("\", "-").Replace(":", "."), 0, False)
DS.da_vorlage = False
@@ -389,6 +510,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_ABD_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_ABD='" & DS.da_id & "' where AtlasBezNrEZA='" & betreff.ToString.Trim & "' AND DokumentId_ABD is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "ABD", dy_id)
End If
End If
@@ -425,6 +547,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_AVM_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_AVM='" & DS.da_id & "' where AtlasBezNrEZA='" & betreff.ToString.Trim & "' AND DokumentId_AVM is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "AVM", dy_id)
End If
End If
@@ -626,6 +749,19 @@ Public Class frmStartOptions
Return True
End Function
Public Function moveFile_DateBack(file, toDirectory, Optional ByRef dest = "")
If Not IO.File.Exists(file) Then Return False
If Not IO.Directory.Exists(toDirectory) Then IO.Directory.CreateDirectory(toDirectory)
dest = toDirectory & cut_file(file)
Dim fio As IO.FileInfo = New FileInfo(file)
Dim ext = fio.Extension
If IO.File.Exists(dest) Then
dest = toDirectory & cut_file(file).Replace(ext, Now.ToString("_yyMMdd_HHmmss.fff")) & ext
End If
IO.File.Move(file, dest) ' Verschiebt die Datei
Return True
End Function
Public Function copyFile(file, toDirectory, Optional ByRef dest = "")
If Not IO.File.Exists(file) Then Return False
If Not IO.Directory.Exists(toDirectory) Then IO.Directory.CreateDirectory(toDirectory)