91 lines
2.2 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;
using gehGassi.Dto.Common;
namespace gehGassi.Dto.Payment
{
/// <summary>
/// DTO für eine Kreditkarte / Maestro eines App-Users
/// </summary>
public class CardDto : SyncEntityDto
{
/// <summary>
/// Id des App-Users
/// </summary>
[Required]
[MaxLength(128)]
public string AppUserId { get; set; }
/// <summary>
/// Id der Karte bei MangoPay
/// </summary>
[MaxLength(255)]
public string MangoPayId { get; set; }
/// <summary>
/// Id des Users bei MangoPay
/// </summary>
[MaxLength(255)]
public string MangoPayUserId { get; set; }
/// <summary>
/// Monat der Ablaufs
/// </summary>
[Required]
public int ExpirationMonth { get; set; }
/// <summary>
/// Jahr des Ablaufs
/// </summary>
[Required]
public int ExpirationYear { get; set; }
/// <summary>
/// Kartennummer - Alias
/// </summary>
[Required]
[MaxLength(50)]
public string CardNumber { get; set; }
/// <summary>
/// Typ der Karte
/// </summary>
[Required]
public CardTypeDto Type { get; set; }
/// <summary>
/// Von welchem Anbieter ist die Karte
/// </summary>
[Required]
[MaxLength(50)]
public string CardProvider { get; set; }
/// <summary>
/// Gültigkeit der Karte
/// </summary>
[Required]
public ValidityDto Validity { get; set; }
/// <summary>
/// Währung ISO 4217 Code
/// </summary>
[Required]
[MaxLength(3)]
public string Currency { get; set; }
/// <summary>
/// Ist die Karte aktiv?
/// </summary>
[Required]
public bool Active { get; set; }
/// <summary>
/// Datum der Erstellung des Kyc-Dokumentes
/// </summary>
[Required]
public DateTimeOffset Created { get; set; }
}
}