Files
raven/server/AyaNova/models/WorkOrderItem.cs
2021-03-25 20:42:48 +00:00

82 lines
3.0 KiB
C#

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 WorkOrderItem : ICoreBizObjectModel
{
public long Id { get; set; }
public uint Concurrency { get; set; }
public string Notes { get; set; }//Was Summary
public string Wiki { get; set; }
public string CustomFields { get; set; }
public List<string> Tags { get; set; } = new List<string>();
[Required]
public long WorkOrderId { get; set; }
public string TechNotes { get; set; }
public long WorkorderItemStatusId { get; set; }
public long WorkorderItemPriorityId { get; set; }
public DateTime RequestDate { get; set; }
public bool WarrantyService { get; set; } = false;
//Principle
[JsonIgnore]
public WorkOrder WorkOrder { get; set; }
//dependents
public List<WorkOrderItemExpense> Expenses { get; set; } = new List<WorkOrderItemExpense>();
public List<WorkOrderItemLabor> Labors { get; set; } = new List<WorkOrderItemLabor>();
public List<WorkOrderItemLoan> Loans { get; set; } = new List<WorkOrderItemLoan>();
public List<WorkOrderItemPart> Parts { get; set; } = new List<WorkOrderItemPart>();
public List<WorkOrderItemPartRequest> PartRequests { get; set; } = new List<WorkOrderItemPartRequest>();
public List<WorkOrderItemScheduledUser> ScheduledUsers { get; set; } = new List<WorkOrderItemScheduledUser>();
public List<WorkOrderItemTask> Tasks { get; set; } = new List<WorkOrderItemTask>();
public List<WorkOrderItemTravel> Travels { get; set; } = new List<WorkOrderItemTravel>();
public List<WorkOrderItemUnit> Units { get; set; } = new List<WorkOrderItemUnit>();
[NotMapped, JsonIgnore]
public AyaType AyaType { get => AyaType.WorkOrderItem; }
}//eoc
}//eons
/*
CREATE TABLE [dbo].[AWORKORDERITEM](
[AID] [uniqueidentifier] NOT NULL,
[AWORKORDERID] [uniqueidentifier] NOT NULL,
[ACREATOR] [uniqueidentifier] NOT NULL,
[AMODIFIER] [uniqueidentifier] NOT NULL,
[ACREATED] [datetime] NOT NULL,
[AMODIFIED] [datetime] NOT NULL,
[ATECHNOTES] [ntext] NULL,
[AWORKORDERSTATUSID] [uniqueidentifier] NULL,
[APRIORITYID] [uniqueidentifier] NULL,
[AREQUESTDATE] [datetime] NULL,
[ASUMMARY] [nvarchar](255) NULL,//Now Notes
[ATYPEID] [uniqueidentifier] NULL,//Now a tag
[AUNITID] [uniqueidentifier] NULL,//MOVED TO WOITEMUNITS COLLECTION
[AWORKORDERITEMUNITSERVICETYPEID] [uniqueidentifier] NULL,//MOVE TO WOITEMUNITS COLLECTION?
[AWARRANTYSERVICE] [bit] NOT NULL,
[ACUSTOM1] [ntext] NULL,
[ACUSTOM2] [ntext] NULL,
[ACUSTOM3] [ntext] NULL,
[ACUSTOM4] [ntext] NULL,
[ACUSTOM5] [ntext] NULL,
[ACUSTOM6] [ntext] NULL,
[ACUSTOM7] [ntext] NULL,
[ACUSTOM8] [ntext] NULL,
[ACUSTOM9] [ntext] NULL,
[ACUSTOM0] [ntext] NULL
*/