using System; using System.ComponentModel.DataAnnotations; using gehGassi.Domain.Common; namespace gehGassi.Web.Models { /// /// Viewmodel für Reklamationen /// public class WalkComplaintVm : SyncEntityVm { /// /// Id des Walks /// [Required(ErrorMessage = "Err_Required")] [MaxLength(128, ErrorMessage = "Err_StringLength_Max")] public string WalkId { get; set; } /// /// Wer hat die Beschwerde erstellt? /// [Required(ErrorMessage = "Err_Required")] [Display(Name = "WalkComplaint_Source")] public WalkComplaintSource Source { get; set; } /// /// Art der Beschwerde /// [Required(ErrorMessage = "Err_Required")] [Display(Name = "WalkComplaint_Type")] public WalkComplaintType Type { get; set; } /// /// Nachricht zur Beschwerde /// [Required(ErrorMessage = "Err_Required")] [MaxLength(1000, ErrorMessage = "Err_StringLength_Max")] [Display(Name = "WalkComplaint_Message")] public string Message { get; set; } /// /// Status der Beschwerde /// [Required(ErrorMessage = "Err_Required")] [Display(Name = "WalkComplaint_Status")] public WalkComplaintStatus Status { get; set; } /// /// Gehgassi Benutzer der die Beschwerde zuletzt bearbeitet hat /// [MaxLength(256, ErrorMessage = "Err_StringLength_Max")] [Display(Name = "WalkComplaint_UserName")] public string UserName { get; set; } /// /// Kommentar zur Beschwerde von gehgassi /// [Display(Name = "WalkComplaint_Comment")] public string Comment { get; set; } /// /// Datum der Lösung der Beschwerde /// [Display(Name = "WalkComplaint_Resolved")] public DateTimeOffset? Resolved { get; set; } /// /// Datum der Erstellung der Beschwerde /// [Required(ErrorMessage = "Err_Required")] [Display(Name = "Common_Created")] public DateTimeOffset Created { get; set; } } /// /// Viewmodel für eine Reklamation Listendarstellung /// public class WalkComplaintListVm : SyncEntityListVm { /// /// Id des Walks /// public string WalkId { get; set; } /// /// Art der Walk Anfrage /// public WalkTypeVm WalkType { get; set; } public string WalkTypeText { get; set; } /// /// Welche Art von Service soll durchgeführt werden /// public WalkServiceTypeVm WalkServiceType { get; set; } public string WalkServiceTypeText { get; set; } /// /// Name des DogWalkers /// public string DogWalkerName { get; set; } /// /// Foto des Dogwalkers /// public string DogWalkerPhoto { get; set; } /// /// Name des Hundebesitzers /// public string DogOwnerName { get; set; } /// /// Foto des Hundebesitzers /// public string DogOwnerPhoto { get; set; } /// /// Startdatum des Walks mit Urhrzeit /// public DateTimeOffset WalkStart { get; set; } /// /// Enddatum des Walks mit Uhrzeit /// public DateTimeOffset WalkEnd { get; set; } /// /// Abholadresse - ISO2 Ländercode /// public string PickupAddress_CountryCode { get; set; } /// /// Preis für den Walk / Das Sitting. Wird gesetzt und kann entweder fix sein (öffentliche Anfrage) oder errechnet /// public decimal WalkPrice { get; set; } /// /// Wer hat die Beschwerde erstellt? /// public WalkComplaintSourceVm Source { get; set; } public string SourceText { get; set; } /// /// Art der Beschwerde /// public WalkComplaintTypeVm Type { get; set; } public string TypeText { get; set; } /// /// Status der Beschwerde /// public WalkComplaintStatusVm Status { get; set; } public string StatusText { get; set; } /// /// Gehgassi Benutzer der die Beschwerde zuletzt bearbeitet hat /// public string UserName { get; set; } /// /// Datum der Lösung der Beschwerde /// public DateTimeOffset? Resolved { get; set; } /// /// Datum der Erstellung der Beschwerde /// public DateTimeOffset Created { get; set; } } }