46 lines
1.5 KiB
C#
46 lines
1.5 KiB
C#
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using Newtonsoft.Json;
|
|
|
|
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 partial class WorkOrderItemPart
|
|
{
|
|
public long Id { get; set; }
|
|
public uint ConcurrencyToken { 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<string> Tags { get; set; }
|
|
|
|
//Principle
|
|
[Required]
|
|
public long WorkorderItemId { get; set; }//fk
|
|
|
|
[JsonIgnore]//Avoid circular reference when serializing
|
|
public WorkOrderItem WorkOrderItem { get; set; }
|
|
|
|
|
|
public WorkOrderItemPart()
|
|
{
|
|
Tags = new List<string>();
|
|
}
|
|
|
|
//Not persisted business properties
|
|
//NOTE: this could be a common class applied to everything for common biz rule stuff
|
|
//i.e. specific rights in situations based on rules, like candelete, canedit etc
|
|
[NotMapped]
|
|
public bool OP { get; set; }//Patch operation value
|
|
|
|
}//eoc
|
|
|
|
}//eons
|