JobDocumentSetMileStoneDataEntryPopupGrid.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Comal.Classes;
  2. using InABox.Core;
  3. using InABox.DynamicGrid;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading;
  9. using System.Threading.Tasks;
  10. namespace PRSDesktop.Panels.DataEntry.Grids;
  11. public class JobDocumentSetMileStoneDataEntryPopupGrid : DynamicDataGrid<JobDocumentSetMileStone>, ISpecificGrid
  12. {
  13. public JobDocumentSetMileStoneDataEntryPopupGrid()
  14. {
  15. ColumnsTag = "DataEntryPopup";
  16. }
  17. public override DynamicGridColumns GenerateColumns()
  18. {
  19. var columns = new DynamicGridColumns();
  20. columns.Add<JobDocumentSetMileStone>(x => x.DocumentSet.Job.JobNumber, 70, "Job No.", "", Alignment.MiddleCenter);
  21. columns.Add<JobDocumentSetMileStone>(x => x.DocumentSet.Code, 120, "Document Set", "", Alignment.MiddleCenter);
  22. columns.Add<JobDocumentSetMileStone>(x => x.DocumentSet.Description, 0, "Description", "", Alignment.MiddleLeft);
  23. columns.Add<JobDocumentSetMileStone>(x => x.Revision, 70, "Revision", "", Alignment.MiddleCenter);
  24. columns.Add<JobDocumentSetMileStone>(x => x.Status, 80, "Status", "", Alignment.MiddleCenter);
  25. return columns;
  26. }
  27. protected override void Reload(
  28. Filters<JobDocumentSetMileStone> criteria, Columns<JobDocumentSetMileStone> columns, ref SortOrder<JobDocumentSetMileStone>? sort,
  29. CancellationToken token, Action<CoreTable?, Exception?> action)
  30. {
  31. // Only get the most current milestones.
  32. criteria.Add(new Filter<JobDocumentSetMileStone>(x => x.ID).InQuery<JobDocumentSet>(null, x => x.CurrentMileStone.ID));
  33. base.Reload(criteria, columns, ref sort, token, action);
  34. }
  35. }