Files for dotnet framework / EAF
This commit is contained in:
@ -16,9 +16,7 @@ namespace Adaptation.FileHandlers.DEP08SIASM;
|
||||
public class FileRead : Shared.FileRead, IFileRead
|
||||
{
|
||||
|
||||
private readonly bool _IsDummy;
|
||||
private readonly bool _IsXToAPC;
|
||||
private readonly bool _IsXToIQS;
|
||||
private readonly bool _IsXToSPaCe;
|
||||
private readonly bool _IsXToSPaCeVillach;
|
||||
private readonly Dictionary<string, string> _CellNames;
|
||||
@ -35,9 +33,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
throw new Exception(cellInstanceConnectionName);
|
||||
if (!_IsDuplicator)
|
||||
throw new Exception(cellInstanceConnectionName);
|
||||
_IsDummy = _Hyphens == (int)Hyphen.IsDummy;
|
||||
_IsXToAPC = _Hyphens == (int)Hyphen.IsXToAPC;
|
||||
_IsXToIQS = _Hyphens == (int)Hyphen.IsXToIQS;
|
||||
_CellNames = new Dictionary<string, string>();
|
||||
_IsXToSPaCe = _Hyphens == (int)Hyphen.IsXToSPaCe;
|
||||
_IsXToSPaCeVillach = _Hyphens == (int)Hyphen.IsXToSPaCeVillach;
|
||||
|
@ -1,10 +1,4 @@
|
||||
using Adaptation.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace Adaptation.FileHandlers.DEP08SIASM;
|
||||
namespace Adaptation.FileHandlers.DEP08SIASM;
|
||||
|
||||
public class ProcessData
|
||||
{
|
||||
|
@ -7,9 +7,10 @@ using FFMpegCore;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using System.Text.Json;
|
||||
using System.Threading;
|
||||
|
||||
namespace Adaptation.FileHandlers.DownloadJpegFile;
|
||||
|
||||
@ -17,6 +18,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
{
|
||||
|
||||
private readonly Timer _Timer;
|
||||
private readonly string _FFmpegFileName;
|
||||
private readonly string _StaticFileServer;
|
||||
|
||||
public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, bool useCyclicalForDescription, bool isEAFHosted) :
|
||||
@ -32,6 +34,11 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
if (_IsDuplicator)
|
||||
throw new Exception(cellInstanceConnectionName);
|
||||
_StaticFileServer = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, string.Concat("CellInstance.", cellInstanceName, ".StaticFileServer"));
|
||||
string entryAssemblyLocationDirectory = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
|
||||
string ffmpegFileName = Path.Combine(entryAssemblyLocationDirectory, "ffmpeg.dll");
|
||||
_FFmpegFileName = Path.Combine(entryAssemblyLocationDirectory, "ffmpeg.exe");
|
||||
if (File.Exists(ffmpegFileName) && !File.Exists(_FFmpegFileName))
|
||||
File.Copy(ffmpegFileName, _FFmpegFileName);
|
||||
if (!Debugger.IsAttached && fileConnectorConfiguration.PreProcessingMode != FileConnectorConfiguration.PreProcessingModeEnum.Process)
|
||||
_Timer = new Timer(Callback, null, (int)(fileConnectorConfiguration.FileScanningIntervalInSeconds * 1000), Timeout.Infinite);
|
||||
else
|
||||
@ -121,11 +128,19 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
{
|
||||
if (string.IsNullOrEmpty(_StaticFileServer))
|
||||
throw new Exception();
|
||||
_ = FFMpegArguments
|
||||
.FromUrlInput(new Uri(string.Concat("rtsp://", _StaticFileServer, '/', _FileConnectorConfiguration.SourceDirectoryCloaking)))
|
||||
.OutputToFile(Path.Combine(_FileConnectorConfiguration.TargetFileLocation, $"{_CellInstanceName}_{DateTime.Now.Ticks}{_FileConnectorConfiguration.TargetFileName}"))
|
||||
.ProcessSynchronously(throwOnError: false);
|
||||
//FFMpeg.Snapshot(inputPath, outputPath, new Size(200, 400), TimeSpan.FromMinutes(1));
|
||||
string fileName = $"{_CellInstanceName}_{DateTime.Now.Ticks}{_FileConnectorConfiguration.TargetFileName}";
|
||||
string destFileName = Path.Combine(_FileConnectorConfiguration.TargetFileLocation, fileName);
|
||||
string sourceFileName = Path.Combine(_FileConnectorConfiguration.SourceFileLocation, fileName);
|
||||
if (!File.Exists(_FFmpegFileName))
|
||||
File.WriteAllText(Path.ChangeExtension(destFileName, ".err"), $"<{_FFmpegFileName}> doesn't exits!");
|
||||
else
|
||||
{
|
||||
_ = FFMpegArguments
|
||||
.FromUrlInput(new Uri(string.Concat("rtsp://", _StaticFileServer, '/', _FileConnectorConfiguration.SourceDirectoryCloaking)))
|
||||
.OutputToFile(sourceFileName)
|
||||
.ProcessSynchronously(throwOnError: false);
|
||||
File.Move(sourceFileName, destFileName);
|
||||
}
|
||||
}
|
||||
|
||||
private void Callback(object state)
|
||||
|
@ -1,304 +0,0 @@
|
||||
//using Adaptation.Helpers;
|
||||
//using Adaptation.Shared;
|
||||
//using Adaptation.Shared.Deposition;
|
||||
//using log4net;
|
||||
//using System;
|
||||
//using System.Collections.Generic;
|
||||
//using System.IO;
|
||||
//using System.Linq;
|
||||
//using System.Text;
|
||||
//using System.Text.Json;
|
||||
//using System.Threading;
|
||||
|
||||
//namespace Adaptation.FileHandlers
|
||||
//{
|
||||
|
||||
// public partial class FileRead : ILogic
|
||||
// {
|
||||
|
||||
// private ConfigData _ConfigData;
|
||||
|
||||
// public FileRead()
|
||||
// {
|
||||
// Logistics = new Logistics();
|
||||
// _Log = LogManager.GetLogger(typeof(FileRead));
|
||||
// }
|
||||
|
||||
// public ILogic ShallowCopy() => (ILogic)MemberwiseClone();
|
||||
|
||||
// public void WaitForThread() => WaitForThread(thread: null, threadExceptions: null);
|
||||
|
||||
// public Tuple<string, ConfigDataBase> GetOpenInsightTuple()
|
||||
// {
|
||||
// Tuple<string, ConfigDataBase> results = new(_ConfigData.OpenInsightGaNViewer, _ConfigData);
|
||||
// return results;
|
||||
// }
|
||||
|
||||
// public Tuple<string, JsonElement?, List<FileInfo>> GetExtractResult(string reportFullPath, string eventName)
|
||||
// {
|
||||
// Tuple<string, JsonElement?, List<FileInfo>> results;
|
||||
// _FileParameter.Clear();
|
||||
// DateTime dateTime = DateTime.Now;
|
||||
// if (_ConfigData.IsEvent && _ConfigData.Duplicator is null)
|
||||
// results = GetExtractResult(reportFullPath);
|
||||
// else if (_ConfigData.Duplicator.HasValue)
|
||||
// results = GetDuplicatorExtractResult(reportFullPath, dateTime);
|
||||
// else
|
||||
// {
|
||||
// results = new Tuple<string, JsonElement?, List<FileInfo>>(string.Empty, null, new List<FileInfo>());
|
||||
// SupportExtractResult(reportFullPath);
|
||||
// }
|
||||
// if (results.Item2 is null)
|
||||
// results = new Tuple<string, JsonElement?, List<FileInfo>>(results.Item1, JsonSerializer.Deserialize<JsonElement>("[]"), results.Item3);
|
||||
// int count = results.Item2.Value.GetArrayLength();
|
||||
// if (count > 0 && _ConfigData.EafHosted)
|
||||
// WritePDSF(results.Item2.Value);
|
||||
// UpdateLastTicksDuration(DateTime.Now.Ticks - dateTime.Ticks);
|
||||
// return results;
|
||||
// }
|
||||
|
||||
// private Tuple<string, JsonElement?, List<FileInfo>> GetExtractResult(string reportFullPath)
|
||||
// {
|
||||
// Tuple<string, JsonElement?, List<FileInfo>> results = new(string.Empty, null, new List<FileInfo>());
|
||||
// FileInfo fileInfo = new(reportFullPath);
|
||||
// Logistics = new Logistics(ConfigData.NullData, _ConfigData.CellNames, _ConfigData.MesEntities, fileInfo, useSplitForMID: false);
|
||||
// SetFileParameterLotIDToLogisticsMID();
|
||||
// ProcessData processData = new(this, _ConfigData, results.Item3);
|
||||
// if (!processData.AnalysisTXTResults.Any() && !processData.AnalysisXMLResults.Any() && !processData.RunMeasurements.Any())
|
||||
// throw new Exception("No Data");
|
||||
// if (processData.AnalysisTXTResults.Any())
|
||||
// Logistics.MID = processData.AnalysisTXTResults[0].LotID;
|
||||
// else if (processData.RunMeasurements.Any())
|
||||
// {
|
||||
// if (!processData.RunMeasurements[0].MID.StartsWith(_ConfigData.FileConnectorConfiguration.SourceFileFilter.Substring(0, 2)))
|
||||
// Logistics.MID = _ConfigData.FileConnectorConfiguration.SourceFileFilter.Substring(0, 2);
|
||||
// else
|
||||
// Logistics.MID = processData.RunMeasurements[0].MID;
|
||||
// }
|
||||
// string reactor = _ConfigData.GetCurrentReactor(this);
|
||||
// if (string.IsNullOrEmpty(reactor))
|
||||
// throw new Exception("Unable to match Current Reactor");
|
||||
// Logistics.ProcessJobID = reactor;
|
||||
// if (processData.RunMeasurements.Any())
|
||||
// SetFileParameterLotIDToLogisticsMID();
|
||||
// results = processData.GetResults(this, _ConfigData, results.Item3);
|
||||
// return results;
|
||||
// }
|
||||
|
||||
// private Tuple<string, JsonElement?, List<FileInfo>> GetDuplicatorExtractResult(string reportFullPath, DateTime dateTime)
|
||||
// {
|
||||
// Tuple<string, JsonElement?, List<FileInfo>> results;
|
||||
// Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
|
||||
// Logistics = new Logistics(reportFullPath, pdsf.Item1);
|
||||
// SetFileParameterLotIDToLogisticsMID();
|
||||
// JsonElement pdsfBodyValues = ProcessDataStandardFormat.GetArray(pdsf);
|
||||
// results = new Tuple<string, JsonElement?, List<FileInfo>>(pdsf.Item1, pdsfBodyValues, new List<FileInfo>());
|
||||
// List<Duplicator.Description> processDataDescriptions = _ConfigData.GetProcessDataDescriptions(pdsfBodyValues);
|
||||
// Dictionary<Test, List<Duplicator.Description>> keyValuePairs = ProcessData.GetKeyValuePairs(_ConfigData, pdsfBodyValues, processDataDescriptions, extra: false);
|
||||
// bool isDummyRun = (ConfigData.DummyRuns.Any() && ConfigData.DummyRuns.ContainsKey(Logistics.JobID) && ConfigData.DummyRuns[Logistics.JobID].Any() && (from l in ConfigData.DummyRuns[Logistics.JobID] where l == Logistics.Sequence select 1).Any());
|
||||
// if (isDummyRun)
|
||||
// {
|
||||
// try
|
||||
// { File.SetLastWriteTime(reportFullPath, dateTime); }
|
||||
// catch (Exception) { }
|
||||
// }
|
||||
// bool isMock = _ConfigData.Duplicator.Value is ConfigData.Level.IsR69TXTAPCMock or ConfigData.Level.IsR71HealthCp2MgAPCMock or ConfigData.Level.IsR69TXTIQSMock or ConfigData.Level.IsR71XMLIQSMock;
|
||||
// if ((isDummyRun || _Configuration.FileScanningIntervalInSeconds > 0) && _ConfigData.Duplicator.Value != ConfigData.Level.IsArchive && !isMock)
|
||||
// {
|
||||
// string successDirectory;
|
||||
// string duplicateDirectory;
|
||||
// string[] segments = Path.GetFileNameWithoutExtension(reportFullPath).Split('_');
|
||||
// if (_ConfigData.Duplicator.Value != ConfigData.Level.IsXToAPC)
|
||||
// successDirectory = string.Empty;
|
||||
// else
|
||||
// {
|
||||
// successDirectory = string.Concat(Path.GetDirectoryName(_Configuration.TargetFileLocation), @"\ViewerPath");
|
||||
// if (!Directory.Exists(successDirectory))
|
||||
// _ = Directory.CreateDirectory(successDirectory);
|
||||
// }
|
||||
// if (_ConfigData.Duplicator.Value is ConfigData.Level.IsXToSPaCe or ConfigData.Level.IsXToSPaCeVillach)
|
||||
// duplicateDirectory = _Configuration.TargetFileLocation;
|
||||
// else
|
||||
// duplicateDirectory = string.Concat(_Configuration.TargetFileLocation, @"\", segments[0]);
|
||||
// if (segments.Length > 2)
|
||||
// duplicateDirectory = string.Concat(duplicateDirectory, @"-", segments[2]);
|
||||
// if (!Directory.Exists(duplicateDirectory))
|
||||
// _ = Directory.CreateDirectory(duplicateDirectory);
|
||||
// string logisticsSequence = Logistics.Sequence.ToString();
|
||||
// List<Tuple<IScopeInfo, string>> tuples = new();
|
||||
// string duplicateFile = string.Concat(duplicateDirectory, @"\", Path.GetFileName(reportFullPath));
|
||||
// if (isDummyRun || _ConfigData.Duplicator.Value != ConfigData.Level.IsXToArchive)
|
||||
// {
|
||||
// Test test;
|
||||
// List<Tuple<IScopeInfo, string>> linesCollection;
|
||||
// foreach (KeyValuePair<Test, List<Duplicator.Description>> keyValuePair in keyValuePairs)
|
||||
// {
|
||||
// test = keyValuePair.Key;
|
||||
// switch (test)
|
||||
// {
|
||||
// case Test.GRATXTCenter:
|
||||
// case Test.GRATXTEdge:
|
||||
// case Test.LogbookCAC:
|
||||
// case Test.GrowthRateXML:
|
||||
// if (_ConfigData.EafHosted)
|
||||
// {
|
||||
// if (_ConfigData.Duplicator.Value != ConfigData.Level.IsXToIQS || reportFullPath.EndsWith("_Health_Cp2Mg.pdsf"))
|
||||
// File.Copy(reportFullPath, duplicateFile, overwrite: true);
|
||||
// else
|
||||
// {
|
||||
// linesCollection = ProcessData.GetLines(this, _ConfigData, pdsfBodyValues, test);
|
||||
// foreach (Tuple<IScopeInfo, string> tuple in linesCollection)
|
||||
// tuples.Add(new Tuple<IScopeInfo, string>(tuple.Item1, tuple.Item2));
|
||||
// }
|
||||
// }
|
||||
// break;
|
||||
// default:
|
||||
// throw new Exception();
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// if (_ConfigData.Duplicator.Value != ConfigData.Level.IsXToArchive)
|
||||
// Shared0413(dateTime, isDummyRun, successDirectory, duplicateDirectory, tuples, duplicateFile);
|
||||
// else
|
||||
// {
|
||||
// string destinationDirectory = WriteScopeInfo(_ConfigData.ProgressPath, Logistics, dateTime, duplicateDirectory, tuples);
|
||||
// if (isDummyRun)
|
||||
// Shared0607(reportFullPath, duplicateDirectory, logisticsSequence, destinationDirectory);
|
||||
// }
|
||||
// }
|
||||
// return results;
|
||||
// }
|
||||
|
||||
// private void SupportExtractResult(string reportFullPath)
|
||||
// {
|
||||
// ConfigData.ConnectionAction connectionAction = _ConfigData.GetConnectionActionValue();
|
||||
// switch (connectionAction)
|
||||
// {
|
||||
// case ConfigData.ConnectionAction.MoveDLGFile:
|
||||
// case ConfigData.ConnectionAction.MoveDLGFileForParse:
|
||||
// case ConfigData.ConnectionAction.MoveTXTOrXMLFile:
|
||||
// case ConfigData.ConnectionAction.MoveXMLFile:
|
||||
// break;
|
||||
// case ConfigData.ConnectionAction.RenameTXTFile:
|
||||
// if (reportFullPath.Contains('#'))
|
||||
// {
|
||||
// string fourZeroHashTag = "40#";
|
||||
// string sixThreeHashTag = "63#";
|
||||
// string nineFiveHashTag = "95#";
|
||||
// string[] segments = Path.GetFileNameWithoutExtension(reportFullPath).Split('_');
|
||||
// if ((from l in segments where l != fourZeroHashTag && l != sixThreeHashTag && l != nineFiveHashTag select l).Any())
|
||||
// {
|
||||
// string wavelengthGroup;
|
||||
// string text = File.ReadAllText(reportFullPath);
|
||||
// if (text.Contains("wavelength 40"))
|
||||
// wavelengthGroup = "40#";
|
||||
// else if (text.Contains("wavelength 63"))
|
||||
// wavelengthGroup = "63#";
|
||||
// else if (text.Contains("wavelength 95"))
|
||||
// wavelengthGroup = "95#";
|
||||
// else
|
||||
// wavelengthGroup = "###";
|
||||
// StringBuilder stringBuilder = new();
|
||||
// for (int i = 0; i < segments.Length; i++)
|
||||
// {
|
||||
// _ = stringBuilder.Append(segments[i]).Append('_');
|
||||
// if (i == 2)
|
||||
// _ = stringBuilder.Append(wavelengthGroup).Append('_');
|
||||
// }
|
||||
// if (stringBuilder.Length > 0)
|
||||
// _ = stringBuilder.Remove(stringBuilder.Length - 1, 1);
|
||||
// string fileName = Path.Combine(Path.GetDirectoryName(reportFullPath), stringBuilder.ToString());
|
||||
// File.WriteAllText(fileName, text);
|
||||
// File.Delete(reportFullPath);
|
||||
// }
|
||||
// }
|
||||
// break;
|
||||
// case ConfigData.ConnectionAction.SplitCACFile:
|
||||
// ProcessData.SplitCACFile(_ConfigData, reportFullPath);
|
||||
// break;
|
||||
// case ConfigData.ConnectionAction.MoveCACFile:
|
||||
// FileInfo fileInfo = new(Path.Combine(_ConfigData.FileConnectorConfiguration.TargetFileLocation, Path.GetFileName(reportFullPath)));
|
||||
// if (fileInfo.Exists && new FileInfo(reportFullPath).LastWriteTime > fileInfo.LastWriteTime)
|
||||
// {
|
||||
// try
|
||||
// { File.Delete(fileInfo.FullName); }
|
||||
// catch (Exception) { }
|
||||
// Thread.Sleep(500);
|
||||
// }
|
||||
// break;
|
||||
// case ConfigData.ConnectionAction.WritePDSFFile:
|
||||
// string mesEntity = _ConfigData.CellName;
|
||||
// FileInfo sourceFileInfo = new(reportFullPath);
|
||||
// string extension = string.Concat(".", _ConfigData.FileConnectorConfiguration.TargetFileName.Split('.')[1]);
|
||||
// string ticks = string.Concat(_ConfigData.FileConnectorConfiguration.TargetFileLocation, @"\", sourceFileInfo.LastWriteTime.Ticks);
|
||||
// FileInfo pdsfFileInfo = new(string.Concat(_ConfigData.FileConnectorConfiguration.TargetFileLocation, @"\", mesEntity, "_", sourceFileInfo.LastWriteTime.ToString("yyMMddHHmmssfff"), "_dlg", extension));
|
||||
// if (pdsfFileInfo.Exists)
|
||||
// throw new Exception("Destination file already exists!");
|
||||
// string pdsfText = ProcessData.GetPDSFTextFromDLG(_ConfigData, mesEntity, sourceFileInfo, useSetpoint: false, writeFiles: false, fullDateTime: false, backFill: true);
|
||||
// File.WriteAllText(ticks, pdsfText);
|
||||
// File.SetLastWriteTime(ticks, sourceFileInfo.LastWriteTime);
|
||||
// File.Move(ticks, pdsfFileInfo.FullName);
|
||||
// break;
|
||||
// case ConfigData.ConnectionAction.RaiseCACFileEvent:
|
||||
// case ConfigData.ConnectionAction.RaiseTXTFileEvent:
|
||||
// case ConfigData.ConnectionAction.RaiseXMLFileEvent:
|
||||
// throw new Exception();
|
||||
// default:
|
||||
// throw new Exception();
|
||||
// }
|
||||
// }
|
||||
|
||||
// private void MoveArchive()
|
||||
// {
|
||||
// const int midLength = 7;
|
||||
// const int midSegment = 5;
|
||||
// const char midPadding = '0';
|
||||
// string destinationDirectory;
|
||||
// string logisticsSequence = Logistics.Sequence.ToString();
|
||||
// string group = Logistics.MID.PadLeft(midLength, midPadding).Substring(0, midSegment).PadRight(midLength, midPadding);
|
||||
// string rootDestinationDirectory = string.Concat(Path.GetDirectoryName(_Configuration.TargetFileLocation), @"\", Logistics.MesEntity);
|
||||
// string[] matchDirectories = new string[] { GetDirectoriesRecursively(rootDestinationDirectory, logisticsSequence).FirstOrDefault() };
|
||||
// if (matchDirectories.Length == 0 || string.IsNullOrEmpty(matchDirectories[0]))
|
||||
// matchDirectories = Directory.GetDirectories(rootDestinationDirectory, string.Concat('*', logisticsSequence, '*'), SearchOption.AllDirectories);
|
||||
// if ((matchDirectories is null) || matchDirectories.Length != 1)
|
||||
// throw new Exception("Didn't find directory by logistics sequence");
|
||||
// if (matchDirectories[0].Contains("_processing failed"))
|
||||
// destinationDirectory = string.Concat(rootDestinationDirectory, @"\", "_Process_Failed");
|
||||
// else if (matchDirectories[0].Contains("_in process"))
|
||||
// destinationDirectory = string.Concat(rootDestinationDirectory, @"\All_other_files_and_folders");
|
||||
// else if (matchDirectories[0].Contains("_processed"))
|
||||
// destinationDirectory = string.Concat(rootDestinationDirectory, @"\- Archive\", group);
|
||||
// else
|
||||
// throw new Exception();
|
||||
// if (!Directory.Exists(destinationDirectory))
|
||||
// _ = Directory.CreateDirectory(destinationDirectory);
|
||||
// string directoryName = Path.GetFileName(matchDirectories[0]);
|
||||
// if (directoryName != logisticsSequence)
|
||||
// throw new Exception("directoryName != logisticsSequence");
|
||||
// else
|
||||
// {
|
||||
// string sourceDirectoryName = Path.GetDirectoryName(matchDirectories[0]);
|
||||
// string destinationDirectoryName = string.Concat(destinationDirectory, @"\", Path.GetFileName(sourceDirectoryName));
|
||||
// if (destinationDirectoryName != sourceDirectoryName)
|
||||
// Directory.Move(sourceDirectoryName, destinationDirectoryName);
|
||||
// }
|
||||
// }
|
||||
|
||||
// public void Move(string reportFullPath, Tuple<string, JsonElement?, List<FileInfo>> extractResults, Exception exception = null)
|
||||
// {
|
||||
// Shared1872(reportFullPath, exception);
|
||||
// bool isErrorFile = exception is not null;
|
||||
// if (!isErrorFile && _ConfigData.Duplicator.HasValue)
|
||||
// {
|
||||
// if (_ConfigData.Duplicator.Value == ConfigData.Level.IsXToArchive)
|
||||
// Shared0192(reportFullPath);
|
||||
// else if (_ConfigData.EafHosted && _ConfigData.Duplicator.Value == ConfigData.Level.IsArchive)
|
||||
// MoveArchive();
|
||||
// if (_ConfigData.EafHosted && !string.IsNullOrEmpty(_ConfigData.ProgressPath))
|
||||
// CreateProgressDirectory(_ConfigData.ProgressPath, Logistics, (int?)_ConfigData.Duplicator, exceptionLines: null);
|
||||
// }
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
//}
|
@ -6,7 +6,6 @@ using Adaptation.Shared.Methods;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace Adaptation.FileHandlers.ToArchive;
|
||||
@ -113,9 +112,9 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
{
|
||||
if (dateTime == DateTime.MinValue)
|
||||
{ }
|
||||
Tuple<string, Test[], JsonElement[], List<FileInfo>> results = new(string.Empty, null, null, new List<FileInfo>());
|
||||
Tuple<string, Test[], JsonElement[], List<FileInfo>> results = new(string.Empty, null, null, new List<FileInfo>());
|
||||
Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
|
||||
_Logistics = new Logistics(reportFullPath, pdsf.Item1);
|
||||
_Logistics = new Logistics(reportFullPath, pdsf.Item1);
|
||||
SetFileParameterLotIDToLogisticsMID();
|
||||
return results;
|
||||
}
|
||||
|
@ -6,6 +6,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace Adaptation.FileHandlers.jpeg;
|
||||
@ -39,6 +40,29 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
throw new Exception(cellInstanceConnectionName);
|
||||
foreach (ModelObjectParameterDefinition modelObjectParameterDefinition in reactors)
|
||||
_Reactors.Add(modelObjectParameterDefinition.Name.Split('.')[1], modelObjectParameterDefinition.Value);
|
||||
string entryAssemblyLocationDirectory = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
|
||||
string x86 = Path.Combine(entryAssemblyLocationDirectory, "x86");
|
||||
if (!Directory.Exists(x86))
|
||||
_ = Directory.CreateDirectory(x86);
|
||||
string tessdata = Path.Combine(entryAssemblyLocationDirectory, "tessdata");
|
||||
if (!Directory.Exists(tessdata))
|
||||
_ = Directory.CreateDirectory(tessdata);
|
||||
string pdfttfSource = Path.Combine(entryAssemblyLocationDirectory, "pdf.ttf");
|
||||
string pdfttfDestination = Path.Combine(tessdata, Path.GetFileName(pdfttfSource));
|
||||
if (File.Exists(pdfttfSource) && !File.Exists(pdfttfDestination))
|
||||
File.Copy(pdfttfSource, pdfttfDestination);
|
||||
string tesseract41dllSource = Path.Combine(entryAssemblyLocationDirectory, "tesseract41.dll");
|
||||
string tesseract41dllDestination = Path.Combine(x86, Path.GetFileName(tesseract41dllSource));
|
||||
if (File.Exists(tesseract41dllSource) && !File.Exists(tesseract41dllDestination))
|
||||
File.Copy(tesseract41dllSource, tesseract41dllDestination);
|
||||
string engtraineddataSource = Path.Combine(entryAssemblyLocationDirectory, "eng.traineddata");
|
||||
string engtraineddataDestination = Path.Combine(tessdata, Path.GetFileName(engtraineddataSource));
|
||||
if (File.Exists(engtraineddataSource) && !File.Exists(engtraineddataDestination))
|
||||
File.Copy(engtraineddataSource, engtraineddataDestination);
|
||||
string leptonica1800dllSource = Path.Combine(entryAssemblyLocationDirectory, "leptonica-1.80.0.dll");
|
||||
string leptonica1800dllDestination = Path.Combine(x86, Path.GetFileName(leptonica1800dllSource));
|
||||
if (File.Exists(leptonica1800dllSource) && !File.Exists(leptonica1800dllDestination))
|
||||
File.Copy(leptonica1800dllSource, leptonica1800dllDestination);
|
||||
}
|
||||
|
||||
void IFileRead.Move(Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResults, Exception exception) => Move(extractResults, exception);
|
||||
|
@ -1,20 +1,13 @@
|
||||
using Adaptation.Eaf.Management.ConfigurationData.CellAutomation;
|
||||
using Adaptation.Ifx.Eaf.EquipmentConnector.File.Configuration;
|
||||
using Adaptation.Shared;
|
||||
using Adaptation.Shared.Deposition;
|
||||
using Adaptation.Shared.Methods;
|
||||
using log4net;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Imaging;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using Tesseract;
|
||||
|
||||
namespace Adaptation.FileHandlers.jpeg;
|
||||
@ -105,7 +98,7 @@ public class ProcessData : IProcessData
|
||||
|
||||
#pragma warning disable CA1416
|
||||
|
||||
private static (MemoryStream memoryStream, Color[]) Get(IFileRead fileRead, int thresHold, int endY, int endX, int startY, int startX)
|
||||
private static (MemoryStream memoryStream, Color[]) Get(IFileRead fileRead, int thresHold, int startX, int startY, int endX, int endY)
|
||||
{
|
||||
Color color;
|
||||
List<Color> colors = new();
|
||||
@ -147,7 +140,7 @@ public class ProcessData : IProcessData
|
||||
|
||||
#pragma warning restore CA1416
|
||||
|
||||
private static (MemoryStream, Color[]) Get(IFileRead fileRead, int thresHold) => Get(fileRead, thresHold, 68, 1559, 32, 1094);
|
||||
private static (MemoryStream, Color[]) Get(IFileRead fileRead, int thresHold) => Get(fileRead, thresHold, 330, 16, 400, 32);
|
||||
|
||||
private void Parse(IFileRead fileRead, List<FileInfo> fileInfoCollection)
|
||||
{
|
||||
|
Reference in New Issue
Block a user