Delete SelfHost PackageReference
cellInstanceVersion.EdaConnection.PortNumber Convert before throwing the error CA1862 and GetWeekOfYear for WritePDSF Removed Open Insight API IFX Directory from Save dotnet_diagnostic Delete File if Exists yml ec fix net8.0
This commit is contained in:
@ -1,31 +0,0 @@
|
||||
#if NETFRAMEWORK && NET48
|
||||
using System.Web.Http;
|
||||
using System.Web.Http.Results;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
[Route("api/[controller]")]
|
||||
public class BarcodeController : System.Web.Http.ApiController
|
||||
{
|
||||
|
||||
#nullable enable
|
||||
|
||||
#pragma warning disable CA1822
|
||||
public OkNegotiatedContentResult<string> Get()
|
||||
#pragma warning restore CA1822
|
||||
{
|
||||
string result = "record";
|
||||
return Ok(result);
|
||||
}
|
||||
|
||||
[Route("{id}")]
|
||||
#pragma warning disable CA1822
|
||||
public JsonResult<PostReplay?> Post(string id)
|
||||
#pragma warning restore CA1822
|
||||
{
|
||||
PostReplay? postReplay = BarcodeHelper.Post(id, Request.Content);
|
||||
return Json(postReplay);
|
||||
}
|
||||
|
||||
}
|
||||
#endif
|
@ -1,120 +0,0 @@
|
||||
using Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
using Adaptation.FileHandlers.TIBCO.Transport;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Net.Http;
|
||||
using System.Text.Json;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
public class BarcodeHelper
|
||||
{
|
||||
|
||||
#nullable enable
|
||||
|
||||
private static string? GetJson(HttpContent? httpContent)
|
||||
{
|
||||
string? result;
|
||||
if (httpContent is null)
|
||||
result = null;
|
||||
else
|
||||
{
|
||||
Task<string> task = httpContent.ReadAsStringAsync();
|
||||
task.Wait();
|
||||
result = task.Result;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private static void Write(string barcodeHostFileShare, string cellInstanceConnectionName, Notification notification)
|
||||
{
|
||||
DateTime dateTime = DateTime.Now;
|
||||
Calendar calendar = new CultureInfo("en-US").Calendar;
|
||||
string weekOfYear = $"{dateTime:yyyy}_Week_{calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday):00}";
|
||||
string directory = Path.Combine(barcodeHostFileShare, weekOfYear, dateTime.ToString("yyyy-MM-dd_HH"));
|
||||
if (!Directory.Exists(directory))
|
||||
_ = Directory.CreateDirectory(directory);
|
||||
File.WriteAllText(Path.Combine(directory, $"{cellInstanceConnectionName}.csv"), notification.LastScanServiceResultValue);
|
||||
}
|
||||
|
||||
private static Job GetJob(string lsl2SQLConnectionString, string metrologyFileShare, string barcodeHostFileShare, string id, Notification notification)
|
||||
{
|
||||
Job result;
|
||||
string lastScan = notification.LastScanServiceResultValue.Length < 3 || notification.LastScanServiceResultValue[1] is not 't' and not 'T' || notification.LastScanServiceResultValue[0] != '1' ? notification.LastScanServiceResultValue : notification.LastScanServiceResultValue.Substring(2);
|
||||
string json = string.Concat("{\"Area\": \"Si\", \"EquipmentType\": \"MET08THFTIRQS408M\", \"MesEntity\": \"", id, "\", \"Sequence\": \"", notification.KeyPressEvent.DateTime.Ticks, "\", \"MID\": \"-", lastScan, "-\", \"Recipe\": \"Recipe\"}");
|
||||
result = new(lsl2SQLConnectionString, metrologyFileShare, barcodeHostFileShare, json);
|
||||
return result;
|
||||
}
|
||||
|
||||
private static Root? GetRoot(string rds)
|
||||
{
|
||||
HttpClient httpClient = new();
|
||||
string url = $"{FileRead.OpenInsightApplicationProgrammingInterface}/materials/rds/{rds}";
|
||||
string httpClientResult = httpClient.GetStringAsync(url).Result;
|
||||
Root? root = JsonSerializer.Deserialize<Root>(httpClientResult);
|
||||
httpClient.Dispose();
|
||||
return root;
|
||||
}
|
||||
|
||||
private static void SetQaMetTests(string toolClass, Root root, Dictionary<string, List<QaMetTest>> qaMetTests)
|
||||
{
|
||||
List<QaMetTest>? collection;
|
||||
foreach (PrsStage prsStage in root.Rds.ProdSpec.PrsStages)
|
||||
{
|
||||
if (prsStage.QaMetTests is null)
|
||||
continue;
|
||||
foreach (QaMetTest qaMetTest in prsStage.QaMetTests)
|
||||
{
|
||||
if (qaMetTest.ToolClass != toolClass)
|
||||
continue;
|
||||
if (!qaMetTests.TryGetValue(prsStage.Stage, out collection))
|
||||
{
|
||||
qaMetTests.Add(prsStage.Stage, new());
|
||||
if (!qaMetTests.TryGetValue(prsStage.Stage, out collection))
|
||||
throw new Exception();
|
||||
}
|
||||
collection.Add(qaMetTest);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal static PostReplay? Post(string id, HttpContent? httpContent)
|
||||
{
|
||||
PostReplay? result;
|
||||
string? json = GetJson(httpContent);
|
||||
if (json is null)
|
||||
result = null;
|
||||
else
|
||||
{
|
||||
Notification? notification = JsonSerializer.Deserialize<Notification>(json);
|
||||
if (notification is null)
|
||||
result = null;
|
||||
else
|
||||
{
|
||||
Job? job;
|
||||
string? mid;
|
||||
Dictionary<string, List<QaMetTest>> qaMetTests = new();
|
||||
Write(TIBCO.FileRead.BarcodeHostFileShare, id, notification.Value);
|
||||
try
|
||||
{
|
||||
const string hyphen = "-";
|
||||
job = GetJob(TIBCO.FileRead.LSL2SQLConnectionString, TIBCO.FileRead.MetrologyFileShare, TIBCO.FileRead.BarcodeHostFileShare, id, notification.Value);
|
||||
mid = job.SpecName == hyphen || job.ProcessSpecName == hyphen ? $"{job.ProcessType}" : $"{job.ProcessType}.{job.SpecName}.{job.ProcessSpecName}";
|
||||
Root? root = GetRoot(job.LotName);
|
||||
if (root is not null)
|
||||
SetQaMetTests(notification.Value.ToolClass, root, qaMetTests);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
mid = string.Concat(ex.Message, Environment.NewLine, ex.StackTrace);
|
||||
}
|
||||
result = new(mid, qaMetTests); // .ProdSpec.PrsStages[0].QaMetTests[0].Recipe);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
@ -1,277 +0,0 @@
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
/// <summary>
|
||||
/// Mapping for this can be found here: https://github.com/torvalds/linux/blob/master/include/uapi/linux/input-event-codes.h
|
||||
/// </summary>
|
||||
public enum EventCode
|
||||
{
|
||||
Reserved = 0,
|
||||
Esc = 1,
|
||||
Num1 = 2,
|
||||
Num2 = 3,
|
||||
Num3 = 4,
|
||||
Num4 = 5,
|
||||
Num5 = 6,
|
||||
Num6 = 7,
|
||||
Num7 = 8,
|
||||
Num8 = 9,
|
||||
Num9 = 10,
|
||||
Num0 = 11,
|
||||
Minus = 12,
|
||||
Equal = 13,
|
||||
Backspace = 14,
|
||||
Tab = 15,
|
||||
Q = 16,
|
||||
W = 17,
|
||||
E = 18,
|
||||
R = 19,
|
||||
T = 20,
|
||||
Y = 21,
|
||||
U = 22,
|
||||
I = 23,
|
||||
O = 24,
|
||||
P = 25,
|
||||
LeftBrace = 26,
|
||||
RightBrace = 27,
|
||||
Enter = 28,
|
||||
LeftCtrl = 29,
|
||||
A = 30,
|
||||
S = 31,
|
||||
D = 32,
|
||||
F = 33,
|
||||
G = 34,
|
||||
H = 35,
|
||||
J = 36,
|
||||
K = 37,
|
||||
L = 38,
|
||||
Semicolon = 39,
|
||||
Apostrophe = 40,
|
||||
Grave = 41,
|
||||
LeftShift = 42,
|
||||
Backslash = 43,
|
||||
Z = 44,
|
||||
X = 45,
|
||||
C = 46,
|
||||
V = 47,
|
||||
B = 48,
|
||||
N = 49,
|
||||
M = 50,
|
||||
Comma = 51,
|
||||
Dot = 52,
|
||||
Slash = 53,
|
||||
RightShift = 54,
|
||||
KpAsterisk = 55,
|
||||
LeftAlt = 56,
|
||||
Space = 57,
|
||||
Capslock = 58,
|
||||
F1 = 59,
|
||||
Pf2 = 60,
|
||||
F3 = 61,
|
||||
F4 = 62,
|
||||
F5 = 63,
|
||||
F6 = 64,
|
||||
F7 = 65,
|
||||
F8 = 66,
|
||||
Pf9 = 67,
|
||||
F10 = 68,
|
||||
Numlock = 69,
|
||||
ScrollLock = 70,
|
||||
Kp7 = 71,
|
||||
Kp8 = 72,
|
||||
Kp9 = 73,
|
||||
PkpMinus = 74,
|
||||
Kp4 = 75,
|
||||
Kp5 = 76,
|
||||
Kp6 = 77,
|
||||
KpPlus = 78,
|
||||
Kp1 = 79,
|
||||
Kp2 = 80,
|
||||
Kp3 = 81,
|
||||
Kp0 = 82,
|
||||
KpDot = 83,
|
||||
|
||||
Zenkakuhankaku = 85,
|
||||
//102ND = 86,
|
||||
F11 = 87,
|
||||
F12 = 88,
|
||||
Ro = 89,
|
||||
Katakana = 90,
|
||||
Hiragana = 91,
|
||||
Henkan = 92,
|
||||
Katakanahiragana = 93,
|
||||
Muhenkan = 94,
|
||||
KpJpComma = 95,
|
||||
KpEnter = 96,
|
||||
RightCtrl = 97,
|
||||
KpSlash = 98,
|
||||
SysRq = 99,
|
||||
RightAlt = 100,
|
||||
LineFeed = 101,
|
||||
Home = 102,
|
||||
Up = 103,
|
||||
Pageup = 104,
|
||||
Left = 105,
|
||||
Right = 106,
|
||||
End = 107,
|
||||
Down = 108,
|
||||
Pagedown = 109,
|
||||
Insert = 110,
|
||||
Delete = 111,
|
||||
Macro = 112,
|
||||
Mute = 113,
|
||||
VolumeDown = 114,
|
||||
VolumeUp = 115,
|
||||
Power = 116, // SC System Power Down
|
||||
KpEqual = 117,
|
||||
KpPlusMinus = 118,
|
||||
Pause = 119,
|
||||
Scale = 120, // AL Compiz Scale (Expose)
|
||||
|
||||
KpComma = 121,
|
||||
Hangeul = 122,
|
||||
Hanja = 123,
|
||||
Yen = 124,
|
||||
LeftMeta = 125,
|
||||
RightMeta = 126,
|
||||
Compose = 127,
|
||||
|
||||
Stop = 128, // AC Stop
|
||||
Again = 129,
|
||||
Props = 130, // AC Properties
|
||||
Undo = 131, // AC Undo
|
||||
Front = 132,
|
||||
Copy = 133, // AC Copy
|
||||
Open = 134, // AC Open
|
||||
Paste = 135, // AC Paste
|
||||
Find = 136, // AC Search
|
||||
Cut = 137, // AC Cut
|
||||
Help = 138, // AL Integrated Help Center
|
||||
Menu = 139, // Menu (show menu)
|
||||
Calc = 140, // AL Calculator
|
||||
Setup = 141,
|
||||
Sleep = 142, // SC System Sleep
|
||||
Wakeup = 143, // System Wake Up
|
||||
File = 144, // AL Local Machine Browser
|
||||
Sendfile = 145,
|
||||
DeleteFile = 146,
|
||||
Xfer = 147,
|
||||
Prog1 = 148,
|
||||
Prog2 = 149,
|
||||
Www = 150, // AL Internet Browser
|
||||
MsDos = 151,
|
||||
Coffee = 152, // AL Terminal Lock/Screensaver
|
||||
RotateDisplay = 153, // Display orientation for e.g. tablets
|
||||
CycleWindows = 154,
|
||||
Mail = 155,
|
||||
Bookmarks = 156, // AC Bookmarks
|
||||
Computer = 157,
|
||||
Back = 158, // AC Back
|
||||
Forward = 159, // AC Forward
|
||||
CloseCd = 160,
|
||||
EjectCd = 161,
|
||||
EjectCloseCd = 162,
|
||||
NextSong = 163,
|
||||
PlayPause = 164,
|
||||
PreviousSong = 165,
|
||||
StopCd = 166,
|
||||
Record = 167,
|
||||
Rewind = 168,
|
||||
Phone = 169, // Media Select Telephone
|
||||
Iso = 170,
|
||||
Config = 171, // AL Consumer Control Configuration
|
||||
Homepage = 172, // AC Home
|
||||
Refresh = 173, // AC Refresh
|
||||
Exit = 174, // AC Exit
|
||||
Move = 175,
|
||||
Edit = 176,
|
||||
ScrollUp = 177,
|
||||
ScrollDown = 178,
|
||||
KpLeftParen = 179,
|
||||
KpRightParen = 180,
|
||||
New = 181, // AC New
|
||||
Redo = 182, // AC Redo/Repeat
|
||||
|
||||
F13 = 183,
|
||||
F14 = 184,
|
||||
F15 = 185,
|
||||
F16 = 186,
|
||||
F17 = 187,
|
||||
F18 = 188,
|
||||
F19 = 189,
|
||||
F20 = 190,
|
||||
F21 = 191,
|
||||
F22 = 192,
|
||||
F23 = 193,
|
||||
F24 = 194,
|
||||
|
||||
PlayCd = 200,
|
||||
PauseCd = 201,
|
||||
Prog3 = 202,
|
||||
Prog4 = 203,
|
||||
Dashboard = 204, // AL Dashboard
|
||||
Suspend = 205,
|
||||
Close = 206, // AC Close
|
||||
Play = 207,
|
||||
FastForward = 208,
|
||||
BassBoost = 209,
|
||||
Print = 210, // AC Print
|
||||
Hp = 211,
|
||||
Camera = 212,
|
||||
Sound = 213,
|
||||
Question = 214,
|
||||
Email = 215,
|
||||
Chat = 216,
|
||||
Search = 217,
|
||||
Connect = 218,
|
||||
Finance = 219, // AL Checkbook/Finance
|
||||
Sport = 220,
|
||||
Shop = 221,
|
||||
AltErase = 222,
|
||||
Cancel = 223, // AC Cancel
|
||||
BrightnessDown = 224,
|
||||
BrightnessUp = 225,
|
||||
Media = 226,
|
||||
|
||||
SwitchVideoMode = 227, // Cycle between available video outputs (Monitor/LCD/TV-out/etc)
|
||||
KbdIllumToggle = 228,
|
||||
KbdIllumDown = 229,
|
||||
KbdIllumUp = 230,
|
||||
|
||||
Send = 231, // AC Send
|
||||
Reply = 232, // AC Reply
|
||||
ForwardMail = 233, // AC Forward Msg
|
||||
Save = 234, // AC Save
|
||||
Documents = 235,
|
||||
|
||||
Battery = 236,
|
||||
|
||||
Bluetooth = 237,
|
||||
Wlan = 238,
|
||||
Uwb = 239,
|
||||
|
||||
Unknown = 240,
|
||||
|
||||
VideoNext = 241, // drive next video source
|
||||
VideoPrev = 242, // drive previous video source
|
||||
BrightnessCycle = 243, // brightness up, after max is min
|
||||
BrightnessAuto = 244, // Set Auto Brightness: manual brightness control is off, rely on ambient
|
||||
DisplayOff = 245, // display device to off state
|
||||
|
||||
Wwan = 246, // Wireless WAN (LTE, UMTS, GSM, etc.)
|
||||
RfKill = 247, // Key that controls all radios
|
||||
|
||||
MicMute = 248, // Mute / unmute the microphone
|
||||
LeftMouse = 272,
|
||||
RightMouse = 273,
|
||||
MiddleMouse = 274,
|
||||
MouseBack = 275,
|
||||
MouseForward = 276,
|
||||
|
||||
ToolFinger = 325,
|
||||
ToolQuintTap = 328,
|
||||
Touch = 330,
|
||||
ToolDoubleTap = 333,
|
||||
ToolTripleTap = 334,
|
||||
ToolQuadTap = 335,
|
||||
Mic = 582
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
using System;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
public readonly struct KeyPressEvent
|
||||
{
|
||||
public DateTime DateTime { get; }
|
||||
public EventCode EventCode { get; }
|
||||
public KeyState KeyState { get; }
|
||||
public TimeSpan TimeSpan { get; }
|
||||
|
||||
public KeyPressEvent(DateTime dateTime, EventCode eventCode, KeyState keyState, TimeSpan timeSpan)
|
||||
{
|
||||
DateTime = dateTime;
|
||||
EventCode = eventCode;
|
||||
KeyState = keyState;
|
||||
TimeSpan = timeSpan;
|
||||
}
|
||||
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
public enum KeyState
|
||||
{
|
||||
KeyUp,
|
||||
KeyDown,
|
||||
KeyHold
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
public readonly struct Notification
|
||||
{
|
||||
|
||||
public KeyPressEvent KeyPressEvent { get; }
|
||||
public string LastScanServiceResultValue { get; }
|
||||
public string ToolClass { get; }
|
||||
public string HttpContentBody { get; }
|
||||
|
||||
[System.Text.Json.Serialization.JsonConstructor]
|
||||
public Notification(KeyPressEvent keyPressEvent, string lastScanServiceResultValue, string toolClass, string httpContentBody)
|
||||
{
|
||||
KeyPressEvent = keyPressEvent;
|
||||
LastScanServiceResultValue = lastScanServiceResultValue;
|
||||
ToolClass = toolClass;
|
||||
HttpContentBody = httpContentBody;
|
||||
}
|
||||
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
using Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.ApiController;
|
||||
|
||||
public class PostReplay
|
||||
{
|
||||
|
||||
#nullable enable
|
||||
|
||||
public string? MId { get; }
|
||||
public Dictionary<string, List<QaMetTest>> QaMetTests { get; }
|
||||
|
||||
[System.Text.Json.Serialization.JsonConstructor]
|
||||
public PostReplay(string? mid, Dictionary<string, List<QaMetTest>> qaMetTests)
|
||||
{
|
||||
MId = mid;
|
||||
QaMetTests = qaMetTests;
|
||||
}
|
||||
|
||||
}
|
@ -7,10 +7,6 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text.Json;
|
||||
#if NETFRAMEWORK && NET48
|
||||
using System.Web.Http;
|
||||
using System.Web.Http.SelfHost;
|
||||
#endif
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles;
|
||||
|
||||
@ -19,13 +15,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
|
||||
#nullable enable
|
||||
|
||||
public const string HttpSelfHostConfigurationBaseAddress = "http://localhost:8080/";
|
||||
public const string OpenInsightApplicationProgrammingInterface = "https://oi-prod-ec-api.mes.infineon.com/api/oiWizard";
|
||||
|
||||
private long? _TickOffset;
|
||||
#if NETFRAMEWORK && NET48
|
||||
private readonly HttpSelfHostServer? _HttpSelfHostServer;
|
||||
#endif
|
||||
|
||||
public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
|
||||
base(new Description(), false, smtp, fileParameter, cellInstanceName, connectionCount, cellInstanceConnectionName, fileConnectorConfiguration, equipmentTypeName, parameterizedModelObjectDefinitionType, modelObjectParameters, equipmentDictionaryName, dummyRuns, staticRuns, useCyclicalForDescription, isEAFHosted: connectionCount is null)
|
||||
@ -39,32 +29,6 @@ public class FileRead : Shared.FileRead, IFileRead
|
||||
throw new Exception(cellInstanceConnectionName);
|
||||
if (_IsDuplicator)
|
||||
throw new Exception(cellInstanceConnectionName);
|
||||
string barcodeHostFileShare = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "Barcode.Host.FileShare");
|
||||
if (barcodeHostFileShare != TIBCO.FileRead.BarcodeHostFileShare)
|
||||
throw new NotSupportedException($"Update configuration for [{nameof(TIBCO.FileRead.BarcodeHostFileShare)}]");
|
||||
string httpSelfHostConfigurationBaseAddress = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "Http.Self.Host.Configuration.Base.Address");
|
||||
if (httpSelfHostConfigurationBaseAddress != HttpSelfHostConfigurationBaseAddress)
|
||||
throw new NotSupportedException($"Update configuration for [{nameof(HttpSelfHostConfigurationBaseAddress)}]");
|
||||
string lsl2SQLConnectionString = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "ConnectionString.LSL2SQL");
|
||||
if (lsl2SQLConnectionString != TIBCO.FileRead.LSL2SQLConnectionString)
|
||||
throw new NotSupportedException($"Update configuration for [{nameof(TIBCO.FileRead.LSL2SQLConnectionString)}]");
|
||||
string metrologyFileShare = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "Metrology.FileShare");
|
||||
if (metrologyFileShare != TIBCO.FileRead.MetrologyFileShare)
|
||||
throw new NotSupportedException($"Update configuration for [{nameof(TIBCO.FileRead.MetrologyFileShare)}]");
|
||||
string openInsightApplicationProgrammingInterface = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.Application.Programming.Interface");
|
||||
if (openInsightApplicationProgrammingInterface != OpenInsightApplicationProgrammingInterface)
|
||||
throw new NotSupportedException($"Update configuration for [{nameof(OpenInsightApplicationProgrammingInterface)}]");
|
||||
#if NETFRAMEWORK && NET48
|
||||
if (!_IsEAFHosted)
|
||||
_HttpSelfHostServer = null;
|
||||
else
|
||||
{
|
||||
HttpSelfHostConfiguration config = new(httpSelfHostConfigurationBaseAddress);
|
||||
_ = config.Routes.MapHttpRoute("API Default", "api/{controller}/{id}", new { id = RouteParameter.Optional });
|
||||
_HttpSelfHostServer = new(config);
|
||||
_HttpSelfHostServer.OpenAsync().Wait();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#nullable disable
|
||||
|
@ -1,18 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class BackSide
|
||||
{
|
||||
[JsonPropertyName("scratches")]
|
||||
public int? Scratches { get; set; }
|
||||
|
||||
[JsonPropertyName("scratchLen")]
|
||||
public int? ScratchLen { get; set; }
|
||||
|
||||
[JsonPropertyName("nodules")]
|
||||
public object Nodules { get; set; }
|
||||
|
||||
[JsonPropertyName("spikes")]
|
||||
public object Spikes { get; set; }
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class CleanInsp
|
||||
{
|
||||
[JsonPropertyName("keyId")]
|
||||
public int KeyId { get; set; }
|
||||
|
||||
[JsonPropertyName("stage")]
|
||||
public string Stage { get; set; }
|
||||
|
||||
[JsonPropertyName("cleans")]
|
||||
public Cleans Cleans { get; set; }
|
||||
|
||||
[JsonPropertyName("inspection")]
|
||||
public Inspection Inspection { get; set; }
|
||||
|
||||
[JsonPropertyName("surfScan")]
|
||||
public SurfScan SurfScan { get; set; }
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class Cleans
|
||||
{
|
||||
[JsonPropertyName("cleanRecipe")]
|
||||
public object CleanRecipe { get; set; }
|
||||
|
||||
[JsonPropertyName("cleanSigReq")]
|
||||
public bool CleanSigReq { get; set; }
|
||||
|
||||
[JsonPropertyName("cleanTools")]
|
||||
public List<object> CleanTools { get; set; }
|
||||
|
||||
[JsonPropertyName("specs")]
|
||||
public Spec Specs { get; set; }
|
||||
|
||||
[JsonPropertyName("operations")]
|
||||
public List<object> Operations { get; set; }
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class CustEpiPart
|
||||
{
|
||||
[JsonPropertyName("keyId")]
|
||||
public string KeyId { get; set; }
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class EpiPart
|
||||
{
|
||||
[JsonPropertyName("keyID")]
|
||||
public int KeyID { get; set; }
|
||||
|
||||
[JsonPropertyName("waferSize")]
|
||||
public string WaferSize { get; set; }
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class FrontSide
|
||||
{
|
||||
[JsonPropertyName("lpd")]
|
||||
public int? Lpd { get; set; }
|
||||
|
||||
[JsonPropertyName("scratches")]
|
||||
public int? Scratches { get; set; }
|
||||
|
||||
[JsonPropertyName("scratchLen")]
|
||||
public string ScratchLen { get; set; }
|
||||
|
||||
[JsonPropertyName("pits")]
|
||||
public int? Pits { get; set; }
|
||||
|
||||
[JsonPropertyName("mounds")]
|
||||
public int? Mounds { get; set; }
|
||||
|
||||
[JsonPropertyName("stackFaults")]
|
||||
public int? StackFaults { get; set; }
|
||||
|
||||
[JsonPropertyName("spikes")]
|
||||
public int? Spikes { get; set; }
|
||||
|
||||
[JsonPropertyName("spots")]
|
||||
public int? Spots { get; set; }
|
||||
|
||||
[JsonPropertyName("blDefects")]
|
||||
public int? BlDefects { get; set; }
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class Inspection
|
||||
{
|
||||
[JsonPropertyName("microscope")]
|
||||
public bool Microscope { get; set; }
|
||||
|
||||
[JsonPropertyName("brightlight")]
|
||||
public bool Brightlight { get; set; }
|
||||
|
||||
[JsonPropertyName("inspSigReq")]
|
||||
public bool InspSigReq { get; set; }
|
||||
|
||||
[JsonPropertyName("inspInterval")]
|
||||
public int? InspInterval { get; set; }
|
||||
|
||||
[JsonPropertyName("frontSide")]
|
||||
public FrontSide FrontSide { get; set; }
|
||||
|
||||
[JsonPropertyName("backSide")]
|
||||
public BackSide BackSide { get; set; }
|
||||
|
||||
[JsonPropertyName("specs")]
|
||||
public Spec Specs { get; set; }
|
||||
}
|
@ -1,49 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class ProdSpec
|
||||
{
|
||||
// [JsonPropertyName("keyId")]
|
||||
// public int KeyId { get; set; }
|
||||
|
||||
// [JsonPropertyName("specType")]
|
||||
// public string SpecType { get; set; }
|
||||
|
||||
// [JsonPropertyName("status")]
|
||||
// public string Status { get; set; }
|
||||
|
||||
// [JsonPropertyName("minutesPerWafer")]
|
||||
// public double MinutesPerWafer { get; set; }
|
||||
|
||||
// [JsonPropertyName("proveInTime")]
|
||||
// public double ProveInTime { get; set; }
|
||||
|
||||
// [JsonPropertyName("layerType")]
|
||||
// public string LayerType { get; set; }
|
||||
|
||||
// [JsonPropertyName("reactorType")]
|
||||
// public string ReactorType { get; set; }
|
||||
|
||||
// [JsonPropertyName("susceptorType")]
|
||||
// public string SusceptorType { get; set; }
|
||||
|
||||
// [JsonPropertyName("tubePressureType")]
|
||||
// public string TubePressureType { get; set; }
|
||||
|
||||
// [JsonPropertyName("recipeLayers")]
|
||||
// public List<RecipeLayer> RecipeLayers { get; set; }
|
||||
|
||||
// [JsonPropertyName("prodVers")]
|
||||
// public List<ProdVer> ProdVers { get; set; }
|
||||
|
||||
// [JsonPropertyName("epiPart")]
|
||||
// public EpiPart EpiPart { get; set; }
|
||||
|
||||
// [JsonPropertyName("custEpiParts")]
|
||||
// public List<CustEpiPart> CustEpiParts { get; set; }
|
||||
|
||||
[JsonPropertyName("prsStages")]
|
||||
public List<PrsStage> PrsStages { get; set; }
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class ProdVer
|
||||
{
|
||||
[JsonPropertyName("keyId")]
|
||||
public int KeyId { get; set; }
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class PrsStage
|
||||
{
|
||||
// [JsonPropertyName("keyId")]
|
||||
// public string KeyId { get; set; }
|
||||
|
||||
// [JsonPropertyName("psn")]
|
||||
// public int Psn { get; set; }
|
||||
|
||||
[JsonPropertyName("stage")]
|
||||
public string Stage { get; set; }
|
||||
|
||||
// [JsonPropertyName("cleans")]
|
||||
// public Cleans Cleans { get; set; }
|
||||
|
||||
// [JsonPropertyName("inspection")]
|
||||
// public Inspection Inspection { get; set; }
|
||||
|
||||
// [JsonPropertyName("surfscan")]
|
||||
// public SurfScan Surfscan { get; set; }
|
||||
|
||||
[JsonPropertyName("qaMetTests")]
|
||||
public List<QaMetTest> QaMetTests { get; set; }
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class QaMetTest
|
||||
{
|
||||
[JsonPropertyName("test")]
|
||||
public string Test { get; set; }
|
||||
|
||||
[JsonPropertyName("property")]
|
||||
public string Property { get; set; }
|
||||
|
||||
[JsonPropertyName("propertyDesc")]
|
||||
public string PropertyDesc { get; set; }
|
||||
|
||||
[JsonPropertyName("toolClass")]
|
||||
public string ToolClass { get; set; }
|
||||
|
||||
[JsonPropertyName("recipe")]
|
||||
public string Recipe { get; set; }
|
||||
|
||||
[JsonPropertyName("recipePattern")]
|
||||
public string RecipePattern { get; set; }
|
||||
|
||||
[JsonPropertyName("min")]
|
||||
public object Min { get; set; }
|
||||
|
||||
[JsonPropertyName("max")]
|
||||
public object Max { get; set; }
|
||||
|
||||
[JsonPropertyName("phaseMin")]
|
||||
public object PhaseMin { get; set; }
|
||||
|
||||
[JsonPropertyName("slots")]
|
||||
public object Slots { get; set; }
|
||||
|
||||
[JsonPropertyName("wfrQty")]
|
||||
public int? WfrQty { get; set; }
|
||||
|
||||
[JsonPropertyName("reactSched")]
|
||||
public bool? ReactSched { get; set; }
|
||||
|
||||
[JsonPropertyName("interval")]
|
||||
public int? Interval { get; set; }
|
||||
|
||||
[JsonPropertyName("start")]
|
||||
public int? Start { get; set; }
|
||||
|
||||
[JsonPropertyName("sequence")]
|
||||
public string Sequence { get; set; }
|
||||
}
|
@ -1,96 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class Rds
|
||||
{
|
||||
[JsonPropertyName("keyId")]
|
||||
public int KeyId { get; set; }
|
||||
|
||||
[JsonPropertyName("reactor")]
|
||||
public int Reactor { get; set; }
|
||||
|
||||
// [JsonPropertyName("workOrder")]
|
||||
// public int WorkOrder { get; set; }
|
||||
|
||||
// [JsonPropertyName("cassNo")]
|
||||
// public int CassNo { get; set; }
|
||||
|
||||
// [JsonPropertyName("combStatus")]
|
||||
// public string CombStatus { get; set; }
|
||||
|
||||
// [JsonPropertyName("partNo")]
|
||||
// public int PartNo { get; set; }
|
||||
|
||||
// [JsonPropertyName("PSN")]
|
||||
// public int PSN { get; set; }
|
||||
|
||||
// [JsonPropertyName("entryId")]
|
||||
// public string EntryId { get; set; }
|
||||
|
||||
// [JsonPropertyName("entryDtm")]
|
||||
// public string EntryDtm { get; set; }
|
||||
|
||||
// [JsonPropertyName("preEpiSig")]
|
||||
// public string PreEpiSig { get; set; }
|
||||
|
||||
// [JsonPropertyName("preEpiSigDtm")]
|
||||
// public string PreEpiSigDtm { get; set; }
|
||||
|
||||
// [JsonPropertyName("operatorIn")]
|
||||
// public string OperatorIn { get; set; }
|
||||
|
||||
// [JsonPropertyName("dtmIn")]
|
||||
// public string DtmIn { get; set; }
|
||||
|
||||
// [JsonPropertyName("operatorOut")]
|
||||
// public string OperatorOut { get; set; }
|
||||
|
||||
// [JsonPropertyName("dtmOut")]
|
||||
// public string DtmOut { get; set; }
|
||||
|
||||
// [JsonPropertyName("postEpiSig")]
|
||||
// public string PostEpiSig { get; set; }
|
||||
|
||||
// [JsonPropertyName("postEpiSigDtm")]
|
||||
// public string PostEpiSigDtm { get; set; }
|
||||
|
||||
// [JsonPropertyName("supVerSig")]
|
||||
// public string SupVerSig { get; set; }
|
||||
|
||||
// [JsonPropertyName("supVerSigDtm")]
|
||||
// public string SupVerSigDtm { get; set; }
|
||||
|
||||
// [JsonPropertyName("shipDtm")]
|
||||
// public object ShipDtm { get; set; }
|
||||
|
||||
// [JsonPropertyName("subPartNo")]
|
||||
// public int SubPartNo { get; set; }
|
||||
|
||||
// [JsonPropertyName("shipNo")]
|
||||
// public object ShipNo { get; set; }
|
||||
|
||||
// [JsonPropertyName("cassWaferQty")]
|
||||
// public int CassWaferQty { get; set; }
|
||||
|
||||
// [JsonPropertyName("loadLockSide")]
|
||||
// public string LoadLockSide { get; set; }
|
||||
|
||||
// [JsonPropertyName("waferSize")]
|
||||
// public string WaferSize { get; set; }
|
||||
|
||||
// [JsonPropertyName("reactorType")]
|
||||
// public string ReactorType { get; set; }
|
||||
|
||||
[JsonPropertyName("prodSpec")]
|
||||
public ProdSpec ProdSpec { get; set; }
|
||||
|
||||
// [JsonPropertyName("cleanInsp")]
|
||||
// public List<CleanInsp> CleanInsp { get; set; }
|
||||
|
||||
// [JsonPropertyName("woMatQA")]
|
||||
// public WoMatQA WoMatQA { get; set; }
|
||||
|
||||
// [JsonPropertyName("rdsLayers")]
|
||||
// public List<RdsLayer> RdsLayers { get; set; }
|
||||
}
|
@ -1,63 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class RdsLayer
|
||||
{
|
||||
[JsonPropertyName("keyID")]
|
||||
public string KeyID { get; set; }
|
||||
|
||||
[JsonPropertyName("EpiTime")]
|
||||
public double EpiTime { get; set; }
|
||||
|
||||
[JsonPropertyName("DiluentAdjParam")]
|
||||
public int DiluentAdjParam { get; set; }
|
||||
|
||||
[JsonPropertyName("DopantFlow")]
|
||||
public double DopantFlow { get; set; }
|
||||
|
||||
[JsonPropertyName("HCLFlow")]
|
||||
public object HCLFlow { get; set; }
|
||||
|
||||
[JsonPropertyName("BakeTime")]
|
||||
public string BakeTime { get; set; }
|
||||
|
||||
[JsonPropertyName("EpiH2Flow")]
|
||||
public int EpiH2Flow { get; set; }
|
||||
|
||||
[JsonPropertyName("TCSFlow")]
|
||||
public int TCSFlow { get; set; }
|
||||
|
||||
[JsonPropertyName("DCSFlow")]
|
||||
public object DCSFlow { get; set; }
|
||||
|
||||
[JsonPropertyName("FOffset")]
|
||||
public int FOffset { get; set; }
|
||||
|
||||
[JsonPropertyName("SOffset")]
|
||||
public int SOffset { get; set; }
|
||||
|
||||
[JsonPropertyName("ROffset")]
|
||||
public int ROffset { get; set; }
|
||||
|
||||
[JsonPropertyName("Etch1")]
|
||||
public string Etch1 { get; set; }
|
||||
|
||||
[JsonPropertyName("Etch2")]
|
||||
public string Etch2 { get; set; }
|
||||
|
||||
[JsonPropertyName("Etch3")]
|
||||
public string Etch3 { get; set; }
|
||||
|
||||
[JsonPropertyName("AUX1")]
|
||||
public object AUX1 { get; set; }
|
||||
|
||||
[JsonPropertyName("AUX2")]
|
||||
public object AUX2 { get; set; }
|
||||
|
||||
[JsonPropertyName("ULTemp")]
|
||||
public int ULTemp { get; set; }
|
||||
|
||||
[JsonPropertyName("SuscEtch")]
|
||||
public object SuscEtch { get; set; }
|
||||
}
|
@ -1,69 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class RecipeLayer
|
||||
{
|
||||
[JsonPropertyName("layerNo")]
|
||||
public int LayerNo { get; set; }
|
||||
|
||||
[JsonPropertyName("layerId")]
|
||||
public string LayerId { get; set; }
|
||||
|
||||
[JsonPropertyName("layerType")]
|
||||
public string LayerType { get; set; }
|
||||
|
||||
[JsonPropertyName("layerRecipe")]
|
||||
public int LayerRecipe { get; set; }
|
||||
|
||||
[JsonPropertyName("layerDopant")]
|
||||
public string LayerDopant { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickMin")]
|
||||
public double LayerThickMin { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickTarget")]
|
||||
public double LayerThickTarget { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickMax")]
|
||||
public double LayerThickMax { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickUnits")]
|
||||
public string LayerThickUnits { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickAMin")]
|
||||
public object LayerThickAMin { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickATarget")]
|
||||
public object LayerThickATarget { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickAMaxes")]
|
||||
public object LayerThickAMaxes { get; set; }
|
||||
|
||||
[JsonPropertyName("layerThickAUnits")]
|
||||
public object LayerThickAUnits { get; set; }
|
||||
|
||||
[JsonPropertyName("layerResMin")]
|
||||
public double LayerResMin { get; set; }
|
||||
|
||||
[JsonPropertyName("layerResTarget")]
|
||||
public int LayerResTarget { get; set; }
|
||||
|
||||
[JsonPropertyName("layerResMax")]
|
||||
public double LayerResMax { get; set; }
|
||||
|
||||
[JsonPropertyName("layerResUnits")]
|
||||
public string LayerResUnits { get; set; }
|
||||
|
||||
[JsonPropertyName("layerSResMin")]
|
||||
public object LayerSResMin { get; set; }
|
||||
|
||||
[JsonPropertyName("layerSResTarget")]
|
||||
public object LayerSResTarget { get; set; }
|
||||
|
||||
[JsonPropertyName("layerSResMax")]
|
||||
public object LayerSResMax { get; set; }
|
||||
|
||||
[JsonPropertyName("layerSResUnits")]
|
||||
public object LayerSResUnits { get; set; }
|
||||
}
|
@ -1,15 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class Root
|
||||
{
|
||||
[JsonPropertyName("rds")]
|
||||
public Rds Rds { get; set; }
|
||||
|
||||
[JsonPropertyName("_links")]
|
||||
public object Links { get; set; }
|
||||
|
||||
[JsonPropertyName("_class")]
|
||||
public string Class { get; set; }
|
||||
}
|
@ -1,73 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class Spec
|
||||
{
|
||||
[JsonPropertyName("recipe")]
|
||||
public string Recipe { get; set; }
|
||||
|
||||
[JsonPropertyName("defect")]
|
||||
public int Defect { get; set; }
|
||||
|
||||
[JsonPropertyName("haze")]
|
||||
public int Haze { get; set; }
|
||||
|
||||
[JsonPropertyName("sampleQty")]
|
||||
public int SampleQty { get; set; }
|
||||
|
||||
[JsonPropertyName("tools")]
|
||||
public List<object> Tools { get; set; }
|
||||
|
||||
[JsonPropertyName("recipes")]
|
||||
public List<object> Recipes { get; set; }
|
||||
|
||||
[JsonPropertyName("microscopeReq")]
|
||||
public bool MicroscopeReq { get; set; }
|
||||
|
||||
[JsonPropertyName("brightlightReq")]
|
||||
public bool BrightlightReq { get; set; }
|
||||
|
||||
[JsonPropertyName("lpd")]
|
||||
public int Lpd { get; set; }
|
||||
|
||||
[JsonPropertyName("scratches")]
|
||||
public int Scratches { get; set; }
|
||||
|
||||
[JsonPropertyName("scratchLen")]
|
||||
public int ScratchLen { get; set; }
|
||||
|
||||
[JsonPropertyName("pits")]
|
||||
public int Pits { get; set; }
|
||||
|
||||
[JsonPropertyName("mounds")]
|
||||
public int Mounds { get; set; }
|
||||
|
||||
[JsonPropertyName("stackFaults")]
|
||||
public int StackFaults { get; set; }
|
||||
|
||||
[JsonPropertyName("spikes")]
|
||||
public int Spikes { get; set; }
|
||||
|
||||
[JsonPropertyName("spots")]
|
||||
public int Spots { get; set; }
|
||||
|
||||
[JsonPropertyName("fov")]
|
||||
public int Fov { get; set; }
|
||||
|
||||
[JsonPropertyName("blDefects")]
|
||||
public int BlDefects { get; set; }
|
||||
|
||||
[JsonPropertyName("bsideScratches")]
|
||||
public int BsideScratches { get; set; }
|
||||
|
||||
[JsonPropertyName("bsideScratchLen")]
|
||||
public int BsideScratchLen { get; set; }
|
||||
|
||||
[JsonPropertyName("bsideNodules")]
|
||||
public object BsideNodules { get; set; }
|
||||
|
||||
[JsonPropertyName("bsideSpikes")]
|
||||
public object BsideSpikes { get; set; }
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class SurfScan
|
||||
{
|
||||
[JsonPropertyName("surfscanSigReq")]
|
||||
public bool SurfscanSigReq { get; set; }
|
||||
|
||||
[JsonPropertyName("surfscanRecipes")]
|
||||
public List<SurfscanRecipe> SurfscanRecipes { get; set; }
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class SurfScan2
|
||||
{
|
||||
[JsonPropertyName("specs")]
|
||||
public List<Spec> Specs { get; set; }
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class SurfscanRecipe
|
||||
{
|
||||
[JsonPropertyName("recipe")]
|
||||
public string Recipe { get; set; }
|
||||
|
||||
[JsonPropertyName("defects")]
|
||||
public int Defects { get; set; }
|
||||
|
||||
[JsonPropertyName("haze")]
|
||||
public int Haze { get; set; }
|
||||
|
||||
[JsonPropertyName("sampleSize")]
|
||||
public int SampleSize { get; set; }
|
||||
}
|
@ -1,73 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class Test
|
||||
{
|
||||
[JsonPropertyName("stage")]
|
||||
public string Stage { get; set; }
|
||||
|
||||
[JsonPropertyName("profile")]
|
||||
public string Profile { get; set; }
|
||||
|
||||
[JsonPropertyName("prop")]
|
||||
public string Prop { get; set; }
|
||||
|
||||
[JsonPropertyName("toolClass")]
|
||||
public string ToolClass { get; set; }
|
||||
|
||||
[JsonPropertyName("recipe")]
|
||||
public string Recipe { get; set; }
|
||||
|
||||
[JsonPropertyName("recipePattern")]
|
||||
public string RecipePattern { get; set; }
|
||||
|
||||
[JsonPropertyName("specMin")]
|
||||
public double SpecMin { get; set; }
|
||||
|
||||
[JsonPropertyName("specMax")]
|
||||
public double SpecMax { get; set; }
|
||||
|
||||
[JsonPropertyName("specSlot")]
|
||||
public object SpecSlot { get; set; }
|
||||
|
||||
[JsonPropertyName("testSlot")]
|
||||
public object TestSlot { get; set; }
|
||||
|
||||
[JsonPropertyName("testResult")]
|
||||
public List<double> TestResult { get; set; }
|
||||
|
||||
[JsonPropertyName("testSig")]
|
||||
public string TestSig { get; set; }
|
||||
|
||||
[JsonPropertyName("testSigDtm")]
|
||||
public string TestSigDtm { get; set; }
|
||||
|
||||
[JsonPropertyName("specStdDev")]
|
||||
public object SpecStdDev { get; set; }
|
||||
|
||||
[JsonPropertyName("testStdDev")]
|
||||
public object TestStdDev { get; set; }
|
||||
|
||||
[JsonPropertyName("specWfrQty")]
|
||||
public int SpecWfrQty { get; set; }
|
||||
|
||||
[JsonPropertyName("dataPoints")]
|
||||
public List<List<object>> DataPoints { get; set; }
|
||||
|
||||
[JsonPropertyName("testResultMin")]
|
||||
public List<object> TestResultMin { get; set; }
|
||||
|
||||
[JsonPropertyName("testResultMax")]
|
||||
public List<object> TestResultMax { get; set; }
|
||||
|
||||
[JsonPropertyName("testOutOfSpec")]
|
||||
public bool TestOutOfSpec { get; set; }
|
||||
|
||||
[JsonPropertyName("phaseMin")]
|
||||
public object PhaseMin { get; set; }
|
||||
|
||||
[JsonPropertyName("failReason")]
|
||||
public object FailReason { get; set; }
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Adaptation.FileHandlers.MoveAllFiles.OpenInsight;
|
||||
|
||||
public class WoMatQA
|
||||
{
|
||||
[JsonPropertyName("keyId")]
|
||||
public string KeyId { get; set; }
|
||||
|
||||
[JsonPropertyName("tests")]
|
||||
public List<Test> Tests { get; set; }
|
||||
}
|
Reference in New Issue
Block a user