55 lines
2.1 KiB
C#
55 lines
2.1 KiB
C#
namespace GerbilManagerWebAPI.Dtos
|
|
{
|
|
/// <summary>Zählungen für die Analyse-Übersicht (RennmausPro-III-Import).</summary>
|
|
public record Rpro3Counts(
|
|
int OwnAnimals, // eigene Tiere (stamm)
|
|
int ExternalRaw, // externe Ahnen (fremd, roh, vor Dedup)
|
|
int ExternalAfterDedup, // externe Ahnen nach Dedup
|
|
int Litters, // Würfe
|
|
int Contacts, // Kontakte (Herkunft + Abnehmer)
|
|
int Genotypes, // hinterlegte Genotypen (eigen + extern)
|
|
int DuplicatesMerged, // weggefallene interne Dubletten
|
|
int MergeClusters); // Anzahl zusammengelegter Cluster
|
|
|
|
/// <summary>Eine Variante eines mehrdeutigen Namens (für die Entscheidung der Züchterin).</summary>
|
|
public record Rpro3AmbiguousVariant(
|
|
int Count,
|
|
string Dob,
|
|
string Farbe,
|
|
string Origin,
|
|
bool IsOwn);
|
|
|
|
public record Rpro3AmbiguousName(
|
|
string Name,
|
|
IReadOnlyList<Rpro3AmbiguousVariant> Variants,
|
|
int BareCount);
|
|
|
|
/// <summary>Ein großer sicherer Merge-Cluster (zur Veranschaulichung der Dedup-Wirkung).</summary>
|
|
public record Rpro3MergeSample(
|
|
string Name,
|
|
int RecordCount,
|
|
string Dob,
|
|
string Farbe,
|
|
string Origin);
|
|
|
|
/// <summary>Ergebnis von POST /import/rpro3/analyze — schreibt NICHTS in die DB.</summary>
|
|
public record Rpro3AnalyzeResult(
|
|
Rpro3Counts Counts,
|
|
int NewVsCurrentNew, // wie viele Tiere im aktuellen Stand fehlen würden (neu)
|
|
int NewVsCurrentExisting, // wie viele schon vorhanden sind (Match)
|
|
IReadOnlyList<Rpro3MergeSample> TopMerges,
|
|
IReadOnlyList<Rpro3AmbiguousName> AmbiguousNames,
|
|
bool PhotosProvided,
|
|
int PhotoFilesAvailable);
|
|
|
|
/// <summary>Ergebnis von POST /import/rpro3/execute.</summary>
|
|
public record Rpro3ExecuteResult(
|
|
int GerbilsImported,
|
|
int LittersImported,
|
|
int ContactsImported,
|
|
int HealthRecordsImported,
|
|
int WeightRecordsImported,
|
|
int PhotosImported,
|
|
string Message);
|
|
}
|