@using Template.Shared.Core.Dto
@using Template.Shared.Core.Entity
@using Template.Shared.Core.Interface
@inject IManageDataService ManageData
@code {
[Parameter] public bool IsSheetVisible { get; set; }
[Parameter] public EventCallback IsSheetVisibleChanged { get; set; }
[Parameter] public ActivityDTO ActivityModel { get; set; }
[Parameter] public EventCallback ActivityModelChanged { get; set; }
private List ActivityResult { get; set; } = [];
private DateTime EffectiveDate { get; set; } = DateTime.Today;
private TimeSpan EffectiveTime { get; set; }
private TimeSpan EffectiveEndTime { get; set; }
protected override async Task OnParametersSetAsync()
{
if (IsSheetVisible)
await LoadData();
}
private async Task LoadData()
{
ActivityResult = await ManageData.GetTable();
EffectiveTime = ActivityModel.EffectiveTime?.TimeOfDay ?? TimeSpan.Zero;
EffectiveEndTime = ActivityModel.EffectiveEndtime?.TimeOfDay ?? TimeSpan.Zero;
StateHasChanged();
}
private void CloseBottomSheet()
{
ActivityModel.EffectiveTime = new DateTime(EffectiveDate.Year, EffectiveDate.Month, EffectiveDate.Day,
EffectiveTime.Hours, EffectiveTime.Minutes, EffectiveTime.Seconds);
ActivityModel.EffectiveEndtime = new DateTime(EffectiveDate.Year, EffectiveDate.Month, EffectiveDate.Day,
EffectiveEndTime.Hours, EffectiveEndTime.Minutes, EffectiveEndTime.Seconds);
IsSheetVisible = false;
IsSheetVisibleChanged.InvokeAsync(IsSheetVisible);
ActivityModelChanged.InvokeAsync(ActivityModel);
}
}