diff --git a/Client.Utils/Constants.cs b/Client.Utils/Constants.cs index debddba9..7e22fe11 100644 --- a/Client.Utils/Constants.cs +++ b/Client.Utils/Constants.cs @@ -20,9 +20,8 @@ namespace Client.Utils public static String CEF_LOCALES_PATH = BASE_PATH + "CEF\\Resources\\locales"; public static String CEF_EXCEPTIONLOG_PATH = BASE_PATH + "ExceptionLog"; public static String errorPageFile = BASE_PATH + "error.pg"; - public static String JOB_OPENING_PATH = BASE_PATH + "TempJob\\"; - - + public static String JOB_OPENING_PATH = "C:\\CMS\\STEP\\TMP\\clientTmpJob\\"; + //Config Names public const string CONFIG_KEY = "Config"; public const string CLIENT_CONFIG_KEY = "Client"; @@ -74,7 +73,7 @@ namespace Client.Utils public const string KEYB_PROC_NAME = "OSK"; public const string StartingPage = "index.html"; - public const string Uploadpage = "/api/file_manager/upload"; + public const string UPLOAD_PAGE = "/api/file_manager/upload"; public const string UPLOAD_ADD_QUEUE = "/api/file_manager/queue/add"; public const string ConfigPage = "api/configuration/client"; public const string errorPageUrl = @"error://error/"; diff --git a/Client/Browser_Tools/BrowserJSObject.cs b/Client/Browser_Tools/BrowserJSObject.cs index b9432ce2..910f4fa7 100644 --- a/Client/Browser_Tools/BrowserJSObject.cs +++ b/Client/Browser_Tools/BrowserJSObject.cs @@ -27,7 +27,7 @@ namespace CMS_Client.Browser_Tools // The first letter of All PUBLIC Variables and Methods must be Lower-Case (CEF Settings) private MainForm mainForm; - private static readonly string[] _validExtensions = { "", ".txt", ".cnc", ".ini", ".mpf", ".spf" }; + private static readonly string[] _validExtensions = { "", ".txt", ".cnc", ".ini", ".mpf", ".spf", ".job" }; private static readonly string[] _validImages = { ".jpg", ".jpeg", ".png" }; private static string jobPath = ""; @@ -66,12 +66,14 @@ namespace CMS_Client.Browser_Tools AddFunction("openJob").Execute += openJob; AddFunction("saveJob").Execute += saveJob; AddFunction("newJob").Execute += newJob; - AddFunction("closeJob").Execute += closeJob; + AddFunction("closeJob").Execute += closeJob; AddFunction("saveJobNewPath").Execute += saveJobNewPath; AddFunction("addImageToJob").Execute += addImageToJob; AddFunction("delImageFromJob").Execute += delImageFromJob; AddFunction("addPPToJob").Execute += addPPToJob; AddFunction("delPPFromJob").Execute += delPPFromJob; + AddFunction("getJobMetadata").Execute += getJobMetadata; + AddFunction("saveJobMetadata").Execute += saveJobMetadata; } #endregion CONSTRUCTOR_METHOD @@ -358,7 +360,7 @@ namespace CMS_Client.Browser_Tools //Check the arguments numbers if (e.Arguments.Length < 1 || e.Arguments[0] == null) { - e.SetReturnValue(Constants.Uploadpage + "INVALID_ARGUMENTS"); + e.SetReturnValue(Constants.UPLOAD_PAGE + "INVALID_ARGUMENTS"); return; } @@ -366,7 +368,7 @@ namespace CMS_Client.Browser_Tools fileToUpload = e.Arguments[0].StringValue; if (!System.IO.File.Exists(fileToUpload)) { - e.SetReturnValue(Constants.Uploadpage + ";FILE_NOT_FOUND"); + e.SetReturnValue(UPLOAD_PAGE + ";FILE_NOT_FOUND"); return; } @@ -400,13 +402,13 @@ namespace CMS_Client.Browser_Tools //Send them HttpResponseMessage response = httpClient.PostAsync( - "http://" + Config.ConnectionConfig.ServerUrl + ":" + Config.ConnectionConfig.ServerPort + "/" + Constants.Uploadpage, + "http://" + Config.ConnectionConfig.ServerUrl + ":" + Config.ConnectionConfig.ServerPort + "/" + Constants.UPLOAD_PAGE, form).Result; //Wait the answer if (response.StatusCode == System.Net.HttpStatusCode.BadRequest) - e.SetReturnValue(Constants.Uploadpage + ";" + await response.Content.ReadAsStringAsync()); + e.SetReturnValue(UPLOAD_PAGE + ";" + await response.Content.ReadAsStringAsync()); else if (response.StatusCode != System.Net.HttpStatusCode.OK) - e.SetReturnValue(Constants.Uploadpage + ";" + response.ReasonPhrase); + e.SetReturnValue(UPLOAD_PAGE + ";" + response.ReasonPhrase); else e.SetReturnValue(""); } @@ -426,7 +428,7 @@ namespace CMS_Client.Browser_Tools //Check the arguments numbers if (e.Arguments.Length < 1 || e.Arguments[0] == null) { - e.SetReturnValue(Constants.UPLOAD_ADD_QUEUE + "INVALID_ARGUMENTS"); + e.SetReturnValue(UPLOAD_ADD_QUEUE + "INVALID_ARGUMENTS"); return; } @@ -436,7 +438,7 @@ namespace CMS_Client.Browser_Tools if (!System.IO.File.Exists(fileToUpload)) { - e.SetReturnValue(Constants.UPLOAD_ADD_QUEUE + ";FILE_NOT_FOUND"); + e.SetReturnValue(UPLOAD_ADD_QUEUE + ";FILE_NOT_FOUND"); return; } @@ -472,14 +474,14 @@ namespace CMS_Client.Browser_Tools //Send them HttpResponseMessage response = httpClient - .PostAsync("http://" + Config.ConnectionConfig.ServerUrl + ":" + Config.ConnectionConfig.ServerPort + "/" + Constants.UPLOAD_ADD_QUEUE, + .PostAsync("http://" + Config.ConnectionConfig.ServerUrl + ":" + Config.ConnectionConfig.ServerPort + "/" + UPLOAD_ADD_QUEUE, form) .Result; //Wait the answer if (response.StatusCode == System.Net.HttpStatusCode.BadRequest) - e.SetReturnValue(Constants.UPLOAD_ADD_QUEUE + ";" + await response.Content.ReadAsStringAsync()); + e.SetReturnValue(UPLOAD_ADD_QUEUE + ";" + await response.Content.ReadAsStringAsync()); else if (response.StatusCode != System.Net.HttpStatusCode.OK) - e.SetReturnValue(Constants.UPLOAD_ADD_QUEUE + ";" + response.ReasonPhrase); + e.SetReturnValue(UPLOAD_ADD_QUEUE + ";" + response.ReasonPhrase); else e.SetReturnValue(""); } @@ -663,7 +665,115 @@ namespace CMS_Client.Browser_Tools } } - // create job data + public void getJobMetadata(object sender, CfrV8HandlerExecuteEventArgs e) + { + // Get file path + string filePath = e.Arguments[0].StringValue; + + // Check if file exists + if (!System.IO.File.Exists(filePath)) + { + e.SetReturnValue(JsonConvert.SerializeObject(new ErrorContainer("error_file_not_found"))); + return; + } + + // Open zip archive + using (ZipArchive zipArchive = ZipFile.OpenRead(filePath)) + { + // Setup main Fields + JobToStep jobData = new JobToStep() + { + name = Path.GetFileName(filePath), + lastEditTimestamp = new FileInfo(filePath).LastAccessTime + }; + + foreach (ZipArchiveEntry entry in zipArchive.Entries) + { + // Get images content without extract files + if (_validImages.Contains(Path.GetExtension(entry.Name).ToLower())) + { + using (var memoryReader = new MemoryStream()) + { + entry.Open().CopyTo(memoryReader); + jobData.metadata.generics.images.Add(new ImageParam() + { + name = Path.GetFileName(entry.Name), + base64 = "data:image/" + Path.GetExtension(entry.Name).ToLower().TrimStart('.') + ";base64," + Convert.ToBase64String(memoryReader.ToArray()) + }); + } + } + // Metadata + else if (entry.Name.Equals(JOB_METADATA_FILENAME, StringComparison.OrdinalIgnoreCase)) + { + MetadataToFile metasFromFile = new MetadataToFile(); + + using (var reader = new StreamReader(entry.Open())) + { + metasFromFile = JsonConvert.DeserializeObject(reader.ReadToEnd()); + if (metasFromFile == null) + { + e.SetReturnValue(JsonConvert.SerializeObject(new ErrorContainer("corrupted_model"))); + return; + } + else + { + jobData.metadata.generics.Description = metasFromFile.Description; + jobData.metadata.generics.ExecutionTime = metasFromFile.ExecutionTime; + jobData.metadata.tools = metasFromFile.Tools; + jobData.metadata.customs = metasFromFile.Customs; + } + } + } + } + + e.SetReturnValue(JsonConvert.SerializeObject(jobData)); + + return; + } + } + + public void saveJobMetadata(object sender, CfrV8HandlerExecuteEventArgs e) + { + MetadataToFile metafile = new MetadataToFile(); + + // Deserialize job + JobToStep job = JsonConvert.DeserializeObject(e.Arguments[1].StringValue); + if (job == null) + { + e.SetReturnValue(JsonConvert.SerializeObject(new ErrorContainer("corrupted_model"))); + return; + } + + // Set meta data + metafile.Description = job.metadata.generics.Description; + metafile.ExecutionTime = job.metadata.generics.ExecutionTime; + metafile.Tools = job.metadata.tools; + metafile.Customs = job.metadata.customs; + + // Open zipArchive in update mode + using (ZipArchive zipArchive = ZipFile.Open(e.Arguments[0].StringValue, ZipArchiveMode.Update)) + { + // Find metadata.json file + var file = zipArchive.Entries.Where(x => x.FullName == JOB_METADATA_FILENAME).FirstOrDefault(); + if(file == null) + { + e.SetReturnValue(JsonConvert.SerializeObject(new ErrorContainer("corrupted_model"))); + return; + } + // Update metadata file + using (StreamWriter streamWriter = new StreamWriter(file.Open())) + { + JsonSerializer serializer = new JsonSerializer + { + Formatting = Formatting.Indented + }; + // Write + serializer.Serialize(streamWriter, metafile); + } + } + } + + // Create job data public void newJob(object sender, CfrV8HandlerExecuteEventArgs e) { JobToStep job = new JobToStep(); @@ -672,13 +782,12 @@ namespace CMS_Client.Browser_Tools Directory.CreateDirectory(JOB_OPENING_PATH); ClearTempPath(); - + job.name = "newjob_" + DateTime.Now.ToFileTime() + ".job"; jobPath = ""; e.SetReturnValue(JsonConvert.SerializeObject(job)); return; - } // close job @@ -692,10 +801,8 @@ namespace CMS_Client.Browser_Tools e.SetReturnValue(null); return; - } - // Save all job public void saveJobNewPath(object sender, CfrV8HandlerExecuteEventArgs e) { @@ -723,6 +830,7 @@ namespace CMS_Client.Browser_Tools metafile.ExecutionTime = job.metadata.generics.ExecutionTime; metafile.Tools = job.metadata.tools; metafile.Customs = job.metadata.customs; + using (StreamWriter file = System.IO.File.CreateText(JOB_OPENING_PATH + JOB_METADATA_FILENAME)) { JsonSerializer serializer = new JsonSerializer @@ -751,7 +859,6 @@ namespace CMS_Client.Browser_Tools return; } - // Save all job public void saveJob(object sender, CfrV8HandlerExecuteEventArgs e) { @@ -759,7 +866,6 @@ namespace CMS_Client.Browser_Tools SaveFileDialog jobSaveFileDialog = new SaveFileDialog(); jobSaveFileDialog.Filter = "CMS Job Files(*.JOB)|*.job|Zip Files(*.ZIP)|*.zip"; - // Job deserialize JobToStep job = JsonConvert.DeserializeObject(e.Arguments[0].StringValue); if (job == null) @@ -768,7 +874,6 @@ namespace CMS_Client.Browser_Tools return; } - //check the arguments if (e.Arguments.Count() == 0) return; @@ -785,9 +890,8 @@ namespace CMS_Client.Browser_Tools e.SetReturnValue(null); return; } - } - + if (!String.IsNullOrEmpty(jobPath)) { //Metadata @@ -821,7 +925,6 @@ namespace CMS_Client.Browser_Tools return; } - // Add an image public void addImageToJob(object sender, CfrV8HandlerExecuteEventArgs e) { diff --git a/Libs/CMS_CORE_Library.dll b/Libs/CMS_CORE_Library.dll index 3f9c1e98..dd8b6763 100644 Binary files a/Libs/CMS_CORE_Library.dll and b/Libs/CMS_CORE_Library.dll differ diff --git a/Step.Core/ThreadsFunctions.cs b/Step.Core/ThreadsFunctions.cs index 5866733c..2a9be059 100644 --- a/Step.Core/ThreadsFunctions.cs +++ b/Step.Core/ThreadsFunctions.cs @@ -1,4 +1,5 @@ -using Step.Core; +using CMS_CORE_Library.Models; +using Step.Core; using Step.Model.DTOModels; using Step.Model.DTOModels.ToolModels; using Step.NC; @@ -6,7 +7,6 @@ using System.Collections.Generic; using System.Diagnostics; using System.Threading; using TeamDev.SDK.MVVM; -using static CMS_CORE_Library.DataStructures; using static Step.Model.Constants; using static Step.Utils.ExceptionManager; diff --git a/Step.Database/Controllers/FunctionsAccessController.cs b/Step.Database/Controllers/FunctionsAccessController.cs index 5f19b197..8afbb200 100644 --- a/Step.Database/Controllers/FunctionsAccessController.cs +++ b/Step.Database/Controllers/FunctionsAccessController.cs @@ -3,7 +3,7 @@ using Step.Model.DTOModels; using System; using System.Collections.Generic; using System.Linq; -using static CMS_CORE_Library.DataStructures; +using static CMS_CORE_Library.Models.DataStructures; using static Step.Config.ServerConfig; namespace Step.Database.Controllers diff --git a/Step.Model/DTOModels/DTOActiveProgramInfoModel.cs b/Step.Model/DTOModels/DTOActiveProgramInfoModel.cs index cf8cdc03..6a1d07d2 100644 --- a/Step.Model/DTOModels/DTOActiveProgramInfoModel.cs +++ b/Step.Model/DTOModels/DTOActiveProgramInfoModel.cs @@ -1,9 +1,5 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using static CMS_CORE_Library.DataStructures; +using System.Linq; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels { @@ -17,7 +13,7 @@ namespace Step.Model.DTOModels if (Path != item.Path) return false; - if(IsoLines != null && item.IsoLines != null) + if (IsoLines != null && item.IsoLines != null) if (!IsoLines.SequenceEqual(item.IsoLines)) return false; @@ -27,4 +23,4 @@ namespace Step.Model.DTOModels return true; } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/DTOAlarmsModel.cs b/Step.Model/DTOModels/DTOAlarmsModel.cs index faabb08b..2c914f23 100644 --- a/Step.Model/DTOModels/DTOAlarmsModel.cs +++ b/Step.Model/DTOModels/DTOAlarmsModel.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; -using static CMS_CORE_Library.DataStructures; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels { diff --git a/Step.Model/DTOModels/DTOAxisNameModel.cs b/Step.Model/DTOModels/DTOAxisNameModel.cs index 4df395f4..3e896fc6 100644 --- a/Step.Model/DTOModels/DTOAxisNameModel.cs +++ b/Step.Model/DTOModels/DTOAxisNameModel.cs @@ -1,4 +1,4 @@ -using static CMS_CORE_Library.DataStructures; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels { diff --git a/Step.Model/DTOModels/DTOPowerOnDataModel.cs b/Step.Model/DTOModels/DTOPowerOnDataModel.cs index 94ffb6fe..3e746a7b 100644 --- a/Step.Model/DTOModels/DTOPowerOnDataModel.cs +++ b/Step.Model/DTOModels/DTOPowerOnDataModel.cs @@ -1,4 +1,5 @@ -using static CMS_CORE_Library.DataStructures; +using CMS_CORE_Library.Models; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels { diff --git a/Step.Model/DTOModels/DTOProcessDataModel.cs b/Step.Model/DTOModels/DTOProcessDataModel.cs index 739fcffe..592ce9fa 100644 --- a/Step.Model/DTOModels/DTOProcessDataModel.cs +++ b/Step.Model/DTOModels/DTOProcessDataModel.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; using System.Linq; -using static CMS_CORE_Library.DataStructures; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels { diff --git a/Step.Model/DTOModels/DTOQueueModel.cs b/Step.Model/DTOModels/DTOQueueModel.cs index 4b0586b3..30aa3887 100644 --- a/Step.Model/DTOModels/DTOQueueModel.cs +++ b/Step.Model/DTOModels/DTOQueueModel.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using static CMS_CORE_Library.DataStructures; -using static Step.Model.Constants; +using static Step.Model.Constants; namespace Step.Model.DTOModels { @@ -14,7 +8,7 @@ namespace Step.Model.DTOModels public string PartProgramName { get; set; } - public int Reps { get; set; } + public int Reps { get; set; } public int RemainingReps { get; set; } @@ -36,7 +30,7 @@ namespace Step.Model.DTOModels if (Reps != item.Reps) return false; - + if (RemainingReps != item.RemainingReps) return false; @@ -46,4 +40,4 @@ namespace Step.Model.DTOModels return true; } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/JobModels/DTOGenericParamModel.cs b/Step.Model/DTOModels/JobModels/DTOGenericParamModel.cs index 7bc3f4ec..5b889381 100644 --- a/Step.Model/DTOModels/JobModels/DTOGenericParamModel.cs +++ b/Step.Model/DTOModels/JobModels/DTOGenericParamModel.cs @@ -1,8 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Step.Model.DTOModels.JobModels { @@ -17,4 +14,4 @@ namespace Step.Model.DTOModels.JobModels Images = new List(); } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/JobModels/DTOImageParamModel.cs b/Step.Model/DTOModels/JobModels/DTOImageParamModel.cs index 25524b03..c01d8eb0 100644 --- a/Step.Model/DTOModels/JobModels/DTOImageParamModel.cs +++ b/Step.Model/DTOModels/JobModels/DTOImageParamModel.cs @@ -1,14 +1,8 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Step.Model.DTOModels.JobModels +namespace Step.Model.DTOModels.JobModels { public class DTOImageParamModel { public string Name; public string Base64; } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/JobModels/DTOJobCustomParamModel.cs b/Step.Model/DTOModels/JobModels/DTOJobCustomParamModel.cs index e6ba277f..797f55a4 100644 --- a/Step.Model/DTOModels/JobModels/DTOJobCustomParamModel.cs +++ b/Step.Model/DTOModels/JobModels/DTOJobCustomParamModel.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Collections.Generic; namespace Step.Model.DTOModels.JobModels { @@ -18,4 +14,4 @@ namespace Step.Model.DTOModels.JobModels SelectionList = new List(); } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/JobModels/DTOJobModel.cs b/Step.Model/DTOModels/JobModels/DTOJobModel.cs index c885fb21..863ef5a5 100644 --- a/Step.Model/DTOModels/JobModels/DTOJobModel.cs +++ b/Step.Model/DTOModels/JobModels/DTOJobModel.cs @@ -1,8 +1,4 @@ using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Step.Model.DTOModels.JobModels { @@ -18,4 +14,4 @@ namespace Step.Model.DTOModels.JobModels Metadata = new DTOMetadataModel(); } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/JobModels/DTOMetadataFieldsModel.cs b/Step.Model/DTOModels/JobModels/DTOMetadataFieldsModel.cs index 248b3ffc..c7d94987 100644 --- a/Step.Model/DTOModels/JobModels/DTOMetadataFieldsModel.cs +++ b/Step.Model/DTOModels/JobModels/DTOMetadataFieldsModel.cs @@ -1,8 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Step.Model.DTOModels.JobModels { @@ -19,4 +16,4 @@ namespace Step.Model.DTOModels.JobModels Customs = new List(); } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/JobModels/DTOMetadataModel.cs b/Step.Model/DTOModels/JobModels/DTOMetadataModel.cs index 7a0db8a7..c44563a1 100644 --- a/Step.Model/DTOModels/JobModels/DTOMetadataModel.cs +++ b/Step.Model/DTOModels/JobModels/DTOMetadataModel.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Collections.Generic; namespace Step.Model.DTOModels.JobModels { @@ -19,4 +15,4 @@ namespace Step.Model.DTOModels.JobModels Customs = new List(); } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/ToolModels/DTOEdgeModel.cs b/Step.Model/DTOModels/ToolModels/DTOEdgeModel.cs index 0baae4d0..10c26698 100644 --- a/Step.Model/DTOModels/ToolModels/DTOEdgeModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTOEdgeModel.cs @@ -1,6 +1,6 @@ -using System.Collections.Generic; +using CMS_CORE_Library.Models; +using System.Collections.Generic; using System.ComponentModel.DataAnnotations; -using static CMS_CORE_Library.DataStructures; namespace Step.Model.DTOModels.ToolModels { diff --git a/Step.Model/DTOModels/ToolModels/DTOMagazineStatusModel.cs b/Step.Model/DTOModels/ToolModels/DTOMagazineStatusModel.cs index fc3e8a69..585dc9c0 100644 --- a/Step.Model/DTOModels/ToolModels/DTOMagazineStatusModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTOMagazineStatusModel.cs @@ -1,4 +1,5 @@ -using static CMS_CORE_Library.DataStructures; +using CMS_CORE_Library.Models; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels.ToolModels { diff --git a/Step.Model/DTOModels/ToolModels/DTONcShankModel.cs b/Step.Model/DTOModels/ToolModels/DTONcShankModel.cs index 5bcf91c3..019c771d 100644 --- a/Step.Model/DTOModels/ToolModels/DTONcShankModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTONcShankModel.cs @@ -1,10 +1,6 @@ using Step.Model.DatabaseModels; -using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Step.Model.DTOModels.ToolModels { @@ -80,4 +76,4 @@ namespace Step.Model.DTOModels.ToolModels }; } } -} +} \ No newline at end of file diff --git a/Step.Model/DTOModels/ToolModels/DTONcToolModel.cs b/Step.Model/DTOModels/ToolModels/DTONcToolModel.cs index 2094e45e..442ee711 100644 --- a/Step.Model/DTOModels/ToolModels/DTONcToolModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTONcToolModel.cs @@ -1,8 +1,7 @@ -using Step.Model.DatabaseModels; -using System; +using CMS_CORE_Library.Models; +using Step.Model.DatabaseModels; using System.Collections; using System.ComponentModel.DataAnnotations; -using static CMS_CORE_Library.DataStructures; namespace Step.Model.DTOModels.ToolModels { diff --git a/Step.Model/DTOModels/ToolModels/DTOShankModel.cs b/Step.Model/DTOModels/ToolModels/DTOShankModel.cs index 2c12f73c..3dc7e1b0 100644 --- a/Step.Model/DTOModels/ToolModels/DTOShankModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTOShankModel.cs @@ -1,7 +1,7 @@ -using System.Collections.Generic; +using CMS_CORE_Library.Models; +using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; -using static CMS_CORE_Library.DataStructures; namespace Step.Model.DTOModels.ToolModels { diff --git a/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs b/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs index cec33a4d..3ffe525d 100644 --- a/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs +++ b/Step.Model/DTOModels/ToolModels/DTOSiemensToolModel.cs @@ -1,5 +1,6 @@ -using System.ComponentModel.DataAnnotations; -using static CMS_CORE_Library.DataStructures; +using CMS_CORE_Library.Models; +using System.ComponentModel.DataAnnotations; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Model.DTOModels.ToolModels { diff --git a/Step.Model/DatabaseModels/NcFamilyModel.cs b/Step.Model/DatabaseModels/NcFamilyModel.cs index 307f22d5..3238fbcd 100644 --- a/Step.Model/DatabaseModels/NcFamilyModel.cs +++ b/Step.Model/DatabaseModels/NcFamilyModel.cs @@ -1,7 +1,7 @@ -using System.Collections.Generic; +using CMS_CORE_Library.Models; +using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using static CMS_CORE_Library.DataStructures; namespace Step.Model.DatabaseModels { diff --git a/Step.Model/DatabaseModels/NcMagazinePositionModel.cs b/Step.Model/DatabaseModels/NcMagazinePositionModel.cs index f020eeb4..1f651fb0 100644 --- a/Step.Model/DatabaseModels/NcMagazinePositionModel.cs +++ b/Step.Model/DatabaseModels/NcMagazinePositionModel.cs @@ -1,6 +1,8 @@ -using System.ComponentModel.DataAnnotations; +using System; +using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using static CMS_CORE_Library.DataStructures; +using CMS_CORE_Library.Models; +using static CMS_CORE_Library.Models.NcMagazinePositionModel; namespace Step.Model.DatabaseModels { diff --git a/Step.Model/DatabaseModels/NcShankModel.cs b/Step.Model/DatabaseModels/NcShankModel.cs index 43ec5582..3acf5ef8 100644 --- a/Step.Model/DatabaseModels/NcShankModel.cs +++ b/Step.Model/DatabaseModels/NcShankModel.cs @@ -1,7 +1,8 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using static CMS_CORE_Library.DataStructures; +using CMS_CORE_Library.Models; namespace Step.Model.DatabaseModels { diff --git a/Step.Model/DatabaseModels/NcToolModel.cs b/Step.Model/DatabaseModels/NcToolModel.cs index e0444ef1..3617bc1c 100644 --- a/Step.Model/DatabaseModels/NcToolModel.cs +++ b/Step.Model/DatabaseModels/NcToolModel.cs @@ -1,6 +1,6 @@ -using System.ComponentModel.DataAnnotations; +using CMS_CORE_Library.Models; +using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using static CMS_CORE_Library.DataStructures; namespace Step.Model.DatabaseModels { diff --git a/Step.NC/NcHandler.cs b/Step.NC/NcHandler.cs index 8e34af15..8c0b332f 100644 --- a/Step.NC/NcHandler.cs +++ b/Step.NC/NcHandler.cs @@ -1,11 +1,13 @@ -using CMS_CORE; -using CMS_CORE.Demo; -using CMS_CORE.Fanuc; -using CMS_CORE.Osai; -using CMS_CORE.Siemens; +using CMS_CORE_Library; +using CMS_CORE_Library.Demo; +using CMS_CORE_Library.Fanuc; +using CMS_CORE_Library.Models; +using CMS_CORE_Library.Osai; +using CMS_CORE_Library.Siemens; using Step.Database.Controllers; using Step.Model.DatabaseModels; using Step.Model.DTOModels; +using Step.Model.DTOModels.JobModels; using Step.Model.DTOModels.MaintenanceModels; using Step.Model.DTOModels.ToolModels; using Step.Utils; @@ -15,17 +17,17 @@ using System.Data.Entity; using System.Globalization; using System.IO; using System.Linq; -using static CMS_CORE_Library.DataStructures; +using static CMS_CORE_Library.Models.DataStructures; using static Step.Config.ServerConfig; -using static Step.Model.Constants; using static Step.Database.Controllers.QueueController; +using static Step.Model.Constants; namespace Step.NC { public class NcHandler : IDisposable { public Nc numericalControl; - + public NcHandler() { // Choose NC @@ -91,7 +93,7 @@ namespace Step.NC StreamReader fileRead = new StreamReader(path); int count = 0; string line = ""; - + fileInfo = new InfoFile() { Name = fileData.Name, @@ -223,7 +225,7 @@ namespace Step.NC public CmsError UploadPartProgramAndAddToQueue(string localPath, string fileName, int reps, out DTOQueueModel queueItem) { queueItem = new DTOQueueModel(); - + // Get selectedProcess id ushort selectedProcess = 0; CmsError cmsError = numericalControl.PROC_RSelectedProcess(ref selectedProcess); @@ -248,7 +250,6 @@ namespace Step.NC // Add new process to PartProgramQueue[selectedProcess].Add(queueItem); - using (QueueController queueController = new QueueController()) { queueController.UpdateQueue(); @@ -257,6 +258,13 @@ namespace Step.NC return cmsError; } + public CmsError UploadJob(string path) + { + DTOJobModel jobData = SupportFunctions.UnpackJobAndReadMetadata(path); + + return NO_ERROR; + } + public CmsError UpdateQueue() { // Get selectedProcess id @@ -264,7 +272,7 @@ namespace Step.NC CmsError cmsError = numericalControl.FILES_RQueueData(ref queueData); - foreach(var item in queueData) + foreach (var item in queueData) { if (!QueueRunningIndexes.ContainsKey(item.ProcessId)) QueueRunningIndexes.Add(item.ProcessId, 0); @@ -303,8 +311,8 @@ namespace Step.NC } } } - - // Check if queue exists for the process + + // Check if queue exists for the process if (PartProgramQueue.ContainsKey(item.ProcessId) && PartProgramQueue[item.ProcessId].ElementAtOrDefault(QueueRunningIndexes[item.ProcessId]) != null) { // Set status based on queue status @@ -317,16 +325,16 @@ namespace Step.NC if (item.Status == QUEUE_STATUS.WAITING_OPERATOR) PartProgramQueue[item.ProcessId][QueueRunningIndexes[item.ProcessId]].Status = QUEUE_ITEM_STATUS.WAITING_OPERATOR; } - } + } // Update data //using (QueueController queueController = new QueueController()) - //{ + //{ // queueController.UpdateQueue(); //} return NO_ERROR; } - + public CmsError GetSelectedProcessQueue(out List queueList) { queueList = new List(); @@ -396,15 +404,15 @@ namespace Step.NC return INCORRECT_PARAMETERS_ERROR; var item = PartProgramQueue[processId][itemId]; - // Remove item in the old positions + // Remove item in the old positions PartProgramQueue[processId].RemoveAt(itemId); // Add in the new position PartProgramQueue[processId].Insert(newIndex, item); - + // Fix new ids for (int i = 0; i < PartProgramQueue[processId].Count(); i++) PartProgramQueue[processId][i].Id = i + 1; - + using (QueueController queueController = new QueueController()) queueController.UpdateQueueIdsAndSave(processId); @@ -456,7 +464,6 @@ namespace Step.NC // Update database data using (QueueController queueController = new QueueController()) queueController.UpdateQueueIdsAndSave(processId); - return NO_ERROR; } @@ -466,7 +473,7 @@ namespace Step.NC // Check if there is a queue if (PartProgramQueue.ContainsKey(processId)) PartProgramQueue[processId] = new List(); - + // Update db using (QueueController queueController = new QueueController()) queueController.UpdateQueue(); @@ -1292,7 +1299,7 @@ namespace Step.NC config.ToolsConfiguration = config.ToolsConfiguration.Concat(config.FamiliesConfiguration.FamilyReadOnlyConfiguration).ToList(); } - if(!ToolManagerConfig.OffsetOpt) + if (!ToolManagerConfig.OffsetOpt) config.OffsetOptionActive = false; if (!ToolManagerConfig.OffsetOpt) @@ -1443,7 +1450,7 @@ namespace Step.NC public CmsError SetActiveScreen(short screen) { // Set to true power on data by id - return numericalControl.NC_SetScreenVisible((Nc.SCREEN_PAGE) screen); + return numericalControl.NC_SetScreenVisible((Nc.SCREEN_PAGE)screen); } #endregion Write data @@ -1628,7 +1635,6 @@ namespace Step.NC { DbNcToolModel ncTool = toolsManager.AddTool(tool); - if (!ToolManagerConfig.OffsetOpt) { CmsError cmsError = UpdateToolOffsetId(ncTool.ToolId, 1, ncTool.ToolId, out DTONcToolModel toolWithOffset); @@ -1640,7 +1646,6 @@ namespace Step.NC GetToolData(ncTool, ref dtoTool); - return NO_ERROR; } } diff --git a/Step/Controllers/SignalR/NcHub.cs b/Step/Controllers/SignalR/NcHub.cs index 6f8d3cd4..9a573766 100644 --- a/Step/Controllers/SignalR/NcHub.cs +++ b/Step/Controllers/SignalR/NcHub.cs @@ -1,10 +1,10 @@ -using Microsoft.AspNet.SignalR; +using CMS_CORE_Library.Models; +using Microsoft.AspNet.SignalR; using Step.Attributes; using Step.NC; using System.Collections.Generic; using System.Threading.Tasks; using TeamDev.SDK.MVVM; -using static CMS_CORE_Library.DataStructures; using static Step.Config.ServerConfig; using static Step.Model.Constants; using static Step.Model.Constants.FUNCTIONALITY_NAMES; diff --git a/Step/Controllers/WebApi/ConfigurationController.cs b/Step/Controllers/WebApi/ConfigurationController.cs index 0605e877..5cd2d144 100644 --- a/Step/Controllers/WebApi/ConfigurationController.cs +++ b/Step/Controllers/WebApi/ConfigurationController.cs @@ -1,12 +1,11 @@ -using Step.Database.Controllers; +using CMS_CORE_Library.Models; +using Step.Database.Controllers; using Step.Model.DTOModels; using Step.NC; using System.Collections.Generic; using System.Linq; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; using static Step.Config.ServerConfig; -using static Step.Model.Constants; namespace Step.Controllers.WebApi { diff --git a/Step/Controllers/WebApi/LanguageController.cs b/Step/Controllers/WebApi/LanguageController.cs index ecc41de6..8c43ae29 100644 --- a/Step/Controllers/WebApi/LanguageController.cs +++ b/Step/Controllers/WebApi/LanguageController.cs @@ -1,9 +1,10 @@ -using Step.Model.DTOModels; +using CMS_CORE_Library.Models; +using Step.Model.DTOModels; using Step.NC; using System.Collections.Generic; using System.Linq; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; +using static CMS_CORE_Library.Models.DataStructures; using static Step.Config.ServerConfig; using static Step.Model.Constants; using static Step.Utils.LanguageController; diff --git a/Step/Controllers/WebApi/MaintenanceController.cs b/Step/Controllers/WebApi/MaintenanceController.cs index 3c3074cb..13c33a84 100644 --- a/Step/Controllers/WebApi/MaintenanceController.cs +++ b/Step/Controllers/WebApi/MaintenanceController.cs @@ -1,4 +1,5 @@ -using Newtonsoft.Json; +using CMS_CORE_Library.Models; +using Newtonsoft.Json; using Step.Database.Controllers; using Step.Model.DatabaseModels; using Step.Model.DTOModels.MaintenanceModels; @@ -16,7 +17,6 @@ using System.Threading; using System.Threading.Tasks; using System.Web; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; using static Step.Config.ServerConfig; using static Step.Model.Constants; diff --git a/Step/Controllers/WebApi/NcApiController.cs b/Step/Controllers/WebApi/NcApiController.cs index 35d8f189..26b5d266 100644 --- a/Step/Controllers/WebApi/NcApiController.cs +++ b/Step/Controllers/WebApi/NcApiController.cs @@ -1,8 +1,8 @@ -using Step.Model.DTOModels; +using CMS_CORE_Library.Models; +using Step.Model.DTOModels; using Step.NC; using System.Globalization; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; using static Step.Model.Constants; namespace Step.Controllers.WebApi diff --git a/Step/Controllers/WebApi/NcFileController.cs b/Step/Controllers/WebApi/NcFileController.cs index 9f56d018..8d7bce5b 100644 --- a/Step/Controllers/WebApi/NcFileController.cs +++ b/Step/Controllers/WebApi/NcFileController.cs @@ -10,10 +10,11 @@ using static Step.Model.Constants; using System.Text; using System.Threading.Tasks; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; using System.Linq; using static Step.Config.ServerConfig; using System.ComponentModel.DataAnnotations; +using CMS_CORE_Library.Models; +using static CMS_CORE_Library.Models.DataStructures; namespace Step.Controllers.WebApi { diff --git a/Step/Controllers/WebApi/NcToolManagerController.cs b/Step/Controllers/WebApi/NcToolManagerController.cs index 3d1b8d69..5cb64ff7 100644 --- a/Step/Controllers/WebApi/NcToolManagerController.cs +++ b/Step/Controllers/WebApi/NcToolManagerController.cs @@ -1,4 +1,5 @@ -using Step.Database.Controllers; +using CMS_CORE_Library.Models; +using Step.Database.Controllers; using Step.Model.DatabaseModels; using Step.Model.DTOModels.ToolModels; using Step.NC; @@ -7,7 +8,6 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; using static Step.Config.ServerConfig; using static Step.Model.Constants; diff --git a/Step/Controllers/WebApi/SiemensToolManagerController.cs b/Step/Controllers/WebApi/SiemensToolManagerController.cs index 723c2664..172293c9 100644 --- a/Step/Controllers/WebApi/SiemensToolManagerController.cs +++ b/Step/Controllers/WebApi/SiemensToolManagerController.cs @@ -1,4 +1,5 @@ -using Step.Model.DatabaseModels; +using CMS_CORE_Library.Models; +using Step.Model.DatabaseModels; using Step.Model.DTOModels.ToolModels; using Step.NC; using System; @@ -6,7 +7,6 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Web.Http; -using static CMS_CORE_Library.DataStructures; namespace Step.Controllers.WebApi {