LogikalProjectGrid.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Threading.Tasks;
  5. using Comal.Classes;
  6. using InABox.Clients;
  7. using InABox.Core;
  8. using InABox.DynamicGrid;
  9. using InABox.Integration.Logikal;
  10. using InABox.WPF;
  11. using Microsoft.CodeAnalysis;
  12. using PRSDesktop.Integrations.Logikal;
  13. namespace PRSDesktop;
  14. public class LogikalProjectGrid : LogikalGrid<LogikalProject>
  15. {
  16. public String JobNumber { get; set; }
  17. protected override void Init()
  18. {
  19. base.Init();
  20. HiddenColumns.Add(x => x.ID);
  21. }
  22. protected override DynamicGridColumns LoadColumns()
  23. {
  24. var result = new DynamicGridColumns();
  25. if (string.IsNullOrWhiteSpace(JobNumber))
  26. result.Add<LogikalProject>(x => x.JobNumber, 60, "Job", "", Alignment.MiddleCenter);
  27. result.Add<LogikalProject>(x => x.Title, 0, "Name", "", Alignment.MiddleLeft);
  28. result.Add<LogikalProject>(x => x.PersonInCharge, 120, "Manager", "", Alignment.MiddleLeft);
  29. return result;
  30. }
  31. protected override void DoGet()
  32. {
  33. Items = new List<LogikalProject>();
  34. //if (!string.IsNullOrWhiteSpace(JobNumber))
  35. //{
  36. LogikalClient.Instance.GetProjects(JobNumber)
  37. .Always(NotifyResponseReceived)
  38. .Success<LogikalProjectsResponse<LogikalProject>>(p =>
  39. {
  40. Items = p.Projects.ToList();
  41. });
  42. //}
  43. }
  44. }