diff --git a/Step.Config/Config/toolManagerConfig.xml b/Step.Config/Config/toolManagerConfig.xml index 6ffb67a7..ed4217be 100644 --- a/Step.Config/Config/toolManagerConfig.xml +++ b/Step.Config/Config/toolManagerConfig.xml @@ -1,15 +1,16 @@  - true - true - true - true - true - true - true - true - true - true - true - true + true + true + true + true + true + true + true + true + true + true + true + true + true \ No newline at end of file diff --git a/Step.Config/Config/toolManagerConfigValidator.xsd b/Step.Config/Config/toolManagerConfigValidator.xsd index eca1defd..3e1c91a4 100644 --- a/Step.Config/Config/toolManagerConfigValidator.xsd +++ b/Step.Config/Config/toolManagerConfigValidator.xsd @@ -3,18 +3,19 @@ - - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/Step.Config/ServerConfigController.cs b/Step.Config/ServerConfigController.cs index a98f6798..b2b7723d 100644 --- a/Step.Config/ServerConfigController.cs +++ b/Step.Config/ServerConfigController.cs @@ -324,25 +324,26 @@ namespace Step.Config private static void ReadToolManagerConfig() { - XDocument xmlConfigFile = GetXmlHandlerWithValidator(TOOL_MANAGER_CONFIG_SCHEMA_PATH, TOOL_MANAGER_CONFIG_PATH); - - // Read config from XML file + XDocument xmlConfigFile = GetXmlHandlerWithValidator(TOOL_MANAGER_CONFIG_SCHEMA_PATH, TOOL_MANAGER_CONFIG_PATH); + + // Read config from XML file ToolManagerConfig = xmlConfigFile .Elements() .Select(x => new ToolManagerConfigModel() { - FamilyOptIsActive = Convert.ToBoolean(x.Element("familyOptIsActive").Value), - ShankOptIsActive = Convert.ToBoolean(x.Element("shankOptIsActive").Value), - MagPositionIsActive = Convert.ToBoolean(x.Element("magPositionOptIsActive").Value), - OffsetOptIsActive = Convert.ToBoolean(x.Element("offsetOptIsActive").Value), - ReviveOptIsActive = Convert.ToBoolean(x.Element("reviveOptIsActive").Value), - GammaOptIsActive = Convert.ToBoolean(x.Element("gammaOptIsActive").Value), - LifeOptIsActive = Convert.ToBoolean(x.Element("lifeOptIsActive").Value), - TcpOptIsActive = Convert.ToBoolean(x.Element("tcpOptIsActive").Value), - CoolingOptIsActive = Convert.ToBoolean(x.Element("coolingOptIsActive").Value), - MultidimensionalShankOptIsActive = Convert.ToBoolean(x.Element("multidimensionalShankOptIsActive").Value), - SelfAdaptivePathOptIsActive = Convert.ToBoolean(x.Element("selfAdaptivePathOptIsActive").Value), - DynamicCompensationOptIsActive = Convert.ToBoolean(x.Element("dynamicCompensationOptIsActive").Value), + FamilyOpt = Convert.ToBoolean(x.Element("familyOpt").Value), + ShankOpt = Convert.ToBoolean(x.Element("shankOpt").Value), + MagPosTypeOpt = Convert.ToBoolean(x.Element("magPositionOpt").Value), + OffsetOpt = Convert.ToBoolean(x.Element("offsetOpt").Value), + ReviveOpt = Convert.ToBoolean(x.Element("reviveOpt").Value), + GammaOpt = Convert.ToBoolean(x.Element("gammaOpt").Value), + LifeOpt = Convert.ToBoolean(x.Element("lifeOpt").Value), + TcpOpt = Convert.ToBoolean(x.Element("tcpOpt").Value), + CoolingOpt = Convert.ToBoolean(x.Element("coolingOpt").Value), + MultidimensionalShankOpt = Convert.ToBoolean(x.Element("multidimensionalShankOpt").Value), + SelfAdaptivePathOpt = Convert.ToBoolean(x.Element("selfAdaptivePathOpt").Value), + DynamicCompensationOpt = Convert.ToBoolean(x.Element("dynamicCompensationOpt").Value), + BallufOpt = Convert.ToBoolean(x.Element("ballufOpt").Value) }) .FirstOrDefault(); } diff --git a/Step.Database/Controllers/NcToolManagerController.cs b/Step.Database/Controllers/NcToolManagerController.cs index e5699f68..bc6cab9a 100644 --- a/Step.Database/Controllers/NcToolManagerController.cs +++ b/Step.Database/Controllers/NcToolManagerController.cs @@ -241,7 +241,7 @@ namespace Step.Database.Controllers public List GetAvailableShanks() { List dtoShanks = GetShanks() - .Where(x => x.MagazineId == null && x.Tools.Count > 0) + .Where(x => x.MagazineId == null && x.ChildsTools.Count > 0) .ToList(); return dtoShanks; diff --git a/Step.Model/ConfigModels/ToolManagerConfigModel.cs b/Step.Model/ConfigModels/ToolManagerConfigModel.cs index 0279e931..71d6b740 100644 --- a/Step.Model/ConfigModels/ToolManagerConfigModel.cs +++ b/Step.Model/ConfigModels/ToolManagerConfigModel.cs @@ -8,17 +8,18 @@ namespace Step.Model.ConfigModels { public class ToolManagerConfigModel { - public bool FamilyOptIsActive { get; set; } - public bool ShankOptIsActive { get; set; } - public bool MagPositionIsActive { get; set; } - public bool OffsetOptIsActive { get; set; } - public bool ReviveOptIsActive { get; set; } - public bool GammaOptIsActive { get; set; } - public bool LifeOptIsActive { get; set; } - public bool TcpOptIsActive { get; set; } - public bool CoolingOptIsActive { get; set; } - public bool MultidimensionalShankOptIsActive { get; set; } - public bool SelfAdaptivePathOptIsActive { get; set; } - public bool DynamicCompensationOptIsActive { get; set; } + public bool FamilyOpt { get; set; } + public bool ShankOpt { get; set; } + public bool MagPosTypeOpt { get; set; } + public bool OffsetOpt { get; set; } + public bool ReviveOpt { get; set; } + public bool GammaOpt { get; set; } + public bool LifeOpt { get; set; } + public bool TcpOpt { get; set; } + public bool CoolingOpt { get; set; } + public bool MultidimensionalShankOpt { get; set; } + public bool SelfAdaptivePathOpt { get; set; } + public bool DynamicCompensationOpt { get; set; } + public bool BallufOpt { get; set; } } } diff --git a/Step.NC/NcHandler.cs b/Step.NC/NcHandler.cs index 125c47bf..55e98a58 100644 --- a/Step.NC/NcHandler.cs +++ b/Step.NC/NcHandler.cs @@ -911,7 +911,50 @@ namespace Step.NC public CmsError GetToolTableConfiguration(out ToolTableConfiguration config) { config = new ToolTableConfiguration(); - return numericalControl.TOOLS_RConfiguration(ref config); + CmsError cmsError = numericalControl.TOOLS_RConfiguration(ref config); + + if(NcConfig.NcVendor != NC_VENDOR.SIEMENS) + { + List categories = new List(); + + if (ToolManagerConfig.ShankOpt) + categories.Add("shank"); + + if (ToolManagerConfig.FamilyOpt) + categories.Add("family"); + + if (ToolManagerConfig.OffsetOpt) + categories.Add("offset"); + + if (ToolManagerConfig.TcpOpt) + categories.Add("tcp"); + + if (ToolManagerConfig.CoolingOpt) + categories.Add("cooling"); + + if (ToolManagerConfig.DynamicCompensationOpt) + categories.Add("dynamicCompensation"); + + if (ToolManagerConfig.GammaOpt) + categories.Add("gamma"); + + if (ToolManagerConfig.LifeOpt) + categories.Add("life"); + + if (ToolManagerConfig.MagPosTypeOpt) + categories.Add("magPos"); + + if (ToolManagerConfig.MultidimensionalShankOpt) + categories.Add("shankOpt"); + + if (ToolManagerConfig.SelfAdaptivePathOpt) + categories.Add("selfAdaptive"); + + if (ToolManagerConfig.BallufOpt) + categories.Add("ballufOpt"); + } + + return cmsError; } public CmsError GetToolTableData(out List config) diff --git a/Step/Controllers/WebApi/NcToolManagerController.cs b/Step/Controllers/WebApi/NcToolManagerController.cs index 9f5ef21e..e2219b90 100644 --- a/Step/Controllers/WebApi/NcToolManagerController.cs +++ b/Step/Controllers/WebApi/NcToolManagerController.cs @@ -44,7 +44,7 @@ namespace Step.Controllers.WebApi return BadRequest(API_ERROR_KEYS.INCORRECT_PARAMETERS); // If option is active check if shank exists - if (ToolManagerConfig.ShankOptIsActive) + if (ToolManagerConfig.ShankOpt) { DbNcShankModel shank = toolsManager.FindShankWithTools(dtoTool.ShankId.Value); if (shank == null) @@ -125,7 +125,7 @@ namespace Step.Controllers.WebApi { ncHandler.Connect(); - if (!ToolManagerConfig.ShankOptIsActive && tool.ShankId != null) + if (!ToolManagerConfig.ShankOpt && tool.ShankId != null) { // If option is active find & delete tool shank DbNcShankModel shank = toolsManager.FindShankWithTools(tool.ShankId.Value); @@ -161,7 +161,7 @@ namespace Step.Controllers.WebApi if (!ModelState.IsValid) return BadRequest(ModelState); - if (!ToolManagerConfig.ShankOptIsActive) + if (!ToolManagerConfig.ShankOpt) return BadRequest(API_ERROR_KEYS.OPTION_NOT_ACTIVE); using (NcToolManagerController toolsManager = new NcToolManagerController())