Merge branch 'master' of http://git.dd:3000/AppStd/Modules
This commit is contained in:
commit
07d26cf70c
@ -1,5 +1,4 @@
|
||||
Imports System.IO
|
||||
Imports System.Windows.Forms
|
||||
Imports DigitalData.Modules.Base
|
||||
Imports DigitalData.Modules.Logging
|
||||
|
||||
|
||||
@ -1,4 +1,6 @@
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports System.IO
|
||||
Imports DigitalData.Modules.Interfaces.Exceptions
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports GdPicture14
|
||||
|
||||
Public Class PDFConverter
|
||||
@ -58,5 +60,9 @@ Public Class PDFConverter
|
||||
_Logger.Error(ex)
|
||||
Return False
|
||||
End Try
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
@ -9,7 +9,6 @@ Imports DigitalData.Modules.Config
|
||||
Imports DigitalData.Modules.Database
|
||||
Imports DigitalData.Modules.Interfaces
|
||||
Imports DigitalData.Modules.Jobs.GraphQL
|
||||
Imports DigitalData.Modules.Language
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports Newtonsoft.Json.Linq
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@ Imports System.Runtime.InteropServices
|
||||
<Assembly: AssemblyCompany("Digital Data")>
|
||||
<Assembly: AssemblyProduct("Modules.Jobs")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2023")>
|
||||
<Assembly: AssemblyTrademark("2.2.0.0")>
|
||||
<Assembly: AssemblyTrademark("2.3.0.1")>
|
||||
|
||||
<Assembly: ComVisible(False)>
|
||||
|
||||
@ -30,5 +30,5 @@ Imports System.Runtime.InteropServices
|
||||
' Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
|
||||
' übernehmen, indem Sie "*" eingeben:
|
||||
|
||||
<Assembly: AssemblyVersion("2.2.0.0")>
|
||||
<Assembly: AssemblyFileVersion("2.2.0.0")>
|
||||
<Assembly: AssemblyVersion("2.3.0.1")>
|
||||
<Assembly: AssemblyFileVersion("2.3.0.1")>
|
||||
|
||||
@ -141,17 +141,6 @@ Namespace ZUGFeRD
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Function GetEmailPathWithSubjectAsName(RejectedEmailDirectory As String, UncleanedSubject As String) As String
|
||||
Dim oCleanSubject = String.Join("", UncleanedSubject.Split(Path.GetInvalidPathChars()))
|
||||
Dim oAttachmentDirectory = RejectedEmailDirectory
|
||||
Dim oAttachmentFile = oCleanSubject & ".eml"
|
||||
_logger.Debug("Email Filename is [{0}]", oAttachmentFile)
|
||||
|
||||
Dim oAttachmentPath = Path.Combine(oAttachmentDirectory, oAttachmentFile)
|
||||
|
||||
Return oAttachmentPath
|
||||
End Function
|
||||
|
||||
Private Function RandomValue(lowerBound As Integer, upperBound As Integer) As Integer
|
||||
Dim oRandomValue = CInt(Math.Floor((upperBound - lowerBound + 1) * Rnd())) + lowerBound
|
||||
Return oRandomValue
|
||||
|
||||
@ -10,18 +10,20 @@ Namespace ZUGFeRD
|
||||
Public Class FileFunctions
|
||||
Private ReadOnly _logConfig As LogConfig
|
||||
Private ReadOnly _logger As Logger
|
||||
Private ReadOnly _mssql As MSSQLServer
|
||||
Private ReadOnly _filesystem As FilesystemEx
|
||||
Private ReadOnly _email As ZUGFeRD.EmailFunctions
|
||||
|
||||
Public Sub New(pLogConfig As LogConfig, pMSSQL As MSSQLServer)
|
||||
_logConfig = pLogConfig
|
||||
_logger = _logConfig.GetLogger()
|
||||
_mssql = pMSSQL
|
||||
_email = New EmailFunctions(pLogConfig, pMSSQL)
|
||||
_filesystem = New FilesystemEx(pLogConfig)
|
||||
End Sub
|
||||
|
||||
Public Function CheckFileAge(oFiles As List(Of FileInfo), pMinFileAge As Integer)
|
||||
Return oFiles.Where(Function(f) Now.Subtract(f.CreationTime).Minutes < pMinFileAge).Any()
|
||||
End Function
|
||||
|
||||
Public Sub MoveFiles(
|
||||
pArgs As WorkerArgs,
|
||||
pMessageId As String,
|
||||
@ -143,9 +145,9 @@ Namespace ZUGFeRD
|
||||
' If oEmailData is Nothing, TBEDM_EMAIL_PROFILER_HISTORY for MessageId was not found.
|
||||
' This only should happen when testing and db-tables are deleted frequently
|
||||
If oEmailData Is Nothing Then
|
||||
oDestination = _email.GetEmailPathWithSubjectAsName(oRejectedDirectory, pMessageId)
|
||||
oDestination = GetEmailPathWithSubjectAsName(oRejectedDirectory, pMessageId)
|
||||
Else
|
||||
oDestination = _email.GetEmailPathWithSubjectAsName(oRejectedDirectory, StringEx.ConvertTextToSlug(oEmailData.Subject))
|
||||
oDestination = GetEmailPathWithSubjectAsName(oRejectedDirectory, StringEx.ConvertTextToSlug(oEmailData.Subject))
|
||||
End If
|
||||
|
||||
_logger.Debug("Destination for eml file is {0}", oDestination)
|
||||
@ -175,6 +177,17 @@ Namespace ZUGFeRD
|
||||
|
||||
Return oEmailData
|
||||
End Function
|
||||
|
||||
Public Function GetEmailPathWithSubjectAsName(RejectedEmailDirectory As String, UncleanedSubject As String) As String
|
||||
Dim oCleanSubject = String.Join("", UncleanedSubject.Split(Path.GetInvalidPathChars()))
|
||||
Dim oAttachmentDirectory = RejectedEmailDirectory
|
||||
Dim oAttachmentFile = oCleanSubject & ".eml"
|
||||
_logger.Debug("Email Filename is [{0}]", oAttachmentFile)
|
||||
|
||||
Dim oAttachmentPath = Path.Combine(oAttachmentDirectory, oAttachmentFile)
|
||||
|
||||
Return oAttachmentPath
|
||||
End Function
|
||||
End Class
|
||||
|
||||
End Namespace
|
||||
|
||||
@ -160,7 +160,12 @@ Public Class ImportZUGFeRDFiles
|
||||
Dim oMessageId As String = oFileGroup.Key
|
||||
Dim oMD5CheckSum As String = String.Empty
|
||||
|
||||
_logger.Info("Start processing file group {0}", oMessageId)
|
||||
_logger.Info("START processing file group {0}", oMessageId)
|
||||
|
||||
If _file.CheckFileAge(oFileGroupFiles, oArgs.MinFileAgeInMinutes) Then
|
||||
_logger.Info("At least one file was created less than [{0}] minutes ago. Skipping file group.", oArgs.MinFileAgeInMinutes)
|
||||
Continue For
|
||||
End If
|
||||
|
||||
Dim oEmailDataBase = _email.GetEmailDataForMessageId(oMessageId)
|
||||
|
||||
@ -373,7 +378,7 @@ Public Class ImportZUGFeRDFiles
|
||||
' Move all files of the current group
|
||||
_file.MoveFiles(oArgs, oMessageId, oFileGroupFiles, oEmailAttachmentFiles, oEmbeddedAttachmentFiles, oMoveDirectory, oIsSuccess)
|
||||
End If
|
||||
_logger.Info("Finished processing file group {0}", oMessageId)
|
||||
_logger.Info("END processing file group {0}", oMessageId)
|
||||
Catch ex As Exception
|
||||
' Send Email to Digital Data
|
||||
Dim oBody = _email.CreateBodyForUnhandledException(oMessageId, ex)
|
||||
|
||||
@ -21,6 +21,7 @@ Public Class WorkerArgs
|
||||
Public ExceptionEmailAddress As String = Nothing
|
||||
Public IgnoreRejectionStatus As Boolean = False
|
||||
Public MaxAttachmentSizeInMegaBytes As Integer = -1
|
||||
Public MinFileAgeInMinutes As Integer = 5
|
||||
Public NamePortal As String = "NO PORTAL_NAME IN CONFIG"
|
||||
|
||||
Public AllowFacturX As Boolean = True
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user