This commit is contained in:
Adam 2024-06-01 23:00:30 +02:00
commit a81fc649f0
5 changed files with 103 additions and 94 deletions

View File

@ -1,92 +0,0 @@
@using TIAM.Entities.Transfers
@using TIAM.Entities.Drivers
@using TIAM.Models.Dtos.Users
@using TIAMSharedUI.Shared.Components.Grids
@using TIAMWebApp.Shared.Application.Interfaces
@using TIAMWebApp.Shared.Application.Services
@using TIAMWebApp.Shared.Application.Utility
@using TIAM.Core.Loggers
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@inject IUserDataService UserDataService
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject AdminSignalRClient AdminSignalRClient;
<TransferToDriversGrid Data="DetailGridData"
Logger="_logger"
SignalRClient="AdminSignalRClient"
PageSize="5"
AutoExpandAllGroupRows="true"
KeyboardNavigationEnabled="KeyboardNavigationEnabled"
KeyFieldName="Id"
ValidationEnabled="false"
CustomizeEditModel="CustomizeEditModel"
@* EditModelSaving="EditModelSaving" *@
@* DataItemDeleting="DataItemDeleting" *@
EditMode="GridEditMode.EditForm"
ColumnResizeMode="GridColumnResizeMode.NextColumn"
ShowFilterRow="true">
<Columns>
<DxGridCommandColumn NewButtonVisible="true" Width="8%" FixedPosition="GridColumnFixedPosition.Left" />
<DxGridDataColumn FieldName="Id" GroupIndex="0" />
<DxGridDataColumn FieldName="CarId" Width="40%" />
<DxGridDataColumn FieldName="LicencePlate" />
</Columns>
</TransferToDriversGrid>
@code {
[Parameter]
public bool KeyboardNavigationEnabled { get; set; }
[Parameter]
public Transfer Transfer { get; set; }
private LoggerClient<DriverGridComponent> _logger;
List<TransferToDriver> DetailGridData { get; set; }
protected override async Task OnInitializedAsync()
{
_logger = new LoggerClient<DriverGridComponent>(LogWriters.ToArray());
DetailGridData = Transfer.TransferToDrivers;
_logger.Info($"DetailGridData: {DetailGridData.Count}");
}
void CustomizeEditModel(GridCustomizeEditModelEventArgs e)
{
if (!e.IsNew) return;
var newDriver = (TransferToDriver)e.EditModel;
newDriver.Id = Guid.NewGuid();
newDriver.CarId = Guid.Empty;
newDriver.LicencePlate = "";
newDriver.Car = new Car();
newDriver.Price = 0;
newDriver.TransferId = Transfer.Id;
}
// async Task EditModelSaving(GridEditModelSavingEventArgs e)
// {
// if (e.IsNew)
// //add new orderData to orderData array
// _logger.Info("New driver added");
// else
// _logger.Info("Driver updated");
// await UpdateDataAsync();
// }
// async Task DataItemDeleting(GridDataItemDeletingEventArgs e)
// {
// //remove orderData from orderData array
// _logger.Info("driver deleted");
// //await UpdateDataAsync();
// }
async Task UpdateDataAsync()
{
//refresh grid
_logger.Info("orderData grid refreshed");
}
}

View File

@ -147,7 +147,7 @@
<DxTabs> <DxTabs>
<DxTabPage Text="Driver"> <DxTabPage Text="Driver">
<DriverGridComponent Transfer="(TIAM.Entities.Transfers.Transfer)context.DataItem" KeyboardNavigationEnabled="true" /> <TransferToDriverGridComponent Transfer="(Transfer)context.DataItem" KeyboardNavigationEnabled="true" />
</DxTabPage> </DxTabPage>
</DxTabs> </DxTabs>

View File

