38 lines
1.0 KiB
C#
38 lines
1.0 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using ApplicationLayer.Services.VisaApplications.Models;
|
|
using Domains;
|
|
using Domains.VisaApplicationDomain;
|
|
|
|
namespace ApplicationLayer.Services.VisaApplications.Requests;
|
|
|
|
/// Model of visa request from user
|
|
public class VisaApplicationCreateRequest
|
|
{
|
|
public ReentryPermitModel? ReentryPermit { get; set; }
|
|
|
|
[Required]
|
|
[MaxLength(ConfigurationConstraints.CountryNameLength)]
|
|
public string DestinationCountry { get; set; } = null!;
|
|
|
|
[Required]
|
|
public VisaCategory VisaCategory { get; set; }
|
|
|
|
[Required]
|
|
public bool IsForGroup { get; set; }
|
|
|
|
[Required]
|
|
public RequestedNumberOfEntries RequestedNumberOfEntries { get; set; }
|
|
|
|
[Required]
|
|
[Range(0, ConfigurationConstraints.MaxValidDays)]
|
|
public int ValidDaysRequested { get; set; }
|
|
|
|
[Required]
|
|
public PastVisaModel[] PastVisas { get; set; } = null!;
|
|
|
|
public PermissionToDestCountryModel? PermissionToDestCountry { get; set; }
|
|
|
|
[Required]
|
|
public PastVisitModel[] PastVisits { get; set; } = null!;
|
|
}
|