using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Newtonsoft.Json; using AyaNova.Biz; namespace AyaNova.Models { public class PMItem : ICoreBizObjectModel { [NotMapped, JsonIgnore] public AyaType AyaType { get => AyaType.PMItem; } public long Id { get; set; } public uint Concurrency { get; set; } public string Notes { get; set; }//"Summary" field public string Wiki { get; set; } public string CustomFields { get; set; } public List Tags { get; set; } = new List(); [Required] public long PMId { get; set; } public string TechNotes { get; set; } public long? WorkOrderItemStatusId { get; set; } [NotMapped] public string WorkOrderItemStatusNameViz { get; set; } [NotMapped] public string WorkOrderItemStatusColorViz { get; set; } public long? WorkOrderItemPriorityId { get; set; } [NotMapped] public string WorkOrderItemPriorityNameViz { get; set; } [NotMapped] public string WorkOrderItemPriorityColorViz { get; set; } public DateTime? RequestDate { get; set; } public bool WarrantyService { get; set; } = false; public int Sequence { get; set; } //workaround for notification [NotMapped, JsonIgnore] public string Name { get; set; } //Principle [JsonIgnore] public PM PM { get; set; } //dependents public List Expenses { get; set; } = new List(); public List Labors { get; set; } = new List(); public List Loans { get; set; } = new List(); public List Parts { get; set; } = new List(); public List ScheduledUsers { get; set; } = new List(); public List Tasks { get; set; } = new List(); public List Travels { get; set; } = new List(); public List Units { get; set; } = new List(); public List OutsideServices { get; set; } = new List(); }//eoc }//eons