Florian Mihalits 38142f2435 Add payment type handling for walks
- Updated `Walk` class to include `PaymentType` property.
- Introduced `WalkPaymentTypeDto` enum for payment types.
- Modified DTOs (`PublicWalkRequestAcceptDto`, `WalkCreateDto`, `WalkDto`, `WalkWithNamesDto`) to include `PaymentType`.
- Enhanced `ApiWalksController` with new endpoints for accepting and canceling walks, and confirming walks with ratings.
- Updated `MappingProfile` for seamless conversion between `WalkPaymentType` and `WalkPaymentTypeDto`.
2025-06-30 15:08:57 +02:00

1338 lines
31 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
namespace gehGassi.Dto.Common
{
/// <summary>
/// Modus in welchem sich die App befindet.
/// Ist wichtig für die Abfrage von Daten wenn der Benutzer beides ist
/// </summary>
public enum AppModeDto
{
/// <summary>
/// Hundebesitzer
/// </summary>
DogOwner = 10,
/// <summary>
/// Hundeausführer
/// </summary>
DogWalker = 20
}
/// <summary>
/// Online / Offline Status von Entitäten.
/// Kann für die Synchronisation verwendet werden.
/// So können z.B. Rubriken ein- oder ausgeschalten werden
/// </summary>
public enum OnlineStatusDto
{
/// <summary>
/// Offline
/// </summary>
Offline = 0,
/// <summary>
/// Online
/// </summary>
Online = 1
}
/// <summary>
/// Status einer News
/// </summary>
public enum NewsStatusDto
{
/// <summary>
/// Entwurf
/// </summary>
Draft = 0,
/// <summary>
/// Freizugeben
/// </summary>
ToApprove = 10,
/// <summary>
/// Abgelehnt
/// </summary>
Declined = 20,
/// <summary>
/// Genehmigt
/// </summary>
Approved = 30,
/// <summary>
/// Laufend
/// </summary>
Running = 40,
/// <summary>
/// Beendet
/// </summary>
Ended = 50,
/// <summary>
/// Manuell gestoppt
/// </summary>
Stopped = 100
}
/// <summary>
/// Definiert die Sichtbarkeit von News
/// </summary>
public enum NewsVisibilityDto
{
/// <summary>
/// Nicht sichtbar
/// </summary>
None = 1,
/// <summary>
/// Sichtbar für Hundebesitzer
/// </summary>
DogOwners = 10,
/// <summary>
/// Sichtbar für Hundeausführer
/// </summary>
DogWalkers = 20,
/// <summary>
/// Sichtbar für Hundebesitzer und Hundeausführer
/// </summary>
DogWalkerAndOwners = 30
}
/// <summary>
/// Repräsentiert den Typen eines App-Users
/// </summary>
public enum AppUserTypeDto
{
/// <summary>
/// Hundebesitzer
/// </summary>
DogOwner = 10,
/// <summary>
/// Hundeausführer
/// </summary>
DogWalker = 20,
/// <summary>
/// Beides - Hundebesitzer und Hundeausführer
/// </summary>
Both = 30
}
/// <summary>
/// Status des Anlegens eines Datensatzes
/// </summary>
public enum CreateStatusDto
{
/// <summary>
/// Erfolg
/// </summary>
Success = 1,
/// <summary>
/// Existiert bereits
/// </summary>
Exists = 2,
/// <summary>
/// Fehler
/// </summary>
Error = 0
}
/// <summary>
/// Geschlecht
/// </summary>
public enum SexDto
{
/// <summary>
/// Undefiniert
/// </summary>
Undefined = 0,
/// <summary>
/// Männlich
/// </summary>
Male = 1,
/// <summary>
/// Weiblich
/// </summary>
Female = 2,
/// <summary>
/// Divers
/// </summary>
Diverse = 3,
/// <summary>
/// Inter
/// </summary>
Inter = 4,
/// <summary>
/// Offen
/// </summary>
Open = 5
}
/// <summary>
/// Typ der Listung
/// </summary>
public enum ListingTypeDto
{
/// <summary>
/// Basis-Listung
/// </summary>
Base = 0,
/// <summary>
/// Silber-Listung
/// </summary>
Silver = 10,
/// <summary>
/// Gold-Listung
/// </summary>
Gold = 20,
/// <summary>
/// Platin-Listung
/// </summary>
Platin = 30
}
/// <summary>
/// Wo kann ein Banner plaziert werden
/// </summary>
public enum BannerLocationDto
{
/// <summary>
/// Keine
/// </summary>
None = 0,
/// <summary>
/// Homescreen
/// </summary>
Home = 1,
/// <summary>
/// Nachrichten
/// </summary>
Messages = 10,
/// <summary>
/// Termin anlegen
/// </summary>
Appointment = 20,
/// <summary>
/// Hundeprofil
/// </summary>
DogProfile = 30,
/// <summary>
/// Ende eines Walks
/// </summary>
WalkEnd = 40,
/// <summary>
/// Erstregistrierung
/// </summary>
Registration = 50,
/// <summary>
/// Favoriten
/// </summary>
Favorites = 60
}
/// <summary>
/// Banner-Größen
/// </summary>
public enum BannerSizeDto
{
/// <summary>
/// Standard: 320 x 50
/// </summary>
Standard = 1,
/// <summary>
/// Groß: 320 x 90
/// </summary>
Large = 10,
/// <summary>
/// Medium rechteckig: 300 x 250
/// </summary>
MediumRectangular = 20
}
/// <summary>
/// Status eines Banners
/// </summary>
public enum BannerStatusDto
{
/// <summary>
/// Entwurf
/// </summary>
Draft = 0,
/// <summary>
/// Zu bezahlen
/// </summary>
ToPay = 10,
/// <summary>
/// Gebucht
/// </summary>
Booked = 20,
/// <summary>
/// Laufend
/// </summary>
Running = 30,
/// <summary>
/// Beendet
/// </summary>
Ended = 40,
/// <summary>
/// Storniert
/// </summary>
Cancelled = 50
}
/// <summary>
/// Geschlecht eines Hunde
/// </summary>
public enum DogSexDto
{
/// <summary>
/// Rüde
/// </summary>
MaleDog = 1,
/// <summary>
/// Hündin
/// </summary>
FemaleDog = 2
}
/// <summary>
/// Größe eines Hundes
/// </summary>
public enum DogSizeDto
{
/// <summary>
/// Kleiner Hund
/// </summary>
Small = 1,
/// <summary>
/// Mittelgroßer Hund
/// </summary>
Middle = 2,
/// <summary>
/// Großer Hund
/// </summary>
Big = 3,
/// <summary>
/// Riesenrasse
/// </summary>
Giant = 4
}
/// <summary>
/// Aggressionsgrad des Hundes
/// </summary>
public enum DogAggressionLevelDto
{
/// <summary>
/// Nieder
/// </summary>
Low = 1,
/// <summary>
/// Mittel
/// </summary>
Medium = 2,
/// <summary>
/// Hoch
/// </summary>
High = 3
}
/// <summary>
/// Fütterungszeiten für einen Hund
/// </summary>
public enum DogFeedingTimesDto
{
/// <summary>
/// Morgens
/// </summary>
Morning = 1,
/// <summary>
/// Abends
/// </summary>
Evening = 2,
/// <summary>
/// Morgens & Abends
/// </summary>
Both = 3,
/// <summary>
/// Individuell
/// </summary>
Individual = 4
}
/// <summary>
/// Arten von Dog-Walker Anfragen
/// </summary>
public enum DogWalkRequestTypeDto
{
/// <summary>
/// Akzeptiert gar keine Anfragen....
/// </summary>
None = 0,
/// <summary>
/// Ausführen
/// </summary>
Walking = 1,
/// <summary>
/// Sitting
/// </summary>
Sitting = 2,
/// <summary>
/// Beides
/// </summary>
Both = 3
}
/// <summary>
/// Art der öffentlichen Anfrage
/// </summary>
public enum PublicWalkRequestTypeDto
{
/// <summary>
/// Ausführen
/// </summary>
Walking = 1,
/// <summary>
/// Sitting
/// </summary>
Sitting = 2
}
/// <summary>
/// Status der offenen Anfrage
/// </summary>
public enum PublicWalkRequestStatusDto
{
/// <summary>
/// Offen
/// </summary>
Open = 1,
/// <summary>
/// vergeben
/// </summary>
Placed = 20,
/// <summary>
/// Abgelaufen
/// </summary>
TimedOut = 30,
/// <summary>
/// Storniert
/// </summary>
Cancelled = 40
}
/// <summary>
/// Status eines Angebotes für eine öffentliche Anfrage
/// </summary>
public enum PublicWalkResponseStatusDto
{
/// <summary>
/// Warten auf Antwort
/// </summary>
Awaiting = 1,
/// <summary>
/// Akzeptiert -> Walk erstellt
/// </summary>
Accepted = 10,
/// <summary>
/// Abgelehnt (vom Hundebesitzer)
/// </summary>
Declined = 20,
/// <summary>
/// Geschlossen -> entwender Timout oder jemand anderer hat den Zuschlag erhalten
/// </summary>
Closed = 30,
/// <summary>
/// Vom Walker storniert
/// </summary>
Cancelled = 40
}
public enum WalkTypeDto
{
/// <summary>
/// Anfrage basierend auf dem Schedule eine Walkers
/// </summary>
Scheduled = 1,
/// <summary>
/// Direkte Anfrage an einen Walker
/// </summary>
Direct = 2,
/// <summary>
/// Offene Anfrage an die Community
/// </summary>
OpenRequest = 3
}
/// <summary>
/// Welche Art von Service soll durchgeführt werden
/// </summary>
public enum WalkServiceTypeDto
{
/// <summary>
/// Walk
/// </summary>
Walking = 1,
/// <summary>
/// Sitting
/// </summary>
Sitting = 2,
/// <summary>
/// Daycare
/// </summary>
DayCare = 3
}
/// <summary>
/// Status eines Walks
/// </summary>
public enum WalkStatusDto
{
/// <summary>
/// Angefragt
/// </summary>
Requested = 1,
/// <summary>
/// Akzeptiert
/// </summary>
Accepted = 10,
/// <summary>
/// Abgelehnt
/// </summary>
Declined = 20,
/// <summary>
/// Storniert
/// </summary>
Cancelled = 30,
/// <summary>
/// Der Walk läuft
/// </summary>
Started = 40,
/// <summary>
/// Der Walk wurde beendet
/// </summary>
Completed = 50,
/// <summary>
/// Der Walk wurde vom Hundebesitzer oder dem System betätigt
/// </summary>
Confirmed = 60,
/// <summary>
/// Der Walk wurde reklamiert und es muss eine Lösung gesucht werden
/// </summary>
Complained = 70,
/// <summary>
/// Reklamation gelöst
/// </summary>
ComplainResolved = 80
}
/// <summary>
/// Wer hat etwas storniert
/// </summary>
public enum CancellationSourceDto
{
/// <summary>
/// Nicht storniert
/// </summary>
None = 0,
/// <summary>
/// Hundebesitzer
/// </summary>
DogOwner = 1,
/// <summary>
/// Hundeausführer
/// </summary>
DogWalker = 2,
/// <summary>
/// von gehgassi / System
/// </summary>
GehGassi = 10
}
/// <summary>
/// Zahlungsstatus
/// </summary>
public enum PaymentStatusDto
{
/// <summary>
/// Kein Status
/// </summary>
None = 0,
/// <summary>
/// Anstehend - dafür ist noch eine einzahlung zu leisten
/// </summary>
Pending = 10,
/// <summary>
/// Authorisiert - die Einzahlung wurde gemacht und der Walk kann durchgeführt werden
/// </summary>
Authorized = 20,
/// <summary>
/// Bezahlt - Nach eine Walk wurde die Bezahlung überwiesen
/// </summary>
Paid = 30,
//// <summary>
//// Teilweise Rückerstattung
//// </summary>
//PartiallyRefunded = 35,
/// <summary>
/// Rückerstattet - Rückerstattet wegen einer Reklamation
/// </summary>
Refunded = 40,
/// <summary>
/// Entwertet - Storniert
/// </summary>
Voided = 50,
/// <summary>
/// Rückerstattet und von gehGassi bezahlt
/// </summary>
RefundendAndPayed = 60
}
/// <summary>
/// Zahlungsart für einen Walk
/// </summary>
public enum WalkPaymentTypeDto
{
/// <summary>
/// Mit MangoPay bezahlen (z.B. Kreditkarte)
/// </summary>
MangoPay = 1,
/// <summary>
/// Barzahlung
/// </summary>
Cash = 10
}
/// <summary>
/// Sortierreihenfolge
/// </summary>
public enum SortDirectionDto
{
/// <summary>
/// Aufsteigend
/// </summary>
Ascending = 1,
/// <summary>
/// Absteigend
/// </summary>
Descending = 2
}
/// <summary>
/// Definition von Rating-Zielen.
/// </summary>
public enum RatingTargetDto
{
/// <summary>
/// Hundebesitzer
/// </summary>
Owner = 0,
/// <summary>
/// Walker
/// </summary>
Walker = 1,
/// <summary>
/// Hund
/// </summary>
Dog = 2,
/// <summary>
/// Einen einzelnen Walk
/// </summary>
Walk = 3,
/// <summary>
/// Eine Tagesbetreuung
/// </summary>
DayCare = 4,
/// <summary>
/// Ein Sitting
/// </summary>
Sitting = 5
}
/// <summary>
/// Typ des Feedbacks
/// </summary>
public enum AppFeedbackTypeDto
{
/// <summary>
/// Problem
/// </summary>
Problem = 1,
/// <summary>
/// Idee
/// </summary>
Idea = 20,
/// <summary>
/// Ich mag
/// </summary>
Like = 33,
/// <summary>
/// Ich mag nicht
/// </summary>
DontLike = 40,
/// <summary>
/// Allgemein
/// </summary>
General = 100
}
/// <summary>
/// Status des Feedbacks
/// </summary>
public enum AppFeedbackStatusDto
{
/// <summary>
/// Offen
/// </summary>
Open = 1,
/// <summary>
/// Geschlossen
/// </summary>
Closed = 10,
/// <summary>
/// Ignorieren
/// </summary>
Ignore = 20
}
/// <summary>
/// Typ einer Systemnachricht
/// </summary>
public enum SystemMessageTypeDto
{
/// <summary>
/// Text-Nachricht
/// </summary>
Text = 1,
/// <summary>
/// Logout durchführen
/// </summary>
Logout = 10,
/// <summary>
/// Öffentliche Anfrage hat sich geändert
/// </summary>
PublicWalkRequestChanged = 100,
/// <summary>
/// Öffentliche Anfrage - Antwort hinzugefügt
/// </summary>
PublicWalkResponseAdded = 101,
/// <summary>
/// Öffentliche Anfrage - Antwort bearbeitet
/// </summary>
PublicWakResponseChanged = 102,
/// <summary>
/// Öffentliche Anfrage - Antwort storniert
/// </summary>
PublicWalkResponseCancelled = 103,
/// <summary>
/// Öffentliche Anfrage - Antwort abgelehnt
/// </summary>
PublicWalkResponseDeclined = 104,
/// <summary>
/// Öffentliche Anfrage storniert
/// </summary>
PublicWalkRequestCancelled = 105,
/// <summary>
/// Erinnerung an eine Öffentliche Anfrage, falls noch nicht angenommen oder storniert
/// </summary>
PublicWalkRequestReminder = 106,
/// <summary>
/// Walk hat sich geändert
/// </summary>
WalkChanged = 200,
/// <summary>
/// Ein Walk für einen Walker wurde hinzugefügt
/// </summary>
WalkAdded = 201,
/// <summary>
/// Ein Walk wurde storniert
/// </summary>
WalkCancelled = 202,
/// <summary>
/// Ein Walk für einen Walker wurde hinzugefügt
/// </summary>
WalkStarted = 203,
/// <summary>
/// Ein Walk für einen Walker wurde hinzugefügt
/// </summary>
WalkCompleted = 204,
/// <summary>
/// Ein Walk wurde akzeptiert
/// </summary>
WalkAccepted = 205,
/// <summary>
/// Ein Walk wurde abgelehnt
/// </summary>
WalkDeclined = 206,
/// <summary>
/// Ein Walk wurde von einem Hundebesitzer angefragt
/// </summary>
WalkRequested = 207,
/// <summary>
/// Ein Walk sollte gestartet werden
/// </summary>
WalkStartReminder = 301,
/// <summary>
/// Ein Walk sollte abgeschlossen werden
/// </summary>
WalkCompleteReminder = 302,
/// <summary>
/// Ein Walk wurde bestätigt
/// </summary>
WalkConfirmed = 304,
/// <summary>
/// Ein Walk wurde reklamiert
/// </summary>
WalkComplained = 305,
/// <summary>
/// Ein Walk wurde reklamiert - Update
/// </summary>
WalkComplainedUpdate = 306,
/// <summary>
/// Eine Nachricht erhalten
/// </summary>
MessageReceived = 401,
/// <summary>
/// Identitätsprüfung aktualisiert
/// </summary>
IdentityDocumentUpdate = 501,
/// <summary>
/// Auszahlung aktualisiert
/// </summary>
PayoutUpdate = 601,
}
/// <summary>
/// Notification-Plattform die verwendet werden soll.
/// Das ist vom Typ des Gerätes abhängig
/// </summary>
public enum NotificationPlatformDto
{
/// <summary>
/// Windows Pushnotification
/// </summary>
Wns = 1,
/// <summary>
/// Apple Pushnotification
/// </summary>
Apns = 2,
/// <summary>
/// Microsoft Pushnotification
/// </summary>
Mpns = 3,
/// <summary>
/// Google Pushnotification (Firebase)
/// </summary>
Fcm = 4,
/// <summary>
/// Amazon Pushnotification
/// </summary>
Adm = 5,
/// <summary>
/// Baidu Pushnotification (Huawei)
/// </summary>
Baidu = 6,
/// <summary>
/// Google Pushnotification (Firebase) V1
/// </summary>
FcmV1 = 9
}
/// <summary>
/// Plattform die verwendet wird
/// </summary>
public enum PlatformDto
{
/// <summary>
/// Windows
/// </summary>
Windows = 1,
/// <summary>
/// Apple - Mac
/// </summary>
Mac = 2,
/// <summary>
/// Apple - IOS
/// </summary>
Ios = 3,
/// <summary>
/// Google - Android
/// </summary>
Android = 4
}
/// <summary>
/// Typ des Wallets
/// </summary>
public enum WalletTypeDto
{
/// <summary>
/// Gebühren - wird für Überweisungen an andere verwendet
/// </summary>
Fees = 1,
/// <summary>
/// Guthaben
/// </summary>
Credits = 2,
/// <summary>
/// Transaktionskonto für Kunden
/// </summary>
CustomerTransaction = 10,
/// <summary>
/// Guthabenkonto für Kunden
/// </summary>
CustomerCredits = 11,
/// <summary>
/// Transaktionskonto für Kunden
/// </summary>
CustomerTransactionVoucherCampaign = 20,
/// <summary>
/// Guthabenkonto für Kunden
/// </summary>
CustomerCreditsVoucherCampaign = 21,
}
/// <summary>
/// DTO für auf welche Art und Weise eine Zahlung erfolgt ist
/// </summary>
public enum PayInTypeDto
{
/// <summary>
/// Kreditkarte CB, Visa, Mastercard
/// </summary>
CB_VISA_MASTERCARD = 1,
/// <summary>
/// American Express
/// </summary>
AMEX = 20,
/// <summary>
/// Diners
/// </summary>
DINERS = 30,
/// <summary>
/// Maestro Karte
/// </summary>
MAESTRO = 40,
/// <summary>
/// Klarna - Sofort
/// </summary>
KLARNA = 50,
/// <summary>
/// Giropay
/// </summary>
GIRO = 60,
/// <summary>
/// PayPal
/// </summary>
PAYPAL = 70
}
/// <summary>
/// Typ des Quelldokumentes
/// </summary>
public enum IdentityDocumentSourceDto
{
/// <summary>
/// Pass
/// </summary>
Passport = 1,
/// <summary>
/// Aufenthaltsgenehmigung
/// </summary>
ResidencyCard = 2,
/// <summary>
/// Personalausweis / ID-Karte
/// </summary>
IdentityCard = 3,
/// <summary>
/// Führerschein
/// </summary>
DrivingLicense = 4
}
/// <summary>
/// Typ des Dokumentes für die KYC-Prüfung
/// </summary>
[Flags]
public enum IdentityDocumentTypeDto
{
NotSpecified = 0,
IDENTITY_PROOF = 1,
REGISTRATION_PROOF = 2,
ARTICLES_OF_ASSOCIATION = 4,
SHAREHOLDER_DECLARATION = 8,
ADDRESS_PROOF = 16, // 0x00000010
}
/// <summary>
/// Status des Dokumentes für die KYC-Prüfung
/// </summary>
[Flags]
public enum IdentityDocumentStatusDto
{
NotSpecified = 0,
CREATED = 1,
VALIDATION_ASKED = 2,
VALIDATED = 4,
REFUSED = 8,
OUT_OF_DATE = 16, // 0x00000010
}
/// <summary>
/// Status einer Mangopay-Transaktion
/// </summary>
[Flags]
public enum PaymentTransactionStatusDto
{
/// <summary>
/// Undefiniert
/// </summary>
NotSpecified = 0,
/// <summary>
/// Erstellt
/// </summary>
CREATED = 1,
/// <summary>
/// Erfolgreich
/// </summary>
SUCCEEDED = 2,
/// <summary>
/// Gescheitert
/// </summary>
FAILED = 4,
}
/// <summary>
/// Art der Beschwerde
/// </summary>
public enum WalkComplaintTypeDto
{
/// <summary>
/// Der Walk/Das Sitting wurde nicht durchgeführt.
/// </summary>
NoWalk = 10,
/// <summary>
/// Der Walk/Das Sitting war zu kurz. (zu spät gestartet etc.)
/// </summary>
ShortWalk = 20,
/// <summary>
/// Der/Die Hunde/e sind in einem nicht akzeptablen Zustand retour gekommen.
/// </summary>
Condition = 30,
/// <summary>
/// Sonstiger Grund diesen Walk/Sitting betreffend.
/// </summary>
Other = 100
}
/// <summary>
/// Status einer Reklamation
/// </summary>
public enum WalkComplaintStatusDto
{
/// <summary>
/// Offen
/// </summary>
Open = 1,
/// <summary>
/// In Bearbeitung
/// </summary>
InProgress = 10,
/// <summary>
/// Gelöst, Walker normal bezahlen
/// </summary>
Resolved_Pay = 20,
/// <summary>
/// Gelöst, Hundebesitzer bekommt Geld zurück
/// </summary>
Resolved_Refund = 30,
/// <summary>
/// Gelöst, Hundebesitzer bekommt Geld zurück, Walker bekommt Geld von gehgassi
/// </summary>
Resolved_Gehgassi = 40
}
/// <summary>
/// Wer hat die Beschwerde eingereicht?
/// </summary>
public enum WalkComplaintSourceDto
{
/// <summary>
/// Hundebesitzer
/// </summary>
DogOwner = 10,
/// <summary>
/// Hundeausführer
/// </summary>
DogWalker = 20,
}
/// <summary>
/// Kartentypen
/// </summary>
public enum CardTypeDto
{
NotSpecified,
CB_VISA_MASTERCARD,
AMEX,
DINERS,
MASTERPASS,
MAESTRO,
P24,
IDEAL,
BCMC,
PAYLIB,
}
/// <summary>
/// Gültigkeit einer Karte
/// </summary>
public enum ValidityDto
{
NotSpecified,
UNKNOWN,
VALID,
INVALID,
}
/// <summary>
/// Bereich der von der Meldung betroffen ist
/// Ist abhängig davon wo in der App die Meldung erstellt wurde.
/// Beeinflusst auch, welche Felder/Infos gemeldet werden können.
/// </summary>
public enum AppUserReportSectionDto
{
/// <summary>
/// Hundeprofil
/// </summary>
ProfileDog = 10,
/// <summary>
/// Konversationen
/// </summary>
Conversations = 20,
/// <summary>
/// Nachrichten
/// </summary>
Messages = 30,
/// <summary>
/// Konversation anlegen
/// </summary>
ConversationCreate = 40,
/// <summary>
/// Profil Hundebesitzer
/// </summary>
ProfileDogOwner = 50,
/// <summary>
/// Ratings Hund
/// </summary>
RatingsDog = 60,
/// <summary>
/// Ratings Hundebesitzer
/// </summary>
RatingsDogOwner = 70,
/// <summary>
/// Meine Ratings
/// </summary>
RatingsMy = 80,
/// <summary>
/// Ratings Walker
/// </summary>
RatingsWalker = 90,
/// <summary>
/// Walker Suche
/// </summary>
WalkersSearch = 100,
/// <summary>
/// Walker Profil
/// </summary>
ProfileWalker = 110,
/// <summary>
/// Offene Anfrage Hundebesitzer
/// </summary>
OpenRequestDogOwner = 120,
/// <summary>
/// Offene Anfrage Walker
/// </summary>
OpenRequestWalker = 130,
/// <summary>
/// Antwort auf offene Anfrage
/// </summary>
OpenRequestResponse = 140,
/// <summary>
/// Walks Hundebesitzer
/// </summary>
WalksDogOwner = 150,
/// <summary>
/// Offene Anfrage Hundebesitzer Details
/// </summary>
OpenRequestDogOwnerDetails = 160,
/// <summary>
/// Offene Anfrage Walker Details
/// </summary>
OpenRequestWalkerDetails = 170,
/// <summary>
/// Offene Anfrage Antworten
/// </summary>
OpenRequestResponses = 180,
/// <summary>
/// Walks Walker
/// </summary>
WalksWalker = 190,
/// <summary>
/// Walk Details Hundebesitzer
/// </summary>
WalkDetailDogOwner = 200,
/// <summary>
/// Walk Details Walker
/// </summary>
WalkDetailsWalker = 210,
/// <summary>
/// Favoriten Hundebesitzer
/// </summary>
FavouritesDogOwner = 220,
/// <summary>
/// Favoriten Walker
/// </summary>
FavouritesWalker = 230,
/// <summary>
/// Home Hundebesitzer
/// </summary>
HomeDogOwner = 240,
/// <summary>
/// Home Walker
/// </summary>
HomeWalker = 250
}
/// <summary>
/// Typ der Meldung
/// </summary>
public enum AppUserReportTypeDto
{
/// <summary>
/// Anstößiger Inhalt
/// </summary>
Objectionable = 10,
/// <summary>
/// Politisch inkorrekt
/// </summary>
PoliticallyIncorrect = 20,
/// <summary>
/// Obszön
/// </summary>
Obscene = 30,
/// <summary>
/// Unkorrekte Angabe
/// </summary>
IncorrectData = 40,
/// <summary>
/// Aufdringlich
/// </summary>
Intrusive = 50
}
/// <summary>
/// Wie soll eine Blockierung bei einer Meldung durchgeführt werden
/// </summary>
public enum AppUserReportBlockTypeDto
{
/// <summary>
/// Nicht blockieren
/// </summary>
NoBlock = 1,
/// <summary>
/// für eine bestimmte Zeit blockieren
/// </summary>
BlockForTime = 2,
/// <summary>
/// für immer blockieren
/// </summary>
BlockForever = 3
}
/// <summary>
/// Typ einer Gutschein Kampagne
/// </summary>
public enum VoucherCampaignTypeDto
{
/// <summary>
/// Ein Gutschein für alle
/// </summary>
SingleVoucher = 0,
/// <summary>
/// Mehrere Gutscheine je Nach Anzahl
/// </summary>
MultiVoucher = 10
}
/// <summary>
/// Validierungs-Ergebnis eines Gutscheins
/// </summary>
public enum VoucherValidationResultDto
{
/// <summary>
/// Gültig
/// </summary>
Valid = 1,
/// <summary>
/// Kampagne ist abgelaufen
/// </summary>
CampaignNotStarted = 10,
/// <summary>
/// Kampagne ist abgelaufen
/// </summary>
CampaignEnded = 20,
/// <summary>
/// Das Budget wurde aufgebraucht
/// </summary>
CampaignBudgetUsedUp = 30,
/// <summary>
/// Die maximale Anzahl an Verwendungen des Benutzers wurde erreicht
/// </summary>
MaxUsageReached = 40,
/// <summary>
/// Der Gutschein wurde verbraucht
/// </summary>
VoucherAlreadyUsed = 50,
/// <summary>
/// Der Gutschein wird außerhalb der Geo-Einschränkungen verwendet
/// </summary>
LocationNotAllowed = 60,
/// <summary>
/// Ungültiger Code
/// </summary>
Invalid = 90,
/// <summary>
/// Unbekanntes Problem
/// </summary>
Unknown = 100
}
/// <summary>
/// Länge des Abonnements
/// </summary>
public enum SubscriptionLengthDto
{
/// <summary>
/// Eine Woche
/// </summary>
OneWeek = 1,
/// <summary>
/// Ein Monat
/// </summary>
OneMonth = 2,
/// <summary>
/// Zwei Monate
/// </summary>
TwoMonths = 3,
/// <summary>
/// Drei Monate
/// </summary>
ThreeMonths = 4,
/// <summary>
/// Sechs Monate
/// </summary>
SixMonths = 5,
/// <summary>
/// Ein Jahr
/// </summary>
OneYear = 6
}
}