DigitalFormInstance.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using System;
  2. using InABox.Core;
  3. namespace Comal.Classes
  4. {
  5. public class DigitalFormInstanceGenerator : AutoEntityUnionGenerator<IBaseDigitalFormInstance>
  6. {
  7. protected override void Configure()
  8. {
  9. AddTable<AssignmentForm>();
  10. AddTable<DeliveryForm>();
  11. AddTable<EmployeeForm>();
  12. AddTable<KanbanForm>();
  13. AddTable<JobForm>();
  14. AddTable<LeaveRequestForm>();
  15. AddTable<PurchaseOrderItemForm>();
  16. AddTable<TimeSheetForm>();
  17. }
  18. public override bool Distinct => false;
  19. public override Column<IBaseDigitalFormInstance>[] IDColumns => new Column<IBaseDigitalFormInstance>[]
  20. {
  21. new Column<IBaseDigitalFormInstance>(x => x.ID),
  22. };
  23. }
  24. [AutoEntity(typeof(DigitalFormInstanceGenerator))]
  25. public class DigitalFormInstance : Entity, IRemotable, IPersistent, IBaseDigitalFormInstance, ILicense<DigitalFormsLicense>
  26. {
  27. public DigitalFormLink Form { get; set; }
  28. public DateTime FormStarted { get; set; }
  29. public DateTime FormCompleted { get; set; }
  30. public TimeSpan FormOpen { get; set; }
  31. protected override void Init()
  32. {
  33. base.Init();
  34. Form = new DigitalFormLink();
  35. }
  36. }
  37. }