| 1234567891011121314151617181920212223242526272829303132333435363738 | using System.Linq;using InABox.Core;namespace Comal.Classes{    public class StockAreaLoookups : EntityLookup<StockArea>, ILookupDefinition<StockArea, StockLocation>    {        public Filter<StockArea> DefineFilter(StockLocation[] items)        {            var ids = items.Select(x => x.Warehouse.ID).Distinct().ToArray();            if (ids.Length == 1)                return new Filter<StockArea>(x => x.Warehouse.ID).IsEqualTo(ids[0]).And(x => x.Active).IsEqualTo(true);            return new Filter<StockArea>(x => x.ID).IsEqualTo(CoreUtils.FullGuid);        }        Columns<StockLocation> ILookupDefinition<StockArea, StockLocation>.DefineFilterColumns()            => new Columns<StockLocation>(x => x.Warehouse.ID);        public override Columns<StockArea> DefineColumns()        {            return new Columns<StockArea>(                x => x.ID,                x => x.Code,                x => x.Description            );        }        public override Filter<StockArea> DefineFilter()        {            return new Filter<StockArea>(x => x.Active).IsEqualTo(true);        }        public override SortOrder<StockArea> DefineSortOrder()        {            return new SortOrder<StockArea>(x => x.Code);        }    }}
 |