QuoteDocumentLookups.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using System;
  2. using System.Linq;
  3. using InABox.Core;
  4. namespace Comal.Classes
  5. {
  6. public class QuoteDocumentLookups : EntityLookup<QuoteDocument>, ILookupDefinition<QuoteDocument, QuoteDiagram>
  7. {
  8. public Filter<QuoteDocument> DefineFilter(QuoteDiagram[] items)
  9. {
  10. if (items == null || !items.Any())
  11. return DefineFilter();
  12. return new Filter<QuoteDocument>(x => x.EntityLink.ID).IsEqualTo(items.First().Quote.ID);
  13. }
  14. public override Columns<QuoteDocument> DefineColumns()
  15. {
  16. return new Columns<QuoteDocument>(
  17. x => x.ID,
  18. x => x.DocumentLink.ID,
  19. x => x.DocumentLink.FileName
  20. );
  21. }
  22. public override Filter<QuoteDocument> DefineFilter()
  23. {
  24. return new Filter<QuoteDocument>(x => x.ID).IsEqualTo(Guid.Empty);
  25. }
  26. public override SortOrder<QuoteDocument> DefineSortOrder()
  27. {
  28. return new SortOrder<QuoteDocument>(x => x.DocumentLink.FileName);
  29. }
  30. }
  31. }