using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Newtonsoft.Json; using AyaNova.Biz; namespace AyaNova.Models { //NOTE: Any non required field (nullable in DB) sb nullable here, i.e. decimal? not decimal, //otherwise the server will call it an invalid record if the field isn't sent from client public class PMItem : ICoreBizObjectModel { public long Id { get; set; } public uint Concurrency { get; set; } [Required] public string Name { get; set; } public bool Active { get; set; } public string Notes { get; set; } public string Wiki { get; set; } public string CustomFields { get; set; } public List Tags { get; set; } //Principle [Required]//this required annotation should cause a cascade delete to happen automatically when wo is deleted, need to test that public long PMId { get; set; }//fk public PM PM { get; set; } //Dependents public PMItem() { Tags = new List(); } [NotMapped, JsonIgnore] public AyaType AyaType { get => AyaType.PMItem; } }//eoc }//eons