From 6dbef47fe2ca696fcf11ce4c2d0662c28b36bf35 Mon Sep 17 00:00:00 2001 From: Roy Ben Shabat Date: Sun, 10 Mar 2024 16:26:32 +0200 Subject: FSE Remote Job Parameters. --- .../Tango.FSE.Statistics/ViewModels/MainViewVM.cs | 2 +- .../Tango.FSE.Statistics/Views/MainView.xaml | 8 ++-- .../RemoteJob/IRemoteJobProvider.cs | 1 + .../RemoteJob/RemoteJobStartedEventArgs.cs | 7 +++ .../RemoteJob/RemoteJobUpdatedEventArgs.cs | 19 ++++++++ .../FSE/Tango.FSE.Common/Tango.FSE.Common.csproj | 1 + .../RemoteJob/DefaultRemoteJobProvider.cs | 12 ++++- .../Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTile.cs | 15 ++++++ .../Tiles/RemoteJob/RemoteJobTileView.xaml | 54 ++++++++++++++++++++-- 9 files changed, 109 insertions(+), 10 deletions(-) create mode 100644 Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobUpdatedEventArgs.cs (limited to 'Software/Visual_Studio/FSE') diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/ViewModels/MainViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/ViewModels/MainViewVM.cs index ae4444f06..538e8a795 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/ViewModels/MainViewVM.cs @@ -241,7 +241,7 @@ namespace Tango.FSE.Statistics.ViewModels StartSelectedDate = DateTime.Now.AddDays(-7); EndSelectedDate = DateTime.Now; - LengthUpperValue = 10000; + LengthUpperValue = 1000000; GetStatisticsCommand = new RelayCommand(GetStatistics, () => IsFiltersAvailable); diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/Views/MainView.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/Views/MainView.xaml index 88b460ab1..590192e28 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/Views/MainView.xaml +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Statistics/Views/MainView.xaml @@ -442,21 +442,21 @@ Length - - + - + - + diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/IRemoteJobProvider.cs b/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/IRemoteJobProvider.cs index 65299eac9..ff70bd7ba 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/IRemoteJobProvider.cs +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/IRemoteJobProvider.cs @@ -10,6 +10,7 @@ namespace Tango.FSE.Common.RemoteJob { event EventHandler RemoteJobStarted; event EventHandler RemoteJobStopped; + event EventHandler RemoteJobUpdated; bool IsRemoteJobRunning { get; } } diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobStartedEventArgs.cs b/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobStartedEventArgs.cs index 001263044..d3af568aa 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobStartedEventArgs.cs +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobStartedEventArgs.cs @@ -5,11 +5,18 @@ using System.Text; using System.Threading.Tasks; using Tango.BL.Entities; using Tango.Integration.Operation; +using Tango.PPC.Shared.Jobs; namespace Tango.FSE.Common.RemoteJob { public class RemoteJobStartedEventArgs : EventArgs { + public RemoteJobUpdateResponse RemoteJobUpdateResponse { get; set; } public JobHandler JobHandler { get; set; } + + public RemoteJobStartedEventArgs() + { + RemoteJobUpdateResponse = new RemoteJobUpdateResponse(); + } } } diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobUpdatedEventArgs.cs b/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobUpdatedEventArgs.cs new file mode 100644 index 000000000..1b548adb2 --- /dev/null +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/RemoteJob/RemoteJobUpdatedEventArgs.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.PPC.Shared.Jobs; + +namespace Tango.FSE.Common.RemoteJob +{ + public class RemoteJobUpdatedEventArgs : EventArgs + { + public RemoteJobUpdateResponse RemoteJobUpdateResponse { get; set; } + + public RemoteJobUpdatedEventArgs() + { + RemoteJobUpdateResponse = new RemoteJobUpdateResponse(); + } + } +} diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj b/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj index 8ef3551d5..519da38bb 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj @@ -317,6 +317,7 @@ + diff --git a/Software/Visual_Studio/FSE/Tango.FSE.UI/RemoteJob/DefaultRemoteJobProvider.cs b/Software/Visual_Studio/FSE/Tango.FSE.UI/RemoteJob/DefaultRemoteJobProvider.cs index 4c4d5430e..d3c6c44e8 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.UI/RemoteJob/DefaultRemoteJobProvider.cs +++ b/Software/Visual_Studio/FSE/Tango.FSE.UI/RemoteJob/DefaultRemoteJobProvider.cs @@ -23,8 +23,15 @@ namespace Tango.FSE.UI.RemoteJob public event EventHandler RemoteJobStarted; public event EventHandler RemoteJobStopped; + public event EventHandler RemoteJobUpdated; + + private bool _isRemoteJobRunning; + public bool IsRemoteJobRunning + { + get { return _isRemoteJobRunning; } + private set { _isRemoteJobRunning = value; RaisePropertyChangedAuto(); } + } - public bool IsRemoteJobRunning { get; private set; } [TangoInject] private IMachineProvider MachineProvider { get; set; } @@ -97,6 +104,8 @@ namespace Tango.FSE.UI.RemoteJob JobHandler = _handler }); + RemoteJobUpdated?.Invoke(this, new RemoteJobUpdatedEventArgs() { RemoteJobUpdateResponse = response }); + return; } @@ -105,6 +114,7 @@ namespace Tango.FSE.UI.RemoteJob if (response.Progress.JobStatus != null) { _handler.RaiseStatusReceived(response.Progress.JobStatus); + RemoteJobUpdated?.Invoke(this, new RemoteJobUpdatedEventArgs() { RemoteJobUpdateResponse = response }); } if (stage == RemoteJobStage.Failed && IsRemoteJobRunning) diff --git a/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTile.cs b/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTile.cs index 453a0892e..07784ce1f 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTile.cs +++ b/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTile.cs @@ -36,6 +36,14 @@ namespace Tango.FSE.UI.Tiles.RemoteJob set { _runningJobStatus = value; RaisePropertyChangedAuto(); } } + private RemoteJobUpdateResponse _remoteJobResponse; + public RemoteJobUpdateResponse RemoteJobResponse + { + get { return _remoteJobResponse; } + set { _remoteJobResponse = value; RaisePropertyChangedAuto(); } + } + + private bool _isRunning; public bool IsRunning { @@ -99,9 +107,15 @@ namespace Tango.FSE.UI.Tiles.RemoteJob RemoteJobProvider.RemoteJobStarted += RemoteJobProvider_RemoteJobStarted; RemoteJobProvider.RemoteJobStopped += RemoteJobProvider_RemoteJobStopped; + RemoteJobProvider.RemoteJobUpdated += RemoteJobProvider_RemoteJobUpdated; MachineProvider.MachineConnected += MachineProvider_MachineConnected; } + private void RemoteJobProvider_RemoteJobUpdated(object sender, Common.RemoteJob.RemoteJobUpdatedEventArgs e) + { + RemoteJobResponse = e.RemoteJobUpdateResponse; + } + private void MachineProvider_MachineConnected(object sender, Common.Connection.MachineConnectedEventArgs e) { InitDemoJob(); @@ -119,6 +133,7 @@ namespace Tango.FSE.UI.Tiles.RemoteJob Handler.StatusChanged -= Handler_StatusChanged; } + RemoteJobResponse = e.RemoteJobUpdateResponse; Handler = e.JobHandler; Handler.StatusChanged += Handler_StatusChanged; Job = e.JobHandler.Job; diff --git a/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTileView.xaml b/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTileView.xaml index 1323c9298..419d34e89 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTileView.xaml +++ b/Software/Visual_Studio/FSE/Tango.FSE.UI/Tiles/RemoteJob/RemoteJobTileView.xaml @@ -9,9 +9,55 @@ d:DesignHeight="100" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=local:RemoteJobTile, IsDesignTimeCreatable=False}"> - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.3.1