improvements, fixes, etc..
This commit is contained in:
parent
dd270f6eca
commit
3a8324cace
|
|
@ -11,6 +11,9 @@ public class LoggedInModel
|
||||||
public bool IsRevisor => IsLoggedIn && CustomerRoles.Any(x => x.SystemName.ToLowerInvariant() == "measuringrevisor");
|
public bool IsRevisor => IsLoggedIn && CustomerRoles.Any(x => x.SystemName.ToLowerInvariant() == "measuringrevisor");
|
||||||
public bool IsAdministrator => IsLoggedIn && CustomerRoles.Any(x => x.SystemName.ToLowerInvariant() == "administrators");
|
public bool IsAdministrator => IsLoggedIn && CustomerRoles.Any(x => x.SystemName.ToLowerInvariant() == "administrators");
|
||||||
|
|
||||||
|
public bool IsDeveloper => IsAdministrator && (CustomerDto!.Email.Contains("@aycode.com") || CustomerDto!.Email.Contains("wsdservers@") ||
|
||||||
|
CustomerDto!.Email.Contains("@dsserver.com"));
|
||||||
|
|
||||||
public CustomerDto? CustomerDto { get; private set; }
|
public CustomerDto? CustomerDto { get; private set; }
|
||||||
public List<CustomerRole> CustomerRoles { get; private set; } = [];
|
public List<CustomerRole> CustomerRoles { get; private set; } = [];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,9 @@
|
||||||
@inject FruitBankSignalRClient FruitBankSignalRClient
|
@inject FruitBankSignalRClient FruitBankSignalRClient
|
||||||
|
|
||||||
<MgGridBase Data="OrderDtos" IsMasterGrid="IsMasterGrid"
|
<MgGridBase Data="OrderDtos" IsMasterGrid="IsMasterGrid"
|
||||||
PageSize="@(IsMasterGrid ? 15 : 50)" ShowFilterRow="IsMasterGrid" ShowGroupPanel="IsMasterGrid"
|
ShowFilterRow="IsMasterGrid" ShowGroupPanel="IsMasterGrid"
|
||||||
AutoExpandAllGroupRows="false"
|
AutoExpandAllGroupRows="false"
|
||||||
ColumnResizeMode="GridColumnResizeMode.NextColumn"
|
ColumnResizeMode="GridColumnResizeMode.NextColumn" VirtualScrollingEnabled="IsMasterGrid"
|
||||||
FilterMenuButtonDisplayMode="@(IsMasterGrid ? GridFilterMenuButtonDisplayMode.Never : GridFilterMenuButtonDisplayMode.Always)">
|
FilterMenuButtonDisplayMode="@(IsMasterGrid ? GridFilterMenuButtonDisplayMode.Never : GridFilterMenuButtonDisplayMode.Always)">
|
||||||
<Columns>
|
<Columns>
|
||||||
<DxGridDataColumn FieldName="Id" SortIndex="0" SortOrder="GridColumnSortOrder.Descending" />
|
<DxGridDataColumn FieldName="Id" SortIndex="0" SortOrder="GridColumnSortOrder.Descending" />
|
||||||
|
|
@ -21,6 +21,7 @@
|
||||||
<DxGridDataColumn FieldName="MeasurementOwnerId" />
|
<DxGridDataColumn FieldName="MeasurementOwnerId" />
|
||||||
<DxGridDataColumn FieldName="DateOfReceipt" />
|
<DxGridDataColumn FieldName="DateOfReceipt" />
|
||||||
<DxGridDataColumn FieldName="CreatedOnUtc" />
|
<DxGridDataColumn FieldName="CreatedOnUtc" />
|
||||||
|
<DxGridCommandColumn Visible="!IsMasterGrid" Width="110"></DxGridCommandColumn>
|
||||||
</Columns>
|
</Columns>
|
||||||
<DetailRowTemplate>
|
<DetailRowTemplate>
|
||||||
@if (IsMasterGrid)
|
@if (IsMasterGrid)
|
||||||
|
|
@ -29,7 +30,7 @@
|
||||||
|
|
||||||
<DxTabs ActiveTabIndexChanged="(i) => OnActiveTabChanged(i)">
|
<DxTabs ActiveTabIndexChanged="(i) => OnActiveTabChanged(i)">
|
||||||
<DxTabPage Text="Rendelés tételek">
|
<DxTabPage Text="Rendelés tételek">
|
||||||
<GridDetailOrderItemDto OrderItemDtos="((OrderDto)context.DataItem).OrderItemDtos" IsMasterGrid="false" />
|
<GridDetailOrderItemDto OrderItemDtos="orderDto.OrderItemDtos" IsMasterGrid="false" />
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
<DxTabPage Text="Mérések">
|
<DxTabPage Text="Mérések">
|
||||||
@{
|
@{
|
||||||
|
|
|
||||||
|
|
@ -15,9 +15,17 @@
|
||||||
<Columns>
|
<Columns>
|
||||||
<DxGridDataColumn FieldName="Id" />
|
<DxGridDataColumn FieldName="Id" />
|
||||||
<DxGridDataColumn FieldName="OrderId" />
|
<DxGridDataColumn FieldName="OrderId" />
|
||||||
<DxGridDataColumn FieldName="ProductId" />
|
<DxGridDataColumn FieldName="ProductId">
|
||||||
|
<EditSettings>
|
||||||
|
<DxComboBoxSettings Data="ProductDtos"
|
||||||
|
ValueFieldName="Id"
|
||||||
|
TextFieldName="Name"
|
||||||
|
SearchFilterCondition="ListSearchFilterCondition.Contains"
|
||||||
|
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto" />
|
||||||
|
</EditSettings>
|
||||||
|
</DxGridDataColumn>
|
||||||
|
|
||||||
<DxGridDataColumn FieldName="ProductName" Width="40%" />
|
@* <DxGridDataColumn FieldName="ProductName" /> *@
|
||||||
<DxGridDataColumn FieldName="PriceInclTax" DisplayFormat="c" />
|
<DxGridDataColumn FieldName="PriceInclTax" DisplayFormat="c" />
|
||||||
<DxGridDataColumn FieldName="UnitPriceInclTax" DisplayFormat="c" />
|
<DxGridDataColumn FieldName="UnitPriceInclTax" DisplayFormat="c" />
|
||||||
|
|
||||||
|
|
@ -26,7 +34,8 @@
|
||||||
|
|
||||||
<DxGridDataColumn FieldName="IsMeasurable" />
|
<DxGridDataColumn FieldName="IsMeasurable" />
|
||||||
<DxGridDataColumn FieldName="IsMeasured" />
|
<DxGridDataColumn FieldName="IsMeasured" />
|
||||||
@* <DxGridDataColumn FieldName="IsAudited" /> *@
|
<DxGridDataColumn FieldName="IsAudited" />
|
||||||
|
<DxGridCommandColumn Visible="IsMasterGrid" Width="120"></DxGridCommandColumn>
|
||||||
</Columns>
|
</Columns>
|
||||||
<DetailRowTemplate>
|
<DetailRowTemplate>
|
||||||
<GridDetailOrderItemPallets OrderItemPallets="((OrderItemDto)context.DataItem).OrderItemPallets" />
|
<GridDetailOrderItemPallets OrderItemPallets="((OrderItemDto)context.DataItem).OrderItemPallets" />
|
||||||
|
|
@ -48,39 +57,12 @@
|
||||||
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
||||||
//[Parameter] public OrderDto? OrderDto { get; set; }
|
//[Parameter] public OrderDto? OrderDto { get; set; }
|
||||||
[Parameter] public List<OrderItemDto>? OrderItemDtos { get; set; }
|
[Parameter] public List<OrderItemDto>? OrderItemDtos { get; set; }
|
||||||
|
[Parameter] public List<ProductDto>? ProductDtos { get; set; }
|
||||||
|
|
||||||
protected override void OnInitialized()
|
protected override async Task OnInitializedAsync()
|
||||||
{
|
{
|
||||||
|
ProductDtos ??= await FruitBankSignalRClient.GetProductDtos();
|
||||||
// if (OrderDto != null)
|
// if (OrderDto != null)
|
||||||
// OrderItemDtos = OrderDto.OrderItemDtos;
|
// OrderItemDtos = OrderDto.OrderItemDtos;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@* List<GenericAttribute> GenericAttributes { get; set; }
|
|
||||||
List<OrderItemPallet> 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; }
|
|
||||||
*@
|
|
||||||
|
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
<DxGridDataColumn FieldName="IsMeasured" />
|
<DxGridDataColumn FieldName="IsMeasured" />
|
||||||
<DxGridDataColumn FieldName="IsAudited" />
|
<DxGridDataColumn FieldName="IsAudited" />
|
||||||
|
<DxGridCommandColumn Visible="!IsMasterGrid" Width="110"></DxGridCommandColumn>
|
||||||
</Columns>
|
</Columns>
|
||||||
<GroupSummary>
|
<GroupSummary>
|
||||||
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@
|
||||||
<DxGridDataColumn FieldName="IncomingQuantity" />
|
<DxGridDataColumn FieldName="IncomingQuantity" />
|
||||||
<DxGridDataColumn FieldName="NetWeight" />
|
<DxGridDataColumn FieldName="NetWeight" />
|
||||||
<DxGridDataColumn FieldName="IsMeasurable" />
|
<DxGridDataColumn FieldName="IsMeasurable" />
|
||||||
|
<DxGridCommandColumn Visible="!IsMasterGrid"></DxGridCommandColumn>
|
||||||
</Columns>
|
</Columns>
|
||||||
<DetailRowTemplate>
|
<DetailRowTemplate>
|
||||||
@if (IsMasterGrid)
|
@if (IsMasterGrid)
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,161 @@
|
||||||
|
@using FruitBank.Common.Dtos
|
||||||
|
@using FruitBank.Common.Entities
|
||||||
|
@using FruitBankHybrid.Shared.Services.SignalRs
|
||||||
|
|
||||||
|
@inject FruitBankSignalRClient FruitBankSignalRClient
|
||||||
|
|
||||||
|
<MgGridBase @ref="Grid" Data="ShippingDocuments" IsMasterGrid="IsMasterGrid"
|
||||||
|
EditOnKeyPress="true"
|
||||||
|
ValidationEnabled="false"
|
||||||
|
EditModelSaving="Grid_EditModelSaving">
|
||||||
|
<Columns>
|
||||||
|
<DxGridDataColumn FieldName="Id" SortIndex="0" SortOrder="GridColumnSortOrder.Descending" />
|
||||||
|
<DxGridDataColumn FieldName="PartnerId" Caption="pId" Width="125" />
|
||||||
|
<DxGridDataColumn FieldName="ShippingId" Caption="sId" Width="125" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="DocumentIdNumber" />
|
||||||
|
<DxGridDataColumn FieldName="ShippingDate" />
|
||||||
|
<DxGridDataColumn FieldName="Country" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="TotalPallets" />
|
||||||
|
<DxGridDataColumn FieldName="IsAllMeasured" />
|
||||||
|
<DxGridDataColumn FieldName="Comment" />
|
||||||
|
<DxGridDataColumn FieldName="Created" />
|
||||||
|
<DxGridDataColumn FieldName="Modified" />
|
||||||
|
<DxGridCommandColumn Visible="!IsMasterGrid" Width="110"></DxGridCommandColumn>
|
||||||
|
</Columns>
|
||||||
|
<DetailRowTemplate>
|
||||||
|
@if (IsMasterGrid)
|
||||||
|
{
|
||||||
|
var shippingDocument = ((ShippingDocument)context.DataItem);
|
||||||
|
|
||||||
|
<DxTabs ActiveTabIndexChanged="(i) => OnActiveTabChanged(i)">
|
||||||
|
<DxTabPage Text="Rendelés tételek">
|
||||||
|
<GridShippingItem ShippingItems="shippingDocument.ShippingItems" IsMasterGrid="false" />
|
||||||
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Mérések">
|
||||||
|
@{
|
||||||
|
var shippingItemPallets = shippingDocument?.ShippingItems?.SelectMany(oi => oi.ShippingItemPallets ?? []).ToList() ?? [];
|
||||||
|
// <GridDetailOrderItemPallets OrderItemPallets="orderItemPalletDtos" IsMasterGrid="false"/>
|
||||||
|
}
|
||||||
|
</DxTabPage>
|
||||||
|
|
||||||
|
</DxTabs>
|
||||||
|
}
|
||||||
|
</DetailRowTemplate>
|
||||||
|
<ToolbarTemplate>
|
||||||
|
<DxToolbar ItemRenderStyleMode="ToolbarRenderStyleMode.Plain">
|
||||||
|
<DxToolbarItem Text="New" Click="NewItem_Click" IconCssClass="grid-toolbar-new" />
|
||||||
|
<DxToolbarItem Text="Edit" Click="EditItem_Click" IconCssClass="grid-toolbar-edit" Enabled="EditItemsEnabled" />
|
||||||
|
<DxToolbarItem Text="Delete" Click="DeleteItem_Click" IconCssClass="grid-toolbar-delete" Enabled="EditItemsEnabled" />
|
||||||
|
<DxToolbarItem Text="Column Chooser" BeginGroup="true" Click="ColumnChooserItem_Click" IconCssClass="grid-toolbar-column-chooser" />
|
||||||
|
<DxToolbarItem Text="Export" IconCssClass="grid-toolbar-export">
|
||||||
|
<Items>
|
||||||
|
<DxToolbarItem Text="To CSV" Click="ExportCsvItem_Click" />
|
||||||
|
<DxToolbarItem Text="To XLSX" Click="ExportXlsxItem_Click" />
|
||||||
|
<DxToolbarItem Text="To XLS" Click="ExportXlsItem_Click" />
|
||||||
|
<DxToolbarItem Text="To PDF" Click="ExportPdfItem_Click" />
|
||||||
|
</Items>
|
||||||
|
</DxToolbarItem>
|
||||||
|
@* <DxToolbarItem BeginGroup="true">
|
||||||
|
<Template Context="toolbar_item_context">
|
||||||
|
<DxSearchBox @bind-Text="GridSearchText"
|
||||||
|
BindValueMode="BindValueMode.OnInput"
|
||||||
|
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto"
|
||||||
|
aria-label="Search" />
|
||||||
|
</Template>
|
||||||
|
</DxToolbarItem>
|
||||||
|
*@ </DxToolbar>
|
||||||
|
</ToolbarTemplate>
|
||||||
|
<GroupSummary>
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="Quantity"
|
||||||
|
FooterColumnName="Quantity" />
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="NetWeight"
|
||||||
|
FooterColumnName="NetWeight" />
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="PriceInclTax"
|
||||||
|
FooterColumnName="PriceInclTax" />
|
||||||
|
</GroupSummary>
|
||||||
|
</MgGridBase>
|
||||||
|
|
||||||
|
@code {
|
||||||
|
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
||||||
|
//[Parameter] public OrderDto? OrderDto { get; set; }
|
||||||
|
[Parameter] public List<ShippingDocument>? ShippingDocuments { get; set; }
|
||||||
|
|
||||||
|
const string ExportFileName = "ExportResult";
|
||||||
|
string GridSearchText = "";
|
||||||
|
bool EditItemsEnabled { get; set; }
|
||||||
|
int FocusedRowVisibleIndex { get; set; }
|
||||||
|
IGrid Grid { get; set; }
|
||||||
|
|
||||||
|
private int _activeTabIndex;
|
||||||
|
protected override void OnInitialized()
|
||||||
|
{
|
||||||
|
// if (OrderDto != null)
|
||||||
|
// OrderItemDtos = OrderDto.OrderItemDtos;
|
||||||
|
}
|
||||||
|
|
||||||
|
async Task Grid_DataItemDeleting(GridDataItemDeletingEventArgs e) {
|
||||||
|
// await NwindDataService.RemoveEmployeeAsync((EditableEmployee)e.DataItem);
|
||||||
|
// await LoadGridDataAsync();
|
||||||
|
// if(Data.Length == 0)
|
||||||
|
// UpdateEditItemsEnabled(false);
|
||||||
|
}
|
||||||
|
async Task Grid_EditModelSaving(GridEditModelSavingEventArgs e) {
|
||||||
|
// if(e.IsNew) {
|
||||||
|
// await NwindDataService.InsertEmployeeAsync((EditableEmployee)e.EditModel);
|
||||||
|
// UpdateEditItemsEnabled(true);
|
||||||
|
// } else
|
||||||
|
// await NwindDataService.UpdateEmployeeAsync((EditableEmployee)e.DataItem, (EditableEmployee)e.EditModel);
|
||||||
|
// await LoadGridDataAsync();
|
||||||
|
}
|
||||||
|
async Task NewItem_Click() {
|
||||||
|
await Grid.StartEditNewRowAsync();
|
||||||
|
}
|
||||||
|
async Task EditItem_Click() {
|
||||||
|
await Grid.StartEditRowAsync(FocusedRowVisibleIndex);
|
||||||
|
}
|
||||||
|
void DeleteItem_Click() {
|
||||||
|
Grid.ShowRowDeleteConfirmation(FocusedRowVisibleIndex);
|
||||||
|
}
|
||||||
|
void ColumnChooserItem_Click(ToolbarItemClickEventArgs e) {
|
||||||
|
Grid.ShowColumnChooser();
|
||||||
|
}
|
||||||
|
async Task ExportXlsxItem_Click() {
|
||||||
|
await Grid.ExportToXlsxAsync(ExportFileName);
|
||||||
|
}
|
||||||
|
async Task ExportXlsItem_Click() {
|
||||||
|
await Grid.ExportToXlsAsync(ExportFileName);
|
||||||
|
}
|
||||||
|
async Task ExportCsvItem_Click() {
|
||||||
|
await Grid.ExportToCsvAsync(ExportFileName);
|
||||||
|
}
|
||||||
|
async Task ExportPdfItem_Click() {
|
||||||
|
await Grid.ExportToPdfAsync(ExportFileName);
|
||||||
|
}
|
||||||
|
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;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
@using FruitBank.Common.Dtos
|
||||||
|
@using FruitBank.Common.Entities
|
||||||
|
@using FruitBankHybrid.Shared.Services.SignalRs
|
||||||
|
|
||||||
|
@inject FruitBankSignalRClient FruitBankSignalRClient
|
||||||
|
|
||||||
|
@* <div class="mb-2">
|
||||||
|
Contact Phone: @OrderDto.Email
|
||||||
|
</div> *@
|
||||||
|
|
||||||
|
<MgGridBase Data="ShippingItems" IsMasterGrid="IsMasterGrid"
|
||||||
|
PageSize="@(IsMasterGrid ? 15 : 50)" ShowFilterRow="IsMasterGrid" ShowGroupPanel="IsMasterGrid"
|
||||||
|
AutoExpandAllGroupRows="false"
|
||||||
|
ColumnResizeMode="GridColumnResizeMode.NextColumn"
|
||||||
|
FilterMenuButtonDisplayMode="@(IsMasterGrid ? GridFilterMenuButtonDisplayMode.Never : GridFilterMenuButtonDisplayMode.Always)">
|
||||||
|
<Columns>
|
||||||
|
<DxGridDataColumn FieldName="Id" Caption="oiId" Width="125" />
|
||||||
|
<DxGridDataColumn FieldName="ShippingDocumentId" Caption="oId" Width="125" />
|
||||||
|
@* <DxGridDataColumn FieldName="PalletId" Caption="pId" Width="125" /> *@
|
||||||
|
<DxGridDataColumn FieldName="ProductId" Caption="pId" Width="125" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="Name" MinWidth="120" Caption="Name(OnDoc)" />
|
||||||
|
<DxGridDataColumn FieldName="PalletsOnDocument" Caption="Raklap(OnDoc)" />
|
||||||
|
<DxGridDataColumn FieldName="QuantityOnDocument" Caption="Mennyiség(OnDoc)" />
|
||||||
|
<DxGridDataColumn FieldName="NetWeightOnDocument" Caption="Net.súly(OnDoc)" />
|
||||||
|
<DxGridDataColumn FieldName="GrossWeightOnDocument" Caption="Br.súly(OnDoc)" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="MeasuringCount" Caption="Mérések száma" />
|
||||||
|
<DxGridDataColumn FieldName="MeasuredQuantity" Caption="Mért mennyiség" />
|
||||||
|
<DxGridDataColumn FieldName="MeasuredNetWeight" Caption="Mért net.súly(kg)" />
|
||||||
|
<DxGridDataColumn FieldName="MeasuredGrossWeight" Caption="Mért br.súly(kg)" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="IsMeasurable" />
|
||||||
|
<DxGridDataColumn FieldName="IsMeasured" />
|
||||||
|
|
||||||
|
<DxGridDataColumn FieldName="Created" />
|
||||||
|
<DxGridDataColumn FieldName="Modified" />
|
||||||
|
<DxGridCommandColumn Visible="!IsMasterGrid" Width="110"></DxGridCommandColumn>
|
||||||
|
</Columns>
|
||||||
|
<DetailRowTemplate>
|
||||||
|
@* <GridDetailOrderItemPallets OrderItemPallets="((OrderItemDto)context.DataItem).OrderItemPallets" /> *@
|
||||||
|
</DetailRowTemplate>
|
||||||
|
<GroupSummary>
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="MeasuredQuantity"
|
||||||
|
FooterColumnName="Quantity" />
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="MeasuredGrossWeight"
|
||||||
|
FooterColumnName="GrossWeight" />
|
||||||
|
<DxGridSummaryItem SummaryType="GridSummaryItemType.Sum"
|
||||||
|
FieldName="MeasuredNetWeight"
|
||||||
|
FooterColumnName="NetWeight" />
|
||||||
|
</GroupSummary>
|
||||||
|
</MgGridBase>
|
||||||
|
|
||||||
|
@code {
|
||||||
|
[Parameter] public bool IsMasterGrid { get; set; } = false;
|
||||||
|
//[Parameter] public OrderDto? OrderDto { get; set; }
|
||||||
|
[Parameter] public List<ShippingItem>? ShippingItems { get; set; }
|
||||||
|
|
||||||
|
protected override async Task OnInitializedAsync()
|
||||||
|
{
|
||||||
|
ShippingItems ??= await FruitBankSignalRClient.GetShippingItems() ?? [];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,13 +1,18 @@
|
||||||
using AyCode.Core.Loggers;
|
using AyCode.Core.Loggers;
|
||||||
using DevExpress.Blazor;
|
using DevExpress.Blazor;
|
||||||
|
using DevExpress.Data.Helpers;
|
||||||
|
using DevExpress.Utils.Filtering.Internal;
|
||||||
using FruitBankHybrid.Shared.Services.SignalRs;
|
using FruitBankHybrid.Shared.Services.SignalRs;
|
||||||
using Microsoft.AspNetCore.Components;
|
using Microsoft.AspNetCore.Components;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
namespace FruitBankHybrid.Shared.Components;
|
namespace FruitBankHybrid.Shared.Components;
|
||||||
|
|
||||||
public class MgGridBase : DxGrid
|
public class MgGridBase : DxGrid
|
||||||
{
|
{
|
||||||
|
private bool _isFirstInitializeParameterCore;
|
||||||
private bool _isFirstInitializeParameters;
|
private bool _isFirstInitializeParameters;
|
||||||
|
|
||||||
[Inject] public required IEnumerable<IAcLogWriterClientBase> LogWriters { get; set; }
|
[Inject] public required IEnumerable<IAcLogWriterClientBase> LogWriters { get; set; }
|
||||||
[Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; }
|
[Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; }
|
||||||
|
|
||||||
|
|
@ -36,7 +41,7 @@ public class MgGridBase : DxGrid
|
||||||
}
|
}
|
||||||
protected override Task SetParametersAsyncCore(ParameterView parameters)
|
protected override Task SetParametersAsyncCore(ParameterView parameters)
|
||||||
{
|
{
|
||||||
if (!_isFirstInitializeParameters)
|
if (!_isFirstInitializeParameterCore)
|
||||||
{
|
{
|
||||||
//if (typeof(TDataItem) is IId<Guid> || typeof(TDataItem) is IId<int>)
|
//if (typeof(TDataItem) is IId<Guid> || typeof(TDataItem) is IId<int>)
|
||||||
KeyFieldName = "Id";
|
KeyFieldName = "Id";
|
||||||
|
|
@ -46,29 +51,7 @@ public class MgGridBase : DxGrid
|
||||||
|
|
||||||
CustomizeElement += OnCustomizeElement;
|
CustomizeElement += OnCustomizeElement;
|
||||||
|
|
||||||
//ShowFilterRow = true;
|
_isFirstInitializeParameterCore = true;
|
||||||
//PageSize = 4;
|
|
||||||
//ShowGroupPanel = true;
|
|
||||||
//AllowSort = false;
|
|
||||||
|
|
||||||
TextWrapEnabled = false;
|
|
||||||
AllowSelectRowByClick = true;
|
|
||||||
HighlightRowOnHover = true;
|
|
||||||
AutoCollapseDetailRow = true;
|
|
||||||
AutoExpandAllGroupRows = false;
|
|
||||||
|
|
||||||
//KeyboardNavigationEnabled = true;
|
|
||||||
|
|
||||||
//var dataColumns = GetDataColumns();
|
|
||||||
|
|
||||||
//var idColumn = dataColumns.FirstOrDefault(x => x.FieldName == nameof(IId<Guid>.Id));
|
|
||||||
//if (idColumn != null)
|
|
||||||
//{
|
|
||||||
// idColumn.ShowInColumnChooser = AcDomain.IsDeveloperVersion;
|
|
||||||
// idColumn.Visible = !AcDomain.IsDeveloperVersion;
|
|
||||||
//}
|
|
||||||
|
|
||||||
_isFirstInitializeParameters = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return base.SetParametersAsyncCore(parameters);
|
return base.SetParametersAsyncCore(parameters);
|
||||||
|
|
@ -77,11 +60,74 @@ public class MgGridBase : DxGrid
|
||||||
|
|
||||||
protected override void OnParametersSet()
|
protected override void OnParametersSet()
|
||||||
{
|
{
|
||||||
base.OnParametersSet();
|
if (!_isFirstInitializeParameters)
|
||||||
|
{
|
||||||
ShowGroupPanel = IsMasterGrid;
|
ShowGroupPanel = IsMasterGrid;
|
||||||
ShowSearchBox = IsMasterGrid;
|
ShowSearchBox = IsMasterGrid;
|
||||||
|
ShowFilterRow = IsMasterGrid;
|
||||||
|
|
||||||
|
FilterMenuButtonDisplayMode=(IsMasterGrid ? GridFilterMenuButtonDisplayMode.Never : GridFilterMenuButtonDisplayMode.Always);
|
||||||
|
|
||||||
DetailRowDisplayMode = IsMasterGrid ? GridDetailRowDisplayMode.Auto : GridDetailRowDisplayMode.Never;
|
DetailRowDisplayMode = IsMasterGrid ? GridDetailRowDisplayMode.Auto : GridDetailRowDisplayMode.Never;
|
||||||
DetailExpandButtonDisplayMode = IsMasterGrid ? GridDetailExpandButtonDisplayMode.Auto : GridDetailExpandButtonDisplayMode.Never;
|
DetailExpandButtonDisplayMode = IsMasterGrid ? GridDetailExpandButtonDisplayMode.Auto : GridDetailExpandButtonDisplayMode.Never;
|
||||||
|
|
||||||
|
TextWrapEnabled = false;
|
||||||
|
AllowSelectRowByClick = true;
|
||||||
|
HighlightRowOnHover = true;
|
||||||
|
AutoCollapseDetailRow = true;
|
||||||
|
AutoExpandAllGroupRows = false;
|
||||||
|
|
||||||
|
PagerVisible = IsMasterGrid;
|
||||||
|
PageSize = IsMasterGrid ? 15 : 50;
|
||||||
|
|
||||||
|
AllowColumnReorder = true;
|
||||||
|
AllowGroup = IsMasterGrid;
|
||||||
|
AllowSort = true;
|
||||||
|
|
||||||
|
FocusedRowEnabled = true;
|
||||||
|
ColumnResizeMode = GridColumnResizeMode.ColumnsContainer;
|
||||||
|
EditMode = GridEditMode.EditRow;
|
||||||
|
//VirtualScrollingEnabled = IsMasterGrid;
|
||||||
|
PageSizeSelectorVisible = true;
|
||||||
|
|
||||||
|
_isFirstInitializeParameters = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
base.OnParametersSet();
|
||||||
|
}
|
||||||
|
|
||||||
|
//public RenderFragment AddCommandColumn()
|
||||||
|
//{
|
||||||
|
// RenderFragment columns = b =>
|
||||||
|
// {
|
||||||
|
// if (!IsMasterGrid)
|
||||||
|
// {
|
||||||
|
// b.OpenComponent(0, typeof(DxGridCommandColumn));
|
||||||
|
// b.CloseComponent();
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// this.Columns.ApplyChain(x) = AddCommandColumn();
|
||||||
|
|
||||||
|
// return columns;
|
||||||
|
//}
|
||||||
|
|
||||||
|
//private RenderFragment BuildColumnsGrid()
|
||||||
|
//{
|
||||||
|
// PropertyInfo[] props = DataSource.FirstOrDefault().GetType().GetProperties();
|
||||||
|
// RenderFragment columns = b =>
|
||||||
|
// {
|
||||||
|
// foreach (var prop in props)
|
||||||
|
// {
|
||||||
|
// if (prop.PropertyType == typeof(string))
|
||||||
|
// {
|
||||||
|
|
||||||
|
// b.OpenComponent(0, typeof(DxGridDataColumn));
|
||||||
|
// b.AddAttribute(0, "FieldName", prop.Name);
|
||||||
|
// b.CloseComponent();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
// return columns;
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
|
|
@ -37,11 +37,17 @@
|
||||||
</NavLink>
|
</NavLink>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@if (LoggedInModel.IsAdministrator)
|
@if (LoggedInModel.IsDeveloper)
|
||||||
{
|
{
|
||||||
<div class="nav-item px-3">
|
<div class="nav-item px-3">
|
||||||
<NavLink class="nav-link" href="Revisor">
|
<NavLink class="nav-link" href="OrdersAdmin">
|
||||||
<span class="icon counter-icon" aria-hidden="true"></span> Revizor
|
<span class="icon counter-icon" aria-hidden="true"></span> Rendelések - Adminisztrátor
|
||||||
|
</NavLink>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="nav-item px-3">
|
||||||
|
<NavLink class="nav-link" href="ShippingsAdmin">
|
||||||
|
<span class="icon counter-icon" aria-hidden="true"></span> Szállítmányok - Adminisztrátor
|
||||||
</NavLink>
|
</NavLink>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
@page "/Revisor"
|
@page "/OrdersAdmin"
|
||||||
@using FruitBank.Common.Dtos
|
@using FruitBank.Common.Dtos
|
||||||
@using FruitBankHybrid.Shared.Components
|
@using FruitBankHybrid.Shared.Components
|
||||||
<h3>Revisor</h3>
|
<h3>Rendelések - Adminisztrátor</h3>
|
||||||
|
|
||||||
<DxDialogProvider />
|
<DxDialogProvider />
|
||||||
|
|
||||||
<div style="margin-top: 50px;">
|
<div style="margin-top: 30px;">
|
||||||
|
|
||||||
<DxLoadingPanel @bind-Visible="LoadingPanelVisible"
|
<DxLoadingPanel @bind-Visible="LoadingPanelVisible"
|
||||||
IsContentBlocked="true"
|
IsContentBlocked="true"
|
||||||
|
|
@ -24,7 +24,7 @@
|
||||||
<GridDetailOrderDto OrderDtos="OrderDtos" IsMasterGrid="true"></GridDetailOrderDto>
|
<GridDetailOrderDto OrderDtos="OrderDtos" IsMasterGrid="true"></GridDetailOrderDto>
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
<DxTabPage Text="Rendelés tételek">
|
<DxTabPage Text="Rendelés tételek">
|
||||||
<GridDetailOrderItemDto OrderItemDtos="OrderItemDtos" IsMasterGrid="true"></GridDetailOrderItemDto>
|
<GridDetailOrderItemDto OrderItemDtos="OrderItemDtos" ProductDtos="ProductDtos" IsMasterGrid="true"></GridDetailOrderItemDto>
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
<DxTabPage Text="Mérések">
|
<DxTabPage Text="Mérések">
|
||||||
<GridDetailOrderItemPallets IsMasterGrid="true"></GridDetailOrderItemPallets>
|
<GridDetailOrderItemPallets IsMasterGrid="true"></GridDetailOrderItemPallets>
|
||||||
|
|
@ -9,7 +9,7 @@ using Microsoft.AspNetCore.Components;
|
||||||
|
|
||||||
namespace FruitBankHybrid.Shared.Pages;
|
namespace FruitBankHybrid.Shared.Pages;
|
||||||
|
|
||||||
public partial class Revisor : ComponentBase
|
public partial class OrdersAdmin : ComponentBase
|
||||||
{
|
{
|
||||||
[Inject] public required IEnumerable<IAcLogWriterClientBase> LogWriters { get; set; }
|
[Inject] public required IEnumerable<IAcLogWriterClientBase> LogWriters { get; set; }
|
||||||
[Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; }
|
[Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; }
|
||||||
|
|
@ -34,7 +34,7 @@ public partial class Revisor : ComponentBase
|
||||||
|
|
||||||
LoadingPanelVisible = true;
|
LoadingPanelVisible = true;
|
||||||
|
|
||||||
_logger = new LoggerClient<Revisor>(LogWriters.ToArray());
|
_logger = new LoggerClient<OrdersAdmin>(LogWriters.ToArray());
|
||||||
_logger.Info("OnInitializedAsync");
|
_logger.Info("OnInitializedAsync");
|
||||||
|
|
||||||
await RefreshOrdersFromDb(DateTime.Now);
|
await RefreshOrdersFromDb(DateTime.Now);
|
||||||
|
|
@ -58,16 +58,13 @@ public partial class Revisor : ComponentBase
|
||||||
switch (ActiveTabIndex)
|
switch (ActiveTabIndex)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
if(ProductDtos == null)
|
ProductDtos ??= (await FruitBankSignalRClient.GetProductDtos() ?? []); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
||||||
ProductDtos = (await FruitBankSignalRClient.GetProductDtos() ?? []); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
|
||||||
break;
|
break;
|
||||||
case 1:
|
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();
|
||||||
OrderDtos = (await FruitBankSignalRClient.GetAllOrderDtos() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
|
||||||
break;
|
break;
|
||||||
case 2:
|
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();
|
||||||
OrderItemDtos = (await FruitBankSignalRClient.GetAllOrderItemDtos() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
@page "/ShippingsAdmin"
|
||||||
|
@using FruitBank.Common.Dtos
|
||||||
|
@using FruitBankHybrid.Shared.Components
|
||||||
|
<h3>Szállítmányok - Adminisztrátor</h3>
|
||||||
|
|
||||||
|
<DxDialogProvider />
|
||||||
|
|
||||||
|
<div style="margin-top: 30px;">
|
||||||
|
|
||||||
|
<DxLoadingPanel @bind-Visible="LoadingPanelVisible"
|
||||||
|
IsContentBlocked="true"
|
||||||
|
ApplyBackgroundShading="true"
|
||||||
|
IndicatorAreaVisible="true"
|
||||||
|
IsContentVisible="true"
|
||||||
|
IndicatorAnimationType="WaitIndicatorAnimationType.Spin"
|
||||||
|
Text="Adatok szinkronizálása folyamatban...">
|
||||||
|
|
||||||
|
@* @bind-ActiveTabIndex="@ActiveTabIndex" *@
|
||||||
|
<DxTabs ActiveTabIndexChanged="(i) => OnActiveTabChanged(i)">
|
||||||
|
<DxTabPage Text="Termékek">
|
||||||
|
<GridProductDtoTemplate ProductDtos="ProductDtos" IsMasterGrid="true"></GridProductDtoTemplate>
|
||||||
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Szállítmányok">
|
||||||
|
@* <GridDetailOrderDto OrderDtos="Shippings" IsMasterGrid="true"></GridDetailOrderDto> *@
|
||||||
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Szállítólevelek">
|
||||||
|
<GridShippingDocument ShippingDocuments="ShippingDocuments" IsMasterGrid="true"></GridShippingDocument>
|
||||||
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Szállítólevél tételek">
|
||||||
|
<GridShippingItem IsMasterGrid="true"></GridShippingItem>
|
||||||
|
</DxTabPage>
|
||||||
|
<DxTabPage Text="Mérések">
|
||||||
|
@* <GridDetailOrderItemPallets IsMasterGrid="true"></GridDetailOrderItemPallets> *@
|
||||||
|
</DxTabPage>
|
||||||
|
</DxTabs>
|
||||||
|
</DxLoadingPanel>
|
||||||
|
</div>
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
using AyCode.Core.Loggers;
|
||||||
|
using DevExpress.Blazor;
|
||||||
|
using FruitBank.Common.Dtos;
|
||||||
|
using FruitBank.Common.Entities;
|
||||||
|
using FruitBank.Common.Models;
|
||||||
|
using FruitBankHybrid.Shared.Services.Loggers;
|
||||||
|
using FruitBankHybrid.Shared.Services.SignalRs;
|
||||||
|
using Mango.Nop.Core.Loggers;
|
||||||
|
using Microsoft.AspNetCore.Components;
|
||||||
|
|
||||||
|
namespace FruitBankHybrid.Shared.Pages;
|
||||||
|
|
||||||
|
public partial class ShippingsAdmin : ComponentBase
|
||||||
|
{
|
||||||
|
[Inject] public required IEnumerable<IAcLogWriterClientBase> LogWriters { get; set; }
|
||||||
|
[Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; }
|
||||||
|
[Inject] public required NavigationManager NavManager { get; set; }
|
||||||
|
[Inject] private IDialogService DialogService { get; set; } = null!;
|
||||||
|
[Inject] public required LoggedInModel LoggedInModel { get; set; }
|
||||||
|
|
||||||
|
public IGrid gridShipping;
|
||||||
|
private List<ProductDto>? ProductDtos { get; set; } = null!;
|
||||||
|
private List<Shipping>? Shippings { get; set; } = null!;
|
||||||
|
private List<ShippingDocument>? ShippingDocuments { get; set; } = null!;
|
||||||
|
private List<ShippingItem>? ShippingItems { get; set; } = null!;
|
||||||
|
|
||||||
|
public bool AutoCollapseDetailRow { get; set; }
|
||||||
|
public bool LoadingPanelVisible { get; set; } = true;
|
||||||
|
|
||||||
|
private ILogger _logger = null!;
|
||||||
|
public int ActiveTabIndex;
|
||||||
|
|
||||||
|
protected override async Task OnInitializedAsync()
|
||||||
|
{
|
||||||
|
if (!LoggedInModel.IsRevisor) NavManager.NavigateTo("/Login");
|
||||||
|
|
||||||
|
LoadingPanelVisible = true;
|
||||||
|
|
||||||
|
_logger = new LoggerClient<ShippingsAdmin>(LogWriters.ToArray());
|
||||||
|
_logger.Info("OnInitializedAsync");
|
||||||
|
|
||||||
|
await RefreshOrdersFromDb(DateTime.Now);
|
||||||
|
await base.OnInitializedAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
private async Task RefreshOrdersFromDb(DateTime dateTime)
|
||||||
|
{
|
||||||
|
LoadingPanelVisible = true;
|
||||||
|
|
||||||
|
Shippings = (await FruitBankSignalRClient.GetShippings() ?? []).OrderByDescending(o=>o.Id).ToList();//.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
||||||
|
|
||||||
|
LoadingPanelVisible = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected async Task OnActiveTabChanged(int activeTabIndex)
|
||||||
|
{
|
||||||
|
ActiveTabIndex = activeTabIndex;
|
||||||
|
LoadingPanelVisible = true;
|
||||||
|
|
||||||
|
switch (ActiveTabIndex)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
ProductDtos ??= (await FruitBankSignalRClient.GetProductDtos() ?? []); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
Shippings ??= (await FruitBankSignalRClient.GetShippings() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
ShippingDocuments ??= (await FruitBankSignalRClient.GetShippingDocuments() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
ShippingItems ??= (await FruitBankSignalRClient.GetShippingItems() ?? []).OrderByDescending(o => o.Id).ToList(); //.Where(o => o.HasMeasuringAccess(LoggedInModel.CustomerDto?.Id, LoggedInModel.IsRevisor)).OrderBy(o => o.DateOfReceipt).ToList();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
LoadingPanelVisible = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
|
||||||
Loading…
Reference in New Issue