| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 | using System;using InABox.Core;namespace Comal.Classes{    public abstract class EntityKanban<TEntity, TLink> : Entity, IRemotable, IPersistent, ILicense<TaskManagementLicense>        where TEntity : Entity        where TLink : IEntityLink<TEntity>, new()    {        [EntityRelationship(DeleteAction.Cascade)]        public TLink Entity { get; set; }        [EntityRelationship(DeleteAction.Cascade)]        public KanbanLink Kanban { get; set; }        protected override void Init()        {            base.Init();            Kanban = new KanbanLink();            Entity = new TLink();        }    }    public class RequisitionKanban : EntityKanban<Requisition, RequisitionLink>    {    }    public class SetoutKanban : EntityKanban<Setout, SetoutLink>    {    }    public class DeliveryKanban : EntityKanban<Delivery, DeliveryLink>    {    }    public class PurchaseOrderKanban : EntityKanban<PurchaseOrder, PurchaseOrderLink>    {    }    public class ManufacturingPacketKanban : EntityKanban<ManufacturingPacket, ManufacturingPacketLink>    {     }    public class JobRequisitionKanban : EntityKanban<JobRequisition, JobRequisitionLink>    {     }    public class MeetingItemKanban : EntityKanban<MeetingItem, MeetingItemLink>    {    }    public class JobDocumentSetMileStoneKanban : EntityKanban<JobDocumentSetMileStone, JobDocumentSetMileStoneLink>    {            }    }
 |