Compare commits

...

10 Commits

Author SHA1 Message Date
michele
35c6727dbf modifica dimensioni per non andare a capo con gli orari deille date appuntamento 2024-10-28 15:45:29 +01:00
michele
5a39166609 Modifica chiamate: aggiunta valorizzazione data appuntamento in create, edit e detail. modifcata view e controller 2024-10-25 14:49:52 +02:00
michele
8c47fa3006 Modifiche testi listino prezzi 2024-10-23 15:20:10 +02:00
michele
0fa1e90a5d Home: aggiunto link download pdf
Rapp_New: in index sostituito seriale rapportino con seriale buono e aggiunto metodo Immagine a controller
Chiamate. messo link a immagine buono che apre popup con immagine
Aggiunto PDF guida a Assets.
2024-10-17 16:58:46 +02:00
52f63169e1 campo seriale rappnew per link immagine 2024-10-17 15:01:19 +02:00
michele
fdab186e20 Aggiunto View e metodo nel controller per Disabilita utente 2024-10-17 11:02:13 +02:00
749d21dd70 errore numtec 2024-10-16 15:16:19 +02:00
michele
72e4a6b4ca apertura immagine buono da chiamate 2024-10-15 16:51:15 +02:00
michele
539f1918a3 Immagine da chiamate 2024-10-11 14:49:33 +02:00
michele
4ce271d570 Michele: modifiche grafiche 2024-10-08 10:48:57 +02:00
30 changed files with 1299 additions and 582 deletions

View File

