using Marco.Pms.Model.Employees;
using Marco.Pms.Model.Master;
using Marco.Pms.Model.Utilities;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System.ComponentModel.DataAnnotations.Schema;

namespace Marco.Pms.Model.Projects
{
    public class ProjectAllocation : TenantRelation
    {
        public Guid Id { get; set; }
        public Guid EmployeeId { get; set; }
        [ForeignKey("EmployeeId")]
        [ValidateNever]
        public Employee? Employee { get; set; }

        public Guid? JobRoleId { get; set; }
        //[ForeignKey("EmployeeRoleId")]
        //[ValidateNever]
        //public EmployeeRole EmployeeRole { get; set; }

        public bool IsActive { get; set; } = true;

        public Guid ProjectId { get; set; }

        [ForeignKey("ProjectId")]
        [ValidateNever]
        public Project? Project { get; set; }
        public Guid? ServiceId { get; set; }

        [ForeignKey("ServiceId")]
        [ValidateNever]
        public ServiceMaster? Service { get; set; }


        public DateTime AllocationDate { get; set; }
        public DateTime? ReAllocationDate { get; set; }
    }
}
