diff options
| author | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2021-07-19 19:38:29 +0300 |
|---|---|---|
| committer | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2021-07-19 19:38:29 +0300 |
| commit | f4fc9795b21c8631451ca16e93e479bcd3872bb5 (patch) | |
| tree | 5878dc636730c10fa44468490b06c6631596b33b /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels | |
| parent | 4f0e4d84676b0a8e10805e9614761fba5108f8f7 (diff) | |
| download | Tango-f4fc9795b21c8631451ca16e93e479bcd3872bb5.tar.gz Tango-f4fc9795b21c8631451ca16e93e479bcd3872bb5.zip | |
Added Commands SaveFactors in ColorParameters View, and ApplayToProcessParameters in TestResults view.
Related Work Items: #4219
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels')
3 files changed, 91 insertions, 7 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/ColorParametersVewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/ColorParametersVewVM.cs index 3a5488256..a89a2e33c 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/ColorParametersVewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/ColorParametersVewVM.cs @@ -215,6 +215,18 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels } } + private string _RMLGUID; + + public string RMLGUID + { + get { return _RMLGUID; } + set + { + _RMLGUID = value; + OnRMLExtensionGUIDChanged(); + } + } + protected string _selectedMachineGuid; /// <summary> /// Gets or sets the selected machine. @@ -323,10 +335,33 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels } } - private void SaveFactors(object obj) + private async void SaveFactors(object obj) { - /// var LiquidTypesRmls = ActiveRML.LiquidTypesRmls; - // for( int) + using (var context = ObservablesContext.CreateDefault()) + { + try { + var rml = await new RmlBuilder(context) + .Set(RMLGUID) + .WithLiquidFactors() + .BuildAsync(); + var LiquidTypesRml = rml.LiquidTypesRmls; + foreach (var factor in Factor100ProcessData) + { + var liquidFactor = LiquidTypesRml.ToList().First(x => x.LiquidType.Name.ToLower() == factor.FactorColor.ToDescription().ToLower()); + if(liquidFactor != null) + { + liquidFactor.MaxNlPerCm = factor.InkNlCm; + } + } + await context.SaveChangesAsync(); + } + catch(Exception ex) + { + LogManager.Log(ex, "Could not update color factor."); + _notification.ShowError($"An error occurred while trying to save color factors.\n{ex.Message}"); + } + } + } diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs index 6c73ab63b..10ec55958 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs @@ -396,10 +396,13 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels ActiveRML.Manufacturer = x.Name; bChanged = true; } - Manufacturers = _active_context.YarnManufacturers.Select(z => z.Name).ToList(); }, () => { }); if(bChanged) + { await _active_context.SaveChangesAsync(); + Manufacturers = _active_context.YarnManufacturers.Select(x => x.Name).ToList(); + } + } private bool AddItemToCollection<T>( ObservableCollection<T> collection, DbSet<T> dbColection, ref string name) where T : class @@ -979,9 +982,11 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels ColorParametersVewVM = new ColorParametersVewVM(_notification, _actionLogManager); ColorParametersVewVM.RMLExtemtionGUID = guid; ColorParametersVewVM.SelectedMachineGUID = SelectedMachine != null ? SelectedMachine.Guid : null ; + ColorParametersVewVM.RMLGUID = ActiveRML.Guid; TestResultsViewVM = new TestResultsViewVM(_notification, _actionLogManager); TestResultsViewVM.RMLExtemtionGUID = guid; + TestResultsViewVM.RMLGUID = ActiveRML.Guid; TestResultsViewVM.SelectedMachineGUID = SelectedMachine != null ? SelectedMachine.Guid : null; TestResultsViewVM.ThreadName = ActiveRML.Manufacturer; 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() |
