using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Newtonsoft.Json; using AyaNova.Biz; using System.Collections.Generic; namespace AyaNova.Models { public class WorkOrderState : ICoreBizObjectModel { public long Id { get; set; } public uint Concurrency { get; set; } [Required] public long WorkOrderId { get; set; } [Required] public long WorkOrderStatusId { get; set; } public DateTime Created { get; set; } = DateTime.UtcNow; public long UserId { get; set; } [NotMapped] public string UserViz { get; set; } [NotMapped] public string NameViz { get; set; } [NotMapped] public string ColorViz { get; set; } [NotMapped] public bool CompletedViz { get; set; } [NotMapped] public bool LockedViz { get; set; } //workaround for notification [NotMapped, JsonIgnore] public List Tags { get; set; } = new List(); [NotMapped, JsonIgnore] public string Name { get; set; } [NotMapped] public uint NewWOConcurrency { get; set; } //UTILITY FIELDS //related // [JsonIgnore]//internal only here at server not used by client // public WorkOrderStatus WorkOrderStatus { get; set; } [NotMapped, JsonIgnore] public AyaType AyaType { get => AyaType.WorkOrderStatus; } }//eoc }//eons