diff --git a/Libs/CMS_CORE_Library.dll b/Libs/CMS_CORE_Library.dll index a9466a44..b3552068 100644 Binary files a/Libs/CMS_CORE_Library.dll and b/Libs/CMS_CORE_Library.dll differ diff --git a/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs b/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs index 3a56faf9..beb499de 100644 --- a/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs @@ -51,7 +51,7 @@ namespace Step.Model.DTOModels.ToolModels public bool InChangeTool { get; set; } [Required] - public bool IsInUse { get; set; } + public bool InUse { get; set; } [Required] public bool PreAlarm { get; set; } @@ -68,7 +68,7 @@ namespace Step.Model.DTOModels.ToolModels IsEnabled = dtoModel.IsEnabled, IsActive = dtoModel.IsActive, IsInhibited = dtoModel.IsInhibited, - IsInUse = dtoModel.IsInUse, + IsInUse = dtoModel.InUse, IsMeasured = dtoModel.IsMeasured, InChangeTool = dtoModel.InChangeTool, InFixedPlace = dtoModel.InFixedPlace, diff --git a/Step.NC/NcHandler.cs b/Step.NC/NcHandler.cs index 157b958e..db85f4ae 100644 --- a/Step.NC/NcHandler.cs +++ b/Step.NC/NcHandler.cs @@ -669,9 +669,9 @@ namespace Step.NC return numericalControl.TOOLS_RFamilyData(ref families); } - public CmsError GetMagazinesPositionsData(out List magazinesPositions) + public CmsError GetMagazinesPositionsData(out List magazinesPositions) { - magazinesPositions = new List(); + magazinesPositions = new List(); return numericalControl.TOOLS_RMagazinePositions(ref magazinesPositions); } #endregion Read Data @@ -773,9 +773,9 @@ namespace Step.NC return numericalControl.TOOLS_WUpdateFamilyData(oldName, newName); } - public CmsError UpdateMagazinePosition(PositionsModel magazinePosition) + public CmsError UpdateMagazinePosition(PositionModel magazinePosition) { - return numericalControl.TOOLS_WUpdatePositions(magazinePosition); + return numericalControl.TOOLS_WUpdatePosition(magazinePosition); } public CmsError DeleteTool(int id) @@ -808,9 +808,9 @@ namespace Step.NC return numericalControl.TOOLS_WDeleteEdge(toolId, edgeId); } - public CmsError GetMagazinePositionsAndTools(int magazineId, out List magazinePos) + public CmsError GetMagazinePositionsAndTools(int magazineId, out List magazinePos) { - magazinePos = new List(); + magazinePos = new List(); return numericalControl.TOOLS_RMagazineTools(magazineId, ref magazinePos); } @@ -821,9 +821,14 @@ namespace Step.NC return numericalControl.TOOLS_RAvailableTools(ref multiTools, ref tools); } - public CmsError UpdateMagazine(int magazineId, List newMag) + public CmsError LoadToolInMagazine(int magazineId, NewToolInMagazineModel newMag) { - return numericalControl.TOOLS_WUpdateMagazineTools(magazineId, newMag); + return numericalControl.TOOLS_WLoadToolInMagazine(magazineId, newMag); + } + + public CmsError UnloadToolInMagazine(int magazineId, int positionId) + { + return numericalControl.TOOLS_WUnloadToolInMagazine(magazineId, positionId); } #endregion #endregion Write data diff --git a/Step/Controllers/WebApi/ToolTableController.cs b/Step/Controllers/WebApi/ToolTableController.cs index 9c863457..374e2af7 100644 --- a/Step/Controllers/WebApi/ToolTableController.cs +++ b/Step/Controllers/WebApi/ToolTableController.cs @@ -180,7 +180,7 @@ namespace Step.Controllers.WebApi using (NcHandler ncHandler = new NcHandler()) { ncHandler.Connect(); - CmsError libraryError = ncHandler.GetMagazinesPositionsData(out List magazines); + CmsError libraryError = ncHandler.GetMagazinesPositionsData(out List magazines); if (libraryError.IsError()) if (libraryError.errorCode != CMS_ERROR_CODES.NOT_CONNECTED) return BadRequest(libraryError.message); @@ -201,9 +201,9 @@ namespace Step.Controllers.WebApi ncHandler.Connect(); // Create Library model - PositionsModel pos = new PositionsModel() + PositionModel pos = new PositionModel() { - Id = positionId, + PositionId = positionId, MagazineId = magazineId, Type = Convert.ToInt32(magazinesPos.Type) }; @@ -357,7 +357,7 @@ namespace Step.Controllers.WebApi { ncHandler.Connect(); // Call delete library function - CmsError libraryError = ncHandler.GetMagazinePositionsAndTools(magazineId, out List magazinePos); + CmsError libraryError = ncHandler.GetMagazinePositionsAndTools(magazineId, out List magazinePos); if (libraryError.IsError()) if (libraryError.errorCode != CMS_ERROR_CODES.NOT_CONNECTED) return BadRequest(libraryError.message); @@ -386,8 +386,8 @@ namespace Step.Controllers.WebApi } } - [Route("magazine/{magazineId:int}"), HttpPut] - public IHttpActionResult GetAvailableTools(int magazineId, [FromBody][Required] List newMag) + [Route("magazine/{magazineId:int}/load"), HttpPut] + public IHttpActionResult LoadToolInToMagazine(int magazineId, [FromBody][Required] DTOUpdateMagazineModel newMag) { if (!ModelState.IsValid) return BadRequest(ModelState); @@ -396,9 +396,9 @@ namespace Step.Controllers.WebApi { ncHandler.Connect(); - List libraryMag = newMag.Select(x => new NewToolInMagazineModel { PositionId = x.PositionId, ToolId = x.ToolId }).ToList(); + NewToolInMagazineModel libraryMag = new NewToolInMagazineModel { PositionId = newMag.PositionId, ToolId = newMag.ToolId }; // Call delete library function - CmsError libraryError = ncHandler.UpdateMagazine(magazineId, libraryMag); + CmsError libraryError = ncHandler.LoadToolInMagazine(magazineId, libraryMag); if (libraryError.IsError()) if (libraryError.errorCode != CMS_ERROR_CODES.NOT_CONNECTED) return BadRequest(libraryError.message); @@ -406,5 +406,25 @@ namespace Step.Controllers.WebApi return Ok(newMag); } } + + [Route("magazine/{magazineId:int}/unload/{positionId:int}"), HttpPut] + public IHttpActionResult UnloadToolFromMagazine(int magazineId, int positionId) + { + if (!ModelState.IsValid) + return BadRequest(ModelState); + + using (NcHandler ncHandler = new NcHandler()) + { + ncHandler.Connect(); + + // Call delete library function + CmsError libraryError = ncHandler.UnloadToolInMagazine(magazineId, positionId); + if (libraryError.IsError()) + if (libraryError.errorCode != CMS_ERROR_CODES.NOT_CONNECTED) + return BadRequest(libraryError.message); + + return Ok(); + } + } } } \ No newline at end of file