199 lines
4.9 KiB
C#
199 lines
4.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using gehGassi.Dto.Common;
|
|
|
|
namespace gehGassi.Dto.Vouchers
|
|
{
|
|
/// <summary>
|
|
/// DTO zum Überprüfen eines Gutscheincodes
|
|
/// </summary>
|
|
public class CheckVoucherCodeDto
|
|
{
|
|
/// <summary>
|
|
/// Manueller Gutscheincode
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(14)]
|
|
public string Code { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id des AppUsers
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string AppUserId { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Dto für die Antwort auf die Überprüfung eines Gutscheincodes
|
|
/// </summary>
|
|
public class CheckVoucherCodeResultDto
|
|
{
|
|
/// <summary>
|
|
/// Id des Gutscheins
|
|
/// </summary>
|
|
public string VoucherId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id der Kampagne
|
|
/// </summary>
|
|
public string VoucherCampaignId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ der Kampagne - Rabattgutschein oder Wertgutschein
|
|
/// </summary>
|
|
public VoucherCampaignTypeDto CampaignType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Wert des Gutscheins
|
|
/// </summary>
|
|
public decimal VoucherAmmount { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ergebnis der Validierung
|
|
/// </summary>
|
|
public VoucherValidationResultDto ValidationResult { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO zum abfragen eines Gutschein-Codes via QR-Code
|
|
/// </summary>
|
|
public class GetVoucherByQrCodeDto
|
|
{
|
|
/// <summary>
|
|
/// QR Gutscheincode
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(32)]
|
|
public string QrCode { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO zum abfragen eines Gutschein-Codes via QR-Code
|
|
/// </summary>
|
|
public class VoucherByQrCodeResultDto
|
|
{
|
|
/// <summary>
|
|
/// Existiert ein Code für den QR-Code
|
|
/// </summary>
|
|
public bool Exists { get; set; }
|
|
|
|
/// <summary>
|
|
/// Code des Gutscheins
|
|
/// </summary>
|
|
public string Code { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO zum Reservieren eines Gutscheins
|
|
/// </summary>
|
|
public class ReserveVoucherDto
|
|
{
|
|
/// <summary>
|
|
/// Id des Gutscheins
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string VoucherId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Manueller Gutscheincode
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(14)]
|
|
public string Code { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id des AppUsers
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string AppUserId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id des Walks
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string WalkId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Betrag der reserviert werden soll. Muss kleiner oder gleich dem Gutscheinwert sein
|
|
/// </summary>
|
|
[Required]
|
|
public decimal Ammount { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO für die Antwort auf die Reservierung eines Gutscheins
|
|
/// </summary>
|
|
public class ReserveVoucherResultDto
|
|
{
|
|
/// <summary>
|
|
/// Erfolgreich reserviert
|
|
/// </summary>
|
|
public bool Success { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id der Reservierung. -1 wenn nicht erfolgreich
|
|
/// </summary>
|
|
public long VoucherUsageId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Ergebnis der Validierung
|
|
/// </summary>
|
|
public VoucherValidationResultDto ValidationResult { get; set; }
|
|
|
|
/// <summary>
|
|
/// Geldtransfer fehlgeschlagen
|
|
/// </summary>
|
|
public bool TransferFailed { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gutschein nicht gefunden
|
|
/// </summary>
|
|
public bool VoucherNotFound { get; set; }
|
|
|
|
/// <summary>
|
|
/// Kampagne nicht gefunden
|
|
/// </summary>
|
|
public bool CampaignNotFound { get; set; }
|
|
|
|
/// <summary>
|
|
/// Kunde nicht gefunden
|
|
/// </summary>
|
|
public bool CustomerNotFound { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// DTO zum Stornieren eines Gutscheins, egal ob reserviert oder nicht
|
|
/// </summary>
|
|
public class CancelVoucherDto
|
|
{
|
|
/// <summary>
|
|
/// Id des Gutscheins
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string VoucherId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id des AppUsers
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string AppUserId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Id des Walks
|
|
/// </summary>
|
|
[Required]
|
|
[MaxLength(128)]
|
|
public string WalkId { get; set; }
|
|
}
|
|
}
|