12345678910111213141516171819202122232425262728293031323334353637 |
- using InABox.Core;
- using System;
- using System.Linq;
- namespace Comal.Classes
- {
- public class KanbanFormLookups : ILookupDefinition<DigitalForm, KanbanForm>, ILookupDefinition<DigitalForm, Kanban>
- {
- public Filter<DigitalForm> DefineFilter(KanbanForm[] items)
- {
- var filter = new Filter<DigitalForm>(x => x.Active).IsEqualTo(true)
- .And(x => x.AppliesTo).IsEqualTo("Kanban");
- return filter;
- }
- Columns<KanbanForm> ILookupDefinition<DigitalForm, KanbanForm>.DefineFilterColumns()
- => new Columns<KanbanForm>();
- public Filter<DigitalForm> DefineFilter(Kanban[] items)
- {
- var filter = DefineFilter(Array.Empty<KanbanForm>());
- foreach(var kanban in items)
- {
- filter.And(x => x.ID).InQuery(
- new Filter<EmployeeDigitalForm>(x => x.Employee.ID).IsEqualTo(kanban.EmployeeLink.ID),
- x => x.Form.ID);
- }
- return filter;
- }
- Columns<Kanban> ILookupDefinition<DigitalForm, Kanban>.DefineFilterColumns()
- => new Columns<Kanban>(x => x.EmployeeLink.ID);
- }
- }
|