41 lines
1.3 KiB
C#
41 lines
1.3 KiB
C#
using Marco.Pms.Model.Dtos.Attendance;
|
|
using Marco.Pms.Model.Employees;
|
|
using Marco.Pms.Model.Utilities;
|
|
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace Marco.Pms.Model.AttendanceModule
|
|
{
|
|
public class Attendance : TenantRelation
|
|
{
|
|
public Guid Id { get; set; }
|
|
public string Comment { get; set; } = string.Empty;
|
|
public Guid EmployeeId { get; set; }
|
|
|
|
[ForeignKey("EmployeeId")]
|
|
[ValidateNever]
|
|
public Employee? Employee { get; set; }
|
|
public DateTime Date { get; set; }
|
|
public Guid ProjectID { get; set; }
|
|
|
|
public DateTime AttendanceDate { get; set; }
|
|
public DateTime? RequestedAt { get; set; }
|
|
public DateTime? ApprovedAt { 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 Guid? ApprovedById { get; set; }
|
|
|
|
[ForeignKey("ApprovedById")]
|
|
[ValidateNever]
|
|
public Employee? Approver { get; set; }
|
|
public Guid? RequestedById { get; set; }
|
|
|
|
[ForeignKey("RequestedById")]
|
|
[ValidateNever]
|
|
public Employee? RequestedBy { get; set; }
|
|
}
|
|
}
|