namespace OI.Metrology.Shared.DataModels; public record InfinityQSBase(int EV_COUNT, int CL_COUNT, int SL_COUNT, int SE_SGRP, int SE_SGTM, int SE_TSNO, int TD_TEST, string? PR_NAME, string? JD_NAME, string? PL_NAME, string? PD_NAME, string? TD_NAME, double? SE_VAL) { public static InfinityQSBaseV2[] Convert(InfinityQSBase[] collection) { List results = new(); foreach (InfinityQSBase item in collection) results.Add(Map(item)); return (from l in results orderby l.EventCount descending, l.ControlLimitCount descending, l.SpecLimitCount descending, l.SubGroupId, l.SiteNumber, l.VariableNumber select l).ToArray(); } public static InfinityQSBaseV2 Map(InfinityQSBase item) { InfinityQSBaseV2 result = new(item.EV_COUNT, item.CL_COUNT, item.SL_COUNT, item.SE_SGRP, item.SE_SGTM, item.SE_TSNO, item.TD_TEST, item.PR_NAME, item.JD_NAME, item.PL_NAME, item.PD_NAME, item.TD_NAME, item.SE_VAL); return result; } } public record InfinityQSBaseV2(int EventCount, int ControlLimitCount, int SpecLimitCount, int SubGroupId, int SubGroupDateTime, int SiteNumber, int VariableNumber, string? Process, string? Job, string? Lot, string? Part, string? Variable, double? Value) { }