Status-Anzeige Hauptschirm

This commit is contained in:
PitzM 2023-12-04 15:43:44 +01:00
parent 1b56789858
commit 544d6e9de0
7 changed files with 285 additions and 11 deletions

View File

@ -26,15 +26,25 @@ Public Class EnvelopeReceiver
Public Property ColorType As ColorType Public Property ColorType As ColorType
Public Property Name As String Public Property Name As String
Public Property Company As String = "" Public Property Company As String = ""
Public Property JobTitle As String = "" Public Property JobTitle As String = ""
Public Property Email As String Public Property Email As String
Public Property Status As ReceiverStatus Public Property Status As ReceiverStatus
Public ReadOnly Property StatusTranslated As String
Get
Dim oStatus = Status.ToString()
Return My.Resources.Model.ResourceManager.GetString(oStatus)
End Get
End Property
Public Property SignedDate As DateTime = DateTime.MinValue
Public ReadOnly Property HasId As Boolean Public ReadOnly Property HasId As Boolean
Get Get
Return Id > 0 Return Id > 0

View File

@ -1,6 +1,5 @@
Imports System.Data Imports System.Data.SqlClient
Imports System.Data.Common Imports System.Net.Mail
Imports System.Data.SqlClient
Imports DigitalData.Modules.Base Imports DigitalData.Modules.Base
Imports EnvelopeGenerator.Common.Constants Imports EnvelopeGenerator.Common.Constants
@ -12,14 +11,28 @@ Public Class ReceiverModel
End Sub End Sub
Private Function ToReceiver(pRow As DataRow, pColorIndex As Integer) As EnvelopeReceiver Private Function ToReceiver(pRow As DataRow, pColorIndex As Integer) As EnvelopeReceiver
Dim EmailAdress As String = pRow.ItemEx("EMAIL_ADDRESS", "")
Dim EnvelopeId As Integer = pRow.ItemEx("ENVELOPE_ID", 0)
Dim SignedDate As DateTime = DateTime.MinValue
Dim ReceiverSignedStatus As ReceiverStatus = ReceiverStatus.Unsigned
If String.IsNullOrEmpty(EmailAdress) = False Then
SignedDate = GetSignedDate(EmailAdress, EnvelopeId)
If SignedDate <> DateTime.MinValue Then
ReceiverSignedStatus = ReceiverStatus.Signed
End If
End If
Return New EnvelopeReceiver() With { Return New EnvelopeReceiver() With {
.Id = pRow.ItemEx("GUID", 0), .Id = pRow.ItemEx("GUID", 0),
.Email = pRow.ItemEx("EMAIL_ADDRESS", ""), .Email = pRow.ItemEx("EMAIL_ADDRESS", ""),
.Name = pRow.ItemEx("NAME", ""), .Name = pRow.ItemEx("NAME", ""),
.Sequence = pRow.ItemEx("SEQUENCE", 0), .Sequence = pRow.ItemEx("SEQUENCE", 0),
.Signature = pRow.ItemEx("SIGNATURE", ""), .Signature = pRow.ItemEx("SIGNATURE", ""),
.Status = ReceiverStatus.Unsigned, .Status = ReceiverSignedStatus,
.ColorType = DirectCast(pColorIndex + 1, ColorType) .ColorType = DirectCast(pColorIndex + 1, ColorType),
.SignedDate = SignedDate
} }
End Function End Function
@ -211,5 +224,15 @@ Public Class ReceiverModel
End Try End Try
End Function End Function
Private Function GetSignedDate(pEmailAdress As String, pEnvleopeId As Integer) As Date
Try
Return Database.GetScalarValue($"SELECT ACTION_DATE FROM [DD_ECM].[dbo].[TBSIG_ENVELOPE_HISTORY] WHERE ENVELOPE_ID = {pEnvleopeId}
AND USER_REFERENCE = '{pEmailAdress}' AND [STATUS] = 2002")
Catch ex As Exception
Logger.Error(ex)
Return Nothing
End Try
End Function
End Class End Class

View File

@ -100,6 +100,24 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Dokument geöffnet ähnelt.
'''</summary>
Friend Shared ReadOnly Property DocumentOpened() As String
Get
Return ResourceManager.GetString("DocumentOpened", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Dokument unterzeichnet ähnelt.
'''</summary>
Friend Shared ReadOnly Property DocumentSigned() As String
Get
Return ResourceManager.GetString("DocumentSigned", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Entwurf ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Entwurf ähnelt.
'''</summary> '''</summary>
@ -109,6 +127,87 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Archiviert ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeArchived() As String
Get
Return ResourceManager.GetString("EnvelopeArchived", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Vollständig signiert ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeCompletelySigned() As String
Get
Return ResourceManager.GetString("EnvelopeCompletelySigned", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Erstellt ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeCreated() As String
Get
Return ResourceManager.GetString("EnvelopeCreated", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Gelöscht ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeDeleted() As String
Get
Return ResourceManager.GetString("EnvelopeDeleted", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Teil signiert ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopePartlySigned() As String
Get
Return ResourceManager.GetString("EnvelopePartlySigned", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Umschlag in Queue ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeQueued() As String
Get
Return ResourceManager.GetString("EnvelopeQueued", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Gespeichert ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeSaved() As String
Get
Return ResourceManager.GetString("EnvelopeSaved", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Gesendet ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeSent() As String
Get
Return ResourceManager.GetString("EnvelopeSent", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die DMS ähnelt.
'''</summary>
Friend Shared ReadOnly Property EnvelopeTransmittedDMS() As String
Get
Return ResourceManager.GetString("EnvelopeTransmittedDMS", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Teil-Signiert ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Teil-Signiert ähnelt.
'''</summary> '''</summary>
@ -153,5 +252,32 @@ Namespace My.Resources
Return ResourceManager.GetString("Signature", resourceCulture) Return ResourceManager.GetString("Signature", resourceCulture)
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Signatur bestätigt ähnelt.
'''</summary>
Friend Shared ReadOnly Property SignatureConfirmed() As String
Get
Return ResourceManager.GetString("SignatureConfirmed", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Signiert ähnelt.
'''</summary>
Friend Shared ReadOnly Property Signed() As String
Get
Return ResourceManager.GetString("Signed", resourceCulture)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Unsigniert ähnelt.
'''</summary>
Friend Shared ReadOnly Property Unsigned() As String
Get
Return ResourceManager.GetString("Unsigned", resourceCulture)
End Get
End Property
End Class End Class
End Namespace End Namespace

View File

@ -126,9 +126,42 @@
<data name="Created" xml:space="preserve"> <data name="Created" xml:space="preserve">
<value>Created</value> <value>Created</value>
</data> </data>
<data name="DocumentOpened" xml:space="preserve">
<value>Document opened</value>
</data>
<data name="DocumentSigned" xml:space="preserve">
<value>Document signed</value>
</data>
<data name="Draft" xml:space="preserve"> <data name="Draft" xml:space="preserve">
<value>Draft</value> <value>Draft</value>
</data> </data>
<data name="EnvelopeArchived" xml:space="preserve">
<value>Archived</value>
</data>
<data name="EnvelopeCompletelySigned" xml:space="preserve">
<value>Completely signed</value>
</data>
<data name="EnvelopeCreated" xml:space="preserve">
<value>Created</value>
</data>
<data name="EnvelopeDeleted" xml:space="preserve">
<value>Deleted</value>
</data>
<data name="EnvelopePartlySigned" xml:space="preserve">
<value>Partly signed</value>
</data>
<data name="EnvelopeQueued" xml:space="preserve">
<value>Queued</value>
</data>
<data name="EnvelopeSaved" xml:space="preserve">
<value>Saved</value>
</data>
<data name="EnvelopeSent" xml:space="preserve">
<value>Sent</value>
</data>
<data name="EnvelopeTransmittedDMS" xml:space="preserve">
<value>DMS</value>
</data>
<data name="ReadAndSign" xml:space="preserve"> <data name="ReadAndSign" xml:space="preserve">
<value>ReadAndSign</value> <value>ReadAndSign</value>
</data> </data>
@ -141,4 +174,13 @@
<data name="Signature" xml:space="preserve"> <data name="Signature" xml:space="preserve">
<value>Signature</value> <value>Signature</value>
</data> </data>
<data name="SignatureConfirmed" xml:space="preserve">
<value>Signature confirmed</value>
</data>
<data name="Signed" xml:space="preserve">
<value>Signed</value>
</data>
<data name="Unsigned" xml:space="preserve">
<value>Unsigned</value>
</data>
</root> </root>

View File

@ -129,9 +129,42 @@
<data name="Created" xml:space="preserve"> <data name="Created" xml:space="preserve">
<value>Erstellt</value> <value>Erstellt</value>
</data> </data>
<data name="DocumentOpened" xml:space="preserve">
<value>Dokument geöffnet</value>
</data>
<data name="DocumentSigned" xml:space="preserve">
<value>Dokument unterzeichnet</value>
</data>
<data name="Draft" xml:space="preserve"> <data name="Draft" xml:space="preserve">
<value>Entwurf</value> <value>Entwurf</value>
</data> </data>
<data name="EnvelopeArchived" xml:space="preserve">
<value>Archiviert</value>
</data>
<data name="EnvelopeCompletelySigned" xml:space="preserve">
<value>Vollständig signiert</value>
</data>
<data name="EnvelopeCreated" xml:space="preserve">
<value>Erstellt</value>
</data>
<data name="EnvelopeDeleted" xml:space="preserve">
<value>Gelöscht</value>
</data>
<data name="EnvelopePartlySigned" xml:space="preserve">
<value>Teil signiert</value>
</data>
<data name="EnvelopeQueued" xml:space="preserve">
<value>Umschlag in Queue</value>
</data>
<data name="EnvelopeSaved" xml:space="preserve">
<value>Gespeichert</value>
</data>
<data name="EnvelopeSent" xml:space="preserve">
<value>Gesendet</value>
</data>
<data name="EnvelopeTransmittedDMS" xml:space="preserve">
<value>DMS</value>
</data>
<data name="PartlySigned" xml:space="preserve"> <data name="PartlySigned" xml:space="preserve">
<value>Teil-Signiert</value> <value>Teil-Signiert</value>
</data> </data>
@ -147,4 +180,13 @@
<data name="Signature" xml:space="preserve"> <data name="Signature" xml:space="preserve">
<value>Signatur</value> <value>Signatur</value>
</data> </data>
<data name="SignatureConfirmed" xml:space="preserve">
<value>Signatur bestätigt</value>
</data>
<data name="Signed" xml:space="preserve">
<value>Signiert</value>
</data>
<data name="Unsigned" xml:space="preserve">
<value>Unsigniert</value>
</data>
</root> </root>

View File

@ -30,6 +30,7 @@ Partial Class frmMain
Me.ColReceiverStatus = New DevExpress.XtraGrid.Columns.GridColumn() Me.ColReceiverStatus = New DevExpress.XtraGrid.Columns.GridColumn()
Me.ColName = New DevExpress.XtraGrid.Columns.GridColumn() Me.ColName = New DevExpress.XtraGrid.Columns.GridColumn()
Me.ColEmail = New DevExpress.XtraGrid.Columns.GridColumn() Me.ColEmail = New DevExpress.XtraGrid.Columns.GridColumn()
Me.ColSignedDate = New DevExpress.XtraGrid.Columns.GridColumn()
Me.ViewEnvelopes = New DevExpress.XtraGrid.Views.Grid.GridView() Me.ViewEnvelopes = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.colContractType = New DevExpress.XtraGrid.Columns.GridColumn() Me.colContractType = New DevExpress.XtraGrid.Columns.GridColumn()
Me.colStatus = New DevExpress.XtraGrid.Columns.GridColumn() Me.colStatus = New DevExpress.XtraGrid.Columns.GridColumn()
@ -115,7 +116,7 @@ Partial Class frmMain
' '
'ViewReceivers 'ViewReceivers
' '
Me.ViewReceivers.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.ColReceiverStatus, Me.ColName, Me.ColEmail}) Me.ViewReceivers.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.ColReceiverStatus, Me.ColName, Me.ColEmail, Me.ColSignedDate})
Me.ViewReceivers.GridControl = Me.GridEnvelopes Me.ViewReceivers.GridControl = Me.GridEnvelopes
Me.ViewReceivers.Name = "ViewReceivers" Me.ViewReceivers.Name = "ViewReceivers"
Me.ViewReceivers.OptionsDetail.AllowZoomDetail = False Me.ViewReceivers.OptionsDetail.AllowZoomDetail = False
@ -127,7 +128,7 @@ Partial Class frmMain
'ColReceiverStatus 'ColReceiverStatus
' '
resources.ApplyResources(Me.ColReceiverStatus, "ColReceiverStatus") resources.ApplyResources(Me.ColReceiverStatus, "ColReceiverStatus")
Me.ColReceiverStatus.FieldName = "Status" Me.ColReceiverStatus.FieldName = "StatusTranslated"
Me.ColReceiverStatus.Name = "ColReceiverStatus" Me.ColReceiverStatus.Name = "ColReceiverStatus"
Me.ColReceiverStatus.OptionsColumn.AllowEdit = False Me.ColReceiverStatus.OptionsColumn.AllowEdit = False
' '
@ -136,12 +137,23 @@ Partial Class frmMain
resources.ApplyResources(Me.ColName, "ColName") resources.ApplyResources(Me.ColName, "ColName")
Me.ColName.FieldName = "Name" Me.ColName.FieldName = "Name"
Me.ColName.Name = "ColName" Me.ColName.Name = "ColName"
Me.ColName.OptionsColumn.AllowEdit = False
' '
'ColEmail 'ColEmail
' '
resources.ApplyResources(Me.ColEmail, "ColEmail") resources.ApplyResources(Me.ColEmail, "ColEmail")
Me.ColEmail.FieldName = "Email" Me.ColEmail.FieldName = "Email"
Me.ColEmail.Name = "ColEmail" Me.ColEmail.Name = "ColEmail"
Me.ColEmail.OptionsColumn.AllowEdit = False
'
'ColSignedDate
'
resources.ApplyResources(Me.ColSignedDate, "ColSignedDate")
Me.ColSignedDate.DisplayFormat.FormatString = "d"
Me.ColSignedDate.DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime
Me.ColSignedDate.FieldName = "SignedDate"
Me.ColSignedDate.Name = "ColSignedDate"
Me.ColSignedDate.OptionsColumn.AllowEdit = False
' '
'ViewEnvelopes 'ViewEnvelopes
' '
@ -341,4 +353,5 @@ Partial Class frmMain
Friend WithEvents GridColumn6 As DevExpress.XtraGrid.Columns.GridColumn Friend WithEvents GridColumn6 As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents GridColumn7 As DevExpress.XtraGrid.Columns.GridColumn Friend WithEvents GridColumn7 As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents ColName As DevExpress.XtraGrid.Columns.GridColumn Friend WithEvents ColName As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents ColSignedDate As DevExpress.XtraGrid.Columns.GridColumn
End Class End Class

View File

@ -145,7 +145,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="ColReceiverStatus.Width" type="System.Int32, mscorlib"> <data name="ColReceiverStatus.Width" type="System.Int32, mscorlib">
<value>145</value> <value>138</value>
</data> </data>
<data name="ColName.Caption" xml:space="preserve"> <data name="ColName.Caption" xml:space="preserve">
<value>Name</value> <value>Name</value>
@ -157,7 +157,7 @@
<value>1</value> <value>1</value>
</data> </data>
<data name="ColName.Width" type="System.Int32, mscorlib"> <data name="ColName.Width" type="System.Int32, mscorlib">
<value>456</value> <value>435</value>
</data> </data>
<data name="ColEmail.Caption" xml:space="preserve"> <data name="ColEmail.Caption" xml:space="preserve">
<value>Email</value> <value>Email</value>
@ -169,7 +169,19 @@
<value>2</value> <value>2</value>
</data> </data>
<data name="ColEmail.Width" type="System.Int32, mscorlib"> <data name="ColEmail.Width" type="System.Int32, mscorlib">
<value>460</value> <value>377</value>
</data>
<data name="ColSignedDate.Caption" xml:space="preserve">
<value>Unterschrieben am</value>
</data>
<data name="ColSignedDate.Visible" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="ColSignedDate.VisibleIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="ColSignedDate.Width" type="System.Int32, mscorlib">
<value>134</value>
</data> </data>
<data name="ViewReceivers.ViewCaption" xml:space="preserve"> <data name="ViewReceivers.ViewCaption" xml:space="preserve">
<value>Empfänger</value> <value>Empfänger</value>
@ -610,6 +622,12 @@
<data name="&gt;&gt;ColEmail.Type" xml:space="preserve"> <data name="&gt;&gt;ColEmail.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;ColSignedDate.Name" xml:space="preserve">
<value>ColSignedDate</value>
</data>
<data name="&gt;&gt;ColSignedDate.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;ViewEnvelopes.Name" xml:space="preserve"> <data name="&gt;&gt;ViewEnvelopes.Name" xml:space="preserve">
<value>ViewEnvelopes</value> <value>ViewEnvelopes</value>
</data> </data>