Added edges functions:
Read Add Remove
This commit is contained in:
@@ -130,6 +130,7 @@
|
||||
<DependentUpon>Reference.svcmap</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DataStructures.cs" />
|
||||
<Compile Include="Demo\DemoEdgesConfiguration.cs" />
|
||||
<Compile Include="Demo\ILibraryService.cs" />
|
||||
<Compile Include="Demo\Models\BinaryMemoryModel.cs" />
|
||||
<Compile Include="Demo\Models\FamilyModel.cs" />
|
||||
@@ -148,7 +149,7 @@
|
||||
<Compile Include="Osai\OSAIErrMgr.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Siemens\Nc_Siemens.cs" />
|
||||
<Compile Include="Siemens\ToolsConfiguration.cs" />
|
||||
<Compile Include="Siemens\SiemensEdgesConfigurations.cs" />
|
||||
<Compile Include="ToolConfigurations.cs" />
|
||||
<Compile Include="Utils\Nc_Utils.cs" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -480,7 +480,16 @@ namespace CMS_CORE_Library
|
||||
public bool ChangeTool;
|
||||
public bool IsInUse;
|
||||
public bool PreAlarm;
|
||||
public List<Dictionary<string, double>> EdgesData;
|
||||
public List<EdgesModel> EdgesData;
|
||||
}
|
||||
|
||||
public class EdgesModel
|
||||
{
|
||||
public int Id;
|
||||
public double ResidualLife;
|
||||
public double NominalLife;
|
||||
public double PreAlmLife;
|
||||
public Dictionary<string, double> EdgeAdditionalParams;
|
||||
}
|
||||
|
||||
public class ShankModel
|
||||
@@ -518,6 +527,12 @@ namespace CMS_CORE_Library
|
||||
public int Type;
|
||||
}
|
||||
|
||||
public class EdgeConfigModel
|
||||
{
|
||||
public string Name;
|
||||
public string Path;
|
||||
}
|
||||
|
||||
#endregion ToolsConfig
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,444 @@
|
||||
using System.Collections.Generic;
|
||||
using static CMS_CORE_Library.DataStructures;
|
||||
|
||||
namespace CMS_CORE_Library.Demo
|
||||
{
|
||||
internal class DemoEdgesConfiguration
|
||||
{
|
||||
|
||||
public Dictionary<int, List<EdgeConfigModel>> EdgesConfig = new Dictionary<int, List<EdgeConfigModel>>()
|
||||
{
|
||||
{
|
||||
100, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
110, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
111, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "CornerRadius", Path = "7"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
120, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
121, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
130, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "3"},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "4"},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "5"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght1", Path = "12"},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght2", Path = "13"},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght3", Path = "14"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "21"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "22"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "23"},
|
||||
new EdgeConfigModel{Name = "V", Path = "27"},
|
||||
new EdgeConfigModel{Name = "Vector1", Path = "28"},
|
||||
new EdgeConfigModel{Name = "Vector2", Path = "29"},
|
||||
new EdgeConfigModel{Name = "Vector3", Path = "30"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
131, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "3"},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "4"},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "5"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "CornerRadius", Path = "7"},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght1", Path = "12"},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght2", Path = "13"},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght3", Path = "14"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "21"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "22"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "23"},
|
||||
new EdgeConfigModel{Name = "V", Path = "27"},
|
||||
new EdgeConfigModel{Name = "Vector1", Path = "28"},
|
||||
new EdgeConfigModel{Name = "Vector2", Path = "29"},
|
||||
new EdgeConfigModel{Name = "Vector3", Path = "30"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
140, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "OutsideRadius", Path = "7"},
|
||||
new EdgeConfigModel{Name = "ToolAngle", Path = "11"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
145, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
150, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "Width", Path = "9" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15" },
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
151, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "Width", Path = "9" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15" },
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
155, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "TaperAngle", Path = "11" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
156, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "CornerRadius", Path = "7"},
|
||||
new EdgeConfigModel{Name = "TaperAngle", Path = "11" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
157, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "TaperAngle", Path = "11" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
{
|
||||
160, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "34" }
|
||||
}
|
||||
},
|
||||
//////// 200
|
||||
{
|
||||
200, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "24"}
|
||||
}
|
||||
},
|
||||
{
|
||||
205, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
210, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
220, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "24"}
|
||||
}
|
||||
},
|
||||
{
|
||||
230, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "24"}
|
||||
}
|
||||
},
|
||||
{
|
||||
231, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
240, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "Pitch", Path = "9"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
241, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
242, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "24"}
|
||||
}
|
||||
},
|
||||
{
|
||||
250, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "24"}
|
||||
}
|
||||
},
|
||||
///////// 700
|
||||
{
|
||||
700, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "3"},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "4"},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "5"},
|
||||
new EdgeConfigModel{Name = "Diameter", Path = "6"},
|
||||
new EdgeConfigModel{Name = "GeomSlotWidth", Path = "7"},
|
||||
new EdgeConfigModel{Name = "GeomPrjection", Path = "8"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "9"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "13"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "14"},
|
||||
new EdgeConfigModel{Name = "WearDiameter", Path = "15"},
|
||||
new EdgeConfigModel{Name = "WearSlotWdth", Path = "16"},
|
||||
new EdgeConfigModel{Name = "WearGeomPrjection", Path = "17"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "21"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "22"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "23"}
|
||||
}
|
||||
},
|
||||
{
|
||||
710, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
711, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
712, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "10"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
713, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "3"},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "4"},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "5"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "BoomLenght", Path = "7"},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "10"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "12"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "13["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "14["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "21"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "22"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "23"}
|
||||
}
|
||||
},
|
||||
{
|
||||
714, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "3"},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "4"},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "5"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "BallRadius", Path = "7"},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "10"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "12"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "13"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "14"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "21"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "22"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "23"}
|
||||
}
|
||||
},
|
||||
{
|
||||
725, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "3"},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "4"},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "5"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "10"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "12"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "13"},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "14"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "21"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "22"},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "23"}
|
||||
}
|
||||
},
|
||||
{
|
||||
730, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
{
|
||||
900, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdge", Path = "2"},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "3"},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "6"},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "12"},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "15"}
|
||||
}
|
||||
},
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -188,6 +188,11 @@ namespace Nc_Demo_Application.Server.Service
|
||||
[WebInvoke(Method = "DELETE", UriTemplate = "tool_table/tool/{id}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void DeleteTool(string id);
|
||||
|
||||
[WebInvoke(Method = "POST", UriTemplate = "tool_table/edge/{toolId}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void AddEdge(string toolId, ref EdgesModel edge);
|
||||
|
||||
[WebInvoke(Method = "DELETE", UriTemplate = "tool_table/edge/{toolId}/{edgeId}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void DeleteEdge(string toolId, string edgeId);
|
||||
|
||||
[WebGet(UriTemplate = "tool_table/shanks", BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)]
|
||||
void GetShanks(out List<ShankDataModel> shanksData);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using static CMS_CORE_Library.DataStructures;
|
||||
|
||||
namespace CMS_CORE.Demo.Models
|
||||
{
|
||||
@@ -23,7 +24,7 @@ namespace CMS_CORE.Demo.Models
|
||||
public bool IsInUse;
|
||||
public bool PreAlarm;
|
||||
public int ShanksId;
|
||||
public List<Dictionary<string, double>> EdgesData;
|
||||
public List<EdgesModel> EdgesData;
|
||||
}
|
||||
|
||||
public class ShankDataModel
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using CMS_CORE.Demo.Models;
|
||||
using CMS_CORE.Utils;
|
||||
using CMS_CORE_Library.Demo;
|
||||
using CMS_CORE_Library.Demo.Models;
|
||||
using Nc_Demo_Application.Server.Service;
|
||||
using System;
|
||||
@@ -11,9 +12,9 @@ using System.Linq;
|
||||
using System.ServiceModel;
|
||||
using System.ServiceModel.Description;
|
||||
using System.Threading;
|
||||
using static CMS_CORE.Demo.MEMORY_ADDRESS;
|
||||
using static CMS_CORE.Nc;
|
||||
using static CMS_CORE_Library.DataStructures;
|
||||
using static CMS_CORE.Demo.MEMORY_ADDRESS;
|
||||
using static CMS_CORE_Library.ToolConfigurations;
|
||||
|
||||
namespace CMS_CORE.Demo
|
||||
@@ -24,7 +25,6 @@ namespace CMS_CORE.Demo
|
||||
private ChannelFactory<ILibraryService> cf;
|
||||
private ILibraryService serverService;
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#region Contructor & global methods
|
||||
@@ -597,7 +597,7 @@ namespace CMS_CORE.Demo
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
|
||||
public override CmsError PLC_RNcSoftKeys(ref List<SoftKeysModel> ncSoftKeys)
|
||||
{
|
||||
CmsError cmsError = PLC_RSoftKeys(NC_SOFTKEYS_VALUE, NC_SOFTKEYS_CLICKABLE, ref ncSoftKeys);
|
||||
@@ -734,10 +734,10 @@ namespace CMS_CORE.Demo
|
||||
List<byte> readValues = new List<byte>();
|
||||
// Find the size of a single head
|
||||
int headsByte = (HEADS_DATA.Size / HEADS_NUMBER);
|
||||
double headsInts = Math.Ceiling((double)(headsByte / 4 ) + 1);
|
||||
double headsInts = Math.Ceiling((double)(headsByte / 4) + 1);
|
||||
|
||||
// Read data for N heads
|
||||
CmsError cmsError = MEM_RWIntegerList(R, 0, HEADS_DATA.MemType, 0,HEADS_DATA.Address, (int)headsInts * number, ref readInts);
|
||||
CmsError cmsError = MEM_RWIntegerList(R, 0, HEADS_DATA.MemType, 0, HEADS_DATA.Address, (int)headsInts * number, ref readInts);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
readValues = readInts.SelectMany(BitConverter.GetBytes).ToList();
|
||||
@@ -944,7 +944,6 @@ namespace CMS_CORE.Demo
|
||||
// Populate response structure
|
||||
processData.Type = bits[3] ? "AUX" : "WORK";
|
||||
|
||||
|
||||
// Choose process status
|
||||
if (bits[4])
|
||||
processData.Status = "HOLD";
|
||||
@@ -956,8 +955,6 @@ namespace CMS_CORE.Demo
|
||||
processData.Status = "READY";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Get Reps from 2nd byte
|
||||
processData.Reps = bytes[1];
|
||||
|
||||
@@ -1121,7 +1118,7 @@ namespace CMS_CORE.Demo
|
||||
try
|
||||
{
|
||||
serverService.GetAxesPosition(procNumber.ToString(), out List<NcAxisModel> demoAxes);
|
||||
// Parse response and retrieve distance to go
|
||||
// Parse response and retrieve distance to go
|
||||
foreach (NcAxisModel demoAxis in demoAxes)
|
||||
{
|
||||
Axes.Add(demoAxis.name, demoAxis.distanceToGo);
|
||||
@@ -1704,15 +1701,16 @@ namespace CMS_CORE.Demo
|
||||
}
|
||||
|
||||
#endregion File Management
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#region Tools Management
|
||||
|
||||
|
||||
public override CmsError TOOLS_RConfiguration(ref ToolTableConfiguration config)
|
||||
{
|
||||
config.ToolsConfiguration = SiemensToolsConfig;
|
||||
config.FamiliesConfiguration = SiemensFamiliesConfig;
|
||||
config.ShanksConfiguration = SiemensShanksConfig;
|
||||
config.ToolsConfiguration = SiemensToolsConfig;
|
||||
config.FamiliesConfiguration = SiemensFamiliesConfig;
|
||||
config.ShanksConfiguration = SiemensShanksConfig;
|
||||
config.MagazinePosConfiguration = SiemensMagazinePosConfig;
|
||||
|
||||
config.Magazines = new List<MagazineModel>()
|
||||
@@ -1720,7 +1718,6 @@ namespace CMS_CORE.Demo
|
||||
new MagazineModel{Id = 1, Type = MAGAZINE_TYPE.MAGAZINE},
|
||||
new MagazineModel{Id = 2, Type = MAGAZINE_TYPE.MAGAZINE},
|
||||
new MagazineModel{Id = 3, Type = MAGAZINE_TYPE.SPINDLE},
|
||||
|
||||
};
|
||||
|
||||
return NO_ERROR;
|
||||
@@ -1737,31 +1734,68 @@ namespace CMS_CORE.Demo
|
||||
{
|
||||
toolTable = new List<SiemensToolModel>();
|
||||
// Get tool table data
|
||||
serverService.GetTools(out List<ToolsDataModel> toolsData);
|
||||
serverService.GetTools(out List<ToolsDataModel> DemoToolsData);
|
||||
|
||||
foreach(ToolsDataModel tool in toolsData)
|
||||
DemoEdgesConfiguration toolsConfig = new DemoEdgesConfiguration();
|
||||
|
||||
foreach (ToolsDataModel demoTool in DemoToolsData)
|
||||
{
|
||||
toolTable.Add(new SiemensToolModel()
|
||||
var toolData = new SiemensToolModel()
|
||||
{
|
||||
Id = tool.Id,
|
||||
FamilyName = tool.FamilyName,
|
||||
ChildId = tool.ChildId,
|
||||
MagazinePositionType = tool.MagazinePositionType,
|
||||
ToolType = tool.ToolType,
|
||||
LeftSize = tool.LeftSize,
|
||||
RightSize = tool.RightSize,
|
||||
Rotation = (ROTATION)tool.Rotation,
|
||||
Cooling1 = tool.Cooling1,
|
||||
Cooling2 = tool.Cooling2,
|
||||
IsActive = tool.IsActive,
|
||||
FixedPlace = tool.FixedPlace,
|
||||
IsInhibited = tool.IsInhibited,
|
||||
IsMeasured = tool.IsMeasured,
|
||||
ChangeTool = tool.ChangeTool,
|
||||
IsInUse = tool.IsInUse,
|
||||
PreAlarm = tool.PreAlarm,
|
||||
EdgesData = tool.EdgesData
|
||||
});
|
||||
Id = demoTool.Id,
|
||||
FamilyName = demoTool.FamilyName,
|
||||
ChildId = demoTool.ChildId,
|
||||
MagazinePositionType = demoTool.MagazinePositionType,
|
||||
ToolType = demoTool.ToolType,
|
||||
LeftSize = demoTool.LeftSize,
|
||||
RightSize = demoTool.RightSize,
|
||||
Rotation = (ROTATION)demoTool.Rotation,
|
||||
Cooling1 = demoTool.Cooling1,
|
||||
Cooling2 = demoTool.Cooling2,
|
||||
IsActive = demoTool.IsActive,
|
||||
FixedPlace = demoTool.FixedPlace,
|
||||
IsInhibited = demoTool.IsInhibited,
|
||||
IsMeasured = demoTool.IsMeasured,
|
||||
ChangeTool = demoTool.ChangeTool,
|
||||
IsInUse = demoTool.IsInUse,
|
||||
PreAlarm = demoTool.PreAlarm,
|
||||
EdgesData = new List<EdgesModel>()
|
||||
};
|
||||
|
||||
// Get tool type additional parameters
|
||||
var toolTypeConfig = toolsConfig.EdgesConfig[demoTool.ToolType];
|
||||
|
||||
//--- Read Edges
|
||||
|
||||
// For each demo edge
|
||||
foreach (var demoEdge in demoTool.EdgesData)
|
||||
{
|
||||
// Create new edge model with filtered data
|
||||
var tmpEdge = new EdgesModel()
|
||||
{
|
||||
Id = demoEdge.Id,
|
||||
ResidualLife = demoEdge.ResidualLife,
|
||||
NominalLife = demoEdge.NominalLife,
|
||||
PreAlmLife = demoEdge.PreAlmLife,
|
||||
EdgeAdditionalParams = new Dictionary<string, double>()
|
||||
};
|
||||
|
||||
// Populate dinamycal Params Get only tool type additional parameters
|
||||
foreach (var item in toolTypeConfig)
|
||||
{
|
||||
tmpEdge.EdgeAdditionalParams.Add(
|
||||
// Item name
|
||||
item.Name,
|
||||
// "param" + N; N is configured in the path
|
||||
demoEdge.EdgeAdditionalParams["param" + item.Path]
|
||||
);
|
||||
}
|
||||
// Add new edge to selected tool edges list
|
||||
toolData.EdgesData.Add(tmpEdge);
|
||||
}
|
||||
|
||||
// Add new tool to tool table
|
||||
toolTable.Add(toolData);
|
||||
}
|
||||
|
||||
return NO_ERROR;
|
||||
@@ -1781,8 +1815,8 @@ namespace CMS_CORE.Demo
|
||||
|
||||
try
|
||||
{
|
||||
serverService.AddTool(ref tool);
|
||||
|
||||
serverService.AddTool(ref tool);
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
catch (Exception ex)
|
||||
@@ -1829,6 +1863,66 @@ namespace CMS_CORE.Demo
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Tools Management
|
||||
|
||||
#region Edges
|
||||
|
||||
//public override CmsError TOOLS_WAddEdge(int toolId, EdgesModel edge)
|
||||
//{
|
||||
// // Check if the NC Demo is Connected
|
||||
// CmsError cmsError = CheckConnection();
|
||||
// if (cmsError.IsError())
|
||||
// return cmsError;
|
||||
|
||||
// try
|
||||
// {
|
||||
// DemoEdgesConfiguration toolsConfig = new DemoEdgesConfiguration();
|
||||
|
||||
// var toolTypeConfig = toolsConfig.EdgesConfig[demoTool.ToolType];
|
||||
// // Populate dinamycal Params Get only tool type additional parameters
|
||||
// foreach (var item in toolTypeConfig)
|
||||
// {
|
||||
// tmpEdge.EdgeAdditionalParams.Add(
|
||||
// // Item name
|
||||
// item.Name,
|
||||
// // "param" + N; N is configured in the path
|
||||
// demoEdge.EdgeAdditionalParams["param" + item.Path]
|
||||
// );
|
||||
// }
|
||||
|
||||
// serverService.AddEdge(toolId.ToString(), ref edge);
|
||||
|
||||
// return NO_ERROR;
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// return ManageException(ex);
|
||||
// }
|
||||
//}
|
||||
|
||||
public override CmsError TOOLS_WDeleteEdge(int toolId, int edgeId)
|
||||
{
|
||||
// Check if the NC Demo is Connected
|
||||
CmsError cmsError = CheckConnection();
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
try
|
||||
{
|
||||
serverService.DeleteEdge(toolId.ToString(), edgeId.ToString());
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return ManageException(ex);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region ToolTable
|
||||
|
||||
public override CmsError TOOLS_RShanksData(ref List<ShankModel> shanks)
|
||||
{
|
||||
// Check if the NC Demo is Connected
|
||||
@@ -1884,7 +1978,6 @@ namespace CMS_CORE.Demo
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public override CmsError TOOLS_WDeleteShank(int id)
|
||||
{
|
||||
// Check if the NC Demo is Connected
|
||||
@@ -1974,7 +2067,6 @@ namespace CMS_CORE.Demo
|
||||
// Get families data
|
||||
serverService.PutFamily(oldName, demoFamilyData);
|
||||
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
catch (Exception ex)
|
||||
@@ -2002,7 +2094,6 @@ namespace CMS_CORE.Demo
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public override CmsError TOOLS_RMagazinePositions(ref List<MagazinePositionsModel> positions)
|
||||
{
|
||||
// Check if the NC Demo is Connected
|
||||
@@ -2054,7 +2145,7 @@ namespace CMS_CORE.Demo
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Tools Management
|
||||
#endregion Tools Management
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
@@ -1735,6 +1735,11 @@ namespace CMS_CORE.Fanuc
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WDeleteEdge(int toolId, int edgeId)
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion Tools Management
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1302,7 +1302,6 @@ namespace CMS_CORE
|
||||
|
||||
public abstract CmsError TOOLS_RToolTable(ref List<SiemensToolModel> toolTable);
|
||||
|
||||
|
||||
public abstract CmsError TOOLS_RShanksData(ref List<ShankModel> shanksData);
|
||||
|
||||
public abstract CmsError TOOLS_RFamilyData(ref List<FamilyModel> families);
|
||||
@@ -1327,6 +1326,9 @@ namespace CMS_CORE
|
||||
|
||||
public abstract CmsError TOOLS_WDeleteFamily(string name);
|
||||
|
||||
public abstract CmsError TOOLS_WDeleteEdge(int toolId, int edgeId);
|
||||
|
||||
|
||||
#endregion File Management (To override)
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -2105,6 +2105,11 @@ namespace CMS_CORE.Osai
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WDeleteEdge(int toolId, int edgeId)
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion Tools Management
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using CMS_CORE.Utils;
|
||||
using CMS_CORE_Library;
|
||||
using CMS_CORE_Library.Siemens;
|
||||
using Siemens.Sinumerik.Operate.Services;
|
||||
using System;
|
||||
@@ -15,8 +14,8 @@ using System.Xml.Linq;
|
||||
using static CMS_CORE.Nc;
|
||||
using static CMS_CORE.Siemens.MEMORY_ADDRESS;
|
||||
using static CMS_CORE_Library.DataStructures;
|
||||
using static Siemens.Sinumerik.Operate.Services.ToolMngmntSvc;
|
||||
using static CMS_CORE_Library.ToolConfigurations;
|
||||
using static Siemens.Sinumerik.Operate.Services.ToolMngmntSvc;
|
||||
|
||||
namespace CMS_CORE.Siemens
|
||||
{
|
||||
@@ -66,6 +65,7 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
// STatic variables
|
||||
private AlarmSvc SiemensAlmSvc;
|
||||
|
||||
private ToolMngmntSvc SiemensToolSvc = null;
|
||||
private Guid ToolMngmtListGuid = Guid.Empty;
|
||||
|
||||
@@ -123,7 +123,6 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
SiemensToolSvc = new ToolMngmntSvc(1);
|
||||
ToolMngmtListGuid = SiemensToolSvc.Subscribe(TOOLS_UpdateToolsData);
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -176,7 +175,7 @@ namespace CMS_CORE.Siemens
|
||||
Value = x.Element("translation").Value
|
||||
});
|
||||
|
||||
foreach ( var message in messagesList)
|
||||
foreach (var message in messagesList)
|
||||
{
|
||||
if (!messages.Keys.Contains(message.Key))
|
||||
{
|
||||
@@ -1757,7 +1756,7 @@ namespace CMS_CORE.Siemens
|
||||
{
|
||||
TOOLS_ChooseActions(toolInfos[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine(ex.Message);
|
||||
@@ -1777,6 +1776,7 @@ namespace CMS_CORE.Siemens
|
||||
ToolTableData.Remove(tool);
|
||||
}
|
||||
break;
|
||||
|
||||
case ToolAction.TOOL_CREATED:
|
||||
{
|
||||
// Create a configuration file
|
||||
@@ -1791,10 +1791,12 @@ namespace CMS_CORE.Siemens
|
||||
ToolTableData.Add(newTool);
|
||||
}
|
||||
break;
|
||||
|
||||
case ToolAction.TOOL_DATA_CHANGED: { } break;
|
||||
case ToolAction.TOOL_MOVED: { } break;
|
||||
}
|
||||
} catch (Exception ex)
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine(ex.Message);
|
||||
}
|
||||
@@ -1804,11 +1806,13 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
private SiemensToolModel TOOLS_CreateToolFromType(int toolId, string[] toolStrings)
|
||||
{
|
||||
SiemensEdgesConfiguration toolEdgesConfig = new SiemensEdgesConfiguration();
|
||||
|
||||
// Find its status
|
||||
var toolStatus = Convert.ToByte(toolStrings.FirstOrDefault(X => X.Contains("$TC_TP8[" + toolId)).Split('=').LastOrDefault());
|
||||
// Find basic info (rotation, cooling ...)
|
||||
var toolInfo = Convert.ToInt32(toolStrings.FirstOrDefault(X => X.Contains("$TC_DP25[" + toolId)).Split('=').LastOrDefault());
|
||||
|
||||
|
||||
// Get rotation data
|
||||
ROTATION rotation = ROTATION.NONE;
|
||||
if (GetBitValue(toolInfo, 9))
|
||||
@@ -1834,36 +1838,36 @@ namespace CMS_CORE.Siemens
|
||||
ChangeTool = GetBitValue(toolStatus, 5),
|
||||
IsInUse = GetBitValue(toolStatus, 7),
|
||||
PreAlarm = GetBitValue(toolStatus, 8),
|
||||
EdgesData = new List<Dictionary<string, double>>()
|
||||
EdgesData = new List<EdgesModel>()
|
||||
};
|
||||
|
||||
// LEGGERE MAX = $MN_MM_MAX_CUTTING_EDGE_PERTOOL
|
||||
// For each possible edges
|
||||
for(int i = 0; i < 5; i++)
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
// Find the type of the edges
|
||||
var toolType = toolStrings.FirstOrDefault(X => X.Contains("$TC_DP1[" + toolId + "," + i));
|
||||
// If type doesn't exist than edges doesn't exist
|
||||
if( toolType != null)
|
||||
if (toolType != null)
|
||||
{
|
||||
int toolTypeVal = Convert.ToByte(toolType.Split('=').LastOrDefault());
|
||||
// Get tool type additional parameters
|
||||
SiemensAdditionalParams toolsConfig = new SiemensAdditionalParams();
|
||||
var toolTypeConfig = toolsConfig.ToolsSettings[toolTypeVal];
|
||||
|
||||
Dictionary<string, double> tmpDictionary = new Dictionary<string, double>();
|
||||
// For each parameter
|
||||
// Get tool type additional parameters
|
||||
var toolTypeConfig = toolEdgesConfig.EdgesConfig[toolTypeVal];
|
||||
|
||||
EdgesModel edgeData = new EdgesModel();
|
||||
// For each dynamic parameter configured
|
||||
foreach (var item in toolTypeConfig)
|
||||
{
|
||||
tmpDictionary.Add(
|
||||
edgeData.EdgeAdditionalParams.Add(
|
||||
item.Name,
|
||||
Convert.ToDouble(toolStrings.FirstOrDefault(X => X.Contains(item.Path + toolId + "," + i)).Split('=').LastOrDefault())
|
||||
);
|
||||
}
|
||||
toolValues.EdgesData.Add(tmpDictionary);
|
||||
toolValues.EdgesData.Add(edgeData);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return toolValues;
|
||||
}
|
||||
|
||||
@@ -1927,6 +1931,11 @@ namespace CMS_CORE.Siemens
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WDeleteEdge(int toolId, int edgeId)
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion Tool Management
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -0,0 +1,441 @@
|
||||
using System.Collections.Generic;
|
||||
using static CMS_CORE_Library.DataStructures;
|
||||
|
||||
namespace CMS_CORE_Library.Siemens
|
||||
{
|
||||
internal class SiemensEdgesConfiguration
|
||||
{
|
||||
public Dictionary<int, List<EdgeConfigModel>> EdgesConfig = new Dictionary<int, List<EdgeConfigModel>>()
|
||||
{
|
||||
{
|
||||
100, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
110, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
111, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "CornerRadius", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
120, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
121, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
130, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "$TC_DP4["},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "$TC_DP5["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght1", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght2", Path = "$TC_DP13["},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght3", Path = "$TC_DP14["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "$TC_DP21["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "$TC_DP22["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "$TC_DP23["},
|
||||
new EdgeConfigModel{Name = "V", Path = "$TC_DPV["},
|
||||
new EdgeConfigModel{Name = "Vector1", Path = "$TC_DPV3["},
|
||||
new EdgeConfigModel{Name = "Vector2", Path = "$TC_DPV4["},
|
||||
new EdgeConfigModel{Name = "Vector3", Path = "$TC_DPV5["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
131, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "$TC_DP4["},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "$TC_DP5["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "CornerRadius", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght1", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght2", Path = "$TC_DP13["},
|
||||
new EdgeConfigModel{Name = "GeomDeltaLenght3", Path = "$TC_DP14["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "$TC_DP21["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "$TC_DP22["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "$TC_DP23["},
|
||||
new EdgeConfigModel{Name = "V", Path = "$TC_DPV["},
|
||||
new EdgeConfigModel{Name = "Vector1", Path = "$TC_DPV3["},
|
||||
new EdgeConfigModel{Name = "Vector2", Path = "$TC_DPV4["},
|
||||
new EdgeConfigModel{Name = "Vector3", Path = "$TC_DPV5["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
140, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "OutsideRadius", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "ToolAngle", Path = "$TC_DP11["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
145, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
150, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "Width", Path = "$TC_DP9[" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15[" },
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
151, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "Width", Path = "$TC_DP9[" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15[" },
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
155, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "TaperAngle", Path = "$TC_DP11[" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
156, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "CornerRadius", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "TaperAngle", Path = "$TC_DP11[" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
157, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "TaperAngle", Path = "$TC_DP11[" },
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
{
|
||||
160, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "Teeth", Path = "$TC_DPNT[" }
|
||||
}
|
||||
},
|
||||
//////// 200 - 300
|
||||
{
|
||||
200, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "$TC_DP24["}
|
||||
}
|
||||
},
|
||||
{
|
||||
205, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
210, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
220, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "$TC_DP24["}
|
||||
}
|
||||
},
|
||||
{
|
||||
230, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{ Name = "TipAngle", Path = "$TC_DP24["}
|
||||
}
|
||||
},
|
||||
{
|
||||
231, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
240, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "Pitch", Path = "$TC_DP9["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
241, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
242, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
250, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{ Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{ Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{ Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{ Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{ Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
///////// 700 - 900
|
||||
{
|
||||
700, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "$TC_DP4["},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "$TC_DP5["},
|
||||
new EdgeConfigModel{Name = "Diameter", Path = "6"},
|
||||
new EdgeConfigModel{Name = "GeomSlotWidth", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "GeomPrjection", Path = "$TC_DP8["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "$TC_DP13["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "$TC_DP14["},
|
||||
new EdgeConfigModel{Name = "WearDiameter", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "WearSlotWdth", Path = "$TC_DP16["},
|
||||
new EdgeConfigModel{Name = "WearGeomPrjection", Path = "$TC_DP17["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "$TC_DP21["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "$TC_DP22["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "$TC_DP23["}
|
||||
}
|
||||
},
|
||||
{
|
||||
710, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
711, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
712, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "$TC_DP10["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
713, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "$TC_DP4["},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "$TC_DP5["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "BoomLenght", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "$TC_DP10["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "$TC_DP13["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "$TC_DP14["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "$TC_DP21["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "$TC_DP22["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "$TC_DP23["}
|
||||
}
|
||||
},
|
||||
{
|
||||
714, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "$TC_DP4["},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "$TC_DP5["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "BallRadius", Path = "$TC_DP7["},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "$TC_DP10["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "$TC_DP13["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "$TC_DP14["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "$TC_DP21["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "$TC_DP22["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "$TC_DP23["}
|
||||
}
|
||||
},
|
||||
{
|
||||
725, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "GeomLenght1", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "GeomLenght2", Path = "$TC_DP4["},
|
||||
new EdgeConfigModel{Name = "GeomLenght3", Path = "$TC_DP5["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "CorrAngle", Path = "$TC_DP10["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght1", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght2", Path = "$TC_DP13["},
|
||||
new EdgeConfigModel{Name = "GeomWearLenght3", Path = "$TC_DP14["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght1", Path = "$TC_DP21["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght2", Path = "$TC_DP22["},
|
||||
new EdgeConfigModel{Name = "AdapterLenght3", Path = "$TC_DP23["}
|
||||
}
|
||||
},
|
||||
{
|
||||
730, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
{
|
||||
900, new List<EdgeConfigModel>()
|
||||
{
|
||||
new EdgeConfigModel{Name = "CuttingEdgeConfigModel", Path = "$TC_DP2["},
|
||||
new EdgeConfigModel{Name = "Lenght", Path = "$TC_DP3["},
|
||||
new EdgeConfigModel{Name = "Radius", Path = "$TC_DP6["},
|
||||
new EdgeConfigModel{Name = "WearLenght", Path = "$TC_DP12["},
|
||||
new EdgeConfigModel{Name = "WearRadius", Path = "$TC_DP15["}
|
||||
}
|
||||
},
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -18,6 +18,7 @@ namespace Nc_Demo_Application
|
||||
public const string READ_FAMILIES_QUERY = "SELECT * FROM family";
|
||||
public const string READ_SHANKS_QUERY = "SELECT * FROM shank";
|
||||
public const string READ_MAGAZINES_QUERY = "SELECT * FROM magazine";
|
||||
public const string READ_EDGES_QUERY = "SELECT * FROM edge";
|
||||
|
||||
// Server configuration
|
||||
public static string SERVER_PORT = ":8080";
|
||||
|
||||
@@ -26,6 +26,7 @@ namespace Nc_Demo_Application.Database
|
||||
private DataTable FamiliesDataTable;
|
||||
private DataTable ShanksDataTable;
|
||||
private DataTable MagazinesPositionDataTable;
|
||||
private DataTable EdgeDataTable;
|
||||
|
||||
#region Constructor & Private functions
|
||||
|
||||
@@ -42,6 +43,7 @@ namespace Nc_Demo_Application.Database
|
||||
MagazinesPositionDataTable = new DataTable();
|
||||
NcProcessDataTable = new DataTable();
|
||||
BinaryMemory = new DataTable();
|
||||
EdgeDataTable = new DataTable();
|
||||
|
||||
// Create ncProcess columns
|
||||
NcProcessDataTable.Columns.Add("status", typeof(PROC_STATUS));
|
||||
@@ -72,6 +74,7 @@ namespace Nc_Demo_Application.Database
|
||||
|
||||
public void ResetDatabase()
|
||||
{
|
||||
// Dispose all the Datatable
|
||||
BinaryMemory.Dispose();
|
||||
NcProcessDataTable.Dispose();
|
||||
NcAlarmDataTable.Dispose();
|
||||
@@ -80,7 +83,9 @@ namespace Nc_Demo_Application.Database
|
||||
FamiliesDataTable.Dispose();
|
||||
ShanksDataTable.Dispose();
|
||||
MagazinesPositionDataTable.Dispose();
|
||||
EdgeDataTable.Dispose();
|
||||
|
||||
// Close sql connection
|
||||
sqlConnection.Close();
|
||||
}
|
||||
|
||||
@@ -808,10 +813,12 @@ namespace Nc_Demo_Application.Database
|
||||
|
||||
// Delete row with matching id
|
||||
DataRow row = ShanksDataTable.AsEnumerable().FirstOrDefault(x => Convert.ToInt32(x["id"]) == id);
|
||||
|
||||
row.Delete();
|
||||
// Update database
|
||||
adapter.Update(ShanksDataTable);
|
||||
if(row != null)
|
||||
{
|
||||
row.Delete();
|
||||
// Update database
|
||||
adapter.Update(ShanksDataTable);
|
||||
}
|
||||
|
||||
// Close the connection with database
|
||||
sqlConnection.Close();
|
||||
@@ -894,7 +901,7 @@ namespace Nc_Demo_Application.Database
|
||||
DataRow row = ToolsDataTable.NewRow();
|
||||
// Find & set new item Id
|
||||
toolData.Id = Convert.ToInt32(ToolsDataTable.Rows[ToolsDataTable.Rows.Count - 1]["id"]) + 1;
|
||||
// Get child id
|
||||
// Get child id
|
||||
toolData.ChildId = GetFamilyChildId(toolData.FamilyName);
|
||||
|
||||
// Setup autoincrement Id
|
||||
@@ -982,7 +989,7 @@ namespace Nc_Demo_Application.Database
|
||||
Console.WriteLine("Update tool exception: " + ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private int GetFamilyChildId(string familyName)
|
||||
{
|
||||
// Find next child id
|
||||
@@ -1012,9 +1019,12 @@ namespace Nc_Demo_Application.Database
|
||||
// Delete row with matching id
|
||||
DataRow row = ToolsDataTable.AsEnumerable().FirstOrDefault(x => Convert.ToInt32(x["id"]) == id);
|
||||
|
||||
row.Delete();
|
||||
// Update database
|
||||
adapter.Update(ToolsDataTable);
|
||||
if(row != null)
|
||||
{
|
||||
row.Delete();
|
||||
// Update database
|
||||
adapter.Update(ToolsDataTable);
|
||||
}
|
||||
|
||||
// Close the connection with database
|
||||
sqlConnection.Close();
|
||||
@@ -1027,6 +1037,153 @@ namespace Nc_Demo_Application.Database
|
||||
|
||||
#endregion Tools
|
||||
|
||||
#region Edges
|
||||
|
||||
public DataTable ReadEdges(int toolId)
|
||||
{
|
||||
try
|
||||
{
|
||||
ReadDataFromDatabase(READ_EDGES_QUERY + " where tool_id =" + toolId, ref EdgeDataTable);
|
||||
|
||||
return EdgeDataTable;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine("Read edges exception: " + ex.Message);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public List<EdgesDataModel> GetEdgesData(int toolId)
|
||||
{
|
||||
List<EdgesDataModel> edgesList = new List<EdgesDataModel>();
|
||||
// Not having a list of all the edges, you must read again
|
||||
ReadEdges(toolId);
|
||||
// Populate Edges Model with db data
|
||||
foreach (DataRow row in EdgeDataTable.Rows)
|
||||
{
|
||||
EdgesDataModel edge = new EdgesDataModel
|
||||
{
|
||||
Id = Convert.ToInt32(row["id"]),
|
||||
NominalLife = Convert.ToInt32(row["nominal_life"]),
|
||||
ResidualLife = Convert.ToInt32(row["residual_life"]),
|
||||
PreAlmLife = Convert.ToInt32(row["prealm_life"])
|
||||
};
|
||||
|
||||
edge.EdgeAdditionalParams = new Dictionary<string, double>();
|
||||
for (int i = 2; i <= 30; i++)
|
||||
{
|
||||
string key = "param" + i;
|
||||
edge.EdgeAdditionalParams.Add(key, Convert.ToDouble(row[key]));
|
||||
}
|
||||
|
||||
edge.EdgeAdditionalParams.Add("param34", Convert.ToDouble(row["param34"]));
|
||||
|
||||
edgesList.Add(edge);
|
||||
}
|
||||
|
||||
return edgesList;
|
||||
}
|
||||
|
||||
public EdgesDataModel AddEdge(int toolId, EdgesDataModel newEdge)
|
||||
{
|
||||
try
|
||||
{
|
||||
// Get data from DB, alreaby filtred by tool id
|
||||
DataTable edgesTable = ReadEdges(toolId);
|
||||
|
||||
// Open the connection with database
|
||||
SetConnection();
|
||||
sqlConnection.Open();
|
||||
|
||||
// Create a SQLite command with query, adapter and commandbuilder in order to update.
|
||||
sqlCommand = new SQLiteCommand(READ_EDGES_QUERY, sqlConnection);
|
||||
SQLiteDataAdapter adapter = new SQLiteDataAdapter(sqlCommand);
|
||||
SQLiteCommandBuilder commandBuilder = new SQLiteCommandBuilder(adapter);
|
||||
|
||||
// Create new row that must be inserted
|
||||
DataRow row = edgesTable.NewRow();
|
||||
int id = Convert.ToInt32(edgesTable.Rows[edgesTable.Rows.Count - 1]["child_id"]) + 1;
|
||||
|
||||
newEdge.Id = id;
|
||||
|
||||
// Setup autoincrement Id
|
||||
row["child_id"] = id;
|
||||
row["tool_id"] = toolId;
|
||||
row["residual_life"] = newEdge.ResidualLife;
|
||||
row["nominal_life"] = newEdge.NominalLife;
|
||||
row["prealm_life"] = newEdge.PreAlmLife;
|
||||
|
||||
// Set additional param value
|
||||
for (int i = 2; i <= 30; i++)
|
||||
{
|
||||
string key = "param" + i;
|
||||
// Check if value exist, if not 0
|
||||
row[key] = newEdge.EdgeAdditionalParams.ContainsKey(key) ? newEdge.EdgeAdditionalParams[key] : 0;
|
||||
}
|
||||
// Same operation as above but for param34
|
||||
row["param34"] = newEdge.EdgeAdditionalParams.ContainsKey("param34") ? newEdge.EdgeAdditionalParams["param34"] : 0;
|
||||
|
||||
// Add the new row
|
||||
EdgeDataTable.Rows.Add(row);
|
||||
|
||||
// Update database
|
||||
adapter.Update(EdgeDataTable);
|
||||
|
||||
// Close the connection with database
|
||||
sqlConnection.Close();
|
||||
|
||||
return newEdge;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine("Add edge exception: " + ex.Message);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateEdges(DataTable edges)
|
||||
{
|
||||
UpdateDatabaseFromGridView(edges, READ_EDGES_QUERY);
|
||||
}
|
||||
|
||||
public void DeleteEdge(int toolId, int edgeId)
|
||||
{
|
||||
try
|
||||
{
|
||||
// Get data from DB, alreaby filtred by tool id
|
||||
DataTable edgesTable = ReadEdges(toolId);
|
||||
|
||||
SetConnection();
|
||||
|
||||
// Open the connection with database
|
||||
sqlConnection.Open();
|
||||
// Create a SQLite command with query, adapter and commandbuilder in order to delete
|
||||
sqlCommand = new SQLiteCommand(READ_EDGES_QUERY, sqlConnection);
|
||||
SQLiteDataAdapter adapter = new SQLiteDataAdapter(sqlCommand);
|
||||
SQLiteCommandBuilder commandBuilder = new SQLiteCommandBuilder(adapter);
|
||||
|
||||
// Delete row with matching edgeId inside tool
|
||||
DataRow row = edgesTable.AsEnumerable().FirstOrDefault(x => Convert.ToInt32(x["child_id"]) == edgeId);
|
||||
if(row != null)
|
||||
{
|
||||
row.Delete();
|
||||
|
||||
// Update database
|
||||
adapter.Update(edgesTable);
|
||||
}
|
||||
|
||||
// Close the connection with database
|
||||
sqlConnection.Close();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine("Delete edge exception: " + ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Edges
|
||||
|
||||
#region Magazines
|
||||
|
||||
public DataTable ReadMagazines()
|
||||
@@ -1068,13 +1225,43 @@ namespace Nc_Demo_Application.Database
|
||||
return positions;
|
||||
}
|
||||
|
||||
public List<PositionsDataModel> GetMagazinePositions(int magazineId)
|
||||
{
|
||||
List<PositionsDataModel> positions = new List<PositionsDataModel>();
|
||||
// Find only selected magazine rows
|
||||
List<DataRow> magazinePositions = MagazinesPositionDataTable
|
||||
.AsEnumerable()
|
||||
.Where(x => Convert.ToInt32(x["magazineId"]) == magazineId).ToList();
|
||||
|
||||
foreach (DataRow row in magazinePositions)
|
||||
{
|
||||
// Convert DataTable.row into positions model
|
||||
PositionsDataModel tmpPositions = new PositionsDataModel
|
||||
{
|
||||
Id = Convert.ToInt32(row["positionId"]),
|
||||
MagazineId = Convert.ToInt32(row["magazineId"]),
|
||||
Type = Convert.ToInt32(row["type"]),
|
||||
};
|
||||
|
||||
// Find mounted tool in the selected position & magazine
|
||||
tmpPositions.childsTools = ToolsDataTable.AsEnumerable()
|
||||
.Where(x => Convert.ToInt32(x["magazine"]) == magazineId && Convert.ToInt32(x["shankId"]) == tmpPositions.Id)?
|
||||
.Select(x => new PositionsChild() { Id = tmpPositions.Id })
|
||||
.ToList();
|
||||
|
||||
positions.Add(tmpPositions);
|
||||
}
|
||||
|
||||
return positions;
|
||||
}
|
||||
|
||||
public void UpdatePosition(PositionsDataModel position)
|
||||
{
|
||||
// Find position to be updated
|
||||
DataRow row = MagazinesPositionDataTable
|
||||
.AsEnumerable()
|
||||
.FirstOrDefault(x => Convert.ToInt32(x["positionId"]) == position.Id && Convert.ToInt32(x["magazineId"]) == position.MagazineId);
|
||||
|
||||
|
||||
// Update positions type
|
||||
row["type"] = position.Type;
|
||||
// Save
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Nc_Demo_Application.Database.Models
|
||||
public bool IsInUse;
|
||||
public bool PreAlarm;
|
||||
public int ShanksId;
|
||||
public List<Dictionary<string, double>> EdgesData;
|
||||
public List<EdgesDataModel> EdgesData;
|
||||
}
|
||||
|
||||
public class ShankDataModel
|
||||
@@ -45,5 +45,19 @@ namespace Nc_Demo_Application.Database.Models
|
||||
public int Id;
|
||||
public int MagazineId;
|
||||
public int Type;
|
||||
public List<PositionsChild> childsTools;
|
||||
}
|
||||
public class PositionsChild
|
||||
{
|
||||
public int Id;
|
||||
}
|
||||
|
||||
public class EdgesDataModel
|
||||
{
|
||||
public int Id;
|
||||
public double ResidualLife;
|
||||
public double NominalLife;
|
||||
public double PreAlmLife;
|
||||
public Dictionary<string, double> EdgeAdditionalParams;
|
||||
}
|
||||
}
|
||||
@@ -190,6 +190,12 @@ namespace Nc_Demo_Application.Server.Service
|
||||
[WebInvoke(Method = "DELETE", UriTemplate = "tool_table/tool/{id}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void DeleteTool(string id);
|
||||
|
||||
[WebInvoke(Method = "POST", UriTemplate = "tool_table/edge/{toolId}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void AddEdge(string toolId, ref EdgesDataModel edge);
|
||||
|
||||
[WebInvoke(Method = "DELETE", UriTemplate = "tool_table/edge/{toolId}/{edgeId}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void DeleteEdge(string toolId, string edgeId);
|
||||
|
||||
[WebGet(UriTemplate = "tool_table/shanks", BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)]
|
||||
void GetShanks(out List<ShankDataModel> shanksData);
|
||||
|
||||
@@ -202,6 +208,9 @@ namespace Nc_Demo_Application.Server.Service
|
||||
[WebGet(UriTemplate = "tool_table/positions", BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)]
|
||||
void GetPositions(out List<PositionsDataModel> positionsData);
|
||||
|
||||
[WebGet(UriTemplate = "tool_table/magazine/{magazineId}", BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)]
|
||||
void GetMagazinePositions(string magazineId, out List<PositionsDataModel> positionsData);
|
||||
|
||||
[WebInvoke(Method = "PUT", UriTemplate = "tool_table/position", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
|
||||
void PutPosition(PositionsDataModel position);
|
||||
#endregion
|
||||
|
||||
@@ -468,7 +468,12 @@ namespace Nc_Demo_Application.Server.Service
|
||||
|
||||
public void AddFamily(ref FamilyModel family)
|
||||
{
|
||||
family = DatabaseController.getInstance().AddFamily(family);
|
||||
family = DatabaseController.getInstance().AddFamily(family);
|
||||
}
|
||||
|
||||
public void DeleteFamily(string name)
|
||||
{
|
||||
DatabaseController.getInstance().DeleteFamily(name);
|
||||
}
|
||||
|
||||
#endregion Family
|
||||
@@ -478,6 +483,10 @@ namespace Nc_Demo_Application.Server.Service
|
||||
public void GetTools(out List<ToolsDataModel> toolsData)
|
||||
{
|
||||
toolsData = DatabaseController.getInstance().ReadTools();
|
||||
foreach(ToolsDataModel tool in toolsData)
|
||||
{
|
||||
tool.EdgesData = DatabaseController.getInstance().GetEdgesData(tool.Id);
|
||||
}
|
||||
}
|
||||
|
||||
public void AddTool(ref ToolsDataModel tool)
|
||||
@@ -490,6 +499,29 @@ namespace Nc_Demo_Application.Server.Service
|
||||
DatabaseController.getInstance().UpdateToolData(tool);
|
||||
}
|
||||
|
||||
public void DeleteTool(string id)
|
||||
{
|
||||
DatabaseController.getInstance().DeleteTool(Convert.ToInt32(id));
|
||||
}
|
||||
|
||||
#endregion Tools
|
||||
|
||||
#region Edges
|
||||
|
||||
public void AddEdge(string toolId, ref EdgesDataModel edge)
|
||||
{
|
||||
edge = DatabaseController.getInstance().AddEdge(Convert.ToInt32(toolId), edge);
|
||||
}
|
||||
|
||||
public void DeleteEdge(string toolId, string edgeId)
|
||||
{
|
||||
DatabaseController.getInstance().DeleteEdge(Convert.ToInt32(toolId), Convert.ToInt32(edgeId));
|
||||
}
|
||||
|
||||
#endregion Edges
|
||||
|
||||
#region Shanks
|
||||
|
||||
public void GetShanks(out List<ShankDataModel> shanksData)
|
||||
{
|
||||
shanksData = DatabaseController.getInstance().GetShanks();
|
||||
@@ -500,19 +532,8 @@ namespace Nc_Demo_Application.Server.Service
|
||||
shankData = DatabaseController.getInstance().AddShank();
|
||||
}
|
||||
|
||||
public void GetPositions(out List<PositionsDataModel> positionsData)
|
||||
public void PutShank(ShankDataModel shankData)
|
||||
{
|
||||
positionsData = DatabaseController.getInstance().GetPositions();
|
||||
}
|
||||
|
||||
public void PutPosition(PositionsDataModel position)
|
||||
{
|
||||
DatabaseController.getInstance().UpdatePosition(position);
|
||||
}
|
||||
|
||||
public void DeleteTool(string id)
|
||||
{
|
||||
DatabaseController.getInstance().DeleteTool(Convert.ToInt32(id));
|
||||
}
|
||||
|
||||
public void DeleteShank(string id)
|
||||
@@ -520,10 +541,25 @@ namespace Nc_Demo_Application.Server.Service
|
||||
DatabaseController.getInstance().DeleteShank(Convert.ToInt32(id));
|
||||
}
|
||||
|
||||
public void DeleteFamily(string name)
|
||||
#endregion Shanks
|
||||
|
||||
#region Positions
|
||||
|
||||
public void GetPositions(out List<PositionsDataModel> positionsData)
|
||||
{
|
||||
DatabaseController.getInstance().DeleteFamily(name);
|
||||
positionsData = DatabaseController.getInstance().GetPositions();
|
||||
}
|
||||
#endregion Tools
|
||||
|
||||
public void GetMagazinePositions(string magazineId, out List<PositionsDataModel> positionsData)
|
||||
{
|
||||
positionsData = DatabaseController.getInstance().GetMagazinePositions(Convert.ToInt32(magazineId));
|
||||
}
|
||||
|
||||
public void PutPosition(PositionsDataModel position)
|
||||
{
|
||||
DatabaseController.getInstance().UpdatePosition(position);
|
||||
}
|
||||
|
||||
#endregion Positions
|
||||
}
|
||||
}
|
||||
+621
-275
File diff suppressed because it is too large
Load Diff
@@ -17,6 +17,7 @@ namespace Nc_Demo_Application
|
||||
{
|
||||
private StartupPanel startupPanel;
|
||||
private bool axisResetRunning = false;
|
||||
private int SelectedToolId;
|
||||
|
||||
public DemoApplicationForm()
|
||||
{
|
||||
@@ -482,6 +483,8 @@ namespace Nc_Demo_Application
|
||||
System.Diagnostics.Process.Start("https://docs.google.com/spreadsheets/d/17AHl_qwPTGupYdWCmFYV3ubXmJykQpy1ciSTk8AgNek/edit?usp=sharing");
|
||||
}
|
||||
|
||||
#region Tool
|
||||
|
||||
private void SetupToolData(List<ToolsDataModel> toolsList)
|
||||
{
|
||||
toolsTreeView.Nodes.Clear();
|
||||
@@ -580,7 +583,6 @@ namespace Nc_Demo_Application
|
||||
{
|
||||
// Get selected Node
|
||||
var selectedTool = toolsTreeView.SelectedNode;
|
||||
|
||||
if (selectedTool.Level == 0)
|
||||
return;
|
||||
// Find selected tools data from database
|
||||
@@ -589,6 +591,8 @@ namespace Nc_Demo_Application
|
||||
|
||||
if (toolInfo != null)
|
||||
{
|
||||
SelectedToolId = toolInfo.Id;
|
||||
|
||||
// Update form inputs
|
||||
toolsIdLlb.Text = toolInfo.Id.ToString();
|
||||
FamilyTxt.Text = toolInfo.FamilyName;
|
||||
@@ -611,7 +615,11 @@ namespace Nc_Demo_Application
|
||||
toolTypeSelect.SelectedItem = (TOOLS_TYPE)toolInfo.ToolType;
|
||||
rotationSelect.SelectedItem = (ROTATION)toolInfo.Rotation;
|
||||
magazineComboBox.SelectedItem = (MAGAZINES)toolInfo.MagazineId;
|
||||
|
||||
// Populate edge grid view
|
||||
PopulateEdgeGridView(toolInfo.Id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void SaveToolButton_Click(object sender, EventArgs e)
|
||||
@@ -650,6 +658,16 @@ namespace Nc_Demo_Application
|
||||
toolInfo.Rotation = (int)rotationSelect.SelectedItem;
|
||||
|
||||
DatabaseController.getInstance().UpdateToolData(toolInfo);
|
||||
|
||||
DatabaseController.getInstance().UpdateEdges((DataTable)edgesDataGridView.DataSource);
|
||||
PopulateEdgeGridView(toolInfo.Id);
|
||||
}
|
||||
|
||||
private void PopulateEdgeGridView(int toolId)
|
||||
{
|
||||
// Populate edge grid view
|
||||
DataTable edges = DatabaseController.getInstance().ReadEdges(toolId);
|
||||
edgesDataGridView.DataSource = edges;
|
||||
}
|
||||
|
||||
private void SaveFamiliesButton_Click(object sender, EventArgs e)
|
||||
@@ -671,6 +689,8 @@ namespace Nc_Demo_Application
|
||||
{
|
||||
FillToolsInput();
|
||||
}
|
||||
|
||||
#endregion Tool
|
||||
|
||||
private void DemoApplicationForm_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
|
||||
@@ -173,4 +173,112 @@
|
||||
jm/GcW7031RP8zpHxQAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="edgesId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="edgeId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="edgeToolId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="edgesResidualLife.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="edgesNominalLife.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="edgesPreAlarmLife.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param11.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param12.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param13.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param14.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param15.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param16.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param17.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param18.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param19.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param20.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param21.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param22.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param23.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param24.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param25.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param26.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param27.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param28.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param29.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param30.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="param34.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
</root>
|
||||
Reference in New Issue
Block a user