using System.ComponentModel; using System.ComponentModel.DataAnnotations.Schema; using Marco.Pms.Model.Entitlements; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation; namespace Marco.Pms.Model.Forum { public class TicketForum { public Guid Id { get; set; } public string Subject { get; set; } = string.Empty; public string Description { get; set; } = string.Empty; public Guid StatusId { get; set; } [ValidateNever] [ForeignKey(nameof(StatusId))] public TicketStatusMaster? TicketStatusMaster { get; set; } public Guid TypeId { get; set; } // QualityIssue, HelpDesk, Feedback [ValidateNever] [ForeignKey(nameof(TypeId))] public TicketTypeMaster? TicketTypeMaster { get; set; } public int CreatedById { get; set; } public DateTime CreatedAt { get; set; } public int LinkedActivityId { get; set; } // task or project ID //public ICollection? Comments { get; set; } // view model //public ICollection? Attachments { get; set; } // view model public Guid PriorityId { get; set; } [ValidateNever] [ForeignKey(nameof(PriorityId))] public TicketPriorityMaster? Priority { get; set; } //public ICollection? Tags { get; set; } // view model [DisplayName("TenantId")] public int TenantId { get; set; } [ValidateNever] [ForeignKey(nameof(TenantId))] public Tenant? Tenant { get; set; } } }