@ -201,7 +201,7 @@ namespace VirtualTask.Controllers
{ {
model.chdata = DateTime.Now; model.chdata = DateTime.Now;
} }
model.chdtapp = model.chdata; //model.chdtapp = model.chdata;
model.chdtass = model.chdata; model.chdtass = model.chdata;
model.chtipo = "A";//X=creato da app, A creato da adhoc. DEVO METTERE A perche altrimenti l'app lo tratta come una chiamata da commessa model.chtipo = "A";//X=creato da app, A creato da adhoc. DEVO METTERE A perche altrimenti l'app lo tratta come una chiamata da commessa
model.chmodrac = "EMAIL"; model.chmodrac = "EMAIL";
@ -214,9 +214,16 @@ namespace VirtualTask.Controllers
//model.chmin = min; //model.chmin = min;
//model.chminapi = min; //model.chminapi = min;
//model.chminass = min; //model.chminass = min;
int year = model.chdata.Value.Year;
int hour = model.chdata.Value.Hour; //MF 25/10/2024 Anno, ore e minuti prendono data appuntamento e non più data apertura chiamata
int minute = model.chdata.Value.Minute; //int year = model.chdata.Value.Year;
//int hour = model.chdata.Value.Hour;
//int minute = model.chdata.Value.Minute;
int year = model.chdtapp.Value.Year;
int hour = model.chdtapp.Value.Hour;
int minute = model.chdtapp.Value.Minute;
model.chora = hour; model.chora = hour;
model.chmin = minute; model.chmin = minute;
model.choraapi = hour; model.choraapi = hour;
@ -361,11 +368,19 @@ namespace VirtualTask.Controllers
client = new HttpClient(); client = new HttpClient();
client.BaseAddress = baseAddress; client.BaseAddress = baseAddress;
model.chdtapp = model.chdata; //model.chdtapp = model.chdata;
model.chdtass = model.chdata;
int year = model.chdata.Value.Year; //model.chdtass = model.chdata;
int hour = model.chdata.Value.Hour; model.chdtass = model.chdtapp;
int minute = model.chdata.Value.Minute;
//int year = model.chdata.Value.Year;
//int hour = model.chdata.Value.Hour;
//int minute = model.chdata.Value.Minute;
int year = model.chdtapp.Value.Year;
int hour = model.chdtapp.Value.Hour;
int minute = model.chdtapp.Value.Minute;
model.chora = hour; model.chora = hour;
model.chmin = minute; model.chmin = minute;
model.choraapi = hour; model.choraapi = hour;
@ -463,8 +478,16 @@ namespace VirtualTask.Controllers
} }
#endregion DELETE #endregion DELETE
#region metodi interni #region metodi interni
private byte GetImgFromRapp_New()
{
var img = new Byte();
return img;
}
private List<SelectListItem> getImpianti(string impianto) private List<SelectListItem> getImpianti(string impianto)
{ {
SessionHelper helper = new SessionHelper(this); SessionHelper helper = new SessionHelper(this);

View File

@ -63,15 +63,13 @@ namespace VirtualTask.Controllers
if (dataIni.Date != DateTime.MinValue) if (dataIni.Date != DateTime.MinValue)
{ {
modelList = modelList.Where(x => x.data_rapportino.Date >= dataIni.Date).ToList(); modelList = modelList.Where(x => x.data_rapportino.Date >= dataIni.Date).ToList();
ViewData["dataIni"] = dataIni; ViewData["dataIni"] = dataIni;
//ViewData["dataFin"] = dataFin;
} }
else else
{ {
ViewData["dataIni"] = null; ViewData["dataIni"] = null;
} }
if (dataFin.Date != DateTime.MinValue) if (dataFin.Date != DateTime.MinValue)
{ {
modelList = modelList.Where(x => x.data_rapportino.Date <= dataFin.Date).ToList(); modelList = modelList.Where(x => x.data_rapportino.Date <= dataFin.Date).ToList();
@ -80,7 +78,6 @@ namespace VirtualTask.Controllers
else else
{ {
ViewData["dataFin"] = null; ViewData["dataFin"] = null;
} }
if (!string.IsNullOrEmpty(Codbuono)) if (!string.IsNullOrEmpty(Codbuono))
@ -174,6 +171,8 @@ namespace VirtualTask.Controllers
{ {
SessionHelper helper = new SessionHelper(this); SessionHelper helper = new SessionHelper(this);
id = "V000000135";
token = helper.GetStringValue("tok"); token = helper.GetStringValue("tok");
apiUrl = helper.GetStringValue("apiUrl"); apiUrl = helper.GetStringValue("apiUrl");
@ -361,6 +360,46 @@ namespace VirtualTask.Controllers
#endregion DELETE #endregion DELETE
#region IMMAGINE
public IActionResult Immagine(string id)
{
SessionHelper helper = new SessionHelper(this);
token = helper.GetStringValue("tok");
apiUrl = helper.GetStringValue("apiUrl");
admin = helper.GetStringValue("admin");
ViewBag.Admin = admin;
urlBase = apiUrl + "rappnewList";
urlBase = urlBase + "?token=" + token;
Uri baseAddress = new Uri(urlBase);
client = new HttpClient();
client.BaseAddress = baseAddress;
Rapp_New rapp = new Rapp_New();
List<Rapp_New> modelList = new List<Rapp_New>();
HttpResponseMessage response = client.GetAsync(baseAddress).Result;
if (response.IsSuccessStatusCode)
{
string data = response.Content.ReadAsStringAsync().Result;
modelList = JsonConvert.DeserializeObject<List<Rapp_New>>(data);
rapp = modelList.Where(x => x.seriale_rapportino.Equals(id)).First();
}
else
{
errMes = response.Content.ReadAsStringAsync().Result;
helper.SetStringValue("errMsg", errMes);
return RedirectToAction("Error");
}
return View(rapp);
}
#endregion
//metodo per riempire combobox con la tabella tecnici //metodo per riempire combobox con la tabella tecnici
private List<SelectListItem> GetTecnici() private List<SelectListItem> GetTecnici()
{ {

View File

@ -78,36 +78,29 @@ namespace VirtualTask.Controllers
{ {
modelList = modelList.Where(s => s.codice_impianto.Contains(impianto)).ToList(); modelList = modelList.Where(s => s.codice_impianto.Contains(impianto)).ToList();
ViewData["CurrentFilter"] = impianto; ViewData["impianto"] = impianto;
ViewBag.Impianto = impianto; ViewBag.Impianto = impianto;
} }
else else
ViewData["CurrentFilter"] = null; ViewData["impianto"] = null;
if (dataIni.Date != DateTime.MinValue) if (dataIni.Date != DateTime.MinValue)
{ {
modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date).ToList(); modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date >= dataIni.Date).ToList();
ViewData["dataIni"] = dataIni;
} }
else
ViewData["dataIni"] = null;
if (dataFin.Date != DateTime.MinValue) if (dataFin.Date != DateTime.MinValue)
{ {
modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date <= dataFin.Date).ToList(); modelList = modelList.Where(x => x.data_rapportino.GetValueOrDefault().Date <= dataFin.Date).ToList();
ViewData["dataFin"] = dataFin;
} }
else
ViewData["dataFin"] = null;
//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 (page != null && page < 1) if (page != null && page < 1)
{ {

View File

@ -491,9 +491,8 @@ namespace VirtualTask.Controllers
if (response.IsSuccessStatusCode) if (response.IsSuccessStatusCode)
{ {
string data = response.Content.ReadAsStringAsync().Result; //string data = response.Content.ReadAsStringAsync().Result;
string e = JsonConvert.DeserializeObject<string>(data); //string e = JsonConvert.DeserializeObject<string>(data);
return RedirectToAction("Index"); return RedirectToAction("Index");
} }
@ -510,12 +509,92 @@ namespace VirtualTask.Controllers
helper.SetStringValue("errMsg", "Utente non abilitato per la funzione"); helper.SetStringValue("errMsg", "Utente non abilitato per la funzione");
return RedirectToAction("Error"); return RedirectToAction("Error");
} }
} }
#endregion
#region DISATTIVA
[HttpGet]
public IActionResult Disattiva(int id)
{
SessionHelper helper = new SessionHelper(this);
//token = helper.GetStringValue("tok");
apiUrl = helper.GetStringValue("apiUrl");
urlBase = apiUrl + "RegistrazioniList";
//urlBase = "http://10.0.0.187:8000/api/Polo/RegistrazioniList";
//urlBase = urlBase + "?token=" + token;
Uri baseAddress = new Uri(urlBase);
client = new HttpClient();
client.BaseAddress = baseAddress;
admin = helper.GetStringValue("admin");
ViewBag.Admin = admin;
Registrazione reg = new Registrazione();
List<Registrazione> modelList = new List<Registrazione>();
HttpResponseMessage response = client.GetAsync(baseAddress).Result;
if (response.IsSuccessStatusCode)
{
string data = response.Content.ReadAsStringAsync().Result;
modelList = JsonConvert.DeserializeObject<List<Registrazione>>(data);
reg = modelList.Where(x => x.id.Equals(id)).First();
return View(reg);
}
else
{
errMes = response.Content.ReadAsStringAsync().Result;
helper.SetStringValue("errMsg", errMes);
return RedirectToAction("Error");
}
}
[HttpPost]
public IActionResult Disattiva(Registrazione model)
{
SessionHelper helper = new SessionHelper(this);
apiUrl = helper.GetStringValue("apiUrl");
token = helper.GetStringValue("tok");
string errore = string.Empty;
admin = helper.GetStringValue("admin");
// prima verifico che l'utente connesso sia SA
if (!string.IsNullOrEmpty(admin) && admin.Equals("S"))
{
urlBase = apiUrl + "DisattivazioneStored";
urlBase = urlBase + "?token=" + token;
urlBase = urlBase + "&id=" + model.id;
Uri baseAddress = new Uri(urlBase);
client = new HttpClient();
client.BaseAddress = baseAddress;
HttpResponseMessage response = client.GetAsync(baseAddress).Result;
if (response.IsSuccessStatusCode)
{
//string data = response.Content.ReadAsStringAsync().Result;
//string e = JsonConvert.DeserializeObject<string>(data);
return RedirectToAction("Index");
}
else
{
errMes = response.Content.ReadAsStringAsync().Result;
helper.SetStringValue("errMsg", "Errore in attivazione");
return RedirectToAction("Error");
}
}
else
{
helper.SetStringValue("errMsg", "Utente non abilitato per la funzione");
return RedirectToAction("Error");
}
}
#endregion #endregion
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]

View File

@ -66,27 +66,36 @@ namespace VirtualTask.Controllers
if (dataIni.Date != DateTime.MinValue) if (dataIni.Date != DateTime.MinValue)
{ {
modelList = modelList.Where(x => x.data_timbratura.GetValueOrDefault().Date >= dataIni.Date).ToList(); modelList = modelList.Where(x => x.data_timbratura.GetValueOrDefault().Date >= dataIni.Date).ToList();
ViewData["dataIni"] = dataIni;
} }
else
ViewData["dataIni"] = null;
if (dataFin.Date != DateTime.MinValue) if (dataFin.Date != DateTime.MinValue)
{ {
modelList = modelList.Where(x => x.data_timbratura.GetValueOrDefault().Date <= dataFin.Date).ToList(); modelList = modelList.Where(x => x.data_timbratura.GetValueOrDefault().Date <= dataFin.Date).ToList();
ViewData["dataFin"] = dataFin;
} }
else
ViewData["dataFin"] = null;
if (!string.IsNullOrEmpty(commessa)) if (!string.IsNullOrEmpty(commessa))
{ {
modelList = modelList.Where(s => s.commessa.Contains(commessa)).ToList(); modelList = modelList.Where(s => s.commessa.Contains(commessa)).ToList();
// ViewData["CurrentFilter"] = commessa; ViewData["commessa"] = commessa;
//ViewBag.Timbrature = commessa;
} }
else else
//ViewData["CurrentFilter"] = null; ViewData["commessa"] = null;
if (!string.IsNullOrEmpty(tecnico)) if (!string.IsNullOrEmpty(tecnico))
{ {
modelList = modelList.Where(s => s.tecnico.ToLower().Contains(tecnico.ToLower())).ToList(); modelList = modelList.Where(s => s.tecnico.ToLower().Contains(tecnico.ToLower())).ToList();
ViewData["tecnico"] = tecnico;
} }
else
ViewData["tecnico"] = null;
if (page != null && page < 1) if (page != null && page < 1)
{ {

View File

@ -24,7 +24,7 @@ namespace VirtualTask.Models
[Column(TypeName = "decimal(10, 0)")] [Column(TypeName = "decimal(10, 0)")]
public decimal? chnumero { get; set; } public decimal? chnumero { get; set; }
[Display(Name = "Data Appuntamento")] [Display(Name = "Data apertura chiamata")]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")] [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime? chdata { get; set; } public DateTime? chdata { get; set; }
@ -68,7 +68,7 @@ namespace VirtualTask.Models
public int? chopchi { get; set; } public int? chopchi { get; set; }
public string? chaziimp { get; set; } public string? chaziimp { get; set; }
public string? chtmanut { get; set; } public string? chtmanut { get; set; }
[Display(Name = "Data")] [Display(Name = "Data appuntamento")]
public DateTime? chdtapp { get; set; } public DateTime? chdtapp { get; set; }
public int? choraapi { get; set; } public int? choraapi { get; set; }
public int? chminapi { get; set; } public int? chminapi { get; set; }
@ -238,5 +238,9 @@ namespace VirtualTask.Models
public string? andescri { get; set; } public string? andescri { get; set; }
public string? ancodice { get; set; } public string? ancodice { get; set; }
/// <summary>RAPP_NEW: seriale chiamata chiusa</summary>
public string? ser_rapp_chiu { get; set; }
} }
} }

View File

@ -81,6 +81,8 @@ namespace VirtualTask.Models
[Display(Name = "Ragione Sociale")] [Display(Name = "Ragione Sociale")]
[StringLength(50)] [StringLength(50)]
public string? RagioneSociale { get; set; } public string? RagioneSociale { get; set; }
public int? numtec { get; set; }
} }
} }

View File

