EmployeeLookups.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233
  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 Columns.None<Employee>().Add(
  11. x => x.ID,
  12. x => x.Code,
  13. x => x.Name
  14. );
  15. }
  16. public override Filter<Employee> DefineFilter()
  17. {
  18. var filter = new Filter<Employee>(x => x.ID).IsNotEqualTo(Guid.Empty);
  19. filter.Ands.Add(new Filter<Employee>(x => x.StartDate).IsEqualTo(DateTime.MinValue).Or(x => x.StartDate)
  20. .IsLessThanOrEqualTo(FilterConstant.Today));
  21. filter.Ands.Add(new Filter<Employee>(x => x.FinishDate).IsEqualTo(DateTime.MinValue).Or(x => x.FinishDate)
  22. .IsGreaterThanOrEqualTo(FilterConstant.Today));
  23. return filter;
  24. }
  25. public override SortOrder<Employee> DefineSortOrder()
  26. {
  27. return new SortOrder<Employee>(x => x.Name);
  28. }
  29. }
  30. }