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