@ -19,58 +19,87 @@
</p> </p>
@using (Html.BeginForm()) @using (Html.BeginForm())
{ {
<div class="card">
<div> <h5 class="card-header">Ricerca</h5>
<div class="table-responsive text-nowrap">
<table class="table">
<tbody class="table-border-bottom-0">
<tr>
<td>
<span class="fw-medium">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per Rag. Sociale", @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>
<div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per Rag. Sociale", @class = "agy-form-field require" })</div> <div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per Rag. Sociale", @class = "agy-form-field require" })</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div>
</div> </div> *@
} }
<table class="table">
<thead>
<tr>
<th>Codice</th>
<th>Rag. Sociale</th>
<th>Codice Fiscale</th>
<th>Partita Iva</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.ancodice)
</td>
<td>
@Html.DisplayFor(modelItem => item.andescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.ancodfis)
</td>
<td>
@Html.DisplayFor(modelItem => item.anpariva)
</td>
<td> <div style="width:100%;height:30px;">
<a href="@Url.Action("Edit", "Anag", new { id=item.ancodice })" title="Modifica" class="links"> &nbsp;
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;"> </div>
</a>
| <div class="card">
<a href="@Url.Action("Details", "Anag", new { id=item.ancodice })" title="Dettaglio" class="links"> <h5 class="card-header">Clienti</h5>
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> <div class="table-responsive text-nowrap">
</a> <table class="table table-striped">
| <thead>
<a href="@Url.Action("Delete", "Anag", new { id=item.ancodice })" title="Elimina" class="links"> <tr>
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;"> <th>Codice</th>
</a> <th>Rag. Sociale</th>
</td> <th>Codice Fiscale</th>
</tr> <th>Partita Iva</th>
} <th></th>
</tbody> </tr>
</table> </thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.ancodice)
</td>
<td>
@Html.DisplayFor(modelItem => item.andescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.ancodfis)
</td>
<td>
@Html.DisplayFor(modelItem => item.anpariva)
</td>
<td>
<a href="@Url.Action("Edit", "Anag", new { id=item.ancodice })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
</a>
|
<a href="@Url.Action("Details", "Anag", new { id=item.ancodice })" title="Dettaglio" class="links">
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
</a>
|
<a href="@Url.Action("Delete", "Anag", new { id=item.ancodice })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions()

View File

@ -18,14 +18,32 @@
@using (Html.BeginForm()) @using (Html.BeginForm())
{ {
<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>
<span class="fw-medium">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per tecnico", @class = "agy-form-field require" })</span>
<div> </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>
<div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per tecnico", @class = "agy-form-field require" })</div> <div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per tecnico", @class = "agy-form-field require" })</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div>
</div> </div>
*@
} }
<table class="table"> <table class="table">

View File

@ -32,20 +32,12 @@
<span asp-validation-for="chstato" class="text-danger"></span> <span asp-validation-for="chstato" class="text-danger"></span>
</div> </div>
<div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div> <div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div>
<div class="form-group" style="width: 100%;"> <div class="form-group" style="width: 40%;">
<table> <h5><label asp-for="chdtapp" class="agy-client-quote"></label></h5>
<tr> <input asp-for="chdtapp" class="agy-form-field require" placeholder="Data" />
<th style="width: 40%;"> @* <input asp-for="chrifer" class="form-control" /> *@
<h5><label asp-for="chdata" class="agy-client-quote"></label></h5> <span asp-validation-for="chrifer" class="text-danger"></span>
<input asp-for="chdata" class="agy-form-field require" placeholder="Data" />
@* <input asp-for="chrifer" class="form-control" /> *@
<span asp-validation-for="chrifer" class="text-danger"></span>
</th>
<th>
<p>Se la data dell'appuntamento non è specificata verrà valorizzata con la data sistema (data del giorno).</p>
</th>
</tr>
</table>
</div> </div>
<div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div> <div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div>
<div class="form-group" style="width: 40%;"> <div class="form-group" style="width: 40%;">

View File

@ -30,10 +30,9 @@
<div class="col-md-10"> <div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.chdata)</b> @Html.DisplayFor(model => model.chdata) <b>@Html.DisplayNameFor(model => model.chdata)</b> @Html.DisplayFor(model => model.chdata)
</div> </div>
<div class="col-md-12">
<b>@Html.DisplayNameFor(model => model.chdtapp)</b> @Html.DisplayFor(model => model.chdtapp)
</div>
<div class="col-md-10"> <div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.chcodimp)</b> @Html.DisplayFor(model => model.chcodimp) <b>@Html.DisplayNameFor(model => model.chcodimp)</b> @Html.DisplayFor(model => model.chcodimp)
</div> </div>

View File

@ -40,10 +40,12 @@
</div> </div>
<div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div> <div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div>
<div class="form-group"> <div class="form-group">
<h5><label asp-for="chdata" class="agy-client-quote"></label></h5> <h5><label asp-for="chdtapp" class="agy-client-quote"></label></h5>
<input asp-for="chdtapp" class="agy-form-field require" placeholder="Data" />
<span asp-validation-for="chdtapp" class="text-danger"></span>
@* <h5><label asp-for="chdata" class="agy-client-quote"></label></h5>
<input asp-for="chdata" class="agy-form-field require" placeholder="Data" /> <input asp-for="chdata" class="agy-form-field require" placeholder="Data" />
<span asp-validation-for="chdata" class="text-danger"></span> *@
<span asp-validation-for="chdata" class="text-danger"></span>
</div> </div>
<div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div> <div class="col-lg-6 col-md-6 col-sm-12 col-12">&nbsp;</div>
<div class="form-group"> <div class="form-group">
@ -101,7 +103,8 @@
@Html.HiddenFor(x => x.chopchi) @Html.HiddenFor(x => x.chopchi)
@Html.HiddenFor(x => x.chaziimp) @Html.HiddenFor(x => x.chaziimp)
@Html.HiddenFor(x => x.chtmanut) @Html.HiddenFor(x => x.chtmanut)
@Html.HiddenFor(x => x.chdtapp) @* @Html.HiddenFor(x => x.chdtapp) *@
@Html.HiddenFor(x => x.chdata)
@Html.HiddenFor(x => x.choraapi) @Html.HiddenFor(x => x.choraapi)
@Html.HiddenFor(x => x.chminapi) @Html.HiddenFor(x => x.chminapi)
@Html.HiddenFor(x => x.choraapf) @Html.HiddenFor(x => x.choraapf)

View File

