@using Groceries.Data
@using Microsoft.EntityFrameworkCore
@inject AppDbContext DbContext
@code {
[Parameter]
public required Transaction Transaction { get; set; }
[Parameter]
public TransactionPromotion? Promotion { get; set; }
[Parameter]
public RenderFragment? ChildContent { get; set; }
[Parameter(CaptureUnmatchedValues = true)]
public Dictionary? AdditionalAttributes { get; set; }
private Guid[] selectedItemIds = [];
private Dictionary itemNames = new();
protected override async Task OnParametersSetAsync()
{
selectedItemIds = Promotion?.Items.Select(item => item.Id).ToArray() ?? [];
var itemIds = Transaction.Items.Select(item => item.ItemId);
itemNames = await DbContext.Items
.Where(item => itemIds.Contains(item.Id))
.ToDictionaryAsync(item => item.Id, item => string.Concat(item.Brand, " ", item.Name));
}
}