using MTWorkHR.Application.Models;
using MTWorkHR.Core.Entities;
using MTWorkHR.Core.Entities.Base;
using MTWorkHR.Core.Global;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MTWorkHR.Application.Models
{
    public class ContractAllHRDto : EntityDto
    {
        public ContractTypeEnum ContractTypeId { get; set; }
        public ContractStatusEnum ContractStatusId { get; set; }
        public TypeOfWork? TypeOfWork { get; set; } //: :   اختيار: عقد بدوام كامل -  عقد دوام جزئي   
        public DateTime? StartDate { get; set; }
        public DateTime? EndDate { get; set; }

        public long CompanyId { get; set; }
        
        public string UserId { get; set; }
        public string? EmployeeName { get; set; }
        public string? EmployeeEmail { get; set; }
        public string? ProfileImagePath { get; set; }

        public int? JobId { get; set; }
        //-------------------Scope of work-----------
        public string? JobTitleName { get; set; }
        public string? JobDescription{ get; set; }

        //----------Salary-----------------
        [MaxLength(50)]
        public string? Currency { get; set; }
        public decimal? Salary{ get; set; }
        public DateTime? LastInvoiceDate { get; set; }
        //------------------------Fixed Pay----------------
        public string? Teams{ get; set; }
        public int? RestVacations{ get; set; }
        public int? SpentVacations { get; set; }
        public int? VacationDays { get; set; } //اختيار: بدون – سنويا (رقم)

    }
}
