using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;
using gehGassi.Dto.Advertisements;
using gehGassi.Dto.Common;
using gehGassi.Dto.Dogs;
using gehGassi.Dto.Listings;
using gehGassi.Dto.Lookup;
namespace gehGassi.Dto.Favourites
{
///
/// DTO für die Anzeige von Favoriten in der Favoriten-Liste
///
public class FavouriteListItemDto : SyncEntityDto
{
///
/// Benutrzer der den Favoriten angelegt hat
///
public string AppUserId { get; set; }
///
/// Id des verknüpften Objektes
///
public string Key { get; set; }
///
/// Typ des Objektes das verbunden wurde
///
public string Table { get; set; }
///
/// Wann erstellt?
///
public DateTimeOffset Created { get; set; }
///
/// Gibt an ob die Resource am Server nicht mehr verfügbar ist
///
public bool NotAvailable { get; set; }
///
/// Werbung, wenn entsprechender Typ
///
public AdvertisementDto Advertisement { get; set; }
///
/// PArtner, wenn entsprechender Typ
///
public ListingDto Listing { get; set; }
///
/// Hund, wenn entsprechender Typ
///
public DogDto Dog { get; set; }
///
/// Walker, wenn entsprechender Typ
///
public DogWalkerLookupDto DogWalker { get; set; }
#region Erweiterung Blockier- und Sperrinfo
///
/// Hundebesitzer ist blockiert
///
public bool Blocked { get; set; }
///
/// Hundebesitzer ist gesperrt
///
public bool Locked { get; set; }
#endregion
///
/// Erstellt eine Instanz
///
public FavouriteListItemDto()
{
Advertisement = null;
Listing = null;
Dog = null;
DogWalker = null;
}
}
///
/// DTO für die Abfrage der Favoriten
///
public class FavouriteListQueryDto : QueryDto
{
///
/// Id des App-Users
///
public string AppUserId { get; set; }
///
/// Typ des Objektes
///
public string Table { get; set; }
}
}