using InABox.Core; using System; namespace Comal.Classes { public class AssignmentFormLookups : ILookupDefinition, ILookupDefinition { public Filter DefineFilter(AssignmentForm[] items) { return new Filter(x => x.Active).IsEqualTo(true).And(x => x.AppliesTo).IsEqualTo("Assignment"); } Columns ILookupDefinition.DefineFilterColumns() => new Columns(); public Filter DefineFilter(Assignment[] items) { var filter = DefineFilter(Array.Empty()); foreach (var assignment in items) { filter.And(x => x.ID).InQuery( new Filter(x => x.Employee.ID).IsEqualTo(assignment.EmployeeLink.ID), x => x.Form.ID); } return filter; } Columns ILookupDefinition.DefineFilterColumns() => new Columns(x => x.EmployeeLink.ID); } }