@ -0,0 +1,84 @@
@using TIAM.Entities.Transfers
@using TIAM.Entities.Drivers
@using TIAM.Models.Dtos.Users
@using TIAMSharedUI.Shared.Components.Grids
@using TIAMWebApp.Shared.Application.Interfaces
@using TIAMWebApp.Shared.Application.Utility
@using TIAM.Core.Loggers
@using AyCode.Core.Loggers
@using AyCode.Services.Loggers
@using TIAMWebApp.Shared.Application.Services
@inject IUserDataService UserDataService
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject AdminSignalRClient AdminSignalRClient;
<TransferToDriversDetailGrid @ref="_transferToDriversGrid"
DataSource="Transfer.TransferToDrivers"
Logger="_logger"
SignalRClient="AdminSignalRClient"
OnDataItemSaving="DataItemSaving"
OnDataItemDeleting="DataItemDeleting"
OnDataItemChanged="DataItemChanged"
PageSize="5"
AutoExpandAllGroupRows="true"
KeyboardNavigationEnabled="KeyboardNavigationEnabled"
KeyFieldName="Id"
ValidationEnabled="false"
CustomizeEditModel="CustomizeEditModel"
EditMode="GridEditMode.EditForm"
ColumnResizeMode="GridColumnResizeMode.NextColumn"
ShowFilterRow="true">
<Columns>
<DxGridCommandColumn NewButtonVisible="true" Width="8%" FixedPosition="GridColumnFixedPosition.Left" />
<DxGridDataColumn FieldName="Id" GroupIndex="0" />
<DxGridDataColumn FieldName="CarId" Width="40%" />
<DxGridDataColumn FieldName="LicencePlate" />
</Columns>
</TransferToDriversDetailGrid>
@code {
[Parameter] public bool KeyboardNavigationEnabled { get; set; }
[Parameter] public Transfer Transfer { get; set; } = null!;
[Parameter] public EventCallback<TransferToDriver> OnTransferToDriverChanged { get; set; }
private TransferToDriversDetailGrid _transferToDriversGrid = null!;
private LoggerClient<TransferToDriverGridComponent> _logger = null!;
protected override void OnInitialized()
{
_logger = new LoggerClient<TransferToDriverGridComponent>(LogWriters.ToArray());
_logger.Info($"DetailGridData: {Transfer.TransferToDrivers.Count}");
}
private void DataItemChanged(TransferToDriver transferToDriver)
{
OnTransferToDriverChanged.InvokeAsync(transferToDriver);
}
private void DataItemSaving(GridEditModelSavingEventArgs obj)
{
_logger.Debug($"DataItemSaving");
}
private void DataItemDeleting(GridDataItemDeletingEventArgs obj)
{
_logger.Debug($"DataItemDeleting");
}
void CustomizeEditModel(GridCustomizeEditModelEventArgs e)
{
if (!e.IsNew) return;
var newDriver = (TransferToDriver)e.EditModel;
newDriver.Id = Guid.NewGuid();
newDriver.CarId = Guid.Empty;
newDriver.LicencePlate = "";
newDriver.Car = new Car();
newDriver.Price = 0;
newDriver.TransferId = Transfer.Id;
}
}

View File

@ -0,0 +1,17 @@
using Microsoft.AspNetCore.Components;
namespace TIAMSharedUI.Shared.Components.Grids;
public class TransferToDriversDetailGrid : TransferToDriversGrid
{
protected override Task SetParametersAsyncCore(ParameterView parameters)
{
var isFirst = IsFirstInitializeParameters;
return base.SetParametersAsyncCore(parameters);
if (isFirst)
{
}
}
}

View File

@ -8,7 +8,7 @@ public class TransferToDriversGrid : TiamGrid<TransferToDriver>
{ {
public TransferToDriversGrid() : base() public TransferToDriversGrid() : base()
{ {
GetAllMessageTag = SignalRTags.GetTransferToDrivers; //GetAllMessageTag = SignalRTags.GetTransferToDrivers;
AddMessageTag = SignalRTags.AddTransferToDrivers; AddMessageTag = SignalRTags.AddTransferToDrivers;
UpdateMessageTag = SignalRTags.UpdateTransferToDrivers; UpdateMessageTag = SignalRTags.UpdateTransferToDrivers;
RemoveMessageTag = SignalRTags.RemoveTransferToDrivers; RemoveMessageTag = SignalRTags.RemoveTransferToDrivers;