12345678910111213141516171819202122232425262728293031323334 |
- using System;
- using System.Linq;
- using InABox.Core;
- namespace Comal.Classes
- {
- public class JobFormLookups : DigitalFormInstanceLookups<Job,JobLink,JobForm> { }
- public class DigitalFormJobLookup : LookupDefinitionGenerator<DigitalForm, Job>
- {
- public override Filter<DigitalForm> DefineFilter(Job[] items)
- {
- return new Filter<DigitalForm>(x => x.Active).IsEqualTo(true).And(x => x.AppliesTo).IsEqualTo("Job");
- }
- public override Columns<Job> DefineFilterColumns()
- => Columns.None<Job>();
- }
- public class DigitalFormJobFormLookup : LookupDefinitionGenerator<DigitalForm, JobForm>
- {
- public override Filter<DigitalForm> DefineFilter(JobForm[] items)
- {
- if (items == null || items.Length != 1)
- return new Filter<DigitalForm>(x => x.ID).IsEqualTo(CoreUtils.FullGuid);
- return new Filter<DigitalForm>(x => x.ID).InQuery(
- new Filter<JobFormDefinition>(x => x.Job.ID).IsEqualTo(items.First().Parent.ID),
- x => x.Form.ID);
- }
- public override Columns<JobForm> DefineFilterColumns()
- => Columns.None<JobForm>().Add(x => x.Parent.ID);
- }
- }
|