| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- using System;
- using System.Linq;
- using Comal.Classes;
- using InABox.Core;
- using InABox.DynamicGrid;
- namespace PRSDesktop;
- public class MyRequisitionItems : DynamicDataGrid<RequisitionItem>
- {
- public Guid RequisitionID { get; set; }
-
- public MyRequisitionItems() : base()
- {
- ColumnsTag = nameof(MyRequisitionItems);
- }
-
- public override DynamicGridColumns GenerateColumns()
- {
- var columns = new DynamicGridColumns();
- columns.Add<RequisitionItem, Guid>(x => x.Product.ID,80,"Product","",Alignment.MiddleLeft);
- columns.Add<RequisitionItem, string>(x => x.Description,0,"Items Required","",Alignment.MiddleLeft);
- columns.Add<RequisitionItem, String>(x => x.Dimensions.UnitSize,80,"Size","",Alignment.MiddleLeft);
- columns.Add<RequisitionItem, Guid>(x => x.Style.ID,80,"Style","",Alignment.MiddleLeft);
- columns.Add<RequisitionItem, double>(x => x.Quantity,50,"Qty","F2",Alignment.MiddleCenter);
- return columns;
- }
-
- protected override void DoReconfigure(FluentList<DynamicGridOption> options)
- {
- base.DoReconfigure(options);
- options.BeginUpdate()
- .Clear()
- .Add(DynamicGridOption.AddRows)
- .Add(DynamicGridOption.EditRows)
- .Add(DynamicGridOption.DeleteRows)
- .EndUpdate();
- }
-
- protected override void Reload(Filters<RequisitionItem> criteria, Columns<RequisitionItem> columns, ref SortOrder<RequisitionItem>? sort, Action<CoreTable?, Exception?> action)
- {
- criteria.Add(
- new Filter<RequisitionItem>(x => x.RequisitionLink.ID).IsEqualTo(RequisitionID)
- );
- base.Reload(criteria, columns, ref sort, action);
- }
- public override RequisitionItem CreateItem()
- {
- var result = base.CreateItem();
- result.RequisitionLink.ID = RequisitionID;
- result.Quantity = 1;
- return result;
- }
- protected override BaseEditor? GetEditor(object item, DynamicGridColumn column)
- {
- if (column.ColumnName == CoreUtils.GetFullPropertyName<RequisitionItem, double>(x => x.ActualQuantity, "."))
- return new NullEditor();
- if (column.ColumnName == CoreUtils.GetFullPropertyName<RequisitionItem, Guid>(x => x.Location.ID, "."))
- return new NullEditor();
- if (column.ColumnName == CoreUtils.GetFullPropertyName<RequisitionItem, DateTime>(x => x.Picked, "."))
- return new NullEditor();
- if (column.ColumnName == CoreUtils.GetFullPropertyName<RequisitionItem, Guid>(x => x.JobRequisitionItem.ID, "."))
- return new NullEditor();
- if (column.ColumnName.StartsWith($"{CoreUtils.GetFullPropertyName<RequisitionItem, ActualCharge>(x => x.Charge, ".")}."))
- return new NullEditor();
- if (column.ColumnName == CoreUtils.GetFullPropertyName<RequisitionItem, Guid>(x => x.JobScope.ID, "."))
- return new NullEditor();
- if (column.ColumnName == CoreUtils.GetFullPropertyName<RequisitionItem, Guid>(x => x.Image.ID, "."))
- return new NullEditor();
- return base.GetEditor(item, column);
- }
- }
|