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