This commit is contained in:
Jonathan Jenne
2023-09-27 09:51:16 +02:00
18 changed files with 445 additions and 420 deletions

View File

@@ -1,4 +1,5 @@
Public Class DbConfig
Public Property ExternalProgramName As String = "Sign Flow"
Public Property DocumentPath As String = ""
Public Property SendingProfile As Integer = 0
Public Property SignatureHost As String = ""

View File

@@ -3,6 +3,7 @@
Public Property EmailSubject As String
Public Property EmailBody As String
Public Property ReferenceID As Integer
Public Property ReferenceString As String
Public Property ReceiverName As String

View File

@@ -30,13 +30,13 @@
_replaceDictionary = New Dictionary(Of String, String) From {
{"<NAME_RECEIVER>", pEmailData.ReceiverName},
{"<NAME_SENDER>", pEmailData.SenderName},
{"<SIGNATURE_TYPE>", ""},
{"<SIGNATURE_TYPE>", "signieren"},
{"<LINK_TO_DOCUMENT>", pEmailData.SignatureLink},
{"<MESSAGE>", pEmailData.Message}
}
End Sub
Public Sub SetEmailBody(pEmailData As EmailData)
Public Sub FillEmailBody(pEmailData As EmailData)
InitDictionary(pEmailData)

View File

@@ -93,7 +93,7 @@
<ItemGroup>
<Compile Include="Config.vb" />
<Compile Include="Constants.vb" />
<Compile Include="DbConfig.vb" />
<Compile Include="Entities\DbConfig.vb" />
<Compile Include="Entities\ElementMetadata.vb" />
<Compile Include="Entities\EmailData.vb" />
<Compile Include="Entities\EmailTemplate.vb" />
@@ -107,6 +107,7 @@
<Compile Include="Entities\User.vb" />
<Compile Include="Helpers.vb" />
<Compile Include="Models\BaseModel.vb" />
<Compile Include="Models\ConfigModel.vb" />
<Compile Include="Models\DocumentModel.vb" />
<Compile Include="Models\ElementModel.vb" />
<Compile Include="Models\EmailModel.vb" />

View File

@@ -0,0 +1,40 @@
Imports System.Data.SqlClient
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.Logging
Public Class ConfigModel
Inherits BaseModel
Public Sub New(pState As State)
MyBase.New(pState)
End Sub
Public Function LoadConfiguration() As DbConfig
Try
Dim oSql As String = "SELECT TOP 1 * FROM TBSIG_CONFIG"
Dim oTable As DataTable = Database.GetDatatable(oSql)
Dim oRow = oTable.Rows.Item(0)
Return New DbConfig() With {
.DocumentPath = oRow.ItemEx("DOCUMENT_PATH", ""),
.SendingProfile = oRow.ItemEx("SENDING_PROFILE", 0),
.SignatureHost = oRow.ItemEx("SIGNATURE_HOST", ""),
.ExternalProgramName = oRow.ItemEx("EXTERNAL_PROGRAM_NAME", "")
}
Catch ex As Exception
Return New DbConfig()
End Try
End Function
Public Function GetUserId() As Integer
Try
Dim oUserId As Integer = Database.GetScalarValue($"SELECT GUID FROM TBDD_USER WHERE USERNAME = '{Environment.UserName}'")
Return oUserId
Catch ex As Exception
Return 0
End Try
End Function
End Class

View File

@@ -44,6 +44,26 @@ Public Class ElementModel
End Try
End Function
Public Function OneElementPerReceiverExist(pEnvelopeId As Integer) As Boolean
Try
Dim oSql = "SELECT COUNT(*) FROM ("
oSql += " SELECT DISTINCT RECEIVER_ID FROM [dbo].[TBSIG_DOCUMENT_RECEIVER_ELEMENT] T"
oSql += " JOIN TBSIG_ENVELOPE_DOCUMENT T2 ON T.DOCUMENT_ID = T2.GUID"
oSql += $" WHERE T2.ENVELOPE_ID = {pEnvelopeId}"
oSql += " ) TMAX"
Dim oElementReceiverCount As Integer = Database.GetScalarValue(oSql)
Dim oSql2 = $"SELECT COUNT(*) FROM TBSIG_ENVELOPE_RECEIVER WHERE ENVELOPE_ID = {pEnvelopeId}"
Dim oEnvelopeReceiverCount As Integer = Database.GetScalarValue(oSql2)
Return oElementReceiverCount = oEnvelopeReceiverCount
Catch ex As Exception
Logger.Error(ex)
Return False
End Try
End Function
Public Function ElementsExist(pEnvelopeId As Integer) As Boolean
Try
Dim oSql = $"SELECT COUNT(*) FROM [dbo].[TBSIG_DOCUMENT_RECEIVER_ELEMENT] T