@ -117,11 +117,6 @@
</table> </table>
</div> </div>
</div> </div>
} }
<div style="width:100%;height:30px;"> <div style="width:100%;height:30px;">
&nbsp; &nbsp;
@ -135,7 +130,7 @@
<tr> <tr>
<th>#</th> <th>#</th>
<th>Data</th> <th>Data appuntamento</th>
<th>Impianto</th> <th>Impianto</th>
<th>Cliente</th> <th>Cliente</th>
<th>Tecnico</th> <th>Tecnico</th>
@ -157,7 +152,8 @@
@Html.DisplayFor(modelItem => item.numIntero) @Html.DisplayFor(modelItem => item.numIntero)
</td> </td>
<td> <td>
@Html.DisplayFor(modelItem => item.chdata) @* @Html.DisplayFor(modelItem => item.chdata) *@
@Html.DisplayFor(modelItem => item.chdtapp)
</td> </td>
<td> <td>
@Html.DisplayFor(modelItem => item.chcodimp) - @Html.DisplayFor(modelItem => item.indirizzoBreve) @Html.DisplayFor(modelItem => item.chcodimp) - @Html.DisplayFor(modelItem => item.indirizzoBreve)
@ -221,7 +217,16 @@
// link = "http://testapi.poloinformatico.it:9001/VIRTU/"; // link = "http://testapi.poloinformatico.it:9001/VIRTU/";
// link = link + item.ser_buono_chiu + ".jpg"; // link = link + item.ser_buono_chiu + ".jpg";
// <td><a href="@link" target="_blank">@item.ser_buono_chiu</a></td> // <td><a href="@link" target="_blank">@item.ser_buono_chiu</a></td>
<td>@item.ser_buono_chiu</td>
// <td>@item.ser_buono_chiu - @item.ser_rapp_chiu</td>
<td><a href="" onclick="openNewWindow();">@item.ser_buono_chiu</a></td>
<script type="text/javascript">
function openNewWindow() {
window.open("/Rapp_New/Immagine?id=@item.ser_rapp_chiu", "MyWindow", "top=0,left=0,height=1020,width=1020");
}
</script>
} }
else else
{ {

View File

@ -19,56 +19,85 @@
</p> </p>
@using (Html.BeginForm()) @using (Html.BeginForm())
{ {
<div> <div class="card">
<h5 class="card-header">Ricerca</h5>
<table class="table">
<tbody class="table-border-bottom-0">
<tr>
<td>
<span class="fw-medium">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per descrizione", @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="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per descrizione", @class = "agy-form-field require" })</div> <div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per descrizione", @class = "agy-form-field require" })</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div>
</div> </div> *@
} }
<table class="table">
<thead>
<tr>
<th>Azienda</th>
<th>Codice</th>
<th>Descrizione</th>
<th>Testo del rapportino App (desc. sup.)</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.cccodazi)
</td>
<td>
@Html.DisplayFor(modelItem => item.cccodice)
</td>
<td>
@Html.DisplayFor(modelItem => item.ccdescr)
</td>
<td>
@Html.DisplayFor(modelItem => item.ccdessup)
</td>
<td> <div style="width:100%;height:30px;">
<a href="@Url.Action("Edit", "Chiusure", new { id=item.cccodice })" title="Modifica" class="links"> &nbsp;
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;"> </div>
</a>
| <div class="card">
<a href="@Url.Action("Details", "Chiusure", new { id=item.cccodice })" title="Dettaglio" class="links"> <h5 class="card-header">Tipi intervento</h5>
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> <div class="table-responsive text-nowrap">
</a> <table class="table table-striped">
| <thead>
<a href="@Url.Action("Delete", "Chiusure", new { id=item.cccodice })" title="Elimina" class="links"> <tr>
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;"> <th>Azienda</th>
</a> <th>Codice</th>
</td> <th>Descrizione</th>
</tr> <th>Testo del rapportino App (desc. sup.)</th>
} <th></th>
</tbody> </tr>
</table> </thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.cccodazi)
</td>
<td>
@Html.DisplayFor(modelItem => item.cccodice)
</td>
<td>
@Html.DisplayFor(modelItem => item.ccdescr)
</td>
<td>
@Html.DisplayFor(modelItem => item.ccdessup)
</td>
<td>
<a href="@Url.Action("Edit", "Chiusure", new { id=item.cccodice })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
</a>
|
<a href="@Url.Action("Details", "Chiusure", new { id=item.cccodice })" title="Dettaglio" class="links">
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
</a>
|
<a href="@Url.Action("Delete", "Chiusure", new { id=item.cccodice })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions()

View File

@ -20,116 +20,150 @@
@using (Html.BeginForm()) @using (Html.BeginForm())
{ {
<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>
<span class="fw-medium">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per commessa", @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>
@* <div>
<div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per commessa", @class = "agy-form-field require" })</div> <div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per commessa", @class = "agy-form-field require" })</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div>
</div> </div> *@
} }
<table class="table">
<thead>
<tr>
<th hidden>Seriale Commessa</th>
<th hidden>Azienda</th>
<th>Cod. Commessa</th>
<th>Descrizione Commessa</th>
<th hidden>Fine validita Commessa</th>
<th hidden>Tipo</th>
<th>Cod. Cliente</th>
<th>Cliente</th>
<th>Impianto</th>
<th hidden>tipo ind</th>
<th hidden>indirizzo</th>
<th hidden>numero</th>
<th hidden>lettera</th>
<th hidden>scala</th>
<th hidden>CAP</th>
<th hidden>provincia</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td hidden>
@Html.DisplayFor(modelItem => item.laserial)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.lacodazi)
</td>
<td>
@Html.DisplayFor(modelItem => item.lacodcom)
</td>
<td>
@Html.DisplayFor(modelItem => item.ladeslav)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.ladatchi)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.latipcli)
</td>
<td>
@Html.DisplayFor(modelItem => item.lacodcli)
</td>
<td>
@Html.DisplayFor(modelItem => item.andescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.imcodimp)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri1)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri2)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri3)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri4)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri5)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imlocali)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imcodcap)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.improvin)
</td>
<td>
<a href="@Url.Action("Edit", "CommesseVT", new { id=item.laserial, azienda = item.lacodazi })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
</a>
<a href="@Url.Action("Details", "CommesseVT", new { id=item.laserial, azienda = item.lacodazi })" title="Dettaglio" class="links"> <div style="width:100%;height:30px;">
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> &nbsp;
</a> </div>
@{
string _url_del = @Url.Action("Delete", "CommesseVT", new { id = item.laserial, azienda = item.lacodazi });
string flagComGen = string.Empty;
flagComGen = string.IsNullOrEmpty(item.lacomgen) ? "N" : item.lacomgen;
if (!flagComGen.Equals("S"))
{ <div class="card">
<a href="@_url_del" title="Elimina" class="links"> <h5 class="card-header">Commesse</h5>
<img alt="Elimina" src="~/assets/images/icons8-elimina-50.png" style="width:30px;height:30px;"> <div class="table-responsive text-nowrap">
<table class="table table-striped">
<thead>
<tr>
<th hidden>Seriale Commessa</th>
<th hidden>Azienda</th>
<th>Cod. Commessa</th>
<th>Descrizione Commessa</th>
<th hidden>Fine validita Commessa</th>
<th hidden>Tipo</th>
<th>Cod. Cliente</th>
<th>Cliente</th>
<th>Impianto</th>
<th hidden>tipo ind</th>
<th hidden>indirizzo</th>
<th hidden>numero</th>
<th hidden>lettera</th>
<th hidden>scala</th>
<th hidden>CAP</th>
<th hidden>provincia</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td hidden>
@Html.DisplayFor(modelItem => item.laserial)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.lacodazi)
</td>
<td>
@Html.DisplayFor(modelItem => item.lacodcom)
</td>
<td>
@Html.DisplayFor(modelItem => item.ladeslav)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.ladatchi)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.latipcli)
</td>
<td>
@Html.DisplayFor(modelItem => item.lacodcli)
</td>
<td>
@Html.DisplayFor(modelItem => item.andescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.imcodimp)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri1)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri2)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri3)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri4)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imindiri5)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imlocali)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.imcodcap)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.improvin)
</td>
<td>
<a href="@Url.Action("Edit", "CommesseVT", new { id=item.laserial, azienda = item.lacodazi })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
</a> </a>
}
} <a href="@Url.Action("Details", "CommesseVT", new { id=item.laserial, azienda = item.lacodazi })" title="Dettaglio" class="links">
</td> <img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
</tr> </a>
} @{
</tbody> string _url_del = @Url.Action("Delete", "CommesseVT", new { id = item.laserial, azienda = item.lacodazi });
</table> string flagComGen = string.Empty;
flagComGen = string.IsNullOrEmpty(item.lacomgen) ? "N" : item.lacomgen;
if (!flagComGen.Equals("S"))
{
<a href="@_url_del" title="Elimina" class="links">
<img alt="Elimina" src="~/assets/images/icons8-elimina-50.png" style="width:30px;height:30px;">
</a>
}
}
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions()

View File

