using InABox.Core; using System; namespace Comal.Classes { public class TimeSheetFormLookups : DigitalFormInstanceLookups { } public class DigitalFormTimeSheetLookup : LookupDefinitionGenerator { public override Filter DefineFilter(TimeSheet[] items) { var filter = LookupFactory.DefineLookupFilter(x => x.Form, Array.Empty()) ?? new Filter().All(); foreach (var timeSheet in items) { filter.And(x => x.ID).InQuery( new Filter(x => x.Employee.ID).IsEqualTo(timeSheet.EmployeeLink.ID), x => x.Form.ID); } return filter; } public override Columns DefineFilterColumns() => new Columns(x => x.EmployeeLink.ID); } public class DigitalFormTimeSheetFormLookup : LookupDefinitionGenerator { public override Filter DefineFilter(TimeSheetForm[] items) { return new Filter(x => x.Active).IsEqualTo(true).And(x => x.AppliesTo).IsEqualTo("TimeSheet"); } public override Columns DefineFilterColumns() => new Columns(); } }