diff --git a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/ECM.JobRunner.Windows.xsd b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/ECM.JobRunner.Windows.xsd index 358e5fc..5a209a4 100644 --- a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/ECM.JobRunner.Windows.xsd +++ b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/ECM.JobRunner.Windows.xsd @@ -33,10 +33,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/Reference.vb b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/Reference.vb index 62b4fdc..11f2775 100644 --- a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/Reference.vb +++ b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/Reference.vb @@ -296,6 +296,9 @@ Namespace JobRunnerReference _ Private MessageField As String + _ + Private StepsField() As JobRunnerReference.HistoryItem.HistoryStep + _ Private SuccessfulField As Boolean @@ -361,6 +364,19 @@ Namespace JobRunnerReference End Set End Property + _ + Public Property Steps() As JobRunnerReference.HistoryItem.HistoryStep() + Get + Return Me.StepsField + End Get + Set + If (Object.ReferenceEquals(Me.StepsField, value) <> true) Then + Me.StepsField = value + Me.RaisePropertyChanged("Steps") + End If + End Set + End Property + _ Public Property Successful() As Boolean Get @@ -382,6 +398,101 @@ Namespace JobRunnerReference propertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs(propertyName)) End If End Sub + + _ + Partial Public Class HistoryStep + Inherits Object + Implements System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged + + _ + Private extensionDataField As System.Runtime.Serialization.ExtensionDataObject + + _ + Private CreatedField As Date + + _ + Private LevelField As JobRunnerReference.HistoryItem.StepLevel + + _ + Private MessageField As String + + Public Property ExtensionData() As System.Runtime.Serialization.ExtensionDataObject Implements System.Runtime.Serialization.IExtensibleDataObject.ExtensionData + Get + Return Me.extensionDataField + End Get + Set + Me.extensionDataField = value + End Set + End Property + + _ + Public Property Created() As Date + Get + Return Me.CreatedField + End Get + Set + If (Me.CreatedField.Equals(value) <> true) Then + Me.CreatedField = value + Me.RaisePropertyChanged("Created") + End If + End Set + End Property + + _ + Public Property Level() As JobRunnerReference.HistoryItem.StepLevel + Get + Return Me.LevelField + End Get + Set + If (Me.LevelField.Equals(value) <> true) Then + Me.LevelField = value + Me.RaisePropertyChanged("Level") + End If + End Set + End Property + + _ + Public Property Message() As String + Get + Return Me.MessageField + End Get + Set + If (Object.ReferenceEquals(Me.MessageField, value) <> true) Then + Me.MessageField = value + Me.RaisePropertyChanged("Message") + End If + End Set + End Property + + Public Event PropertyChanged As System.ComponentModel.PropertyChangedEventHandler Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged + + Protected Sub RaisePropertyChanged(ByVal propertyName As String) + Dim propertyChanged As System.ComponentModel.PropertyChangedEventHandler = Me.PropertyChangedEvent + If (Not (propertyChanged) Is Nothing) Then + propertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs(propertyName)) + End If + End Sub + End Class + + _ + Public Enum StepLevel As Integer + + _ + Debug = 0 + + _ + Info = 1 + + _ + Warning = 2 + + _ + [Error] = 3 + End Enum End Class - + \ No newline at end of file diff --git a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/configuration91.svcinfo b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/configuration91.svcinfo index 49b08fa..bd846f0 100644 --- a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/configuration91.svcinfo +++ b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/configuration91.svcinfo @@ -1,5 +1,5 @@ - + @@ -150,14 +150,14 @@ System.ServiceModel.Configuration.UserPrincipalNameElement - - Administrator@dd-san01.dd-gan.local.digitaldata.works + + System.ServiceModel.Configuration.ServicePrincipalNameElement - - + + host/sDD-VMP03-VM09.dd-san01.dd-gan.local.digitaldata.works System.ServiceModel.Configuration.DnsElement diff --git a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/service.wsdl b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/service.wsdl index e527ae0..53ec278 100644 --- a/ECM.JobRunner.Common/Connected Services/JobRunnerReference/service.wsdl +++ b/ECM.JobRunner.Common/Connected Services/JobRunnerReference/service.wsdl @@ -93,7 +93,7 @@ net.tcp://localhost:9001/DigitalData/Services/JobRunner - Administrator@dd-san01.dd-gan.local.digitaldata.works + host/sDD-VMP03-VM09.dd-san01.dd-gan.local.digitaldata.works diff --git a/ECM.JobRunner.Common/app.config b/ECM.JobRunner.Common/app.config index 7757495..b9c2d02 100644 --- a/ECM.JobRunner.Common/app.config +++ b/ECM.JobRunner.Common/app.config @@ -39,7 +39,7 @@ binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IEDMIService" contract="JobRunnerReference.IEDMIService" name="NetTcpBinding_IEDMIService"> - + diff --git a/ECM.JobRunner.Web/Components/StatusIcon.razor b/ECM.JobRunner.Web/Components/StatusIcon.razor new file mode 100644 index 0000000..644b78a --- /dev/null +++ b/ECM.JobRunner.Web/Components/StatusIcon.razor @@ -0,0 +1,5 @@ +