@ -14,73 +14,82 @@
<p> <p>
<a asp-action="Create" ><img src="~/assets/images/icons8-nuovo-50.png" alt="Crea un nuovo elemento" /></a> <a asp-action="Create" ><img src="~/assets/images/icons8-nuovo-50.png" alt="Crea un nuovo elemento" /></a>
</p> </p>
<table class="table">
<thead>
<tr>
<th> <div class="card">
@Html.DisplayNameFor(model => model.tecnico) <h5 class="card-header"></h5>
</th> <div class="table-responsive text-nowrap">
<th> <table class="table table-striped">
@Html.DisplayNameFor(model => model.ragsoc) <thead>
</th> <tr>
<th> <th>
@Html.DisplayNameFor(model => model.logo) @Html.DisplayNameFor(model => model.tecnico)
</th> </th>
<th> <th>
@Html.DisplayNameFor(model => model.testo_buono) @Html.DisplayNameFor(model => model.ragsoc)
</th>
</th> <th>
<th></th> @Html.DisplayNameFor(model => model.logo)
</tr> </th>
</thead> <th>
<tbody> @Html.DisplayNameFor(model => model.testo_buono)
@foreach (var item in Model) {
<tr>
<td> </th>
@Html.DisplayFor(modelItem => item.tecnico) <th></th>
</td> </tr>
<td> </thead>
@Html.DisplayFor(modelItem => item.ragsoc) <tbody>
</td> @foreach (var item in Model)
{
<tr>
<td> <td>
@{ @Html.DisplayFor(modelItem => item.tecnico)
var base64 = Convert.ToBase64String(item.logo); </td>
var imgSrc = String.Format("data:image/gif;base64,{0}", base64); <td>
} @Html.DisplayFor(modelItem => item.ragsoc)
<img src="@imgSrc" height="80" /> </td>
</td>
<td>
@{
string testo = string.Empty;
testo = item.testo_buono;
}
@Html.Raw(@testo)
</td> <td>
<td> @{
var base64 = Convert.ToBase64String(item.logo);
var imgSrc = String.Format("data:image/gif;base64,{0}", base64);
}
<img src="@imgSrc" height="80" />
</td>
<td>
@{
string testo = string.Empty;
testo = item.testo_buono;
}
@Html.Raw(@testo)
<a href="@Url.Action("Edit", "DatiAzienda", new { azienda=item.azienda,tecnico=item.tecnico })" title="Modifica" class="links"> </td>
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;"> <td>
</a>
| <a href="@Url.Action("Edit", "DatiAzienda", new { azienda=item.azienda,tecnico=item.tecnico })" title="Modifica" class="links">
<a href="@Url.Action("Detail", "DatiAzienda", new { azienda=item.azienda,tecnico=item.tecnico })" title="Dettaglio" class="links"> <img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> </a>
</a> |
| <a href="@Url.Action("Detail", "DatiAzienda", new { azienda=item.azienda,tecnico=item.tecnico })" title="Dettaglio" class="links">
<a href="@Url.Action("Delete", "DatiAzienda", new { azienda=item.azienda,tecnico=item.tecnico })" title="Elimina" class="links"> <img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;"> </a>
</a> |
<a href="@Url.Action("Delete", "DatiAzienda", new { azienda=item.azienda,tecnico=item.tecnico })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a>
</td> </td>
</tr> </tr>
} }
</tbody> </tbody>
</table> </table>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -5,11 +5,26 @@
Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml"; Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml";
} }
<div style="text-align:center; width:80%;height:80%;width:100%"> <div class="agy-project-wrapper agy-project-page-wrapper">
<img src="~/assets/images/diagramma_statico.png" alt="Diagramma di flusso" /> <div class="container">
<div class="row">
<div style="text-align:center;">
<div>
<p>
<br />
<h4><b>Scarica il manuale d'uso al link qua sotto:</b></h4>
</p>
<p>
<br />
<a href="~/assets/Manuale_VirtualTask_Ts_Rev.3.0.pdf" download="Manuale_VirtualTask_Ts_Rev.3.0.pdf">Manuale_VirtualTask_Ts_Rev.3.0.pdf</a>
<br />
</p>
</div>
</div>
</div>
</div>
</div> </div>
@*<script src="https://unpkg.com/gojs@2.3.16/release/go.js"></script> @*<script src="https://unpkg.com/gojs@2.3.16/release/go.js"></script>
<div id="allSampleContent" class="p-4 w-full" style="text-align:center;"> <div id="allSampleContent" class="p-4 w-full" style="text-align:center;">

View File

@ -48,9 +48,9 @@
</div> </div>
<br /> <br />
<div> <div>
<p> @* <p>
<b>Nuova funzionalità Time Sheet in Virtual Task</b> <b>Nuova funzionalità Time Sheet in Virtual Task</b>
</p> </p> *@
Per ogni utente/dispositivo € 2,00 mese. Per ogni utente/dispositivo € 2,00 mese.
Non attivabile nella versione free. Non attivabile nella versione free.
</div> </div>
@ -83,6 +83,9 @@
<div class="row" style="float:right; width:40%;"> <div class="row" style="float:right; width:40%;">
<div class="col-sm-12"> <div class="col-sm-12">
<div> <div>
<p>
<b>Nuova funzionalità Time Sheet in Virtual Task</b>
</p>
<p> <p>
<h4>Abbonamento Virtual Task Time Sheet</h4> <h4>Abbonamento Virtual Task Time Sheet</h4>
</p> </p>

View File

@ -48,7 +48,7 @@
&nbsp; &nbsp;
</div> </div>
<div class="card"> <div class="card">
<h5 class="card-header">IMPIANTI</h5> <h5 class="card-header">Impianti</h5>
<div class="table-responsive text-nowrap"> <div class="table-responsive text-nowrap">
<table class="table table-striped"> <table class="table table-striped">
<thead> <thead>

View File

@ -18,56 +18,85 @@
</p> *@ </p> *@
@using (Html.BeginForm()) @using (Html.BeginForm())
{ {
<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>
<span class="fw-medium">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per tipo", @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> @* <div>
<div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per tipo", @class = "agy-form-field require" })</div> <div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per tipo", @class = "agy-form-field require" })</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div>
</div> </div> *@
} }
<table class="table"> <div style="width:100%;height:30px;">
<thead> &nbsp;
<tr> </div>
<th>Azienda</th>
<th>Tipo progressivo</th>
<th>Valore progressivo</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.azienda)
</td>
<td>
@Html.DisplayFor(modelItem => item.tipo_prog)
</td>
<td>
@Html.DisplayFor(modelItem => item.val_prog)
</td>
<td>
<a href="@Url.Action("Edit", "Progressivi", new { id=item.tipo_prog })" title="Modifica" class="links"> <div class="card">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;"> <h5 class="card-header">Progressivi</h5>
</a> <div class="table-responsive text-nowrap">
@* | <table class="table table-striped">
<a href="@Url.Action("Details", "Progressivi", new { id=item.tipo_prog })" title="Dettaglio" class="links"> <thead>
<tr>
<th>Azienda</th>
<th>Tipo progressivo</th>
<th>Valore progressivo</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.azienda)
</td>
<td>
@Html.DisplayFor(modelItem => item.tipo_prog)
</td>
<td>
@Html.DisplayFor(modelItem => item.val_prog)
</td>
<td>
<a href="@Url.Action("Edit", "Progressivi", new { id=item.tipo_prog })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
</a>
@* |
<a href="@Url.Action("Details", "Progressivi", new { id=item.tipo_prog })" title="Dettaglio" class="links">
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> <img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
</a> </a>
| |
<a href="@Url.Action("Delete", "Progressivi", new { id=item.tipo_prog })" title="Elimina" class="links"> <a href="@Url.Action("Delete", "Progressivi", new { id=item.tipo_prog })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;"> <img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a> *@ </a> *@
</td> </td>
</tr> </tr>
} }
</tbody> </tbody>
</table> </table>
</div>
</div>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions()

View File

@ -0,0 +1,31 @@
@model VirtualTask.Models.Rapp_New
@{
ViewData["Title"] = "Dettaglio";
Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml";
}
<div class="agy-project-wrapper agy-project-page-wrapper">
<div class="container">
<div class="row">
<div class="row" style="float:left;width:80%;">
@{
var imgSrc = "";
if (Model.img2 != null)
{
//byte[] appo = Model.img2;
var base64 = Convert.ToBase64String(Model.img2);
imgSrc = String.Format("data:image/gif;base64,{0}", base64);
<img src="@imgSrc" style="align-content:center" height="800" width="800" />
}
else
{
<img src="~/assets/images/No_image.png" height="512" width="512" />
}
}
</div>
</div>
</div>
</div>

View File

