@using AyCode.Core.Helpers
@using AyCode.Utils.Extensions
@using FruitBank.Common.Dtos
@using FruitBank.Common.Models
@using FruitBankHybrid.Shared.Components.Grids.GenericAttributes
@using FruitBankHybrid.Shared.Components.Toolbars
@using FruitBankHybrid.Shared.Databases
@using FruitBankHybrid.Shared.Services.SignalRs
@inject LoggedInModel LoggedInModel;
@inject FruitBankSignalRClient FruitBankSignalRClient
@* *@
@if (IsMasterGrid && LoggedInModel.IsAdministrator)
{
var orderDto = ((OrderDto)context.DataItem);
@{
var orderItemPalletDtos = orderDto?.OrderItemDtos.SelectMany(oi => oi.OrderItemPallets).ToList() ?? [];
}
@{
// var orderItemPalletDtos = orderDto?.OrderItemDtos.SelectMany(oi => oi.OrderItemPallets).ToList() ?? [];
//
}
@{
var genericAttributeDtos = new AcObservableCollection(orderDto.GenericAttributes);
}
}
@if (IsMasterGrid)
{
}
@code {
[Parameter] public bool IsMasterGrid { get; set; } = false;
//[Parameter] public OrderDto? OrderDto { get; set; }
[Parameter] public List? OrderDtos { get; set; }
string GridCss => !IsMasterGrid ? "hide-toolbar" : string.Empty;
MgGridBase Grid;
int _activeTabIndex;
protected override async Task OnInitializedAsync()
{
// if (OrderDto != null)
// OrderItemDtos = OrderDto.OrderItemDtos;
await ReloadDataFromDb(false);
}
private async Task ReloadDataFromDb(bool forceReload = false)
{
LoadingPanelVisibility.Visible = true;
using (await ObjectLock.GetSemaphore().UseWaitAsync())
{
if (OrderDtos == null) OrderDtos = await FruitBankSignalRClient.GetAllOrderDtos() ?? [];
else if (OrderDtos.Count == 0 || forceReload)
{
OrderDtos.Clear();
OrderDtos.AddRange(await FruitBankSignalRClient.GetAllOrderDtos() ?? []);
}
}
//if (forceReload)
Grid?.Reload();
LoadingPanelVisibility.Visible = false;
}
// void OnCustomizeElement(GridCustomizeElementEventArgs e)
// {
// if (e.ElementType == GridElementType.DataCell)
// {
// //if (some_condition)
// e.Attributes["title"] = "some tooltip";
// }
// }
// void Grid_CustomizeElement(GridCustomizeElementEventArgs e)
// {
// if (e.ElementType == GridElementType.DataCell)
// {
// var fieldName = ((DxGridDataColumn)e.Column).FieldName;
// var cellIdentifier = e.VisibleIndex + ":" + fieldName;
// e.Attributes["data-id"] = cellIdentifier;
// e.Attributes["onmouseenter"] = EventCallback.Factory.Create(
// this,
// async _ =>
// {
// hoveredCellInfo = fieldName + ": " + e.Grid.GetRowValue(e.VisibleIndex, fieldName);
// selector = "td[data-id=\"" + cellIdentifier + "\"]";
// await Hint.ShowAsync();
// });
// }
// }
protected async Task OnActiveTabChanged(int activeTabIndex)
{
_activeTabIndex = activeTabIndex;
return;
// switch (_activeTabIndex)
// {
// case 0:
// if(ProductDtos == null)
// ProductDtos = (await FruitBankSignalRClient.GetProductDtos() ?? []); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
// break;
// case 1:
// if(OrderDtos == null)
// OrderDtos = (await FruitBankSignalRClient.GetAllOrderDtos() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
// break;
// case 2:
// if (OrderItemDtos == null)
// OrderItemDtos = (await FruitBankSignalRClient.GetAllOrderItemDtos() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
// break;
// }
}
}