99 lines
2.5 KiB
C#
99 lines
2.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using gehGassiApp.Domain.Advertisements;
|
|
using gehGassiApp.Domain.Base;
|
|
using gehGassiApp.Domain.Dogs;
|
|
using gehGassiApp.Domain.Listings;
|
|
using gehGassiApp.Domain.Lookup;
|
|
|
|
namespace gehGassiApp.Domain.Favourites
|
|
{
|
|
/// <summary>
|
|
/// Favoriten für Listendarstellung
|
|
/// </summary>
|
|
public class FavouriteListItem : SyncEntity
|
|
{
|
|
/// <summary>
|
|
/// Benutrzer der den Favoriten angelegt hat
|
|
/// </summary>
|
|
public string AppUserId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id des verknüpften Objektes
|
|
/// </summary>
|
|
public string Key { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ des Objektes das verbunden wurde
|
|
/// </summary>
|
|
public string Table { get; set; }
|
|
|
|
/// <summary>
|
|
/// Wann erstellt?
|
|
/// </summary>
|
|
public DateTimeOffset Created { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gibt an ob die Resource am Server nicht mehr verfügbar ist
|
|
/// </summary>
|
|
public bool NotAvailable { get; set; }
|
|
|
|
/// <summary>
|
|
/// Werbung, wenn entsprechender Typ
|
|
/// </summary>
|
|
public Advertisement Advertisement { get; set; }
|
|
|
|
/// <summary>
|
|
/// PArtner, wenn entsprechender Typ
|
|
/// </summary>
|
|
public Listing Listing { get; set; }
|
|
|
|
/// <summary>
|
|
/// Hund, wenn entsprechender Typ
|
|
/// </summary>
|
|
public Dog Dog { get; set; }
|
|
|
|
/// <summary>
|
|
/// Walker, wenn entsprechender Typ
|
|
/// </summary>
|
|
public DogWalkerLookup DogWalker { get; set; }
|
|
|
|
#region Erweiterung Blockier- und Sperrinfo
|
|
|
|
/// <summary>
|
|
/// Hundebesitzer ist blockiert
|
|
/// </summary>
|
|
[NotMapped]
|
|
public bool Blocked { get; set; }
|
|
|
|
/// <summary>
|
|
/// Hundebesitzer ist gesperrt
|
|
/// </summary>
|
|
[NotMapped]
|
|
public bool Locked { get; set; }
|
|
|
|
/// <summary>
|
|
/// Hundebesitzer blockiert oder gesperrt?
|
|
/// </summary>
|
|
[NotMapped]
|
|
public bool BlockedOrLocked => Blocked || Locked;
|
|
|
|
#endregion
|
|
|
|
/// <summary>
|
|
/// Erstellt eine Instanz
|
|
/// </summary>
|
|
public FavouriteListItem()
|
|
{
|
|
Advertisement = null;
|
|
Listing = null;
|
|
Dog = null;
|
|
DogWalker = null;
|
|
}
|
|
}
|
|
}
|