TourIAm/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProduc...

154 lines
6.6 KiB
Plaintext

@using AyCode.Core.Helpers
@using TIAM.Entities.Products
@using TIAM.Entities.ServiceProviders
@using TIAM.Entities.Transfers
@using TIAM.Entities.Drivers
@using TIAM.Entities.Users
@using TIAM.Models.Dtos.Users
@using TIAM.Services
@using TIAMWebApp.Shared.Application.Interfaces
@using TIAMWebApp.Shared.Application.Services
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Services.Loggers
@using TIAM.Core.Loggers
@using AyCode.Core
@using AyCode.Core.Extensions
@using TIAMSharedUI.Shared.Components.Grids
@inject IServiceProviderDataService ServiceProviderDataService
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject AdminSignalRClient AdminSignalRClient;
<TransferDestinationToProductGrid Logger="_logger"
SignalRClient="AdminSignalRClient"
CustomizeEditModel="CustomizeEditModel"
OnGridEditModelSaving="OnGridEditModelSaving"
Context="TransferDestinationToProductContext"
PageSize="10"
ValidationEnabled="false"
EditMode="GridEditMode.EditRow"
ColumnResizeMode="GridColumnResizeMode.NextColumn">
<Columns>
<DxGridCommandColumn Width="135" MinWidth="135" FixedPosition="GridColumnFixedPosition.Left" />
<DxGridDataColumn FieldName="Id" ShowInColumnChooser="AcDomain.IsDeveloperVersion" Visible="AcDomain.IsDeveloperVersion" />
<DxGridDataColumn FieldName="ProductId" Caption="Service id">
<CellEditTemplate>
@{
var TransferDestinationToProductEditModel = (TransferDestinationToProduct)context.EditModel;
}
<DxComboBox Data="@_products" TextFieldName="Name" ValueFieldName="Id" @bind-Value="TransferDestinationToProductEditModel.ProductId" ReadOnly="@(!_isNewState!.Value)"
SearchFilterCondition="ListSearchFilterCondition.Contains" SearchMode="ListSearchMode.AutoSearch">
</DxComboBox>
</CellEditTemplate>
</DxGridDataColumn>
<DxGridDataColumn FieldName="TransferDestinationId">
<CellEditTemplate>
@{
var TransferDestinationToProductEditModel = (TransferDestinationToProduct)context.EditModel;
}
<DxComboBox Data="@_destinations" TextFieldName="Name" ValueFieldName="Id" @bind-Value="TransferDestinationToProductEditModel.TransferDestinationId" ReadOnly="@(!_isNewState!.Value)"
SearchFilterCondition="ListSearchFilterCondition.Contains" SearchMode="ListSearchMode.AutoSearch">
</DxComboBox>
</CellEditTemplate>
</DxGridDataColumn>
@*<DxGridDataColumn FieldName="TransferDestinationId" SortIndex="0" ShowInColumnChooser="AcDomain.IsDeveloperVersion" Visible="AcDomain.IsDeveloperVersion" DisplayFormat="N" />
@{
var destinationNameFieldName = $"{nameof(TransferDestinationToProduct.TransferDestination.Name)}.{nameof(TransferDestination.Name)}";
}
<DxGridDataColumn FieldName="@destinationNameFieldName" Caption="TransferDestination name" />*@
<DxGridDataColumn FieldName="Price" />
<DxGridDataColumn FieldName="Price2" />
<DxGridDataColumn FieldName="Price3" />
<DxGridDataColumn FieldName="ProductCommis" />
<DxGridDataColumn FieldName="Created" DisplayFormat="g" Width="140" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
<DxGridDataColumn FieldName="Modified" DisplayFormat="g" Width="140" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
</Columns>
<DetailRowTemplate>
<DxTabs>
<DxTabPage Text="Partner">
</DxTabPage>
</DxTabs>
</DetailRowTemplate>
@* <EditFormTemplate Context="editFormContext">
@{
var transferDestinationToProduct = (TransferDestinationToProduct)editFormContext.EditModel;
}
<DxFormLayout CssClass="w-100">
<DxFormLayoutItem Caption="Price" ColSpanMd="4">
@editFormContext.GetEditor("Price")
</DxFormLayoutItem>
<DxFormLayoutItem Caption="Price2" ColSpanMd="4">
@editFormContext.GetEditor("Price2")
</DxFormLayoutItem>
<DxFormLayoutItem Caption="Price3" ColSpanMd="4">
@editFormContext.GetEditor("Price3")
</DxFormLayoutItem>
<DxFormLayoutItem Context="FormLayoutContext" Caption="TransferDestination" ColSpanMd="4">
</DxFormLayoutItem>
<DxFormLayoutItem Caption="Commission rate" ColSpanMd="4">
@editFormContext.GetEditor("ProductCommis")
</DxFormLayoutItem>
</DxFormLayout>
</EditFormTemplate> *@
</TransferDestinationToProductGrid>
@code {
[Parameter] public GridDetailExpandButtonDisplayMode DetailExpandButtonDisplayMode { get; set; } = GridDetailExpandButtonDisplayMode.Never;
private LoggerClient<TransferDestinationToProductGridComponent> _logger = null!;
private bool? _isNewState = null;
private List<TransferDestination> _destinations = [];
private List<Product> _products = [];
protected override async Task OnInitializedAsync()
{
_logger = new LoggerClient<TransferDestinationToProductGridComponent>(LogWriters.ToArray());
AdminSignalRClient.GetTransferDestinationsAsync(_destinations).Forget();
AdminSignalRClient.GetAllIntoAsync(_products, SignalRTags.GetAllProducts).Forget();
await base.OnInitializedAsync();
}
void CustomizeEditModel(GridCustomizeEditModelEventArgs e)
{
_isNewState = e.IsNew;
if (!e.IsNew) return;
}
private void OnGridEditModelSaving(GridEditModelSavingEventArgs e)
{
_isNewState = false;
}
// async Task EditModelSaving(GridEditModelSavingEventArgs e)
// {
// if (e.IsNew)
// //add new orderData to orderData array
// _logger.Info("New orderData added");
// else
// _logger.Info("orderData updated");
// await UpdateDataAsync();
// }
// async Task DataItemDeleting(GridDataItemDeletingEventArgs e)
// {
// //remove orderData from orderData array
// _logger.Info("orderData deleted");
// //await UpdateDataAsync();
// }
// async Task UpdateDataAsync()
// {
// //refresh grid
// _logger.Info("orderData grid refreshed");
// }
}