using Marco.Pms.Model.Dtos.Attendance; using Marco.Pms.Model.Employees; using Marco.Pms.Model.Entitlements; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation; using Microsoft.Extensions.Logging; using System.ComponentModel; using System.ComponentModel.DataAnnotations.Schema; namespace Marco.Pms.Model.AttendanceModule { public class Attendance { public int Id { get; set; } public string Comment { get; set; } = string.Empty; public int EmployeeID { get; set; } public DateTime Date { get; set; } public int ProjectID { get; set; } public DateTime AttendanceDate { get; set; } public DateTime? InTime { get; set; } public DateTime? OutTime { get; set; } public bool IsApproved { get; set; } public ATTENDANCE_MARK_TYPE Activity { get; set; } public int? ApprovedBy { get; set; } [ForeignKey("EmployeeID")] [ValidateNever] public Employee Approver { get; set; } [DisplayName("TenantId")] public int TenantId { get; set; } [ValidateNever] [ForeignKey(nameof(TenantId))] public Tenant Tenant { get; set; } } }