@ -66,8 +66,9 @@
</div> </div>
<div class="card"> <div class="card">
<h5 class="card-header">BUONI INTERVENTO</h5> <h5 class="card-header">Buoni Intervento</h5>
<div class="table-responsive text-nowrap"> <div class="table-responsive text-nowrap">
<table class="table table-striped"> <table class="table table-striped">
<thead> <thead>
<tr> <tr>
@ -138,6 +139,7 @@
@foreach (var item in Model) @foreach (var item in Model)
{ {
<tr> <tr>
@Html.HiddenFor(modelItem => item.seriale_rapportino)
@Html.HiddenFor(modelItem => item.tipo_rapportino) @Html.HiddenFor(modelItem => item.tipo_rapportino)
@Html.HiddenFor(modelItem => item.azienda_impianto) @Html.HiddenFor(modelItem => item.azienda_impianto)
@Html.HiddenFor(modelItem => item.azienda_chiamata) @Html.HiddenFor(modelItem => item.azienda_chiamata)
@ -166,7 +168,6 @@
@Html.HiddenFor(modelItem => item.incarico) @Html.HiddenFor(modelItem => item.incarico)
@Html.HiddenFor(modelItem => item.data_validita) @Html.HiddenFor(modelItem => item.data_validita)
@Html.HiddenFor(modelItem => item.immagine) @Html.HiddenFor(modelItem => item.immagine)
@Html.HiddenFor(modelItem => item.ser_buono)
@Html.HiddenFor(modelItem => item.data_effettiva) @Html.HiddenFor(modelItem => item.data_effettiva)
@Html.HiddenFor(modelItem => item.codice_intervento) @Html.HiddenFor(modelItem => item.codice_intervento)
@Html.HiddenFor(modelItem => item.difetti_riscontrati) @Html.HiddenFor(modelItem => item.difetti_riscontrati)
@ -196,7 +197,8 @@
@Html.HiddenFor(modelItem => item.rafoto9) @Html.HiddenFor(modelItem => item.rafoto9)
@Html.DisplayFor(modelItem => item.rafoto10) @Html.DisplayFor(modelItem => item.rafoto10)
<td> <td>
@Html.DisplayFor(modelItem => item.seriale_rapportino) @* @Html.DisplayFor(modelItem => item.seriale_rapportino) *@
@Html.DisplayFor(modelItem => item.ser_buono)
</td> </td>
<td> <td>
@Html.DisplayFor(modelItem => item.data_rapportino) @Html.DisplayFor(modelItem => item.data_rapportino)
@ -235,8 +237,8 @@
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString = @ViewData["CurrentFilter"], @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, /* searchString = @ViewData["CurrentFilter"], */
CodBuono = ViewData["Codbuono"], tecnico = @ViewData["tecnico"], dataIni = ViewData["dataIni"], dataFin=@ViewData["dataFin"]}), new PagedListRenderOptions() CodBuono = @ViewData["Codbuono"], tecnico = @ViewData["tecnico"], dataIni = @ViewData["dataIni"], dataFin=@ViewData["dataFin"]}), new PagedListRenderOptions()
{ {
ActiveLiElementClass = "active", ActiveLiElementClass = "active",
PageClasses = new[]{ "page-link"}, PageClasses = new[]{ "page-link"},

View File

@ -15,100 +15,112 @@
<div class="row"> <div class="row">
@using (Html.BeginForm("Index", "Rapportini")) @using (Html.BeginForm("Index", "Rapportini"))
{ {
<div> <div class="card">
<div style="float:left;width:40%;padding:0 20px;"> <h5 class="card-header">Ricerca</h5>
<th><b>Impianto:</b></th> <div class="table-responsive text-nowrap">
@Html.DropDownList("impianto", ViewBag.Rapportini, null, new { @class = "agy-form-field require" }) <table class="table">
<tbody class="table-border-bottom-0">
@* <div style="float:left;width:40%;padding:0 20px;"> *@ <tr>
<th><b>Data da:</b></th> <td>
@Html.TextBox("dataIni", null, new { type = "date", @class = "agy-form-field require" }) <i class="bx bxl-angular bx-sm text-black me-3">Impianto:</i>
@* </div> *@ <span class="fw-medium">@Html.DropDownList("impianto", ViewBag.Rapportini, null, new { @class = "agy-form-field require" })</span>
</td>
@* <div style="float:left;width:40%;padding:0 20px;"> *@ <td>
<th><b>Data a:</b></th> <i class="bx bxl-angular bx-sm text-black me-3">Data da:</i>
@Html.TextBox("dataFin", null, new { type = "date", @class = "agy-form-field require" }) <span class="fw-medium">@Html.TextBox("dataIni", null, new { type = "date", @class = "agy-form-field require" })</span>
@* </div> *@ </td>
<td>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <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="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:2%;">&nbsp;</div>
</div> </div>
} }
<br> <div style="width:100%;height:30px;">
<br> &nbsp;
<br> </div>
@using (Html.BeginForm("ExportDataToExcel", "Rapportini")) @using (Html.BeginForm("ExportDataToExcel", "Rapportini"))
{ {
@Html.Hidden("dataIni", ViewBag.Rapportini, null) <div class="card">
@Html.Hidden("dataFin", ViewBag.Rapportini, null) <h5 class="card-header">Estrai</h5>
@Html.Hidden("impianto", ViewBag.Rapportini, null) <div class="table-responsive text-nowrap">
<table class="table">
<div style="float:left;width:40%;padding:0 20px;"> <tbody class="table-border-bottom-0">
<input type="submit" value="Esporta excel" name="Esporta excel" class="agy-btn submitForm" /> <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>
} }
<table class="table">
<thead> <div style="width:100%;height:30px;">
<tr> &nbsp;
<th>Seriale buono</th> </div>
<th>Data buono</th>
<th>Cliente</th> <div class="card">
<th>Codice impianto</th> <h5 class="card-header"></h5>
@* <th>Seriale commessa</th> <div class="table-responsive text-nowrap">
<th>Data buono</th> *@ <table class="table table-striped">
</tr> <thead>
</thead> <tr>
<tbody> <th>Seriale buono</th>
@foreach (var item in Model) <th>Data buono</th>
{ <th>Cliente</th>
<tr> <th>Codice impianto</th>
<td> @* <th>Seriale commessa</th>
@Html.DisplayFor(modelItem => item.seriale_rapportino) <th>Data buono</th> *@
</td> </tr>
<td> </thead>
@Html.DisplayFor(modelItem => item.data_rapportino) <tbody>
</td> @foreach (var item in Model)
<td> {
@Html.DisplayFor(modelItem => item.ancodice) - @Html.DisplayFor(modelItem => item.andescri) <tr>
</td> <td>
<td> @Html.DisplayFor(modelItem => item.seriale_rapportino)
@Html.DisplayFor(modelItem => item.codice_impianto) </td>
</td> <td>
@* <td> @Html.DisplayFor(modelItem => item.data_rapportino)
@Html.DisplayFor(modelItem => item.seriale_commessa) </td>
</td> <td>
<td> @Html.DisplayFor(modelItem => item.ancodice) - @Html.DisplayFor(modelItem => item.andescri)
@Html.DisplayFor(modelItem => item.data_rapportino) </td>
</td> <td>
*@ @Html.DisplayFor(modelItem => item.codice_impianto)
@* <td> </td>
<a href="@Url.Action("Edit", "Anag", new { id=item.seriale_rapportino })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;"> </tr>
</a> }
| </tbody>
<a href="@Url.Action("Details", "Anag", new { id=item.seriale_rapportino })" title="Dettaglio" class="links"> </table>
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> </div>
</a> </div>
|
<a href="@Url.Action("Delete", "Anag", new { id=item.seriale_rapportino })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a>
</td> *@
</tr>
}
</tbody>
</table>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString = @ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, impianto = @ViewData["impianto"], dataIni = @ViewData["dataIni"],
dataFin = @ViewData["dataFin"]}), new PagedListRenderOptions()
{ {
ActiveLiElementClass = "active", ActiveLiElementClass = "active",
PageClasses = new[] { "page-link" }, PageClasses = new[] { "page-link" },

View File

@ -0,0 +1,244 @@
@model VirtualTask.Models.Registrazione
@{
ViewData["Title"] = "Disattiva";
Layout = "~/Views/Shared/_LayoutAreaRiservata.cshtml";
}
<div class="agy-project-wrapper agy-project-page-wrapper">
<div class="container">
<div class="row">
<div class="row">
<div class="col-md-4">
<form asp-action="Disattiva">
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.id)</b> @Html.DisplayFor(model => model.id)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.nome)</b> @Html.DisplayFor(model => model.nome)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.cognome)</b> @Html.DisplayFor(model => model.cognome)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.RagioneSociale)</b> @Html.DisplayFor(model => model.RagioneSociale)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.telefono)</b> @Html.DisplayFor(model => model.telefono)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.cellulare)</b> @Html.DisplayFor(model => model.cellulare)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.email)</b> @Html.DisplayFor(model => model.email)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.emailConf)</b> @Html.DisplayFor(model => model.emailConf)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.azienda)</b> @Html.DisplayFor(model => model.azienda)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.username)</b> @Html.DisplayFor(model => model.username)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.passwd)</b> @Html.DisplayFor(model => model.passwd)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.citta)</b> @Html.DisplayFor(model => model.citta)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.provincia)</b> @Html.DisplayFor(model => model.provincia)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.nazione)</b> @Html.DisplayFor(model => model.nazione)
</div>
<div class="col-md-10">
<b>@Html.DisplayNameFor(model => model.attivato)</b> @Html.DisplayFor(model => model.attivato)
</div>
@Html.HiddenFor(model => model.id)
@Html.HiddenFor(model => model.nome)
@Html.HiddenFor(model => model.cognome)
@Html.HiddenFor(model => model.telefono)
@Html.HiddenFor(model => model.cellulare)
@Html.HiddenFor(model => model.email)
@Html.HiddenFor(model => model.emailConf)
@Html.HiddenFor(model => model.azienda)
@Html.HiddenFor(model => model.username)
@Html.HiddenFor(model => model.passwd)
@Html.HiddenFor(model => model.citta)
@Html.HiddenFor(model => model.provincia)
@Html.HiddenFor(model => model.nazione)
@Html.HiddenFor(model => model.attivato)
@Html.HiddenFor(model => model.token)
@Html.HiddenFor(model => model.privacy1)
@Html.HiddenFor(model => model.privacy2)
@Html.HiddenFor(model => model.privacy3)
@Html.HiddenFor(model => model.privacy4)
@Html.HiddenFor(model => model.ModuloTimesheet)
@Html.HiddenFor(model => model.ModuloRapportini)
@Html.HiddenFor(model => model.RagioneSociale)
<input type="submit" value="Disabilita" class="agy-btn submitForm" />
</form>
<div>
<a asp-action="Index" value="Torna alla lista" class="agy-btn submitForm">Torna alla lista</a>
@* <input type="submit" value="Torna alla lista" class="agy-btn submitForm" /> *@
</div>
</div>
</div>
</div>
</div>
</div>
@* <div>
<h4>Registrazione</h4>
<hr />
<dl class="row">
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.id)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.id)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.nome)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.nome)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.cognome)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.cognome)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.telefono)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.telefono)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.cellulare)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.cellulare)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.email)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.email)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.emailConf)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.emailConf)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.azienda)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.azienda)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.username)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.username)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.passwd)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.passwd)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.citta)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.citta)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.provincia)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.provincia)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.nazione)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.nazione)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.attivato)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.attivato)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.token)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.token)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.privacy1)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.privacy1)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.privacy2)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.privacy2)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.privacy3)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.privacy3)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.privacy4)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.privacy4)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.ModuloTimesheet)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.ModuloTimesheet)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.ModuloRapportini)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.ModuloRapportini)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.RagioneSociale)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.RagioneSociale)
</dd>
<dt class = "col-sm-2">
@Html.DisplayNameFor(model => model.numtec)
</dt>
<dd class = "col-sm-10">
@Html.DisplayFor(model => model.numtec)
</dd>
</dl>
</div>
<div>
@Html.ActionLink("Edit", "Edit", new { /* id = Model.PrimaryKey */ }) |
<a asp-action="Index">Back to List</a>
</div> *@

