gehgassi_backend/gehGassi.Web/Models/DogWalkerProfileVm.cs

98 lines
3.9 KiB
C#

using System.ComponentModel.DataAnnotations;
namespace gehGassi.Web.Models
{
/// <summary>
/// Viewmodel für ein DogWalker Profil
/// </summary>
public class DogWalkerProfileVm : SyncEntityVm
{
/// <summary>
/// Radius für Anfragen
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_Radius", Description = "DogWalkerProfile_Radius_Desc")]
public double Radius { get; set; }
/// <summary>
/// Über mich
/// </summary>
[MaxLength(300, ErrorMessage = "Err_StringLength_Max")]
[Display(Name = "DogWalkerProfile_About", Description = "DogWalkerProfile_About_Desc")]
public string About { get; set; }
/// <summary>
/// Welche Anfragen erlauben
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_AllowedRequests", Description = "DogWalkerProfile_AllowedRequests_Desc")]
public DogWalkRequestTypeVm AllowedRequests { get; set; }
/// <summary>
/// nimmt Welpen an
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_PuppyAllowed")]
public bool PuppyAllowed { get; set; }
/// <summary>
/// Nimmt schwierige Hunde an
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_DifficultAllowed", Description = "DogWalkerProfile_DifficultAllowed_Desc")]
public bool DifficultAllowed { get; set; }
/// <summary>
/// Aggressionsgrad des Hundes, wenn schwierige Hunde errlaubt
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_AggressionLevel", Description = "DogWalkerProfile_AggressionLevel_Desc")]
public DogAggressionLevelVm AggressionLevel { get; set; }
/// <summary>
/// Akzeptierte Hundegröße
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_AcceptedSize", Description = "DogWalkerProfile_AcceptedSize_Desc")]
public DogSizeVm AcceptedSize { get; set; }
/// <summary>
/// Preis für einen Walk je Stunde
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Range(0.0, 1000000, ErrorMessage = "Err_Range")]
[Display(Name = "DogWalkerProfile_PriceWalk", Description = "DogWalkerProfile_PriceWalk_Desc")]
public decimal PriceWalk { get; set; }
/// <summary>
/// Preis für Tagesbetreuung je Stunde
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Range(0.0, 1000000, ErrorMessage = "Err_Range")]
[Display(Name = "DogWalkerProfile_PriceDay", Description = "DogWalkerProfile_PriceDay_Desc")]
public decimal PriceDay { get; set; }
/// <summary>
/// Preis für Sitting je Tag
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Range(0.0, 1000000, ErrorMessage = "Err_Range")]
[Display(Name = "DogWalkerProfile_PriceSitting", Description = "DogWalkerProfile_PriceSitting_Desc")]
public decimal PriceSitting { get; set; }
/// <summary>
/// Walker ist derzeit für Buchungen nicht verfügbar
/// </summary>
[Required(ErrorMessage = "Err_Required")]
[Display(Name = "DogWalkerProfile_NotAvailable", Description = "DogWalkerProfile_NotAvailable_Desc")]
public bool NotAvailable { get; set; }
/// <summary>
/// Optional: Info warum nicht verfügbar
/// </summary>
[MaxLength(500, ErrorMessage = "Err_StringLength_Max")]
[Display(Name = "DogWalkerProfile_NotAvailableInfo", Description = "DogWalkerProfile_NotAvailableInfo_Desc")]
public string NotAvailableInfo { get; set; }
}
}