EmployeeLookups.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. using System;
  2. using System.Linq;
  3. using InABox.Core;
  4. namespace Comal.Classes
  5. {
  6. public class EmployeeLookups : EntityLookup<Employee>
  7. {
  8. public override Columns<Employee> DefineColumns()
  9. {
  10. return new Columns<Employee>(
  11. x => x.ID,
  12. x => x.Name
  13. );
  14. }
  15. public override Filter<Employee> DefineFilter()
  16. {
  17. var filter = new Filter<Employee>(x => x.ID).IsNotEqualTo(Guid.Empty);
  18. filter.Ands.Add(new Filter<Employee>(x => x.StartDate).IsEqualTo(DateTime.MinValue).Or(x => x.StartDate)
  19. .IsLessThanOrEqualTo(FilterConstant.Today));
  20. filter.Ands.Add(new Filter<Employee>(x => x.FinishDate).IsEqualTo(DateTime.MinValue).Or(x => x.FinishDate)
  21. .IsGreaterThanOrEqualTo(FilterConstant.Today));
  22. return filter;
  23. }
  24. public override SortOrder<Employee> DefineSortOrder()
  25. {
  26. return new SortOrder<Employee>(x => x.Name);
  27. }
  28. }
  29. }