| | | 1 | | @using OzonDomains.Models |
| | | 2 | | |
| | | 3 | | @model AppStatus |
| | | 4 | | |
| | | 5 | | @{ |
| | 0 | 6 | | ViewData["Title"] = "Создание статуса"; |
| | 0 | 7 | | Layout = "~/Views/Shared/_Layout.cshtml"; |
| | | 8 | | |
| | 0 | 9 | | var statusResult = ViewData["StatusResult"] as string ?? string.Empty; |
| | | 10 | | } |
| | | 11 | | |
| | | 12 | | <link rel="stylesheet" href="~/css/Studio2/AppStatus/app-status-form.css" asp-append-version="true"/> |
| | | 13 | | |
| | 0 | 14 | | @await Html.PartialAsync("_BsxGridShell") |
| | | 15 | | |
| | | 16 | | <div class="container as-form-page py-3 bsx-surface"> |
| | | 17 | | <div class="back-link-row"> |
| | | 18 | | <a asp-action="Index" class="text-primary text-decoration-none small"> |
| | | 19 | | <i class="fas fa-arrow-left me-1"></i>К списку статусов |
| | | 20 | | </a> |
| | | 21 | | </div> |
| | | 22 | | |
| | | 23 | | <div class="card"> |
| | | 24 | | <div class="card-header"> |
| | | 25 | | <h2 class="mb-0 fs-4">Новый статус заказа</h2> |
| | | 26 | | </div> |
| | | 27 | | |
| | | 28 | | <div class="card-body"> |
| | 0 | 29 | | @if (!string.IsNullOrWhiteSpace(statusResult)) |
| | | 30 | | { |
| | | 31 | | <div class="alert alert-warning alert-dismissible fade show" role="alert"> |
| | 0 | 32 | | <i class="fas fa-exclamation-triangle me-2"></i>@statusResult |
| | | 33 | | <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> |
| | | 34 | | </div> |
| | | 35 | | } |
| | | 36 | | |
| | | 37 | | <div class="as-intro"> |
| | | 38 | | <i class="fas fa-circle-info"></i> |
| | | 39 | | <div class="as-intro-text"> |
| | | 40 | | Новый статус появится в карточке заказа, фильтрах и в настройке переходов на странице |
| | | 41 | | <a asp-area="Studio2" asp-controller="StatusTransition" asp-action="Index">«Переходы статусов»</a>. |
| | | 42 | | Для завершённых этапов жизненного цикла отмечайте статус как конечный. |
| | | 43 | | </div> |
| | | 44 | | </div> |
| | | 45 | | |
| | | 46 | | <form asp-area="Studio2" asp-controller="AppStatus" asp-action="Create" method="post"> |
| | | 47 | | <div asp-validation-summary="ModelOnly" class="alert alert-danger"></div> |
| | | 48 | | |
| | | 49 | | <div class="row g-3"> |
| | | 50 | | <div class="section-title">Параметры статуса</div> |
| | | 51 | | |
| | | 52 | | <div class="col-12"> |
| | | 53 | | <label asp-for="Name" class="form-label">Название статуса<span class="required-mark">*</span></l |
| | | 54 | | <input asp-for="Name" class="form-control" placeholder="Например: В обработке, Отгружен клиенту" |
| | | 55 | | <span asp-validation-for="Name" class="text-danger small"></span> |
| | | 56 | | <div class="field-hint">Текст статуса, который будет отображаться в заказах, отчётах и фильтрах. |
| | | 57 | | </div> |
| | | 58 | | |
| | | 59 | | <div class="col-12"> |
| | | 60 | | <div class="form-check"> |
| | | 61 | | <input asp-for="IsFinal" class="form-check-input"/> |
| | | 62 | | <label asp-for="IsFinal" class="form-check-label">Конечный статус</label> |
| | | 63 | | </div> |
| | | 64 | | <div class="field-hint ms-4"> |
| | | 65 | | Для конечного статуса стандартные операции по заказу больше не предлагаются. |
| | | 66 | | Подходит для состояний вроде «Отменён», «Отгружен клиенту», «Возврат покупателя». |
| | | 67 | | </div> |
| | | 68 | | </div> |
| | | 69 | | </div> |
| | | 70 | | |
| | | 71 | | <div class="mt-4 d-flex gap-2"> |
| | | 72 | | <button type="submit" class="btn btn-primary"> |
| | | 73 | | <i class="fas fa-plus me-1"></i>Создать |
| | | 74 | | </button> |
| | | 75 | | <a asp-area="Studio2" asp-controller="AppStatus" asp-action="Index" class="btn btn-outline-secondary |
| | | 76 | | Отмена |
| | | 77 | | </a> |
| | | 78 | | </div> |
| | | 79 | | </form> |
| | | 80 | | </div> |
| | | 81 | | </div> |
| | | 82 | | </div> |
| | | 83 | | |
| | | 84 | | @section Scripts { |
| | | 85 | | <partial name="_ValidationScriptsPartial"/> |
| | | 86 | | } |