diff --git a/Step.Config/Config/serverConfig.xml b/Step.Config/Config/serverConfig.xml index dbc8112d..1a7ecd53 100644 --- a/Step.Config/Config/serverConfig.xml +++ b/Step.Config/Config/serverConfig.xml @@ -1,9 +1,9 @@ - DEMO + OSAI true - localhost + 192.168.157.2 8080 Ares 37 OF C:\PartPrg\ diff --git a/Step.Config/ServerConfigController.cs b/Step.Config/ServerConfigController.cs index bbeab8e9..672400cb 100644 --- a/Step.Config/ServerConfigController.cs +++ b/Step.Config/ServerConfigController.cs @@ -276,7 +276,7 @@ namespace Step.Config .Select(x => new UserSoftKeyConfigModel() { Id = id++, // autoincrement Id - PlcId = Convert.ToInt32(x.Element("plcId")?.Value), // If exists + PlcId = Convert.ToInt32(x.Element("plcId")?.Value), // If exists IsActive = Convert.ToBoolean(x.Element("active").Value), Category = Convert.ToInt32(x.Element("category").Value), LocalizedNames = x.Element("localizedNames").Elements().ToDictionary( // Read localized names and convert into a dictionary diff --git a/Step.Database/Controllers/NcToolManagerController.cs b/Step.Database/Controllers/NcToolManagerController.cs index c8a796c4..2bf940c0 100644 --- a/Step.Database/Controllers/NcToolManagerController.cs +++ b/Step.Database/Controllers/NcToolManagerController.cs @@ -265,19 +265,25 @@ namespace Step.Database.Controllers return dtoTools; } - public DbNcToolModel AddTool(DTONewNcToolModel dtoTool) + public DbNcToolModel AddTool(DTONewNcToolModel dtoTool, int toolId) { - DbNcToolModel tool = (DbNcToolModel)dtoTool; - dbCtx.Tools.Add(tool); + // Copy data + DbNcToolModel dbTool = (DbNcToolModel)dtoTool; + + if (toolId == 0) + // Get next id + dbTool.ToolId = GetFirstFreeId(dbCtx.Tools.Select(x => x.ToolId).ToList()); + else + dbTool.ToolId = toolId; + + dbCtx.Tools.Add(dbTool); dbCtx.SaveChanges(); // Get foreign key data - dbCtx.Entry(tool).Reference(x => x.Family).Load(); - dbCtx.Entry(tool).Reference(x => x.Shank).Load(); - - // GetFirstId(dbCtx.Tools.Select(x => x.ToolId).ToList()); - - return tool; + dbCtx.Entry(dbTool).Reference(x => x.Family).Load(); + dbCtx.Entry(dbTool).Reference(x => x.Shank).Load(); + + return dbTool; } public DbNcToolModel UpdateTool(int toolId, DTONewNcToolModel dtoTool) @@ -336,8 +342,13 @@ namespace Step.Database.Controllers public DbNcFamilyModel AddFamily(DTONewNcFamilyModel family) { DbNcFamilyModel dbFamily = (DbNcFamilyModel)family; - dbCtx.Families.Add(dbFamily); + if(dbFamily.FamilyId == 0) + // Get next id + dbFamily.FamilyId = GetFirstFreeId(dbCtx.Families.Select(x => x.FamilyId).ToList()); + + dbCtx.Families.Add(dbFamily); + dbCtx.SaveChanges(); return dbFamily; @@ -367,9 +378,16 @@ namespace Step.Database.Controllers dbCtx.SaveChanges(); } - public DbNcShankModel AddShank(DTONewNcShankModel shank) + public DbNcShankModel AddShank(DTONewNcShankModel shank, int shankId = 0) { DbNcShankModel dbShank = (DbNcShankModel)shank; + + if (shankId == 0) + // Get next id + dbShank.ShankId = GetFirstFreeId(dbCtx.Shanks.Select(x => x.ShankId).ToList()); + else + dbShank.ShankId = shankId; + dbCtx.Shanks.Add(dbShank); dbCtx.SaveChanges(); diff --git a/Step.Database/Migrations/201809181022557_InitMigration.resx b/Step.Database/Migrations/201809181022557_InitMigration.resx deleted file mode 100644 index 386025d7..00000000 --- a/Step.Database/Migrations/201809181022557_InitMigration.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 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 - - - dbo - - \ No newline at end of file diff --git a/Step.Database/Migrations/201809181022557_InitMigration.Designer.cs b/Step.Database/Migrations/201809251027480_InitMigration.Designer.cs similarity index 92% rename from Step.Database/Migrations/201809181022557_InitMigration.Designer.cs rename to Step.Database/Migrations/201809251027480_InitMigration.Designer.cs index 8418d773..95ee3146 100644 --- a/Step.Database/Migrations/201809181022557_InitMigration.Designer.cs +++ b/Step.Database/Migrations/201809251027480_InitMigration.Designer.cs @@ -13,7 +13,7 @@ namespace Step.Database.Migrations string IMigrationMetadata.Id { - get { return "201809181022557_InitMigration"; } + get { return "201809251027480_InitMigration"; } } string IMigrationMetadata.Source diff --git a/Step.Database/Migrations/201809181022557_InitMigration.cs b/Step.Database/Migrations/201809251027480_InitMigration.cs similarity index 98% rename from Step.Database/Migrations/201809181022557_InitMigration.cs rename to Step.Database/Migrations/201809251027480_InitMigration.cs index 885ae5fc..d2e9fd20 100644 --- a/Step.Database/Migrations/201809181022557_InitMigration.cs +++ b/Step.Database/Migrations/201809251027480_InitMigration.cs @@ -11,7 +11,7 @@ namespace Step.Database.Migrations "dbo.family", c => new { - id = c.Int(nullable: false, identity: true), + id = c.Int(nullable: false), name = c.String(unicode: false), type = c.Byte(nullable: false), right_size = c.Byte(nullable: false), @@ -37,7 +37,7 @@ namespace Step.Database.Migrations "dbo.tool", c => new { - id = c.Int(nullable: false, identity: true), + id = c.Int(nullable: false), offset_length = c.Int(nullable: false), residual_life = c.Int(nullable: false), residual_revive = c.Int(nullable: false), @@ -60,7 +60,7 @@ namespace Step.Database.Migrations { magazine_id = c.Byte(), position_id = c.Byte(), - id = c.Int(nullable: false, identity: true), + id = c.Int(nullable: false), balluf = c.Int(), magazine_position_type = c.Byte(nullable: false), }) diff --git a/Step.Database/Migrations/201809251027480_InitMigration.resx b/Step.Database/Migrations/201809251027480_InitMigration.resx new file mode 100644 index 00000000..ae760d79 --- /dev/null +++ b/Step.Database/Migrations/201809251027480_InitMigration.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Step.Database/Step.Database.csproj b/Step.Database/Step.Database.csproj index ea54380b..6f1e8977 100644 --- a/Step.Database/Step.Database.csproj +++ b/Step.Database/Step.Database.csproj @@ -80,9 +80,9 @@ - - - 201809181022557_InitMigration.cs + + + 201809251027480_InitMigration.cs @@ -118,8 +118,8 @@ - - 201809181022557_InitMigration.cs + + 201809251027480_InitMigration.cs diff --git a/Step.Model/DatabaseModels/NcFamilyModel.cs b/Step.Model/DatabaseModels/NcFamilyModel.cs index 307f22d5..9519649d 100644 --- a/Step.Model/DatabaseModels/NcFamilyModel.cs +++ b/Step.Model/DatabaseModels/NcFamilyModel.cs @@ -9,6 +9,7 @@ namespace Step.Model.DatabaseModels public class DbNcFamilyModel { [Key] + [DatabaseGenerated(DatabaseGeneratedOption.None)] [Column("id")] public int FamilyId { get; set; } diff --git a/Step.Model/DatabaseModels/NcShankModel.cs b/Step.Model/DatabaseModels/NcShankModel.cs index 43ec5582..fac661fe 100644 --- a/Step.Model/DatabaseModels/NcShankModel.cs +++ b/Step.Model/DatabaseModels/NcShankModel.cs @@ -9,6 +9,7 @@ namespace Step.Model.DatabaseModels public class DbNcShankModel { [Key] + [DatabaseGenerated(DatabaseGeneratedOption.None)] [Column("id")] public int ShankId { get; set; } diff --git a/Step.Model/DatabaseModels/NcToolModel.cs b/Step.Model/DatabaseModels/NcToolModel.cs index e0444ef1..ded54d50 100644 --- a/Step.Model/DatabaseModels/NcToolModel.cs +++ b/Step.Model/DatabaseModels/NcToolModel.cs @@ -8,6 +8,7 @@ namespace Step.Model.DatabaseModels public class DbNcToolModel { [Key] + [DatabaseGenerated(DatabaseGeneratedOption.None)] [Column("id")] public int ToolId { get; set; } diff --git a/Step.NC/NcHandler.cs b/Step.NC/NcHandler.cs index 8e34af15..cf1ee157 100644 --- a/Step.NC/NcHandler.cs +++ b/Step.NC/NcHandler.cs @@ -1620,13 +1620,13 @@ namespace Step.NC return cmsError; } - public CmsError AddTool(DTONewNcToolModel tool, out DTONcToolModel dtoTool) + public CmsError AddTool(DTONewNcToolModel tool, out DTONcToolModel dtoTool, int toolId) { dtoTool = new DTONcToolModel(); using (NcToolManagerController toolsManager = new NcToolManagerController()) { - DbNcToolModel ncTool = toolsManager.AddTool(tool); + DbNcToolModel ncTool = toolsManager.AddTool(tool, toolId); if (!ToolManagerConfig.OffsetOpt) @@ -1848,13 +1848,9 @@ namespace Step.NC { using (NcToolManagerController toolsManager = new NcToolManagerController()) { + CmsError cmsError = NO_ERROR; using (var dbContextTransaction = toolsManager.dbCtx.Database.BeginTransaction()) { - // Create backup of data stored on the NC and block file accesses - CmsError cmsError = numericalControl.TOOLS_WStartEditData(); - if (cmsError.IsError()) - return cmsError; - // Delete database shank DbNcShankModel deletedShank = toolsManager.DeleteShank(shankId); bool startIsActive = false; diff --git a/Step.Utils/supportFunctions.cs b/Step.Utils/supportFunctions.cs index 281ef922..0710a897 100644 --- a/Step.Utils/supportFunctions.cs +++ b/Step.Utils/supportFunctions.cs @@ -114,9 +114,12 @@ namespace Step.Utils return objIds.Max() + 1; } - public static int GetFirstId(IEnumerable objIds) + public static int GetFirstFreeId(IEnumerable objIds) { - List listOfPossibleIds = Enumerable.Range(1, objIds.Max()).ToList(); + if (objIds.Count() == 0) + return 1; + + List listOfPossibleIds = Enumerable.Range(1, objIds.Max() + 1).ToList(); IEnumerable res = listOfPossibleIds.Except(objIds).ToList(); diff --git a/Step/Controllers/WebApi/NcToolManagerController.cs b/Step/Controllers/WebApi/NcToolManagerController.cs index de913354..7cbbc7d1 100644 --- a/Step/Controllers/WebApi/NcToolManagerController.cs +++ b/Step/Controllers/WebApi/NcToolManagerController.cs @@ -58,6 +58,7 @@ namespace Step.Controllers.WebApi if (!ModelState.IsValid) return BadRequest(ModelState); + int id = 0; using (NcToolManagerController toolsManager = new NcToolManagerController()) { // Check if option is active @@ -90,6 +91,9 @@ namespace Step.Controllers.WebApi if (dbFam == null) return BadRequest(API_ERROR_KEYS.INCORRECT_PARAMETERS); dtoToolWithFamily.FamilyId = dbFam.FamilyId; + + // Set common id + id = dbFam.FamilyId; } // Check if option is active @@ -103,7 +107,7 @@ namespace Step.Controllers.WebApi }; // Create a new shank - DbNcShankModel ncShank = toolsManager.AddShank(newShank); + DbNcShankModel ncShank = toolsManager.AddShank(newShank, id); // Connect tool to new shank dtoToolWithFamily.ShankId = ncShank.ShankId; } @@ -116,7 +120,7 @@ namespace Step.Controllers.WebApi ncHandler.Connect(); // Add tool - CmsError cmsError = ncHandler.AddTool(dtoToolWithFamily, out DTONcToolModel newTool); + CmsError cmsError = ncHandler.AddTool(dtoToolWithFamily, out DTONcToolModel newTool, id); if (cmsError.IsError()) return BadRequest(cmsError.localizationKey); @@ -208,7 +212,12 @@ namespace Step.Controllers.WebApi { ncHandler.Connect(); + CmsError cmsError; + cmsError = ncHandler.DeleteNcTool(tool); + if (cmsError.IsError()) + return BadRequest(cmsError.localizationKey); + if (!ToolManagerConfig.ShankOpt && tool.ShankId != null) { // If option is active find & delete tool shank @@ -229,10 +238,6 @@ namespace Step.Controllers.WebApi } } - cmsError = ncHandler.DeleteNcTool(tool); - if (cmsError.IsError()) - return BadRequest(cmsError.localizationKey); - return Ok(); } }