This commit is contained in:
Adam 2024-05-26 15:06:34 +02:00
parent a0bb412018
commit be9e0d17cd
2 changed files with 60 additions and 136 deletions

View File

@ -104,7 +104,7 @@
@code {
IGrid Grid { get; set; }
TiamServiceProvider[]? ServiceProviderData { get; set; }
Company[]? ServiceProviderData { get; set; }
public ServiceProviderWizardModel myModel = new ServiceProviderWizardModel();

View File

@ -63,97 +63,60 @@
<div class=" col-12">
<Animation Effect="@Effect.Pulse" Class="glass" Speed="@Speed.Fast" Delay="@TimeSpan.FromMilliseconds(250)">
<div class="card">
<DxGrid @ref="Grid2"
Data="ServiceProviderDataList"
AutoCollapseDetailRow="AutoCollapseDetailRow"
KeyboardNavigationEnabled="true"
CustomizeElement="Grid_CustomizeElement"
CustomizeEditModel="Grid_CustomizeEditModel"
EditModelSaving="Grid_EditModelSaving"
DataItemDeleting="Grid_DataItemDeleting"
EditMode="GridEditMode.EditForm"
ColumnResizeMode="GridColumnResizeMode.NextColumn"
ShowFilterRow="true"
KeyFieldName="Id">
<DxTabs>
<Columns>
<DxGridCommandColumn NewButtonVisible="false" Width="8%" FixedPosition="GridColumnFixedPosition.Left" />
<DxGridDataColumn FieldName="Id" ShowInColumnChooser="false" SortIndex="0" Visible="false" />
<DxGridDataColumn FieldName="Name" />
<DxGridDataColumn FieldName="OwnerId" />
<DxGridDataColumn FieldName="AffiliateId" />
<DxGridDataColumn FieldName="CommissionPercent" />
<DxGridDataColumn FieldName="Created" />
@* <DxGridDataColumn FieldName="ContactEmail">
<CellDisplayTemplate>
@{
var keyField = context.Value;
<DxTabPage Text="DataGrid">
<div class="d-flex flex-column mb-4 pb-2">
<div class="align-self-end pl-2 pb-2">
<DxButton Text="Column Chooser"
RenderStyle="ButtonRenderStyle.Secondary"
IconCssClass="btn-column-chooser"
Click="ColumnChooserButton_Click" />
</div>
var keyItem = (TiamServiceProvider)context.DataItem;
string buttonText = "Contact";
<DxButton Click="() => SendMail(keyItem.)" Text="@buttonText" RenderStyle="ButtonRenderStyle.Primary" />
}
</CellDisplayTemplate>
</DxGridDataColumn> *@
<DxGridDataColumn FieldName="PassengerCount" />
<DxGrid @ref="Grid2"
Data="ServiceProviderDataList"
AutoCollapseDetailRow="AutoCollapseDetailRow"
KeyboardNavigationEnabled="true"
CustomizeElement="Grid_CustomizeElement"
CustomizeEditModel="Grid_CustomizeEditModel"
EditModelSaving="Grid_EditModelSaving"
DataItemDeleting="Grid_DataItemDeleting"
EditMode="GridEditMode.EditForm"
ColumnResizeMode="GridColumnResizeMode.NextColumn"
ShowFilterRow="true"
KeyFieldName="Id">
<Columns>
<DxGridCommandColumn NewButtonVisible="false" Width="8%" FixedPosition="GridColumnFixedPosition.Left" />
<DxGridDataColumn FieldName="Id" ShowInColumnChooser="false" SortIndex="0" Visible="false" />
<DxGridDataColumn FieldName="Name" />
<DxGridDataColumn FieldName="OwnerId" />
<DxGridDataColumn FieldName="AffiliateId" />
<DxGridDataColumn FieldName="CommissionPercent" />
<DxGridDataColumn FieldName="Created" />
@* <DxGridDataColumn FieldName="ContactEmail">
<CellDisplayTemplate>
@{
var keyField = context.Value;
var keyItem = (TiamServiceProvider)context.DataItem;
string buttonText = "Contact";
<DxButton Click="() => SendMail(keyItem.)" Text="@buttonText" RenderStyle="ButtonRenderStyle.Primary" />
}
</CellDisplayTemplate>
</DxGridDataColumn> *@
<DxGridDataColumn FieldName="PassengerCount" />
</Columns>
<DetailRowTemplate>
<Grid_MasterDetail_NestedGrid_DetailContent Customer="(TIAM.Entities.Transfers.Transfer)context.DataItem" KeyboardNavigationEnabled="true" />
</DetailRowTemplate>
<EditFormTemplate Context="EditFormContext">
@{
var transfer2 = (Transfer)EditFormContext.EditModel;
}
<DxFormLayout CssClass="w-100">
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.LastName) ColSpanMd="6" ColSpanLg="6" ColSpanSm="12">
@EditFormContext.GetEditor("Name")
</DxFormLayoutItem>
</DxFormLayout>
</EditFormTemplate>
</Columns>
<DetailRowTemplate>
<Grid_MasterDetail_NestedGrid_DetailContent Customer="(TIAM.Entities.Transfers.Transfer)context.DataItem" KeyboardNavigationEnabled="true" />
</DetailRowTemplate>
<EditFormTemplate Context="EditFormContext">
@{
var transfer2 = (Transfer)EditFormContext.EditModel;
}
<DxFormLayout CssClass="w-100">
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.LastName) ColSpanMd="6" ColSpanLg="6" ColSpanSm="12">
@EditFormContext.GetEditor("Name")
</DxFormLayoutItem>
</DxGrid>
</div>
</DxTabPage>
<DxTabPage Text="Calendar">
<div class="d-flex flex-column mb-4 pb-2">
<DxScheduler @bind-StartDate="@StartDate"
DataStorage="@_dataStorage"
CssClass="w-100">
<DxSchedulerTimelineView Duration="@TimeSpan.FromHours(48)" CellMinWidth="80">
<Scales>
<DxSchedulerTimeScale Unit="@SchedulerTimeScaleUnit.Day" UnitCount="1"></DxSchedulerTimeScale>
<DxSchedulerTimeScale Unit="@SchedulerTimeScaleUnit.Hour" UnitCount="2"></DxSchedulerTimeScale>
</Scales>
</DxSchedulerTimelineView>
<DxSchedulerWeekView ShowWorkTimeOnly="false"></DxSchedulerWeekView>
<DxSchedulerDayView DayCount="1" ShowWorkTimeOnly="false"></DxSchedulerDayView>
</DxScheduler>
</div>
</DxTabPage>
</DxTabs>
</DxFormLayout>
</EditFormTemplate>
</DxGrid>
</div>
@ -172,7 +135,7 @@
//public Transfer myModel = new Transfer();
public List<TiamServiceProvider> ServiceProviderDataList { get; set; }
public Dictionary<Guid, string> ServiceProviderDataList { get; set; }
bool PopupVisible { get; set; }
public List<string> IgnoreList =
@ -207,7 +170,7 @@
DxSchedulerDataStorage _dataStorage = new();
void SendMail(TiamServiceProvider item)
void SendMail(Company item)
{
_logger.Info($"Sending mail to {item.OwnerId}, {item.Id}");
_messageWizardModel.ReceiverId = Guid.Parse("");
@ -314,9 +277,9 @@
}
else
{
_logger.Info("orderData updated at id " + ((TiamServiceProvider)e.EditModel).Id);
_logger.Info("orderData updated at id " + ((Company)e.EditModel).Id);
success = await serviceProviderDataService.UpdateServiceProviderAsync((TiamServiceProvider)e.EditModel);
success = await serviceProviderDataService.UpdateServiceProviderAsync((Company)e.EditModel);
}
//get transfer from TransferData by Id
@ -348,7 +311,7 @@
async Task UpdateDataAsync()
{
ServiceProviderDataList = await serviceProviderDataService.GetServiceProvidersByOwnerIdAsync();
ServiceProviderDataList = await serviceProviderDataService.GetPropertiesByOwnerIdAsync(sessionService.User.UserId);
_logger.Info("orderData grid refreshed");
}
@ -356,58 +319,19 @@
{
_logger = new LoggerClient<ManageServiceProviders>(LogWriters.ToArray());
devAdminSignalClient.OnMessageReceived += (messageTag, message) =>
{
if (messageTag == SignalRTags.PostTransfersAsync)
{
var json = message?.MessagePackTo<string>(ContractlessStandardResolver.Options);
// devAdminSignalClient.SendRequestToServerAsync(SignalRTags.GetTransfersAsync, responseBytes =>
// {
// var transfers = responseBytes.MessagePackTo<string>(ContractlessStandardResolver.Options).JsonTo<List<Transfer>>();
InitializeDataSources(json?.JsonTo<List<Transfer>>() ?? []);
StateHasChanged();
}
};
await devAdminSignalClient.Send("", SignalRTags.GetTransfersAsync, null);
//InitializeDataSources(await transferDataService.GetTransfersAsync());
// ServiceProviderDataList = transfers;
// StateHasChanged();
// }).Forget();
base.OnInitialized();
}
private void InitializeDataSources(List<Transfer> transferDataList)
{
TransferDataList = transferDataList;
AppointmentModels = new List<AppointmentModel>(TransferDataList.Count);
foreach (var transfer in TransferDataList)
{
// var bnm = DataStorage.CreateAppointmentItem();
// bnm.Start = transfer.Appointment;
// bnm.Description = $"{transfer.FullName}, {transfer.ToAddress}";
// bnm.Location = transfer.FromAddress;
// bnm.Subject = "Simple transfer";
AppointmentModels.Add(new AppointmentModel { StartDate = transfer.Appointment, EndDate=transfer.Appointment.AddMinutes(30), Description = $"{transfer.FullName}, {transfer.ToAddress}", Location = transfer.FromAddress, Caption = "Simple transfer" });
}
_dataStorage = new DxSchedulerDataStorage
{
AppointmentMappings = new DxSchedulerAppointmentMappings()
{
Type = "AppointmentType",
Start = "StartDate",
End = "EndDate",
Subject = "Caption",
AllDay = "AllDay",
Location = "Location",
Description = "Description",
LabelId = "Label",
StatusId = "Status",
RecurrenceInfo = "Recurrence"
},
AppointmentsSource = AppointmentModels
};
}
void ColumnChooserButton_Click()
{