193 lines
4.6 KiB
C#
193 lines
4.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Text;
|
|
using gehGassi.Dto.Common;
|
|
|
|
namespace gehGassi.Dto.Ratings
|
|
{
|
|
/// <summary>
|
|
/// DTO für ein Rating
|
|
/// </summary>
|
|
public class RatingDto : SyncEntityDto
|
|
{
|
|
/// <summary>
|
|
/// Wer hat das Rating erstellt?
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string FromId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ der Quelle des Ratings
|
|
/// </summary>
|
|
[Required]
|
|
public AppUserTypeDto FromType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel Id des Ratings
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string TargetId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel-Typ
|
|
/// </summary>
|
|
[Required]
|
|
public RatingTargetDto TargetType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Vergebene Bewertung
|
|
/// </summary>
|
|
[Required]
|
|
public decimal Points { get; set; }
|
|
|
|
/// <summary>
|
|
/// Anmerkungen zum Rating
|
|
/// </summary>
|
|
[MaxLength(500)]
|
|
public string Info { get; set; }
|
|
|
|
/// <summary>
|
|
/// Wann erstellt?
|
|
/// </summary>
|
|
[Required]
|
|
public DateTimeOffset Created { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO für die Abfrage von Rating-Check.
|
|
/// Betrifft Hat schon bewertet, darf bewerten
|
|
/// </summary>
|
|
public class RatingCheckQueryDto
|
|
{
|
|
/// <summary>
|
|
/// Wer hat das Rating erstellt?
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string FromId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ der Quelle des Ratings
|
|
/// </summary>
|
|
[Required]
|
|
public AppUserTypeDto FromType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel Id des Ratings
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string TargetId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel-Typ
|
|
/// </summary>
|
|
[Required]
|
|
public RatingTargetDto TargetType { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO für die Abfrage von Ratings
|
|
/// </summary>
|
|
public class RatingsQueryDto : QueryDto
|
|
{
|
|
/// <summary>
|
|
/// Wer hat das Rating erstellt?
|
|
/// </summary>
|
|
public string FromId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ der Quelle des Ratings
|
|
/// </summary>
|
|
public AppUserTypeDto? FromType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel Id des Ratings
|
|
/// </summary>
|
|
public string TargetId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel-Typ
|
|
/// </summary>
|
|
public RatingTargetDto? TargetType { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Repräsentiert ein Rating das von jemanden für jemanden oder etwas vergeben wurde mit Namen augelöst
|
|
/// </summary>
|
|
public class RatingWithNamesDto : SyncEntityDto
|
|
{
|
|
/// <summary>
|
|
/// Wer hat das Rating erstellt?
|
|
/// </summary>
|
|
public string FromId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Name des Rating Erstellers
|
|
/// </summary>
|
|
public string FromName { get; set; }
|
|
|
|
/// <summary>
|
|
/// Photo des Ratings Erstellers
|
|
/// </summary>
|
|
public string FromPhoto { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ der Quelle des Ratings
|
|
/// </summary>
|
|
public AppUserTypeDto FromType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel Id des Ratings
|
|
/// </summary>
|
|
public string TargetId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Name des Rating Ziels
|
|
/// </summary>
|
|
public string TargetName { get; set; }
|
|
|
|
/// <summary>
|
|
/// Photo des Ratings Ziels
|
|
/// </summary>
|
|
public string TargetPhoto { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ziel-Typ
|
|
/// </summary>
|
|
public RatingTargetDto TargetType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Vergebene Bewertung
|
|
/// </summary>
|
|
public decimal Points { get; set; }
|
|
|
|
/// <summary>
|
|
/// Anmerkungen zum Rating
|
|
/// </summary>
|
|
public string Info { get; set; }
|
|
|
|
/// <summary>
|
|
/// Wann erstellt?
|
|
/// </summary>
|
|
public DateTimeOffset Created { get; set; }
|
|
|
|
#region Erweiterung Blockier- und Sperrinfo
|
|
|
|
/// <summary>
|
|
/// Blockiert
|
|
/// </summary>
|
|
public bool FromBlocked { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gesperrt
|
|
/// </summary>
|
|
public bool FromLocked { get; set; }
|
|
|
|
#endregion
|
|
}
|
|
}
|