View File

@@ -11,15 +11,19 @@ Public Class EmailModel
Public Function Insert(pEmail As EmailData) As Boolean
Try
Dim oSql = "INSERT INTO [dbo].[TBEMLP_EMAIL_OUT] (EMAIL_ADRESS, EMAIL_SUBJ, EMAIL_BODY, ADDED_WHO, SENDING_PROFILE, REFERENCE_ID) "
oSql += " VALUES (@EMAIL_ADRESS, @EMAIL_SUBJ, @EMAIL_BODY, @ADDED_WHO, @SENDING_PROFILE, @REFERENCE_ID)"
Dim oSql = "INSERT INTO [dbo].[TBEMLP_EMAIL_OUT] "
oSql += " (EMAIL_ADRESS, EMAIL_SUBJ, EMAIL_BODY, ADDED_WHO, SENDING_PROFILE, REFERENCE_ID, REFERENCE_STRING, REMINDER_TYPE_ID, WF_ID) "
oSql += " VALUES (@EMAIL_ADRESS, @EMAIL_SUBJ, @EMAIL_BODY, @ADDED_WHO, @SENDING_PROFILE, @REFERENCE_ID, @REFERENCE_STRING, @REMINDER_TYPE_ID, @WF_ID)"
Dim oCommand As New SqlCommand(oSql)
oCommand.Parameters.Add("EMAIL_ADRESS", SqlDbType.NVarChar).Value = pEmail.EmailAdress
oCommand.Parameters.Add("EMAIL_SUBJ", SqlDbType.NVarChar).Value = pEmail.EmailSubject
oCommand.Parameters.Add("EMAIL_BODY", SqlDbType.NVarChar).Value = pEmail.EmailBody
oCommand.Parameters.Add("ADDED_WHO", SqlDbType.NVarChar).Value = "Envelop Generator"
oCommand.Parameters.Add("ADDED_WHO", SqlDbType.NVarChar).Value = "DDEnvelopGenerator"
oCommand.Parameters.Add("SENDING_PROFILE", SqlDbType.Int).Value = State.DbConfig.SendingProfile
oCommand.Parameters.Add("REFERENCE_ID", SqlDbType.Int).Value = pEmail.ReferenceID
oCommand.Parameters.Add("REFERENCE_STRING", SqlDbType.NVarChar).Value = pEmail.ReferenceString
oCommand.Parameters.Add("REMINDER_TYPE_ID", SqlDbType.Int).Value = 77
oCommand.Parameters.Add("WF_ID", SqlDbType.Int).Value = 77
If Database.ExecuteNonQuery(oCommand) Then
Return True

View File

@@ -156,6 +156,9 @@
<data name="Missing Elements" xml:space="preserve">
<value>Missing at least one Element</value>
</data>
<data name="Missing Elements for Receiver" xml:space="preserve">
<value>For Receiver {0} you need at least one Element</value>
</data>
<data name="Missing Message" xml:space="preserve">
<value>Missing Message</value>
</data>

View File

@@ -154,7 +154,10 @@
<value>Missing Documents</value>
</data>
<data name="Missing Elements" xml:space="preserve">
<value>Missing at least one Element</value>
<value>Es muss mindestens ein Signaturfeld gesetzt werden</value>
</data>
<data name="Missing Elements for Receiver" xml:space="preserve">
<value>Für den Empfänger {0} gibt es noch kein Signaturfeld</value>
</data>
<data name="Missing Message" xml:space="preserve">
<value>Missing Message</value>

View File

@@ -173,7 +173,7 @@ Namespace My.Resources
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Missing at least one Element ähnelt.
''' Sucht eine lokalisierte Zeichenfolge, die Es muss mindestens ein Signaturfeld gesetzt werden ähnelt.
'''</summary>
Public Shared ReadOnly Property Missing_Elements() As String
Get
@@ -181,6 +181,15 @@ Namespace My.Resources
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Für den Empfänger {0} gibt es noch kein Signaturfeld ähnelt.
'''</summary>
Public Shared ReadOnly Property Missing_Elements_for_Receiver() As String
Get
Return ResourceManager.GetString("Missing Elements for Receiver", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Missing Message ähnelt.
'''</summary>