|  | @@ -1,4 +1,6 @@
 | 
	
		
			
				|  |  |  using System;
 | 
	
		
			
				|  |  | +using System.Collections.Generic;
 | 
	
		
			
				|  |  | +using System.Linq;
 | 
	
		
			
				|  |  |  using Comal.Classes;
 | 
	
		
			
				|  |  |  using InABox.Core;
 | 
	
		
			
				|  |  |  using InABox.DynamicGrid;
 | 
	
	
		
			
				|  | @@ -10,6 +12,8 @@ public class MyRequisitionsList : DynamicDataGrid<Requisition>
 | 
	
		
			
				|  |  |      public MyRequisitionsList() : base()
 | 
	
		
			
				|  |  |      {
 | 
	
		
			
				|  |  |          ColumnsTag = nameof(MyRequisitionsList);
 | 
	
		
			
				|  |  | +        HiddenColumns.Add(x=>x.Request);
 | 
	
		
			
				|  |  | +        HiddenColumns.Add(x=>x.Destination.Description);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      public override DynamicGridColumns GenerateColumns()
 | 
	
	
		
			
				|  | @@ -18,13 +22,20 @@ public class MyRequisitionsList : DynamicDataGrid<Requisition>
 | 
	
		
			
				|  |  |          columns.Add<Requisition, int>(x => x.Number,50,"Req #","",Alignment.MiddleCenter);
 | 
	
		
			
				|  |  |          columns.Add<Requisition, string>(x => x.Title,0,"Subject","",Alignment.MiddleLeft);
 | 
	
		
			
				|  |  |          columns.Add<Requisition, DateTime>(x => x.Created,80,"Created","dd MMM yy",Alignment.MiddleCenter);
 | 
	
		
			
				|  |  | +        columns.Add<Requisition, string>(x => x.Destination.Description,100,"Detination","",Alignment.MiddleCenter);
 | 
	
		
			
				|  |  |          return columns;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      
 | 
	
		
			
				|  |  |      protected override void DoReconfigure(FluentList<DynamicGridOption> options)
 | 
	
		
			
				|  |  |      {
 | 
	
		
			
				|  |  |          base.DoReconfigure(options);
 | 
	
		
			
				|  |  | -        options.Clear();
 | 
	
		
			
				|  |  | +        options
 | 
	
		
			
				|  |  | +            .BeginUpdate()
 | 
	
		
			
				|  |  | +            .Clear()
 | 
	
		
			
				|  |  | +            .Add(DynamicGridOption.AddRows)
 | 
	
		
			
				|  |  | +            .Add(DynamicGridOption.EditRows)
 | 
	
		
			
				|  |  | +            .Add(DynamicGridOption.DeleteRows)
 | 
	
		
			
				|  |  | +            .EndUpdate();
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      protected override void Reload(Filters<Requisition> criteria, Columns<Requisition> columns, ref SortOrder<Requisition>? sort, Action<CoreTable?, Exception?> action)
 | 
	
	
		
			
				|  | @@ -36,4 +47,31 @@ public class MyRequisitionsList : DynamicDataGrid<Requisition>
 | 
	
		
			
				|  |  |          
 | 
	
		
			
				|  |  |          base.Reload(criteria, columns, ref sort, action);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    protected override Requisition CreateItem()
 | 
	
		
			
				|  |  | +    {
 | 
	
		
			
				|  |  | +        var result = base.CreateItem();
 | 
	
		
			
				|  |  | +        result.RequestedBy.ID = App.EmployeeID;
 | 
	
		
			
				|  |  | +        result.Title = $"Materials for {App.EmployeeName}";
 | 
	
		
			
				|  |  | +        return result;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    protected override void DoValidate(Requisition[] items, List<string> errors)
 | 
	
		
			
				|  |  | +    {
 | 
	
		
			
				|  |  | +        base.DoValidate(items, errors);
 | 
	
		
			
				|  |  | +        if (items.Any(x=>x.Destination.ID == Guid.Empty))
 | 
	
		
			
				|  |  | +            errors.Add("Please select a destination");
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    protected override BaseEditor? GetEditor(object item, DynamicGridColumn column)
 | 
	
		
			
				|  |  | +    {
 | 
	
		
			
				|  |  | +        if (column.Editor.Page == "Fulfilment")
 | 
	
		
			
				|  |  | +            return new NullEditor();
 | 
	
		
			
				|  |  | +        return base.GetEditor(item, column);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    public override DynamicEditorPages LoadEditorPages(Requisition item)
 | 
	
		
			
				|  |  | +    {
 | 
	
		
			
				|  |  | +        return new DynamicEditorPages(); //base.LoadEditorPages(item));
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  }
 |