42 lines
1.3 KiB
C#
42 lines
1.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace FinlyticCore.Dtos.Fundamentals;
|
|
|
|
/// <summary>
|
|
/// Haupt-DTO für die aggregierte Anzeige der Stammdaten, Fundamentaldaten und Events eines Assets.
|
|
/// </summary>
|
|
[Serializable]
|
|
public record AssetFundamentalsDto
|
|
{
|
|
/// <summary>
|
|
/// Grundlegende Unternehmens- und Stammdaten (Aus AssetDataEntity).
|
|
/// </summary>
|
|
[JsonPropertyName("asset")]
|
|
public AssetHeaderDto Asset { get; init; } = new();
|
|
|
|
/// <summary>
|
|
/// Aktuellste Finanzeckdaten und Kennzahlen (Aus FundamentalDataEntity).
|
|
/// </summary>
|
|
[JsonPropertyName("fundamentals")]
|
|
public FundamentalDataDto? Fundamentals { get; init; }
|
|
|
|
/// <summary>
|
|
/// Liste der Führungskräfte/Vorstände (Aus KeyExecutiveEntity).
|
|
/// </summary>
|
|
[JsonPropertyName("executives")]
|
|
public List<KeyExecutiveDto> Executives { get; init; } = [];
|
|
|
|
/// <summary>
|
|
/// Bevorstehende oder vergangene Termine wie Earnings oder Dividenden (Aus AssetEventEntity).
|
|
/// </summary>
|
|
[JsonPropertyName("events")]
|
|
public List<CorporateEventDto> Events { get; init; } = [];
|
|
|
|
/// <summary>
|
|
/// Zeitstempel der letzten Gesamt-Aktualisierung.
|
|
/// </summary>
|
|
[JsonPropertyName("lastUpdatedAt")]
|
|
public DateTime LastUpdatedAt { get; init; } = DateTime.UtcNow;
|
|
} |