Changed models, added Application layer models
This commit is contained in:
		| @@ -1,21 +1,20 @@ | ||||
| using Domains.LocationDomain; | ||||
|  | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| /// Model of address | ||||
| /// <remarks>Owned</remarks> | ||||
| public class Address | ||||
| { | ||||
|     /// Model of address | ||||
|     /// <remarks>Owned</remarks> | ||||
|     public class Address | ||||
|     { | ||||
|         /// Country part of address | ||||
|         public Country Country { get; set; } = null!; | ||||
|     /// Country part of address | ||||
|     public Country Country { get; set; } = null!; | ||||
|  | ||||
|         /// City part of address | ||||
|         public City City { get; set; } = null!; | ||||
|     /// City part of address | ||||
|     public City City { get; set; } = null!; | ||||
|  | ||||
|         /// Street part of address | ||||
|         public string Street { get; set; } = null!; | ||||
|     /// Street part of address | ||||
|     public string Street { get; set; } = null!; | ||||
|  | ||||
|         /// Building part of address | ||||
|         public string Building { get; set; } = null!; | ||||
|     } | ||||
| } | ||||
|     /// Building part of address | ||||
|     public string Building { get; set; } = null!; | ||||
| } | ||||
| @@ -1,57 +1,56 @@ | ||||
| using Domains.LocationDomain; | ||||
| using Domains.VisaApplicationDomain; | ||||
|  | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| /// Model of an applicant | ||||
| public class Applicant : IEntity | ||||
| { | ||||
|     /// Model of an applicant | ||||
|     public class Applicant : IEntity | ||||
|     { | ||||
|         /// Unique identifier of the <see cref="Applicant"/> | ||||
|         public Guid Id { get; set; } | ||||
|     /// Unique identifier of the <see cref="Applicant"/> | ||||
|     public Guid Id { get; set; } | ||||
|  | ||||
|         /// Full name of the <see cref="Applicant"/> | ||||
|         public Name Name { get; set; } = null!; | ||||
|     /// Full name of the <see cref="Applicant"/> | ||||
|     public Name Name { get; set; } = null!; | ||||
|  | ||||
|         /// Passport of <see cref="Applicant"/> | ||||
|         public Passport Passport { get; set; } = null!; | ||||
|     /// Passport of <see cref="Applicant"/> | ||||
|     public Passport Passport { get; set; } = null!; | ||||
|  | ||||
|         /// Date of birth of the <see cref="Applicant"/> | ||||
|         public DateTime BirthDate { get; set; } | ||||
|     /// Date of birth of the <see cref="Applicant"/> | ||||
|     public DateTime BirthDate { get; set; } | ||||
|  | ||||
|         /// <see cref="Country"/> of birth of the <see cref="Applicant"/> | ||||
|         public Country CountryOfBirth { get; set; } = null!; | ||||
|     /// <see cref="Country"/> of birth of the <see cref="Applicant"/> | ||||
|     public Country CountryOfBirth { get; set; } = null!; | ||||
|  | ||||
|         /// <see cref="City"/> of birth of the <see cref="Applicant"/> | ||||
|         public City CityOfBirth { get; set; } = null!; | ||||
|     /// <see cref="City"/> of birth of the <see cref="Applicant"/> | ||||
|     public City CityOfBirth { get; set; } = null!; | ||||
|  | ||||
|         /// Citizenship of <see cref="Applicant"/> | ||||
|         public string Citizenship { get; set; } = null!; | ||||
|     /// Citizenship of <see cref="Applicant"/> | ||||
|     public string Citizenship { get; set; } = null!; | ||||
|  | ||||
|         /// Citizenship by birth of <see cref="Applicant"/> | ||||
|         public string CitizenshipByBirth { get; set; } = null!; | ||||
|     /// Citizenship by birth of <see cref="Applicant"/> | ||||
|     public string CitizenshipByBirth { get; set; } = null!; | ||||
|  | ||||
|         /// Gender of <see cref="Applicant"/> | ||||
|         public Gender Gender { get; set; } | ||||
|     /// Gender of <see cref="Applicant"/> | ||||
|     public Gender Gender { get; set; } | ||||
|  | ||||
|         /// Marital status of <see cref="Applicant"/> | ||||
|         public MaritalStatus MaritalStatus { get; set; } | ||||
|     /// Marital status of <see cref="Applicant"/> | ||||
|     public MaritalStatus MaritalStatus { get; set; } | ||||
|  | ||||
|         /// Full name of the <see cref="Applicant"/>'s father | ||||
|         public Name FatherName { get; set; } = null!; | ||||
|     /// Full name of the <see cref="Applicant"/>'s father | ||||
|     public Name FatherName { get; set; } = null!; | ||||
|  | ||||
|         /// Full name of the <see cref="Applicant"/>'s mother | ||||
|         public Name MotherName { get; set; } = null!; | ||||
|     /// Full name of the <see cref="Applicant"/>'s mother | ||||
|     public Name MotherName { get; set; } = null!; | ||||
|  | ||||
|         /// Position of <see cref="Applicant"/> | ||||
|         public string JobTitle { get; set; } = null!; | ||||
|     /// Position of <see cref="Applicant"/> | ||||
|     public string JobTitle { get; set; } = null!; | ||||
|  | ||||
|         /// Place of <see cref="Applicant"/>'s work | ||||
|         public PlaceOfWork PlaceOfWork { get; set; } = null!; | ||||
|     /// Place of <see cref="Applicant"/>'s work | ||||
|     public PlaceOfWork PlaceOfWork { get; set; } = null!; | ||||
|  | ||||
|         /// Is <see cref="Applicant"/> a non-resident | ||||
|         public bool IsNonResident { get; set; } | ||||
|     /// Is <see cref="Applicant"/> a non-resident | ||||
|     public bool IsNonResident { get; set; } | ||||
|  | ||||
|         /// List of <see cref="Applicant"/>'s applications | ||||
|         public List<VisaApplication> VisaApplications { get; set; } = null!; | ||||
|     } | ||||
| } | ||||
|     /// List of <see cref="Applicant"/>'s applications | ||||
|     public List<VisaApplication> VisaApplications { get; set; } = null!; | ||||
| } | ||||
| @@ -1,10 +1,9 @@ | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| public enum Gender | ||||
| { | ||||
|     public enum Gender | ||||
|     { | ||||
|         Unknown, | ||||
|         Male, | ||||
|         Female, | ||||
|         Turkish | ||||
|     } | ||||
| } | ||||
|     Unknown, | ||||
|     Male, | ||||
|     Female, | ||||
|     Turkish | ||||
| } | ||||
| @@ -1,11 +1,10 @@ | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| public enum MaritalStatus | ||||
| { | ||||
|     public enum MaritalStatus | ||||
|     { | ||||
|         Other, | ||||
|         Married, | ||||
|         Unmarried, | ||||
|         Separated, | ||||
|         WidowOrWidower | ||||
|     } | ||||
| } | ||||
|     Other, | ||||
|     Married, | ||||
|     Unmarried, | ||||
|     Separated, | ||||
|     WidowOrWidower | ||||
| } | ||||
| @@ -1,13 +1,12 @@ | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| /// Model of full name | ||||
| /// <remarks>Owned</remarks> | ||||
| public class Name | ||||
| { | ||||
|     /// Model of full name | ||||
|     /// <remarks>Owned</remarks> | ||||
|     public class Name | ||||
|     { | ||||
|         public string FirstName { get; set; } = null!; | ||||
|     public string FirstName { get; set; } = null!; | ||||
|  | ||||
|         public string Surname { get; set; } = null!; | ||||
|     public string Surname { get; set; } = null!; | ||||
|  | ||||
|         public string? Patronymic { get; set; } | ||||
|     } | ||||
| } | ||||
|     public string? Patronymic { get; set; } | ||||
| } | ||||
| @@ -1,19 +1,18 @@ | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| /// Model of passport | ||||
| /// <remarks>Owned</remarks> | ||||
| public class Passport | ||||
| { | ||||
|     /// Model of passport | ||||
|     /// <remarks>Owned</remarks> | ||||
|     public class Passport | ||||
|     { | ||||
|         /// Number of <see cref="Passport"/> | ||||
|         public string Number { get; set; } = null!; | ||||
|     /// Number of <see cref="Passport"/> | ||||
|     public string Number { get; set; } = null!; | ||||
|  | ||||
|         /// Issuing authority of <see cref="Passport"/> | ||||
|         public string Issuer { get; set; } = null!; | ||||
|     /// Issuing authority of <see cref="Passport"/> | ||||
|     public string Issuer { get; set; } = null!; | ||||
|  | ||||
|         /// Date of issue | ||||
|         public DateTime IssueDate { get; set; } | ||||
|     /// Date of issue | ||||
|     public DateTime IssueDate { get; set; } | ||||
|  | ||||
|         /// Date when the <see cref="Passport"/> expires | ||||
|         public DateTime ExpirationDate { get; set; } | ||||
|     } | ||||
| } | ||||
|     /// Date when the <see cref="Passport"/> expires | ||||
|     public DateTime ExpirationDate { get; set; } | ||||
| } | ||||
| @@ -1,17 +1,16 @@ | ||||
| namespace Domains.ApplicantDomain | ||||
| namespace Domains.ApplicantDomain; | ||||
|  | ||||
| public class PlaceOfWork : IEntity | ||||
| { | ||||
|     public class PlaceOfWork : IEntity | ||||
|     { | ||||
|         /// Unique identifier of <see cref="PlaceOfWork"/> | ||||
|         public Guid Id { get; private set; } = Guid.NewGuid(); | ||||
|     /// Unique identifier of <see cref="PlaceOfWork"/> | ||||
|     public Guid Id { get; private set; } = Guid.NewGuid(); | ||||
|  | ||||
|         /// Name of hirer | ||||
|         public string Name { get; set; } = null!; | ||||
|     /// Name of hirer | ||||
|     public string Name { get; set; } = null!; | ||||
|  | ||||
|         /// <see cref="ApplicantDomain.Address"/> of hirer | ||||
|         public Address Address { get; set; } = null!; | ||||
|     /// <see cref="ApplicantDomain.Address"/> of hirer | ||||
|     public Address Address { get; set; } = null!; | ||||
|  | ||||
|         /// Phone number of hirer | ||||
|         public string PhoneNum { get; set; } = null!; | ||||
|     } | ||||
| } | ||||
|     /// Phone number of hirer | ||||
|     public string PhoneNum { get; set; } = null!; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user