23-08-23
This commit is contained in:
@@ -3,6 +3,7 @@ Imports System.IO
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports EnvelopeGenerator.Common
|
||||
Imports EnvelopeGenerator.Common.Constants
|
||||
Imports EnvelopeGenerator.Common.My
|
||||
|
||||
Public Class EnvelopeEditorController
|
||||
Inherits BaseController
|
||||
@@ -24,6 +25,27 @@ Public Class EnvelopeEditorController
|
||||
End Sub
|
||||
|
||||
#Region "Public"
|
||||
Public Function SendEnvelope() As Boolean
|
||||
|
||||
|
||||
If EnvelopeModel.Send(Envelope) Then
|
||||
'TODO: Send email
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Function ValidateEnvelopeForSending() As List(Of String)
|
||||
Dim oEnvelopeErrors = Envelope.Validate()
|
||||
|
||||
If ElementModel.ElementsExist(Envelope.Id) = False Then
|
||||
oEnvelopeErrors.Add(Resources.Envelope.Missing_Elements)
|
||||
End If
|
||||
|
||||
Return oEnvelopeErrors
|
||||
End Function
|
||||
|
||||
Public Function CreateEnvelope() As Envelope
|
||||
Dim oEnvelope As New Envelope() With {
|
||||
.UserId = State.UserId,
|
||||
@@ -45,26 +67,26 @@ Public Class EnvelopeEditorController
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Function SaveEnvelope(pEnvelope As Envelope) As Boolean
|
||||
Public Function SaveEnvelope() As Boolean
|
||||
Dim oConnection = Database.GetConnection()
|
||||
Dim oTransaction = oConnection.BeginTransaction(IsolationLevel.ReadUncommitted)
|
||||
|
||||
Try
|
||||
pEnvelope.Status = EnvelopeStatus.Saved
|
||||
Envelope.Status = EnvelopeStatus.Saved
|
||||
|
||||
If SaveEnvelopeDocumentsToFilesystem(pEnvelope) = False Then
|
||||
If SaveEnvelopeDocumentsToFilesystem(Envelope) = False Then
|
||||
Throw New ApplicationException
|
||||
End If
|
||||
|
||||
If EnvelopeModel.Update(pEnvelope, oTransaction) = False Then
|
||||
If EnvelopeModel.Update(Envelope, oTransaction) = False Then
|
||||
Throw New ApplicationException
|
||||
End If
|
||||
|
||||
If SaveEnvelopeReceivers(pEnvelope, oTransaction) = False Then
|
||||
If SaveEnvelopeReceivers(Envelope, oTransaction) = False Then
|
||||
Throw New ApplicationException
|
||||
End If
|
||||
|
||||
If SaveEnvelopeDocuments(pEnvelope, oTransaction) = False Then
|
||||
If SaveEnvelopeDocuments(Envelope, oTransaction) = False Then
|
||||
Throw New ApplicationException
|
||||
End If
|
||||
|
||||
|
||||
60
EnvelopeGenerator.Form/frmEnvelopeEditor.Designer.vb
generated
60
EnvelopeGenerator.Form/frmEnvelopeEditor.Designer.vb
generated
@@ -28,19 +28,19 @@ Partial Public Class frmEnvelopeEditor
|
||||
''' </summary>
|
||||
Private Sub InitializeComponent()
|
||||
Me.components = New System.ComponentModel.Container()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmEnvelopeEditor))
|
||||
Dim TableColumnDefinition1 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
|
||||
Dim TableRowDefinition1 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
|
||||
Dim TableRowDefinition2 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
|
||||
Dim TileViewItemElement1 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
|
||||
Dim SplashScreenManager1 As DevExpress.XtraSplashScreen.SplashScreenManager = New DevExpress.XtraSplashScreen.SplashScreenManager(Me, Nothing, True, True)
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmEnvelopeEditor))
|
||||
Dim TableColumnDefinition2 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
|
||||
Dim TableRowDefinition3 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
|
||||
Dim TableRowDefinition4 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
|
||||
Dim TileViewItemElement2 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
|
||||
Me.colFilename = New DevExpress.XtraGrid.Columns.TileViewColumn()
|
||||
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
|
||||
Me.btnSave = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnCancel = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnNewFile = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnDeleteFile = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnSendEnvelope = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnEditFields = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnDeleteReceiver = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||
@@ -104,6 +104,10 @@ Partial Public Class frmEnvelopeEditor
|
||||
CType(Me.EnvelopeDocumentBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'SplashScreenManager1
|
||||
'
|
||||
SplashScreenManager1.ClosingDelay = 500
|
||||
'
|
||||
'colFilename
|
||||
'
|
||||
Me.colFilename.Caption = "Dateiname"
|
||||
@@ -115,7 +119,7 @@ Partial Public Class frmEnvelopeEditor
|
||||
'RibbonControl1
|
||||
'
|
||||
Me.RibbonControl1.ExpandCollapseItem.Id = 0
|
||||
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.btnSave, Me.btnCancel, Me.btnNewFile, Me.btnDeleteFile, Me.BarButtonItem1, Me.btnEditFields, Me.btnDeleteReceiver})
|
||||
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.btnSave, Me.btnCancel, Me.btnNewFile, Me.btnDeleteFile, Me.btnSendEnvelope, Me.btnEditFields, Me.btnDeleteReceiver})
|
||||
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.RibbonControl1.MaxItemId = 9
|
||||
Me.RibbonControl1.Name = "RibbonControl1"
|
||||
@@ -150,12 +154,12 @@ Partial Public Class frmEnvelopeEditor
|
||||
Me.btnDeleteFile.ImageOptions.SvgImage = CType(resources.GetObject("btnDeleteFile.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.btnDeleteFile.Name = "btnDeleteFile"
|
||||
'
|
||||
'BarButtonItem1
|
||||
'btnSendEnvelope
|
||||
'
|
||||
Me.BarButtonItem1.Caption = "Send Envelope"
|
||||
Me.BarButtonItem1.Id = 6
|
||||
Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.BarButtonItem1.Name = "BarButtonItem1"
|
||||
Me.btnSendEnvelope.Caption = "Send Envelope"
|
||||
Me.btnSendEnvelope.Id = 6
|
||||
Me.btnSendEnvelope.ImageOptions.SvgImage = CType(resources.GetObject("btnSendEnvelope.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.btnSendEnvelope.Name = "btnSendEnvelope"
|
||||
'
|
||||
'btnEditFields
|
||||
'
|
||||
@@ -193,7 +197,7 @@ Partial Public Class frmEnvelopeEditor
|
||||
'RibbonPageGroup3
|
||||
'
|
||||
Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
|
||||
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1)
|
||||
Me.RibbonPageGroup3.ItemLinks.Add(Me.btnSendEnvelope)
|
||||
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
|
||||
Me.RibbonPageGroup3.Text = "RibbonPageGroup3"
|
||||
'
|
||||
@@ -246,18 +250,18 @@ Partial Public Class frmEnvelopeEditor
|
||||
Me.ViewDocuments.GridControl = Me.GridDocuments
|
||||
Me.ViewDocuments.Name = "ViewDocuments"
|
||||
Me.ViewDocuments.OptionsTiles.ItemSize = New System.Drawing.Size(248, 202)
|
||||
Me.ViewDocuments.TileColumns.Add(TableColumnDefinition1)
|
||||
TableRowDefinition1.Length.Value = 152.0R
|
||||
TableRowDefinition2.Length.Value = 34.0R
|
||||
Me.ViewDocuments.TileRows.Add(TableRowDefinition1)
|
||||
Me.ViewDocuments.TileRows.Add(TableRowDefinition2)
|
||||
TileViewItemElement1.Column = Me.colFilename
|
||||
TileViewItemElement1.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
|
||||
TileViewItemElement1.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.Squeeze
|
||||
TileViewItemElement1.RowIndex = 1
|
||||
TileViewItemElement1.Text = "colFilename"
|
||||
TileViewItemElement1.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
|
||||
Me.ViewDocuments.TileTemplate.Add(TileViewItemElement1)
|
||||
Me.ViewDocuments.TileColumns.Add(TableColumnDefinition2)
|
||||
TableRowDefinition3.Length.Value = 152.0R
|
||||
TableRowDefinition4.Length.Value = 34.0R
|
||||
Me.ViewDocuments.TileRows.Add(TableRowDefinition3)
|
||||
Me.ViewDocuments.TileRows.Add(TableRowDefinition4)
|
||||
TileViewItemElement2.Column = Me.colFilename
|
||||
TileViewItemElement2.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
|
||||
TileViewItemElement2.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.Squeeze
|
||||
TileViewItemElement2.RowIndex = 1
|
||||
TileViewItemElement2.Text = "colFilename"
|
||||
TileViewItemElement2.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
|
||||
Me.ViewDocuments.TileTemplate.Add(TileViewItemElement2)
|
||||
'
|
||||
'SplitContainerControl2
|
||||
'
|
||||
@@ -418,10 +422,6 @@ Partial Public Class frmEnvelopeEditor
|
||||
Me.OpenFileDialog1.FileName = "OpenFileDialog1"
|
||||
Me.OpenFileDialog1.Filter = "PDF Files|*.pdf"
|
||||
'
|
||||
'SplashScreenManager1
|
||||
'
|
||||
SplashScreenManager1.ClosingDelay = 500
|
||||
'
|
||||
'frmEnvelopeEditor
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
@@ -491,7 +491,7 @@ Partial Public Class frmEnvelopeEditor
|
||||
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents btnDeleteFile As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents OpenFileDialog1 As OpenFileDialog
|
||||
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents btnSendEnvelope As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents btnEditFields As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonPageGroup4 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
|
||||
@@ -198,7 +198,7 @@
|
||||
Y2xhc3M9IlJlZCIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<data name="btnSendEnvelope.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
|
||||
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
|
||||
@@ -234,15 +234,15 @@
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="EnvelopeReceiverBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>159, 17</value>
|
||||
<value>338, 17</value>
|
||||
</metadata>
|
||||
<metadata name="FrmEditorBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>622, 17</value>
|
||||
<value>801, 17</value>
|
||||
</metadata>
|
||||
<metadata name="EnvelopeDocumentBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>385, 17</value>
|
||||
<value>564, 17</value>
|
||||
</metadata>
|
||||
<metadata name="OpenFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
<value>196, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
@@ -1,5 +1,6 @@
|
||||
Imports System.ComponentModel
|
||||
Imports System.Threading.Tasks
|
||||
Imports DevExpress.XtraBars.Docking
|
||||
Imports DevExpress.XtraSplashScreen
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports EnvelopeGenerator.Common
|
||||
@@ -41,12 +42,28 @@ Partial Public Class frmEnvelopeEditor
|
||||
Receivers = New BindingList(Of EnvelopeReceiver)(Controller.Envelope.Receivers)
|
||||
txtMessage.EditValue = Controller.Envelope.Message
|
||||
txtSubject.EditValue = Controller.Envelope.Subject
|
||||
|
||||
If Envelope.Status = Constants.EnvelopeStatus.Sent Then
|
||||
SetFormReadonly()
|
||||
End If
|
||||
End If
|
||||
|
||||
GridDocuments.DataSource = Documents
|
||||
GridReceivers.DataSource = Receivers
|
||||
End Sub
|
||||
|
||||
Private Sub SetFormReadonly()
|
||||
RibbonPageGroup1.Enabled = False
|
||||
RibbonPageGroup2.Enabled = False
|
||||
RibbonPageGroup3.Enabled = False
|
||||
RibbonPageGroup5.Enabled = False
|
||||
btnEditFields.Enabled = False
|
||||
txtSubject.Properties.ReadOnly = True
|
||||
txtMessage.Properties.ReadOnly = True
|
||||
ViewReceivers.OptionsBehavior.ReadOnly = True
|
||||
ViewDocuments.OptionsBehavior.ReadOnly = True
|
||||
End Sub
|
||||
|
||||
Private Sub frmEnvelopeEditor_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
|
||||
Controller.CleanupEnvelope()
|
||||
End Sub
|
||||
@@ -87,7 +104,7 @@ Partial Public Class frmEnvelopeEditor
|
||||
.Receivers = Receivers.ToList,
|
||||
.State = State
|
||||
}
|
||||
oForm.Show()
|
||||
oForm.ShowDialog()
|
||||
End If
|
||||
End If
|
||||
Catch ex As Exception
|
||||
@@ -112,8 +129,7 @@ Partial Public Class frmEnvelopeEditor
|
||||
|
||||
Dim oErrors = oEnvelope.Validate()
|
||||
If oErrors.Any Then
|
||||
Dim oError = "Fehler beim Speichern des Umschlags:" & vbNewLine & vbNewLine & String.Join(vbNewLine, oErrors)
|
||||
MsgBox(oError, MsgBoxStyle.Exclamation, Text)
|
||||
ShowValidationErrors("Fehler beim Speichern des Umschlags: ", oErrors)
|
||||
Return False
|
||||
End If
|
||||
|
||||
@@ -122,7 +138,7 @@ Partial Public Class frmEnvelopeEditor
|
||||
Return False
|
||||
End If
|
||||
|
||||
If Controller.SaveEnvelope(oEnvelope) = False Then
|
||||
If Controller.SaveEnvelope() = False Then
|
||||
MsgBox("Fehler beim Speichern des Umschlags!", MsgBoxStyle.Critical, Text)
|
||||
Return False
|
||||
Else
|
||||
@@ -130,6 +146,11 @@ Partial Public Class frmEnvelopeEditor
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Sub ShowValidationErrors(pErrorTitle As String, pErrors As List(Of String))
|
||||
Dim oError = pErrorTitle & vbNewLine & vbNewLine & String.Join(vbNewLine, pErrors)
|
||||
MsgBox(oError, MsgBoxStyle.Exclamation, Text)
|
||||
End Sub
|
||||
|
||||
Private Sub btnDeleteReceiver_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnDeleteReceiver.ItemClick
|
||||
If ViewReceivers.SelectedRowsCount = 0 Then
|
||||
Exit Sub
|
||||
@@ -157,4 +178,24 @@ Partial Public Class frmEnvelopeEditor
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub btnSendEnvelope_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnSendEnvelope.ItemClick
|
||||
If SaveEnvelope() = False Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim oErrors = Controller.ValidateEnvelopeForSending()
|
||||
If oErrors.Any() Then
|
||||
ShowValidationErrors("Fehler beim Senden des Umschlags: ", oErrors)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If Controller.SendEnvelope() = False Then
|
||||
MsgBox("Umschlag konnte nicht gesendet werden!", MsgBoxStyle.Critical, Text)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub btnCancel_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnCancel.ItemClick
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user