diff --git a/EnvelopeGenerator.Common/DbConfig.vb b/EnvelopeGenerator.Common/DbConfig.vb
index 582eb8aa..013eb8a5 100644
--- a/EnvelopeGenerator.Common/DbConfig.vb
+++ b/EnvelopeGenerator.Common/DbConfig.vb
@@ -1,3 +1,4 @@
Public Class DbConfig
Public Property DocumentPath As String = ""
+ Public Property SendingProfile As Integer = 0
End Class
diff --git a/EnvelopeGenerator.Common/Entities/EmailData.vb b/EnvelopeGenerator.Common/Entities/EmailData.vb
new file mode 100644
index 00000000..dc01e725
--- /dev/null
+++ b/EnvelopeGenerator.Common/Entities/EmailData.vb
@@ -0,0 +1,7 @@
+Public Class EmailData
+ Public Property EmailAdress As String
+ Public Property EmailSubject As String
+ Public Property EmailBody As String
+
+ Public Property ReferenceID As Integer
+End Class
diff --git a/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj b/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj
index a9ab1d95..8d44b64f 100644
--- a/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj
+++ b/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj
@@ -95,6 +95,7 @@
+
@@ -106,6 +107,7 @@
+
diff --git a/EnvelopeGenerator.Common/Models/EmailModel.vb b/EnvelopeGenerator.Common/Models/EmailModel.vb
new file mode 100644
index 00000000..15481bae
--- /dev/null
+++ b/EnvelopeGenerator.Common/Models/EmailModel.vb
@@ -0,0 +1,35 @@
+Imports System.Data.SqlClient
+Imports DigitalData.Modules.Base
+Imports DigitalData.Modules.Logging
+
+Public Class EmailModel
+ Inherits BaseModel
+
+ Public Sub New(pState As State)
+ MyBase.New(pState)
+ End Sub
+
+ 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 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("SENDING_PROFILE", SqlDbType.Int).Value = State.DbConfig.SendingProfile
+ oCommand.Parameters.Add("REFERENCE_ID", SqlDbType.Int).Value = pEmail.ReferenceID
+
+ If Database.ExecuteNonQuery(oCommand) Then
+ Return True
+ Else
+ Return False
+ End If
+
+ Catch ex As Exception
+ Logger.Error(ex)
+ Return False
+ End Try
+ End Function
+End Class
diff --git a/EnvelopeGenerator.Form/Controllers/BaseController.vb b/EnvelopeGenerator.Form/Controllers/BaseController.vb
index 87c9077d..8f524073 100644
--- a/EnvelopeGenerator.Form/Controllers/BaseController.vb
+++ b/EnvelopeGenerator.Form/Controllers/BaseController.vb
@@ -12,6 +12,7 @@ Public MustInherit Class BaseController
Public ElementModel As ElementModel
Public HistoryModel As HistoryModel
Public UserModel As UserModel
+ Public EmailModel As EmailModel
Public ReadOnly Property Database As MSSQLServer
Public ReadOnly Property State As State
@@ -30,6 +31,7 @@ Public MustInherit Class BaseController
ElementModel = New ElementModel(pState)
HistoryModel = New HistoryModel(pState)
UserModel = New UserModel(pState)
+ EmailModel = New EmailModel(pState)
End Sub
Public Function DeleteEnvelope(pEnvelope As Envelope) As Boolean
diff --git a/EnvelopeGenerator.Form/Controllers/EnvelopeEditorController.vb b/EnvelopeGenerator.Form/Controllers/EnvelopeEditorController.vb
index 7f3851ae..bc51c23c 100644
--- a/EnvelopeGenerator.Form/Controllers/EnvelopeEditorController.vb
+++ b/EnvelopeGenerator.Form/Controllers/EnvelopeEditorController.vb
@@ -31,6 +31,27 @@ Public Class EnvelopeEditorController
#Region "Public"
Public Function SendEnvelope() As Boolean
+ Dim oResult As Boolean = True
+
+ For Each receiverItem As EnvelopeReceiver In Envelope.Receivers
+
+ ' TODO Email-Template füllen
+ Dim oEmailBody As String = String.Empty
+
+ Dim oEmailData As EmailData = New EmailData With
+ {
+ .EmailAdress = receiverItem.Email,
+ .EmailSubject = Envelope.Subject,
+ .EmailBody = oEmailBody,
+ .ReferenceID = Envelope.Id
+ }
+
+ If EmailModel.Insert(oEmailData) = False Then
+ Logger.Error("EMail data could not be inserted.")
+ oResult = False
+ End If
+
+ Next
If EnvelopeModel.Send(Envelope) Then
@@ -141,6 +162,17 @@ Public Class EnvelopeEditorController
End Try
End Function
+ Public Function CreateThumbnail(pDocumentPath As String) As Bitmap
+ Try
+ Dim oThumbNail As Bitmap = Thumbnail.GetThumbnailFromPDFFile(pDocumentPath)
+
+ Return oThumbNail
+ Catch ex As Exception
+ Logger.Error(ex)
+ Return Nothing
+ End Try
+ End Function
+
Public Overloads Function DeleteDocument(pDocument As EnvelopeDocument) As Boolean
Dim oConnection As SqlConnection = Database.GetConnection
Dim oTransaction As SqlTransaction = oConnection.BeginTransaction
diff --git a/EnvelopeGenerator.Form/frmEnvelopeEditor.vb b/EnvelopeGenerator.Form/frmEnvelopeEditor.vb
index 5a60cdb3..ad1be2ef 100644
--- a/EnvelopeGenerator.Form/frmEnvelopeEditor.vb
+++ b/EnvelopeGenerator.Form/frmEnvelopeEditor.vb
@@ -54,6 +54,12 @@ Partial Public Class frmEnvelopeEditor
txtMessage.EditValue = Controller.Envelope.Message
txtSubject.EditValue = Controller.Envelope.Subject
+ For Each docItem As EnvelopeDocument In Documents
+ If docItem.Thumbnail Is Nothing Then
+ docItem.Thumbnail = Controller.CreateThumbnail(docItem.Filepath)
+ End If
+ Next
+
If Envelope.Status = Constants.EnvelopeStatus.Sent Then
SetFormReadonly()
End If
diff --git a/EnvelopeGenerator.Form/frmMain.vb b/EnvelopeGenerator.Form/frmMain.vb
index 40fcd687..a0639faf 100644
--- a/EnvelopeGenerator.Form/frmMain.vb
+++ b/EnvelopeGenerator.Form/frmMain.vb
@@ -71,7 +71,8 @@ Public Class frmMain
Dim oRow = oTable.Rows.Item(0)
Return New DbConfig() With {
- .DocumentPath = oRow.ItemEx("DOCUMENT_PATH", "")
+ .DocumentPath = oRow.ItemEx("DOCUMENT_PATH", ""),
+ .SendingProfile = oRow.ItemEx("SENDING_PROFILE", 0)
}
Catch ex As Exception
Return New DbConfig()