145 lines
3.6 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
using gehGassi.Dto.Common;
namespace gehGassi.Dto.Listings
{
/// <summary>
/// Model für die Abfrage von Listungen nach Branche
/// </summary>
public class ListingQueryDto : QueryDto
{
/// <summary>
/// Id der gewählten Branche
/// </summary>
[MaxLength(128)]
public string BranchId { get; set; }
/// <summary>
/// Optional - Filter.
/// Wird nur angewendet wenn nicht leer
/// </summary>
public string Filter { get; set; }
/// <summary>
/// Optional: Land der Listungs-Adresse
/// </summary>
public string ListingCountry { get; set; }
/// <summary>
/// Erstellt eine Instanz
/// </summary>
public ListingQueryDto()
{
}
}
/// <summary>
/// Dto für eine Listung
/// </summary>
public class ListingDto : SyncEntityDto
{
/// <summary>
/// Id des Kunden
/// </summary>
public long CustomerId { get; set; }
/// <summary>
/// Name des kunden
/// </summary>
public string CustomerName { get; set; }
/// <summary>
/// Id der Branche
/// </summary>
public string BranchId { get; set; }
/// <summary>
/// Name der Branche
/// </summary>
public string BranchName { get; set; }
/// <summary>
/// Typ der Listung - Basis, Silber, Gold, Plating
/// </summary>
public ListingTypeDto ListingType { get; set; }
/// <summary>
/// Startdatum der Listung
/// </summary>
public DateTimeOffset? StartDate { get; set; }
/// <summary>
/// Enddatum der Listung
/// </summary>
public DateTimeOffset? EndDate { get; set; }
/// <summary>
/// Bild für die Listung - Allgemein
/// </summary>
public string Image { get; set; }
/// <summary>
/// Bild für die Listung - Allgemein 8:9
/// </summary>
public string Image2 { get; set; }
/// <summary>
/// Link für die Listung - allgemein wenn nicht überschrieben
/// </summary>
public string Url { get; set; }
/// <summary>
/// Name der Listung
/// </summary>
public string Name { get; set; }
/// <summary>
/// Beschreibung der Listung
/// </summary>
public string Description { get; set; }
/// <summary>
/// Bild der Listung für eine Sprache
/// </summary>
public string ImageLanguage { get; set; }
/// <summary>
/// Bild der Listung für eine Sprache 8:9
/// </summary>
public string Image2Language { get; set; }
/// <summary>
/// Link für die Listung für eine Sprache
/// </summary>
public string UrlLanguage { get; set; }
/// <summary>
/// Adresse die angezeigt werden soll
/// </summary>
public AddressDto ListingAddress { get; set; }
/// <summary>
/// Breitengrad der Adresse
/// </summary>
public double ListingLat { get; set; }
/// <summary>
/// Längengrad der Adresse
/// </summary>
public double ListingLng { get; set; }
/// <summary>
/// Erstellt eine Instanz
/// </summary>
public ListingDto()
{
ListingAddress = new AddressDto();
}
}
}