VirtualTask/Views/Rapportini/Index.cshtml

279 lines
12 KiB
Plaintext

@model IPagedList<VirtualTask.Models.Rapportini>
@using X.PagedList
@using X.PagedList.Mvc.Core
@using X.PagedList.Web.Common
<link href="~/Content/PagedList.css" rel="stylesheet" type="text/css" />
@{
ViewData["Title"] = "Esporta buoni su Excel";
Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml";
}
<div class="agy-project-wrapper agy-project-page-wrapper">
<div class="container">
<div class="row">
<!-- 🔍 FORM DI RICERCA -->
@using (Html.BeginForm("Index", "Rapportini", FormMethod.Get))
{
<div class="card mb-4">
<h5 class="card-header">Ricerca</h5>
<div class="card-body">
<div class="row g-3 align-items-end">
<div class="col-md-4">
<label class="form-label fw-bold">Impianto</label>
@Html.DropDownList(
"impianto",
ViewBag.Impianti as SelectList,
"- Impianto",
new { @class = "form-select" }
)
</div>
<div class="col-md-3">
<label class="form-label fw-bold">Data da</label>
<input type="date" name="dataIni" class="form-control"
value="@(ViewData["dataIni"] as string ?? "")" />
</div>
<div class="col-md-3">
<label class="form-label fw-bold">Data a</label>
<input type="date" name="dataFin" class="form-control"
value="@(ViewData["dataFin"] as string ?? "")" />
</div>
<div class="col-md-2 text-end">
@* <button type="submit" class="btn btn-primary mt-3 w-100">Cerca</button> *@
<span class="fw-medium"><input type="submit" value="Cerca" class="agy-btn submitForm" /></span>
</div>
</div>
</div>
</div>
}
<!-- 🧾 FORM DI ESPORTAZIONE -->
@using (Html.BeginForm("ExportDataToExcel", "Rapportini", FormMethod.Post))
{
<div class="card mb-4">
<h5 class="card-header">Estrai</h5>
<div class="card-body text-end">
@Html.Hidden("impianto", ViewData["impianto"])
@Html.Hidden("dataIni", ViewData["dataIni"])
@Html.Hidden("dataFin", ViewData["dataFin"])
@* <button type="submit" class="btn btn-success">Esporta Excel</button> *@
@* <span class="fw-medium"><input type="submit" value="Esporta excel"
name="Esporta excel" class="agy-btn submitForm" /></span> *@
<span class="fw-medium">
<input type="submit" value="Esporta excel" name="Esporta excel" class="agy-btn success" />
</span>
</div>
</div>
}
<!-- 📋 TABELLA RISULTATI -->
<div class="card">
<div class="table-responsive text-nowrap">
<table class="table table-striped align-middle">
<thead class="table-light">
<tr>
<th>Codice Buono</th>
<th>Data buono</th>
<th>Cliente</th>
<th>Codice impianto</th>
</tr>
</thead>
<tbody>
@if (Model != null && Model.Any())
{
foreach (var item in Model)
{
<tr>
<td>@item.ser_buono</td>
<td>@item.data_rapportino?.ToString("dd/MM/yyyy")</td>
<td>@item.ancodice - @item.andescri</td>
<td>@item.codice_impianto</td>
</tr>
}
}
else
{
<tr>
<td colspan="4" class="text-center text-muted">Nessun risultato trovato.</td>
</tr>
}
</tbody>
</table>
</div>
</div>
<!-- 🔢 PAGINAZIONE -->
<nav class="mt-3">
@Html.PagedListPager(Model, page => Url.Action("Index", new
{
page,
impianto = ViewData["impianto"],
dataIni = ViewData["dataIni"],
dataFin = ViewData["dataFin"]
}),
new PagedListRenderOptions
{
ActiveLiElementClass = "active",
PageClasses = new[] { "page-link" },
LiElementClasses = new[] { "page-item" },
UlElementClasses = new[] { "pagination", "justify-content-center" },
LinkToNextPageFormat = "Successiva",
LinkToPreviousPageFormat = "Precedente",
MaximumPageNumbersToDisplay = 5,
DisplayLinkToPreviousPage = PagedListDisplayMode.Always,
DisplayLinkToNextPage = PagedListDisplayMode.Always
})
</nav>
</div>
</div>
</div>
@* @model IPagedList<VirtualTask.Models.Rapportini>
@using X.PagedList;
@using X.PagedList.Mvc.Core;
@using X.PagedList.Web.Common;
<link href="~/Content/PagedList.css" rel="stylesheet" type="text/css" />
@{
ViewData["Title"] = "Esporta buoni su Excel";
Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml";
}
<div class="agy-project-wrapper agy-project-page-wrapper">
<div class="container">
<div class="row">
@using (Html.BeginForm("Index", "Rapportini"))
{
<div class="card">
<h5 class="card-header">Ricerca</h5>
<div class="table-responsive text-nowrap">
<table class="table">
<tbody class="table-border-bottom-0">
<tr>
<td>
<i class="bx bxl-angular bx-sm text-black me-3">Impianto:</i>
<span class="fw-medium">@Html.DropDownList("impianto", ViewBag.Rapportini, null, new { @class = "agy-form-field require" })</span>
</td>
<td>
<i class="bx bxl-angular bx-sm text-black me-3">Data da:</i>
<span class="fw-medium">@Html.TextBox("dataIni", null, new { type = "date", @class = "agy-form-field require" })</span>
</td>
<td>
<i class="bx bxl-angular bx-sm text-black me-3">Data a:</i>
<span class="fw-medium">@Html.TextBox("dataFin", null, new { type = "date", @class = "agy-form-field require" })</span>
</td>
<td>
<i class="bx bxl-angular bx-sm text-black me-3">&nbsp;</i>
<span class="fw-medium"><input type="submit" value="Cerca" class="agy-btn submitForm" /></span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
}
<div style="width:100%;height:30px;">
&nbsp;
</div>
@using (Html.BeginForm("ExportDataToExcel", "Rapportini"))
{
<div class="card">
<h5 class="card-header">Estrai</h5>
<div class="table-responsive text-nowrap">
<table class="table">
<tbody class="table-border-bottom-0">
<tr>
<td>
@Html.Hidden("dataIni", ViewBag.Rapportini, null)
@Html.Hidden("dataFin", ViewBag.Rapportini, null)
@Html.Hidden("impianto", ViewBag.Rapportini, null)
</td>
<td>
<span class="fw-medium"><input type="submit" value="Esporta excel" name="Esporta excel" class="agy-btn submitForm" /></span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
}
<div style="width:100%;height:30px;">
&nbsp;
</div>
<div class="card">
<h5 class="card-header"></h5>
<div class="table-responsive text-nowrap">
<table class="table table-striped">
<thead>
<tr>
<th>Codice Buono</th>
<th>Data buono</th>
<th>Cliente</th>
<th>Codice impianto</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.ser_buono)
</td>
<td>
@Html.DisplayFor(modelItem => item.data_rapportino)
</td>
<td>
@Html.DisplayFor(modelItem => item.ancodice) - @Html.DisplayFor(modelItem => item.andescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.codice_impianto)
</td>
@Html.HiddenFor(modelItem => item.seriale_rapportino)
</tr>
}
</tbody>
</table>
</div>
</div>
<br />
<nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, impianto = @ViewData["impianto"], dataIni = @ViewData["dataIni"],
dataFin = @ViewData["dataFin"]}), new PagedListRenderOptions()
{
ActiveLiElementClass = "active",
PageClasses = new[] { "page-link" },
LiElementClasses = new[] { "page-item" },
UlElementClasses = new[] { "pagination", "justify-content-center", "mt-3" },
LinkToNextPageFormat = "Successiva",
LinkToPreviousPageFormat = "Precedente",
MaximumPageNumbersToDisplay = 5,
DisplayLinkToPreviousPage = PagedListDisplayMode.Always,
DisplayLinkToNextPage = PagedListDisplayMode.Always
})
</nav>
</div>
</div>
</div>
<div>
@{
@ViewBag.Log
}
</div>
*@