diff --git a/Controllers/RapportiniController.cs b/Controllers/RapportiniController.cs index 2ff7663..c161dec 100644 --- a/Controllers/RapportiniController.cs +++ b/Controllers/RapportiniController.cs @@ -70,7 +70,7 @@ namespace VirtualTask.Controllers if (response.IsSuccessStatusCode) { string data = response.Content.ReadAsStringAsync().Result; - modelList = JsonConvert.DeserializeObject>(data); + modelList = JsonConvert.DeserializeObject>(data) ?? new List(); string urlImpianti = apiUrl + "impiantiListMngr?token=" + token; HttpResponseMessage responseImpianti = client.GetAsync(urlImpianti).Result; @@ -80,11 +80,26 @@ namespace VirtualTask.Controllers if (responseImpianti.IsSuccessStatusCode) { string dataImpianti = responseImpianti.Content.ReadAsStringAsync().Result; - impiantiList = JsonConvert.DeserializeObject>(dataImpianti); - ViewBag.Impianti = impiantiList; + impiantiList = JsonConvert.DeserializeObject>(dataImpianti) ?? new List(); ; + //ViewBag.Impianti = impiantiList; + + // ๐Ÿ”ง Crea SelectList codice + descrizione + ViewBag.Impianti = new SelectList( + impiantiList.Select(i => new + { + imcodimp = i.imcodimp, + descrizioneCompleta = $"{i.imcodimp} - {i.imdescri}" + }), + "imcodimp", + "descrizioneCompleta", + impianto + ); + } - ViewBag.Rapportini = getImpianti(null); + // --- Filtri --- + + //ViewBag.Rapportini = getImpianti(null); if (!string.IsNullOrEmpty(impianto)) { @@ -92,10 +107,10 @@ namespace VirtualTask.Controllers ViewData["impianto"] = impianto; - ViewBag.Impianto = impianto; + //ViewBag.Impianto = impianto; } - else - ViewData["impianto"] = null; + //else + // ViewData["impianto"] = null; if (dataIni.Date != DateTime.MinValue) { @@ -167,43 +182,62 @@ namespace VirtualTask.Controllers modelList = JsonConvert.DeserializeObject>(data); - if (string.IsNullOrEmpty(impianto)) + if (impianto != null) { - impianto = "- Impianto"; + modelList = modelList.Where(x => x.codice_impianto.Equals(impianto)).ToList(); } - if (impianto.Equals("System.Collections.Generic.List`1[Microsoft.AspNetCore.Mvc.Rendering.SelectListItem]") || impianto.Equals("- Impianto")) + if (dataIni != DateTime.MinValue) { - modelList = modelList; + modelList = modelList + .Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date) + .ToList(); + ViewData["dataIni"] = dataIni.ToString("yyyy-MM-dd"); } else { - if (impianto != null) - { - modelList = modelList.Where(x => x.codice_impianto.Equals(impianto)).ToList(); - } - - //if (!dataFin.ToString().Substring(0, 10).Equals("01/01/0001")) - //{ - // modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date - // && x.data_rapportino.GetValueOrDefault().Date <= dataFin.Date).ToList(); - //} - //else - //{ - // modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date).ToList(); - //} - - if (dataFin != DateTime.MinValue) - { - modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date - && x.data_rapportino.GetValueOrDefault().Date <= dataFin.Date).ToList(); - } - else - { - modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date).ToList(); - } + ViewData["dataIni"] = ""; } + if (dataFin != DateTime.MinValue) + { + modelList = modelList + .Where(x => x.data_rapportino.GetValueOrDefault().Date <= dataFin.Date) + .ToList(); + ViewData["dataFin"] = dataFin.ToString("yyyy-MM-dd"); + } + else + { + ViewData["dataFin"] = ""; + } + + //if (string.IsNullOrEmpty(impianto)) + //{ + // impianto = "- Impianto"; + //} + + //if (impianto.Equals("System.Collections.Generic.List`1[Microsoft.AspNetCore.Mvc.Rendering.SelectListItem]") || impianto.Equals("- Impianto")) + //{ + // modelList = modelList; + //} + //else + //{ + // if (impianto != null) + // { + // modelList = modelList.Where(x => x.codice_impianto.Equals(impianto)).ToList(); + // } + + // if (dataFin != DateTime.MinValue) + // { + // modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date + // && x.data_rapportino.GetValueOrDefault().Date <= dataFin.Date).ToList(); + // } + // else + // { + // modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date).ToList(); + // } + //} + var workbook = new XLWorkbook(); workbook.AddWorksheet("sheetName"); var ws = workbook.Worksheet("sheetName"); diff --git a/Views/Rapportini/Index.cshtml b/Views/Rapportini/Index.cshtml index 5d16bd4..f2192c4 100644 --- a/Views/Rapportini/Index.cshtml +++ b/Views/Rapportini/Index.cshtml @@ -1,4 +1,138 @@ ๏ปฟ@model IPagedList +@using X.PagedList +@using X.PagedList.Mvc.Core +@using X.PagedList.Web.Common + + + +@{ + ViewData["Title"] = "Esporta buoni su Excel"; + Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml"; +} + +
+
+
+ + + @using (Html.BeginForm("Index", "Rapportini", FormMethod.Get)) + { +
+
Ricerca
+
+
+
+ + @Html.DropDownList( + "impianto", + ViewBag.Impianti as SelectList, + "- Impianto", + new { @class = "form-select" } + ) +
+
+ + +
+
+ + +
+
+ @* *@ + +
+
+
+
+ } + + + @using (Html.BeginForm("ExportDataToExcel", "Rapportini", FormMethod.Post)) + { +
+
Estrai
+
+ @Html.Hidden("impianto", ViewData["impianto"]) + @Html.Hidden("dataIni", ViewData["dataIni"]) + @Html.Hidden("dataFin", ViewData["dataFin"]) + @* *@ + @* *@ + + + +
+
+ } + + +
+
+ + + + + + + + + + + @if (Model != null && Model.Any()) + { + foreach (var item in Model) + { + + + + + + + } + } + else + { + + + + } + +
Codice BuonoData buonoClienteCodice impianto
@item.ser_buono@item.data_rapportino?.ToString("dd/MM/yyyy")@item.ancodice - @item.andescri@item.codice_impianto
Nessun risultato trovato.
+
+
+ + + + +
+
+
+ + +@* @model IPagedList @using X.PagedList; @using X.PagedList.Mvc.Core; @using X.PagedList.Web.Common; @@ -84,22 +218,16 @@ - @* *@ - @* - *@ @foreach (var item in Model) { - @* *@ @@ -147,4 +275,4 @@ } - + *@
Seriale buonoCodice Buono Data buono Cliente Codice impiantoSeriale commessaData buono
- @Html.DisplayFor(modelItem => item.seriale_rapportino) - @Html.DisplayFor(modelItem => item.ser_buono)