OpenPurchaseOrdersDashboard.cs 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. using System;
  2. using System.ComponentModel;
  3. using System.Windows.Media;
  4. using Comal.Classes;
  5. using InABox.Configuration;
  6. using InABox.Core;
  7. using InABox.DynamicGrid;
  8. using PRSDesktop.WidgetGroups;
  9. namespace PRSDesktop.Dashboards
  10. {
  11. public class OpenPurchaseOrdersDashboardProperties : IUserConfigurationSettings, IDashboardProperties
  12. {
  13. }
  14. public class OpenPurchaseOrdersDashboardElement : DashboardElement<OpenPurchaseOrdersDashboard, Accounts,
  15. OpenPurchaseOrdersDashboardProperties>
  16. {
  17. }
  18. public class OpenPurchaseOrdersDashboard : DynamicDataGrid<PurchaseOrder>,
  19. IDashboardWidget<Accounts, OpenPurchaseOrdersDashboardProperties>
  20. {
  21. public void Setup()
  22. {
  23. ActionColumns.Add(new DynamicMenuColumn(CreateMenu, GetStatus));
  24. ColumnsTag = GetType().Name;
  25. Refresh(true,false);
  26. }
  27. protected override void DoReconfigure(DynamicGridOptions options)
  28. {
  29. base.DoReconfigure(options);
  30. options.Clear();
  31. options.SelectColumns = true;
  32. }
  33. private DynamicMenuStatus GetStatus(CoreRow row)
  34. {
  35. return DynamicMenuStatus.Enabled;
  36. }
  37. private void CreateMenu(DynamicMenuColumn menu, CoreRow? row)
  38. {
  39. }
  40. public void Shutdown(CancelEventArgs? cancel)
  41. {
  42. }
  43. public void Refresh()
  44. {
  45. Refresh(false, true);
  46. }
  47. protected override void Reload(Filters<PurchaseOrder> criteria, Columns<PurchaseOrder> columns, ref SortOrder<PurchaseOrder>? sort, Action<CoreTable?, Exception?> action)
  48. {
  49. criteria.Add(new Filter<PurchaseOrder>(x => x.IssuedDate).IsNotEqualTo(DateTime.MinValue));
  50. base.Reload(criteria, columns, ref sort, action);
  51. }
  52. public OpenPurchaseOrdersDashboardProperties Properties { get; set; }
  53. public event LoadSettings<OpenPurchaseOrdersDashboardProperties>? LoadSettings;
  54. public event SaveSettings<OpenPurchaseOrdersDashboardProperties>? SaveSettings;
  55. }
  56. }