@page "/TaxPayerInvoiceItem/{InvoiceID:int}"
@using Front.Services
@using Shared.DTOs
@layout PanelLayout
@inject HttpClientController hc;
آماده سازی صورتحساب
@code {
private ConfirmDialog dialog = default!;
[Parameter] public int? InvoiceID { get; set; }
List messages = new List();
[Inject] protected PreloadService PreloadService { get; set; } = default!;
public InvoiceDTO? invoice { get; set; }
// alert
AlertColor alertColor = AlertColor.Primary;
IconName alertIconName = IconName.CheckCircleFill;
bool Hidealert = true;
string alertMessage = "";
protected override async Task OnInitializedAsync()
{
await LoadData();
await base.OnInitializedAsync();
}
}
@functions{
private void ShowSuccessAlert(string msg)
{
Hidealert = false;
alertColor = AlertColor.Success;
alertIconName = IconName.CheckCircleFill;
alertMessage = msg;
}
private void ShowDangerAlert(string msg)
{
Hidealert = false;
alertColor = AlertColor.Danger;
alertIconName = IconName.ExclamationTriangleFill;
alertMessage = msg;
}
private async Task LoadData()
{
PreloadService.Show(SpinnerColor.Dark);
var rsp = await hc.Get($"Invoice/Get/{InvoiceID}/{true}");
if (rsp.IsSuccessStatusCode)
{
invoice = await rsp.Content.ReadFromJsonAsync();
}
else
{
var request = await rsp.Content.ReadFromJsonAsync>();
ShowDangerAlert(request[0]);
}
PreloadService.Hide();
}
}