JobDocumentSetMileStoneDataEntryPopupGrid.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738
  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.Tasks;
  9. namespace PRSDesktop.Panels.DataEntry.Grids;
  10. public class JobDocumentSetMileStoneDataEntryPopupGrid : DynamicDataGrid<JobDocumentSetMileStone>, ISpecificGrid
  11. {
  12. public JobDocumentSetMileStoneDataEntryPopupGrid()
  13. {
  14. ColumnsTag = "DataEntryPopup";
  15. }
  16. public override DynamicGridColumns GenerateColumns()
  17. {
  18. var columns = new DynamicGridColumns();
  19. columns.Add<JobDocumentSetMileStone, string>(x => x.DocumentSet.Job.JobNumber, 70, "Job No.", "", Alignment.MiddleCenter);
  20. columns.Add<JobDocumentSetMileStone, string>(x => x.DocumentSet.Code, 120, "Document Set", "", Alignment.MiddleCenter);
  21. columns.Add<JobDocumentSetMileStone, string>(x => x.DocumentSet.Description, 0, "Description", "", Alignment.MiddleLeft);
  22. columns.Add<JobDocumentSetMileStone, string>(x => x.Revision, 70, "Revision", "", Alignment.MiddleCenter);
  23. columns.Add<JobDocumentSetMileStone, JobDocumentSetMileStoneStatus>(x => x.Status, 80, "Status", "", Alignment.MiddleCenter);
  24. return columns;
  25. }
  26. protected override void Reload(Filters<JobDocumentSetMileStone> criteria, Columns<JobDocumentSetMileStone> columns, ref SortOrder<JobDocumentSetMileStone>? sort, Action<CoreTable?, Exception?> action)
  27. {
  28. // Only get the most current milestones.
  29. criteria.Add(new Filter<JobDocumentSetMileStone>(x => x.ID).InQuery<JobDocumentSet>(null, x => x.CurrentMileStone.ID));
  30. base.Reload(criteria, columns, ref sort, action);
  31. }
  32. }