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);
- }
- }
- }
|