173 lines
7.3 KiB
Plaintext
173 lines
7.3 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 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 TIAM.Services
|
|
@using TIAMSharedUI.Shared.Components.Grids
|
|
@inject IServiceProviderDataService ServiceProviderDataService
|
|
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
|
|
@inject AdminSignalRClient AdminSignalRClient;
|
|
|
|
<TransferDestinationToProductDetailGrid Logger="_logger"
|
|
SignalRClient="AdminSignalRClient"
|
|
CustomizeEditModel="CustomizeEditModel"
|
|
OnGridEditModelSaving="OnGridEditModelSaving"
|
|
EditCanceling="EditCanceling"
|
|
ContextIds="ContextIds?.Cast<object>().ToArray()"
|
|
GetAllMessageTag="GetAllTag"
|
|
PageSize="10"
|
|
ValidationEnabled="false"
|
|
EditMode="GridEditMode.EditRow"
|
|
DetailExpandButtonDisplayMode="DetailExpandButtonDisplayMode"
|
|
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="ServiceId">
|
|
<CellEditTemplate>
|
|
@{
|
|
var transferDestinationToProductEditModel = (TransferDestinationToProduct)context.EditModel;
|
|
}
|
|
|
|
<DxComboBox Data="@_products" TextFieldName="Name" ValueFieldName="Id" @bind-Value="transferDestinationToProductEditModel.ProductId" ReadOnly="@_productIdReadOnly"
|
|
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="@_destinationIdReadOnly"
|
|
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">
|
|
<ProductDetailGridComponent DetailExpandButtonDisplayMode="GridDetailExpandButtonDisplayMode.Never" GetAllTag="SignalRTags.GetProductsById" ContextId="((TransferDestinationToProduct)context.DataItem).ProductId" ParentData="(Company)context.DataItem" />
|
|
</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 Caption="Commission rate" ColSpanMd="4">
|
|
@editFormContext.GetEditor("ProductCommis")
|
|
</DxFormLayoutItem>
|
|
|
|
|
|
|
|
</DxFormLayout>
|
|
</EditFormTemplate> *@
|
|
|
|
</TransferDestinationToProductDetailGrid>
|
|
|
|
@code {
|
|
[Parameter] public GridDetailExpandButtonDisplayMode DetailExpandButtonDisplayMode { get; set; } = GridDetailExpandButtonDisplayMode.Never;
|
|
[Parameter] public Guid[]? ContextIds { get; set; } = null!;
|
|
[Parameter] public int GetAllTag { get; set; } = SignalRTags.GetAllTransferDestinationToProducts;
|
|
[Parameter] public bool IsProductIdReadonly { get; set; } = false;
|
|
[Parameter] public bool IsDestinationIdReadonly { get; set; } = false;
|
|
|
|
private bool _productIdReadOnly = false;
|
|
private bool _destinationIdReadOnly = false;
|
|
|
|
//private bool? _isNewState = null;
|
|
private List<TransferDestination> _destinations = [];
|
|
private List<Product> _products = [];
|
|
|
|
private LoggerClient<TransferDestinationToProductGridComponent> _logger = null!;
|
|
|
|
protected override void OnInitialized()
|
|
{
|
|
_logger = new LoggerClient<TransferDestinationToProductGridComponent>(LogWriters.ToArray());
|
|
|
|
AdminSignalRClient.GetTransferDestinationsInto(_destinations).Forget();
|
|
AdminSignalRClient.GetAllIntoAsync(_products, SignalRTags.GetAllProducts).Forget();
|
|
|
|
base.OnInitialized();
|
|
}
|
|
|
|
void CustomizeEditModel(GridCustomizeEditModelEventArgs e)
|
|
{
|
|
if (!e.IsNew)
|
|
{
|
|
_destinationIdReadOnly = true;
|
|
|
|
_productIdReadOnly = true;
|
|
|
|
}
|
|
else
|
|
{
|
|
if(IsDestinationIdReadonly)
|
|
{
|
|
((TransferDestinationToProduct)(e.EditModel)).TransferDestinationId = (Guid)ContextIds[0];
|
|
}
|
|
_destinationIdReadOnly = IsDestinationIdReadonly;
|
|
if (IsProductIdReadonly)
|
|
{
|
|
((TransferDestinationToProduct)(e.EditModel)).ProductId = (Guid)ContextIds[0];
|
|
}
|
|
_productIdReadOnly = IsProductIdReadonly;
|
|
}
|
|
|
|
if (!e.IsNew) return;
|
|
|
|
}
|
|
|
|
private void OnGridEditModelSaving(GridEditModelSavingEventArgs e)
|
|
{
|
|
_destinationIdReadOnly = false;
|
|
_productIdReadOnly = false;
|
|
}
|
|
|
|
private void EditCanceling(GridEditCancelingEventArgs e)
|
|
{
|
|
_destinationIdReadOnly = false;
|
|
_productIdReadOnly = false;
|
|
}
|
|
|
|
|
|
} |