using gehGassi.Dto.Common; using gehGassi.Dto.Dogs; using System.Collections.Generic; using System; using gehGassi.Domain.Common; using gehGassi.Domain.Dogs; using System.ComponentModel.DataAnnotations.Schema; namespace gehGassi.Web.Models { /// /// Viewmodel für Walks mit Namen aufgelöst /// public class WalkWithNamesVm : SyncEntityListVm { /// /// Art der Walk Anfrage /// public WalkTypeVm Type { get; set; } /// /// Welche Art von Service soll durchgeführt werden /// public WalkServiceTypeVm ServiceType { get; set; } /// /// Id des Walkers /// public string DogWalkerId { get; set; } /// /// Name des DogWalkers /// public string DogWalkerName { get; set; } /// /// Foto des Dogwalkers /// public string DogWalkerPhoto { get; set; } /// /// Id des Hundebesitzers /// public string DogOwnerId { get; set; } /// /// Name des Hundebesitzers /// public string DogOwnerName { get; set; } /// /// Foto des Hundebesitzers /// public string DogOwnerPhoto { get; set; } /// /// Id der öffentlichen Anfrage, wenn über diese erstellt /// public string PublicWalkRequestId { get; set; } /// /// Jsonliste mit Id´s der Hunde die ausgewählt wurden /// public string DogsJson { get; set; } /// /// Liste der Hunde /// [NotMapped] public List Dogs { get; set; } /// /// Anzahl der Hunde /// public int DogCount { get; set; } /// /// Startdatum des Walks mit Urhrzeit /// public DateTimeOffset Start { get; set; } /// /// Enddatum des Walks mit Uhrzeit /// public DateTimeOffset End { get; set; } /// /// Abholadresse - Adresszeile 1 /// public string PickupAddress_AddressLine1 { get; set; } /// /// Abholadresse - Adresszeile 2 /// public string PickupAddress_AddressLine2 { get; set; } /// /// Abholadresse - Stadt / Ort /// public string PickupAddress_City { get; set; } /// /// Abholadresse - PLZ /// public string PickupAddress_Zip { get; set; } /// /// Abholadresse - Bundesland / Staat /// public string PickupAddress_State { get; set; } /// /// Abholadresse - ISO2 Ländercode /// public string PickupAddress_CountryCode { get; set; } /// /// RückgabeAdresse - Adresszeile 1 /// public string ReturnAddress_AddressLine1 { get; set; } /// /// RückgabeAdresse - Adresszeile 2 /// public string ReturnAddress_AddressLine2 { get; set; } /// /// RückgabeAdresse - Stadt / Ort /// public string ReturnAddress_City { get; set; } /// /// RückgabeAdresse - PLZ /// public string ReturnAddress_Zip { get; set; } /// /// RückgabeAdresse - Bundesland / Staat /// public string ReturnAddress_State { get; set; } /// /// RückgabeAdresse - ISO2 Ländercode /// public string ReturnAddress_CountryCode { get; set; } /// /// Preis für den Walk / Das Sitting. Wird gesetzt und kann entweder fix sein (öffentliche Anfrage) oder errechnet /// public decimal Price { get; set; } /// /// Zusatzinfo für den Walk. Z.B. bei Susi klingeln /// public string Info { get; set; } /// /// Status eines Walks /// public WalkStatusVm Status { get; set; } /// /// Wann wurde der Walk / Sitting gestartet? /// public DateTimeOffset? Started { get; set; } /// /// Wann wurde der Walk / Sitting beendet? /// public DateTimeOffset? Completed { get; set; } /// /// Wann wurde der Walk / Sitting bestätigt? /// public DateTimeOffset? Confirmed { get; set; } /// /// Wann wurde der Walk / Sitting reklamiert? /// public DateTimeOffset? Complained { get; set; } /// /// Optional: Grund für die Reklamation /// public string ComplainReason { get; set; } #region Status Infos /// /// Optional: Grund für die Ablehnung /// public string DeclinedReason { get; set; } /// /// Optional: Grund für die Stornierung /// public string CancelledReason { get; set; } /// /// Wer hat eine Stornierung durchgeführt /// public CancellationSourceVm CancelledBy { get; set; } /// /// Anmerkungen vom Walker nach dem Abschluss /// public string CompletedInfo { get; set; } /// /// Kotabsatz? /// public bool Defactation { get; set; } #endregion #region Payment /// /// Zahlungsstatus des Walks /// public PaymentStatusVm PaymentStatus { get; set; } /// /// Zahlungsart des Walks /// public WalkPaymentTypeVm PaymentType { get; set; } #endregion /// /// Datum der Erstellung des Walks /// public DateTimeOffset Created { get; set; } } /// /// Viewmodel für Walks mit Namen aufgelöst für listen /// public class WalkWithNamesListVm : SyncEntityListVm { /// /// Art der Walk Anfrage /// public WalkTypeVm Type { get; set; } /// /// Art der Walk Anfrage /// public string TypeText { get; set; } /// /// Welche Art von Service soll durchgeführt werden /// public WalkServiceTypeVm ServiceType { get; set; } /// /// Welche Art von Service soll durchgeführt werden /// public string ServiceTypeText { get; set; } /// /// Id des Walkers /// public string DogWalkerId { get; set; } /// /// Name des DogWalkers /// public string DogWalkerName { get; set; } /// /// Foto des Dogwalkers /// public string DogWalkerPhoto { get; set; } /// /// Id des Hundebesitzers /// public string DogOwnerId { get; set; } /// /// Name des Hundebesitzers /// public string DogOwnerName { get; set; } /// /// Foto des Hundebesitzers /// public string DogOwnerPhoto { get; set; } /// /// Id der öffentlichen Anfrage, wenn über diese erstellt /// public string PublicWalkRequestId { get; set; } /// /// Anzahl der Hunde /// public int DogCount { get; set; } /// /// Startdatum des Walks mit Urhrzeit /// public DateTimeOffset Start { get; set; } /// /// Enddatum des Walks mit Uhrzeit /// public DateTimeOffset End { get; set; } /// /// Abholadresse - Stadt / Ort /// public string PickupAddress_City { get; set; } /// /// Abholadresse - PLZ /// public string PickupAddress_Zip { get; set; } /// /// Abholadresse - ISO2 Ländercode /// public string PickupAddress_CountryCode { get; set; } /// /// RückgabeAdresse - Stadt / Ort /// public string ReturnAddress_City { get; set; } /// /// RückgabeAdresse - PLZ /// public string ReturnAddress_Zip { get; set; } /// /// RückgabeAdresse - ISO2 Ländercode /// public string ReturnAddress_CountryCode { get; set; } /// /// Preis für den Walk / Das Sitting. Wird gesetzt und kann entweder fix sein (öffentliche Anfrage) oder errechnet /// public decimal Price { get; set; } /// /// Status eines Walks /// public WalkStatusVm Status { get; set; } /// /// Status eines Walks /// public string StatusText { get; set; } /// /// Wann wurde der Walk / Sitting gestartet? /// public DateTimeOffset? Started { get; set; } /// /// Wann wurde der Walk / Sitting beendet? /// public DateTimeOffset? Completed { get; set; } /// /// Wann wurde der Walk / Sitting bestätigt? /// public DateTimeOffset? Confirmed { get; set; } /// /// Wann wurde der Walk / Sitting reklamiert? /// public DateTimeOffset? Complained { get; set; } #region Payment /// /// Zahlungsstatus des Walks /// public PaymentStatusVm PaymentStatus { get; set; } /// /// Zahlungsstatus des Walks /// public string PaymentStatusText { get; set; } /// /// Welche Art von Bezahlung wurde verwendet /// public WalkPaymentTypeVm PaymentType { get; set; } /// /// Welche Art von Bezahlung wurde verwendet /// public string PaymentTypeText { get; set; } #endregion /// /// Datum der Erstellung des Walks /// public DateTimeOffset Created { get; set; } } }