123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- using System;
- using System.Linq;
- using InABox.Core;
- namespace Comal.Classes
- {
- public class JobITPLookups : EntityLookup<JobITP>, ILookupDefinition<JobITP, JobBillOfMaterialsItem>,
- ILookupDefinition<JobITP, ManufacturingPacket>,
- ILookupDefinition<JobITP, Assignment>,ILookupDefinition<JobITP,JobDocumentSet>
- {
- public Filter<JobITP> DefineFilter(Assignment[] items)
- {
- if (items.Length == 1)
- return new Filter<JobITP>(x => x.Job.ID).IsEqualTo(items.First().JobLink.ID);
- return DefineFilter();
- }
-
- public Filter<JobITP> DefineFilter(JobDocumentSet[] items)
- {
- Guid id = items.FirstOrDefault()?.Job.ID ?? Guid.Empty;
- return new Filter<JobITP>(x => x.Job.ID).IsEqualTo(id);
- }
- public Columns<JobDocumentSet> DefineFilterColumns()
- => new Columns<JobDocumentSet>(x => x.Job.ID);
-
-
- Columns<Assignment> ILookupDefinition<JobITP, Assignment>.DefineFilterColumns()
- => new Columns<Assignment>(x => x.JobLink.ID);
- public Filter<JobITP> DefineFilter(JobBillOfMaterialsItem[] items)
- {
- if (items.Length == 1)
- return new Filter<JobITP>(x => x.Job.ID).IsEqualTo(items.First().Job.ID);
- return DefineFilter();
- }
- Columns<JobBillOfMaterialsItem> ILookupDefinition<JobITP, JobBillOfMaterialsItem>.DefineFilterColumns()
- => new Columns<JobBillOfMaterialsItem>(x => x.Job.ID);
- public Filter<JobITP> DefineFilter(ManufacturingPacket[] items)
- {
- if (items.Length == 1)
- return new Filter<JobITP>(x => x.Job.ID).IsEqualTo(items.First().SetoutLink.JobLink.ID);
- return DefineFilter();
- }
- Columns<ManufacturingPacket> ILookupDefinition<JobITP, ManufacturingPacket>.DefineFilterColumns()
- => new Columns<ManufacturingPacket>(x => x.SetoutLink.JobLink.ID);
- public override Columns<JobITP> DefineColumns()
- {
- return new Columns<JobITP>(
- x => x.ID,
- x => x.Code,
- x => x.Description
- );
- }
- public override Filter<JobITP> DefineFilter()
- {
- return new Filter<JobITP>(x => x.ID).IsEqualTo(Guid.Empty);
- }
- public override SortOrder<JobITP> DefineSortOrder()
- {
- return new SortOrder<JobITP>(x => x.Code);
- }
- }
- }
|