| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- using System;
 
- using InABox.Core;
 
- namespace Comal.Classes
 
- {
 
-     public class ProductLookups : EntityLookup<Product>, ILookupDefinition<Product, StockMovement>, ILookupDefinition<Product, EmployeeProduct>
 
-     {
 
-         // EmployeeProduct records also require a Default Location to pull from
 
-         public Filter<Product> DefineFilter(EmployeeProduct[] items)
 
-         {
 
-             return DefineFilter().And(x => x.NonStock).IsEqualTo(false).And(x => x.DefaultLocation).LinkValid();
 
-         }
 
-         Columns<EmployeeProduct> ILookupDefinition<Product, EmployeeProduct>.DefineFilterColumns()
 
-             => new Columns<EmployeeProduct>();
 
-         // You should not be able to create a stock movement for a non-stock item
 
-         public Filter<Product> DefineFilter(StockMovement[] items)
 
-         {
 
-             return DefineFilter().And(x => x.NonStock).IsEqualTo(false);
 
-         }
 
-         Columns<StockMovement> ILookupDefinition<Product, StockMovement>.DefineFilterColumns()
 
-             => new Columns<StockMovement>();
 
-         public override Columns<Product> DefineColumns()
 
-         {
 
-             return new Columns<Product>(
 
-                 x => x.ID,
 
-                 x => x.Code,
 
-                 x => x.Name
 
-             );
 
-         }
 
-         public override Filter<Product> DefineFilter()
 
-         {
 
-             return new Filter<Product>(x => x.Expired).IsEqualTo(DateTime.MinValue);
 
-         }
 
-         public override SortOrder<Product> DefineSortOrder()
 
-         {
 
-             return new SortOrder<Product>(x => x.Code);
 
-         }
 
-     }
 
- }
 
 
  |