@using Front.Services @using Shared.DTOs @using Shared @inject HttpClientController hc; @layout PanelLayout @inject Fixedvalues fv; @page "/InvoiceDetails/{InvoiceID:int}" @page "/InvoiceDetails"
@* alert *@


@*
*@



@if (invoice.ID == 0) { } else { }
@code { private Modal modal = default!; [Inject] protected PreloadService PreloadService { get; set; } = default!; // alert AlertColor alertColor = AlertColor.Primary; IconName alertIconName = IconName.CheckCircleFill; bool Hidealert = true; string alertMessage = ""; [Parameter] public int? InvoiceID { get; set; } public List? Cus { get; set; } public List>? Patterns { get; set; } public InvoiceDTO? invoice { get; set; } protected override async Task OnInitializedAsync() { invoice = new InvoiceDTO(); await base.OnInitializedAsync(); } protected override async Task OnParametersSetAsync() { PreloadService.Show(SpinnerColor.Dark); Cus = await fv.GetCustomers(); Patterns = await fv.GetPatterns(); if (InvoiceID != null && InvoiceID > 0) { await LoadData(); } else { invoice = new InvoiceDTO() { ID = 0, InvoiceDate = DateTime.Now.ConvertMiladiToShamsiinFront().ShamciToFormatShamciinFront(), InvoicIssueDate = DateTime.Now.ConvertMiladiToShamsiinFront().ShamciToFormatShamciinFront(), Udate = DateTime.Now.ConvertMiladiToShamsiinFront().ShamciToFormatShamciinFront() }; } Hidealert = true; alertMessage = ""; PreloadService.Hide(); await base.OnParametersSetAsync(); } } @functions { private async Task NewItemClick() { var parameters = new Dictionary(); parameters.Add("itemDTO", new InvoiceItemDTO()); parameters.Add("OnMultipleOfThree", EventCallback.Factory.Create(this, CallBack)); await modal.ShowAsync(title: "آیتم جدید", parameters: parameters); } private async Task LoadData() { var rsp = await hc.Get($"Invoice/Get/{InvoiceID}"); if (rsp.IsSuccessStatusCode) { invoice = await rsp.Content.ReadFromJsonAsync(); } else hc._nav.NavigateTo("/Panel"); } public async Task CallBack(ActionInResultComponent result) { string msg = ""; if (result.Action == ComponentAction.add) { if (result.Status == ComponentStatus.success) msg = "آیتم جدید با موفقیت اضافه شد"; } // else if (result.Action == ComponentAction.update) // { // if (result.Status == ComponentStatus.success) // msg = "اطلاعات آیتم با موفقیت ویرایش شد"; // } // else if (result.Action == ComponentAction.delete) // { // if (result.Status == ComponentStatus.success) // msg = "آیتم با موفقیت حذف شد"; // } await CallBack(msg); // if (result.Status == ComponentStatus.success) // await LoadCod(1); await modal.HideAsync(); } private async Task CallBack(string result) { if (!string.IsNullOrEmpty(result)) { ShowSuccessAlert(result); await LoadData(); } } 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; } public async Task OnClickDelete() { // var rsp = await hc.Delete($"Cod/Delete/{invoice.ID}"); // if (rsp.IsSuccessStatusCode) // { // var request = await rsp.Content.ReadFromJsonAsync(); // if (request) // { // result.Status = ComponentStatus.success; // result.Action = ComponentAction.delete; // //await OnMultipleOfThree.InvokeAsync(result); // } // else ShowDangerAlert("خطایی در اجرای عملیات رخ داده"); // } // else if (rsp.StatusCode == System.Net.HttpStatusCode.NotFound) // { // ShowDangerAlert("کالا با این شناسه یافت نشد"); // } // else ShowDangerAlert("خطایی در اجرای عملیات رخ داده"); } public async Task OnClickUpdate() { // if (Cod.UnitID > 0 && Cod.TaxRate > 0 && !string.IsNullOrEmpty(Cod.Title)) // { // var rsp = await hc.Put("Cod/Update", Cod); // if (rsp.IsSuccessStatusCode) // { // var request = await rsp.Content.ReadFromJsonAsync(); // if (request) // { // result.Status = ComponentStatus.success; // result.Action = ComponentAction.update; // await OnMultipleOfThree.InvokeAsync(result); // } // else ShowDangerAlert("خطایی در اجرای عملیات رخ داده"); // } // else // { // var request = await rsp.Content.ReadFromJsonAsync>(); // ShowDangerAlert(request[0]); // } // } // else ShowDangerAlert("فیلدهای قرمز باید مقدار دهی شوند"); } public async Task OnClickAdd() { // if (Cod.UnitID > 0 && Cod.TaxRate > 0 && !string.IsNullOrEmpty(Cod.Title)) // { // var rsp = await hc.Post("Cod/Add", Cod); // if (rsp.IsSuccessStatusCode) // { // var request = await rsp.Content.ReadFromJsonAsync(); // if (request) // { // result.Status = ComponentStatus.success; // result.Action = ComponentAction.add; // await OnMultipleOfThree.InvokeAsync(result); // } // else ShowDangerAlert("خطایی در اجرای عملیات رخ داده"); // } // else // { // var request = await rsp.Content.ReadFromJsonAsync>(); // ShowDangerAlert(request[0]); // } // } // else ShowDangerAlert("فیلدهای قرمز باید مقدار دهی شوند"); } public async Task Validate() { return false; } }