using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LHDN.CRM.Models.Models
{
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;

    [Table("TP_Spouse")]
    public class TPSpouse
    {
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public long SpouseID { get; set; }

        [Required] 
        public long TPID { get; set; }

        [Required]
        public long STS_SpouseID { get; set; }

        [StringLength(25)]
        public string SpouseNoCukai { get; set; }

        [Required]
        [StringLength(255)]
        public string SpouseName { get; set; }

        [StringLength(12)]
        public string NoKPBaru { get; set; }

        [StringLength(12)]
        public string NoKPLama { get; set; }

        [StringLength(12)]
        public string NoPolis { get; set; }

        [StringLength(12)]
        public string NoPassport { get; set; }
         
        public int? IdentityTypeID { get; set; }

        [StringLength(12)]
        public string IdentityNo { get; set; }

        [StringLength(20)]
        public string NoImigration { get; set; }

        [Column(TypeName = "datetime2")]
        public DateTime? PassportExpiryDate { get; set; }

        public int StatusKahwinID { get; set; }

        [Column(TypeName = "datetime2")]
        public DateTime? TarikhKahwin { get; set; }

        [Column(TypeName = "datetime2")]
        public DateTime? TarikhCerai { get; set; }

        [Column(TypeName = "datetime2")]
        public Nullable<DateTime> STS_UpdatedDatetime { get; set; }

    }
}
