Osai & Siemens loading
This commit is contained in:
@@ -393,7 +393,7 @@ namespace CMS_CORE_Library
|
||||
public static readonly string[] VALID_PP_FORMATS = { ".txt", ".cnc", ".ini" };
|
||||
public static readonly string[] VALID_IMAGE_FORMATS = { ".jpg", ".jpeg", ".png" };
|
||||
|
||||
public static readonly string IMAGES_PATH = @"C:/CMS/STEP/attachment/prg_images/";
|
||||
public static readonly string IMAGES_PATH = @"C:/CMS/STEP/pp_img/";
|
||||
|
||||
public const int USER_SOFTKEYS_NUMBER = 128;
|
||||
public const int NC_SOFTKEYS_NUMBER = 32;
|
||||
|
||||
@@ -1662,6 +1662,11 @@ namespace CMS_CORE.Demo
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath)
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_RActiveProgramData(int processId, ref ActiveProgramDataModel data)
|
||||
{
|
||||
// Check if the NC Demo is Connected
|
||||
|
||||
@@ -1577,6 +1577,11 @@ namespace CMS_CORE.Fanuc
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath)
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_RProgramToFile(string partProgramPath, FileStream localFile)
|
||||
{
|
||||
string partProgramContent = "";
|
||||
@@ -1821,6 +1826,7 @@ namespace CMS_CORE.Fanuc
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#region Nc Tool Manager
|
||||
|
||||
public override CmsError TOOLS_RMagazineConfig(ref List<NcMagazineConfigModel> config)
|
||||
{
|
||||
return NO_ERROR;
|
||||
@@ -1850,6 +1856,7 @@ namespace CMS_CORE.Fanuc
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WUpdateTools(List<NcToolModel> list)
|
||||
{
|
||||
return NO_ERROR;
|
||||
@@ -1859,8 +1866,7 @@ namespace CMS_CORE.Fanuc
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public override CmsError TOOLS_WUpdateShanks(List<NcShankModel> list)
|
||||
{
|
||||
return NO_ERROR;
|
||||
@@ -1880,6 +1886,7 @@ namespace CMS_CORE.Fanuc
|
||||
{
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WRestoreBackup()
|
||||
{
|
||||
return NO_ERROR;
|
||||
|
||||
@@ -1266,6 +1266,8 @@ namespace CMS_CORE
|
||||
|
||||
public abstract CmsError FILES_WDeactivateProgram(int processId);
|
||||
|
||||
public abstract CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath);
|
||||
|
||||
/**
|
||||
* <summary>Read active program on <paramref name="processId"/> data
|
||||
* <para>
|
||||
|
||||
@@ -17,6 +17,7 @@ using static CMS_CORE.Nc;
|
||||
using static CMS_CORE.Osai.MEMORY_ADDRESS;
|
||||
using static CMS_CORE_Library.DataStructures;
|
||||
using static CMS_CORE_Library.ToolConfigurations;
|
||||
using static CMS_CORE.Utils.Nc_Utils;
|
||||
|
||||
namespace CMS_CORE.Osai
|
||||
{
|
||||
@@ -39,9 +40,8 @@ namespace CMS_CORE.Osai
|
||||
|
||||
// private const string TOOL_MANAGER_DIRECTORY_PATH = @"TEST\\SYS\\STEP\\";
|
||||
private const string TOOL_MANAGER_DIRECTORY_PATH = @"test\OEM\CMS\SYS\STEP\";
|
||||
private const string PROGRAM_DIRECTORY_PATH = @"CAMBIO\";
|
||||
private const string PROGRAM_UPLOAD_DIRECTORY_PATH = @"CAMBIO\UPLOADED_PP\";
|
||||
private const string LOCAL_IMAGES_DIRECTORY_PATH = @"C:\CMS\STEP\IMGPP\";
|
||||
private const string NC_PROGRAM_PATH = @"CAMBIO\";
|
||||
private const string NC_PROGRAM_UPLOAD_PATH = @"CAMBIO\UPLOADED_PP\";
|
||||
private static List<string> EXT_PP = new List<string>() { "", "TXT", "CNC", "INI" };
|
||||
private static List<string> EXT_IMG = new List<string>() { "PNG", "JPG", "JPEG" };
|
||||
private const uint MAX_ROWS_FILE_PREVIEW = 10; // massimo 10 righe
|
||||
@@ -1949,7 +1949,7 @@ namespace CMS_CORE.Osai
|
||||
temppath = path;
|
||||
temppath = temppath.TrimStart('\\');
|
||||
|
||||
nReturn = OpenNC.LogFSFindFirst(PROGRAM_DIRECTORY_PATH + temppath + "\\*", out filesearch, out findHandler, out uint errorClass, out uint errorNum);
|
||||
nReturn = OpenNC.LogFSFindFirst(NC_PROGRAM_PATH + temppath + "\\*", out filesearch, out findHandler, out uint errorClass, out uint errorNum);
|
||||
|
||||
//If there's an error
|
||||
if (errorClass != 0 || errorNum != 0 || nReturn == 0)
|
||||
@@ -2004,28 +2004,13 @@ namespace CMS_CORE.Osai
|
||||
temppath = path;
|
||||
temppath = temppath.TrimStart('\\');
|
||||
|
||||
nReturn = OpenNC.LogFSFindFirst(PROGRAM_DIRECTORY_PATH + "\\" + temppath, out filesearch, out findHandler, out uint errorClass, out uint errorNum);
|
||||
|
||||
nReturn = OpenNC.LogFSFindFirst(NC_PROGRAM_PATH + "\\" + temppath, out filesearch, out findHandler, out uint errorClass, out uint errorNum);
|
||||
//If there's an error
|
||||
if (errorClass != 0 || errorNum != 0 || nReturn == 0)
|
||||
return GetNCError(errorClass, errorNum);
|
||||
|
||||
//Search the file, for infos
|
||||
if (findHandler != 0xFFFFFFFF)
|
||||
{
|
||||
//Setup the name
|
||||
fileInfo.Name = filesearch.FileName;
|
||||
fileInfo.PreviewBase64 = FindImageBase64String(IMAGES_PATH, fileInfo.Name);
|
||||
|
||||
//Setup the dates
|
||||
fileInfo.CreationDate = DateTime.FromFileTime((((long)filesearch.HighDateCreationTime) << 32) | filesearch.LowDateCreationTime);
|
||||
fileInfo.LastModDate = DateTime.FromFileTime((((long)filesearch.HighDateLastWriteTime) << 32) | filesearch.LowDateLastWriteTime);
|
||||
|
||||
//Read the program image
|
||||
err = FILE_PPImage(fileInfo.Name + "_" + fileInfo.CreationDate.Year + fileInfo.CreationDate.Month + fileInfo.CreationDate.Day + fileInfo.CreationDate.Hour + fileInfo.CreationDate.Minute + fileInfo.CreationDate.Second,
|
||||
ref fileInfo.PreviewBase64);
|
||||
if (err != NO_ERROR)
|
||||
return err;
|
||||
}
|
||||
nReturn = OpenNC.LogFSFindClose(findHandler, out errorClass, out errorNum);
|
||||
|
||||
//If there's an error
|
||||
@@ -2033,7 +2018,7 @@ namespace CMS_CORE.Osai
|
||||
return GetNCError(errorClass, errorNum);
|
||||
|
||||
//Read the program content
|
||||
err = FILES_RProgram(PROGRAM_DIRECTORY_PATH + "\\" + temppath, ref fileContent);
|
||||
err = FILES_RProgram(NC_PROGRAM_PATH + "\\" + temppath, ref fileContent);
|
||||
if (err != NO_ERROR)
|
||||
return err;
|
||||
|
||||
@@ -2066,12 +2051,12 @@ namespace CMS_CORE.Osai
|
||||
temppath = filePath;
|
||||
temppath = temppath.TrimStart('\\');
|
||||
|
||||
Console.WriteLine(PROGRAM_DIRECTORY_PATH + "\\" + temppath);
|
||||
Console.WriteLine(NC_PROGRAM_PATH + "\\" + temppath);
|
||||
ushort nReturn;
|
||||
try
|
||||
{
|
||||
// select PP (using empty string)
|
||||
nReturn = OpenNC.SelectPartProgramFromDrive((ushort)processId, PROGRAM_DIRECTORY_PATH + "\\" + temppath, out uint errorClass, out uint errorNum);
|
||||
nReturn = OpenNC.SelectPartProgramFromDrive((ushort)processId, NC_PROGRAM_PATH + "\\" + temppath, out uint errorClass, out uint errorNum);
|
||||
|
||||
//If there's an error launch exception
|
||||
if (errorClass != 0 || errorNum != 0 || nReturn == 0)
|
||||
@@ -2142,6 +2127,21 @@ namespace CMS_CORE.Osai
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath)
|
||||
{
|
||||
// Open file
|
||||
FileStream fileStream = new FileStream(localPath + "\\" + name, FileMode.Open);
|
||||
newFilePath = NC_PROGRAM_UPLOAD_PATH + "\\" + name;
|
||||
// Transfer file on NC
|
||||
CmsError cmsError = FILES_WProgramFromFile(NC_PROGRAM_UPLOAD_PATH + newFilePath, fileStream);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
fileStream.Close();
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_RProgramToFile(string partProgramPath, FileStream localFile)
|
||||
{
|
||||
string partProgramContent = "";
|
||||
@@ -2214,7 +2214,7 @@ namespace CMS_CORE.Osai
|
||||
|
||||
//Setup the name if is empty
|
||||
if (string.IsNullOrEmpty(partProgramPath))
|
||||
partProgramPath = PROGRAM_UPLOAD_DIRECTORY_PATH + localFile.Name;
|
||||
partProgramPath = NC_PROGRAM_UPLOAD_PATH + localFile.Name;
|
||||
|
||||
// Write/Overwrite Nc file
|
||||
return FILES_WProgram(partProgramPath, partProgramContent);
|
||||
@@ -3431,36 +3431,30 @@ namespace CMS_CORE.Osai
|
||||
}
|
||||
|
||||
|
||||
//Get Image files
|
||||
private CmsError FILE_PPImage(string PP_Name, ref string base64Image)
|
||||
{
|
||||
base64Image = "";
|
||||
|
||||
//Check if exists the directory
|
||||
if (!Directory.Exists(LOCAL_IMAGES_DIRECTORY_PATH))
|
||||
Directory.CreateDirectory(LOCAL_IMAGES_DIRECTORY_PATH);
|
||||
|
||||
//Check if exists the file
|
||||
DirectoryInfo DirToSearch = new DirectoryInfo(LOCAL_IMAGES_DIRECTORY_PATH);
|
||||
FileInfo[] filesInDir = DirToSearch.GetFiles(PP_Name + ".*");
|
||||
|
||||
foreach (FileInfo foundFile in filesInDir)
|
||||
{
|
||||
if(EXT_IMG.Contains(foundFile.Extension.TrimStart('.').ToUpper()))
|
||||
{
|
||||
|
||||
base64Image = "data:image/" + foundFile.Extension + ";base64," + Convert.ToBase64String(System.IO.File.ReadAllBytes(foundFile.FullName));
|
||||
break;
|
||||
}
|
||||
}
|
||||
////Get Image files
|
||||
//private CmsError FILE_PPImage(string PP_Name, ref string base64Image)
|
||||
//{
|
||||
// base64Image = "";
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
// //Check if exists the file
|
||||
// DirectoryInfo DirToSearch = new DirectoryInfo(IMAGES_PATH);
|
||||
// FileInfo[] filesInDir = DirToSearch.GetFiles(PP_Name + ".*");
|
||||
|
||||
|
||||
// foreach (FileInfo foundFile in filesInDir)
|
||||
// {
|
||||
// if(EXT_IMG.Contains(foundFile.Extension.TrimStart('.').ToUpper()))
|
||||
// {
|
||||
|
||||
// base64Image = "data:image/" + foundFile.Extension + ";base64," + Convert.ToBase64String(System.IO.File.ReadAllBytes(foundFile.FullName));
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
|
||||
// return NO_ERROR;
|
||||
//}
|
||||
|
||||
//Get Program Path without extension
|
||||
private string getFilepathWithoutExt(string path)
|
||||
private string GetFilepathWithoutExt(string path)
|
||||
{
|
||||
String name = path.Split('\\').LastOrDefault();
|
||||
String ext = name.Split('.').LastOrDefault();
|
||||
|
||||
@@ -111,6 +111,7 @@ namespace CMS_CORE.Siemens
|
||||
public static uint multitoolsNumber = 0;
|
||||
|
||||
public const string BASE_FILE_PATH = "//NC/";
|
||||
public const string NC_FILE_PATH = "MPF.DIR";
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1919,7 +1920,6 @@ namespace CMS_CORE.Siemens
|
||||
fileSvc.Select(selectedNode, processId);
|
||||
|
||||
return FILES_RActiveProgramData(processId, ref data);
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -1980,7 +1980,6 @@ namespace CMS_CORE.Siemens
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
|
||||
private IEnumerable<string> GetLinesFromString(string text)
|
||||
{
|
||||
string line;
|
||||
@@ -1992,6 +1991,20 @@ namespace CMS_CORE.Siemens
|
||||
}
|
||||
}
|
||||
}
|
||||
public override CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath)
|
||||
{
|
||||
// Open file
|
||||
FileStream fileStream = new FileStream(localPath + "\\" + name, FileMode.Open);
|
||||
newFilePath = NC_FILE_PATH + "/" + name;
|
||||
// Transfer file on NC
|
||||
CmsError cmsError = FILES_WProgramFromFile(BASE_FILE_PATH + newFilePath, fileStream);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
fileStream.Close();
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError FILES_CopyProgram(string partProgramPath, string newPartProgramPath, bool failIfExist)
|
||||
{
|
||||
@@ -3536,7 +3549,7 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
private void MagazineAction_OnChange(Guid guid, Item item, DataSvcStatus status)
|
||||
{
|
||||
if(Int32.TryParse(item.Value.ToString(), out int action))
|
||||
if (Int32.TryParse(item.Value.ToString(), out int action))
|
||||
switch (action)
|
||||
{
|
||||
case 1:
|
||||
|
||||
Reference in New Issue
Block a user