diff --git a/Controllers/AnagController.cs b/Controllers/AnagController.cs index c435da9..2b931d4 100644 --- a/Controllers/AnagController.cs +++ b/Controllers/AnagController.cs @@ -182,7 +182,7 @@ namespace VirtualTask.Controllers var codcli = model.ancodice.Substring(model.ancodice.Length - 6, 6); anagCommImp.imp = impianto; anagCommImp.imp.imcodimp = "IMP_" + codcli; - anagCommImp.imp.imdescri = "IMP_GEN_" + codcli; + anagCommImp.imp.imdescri = "IMP_" + model.andescri.Trim() + "_" + codcli; anagCommImp.imp.imultcli = model.ancodice; anagCommImp.imp.imindiri2 = model.anindiri; @@ -192,7 +192,7 @@ namespace VirtualTask.Controllers anagCommImp.comm = commessa; anagCommImp.comm.laserial = GetNewSerialeComm(); anagCommImp.comm.lacodcom = "COM_" + model.ancodice.Substring(model.ancodice.Length - 6, 6); - anagCommImp.comm.ladeslav = "COMM_GEN_" + model.ancodice; + anagCommImp.comm.ladeslav = "COMM_" + model.andescri + "_" + model.ancodice; anagCommImp.comm.lacodcli = model.ancodice; anagCommImp.comm.lacodimp = anagCommImp.imp.imcodimp; anagCommImp.comm.lacomgen = "S"; diff --git a/Controllers/ChiamateController.cs b/Controllers/ChiamateController.cs index 98f056b..fd438cd 100644 --- a/Controllers/ChiamateController.cs +++ b/Controllers/ChiamateController.cs @@ -35,7 +35,7 @@ namespace VirtualTask.Controllers #region INDEX - public IActionResult Index(string impianto, string tecnico, DateTime dataIni, DateTime dataFin, string stato, string indirizzo, int? page = 1) + public IActionResult Index(string impianto, string tecnico, string cliente, DateTime dataIni, DateTime dataFin, string stato, string indirizzo, int? page = 1) { SessionHelper helper = new SessionHelper(this); token = helper.GetStringValue("tok"); @@ -63,6 +63,16 @@ namespace VirtualTask.Controllers string data = response.Content.ReadAsStringAsync().Result; modelList = JsonConvert.DeserializeObject>(data); + if (!string.IsNullOrEmpty(cliente)) + { + modelList = modelList.Where(s => s.ancodice != null && s.ancodice.Contains(cliente)).ToList(); + + ViewData["CurrentFilter"] = cliente; + + ViewBag.Clienti = cliente; + } + else + ViewData["CurrentFilter"] = null; if (!string.IsNullOrEmpty(impianto)) { @@ -142,7 +152,7 @@ namespace VirtualTask.Controllers .OrderByDescending(s => s.chnumero) .ToPagedList(page ?? 1, pageSize); - + ViewBag.Clienti = getClienti(cliente); ViewBag.Impianti = getImpianti(impianto); ViewBag.Tecnici = getTecnici(tecnico); ViewBag.StatiChiamata = getStatiChiamata(stato); @@ -496,6 +506,45 @@ namespace VirtualTask.Controllers return img; } + private List getClienti(string cliente) + { + SessionHelper helper = new SessionHelper(this); + token = helper.GetStringValue("tok"); + urlBase = apiUrl + "anagraficheList"; + urlBase = urlBase + "?token=" + token; + Uri baseAddress = new Uri(urlBase); + client = new HttpClient(); + client.BaseAddress = baseAddress; + List selectItems = new List(); + List modelList = new List(); + HttpResponseMessage response = client.GetAsync(baseAddress).Result; + + if (response.IsSuccessStatusCode) + { + string data = response.Content.ReadAsStringAsync().Result; + modelList = JsonConvert.DeserializeObject>(data); + modelList = modelList.Where(x => x.andtobso == null).ToList(); + //per gestire primo elemento tendina (deve essere vuoto) + SelectListItem listItemFirst = new SelectListItem(); + + listItemFirst.Value = string.Empty; + listItemFirst.Text = " - Cliente"; + selectItems.Add(listItemFirst); + + foreach (var item in modelList) + { + SelectListItem listItem = new SelectListItem(); + + string s = item.ancodice + " - " + item.andescri; + listItem.Value = item.ancodice; + listItem.Text = s; + selectItems.Add(listItem); + } + } + + return selectItems; + } + private List getImpianti(string impianto) { SessionHelper helper = new SessionHelper(this); diff --git a/Views/Chiamate/Index.cshtml b/Views/Chiamate/Index.cshtml index 5e48f71..14d6106 100644 --- a/Views/Chiamate/Index.cshtml +++ b/Views/Chiamate/Index.cshtml @@ -78,7 +78,7 @@ Cliente - @Html.DropDownList("tecnico", ViewBag.Tecnici, null, new { @class = "agy-form-field require" }) + @Html.DropDownList("cliente", ViewBag.Clienti, null, new { @class = "agy-form-field require" }) Tecnico diff --git a/Views/Rapp_New/Index.cshtml b/Views/Rapp_New/Index.cshtml index 40d99fb..da2de2d 100644 --- a/Views/Rapp_New/Index.cshtml +++ b/Views/Rapp_New/Index.cshtml @@ -206,9 +206,10 @@ @Html.DisplayFor(modelItem => item.codice_impianto) - + @Html.DisplayFor(modelItem => item.descrizione_intervento) + @Html.DisplayFor(modelItem => item.codice_tecnico)