@using Front.Services @using Shared.DTOs @inject HttpClientController hc; @* alert *@
@if (order.Status != StatusOrder.Create) {
}


@context.Title @context.Type @context.CreditAmount @context.APrice.ToString("N0") @context.Discount.ToString("N0") @context.Tax.ToString("N0") @context.Total.ToString("N0")

@*
*@

@if (order.Status == StatusOrder.Create) { }
@code { #region Alert // alert AlertColor alertColor = AlertColor.Primary; IconName alertIconName = IconName.CheckCircleFill; bool Hidealert = true; string alertMessage = ""; #endregion private ConfirmDialog dialog = default!; public ActionInResultComponent result { get; set; } Grid grid = default!; [Inject] protected PreloadService PreloadService { get; set; } = default!; [Parameter] public EventCallback OnMultipleOfThree { get; set; } [Parameter] public OrderDto order { get; set; } List OrderItems = new List(); string titledateapp = "تاریخ"; protected override async Task OnParametersSetAsync() { if (order.Status == StatusOrder.Cancel) { titledateapp += " ابطال"; } else if (order.Status == StatusOrder.Cancel) { titledateapp += " پرداخت"; } await base.OnParametersSetAsync(); } } @functions { private async Task> DataProvider(GridDataProviderRequest request) { OrderItems = await LoadOrderItem(); // call a service or an API to pull the employees return await Task.FromResult(request.ApplyTo(OrderItems)); } 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> LoadOrderItem() { PreloadService.Show(SpinnerColor.Dark); var rsp = await hc.Get($"Orders/GetOrderDetails/{order.ID}"); PreloadService.Hide(); if (rsp.IsSuccessStatusCode) return await rsp.Content.ReadFromJsonAsync?>(); else { ShowDangerAlert("خطایی در بارگیری"); return new List(); } } private async Task OnClickPay() { // result.Status = ComponentStatus.success; // result.Action = ComponentAction.add; // await OnMultipleOfThree.InvokeAsync(result); } private async Task OnClickCancel() { var confirmation = await dialog.ShowAsync( title: "عملیات ابطال سفارش", message1: $"از ابطال سفارش {order.ID}", message2: "اطمینان دارید?"); if (confirmation) { PreloadService.Show(SpinnerColor.Dark); var rsp = await hc.Get($"Orders/CancelOrder/{order.ID}"); PreloadService.Hide(); if (rsp.IsSuccessStatusCode) { if(await rsp.Content.ReadFromJsonAsync()) { result.Status = ComponentStatus.success; result.Action = ComponentAction.delete; await OnMultipleOfThree.InvokeAsync(result); } else ShowDangerAlert("خطای سیستمی"); } else if (rsp.StatusCode==System.Net.HttpStatusCode.NotFound) ShowDangerAlert("سفارش یافت نشد"); else { var request = await rsp.Content.ReadFromJsonAsync>(); ShowDangerAlert(request[0]); } } } }