View File

@ -92,9 +92,18 @@
<a href="@Url.Action("Delete", "Registrazioni", new { id=item.id })" title="Elimina" class="links"> <a href="@Url.Action("Delete", "Registrazioni", new { id=item.id })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;"> <img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a> </a>
<a href="@Url.Action("Attiva", "Registrazioni", new { id=item.id })" title="Attiva" class="links"> @if(item.numtec == null || item.numtec == 0)
<img alt="Attiva" src="@Url.Content("~/assets/images/icons8-pulsante-di-spegnimento-50.png")" style="width:30px;height:30px;"> {
</a> <a href="@Url.Action("Attiva", "Registrazioni", new { id=item.id })" title="Attiva utente" class="links">
<img alt="Attiva" src="@Url.Content("~/assets/images/icons8-pulsante-di-spegnimento-50.png")" style="width:30px;height:30px;">
</a>
}
else
{
<a href="@Url.Action("Disattiva", "Registrazioni", new { id=item.id })" title="Disattiva utente" class="links">
<img alt="Disattiva" src="@Url.Content("~/assets/images/icons8-rimuovere-l'utente-uomo-50.png")" style="width:30px;height:30px;">
</a>
}
</td> </td>
</tr> </tr>

View File

@ -20,76 +20,108 @@
</p> </p>
@using (Html.BeginForm()) @using (Html.BeginForm())
{ {
<div> <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>
<span class="fw-medium">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per descrizione", @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>
<div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per descrizione", @class = "agy-form-field require" })</div> <div style="float:left;width:40%;padding:0 20px;">@Html.TextBox("SearchString", null, new { placeholder = "Cerca per descrizione", @class = "agy-form-field require" })</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div> <div style="float:left;width:57%;"><input type="submit" value="Cerca" class="agy-btn submitForm" /></div>
</div> </div> *@
} }
<table class="table">
<thread>
<tr>
<th>Codice</th>
<th>Descrizione</th>
<th>Tel.</th>
<th>Utente</th>
<th>Password</th>
<th hidden>Costo ordinario</th>
<th hidden>Costo notturno</th>
<th hidden>Costo straordinario</th>
<th hidden>Costo festivo</th>
</tr>
</thread>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.tccodice)
</td>
<td>
@Html.DisplayFor(modelItem => item.tcdescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.tctelef1)
</td>
<td>
@Html.DisplayFor(modelItem => item.tcuser)
</td>
<td>
@Html.DisplayFor(modelItem => item.tcpwd)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccoor)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccono)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccost)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccofe)
</td>
<td> <div style="width:100%;height:30px;">
<a href="@Url.Action("Edit", "Tecnici", new { id=item.tccodice })" title="Modifica" class="links"> &nbsp;
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;"> </div>
</a>
| <div class="card">
<a href="@Url.Action("Details", "Tecnici", new { id=item.tccodice })" title="Dettaglio" class="links"> <h5 class="card-header">Tecnici</h5>
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> <div class="table-responsive text-nowrap">
</a> <table class="table table-striped">
| <thread>
<a href="@Url.Action("Delete", "Tecnici", new { id=item.tccodice })" title="Elimina" class="links"> <tr>
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;"> <th>Codice</th>
</a> <th>Descrizione</th>
</td> <th>Tel.</th>
</tr> <th>Utente</th>
} <th>Password</th>
</tbody> <th hidden>Costo ordinario</th>
</table> <th hidden>Costo notturno</th>
<th hidden>Costo straordinario</th>
<th hidden>Costo festivo</th>
<th></th>
</tr>
</thread>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.tccodice)
</td>
<td>
@Html.DisplayFor(modelItem => item.tcdescri)
</td>
<td>
@Html.DisplayFor(modelItem => item.tctelef1)
</td>
<td>
@Html.DisplayFor(modelItem => item.tcuser)
</td>
<td>
@Html.DisplayFor(modelItem => item.tcpwd)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccoor)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccono)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccost)
</td>
<td hidden>
@Html.DisplayFor(modelItem => item.tccofe)
</td>
<td>
<a href="@Url.Action("Edit", "Tecnici", new { id=item.tccodice })" title="Modifica" class="links">
<img alt="Modifica" src="@Url.Content("~/assets/images/icons8-modificare-64.png")" style="width:30px;height:30px;">
</a>
|
<a href="@Url.Action("Details", "Tecnici", new { id=item.tccodice })" title="Dettaglio" class="links">
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
</a>
|
<a href="@Url.Action("Delete", "Tecnici", new { id=item.tccodice })" title="Elimina" class="links">
<img alt="Elimina" src="@Url.Content("~/assets/images/icons8-elimina-50.png")" style="width:30px;height:30px;">
</a>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString=@ViewData["CurrentFilter"] }), new PagedListRenderOptions()

