JobLookups.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. using InABox.Core;
  2. namespace Comal.Classes
  3. {
  4. public class JobLookups : EntityLookup<Job>, ILookupDefinition<Job, JobITP>, ILookupDefinition<Job, TimeSheet>,
  5. ILookupDefinition<Job, Assignment>,
  6. ILookupDefinition<Job, Kanban>
  7. {
  8. public Filter<Job> DefineFilter(Assignment[] items)
  9. {
  10. return DefineFilter();
  11. }
  12. Columns<Assignment> ILookupDefinition<Job, Assignment>.DefineFilterColumns()
  13. => new Columns<Assignment>();
  14. public Filter<Job> DefineFilter(JobITP[] items)
  15. {
  16. return DefineFilter();
  17. }
  18. Columns<JobITP> ILookupDefinition<Job, JobITP>.DefineFilterColumns()
  19. => new Columns<JobITP>();
  20. public Filter<Job> DefineFilter(Kanban[] items)
  21. {
  22. return DefineFilter();
  23. }
  24. Columns<Kanban> ILookupDefinition<Job, Kanban>.DefineFilterColumns()
  25. => new Columns<Kanban>();
  26. public Filter<Job> DefineFilter(TimeSheet[] items)
  27. {
  28. return DefineFilter();
  29. }
  30. Columns<TimeSheet> ILookupDefinition<Job, TimeSheet>.DefineFilterColumns()
  31. => new Columns<TimeSheet>();
  32. public override Columns<Job> DefineColumns()
  33. {
  34. return new Columns<Job>(
  35. x => x.ID,
  36. x => x.JobNumber,
  37. x => x.Name
  38. );
  39. }
  40. public override Filter<Job> DefineFilter()
  41. {
  42. return new Filter<Job>(x => x.JobStatus.Active).IsEqualTo(true);
  43. }
  44. public override SortOrder<Job> DefineSortOrder()
  45. {
  46. return new SortOrder<Job>(x => x.JobNumber, SortDirection.Descending);
  47. }
  48. }
  49. }