123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using System;
- using Comal.Classes;
- using InABox.Core;
- using InABox.DynamicGrid;
- using PRSDesktop.WidgetGroups;
- namespace PRSDesktop
- {
- internal class JobsRequiringBookingsDashboardProperties : IDashboardProperties { }
- internal class JobsRequiringBookingsDashboardElement : DashboardElement<JobsRequiringBookingsWidget, Maintenance, JobsRequiringBookingsDashboardProperties> { }
- internal class JobsRequiringBookingsWidget : DynamicDataGrid<Job>, ISpecificGrid, IDashboardWidget<Maintenance, JobsRequiringBookingsDashboardProperties>
- {
- public JobsRequiringBookingsDashboardProperties Properties { get; set; }
- public JobsRequiringBookingsWidget()
- {
- Options.AddRange(DynamicGridOption.SelectColumns, DynamicGridOption.FilterRows);
- ActionColumns.Add(new DynamicMenuColumn(CreateJobMenu));
- ColumnsTag = GetType().Name;
- }
- public void Refresh()
- {
- Refresh(false, true);
- }
- public void Setup()
- {
- Refresh(true, false);
- }
- public void Shutdown()
- {
- }
- private void CreateJobMenu(DynamicMenuColumn column, CoreRow row)
- {
- column.AddItem("Book Now", null, BookJob);
- }
- private void BookJob(CoreRow row)
- {
- }
- protected override void Reload(Filters<Job> criteria, Columns<Job> columns, ref SortOrder<Job> sort, Action<CoreTable, Exception> action)
- {
- criteria.Add(new Filter<Job>(x => x.JobType).IsEqualTo(JobType.Service).And(x => x.Completed).IsEqualTo(DateTime.MinValue)
- .And(x => x.OpenAssignments).IsEqualTo(0));
- base.Reload(criteria, columns, ref sort, action);
- }
- }
- }
|