1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Threading;
- using Comal.Classes;
- using InABox.Core;
- using InABox.DynamicGrid;
- namespace PRSDesktop;
- 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()
- {
- var columns = new DynamicGridColumns();
- columns.Add<Requisition>(x => x.Number,50,"Req #","",Alignment.MiddleCenter);
- columns.Add<Requisition>(x => x.Title,0,"Subject","",Alignment.MiddleLeft);
- columns.Add<Requisition>(x => x.Created,80,"Created","dd MMM yy",Alignment.MiddleCenter);
- columns.Add<Requisition>(x => x.Destination.Description,100,"Detination","",Alignment.MiddleCenter);
- return columns;
- }
-
- protected override void DoReconfigure(DynamicGridOptions options)
- {
- base.DoReconfigure(options);
- options.Clear();
- options.AddRows = true;
- options.EditRows = true;
- options.DeleteRows = true;
- }
- protected override void Reload(
- Filters<Requisition> criteria, Columns<Requisition> columns, ref SortOrder<Requisition>? sort,
- CancellationToken token, Action<CoreTable?, Exception?> action)
- {
- criteria.Add(
- new Filter<Requisition>(x => x.RequestedBy.ID).IsEqualTo(App.EmployeeID)
- .And(x => x.Archived).IsEqualTo(DateTime.MinValue)
- );
-
- base.Reload(criteria, columns, ref sort, token, action);
- }
- public 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));
- }
- }
|