@using AyCode.Utils.Extensions
@using FruitBank.Common.Dtos
@using FruitBank.Common.Entities
@using FruitBank.Common.Models
@using FruitBankHybrid.Shared.Components.Toolbars
@using FruitBankHybrid.Shared.Databases
@using FruitBankHybrid.Shared.Services.SignalRs
@inject LoggedInModel LoggedInModel;
@inject FruitBankSignalRClient FruitBankSignalRClient
@if (IsMasterGrid)
{
}
@code {
MgGridBase gridOrderItemPallet;
[Parameter] public bool IsMasterGrid { get; set; } = false;
[Parameter] public List? OrderItemPallets { get; set; }
string GridCss => !IsMasterGrid ? "hide-toolbar" : string.Empty;
protected override async Task OnInitializedAsync()
{
await ReloadDataFromDb(false);
}
public async Task ReloadDataFromDb(bool forceReload)
{
if (!IsMasterGrid) return;
LoadingPanelVisibility.Visible = true;
using (await ObjectLock.GetSemaphore().UseWaitAsync())
{
if (OrderItemPallets == null) OrderItemPallets = await FruitBankSignalRClient.GetAllOrderItemPallets() ?? [];
else if (OrderItemPallets.Count == 0 || forceReload)
{
OrderItemPallets.Clear();
OrderItemPallets.AddRange(await FruitBankSignalRClient.GetAllOrderItemPallets() ?? []);
}
}
if (OrderItemPallets != null && OrderItemPallets.Any(oip => oip.OrderItemDto?.ProductDto != null))
{
gridOrderItemPallet.BeginUpdate();
gridOrderItemPallet.GetColumns().FirstOrDefault(x => x.Name == "ProductId")!.Visible = true;
gridOrderItemPallet.GetColumns().FirstOrDefault(x => x.Name == "ProductName")!.Visible = true;
gridOrderItemPallet.EndUpdate();
}
if (forceReload)
gridOrderItemPallet?.Reload();
LoadingPanelVisibility.Visible = false;
}
protected override Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
// if (OrderItemPallets != null && OrderItemPallets.Any(oip => oip.OrderItemDto?.ProductDto != null))
// {
// gridOrderItemPallet.BeginUpdate();
// gridOrderItemPallet.GetColumns().FirstOrDefault(x => x.Name == "ProductId")!.Visible = true;
// gridOrderItemPallet.GetColumns().FirstOrDefault(x => x.Name == "ProductName")!.Visible = true;
// gridOrderItemPallet.EndUpdate();
// }
}
return base.OnAfterRenderAsync(firstRender);
}
}
@* List GenericAttributes { get; set; }
List OrderItemPallets { get; set; }
OrderDto OrderDto { get; set; }
bool IsMeasured
bool IsMeasurable
int TrayQuantity
double NetWeight
double GrossWeight
public Guid OrderItemGuid { get; set; }
public int OrderId { get; set; }
public int ProductId { get; set; }
public int Quantity { get; set; }
public decimal UnitPriceInclTax { get; set; }
public decimal UnitPriceExclTax { get; set; }
public decimal PriceInclTax { get; set; }
public decimal PriceExclTax { get; set; }
public string AttributesXml { get; set; }
public decimal? ItemWeight { get; set; }
public string ProductName => ProductDto?.Name ?? "ProductDto is null!!!";
public TProductDto? ProductDto { get; set; }
*@