122 lines
4.9 KiB
Plaintext
122 lines
4.9 KiB
Plaintext
@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
|
|
@using AyCode.Core.Enums
|
|
@using AyCode.Core.Extensions
|
|
@using AyCode.Core
|
|
@using AyCode.Core.Helpers
|
|
@using AyCode.Services.SignalRs
|
|
@using TIAM.Entities.Users
|
|
@using TIAM.Services
|
|
@inject IUserDataService UserDataService
|
|
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
|
|
@inject AdminSignalRClient AdminSignalRClient;
|
|
|
|
<TransferToDriversDetailGrid @ref="_transferToDriversGrid"
|
|
ContextIds="@(ContextId.IsNullOrEmpty() ? throw new InvalidDataException($"ContextId.IsNullOrEmpty(); ContextId: {ContextId}") : [ContextId.Value])"
|
|
DataSource="ParentData.TransferToDrivers"
|
|
Logger="_logger"
|
|
SignalRClient="AdminSignalRClient"
|
|
OnGridEditModelSaving="DataItemSaving"
|
|
OnGridItemDeleting="DataItemDeleting"
|
|
OnGridItemChanged="DataItemChanged"
|
|
ValidationEnabled="false"
|
|
CustomizeEditModel="CustomizeEditModel"
|
|
EditMode="GridEditMode.EditRow"
|
|
ColumnResizeMode="GridColumnResizeMode.NextColumn">
|
|
<Columns>
|
|
<DxGridCommandColumn Width="150" MinWidth="150" FixedPosition="GridColumnFixedPosition.Left" />
|
|
<DxGridDataColumn FieldName="CarId" />
|
|
@*<DxGridDataColumn FieldName="CarId">
|
|
<EditSettings>
|
|
<DxComboBoxSettings Data="_cars" SearchMode="ListSearchMode.AutoSearch" Key
|
|
ValueFieldName="Id"
|
|
TextFieldName="LicencePlate" />
|
|
</EditSettings>
|
|
</DxGridDataColumn>*@
|
|
<DxGridDataColumn FieldName="Price" />
|
|
<DxGridDataColumn FieldName="Id" ShowInColumnChooser="AcDomain.IsDeveloperVersion" Visible="AcDomain.IsDeveloperVersion" DisplayFormat="N" />
|
|
@{
|
|
var userEmailFieldName = $"{nameof(TransferToDriver.UserProductMapping)}.{nameof(UserProductMapping.User)}.{nameof(User.EmailAddress)}";
|
|
}
|
|
<DxGridDataColumn FieldName="@userEmailFieldName" Caption="User email" SortIndex="0" ReadOnly="true" />
|
|
<DxGridDataColumn FieldName="LicencePlate" ReadOnly="true" />
|
|
</Columns>
|
|
</TransferToDriversDetailGrid>
|
|
|
|
@code {
|
|
[Parameter] public Guid? ContextId { get; set; }
|
|
[Parameter] public ITransferToDriversRelation ParentData { get; set; } = null!;
|
|
[Parameter] public EventCallback<TransferToDriver> OnTransferToDriverChanged { get; set; }
|
|
|
|
private TransferToDriversDetailGrid _transferToDriversGrid = null!;
|
|
private LoggerClient<TransferToDriverGridComponent> _logger = null!;
|
|
|
|
private List<Car> _cars = [];
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
_logger = new LoggerClient<TransferToDriverGridComponent>(LogWriters.ToArray());
|
|
|
|
_logger.Info($"DetailGridData: {ParentData.TransferToDrivers.Count}");
|
|
|
|
//_cars.AddRange((await AdminSignalRClient.GetAllAsync<List<Car>>(SignalRTags.GetAllCars))!);
|
|
|
|
await base.OnInitializedAsync();
|
|
}
|
|
|
|
protected override async Task OnAfterRenderAsync(bool firstRender)
|
|
{
|
|
if (firstRender)
|
|
{
|
|
// _transferToDriversGrid.BeginUpdate();
|
|
// _cars.AddRange((await AdminSignalRClient.GetAllAsync<List<Car>>(SignalRTags.GetAllCars))!);
|
|
// _transferToDriversGrid.EndUpdate();
|
|
|
|
// AdminSignalRClient.GetAllAsync<List<Car>>(SignalRTags.GetAllCars, response =>
|
|
// {
|
|
// if (response is { Status: SignalResponseStatus.Success, ResponseData: not null })
|
|
// _cars.AddRange(response.ResponseData);
|
|
|
|
// return Task.CompletedTask;
|
|
// }).Forget();
|
|
}
|
|
|
|
await base.OnAfterRenderAsync(firstRender);
|
|
}
|
|
|
|
private void DataItemChanged(GridDataItemChangedEventArgs<TransferToDriver> args)
|
|
{
|
|
OnTransferToDriverChanged.InvokeAsync(args.DataItem);
|
|
}
|
|
|
|
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 = ParentData.Id;
|
|
}
|
|
} |