StatusIcon

+ +@code { + +} diff --git a/ECM.JobRunner.Web/Pages/History.razor b/ECM.JobRunner.Web/Pages/History.razor index 10d9478..6b66631 100644 --- a/ECM.JobRunner.Web/Pages/History.razor +++ b/ECM.JobRunner.Web/Pages/History.razor @@ -13,12 +13,18 @@
  • Loading Job History..
  • } -else +else if (historyEntries.Count == 0) {
      - @foreach (var entry in historyEntries) - { -
    • +
    • No Job History yet.
    • +
    +} +else +{ + @foreach (var entry in historyEntries) + { +
      +
    • @@ -28,10 +34,26 @@ else @entry.JobName
      - @entry.CreatedAt.ToShortTimeString()
    • - } -
    + @foreach (var step in entry.Steps) + { +
  • + @step.Created.ToString("HH:mm") @step.Message +
  • + } +
  • + @entry.CreatedAt.ToString("HH:mm") @entry.Message +
  • + @if (entry.Successful == false) + { +
  • Job Failed
  • + } + else + { +
  • Job Succeeded
  • + } + + } } @code { diff --git a/ECM.JobRunner.Web/Pages/Status.razor b/ECM.JobRunner.Web/Pages/Status.razor index 75084bf..5407468 100644 --- a/ECM.JobRunner.Web/Pages/Status.razor +++ b/ECM.JobRunner.Web/Pages/Status.razor @@ -19,9 +19,14 @@ } else if (executingEntries.Count == 0) { -

    Executing

    +

    Executing (0)

      -
    • No jobs currently executing
    • +
    • + + + + No jobs currently executing. +
    } else @@ -40,7 +45,7 @@ @entry.Name - + Started @entry.StartTime.ToLongTimeString() @@ -62,10 +67,15 @@ } else if (completedEntries.Count == 0) { -

    Completed

    +

    Completed (0)

      -
    • No jobs currently executing
    • +
    • + + + + No completed jobs yet. +
    } else @@ -126,7 +136,7 @@ else completedEntries = response.jobStatus. Where(s => !s.Executing). - Where(s => s.StartTime.AddMinutes(1) > DateTime.Now). + Where(s => s.StartTime.AddMinutes(10) > DateTime.Now). ToList(); InvokeAsync(StateHasChanged); diff --git a/ECM.JobRunner.Web/Shared/NavMenu.razor b/ECM.JobRunner.Web/Shared/NavMenu.razor index 8c04ab9..3887589 100644 --- a/ECM.JobRunner.Web/Shared/NavMenu.razor +++ b/ECM.JobRunner.Web/Shared/NavMenu.razor @@ -10,14 +10,14 @@