This commit is contained in:
Jonathan Jenne 2023-12-06 14:38:17 +01:00
parent cb2e3eb955
commit f5cb74d9c7
7 changed files with 35 additions and 1 deletions

View File

@ -46,6 +46,10 @@
oErrors.Add(My.Resources.Envelope.Missing_Receivers) oErrors.Add(My.Resources.Envelope.Missing_Receivers)
End If End If
If Receivers.Any(Function(r) r.HasEmailAndName = False) Then
oErrors.Add(My.Resources.Envelope.Incomplete_Receivers)
End If
Return oErrors Return oErrors
End Function End Function

View File

@ -65,6 +65,13 @@ Public Class EnvelopeReceiver
End Get End Get
End Property End Property
Public ReadOnly Property HasEmailAndName As Boolean
Get
Return String.IsNullOrWhiteSpace(Email) = False And
String.IsNullOrWhiteSpace(Name) = False
End Get
End Property
Public Property Sequence As Integer = 0 Public Property Sequence As Integer = 0
Public Property PrivateMessage As String = "" Public Property PrivateMessage As String = ""
Public Property AccessCode As String = "" Public Property AccessCode As String = ""

View File

@ -165,6 +165,9 @@
<data name="Errors when saving the envelope" xml:space="preserve"> <data name="Errors when saving the envelope" xml:space="preserve">
<value>Errors when saving the envelope</value> <value>Errors when saving the envelope</value>
</data> </data>
<data name="Incomplete Receivers" xml:space="preserve">
<value>At least one receiver does not have a name or an email address.</value>
</data>
<data name="Invalid Email Address" xml:space="preserve"> <data name="Invalid Email Address" xml:space="preserve">
<value>Receiver {0} has an invalid Email Address.</value> <value>Receiver {0} has an invalid Email Address.</value>
</data> </data>

View File

@ -165,6 +165,9 @@
<data name="Errors when saving the envelope" xml:space="preserve"> <data name="Errors when saving the envelope" xml:space="preserve">
<value>Fehler beim Speichern des Umschlags: </value> <value>Fehler beim Speichern des Umschlags: </value>
</data> </data>
<data name="Incomplete Receivers" xml:space="preserve">
<value>Mindestens ein Empfänger hat keine Anrede oder keine Email Adresse.</value>
</data>
<data name="Invalid Email Address" xml:space="preserve"> <data name="Invalid Email Address" xml:space="preserve">
<value>Empfänger {0} hat keine gültige Email Addresse.</value> <value>Empfänger {0} hat keine gültige Email Addresse.</value>
</data> </data>

View File

@ -208,6 +208,15 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Mindestens ein Empfänger hat keine Anrede oder keine Email Adresse. ähnelt.
'''</summary>
Public Shared ReadOnly Property Incomplete_Receivers() As String
Get
Return ResourceManager.GetString("Incomplete Receivers", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Empfänger {0} hat keine gültige Email Addresse. ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Empfänger {0} hat keine gültige Email Addresse. ähnelt.
'''</summary> '''</summary>

View File

@ -85,7 +85,10 @@ Public Class EnvelopeEditorController
Public Function SaveReceivers(pEnvelope As Envelope, pReceiversFromGrid As List(Of EnvelopeReceiver)) As Boolean Public Function SaveReceivers(pEnvelope As Envelope, pReceiversFromGrid As List(Of EnvelopeReceiver)) As Boolean
Dim oExistingReceivers As List(Of EnvelopeReceiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList() Dim oExistingReceivers As List(Of EnvelopeReceiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList()
Dim oExistingAddresses = oExistingReceivers.Select(Function(r) r.Email) Dim oExistingAddresses = oExistingReceivers.Select(Function(r) r.Email)
Dim oNewReceivers = pReceiversFromGrid.Where(Function(r) Not oExistingAddresses.Contains(r.Email)).ToList() Dim oNewReceivers = pReceiversFromGrid.Where(Function(r)
If r.Email Is Nothing Then Return False
Return Not oExistingAddresses.Contains(r.Email)
End Function).ToList()
If CreateNewReceivers(oNewReceivers) = False Then If CreateNewReceivers(oNewReceivers) = False Then
Return False Return False
@ -96,6 +99,9 @@ Public Class EnvelopeEditorController
pEnvelope.Receivers.Clear() pEnvelope.Receivers.Clear()
For Each oReceiver In pReceiversFromGrid For Each oReceiver In pReceiversFromGrid
If oReceiver.Email Is Nothing Then Continue For
If oReceiver.Name Is Nothing Then Continue For
Dim oDbReceiver = oAllReceivers.Where(Function(r) r.Email = oReceiver.Email).SingleOrDefault() Dim oDbReceiver = oAllReceivers.Where(Function(r) r.Email = oReceiver.Email).SingleOrDefault()
If oDbReceiver IsNot Nothing Then If oDbReceiver IsNot Nothing Then
oReceiver.Id = oDbReceiver.Id oReceiver.Id = oDbReceiver.Id

View File

@ -215,6 +215,8 @@ Partial Public Class frmEnvelopeEditor
oEnvelope.Message = oMessage oEnvelope.Message = oMessage
oEnvelope.Documents = Documents.ToList oEnvelope.Documents = Documents.ToList
If Controller.SaveReceivers(oEnvelope, Receivers.ToList) = False Then If Controller.SaveReceivers(oEnvelope, Receivers.ToList) = False Then
MsgBox(Resources.Envelope.Error_when_saving_the_recipients, MsgBoxStyle.Critical, Text) MsgBox(Resources.Envelope.Error_when_saving_the_recipients, MsgBoxStyle.Critical, Text)
Return False Return False