49017027d0
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 2m20s
- Blog management pages (posts, categories) - Content management pages (site pages, sections) - Contract management pages - Discount shop improvements (order details, product form, categories) - Wallet management pages - Commission withdrawal details/reject dialogs - Orders hub, sales reports - System hub, global search, breadcrumb - Club features page, club hub - UI/UX improvements across all pages - AppBreadcrumb, GlobalSearch components - NavMenu updates and styling
150 lines
5.9 KiB
Plaintext
150 lines
5.9 KiB
Plaintext
@using BackOffice.Services.DiscountOrder
|
|
|
|
<MudDialog>
|
|
<TitleContent>
|
|
<MudText Typo="Typo.h6">
|
|
<MudIcon Icon="@Icons.Material.Filled.Edit" Class="ml-2" />
|
|
تغییر وضعیت سفارش #@OrderId
|
|
</MudText>
|
|
</TitleContent>
|
|
<DialogContent>
|
|
<MudForm @ref="_form" @bind-IsValid="@_isValid">
|
|
<MudGrid>
|
|
<MudItem xs="12">
|
|
<MudAlert Severity="Severity.Info" Dense="true">
|
|
وضعیت فعلی: <strong>@GetStatusText(CurrentStatus)</strong>
|
|
</MudAlert>
|
|
</MudItem>
|
|
|
|
<MudItem xs="12">
|
|
<MudSelect @bind-Value="Model.Status"
|
|
Label="وضعیت جدید *"
|
|
Required="true"
|
|
Variant="Variant.Outlined">
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Pending">در انتظار پرداخت</MudSelectItem>
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Paid">پرداخت شده</MudSelectItem>
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Processing">در حال آمادهسازی</MudSelectItem>
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Shipped">ارسال شده</MudSelectItem>
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Delivered">تحویل داده شده</MudSelectItem>
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Cancelled">لغو شده</MudSelectItem>
|
|
<MudSelectItem T="OrderStatus" Value="@OrderStatus.Returned">مرجوع شده</MudSelectItem>
|
|
</MudSelect>
|
|
</MudItem>
|
|
|
|
<MudItem xs="12">
|
|
<MudTextField @bind-Value="Model.AdminNotes"
|
|
Label="یادداشت ادمین"
|
|
Lines="4"
|
|
Variant="Variant.Outlined"
|
|
HelperText="دلیل تغییر وضعیت یا توضیحات اضافی" />
|
|
</MudItem>
|
|
|
|
<MudItem xs="12">
|
|
<MudTextField @bind-Value="Model.TrackingCode"
|
|
Label="کد رهگیری مرسوله"
|
|
Variant="Variant.Outlined"
|
|
HelperText="در صورت ارسال، کد رهگیری را وارد کنید" />
|
|
</MudItem>
|
|
|
|
@if (Model.Status == OrderStatus.Cancelled || Model.Status == OrderStatus.Returned)
|
|
{
|
|
<MudItem xs="12">
|
|
<MudAlert Severity="Severity.Warning">
|
|
<MudText>توجه: در صورت لغو یا مرجوعی سفارش، موجودی محصولات به انبار بازگردانده میشود.</MudText>
|
|
</MudAlert>
|
|
</MudItem>
|
|
}
|
|
|
|
@if (Model.Status == OrderStatus.Shipped)
|
|
{
|
|
<MudItem xs="12">
|
|
<MudAlert Severity="Severity.Info">
|
|
<MudText>پس از تغییر وضعیت به "ارسال شده"، اطلاعرسانی به کاربر ارسال خواهد شد.</MudText>
|
|
</MudAlert>
|
|
</MudItem>
|
|
}
|
|
</MudGrid>
|
|
</MudForm>
|
|
</DialogContent>
|
|
<DialogActions>
|
|
<MudButton OnClick="Cancel" Variant="Variant.Text">انصراف</MudButton>
|
|
<MudButton OnClick="Submit"
|
|
Variant="Variant.Filled"
|
|
Color="@GetStatusColor(Model.Status)"
|
|
Disabled="@(!_isValid || _loading)">
|
|
@if (_loading)
|
|
{
|
|
<MudProgressCircular Size="Size.Small" Indeterminate="true" />
|
|
}
|
|
else
|
|
{
|
|
<text>تغییر وضعیت</text>
|
|
}
|
|
</MudButton>
|
|
</DialogActions>
|
|
</MudDialog>
|
|
|
|
@code {
|
|
[CascadingParameter] IMudDialogInstance MudDialog { get; set; } = null!;
|
|
[Parameter] public long OrderId { get; set; }
|
|
[Parameter] public OrderStatus CurrentStatus { get; set; }
|
|
|
|
private MudForm? _form;
|
|
private bool _isValid;
|
|
private bool _loading;
|
|
private UpdateOrderStatusDto Model = new();
|
|
|
|
protected override void OnInitialized()
|
|
{
|
|
Model.Status = CurrentStatus;
|
|
}
|
|
|
|
private async Task Submit()
|
|
{
|
|
if (_form != null)
|
|
{
|
|
await _form.Validate();
|
|
if (!_isValid) return;
|
|
}
|
|
|
|
_loading = true;
|
|
MudDialog.Close(DialogResult.Ok(Model));
|
|
_loading = false;
|
|
}
|
|
|
|
private void Cancel()
|
|
{
|
|
MudDialog.Cancel();
|
|
}
|
|
|
|
private Color GetStatusColor(OrderStatus status)
|
|
{
|
|
return status switch
|
|
{
|
|
OrderStatus.Pending => Color.Warning,
|
|
OrderStatus.Paid => Color.Info,
|
|
OrderStatus.Processing => Color.Primary,
|
|
OrderStatus.Shipped => Color.Secondary,
|
|
OrderStatus.Delivered => Color.Success,
|
|
OrderStatus.Cancelled => Color.Error,
|
|
OrderStatus.Returned => Color.Dark,
|
|
_ => Color.Default
|
|
};
|
|
}
|
|
|
|
private string GetStatusText(OrderStatus status)
|
|
{
|
|
return status switch
|
|
{
|
|
OrderStatus.Pending => "در انتظار پرداخت",
|
|
OrderStatus.Paid => "پرداخت شده",
|
|
OrderStatus.Processing => "در حال آمادهسازی",
|
|
OrderStatus.Shipped => "ارسال شده",
|
|
OrderStatus.Delivered => "تحویل داده شده",
|
|
OrderStatus.Cancelled => "لغو شده",
|
|
OrderStatus.Returned => "مرجوع شده",
|
|
_ => "نامشخص"
|
|
};
|
|
}
|
|
}
|