98 lines
3.5 KiB
Plaintext
98 lines
3.5 KiB
Plaintext
@using ComputerShopContracts.ViewModels;
|
|
|
|
@{
|
|
ViewData["Title"] = "OrderEditing";
|
|
}
|
|
<div class="text-center">
|
|
<h1 class="display-4"> Сборки в заказе:</h1>
|
|
</div>
|
|
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>
|
|
Название
|
|
</th>
|
|
<th>
|
|
Цена
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@if (ViewBag.Components == null)
|
|
{
|
|
<div class="text-center">
|
|
<h1 class="display-4">NULL</h1>
|
|
</div>
|
|
}
|
|
@if (ViewBag.Components != null && ViewBag.Components.Count > 0)
|
|
{
|
|
@foreach (var item in ViewBag.Components)
|
|
{
|
|
<tr>
|
|
<td>@(item.AssemblyName)</td>
|
|
<td>@(item.Price.ToString())</td>
|
|
</tr>
|
|
}
|
|
}
|
|
else
|
|
{
|
|
<div class="text-center">
|
|
<h1 class="display-4">Нет данных</h1>
|
|
</div>
|
|
}
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
<form method="post" asp-action="AddAssemblyToOrder">
|
|
<div class="u-form-group u-form-name u-label-top">
|
|
<label class="u-label u-text-custom-color-0 u-label-1">Добавить сборку: </label>
|
|
<div class="u-input u-input-rectangle">
|
|
<select id="assembly_id" name="component" class="form-control" asp-items="@(new SelectList(@ViewBag.Assemblies, "Id", "AssemblyName"))"></select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-4">Количество:</div>
|
|
<div class="col-8"><input type="text" name="amount" id="amount" /></div>
|
|
</div>
|
|
<div class="u-align-right u-form-group u-form-submit u-label-top">
|
|
<div class="col-8"></div>
|
|
<div class="col-4"><input type="submit" value="Добавить заказ" class="u-active-custom-color-6 u-border-none u-btn u-btn-submit u-button-style u-custom-color-1 u-hover-custom-color-2 u-btn-1" /></div>
|
|
</div
|
|
|
|
<input type="number" name="cost" id="sum" visible="false" />
|
|
|
|
<input type="number" name="order" id="order" visible="false" value="@ViewBag.Order" />
|
|
</form>
|
|
|
|
|
|
<script>
|
|
$('#assembly_id').on('change', function () {
|
|
check();
|
|
});
|
|
$('#amount').on('input', function () { // Изменено на 'input' для реального времени
|
|
check();
|
|
});
|
|
|
|
function check() {
|
|
var count = $('#amount').val();
|
|
var package = $('#assembly_id').val();
|
|
if (count && package) {
|
|
$.ajax({
|
|
method: "POST",
|
|
url: "/Home/Calc",
|
|
data: { count: count, package: package },
|
|
success: function (result) {
|
|
$("#sum").val(result); // Устанавливаем значение суммы в поле
|
|
},
|
|
error: function (xhr, status, error) {
|
|
console.error("Ошибка при расчете суммы:", error);
|
|
}
|
|
});
|
|
} else {
|
|
$("#sum").val(''); // Очищаем поле суммы, если данные отсутствуют
|
|
}
|
|
}
|
|
</script> |