aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs50
1 files changed, 47 insertions, 3 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
index 24196a3f6..cc3a49a23 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
@@ -113,6 +113,15 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
RaisePropertyChangedAuto(); }
}
+ private string _RMLGUID;
+ public string RMLGUID
+ {
+ get { return _RMLGUID; }
+ set
+ {
+ _RMLGUID = value;
+ }
+ }
#endregion
@@ -132,7 +141,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
/// </summary>
public RelayCommand RenameTabCommand { get; set; }
- public RelayCommand FlytoProcessParametersCommand { get; set; }
+ public RelayCommand ApplyToProcessParametersCommand { get; set; }
public RelayCommand SaveCommand { get; set; }
@@ -148,7 +157,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
RemoveTabCommand = new RelayCommand<TestResultViewVM>(RemoveTab);
RenameTabCommand = new RelayCommand(RenameTab);
- FlytoProcessParametersCommand = new RelayCommand(FlytoProcessParameters);
+ ApplyToProcessParametersCommand = new RelayCommand(ApplyToProcessParameters);
SaveCommand = new RelayCommand(Save, () => IsFree);
}
@@ -318,9 +327,44 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
#endregion
#region Save
- public void FlytoProcessParameters()
+
+ public async void ApplyToProcessParameters()
{
+ try {
+ if (RMLGUID == null)
+ return;
+ using (var context = ObservablesContext.CreateDefault())
+ {
+ var rml = await new RmlBuilder(context)
+ .Set(RMLGUID)
+ .WithActiveParametersGroup()
+ .BuildAsync();
+ if (rml == null || rml.ProcessParametersTablesGroups.ToList().Count == 0)
+ {
+ _notification.ShowError("Could not save process parameters an RML with no process group.");
+ return;
+ }
+
+ var activeProcessParametersGroup = rml.ProcessParametersTablesGroups.ToList().SingleOrDefault(x => x.Active);
+ if(activeProcessParametersGroup != null)
+ {
+
+ var processParametersTables = activeProcessParametersGroup.ProcessParametersTables.OrderBy(x => x.TableIndex).ToSynchronizedObservableCollection().FirstOrDefault();
+ processParametersTables.DryerZone1Temp = SelectedTab.TestResult.DryerTemperature == null? 0 : (double)SelectedTab.TestResult.DryerTemperature;
+ processParametersTables.RBlowerFlow = SelectedTab.TestResult.TunnelFlow == null ? 0 : (double)SelectedTab.TestResult.TunnelFlow;
+ processParametersTables.RBlowerTemp = SelectedTab.TestResult.TunnelFlow == null ? 0 : (double)SelectedTab.TestResult.TunnelFlow; ;
+ processParametersTables.LBlowerFlow = SelectedTab.TestResult.TunnelTemperature == null ? 0 : (double)SelectedTab.TestResult.TunnelTemperature; ;
+ processParametersTables.LBlowerTemp = SelectedTab.TestResult.TunnelTemperature == null ? 0 : (double)SelectedTab.TestResult.TunnelTemperature; ;
+ await context.SaveChangesAsync();
+ }
+ }
+ }
+ catch(Exception ex)
+ {
+ LogManager.Log(ex, "Could not save process parameters.");
+ _notification.ShowError($"An error occurred while trying to save process parameters.\n{ex.Message}");
+ }
}
public async void Save()