using vendorApproverBackend.Enums; using System.ComponentModel.DataAnnotations.Schema; using System.Text.Json.Serialization; namespace vendorApproverBackend.Entities; public class User { [Column("user_id")] public long Id { get; set; } [JsonIgnore] [Column("user_name")] public string Username { get; set; } [Column("email")] public string Email { get; set; } [JsonIgnore] [Column("password")] public string Password { get; set; } [Column("name")] public string Name { get; set; } = ""; [Column("gender")] public Gendre? Gendre { get; set; } [Column("phone_number")] public string? PhoneNumber { get; set; } [Column("city")] public string? City { get; set; } [Column("country")] public string? Country { get; set; } [Column("code")] public string? Code { get; set; } [Column("departement")] public string? Departement { get; set; } [Column("job_title")] public string? JobTitle { get; set; } [Column("position")] public string? Position { get; set; } [Column("active")] public bool Active { get; set; } = false; [Column("Status")] public bool Status { get; set; } = false; [Column("deleted")] public bool Deleted { get; set; } = false; [Column("start_date")] public DateTime StartDate { get; set; } [Column("role")] public RoleEnum Role { get; set; } [Column("type")] public EmployeeTypeEnum? Type { get; set; } /* [Column("Category")] public EmployeeCategory Category { get; set; } */ [JsonIgnore] public UserDevice? Device { get; set; } [JsonIgnore] public ICollection EmployeeApplications { get; set; } = new List(); [JsonIgnore] public virtual ICollection AssignedPrequalificationRequests { get; set; } = new List(); [JsonIgnore] public virtual ICollection InspectedPrequalificationRequests { get; set; } = new List(); [JsonIgnore] [Column("otp")] public string? LastOtp { get; set; } [JsonIgnore] [Column("pass_otp")] public string? PassOtp { get; set; } [Column("otp_created_at")] public DateTime? OtpCreatedAt { get; set; } [Column("timestmp")] public DateTime Timestamp { get; set; } = DateTime.UtcNow; /* [Column("evaluation_pq_id")] public long? EvaluationPqId { get; set; } */ [Column("requests_evaluation_ids")] public List? RequestsEvaluationIds { get; set; } = new List(); [Column("inspection_pq_id")] public long? InspectionPqId { get; set; } public FileModel? Image { get; set; } public Vendor? Vendor { get; set; } [JsonIgnore] public virtual ICollection CreatedAssessmentReports { get; set; } = new List(); public ICollection Categories { get; set; } = new List(); public ICollection Degrees { get; set; } = new List(); public ICollection WorkExperiences { get; set; } = new List(); public ICollection Certifications { get; set; } = new List(); [Column("device_ids")] public List DeviceIds { get; set; } = new List(); }