View File

@ -16,7 +16,45 @@
<div class="row"> <div class="row">
@using (Html.BeginForm("Index", "Timbrature")) @using (Html.BeginForm("Index", "Timbrature"))
{ {
<div> <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">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>
&nbsp;
</td>
</tr>
<tr>
<td>
<i class="bx bxl-angular bx-sm text-black me-3">Commessa:</i>
<span class="fw-medium">@Html.DropDownList("commessa", ViewBag.Timbrature, null, new { @class = "agy-form-field require" })</span>
</td>
<td>
<i class="bx bxl-angular bx-sm text-black me-3">Tecnico:</i>
<span class="fw-medium">@Html.TextBox("tecnico", null, new { placeholder = "", @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>
<div style="float:left;width:40%;padding:0 20px;"> <div style="float:left;width:40%;padding:0 20px;">
<th><b>Data da:</b></th> <th><b>Data da:</b></th>
@ -38,76 +76,111 @@
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
<div style="float:left;width:2%;">&nbsp;</div> <div style="float:left;width:2%;">&nbsp;</div>
</div> </div> *@
} }
<div style="width:100%;height:30px;">
&nbsp;
</div>
@* <br>
<br> <br>
<br> <br> *@
<br>
@using (Html.BeginForm("ExportExcel", "Timbrature")) @using (Html.BeginForm("ExportExcel", "Timbrature"))
{ {
@Html.Hidden("dataIni", ViewBag.Timbrature, null) <div class="card">
@Html.Hidden("dataFin", ViewBag.Timbrature, null) <h5 class="card-header">Estrai</h5>
@Html.Hidden("commessa", ViewBag.Timbrature, null) <div class="table-responsive text-nowrap">
@Html.Hidden("tecnico", ViewBag.Timbrature, null) <table class="table">
<tbody class="table-border-bottom-0">
<tr>
<td>
@Html.Hidden("dataIni", ViewBag.Timbrature, null)
@Html.Hidden("dataFin", ViewBag.Timbrature, null)
@Html.Hidden("commessa", ViewBag.Timbrature, null)
@Html.Hidden("tecnico", ViewBag.Timbrature, 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="float:left;width:40%;padding:0 20px;"> <div style="float:left;width:40%;padding:0 20px;">
<input type="submit" value="Esporta excel" name="Esporta excel" class="agy-btn submitForm" /> <input type="submit" value="Esporta excel" name="Esporta excel" class="agy-btn submitForm" />
</div> </div> *@
} }
<div style="width:100%;height:30px;">
&nbsp;
</div>
<table class="table">
<thead> <div class="card">
<tr> <h5 class="card-header">Timbrature</h5>
<div class="table-responsive text-nowrap">
<th>Data timbratura</th> <table class="table table-striped">
<th>Ora inizio</th> <thead>
<th>Minuti inizio</th> <tr>
<th>Ora fine</th>
<th>Minuti fine</th> <th>Data timbratura</th>
<th>Commessa</th> <th>Ora inizio</th>
<th>Ore viaggio</th> <th>Minuti inizio</th>
<th>Totale ore</th> <th>Ora fine</th>
<th>Giorno sett.</th> <th>Minuti fine</th>
<th>Tecnico</th> <th>Commessa</th>
<th hidden>Id</th> <th>Ore viaggio</th>
<th hidden>Azienda</th> <th>Totale ore</th>
<th hidden>Note</th> <th>Giorno sett.</th>
</tr> <th>Tecnico</th>
</thead> <th></th>
<tbody> <th hidden>Id</th>
@foreach (var item in Model) <th hidden>Azienda</th>
{ <th hidden>Note</th>
<tr>
</tr>
<td>@Html.DisplayFor(modelItem => item.data_timbratura)</td> </thead>
<td>@Html.DisplayFor(modelItem => item.ora_ini)</td> <tbody>
<td>@Html.DisplayFor(modelItem => item.min_ini)</td> @foreach (var item in Model)
<td>@Html.DisplayFor(modelItem => item.ora_fin)</td> {
<td>@Html.DisplayFor(modelItem => item.min_fin)</td> <tr>
<td>@Html.DisplayFor(modelItem => item.commessa)</td>
<td>@Html.DisplayFor(modelItem => item.ore_viaggio)</td> <td>@Html.DisplayFor(modelItem => item.data_timbratura)</td>
<td>@Html.DisplayFor(modelItem => item.tot_ore)</td> <td>@Html.DisplayFor(modelItem => item.ora_ini)</td>
<td>@Html.DisplayFor(modelItem => item.giorno)</td> <td>@Html.DisplayFor(modelItem => item.min_ini)</td>
<td>@Html.DisplayFor(modelItem => item.tecnico)</td> <td>@Html.DisplayFor(modelItem => item.ora_fin)</td>
<td>@Html.HiddenFor(modelItem => item.id)</td> <td>@Html.DisplayFor(modelItem => item.min_fin)</td>
<td>@Html.HiddenFor(modelItem => item.azienda)</td> <td>@Html.DisplayFor(modelItem => item.commessa)</td>
<td>@Html.HiddenFor(modelItem => item.cpccchk)</td> <td>@Html.DisplayFor(modelItem => item.ore_viaggio)</td>
<td>@Html.HiddenFor(modelItem => item.note)</td> <td>@Html.DisplayFor(modelItem => item.tot_ore)</td>
<td> <td>@Html.DisplayFor(modelItem => item.giorno)</td>
<a href="@Url.Action("Details", "Timbrature", new { id=item.id })" title="Dettaglio" class="links"> <td>@Html.DisplayFor(modelItem => item.tecnico)</td>
<img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;"> <td>@Html.HiddenFor(modelItem => item.id)</td>
</a> <td>@Html.HiddenFor(modelItem => item.azienda)</td>
</td> <td>@Html.HiddenFor(modelItem => item.cpccchk)</td>
</tr> <td>@Html.HiddenFor(modelItem => item.note)</td>
} <td>
</tbody> <a href="@Url.Action("Details", "Timbrature", new { id=item.id })" title="Dettaglio" class="links">
</table> <img alt="Dettaglio" src="@Url.Content("~/assets/images/icons8-visualizza-file-64.png")" style="width:30px;height:30px;">
</a>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
<br /> <br />
<nav> <nav>
@Html.PagedListPager(Model, page => Url.Action("index", new { page = page, searchString = @ViewData["CurrentFilter"] }), new PagedListRenderOptions() @Html.PagedListPager(Model, page => Url.Action("index", new { page = page, commessa=@ViewData["commessa"],
tecnico=@ViewData["tecnico"], dataIni=@ViewData["dataIni"], dataFin=@ViewData["dataFin"]/* searchString = @ViewData["CurrentFilter"] */ }), new PagedListRenderOptions()
{ {
ActiveLiElementClass = "active", ActiveLiElementClass = "active",
PageClasses = new[] { "page-link" }, PageClasses = new[] { "page-link" },

View File

@ -9,7 +9,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="ClosedXML" Version="0.102.1" /> <PackageReference Include="ClosedXML" Version="0.102.1" />
<PackageReference Include="Microsoft.Office.Interop.Excel" Version="15.0.4795.1001" /> <PackageReference Include="Microsoft.Office.Interop.Excel" Version="15.0.4795.1001" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.17" /> <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.18" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="System.Data.SqlClient" Version="4.8.6" /> <PackageReference Include="System.Data.SqlClient" Version="4.8.6" />
<PackageReference Include="X.PagedList.Mvc.Core" Version="8.4.7" /> <PackageReference Include="X.PagedList.Mvc.Core" Version="8.4.7" />

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB