diff options
| author | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2021-08-16 15:58:42 +0300 |
|---|---|---|
| committer | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2021-08-16 15:58:42 +0300 |
| commit | 7b75a29a316be7a471a9a312c7b9cbe7c3e8201f (patch) | |
| tree | e18c1234fd5734cee884c21701f27b20028b3e99 /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs | |
| parent | bdf7cb7f5b5e0ff6135c4c862fedbf1916487c1e (diff) | |
| download | Tango-7b75a29a316be7a471a9a312c7b9cbe7c3e8201f.tar.gz Tango-7b75a29a316be7a471a9a312c7b9cbe7c3e8201f.zip | |
Added new tables in General_Env_Upgrade. Inserted new flag for enable/disable Thread characteristic by Environment.
Related Work Items: #4219
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs | 170 |
1 files changed, 95 insertions, 75 deletions
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 0665c146a..b33ead70a 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 @@ -55,16 +55,22 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels public List<RmlExtensionModel> RmlExtensions { get { return _rmlExtensions; } - set { _rmlExtensions = value; - RaisePropertyChangedAuto(); } + set + { + _rmlExtensions = value; + RaisePropertyChangedAuto(); + } } private RmlsExtension _ActiveRMLExtension; public RmlsExtension ActiveRMLExtension { get { return _ActiveRMLExtension; } - set { _ActiveRMLExtension = value; - RaisePropertyChangedAuto(); } + set + { + _ActiveRMLExtension = value; + RaisePropertyChangedAuto(); + } } private Rml _activeRML; @@ -82,9 +88,12 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels public RmlExtensionModel SelectedRMLExtension { get { return _selectedRMLExtension; } - set { _selectedRMLExtension = value; + set + { + _selectedRMLExtension = value; RaisePropertyChangedAuto(); - InvalidateRelayCommands(); } + InvalidateRelayCommands(); + } } //private ICollectionView _rmlExtCollectionView; @@ -162,13 +171,15 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels get { return _group; } set { _group = value; RaisePropertyChangedAuto(); } } - + private List<String> _manufacturers; public List<String> Manufacturers { get { return _manufacturers; } - set { _manufacturers = value; + set + { + _manufacturers = value; RaisePropertyChangedAuto(); } } @@ -291,7 +302,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await LoadRmlExtentions(); } - public RelayCommand AddManufacturerItemCommand { get; set;} + public RelayCommand AddManufacturerItemCommand { get; set; } public RelayCommand EditManufacturerItemCommand { get; set; } public RelayCommand DeleteManufacturerItemCommand { get; set; } @@ -346,7 +357,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels public RelayCommand AddGlossLevelItemCommand { get; set; } public RelayCommand EditGlossLevelItemCommand { get; set; } public RelayCommand DeleteGlossLevelItemCommand { get; set; } - + #endregion #region Command Functions @@ -366,14 +377,14 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels _active_context.YarnManufacturers.Add(new YarnManufacturer() { Name = vm.Name }); }, () => { }); - if(vm.DialogResult) + if (vm.DialogResult) { await _active_context.SaveChangesAsync(); Manufacturers = _active_context.YarnManufacturers.Select(z => z.Name).ToList(); - ActiveRML.Manufacturer = Manufacturers.Where(z=> z == vm.Name).FirstOrDefault(); + ActiveRML.Manufacturer = Manufacturers.Where(z => z == vm.Name).FirstOrDefault(); } } - + private async void EditManufacturerItem(object obj) { AddItemDialogVM vm = ViewModelLocator.AddItemDialogVM; @@ -397,15 +408,15 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels bChanged = true; } }, () => { }); - if(bChanged) + 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 + private bool AddItemToCollection<T>(ObservableCollection<T> collection, DbSet<T> dbColection, ref string name) where T : class { AddItemDialogVM vm = ViewModelLocator.AddItemDialogVM; vm.Name = ""; @@ -449,7 +460,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels returnValue = false; return; } - + if (collection.Any(y => pi.GetValue(y).ToString() == x.Name)) { returnValue = false; @@ -462,18 +473,18 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels return returnValue; } - + private async void AddBrandItem(object obj) { string newName = ""; - if( AddItemToCollection( Brands, _active_context.YarnBrands, ref newName)) + if (AddItemToCollection(Brands, _active_context.YarnBrands, ref newName)) { await _active_context.SaveChangesAsync(); Brands = _active_context.YarnBrands.ToObservableCollection(); ActiveRMLExtension.YarnBrand = Brands.FirstOrDefault(b => b.Name == newName); } } - + private async void EditBrandItem(object obj) { string newName = ActiveRMLExtension.YarnBrand.Name; @@ -505,7 +516,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddApplicationItem(object ob) { string newName = ""; @@ -526,7 +537,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddIndustrySectorItem(object ob) { string newName = ""; @@ -547,7 +558,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddMaterialItem(object ob) { string newName = ""; @@ -568,7 +579,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddYarnTypeItem(object ob) { string newName = ""; @@ -589,7 +600,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddSubFamilyItem(object ob) { string newName = ""; @@ -610,7 +621,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddFamilyItem(object ob) { string newName = ""; @@ -631,7 +642,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddGroupItem(object ob) { string newName = ""; @@ -652,7 +663,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddTexturingItem(object ob) { string newName = ""; @@ -673,7 +684,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddGeometryItem(object ob) { string newName = ""; @@ -694,7 +705,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddYarnWhiteShadeItem(object ob) { string newName = ""; @@ -715,7 +726,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + private async void AddGlossLevelItem(object ob) { string newName = ""; @@ -736,9 +747,16 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels await _active_context.SaveChangesAsync(); } } - + #endregion + private bool _canEdit; + public bool CanEdit + { + get { return _canEdit; } + set { _canEdit = value; RaisePropertyChangedAuto(); } + } + public MainViewVM(INotificationProvider notificationProvider, IAuthenticationProvider authentication, IActionLogManager actionLogManager) { @@ -750,56 +768,58 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels SaveCommand = new RelayCommand(Save, () => IsFree); ManageRmlExtensionCommand = new RelayCommand(() => LoadActiveRMLExtension(SelectedRMLExtension.Guid), () => SelectedRMLExtension != null); - + AddManufacturerItemCommand = new RelayCommand(AddManufacturerItem); EditManufacturerItemCommand = new RelayCommand(EditManufacturerItem, () => ActiveRML.Manufacturer != ""); AddBrandItemCommand = new RelayCommand(AddBrandItem); EditBrandItemCommand = new RelayCommand(EditBrandItem, () => ActiveRMLExtension.YarnBrand != null); - + AddEndUseItemCommand = new RelayCommand(AddEndUseItem); EditEndUseItemCommand = new RelayCommand(EditEndUseItem); - + AddApplicationItemCommand = new RelayCommand(AddApplicationItem); EditApplicationItemCommand = new RelayCommand(EditApplicationItem); - + AddIndustrySectorItemCommand = new RelayCommand(AddIndustrySectorItem); EditIndustrySectorItemCommand = new RelayCommand(EditIndustrySectorItem); - + AddMaterialItemCommand = new RelayCommand(AddMaterialItem); EditMaterialItemCommand = new RelayCommand(EditMaterialItem); - + AddYarnTypeItemCommand = new RelayCommand(AddYarnTypeItem); EditYarnTypeItemCommand = new RelayCommand(EditYarnTypeItem); - + AddSubFamilyItemCommand = new RelayCommand(AddSubFamilyItem); EditSubFamilyItemCommand = new RelayCommand(EditSubFamilyItem); - + AddFamilyItemCommand = new RelayCommand(AddFamilyItem); EditFamilyItemCommand = new RelayCommand(EditFamilyItem); - + AddGroupItemCommand = new RelayCommand(AddGroupItem); EditGroupItemCommand = new RelayCommand(EditGroupItem); - + AddTexturingItemCommand = new RelayCommand(AddTexturingItem); EditTexturingItemCommand = new RelayCommand(EditTexturingItem); - + AddGeometryItemCommand = new RelayCommand(AddGeometryItem); EditGeometryItemCommand = new RelayCommand(EditGeometryItem); - + AddYarnWhiteShadeItemCommand = new RelayCommand(AddYarnWhiteShadeItem); EditYarnWhiteShadeItemCommand = new RelayCommand(EditYarnWhiteShadeItem); - + AddGlossLevelItemCommand = new RelayCommand(AddGlossLevelItem); EditGlossLevelItemCommand = new RelayCommand(EditGlossLevelItem); - + } - - public override void OnApplicationReady() + + public override void OnApplicationReady() { + var env = SettingsManager.Default.GetOrCreate<MachineStudioSettings>().DeploymentSlot; + CanEdit = env == Web.DeploymentSlot.DEV || env == Web.DeploymentSlot.TEST || env == Web.DeploymentSlot.PROCESS; } - + #region Loading @@ -822,15 +842,15 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels var q = (from c in _rmlExtentions_context.Rmls.Where(x => x.Name.ToLower().Contains(filter)) join p in _rmlExtentions_context.RmlsExtensions on c.Guid equals p.RmlsGuid into ps from p in ps.DefaultIfEmpty() - select new { RML = c, RMLExtesion = p }).Distinct().ToList().DistinctBy(x => x.RML.Guid) + select new { RML = c, RMLExtesion = p }).Distinct().ToList().DistinctBy(x => x.RML.Guid) .Select(x => new RmlExtensionModel() { RMLGuid = x.RML.Guid, - Guid = x.RMLExtesion == null? null : x.RMLExtesion.Guid, + Guid = x.RMLExtesion == null ? null : x.RMLExtesion.Guid, Name = x.RML.Name, Manufacturer = x.RML.Manufacturer, - Brand = x.RMLExtesion == null ? "" : (Brands.Where( y => y.Guid == x.RMLExtesion.YarnBrandGuid).Select( z => z.Name).FirstOrDefault()), - LinearDensity = (int) x.RML.FiberSize, + Brand = x.RMLExtesion == null ? "" : (Brands.Where(y => y.Guid == x.RMLExtesion.YarnBrandGuid).Select(z => z.Name).FirstOrDefault()), + LinearDensity = (int)x.RML.FiberSize, CreatedBy = x.RMLExtesion == null ? "" : _allUsers.SingleOrDefault(y => y.Guid == x.RMLExtesion.UsersGuid).Contact.FullName, Created = x.RMLExtesion == null ? DateTime.Now : x.RMLExtesion.Created, LastUpdated = x.RMLExtesion == null ? DateTime.Now : x.RMLExtesion.LastUpdated, @@ -839,7 +859,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels }).ToList(); RmlExtensions = q; - + } } catch (Exception ex) @@ -878,8 +898,8 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels }).ToObservableCollection(); } - - private RmlsExtension GetNewRMLsExtension( string RML_Guid) + + private RmlsExtension GetNewRMLsExtension(string RML_Guid) { RmlsExtension rml_extention = new RmlsExtension(); rml_extention.Created = DateTime.UtcNow; @@ -916,7 +936,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels return rml_extention; } - + private async void LoadActiveRMLExtension(String guid) { using (_notification.PushTaskItem("Loading RML Extension...")) @@ -946,7 +966,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels .WithUser() .BuildAsync(); - ActiveRML = new RmlBuilder(_active_context) + ActiveRML = new RmlBuilder(_active_context) .Set(SelectedRMLExtension.RMLGuid) .Build(); @@ -958,11 +978,11 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels } var machineIdsHasTest = (from c in _active_context.ColorProcessParameters.Where(x => x.RmlsExtensionsGuid == guid) - select new { MichineGUID = c.MachineGuid }). - Union (from p in _active_context.RmlExtensionTestResults.Where(x => x.RmlsExtensionsGuid == guid) - select new { MichineGUID = p.MachineGuid }).DistinctBy(x => x).ToList(); + select new { MichineGUID = c.MachineGuid }). + Union(from p in _active_context.RmlExtensionTestResults.Where(x => x.RmlsExtensionsGuid == guid) + select new { MichineGUID = p.MachineGuid }).DistinctBy(x => x).ToList(); - if(machineIdsHasTest.Count > 0) + if (machineIdsHasTest.Count > 0) { var MachineGuid = machineIdsHasTest.First().MichineGUID; Machines.Where(x => machineIdsHasTest.Any(y => y.MichineGUID == x.Guid)).ToList().ForEach(x => x.HasRMLTest = true); @@ -971,7 +991,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels else { var settings = SettingsManager.Default.GetOrCreate<MachineStudioSettings>(); - if(settings.LastVirtualMachineSerialNumber != null) + if (settings.LastVirtualMachineSerialNumber != null) { SelectedMachine = Machines.SingleOrDefault(x => x.SerialNumber == settings.LastVirtualMachineSerialNumber); } @@ -980,10 +1000,10 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels SelectedMachine = Machines.First(); } } - + ColorParametersVewVM = new ColorParametersVewVM(_notification, _actionLogManager); ColorParametersVewVM.RMLExtemtionGUID = guid; - ColorParametersVewVM.SelectedMachineGUID = SelectedMachine != null ? SelectedMachine.Guid : null ; + ColorParametersVewVM.SelectedMachineGUID = SelectedMachine != null ? SelectedMachine.Guid : null; ColorParametersVewVM.RMLGUID = ActiveRML.Guid; TestResultsViewVM = new TestResultsViewVM(_notification, _actionLogManager); @@ -991,7 +1011,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels TestResultsViewVM.RMLGUID = ActiveRML.Guid; TestResultsViewVM.SelectedMachineGUID = SelectedMachine != null ? SelectedMachine.Guid : null; TestResultsViewVM.ThreadName = ActiveRML.Manufacturer; - + if (ActiveRMLExtension.RMLStatus == RMLExtensionStatus.New) { ColorParametersVewVM.SaveColorParameters -= UpdateStatus; @@ -1017,13 +1037,13 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels } } } - + private async void RefreshView(String guid, String rmlGuid) { try { IsFree = false; - + LoadRmlProperties(); ActiveRML = ActiveRML = await new RmlBuilder(_active_context) .Set(rmlGuid) @@ -1032,7 +1052,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels .Set(guid) .WithUser() .BuildAsync(); - + InvalidateRelayCommands(); IsFree = true; @@ -1078,10 +1098,10 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels private void SelectedMachineChanged() { - if(ColorParametersVewVM != null) - { + if (ColorParametersVewVM != null) + { ColorParametersVewVM.SelectedMachineGUID = SelectedMachine.Guid; - } + } } #endregion @@ -1099,7 +1119,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels { using (_notification.PushTaskItem("Saving RML Extension...")) { - if(ActiveRMLExtension.RMLStatus == RMLExtensionStatus.New) + if (ActiveRMLExtension.RMLStatus == RMLExtensionStatus.New) { ActiveRMLExtension.RMLStatus = RMLExtensionStatus.InProgress; ColorParametersVewVM.SaveColorParameters -= UpdateStatus; @@ -1108,11 +1128,11 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels ActiveRMLExtension.LastUpdated = DateTime.UtcNow; ActiveRML.LastUpdated = DateTime.UtcNow; - + await _active_context.SaveChangesAsync(); // _actionLogManager.InsertLog(BL.Enumerations.ActionLogType.RmlSaved, _authentication.CurrentUser, _rmlBeforeSave.Name, _rmlBeforeSave, rmlAfter, "RML saved using Machine Studio."); - + RefreshView(ActiveRMLExtension.Guid, ActiveRML.Guid); } } |
