private bool ExtendToChildNodes(string idNodoTitolario, string idRuolo) { bool retValue = true; DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario = new DocsPAWA.DocsPaWR.OrgRuoloTitolario(); ruoloTitolario.ID = idRuolo; ruoloTitolario.Codice = this.hd_codRuolo.Value; ruoloTitolario.Associato = true; AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink(); string idAmm = this.hd_idAmm.Value; string idRegistro = this.getRegistroSelezionato(); DocsPAWA.DocsPaWR.EsitoOperazione esito = ws.AmmExtendToChildNodes(idNodoTitolario, ruoloTitolario, idAmm, idRegistro, true); if (esito.Codice > 0) { this.RegisterClientScript("alertExtend", "alert('" + esito.Descrizione.Replace("'", "\\'") + "');"); retValue = false; } else { this.RegisterClientScript("alertExtend", "alert('Visibilità estesa con successo');"); } this.setBoldNode(retValue); return(retValue); }
private DocsPAWA.DocsPaWR.EsitoOperazione[] ApplyChanges(string idNodo, bool isInsert, bool AllTitolario) { // crea un array perchè il metodo accetta array di oggetti "OrgRuoloTitolario" ArrayList arrayRuoli = new ArrayList(); string idRegistro = this.getRegistroSelezionato(); DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario = new DocsPAWA.DocsPaWR.OrgRuoloTitolario(); ruoloTitolario.ID = this.hd_idGruppo.Value; ruoloTitolario.Codice = this.hd_codRuolo.Value; ruoloTitolario.Associato = isInsert; arrayRuoli.Add(ruoloTitolario); DocsPAWA.DocsPaWR.OrgRuoloTitolario[] ruoliTitolario = new DocsPAWA.DocsPaWR.OrgRuoloTitolario[arrayRuoli.Count]; arrayRuoli.CopyTo(ruoliTitolario); string idAmm = this.hd_idAmm.Value; AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink(); DocsPAWA.DocsPaWR.EsitoOperazione[] retValue = null; if (isInsert) { retValue = ws.AmmUpdateRuoliTitolario(idNodo, idAmm, AllTitolario, ruoliTitolario, null, idRegistro); } else { retValue = ws.AmmUpdateRuoliTitolario(idNodo, idAmm, AllTitolario, null, ruoliTitolario, idRegistro); } return(retValue); }
/// <summary> /// Estende o elimina la visibilità ad un dato ruolo per tutti i nodi figli di un dato nodo di titolario /// </summary> /// <param name="idRuolo"></param> private void ExtendToChildNodes(string idRuolo, bool check) { Hashtable table = this.GetOriginalRuoliTitolario(); if (table.ContainsKey(idRuolo)) { DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario = (DocsPAWA.DocsPaWR.OrgRuoloTitolario)table[idRuolo]; AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink(); string idNodoTitolario = Request.QueryString["ID_NODO_TITOLARIO"]; if (idNodoTitolario.Equals("")) { idNodoTitolario = Request.QueryString["ID_TITOLARIO"]; } string idAmm = AmmUtils.UtilsXml.GetAmmDataSession((string)Session["AMMDATASET"], "3"); string idRegistro = Request.QueryString["ID_REGISTRO"]; DocsPAWA.DocsPaWR.EsitoOperazione esito = ws.AmmExtendToChildNodes(idNodoTitolario, ruoloTitolario, idAmm, idRegistro, check); if (esito.Codice > 0) { this.RegisterClientScript("alertExtend", "alert('" + esito.Descrizione.Replace("'", "\\'") + "');"); } else { this.RegisterClientScript("alertExtend", "alert('Visibilità modificata con successo');"); } } }
private DocsPAWA.DocsPaWR.OrgRuoloTitolario CloneObjRuoloTitolario(DocsPAWA.DocsPaWR.OrgRuoloTitolario originalRuoloTitolario) { DocsPAWA.DocsPaWR.OrgRuoloTitolario retValue = new DocsPAWA.DocsPaWR.OrgRuoloTitolario(); retValue.ID = originalRuoloTitolario.ID; retValue.Codice = originalRuoloTitolario.Codice; retValue.Descrizione = originalRuoloTitolario.Descrizione; retValue.Associato = originalRuoloTitolario.Associato; return(retValue); }
/// <summary> /// Restituzione di un array di oggetti "OrgRuoloTitolario" /// contenente i soli ruoli modificati (inseriti o cancellati) /// </summary> /// <returns></returns> private DocsPAWA.DocsPaWR.OrgRuoloTitolario[] GetChangedRuoliTitolario() { Hashtable originalRuoliTitolario = this.GetOriginalRuoliTitolario(); ArrayList changedRuoli = new ArrayList(); DataGridItemCollection gridItems = this.grdRuoliTitolario.Items; DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario = null; string idRuoloTitolario = string.Empty; bool isChecked = false; foreach (DataGridItem gridItem in gridItems) { CheckBox checkBox = gridItem.Cells[GRIDCOL_GRUPPOASSOCIATO].Controls[0].FindControl("chkRuoloAttivo") as CheckBox; if (checkBox != null) { idRuoloTitolario = gridItem.Cells[GRIDCOL_ID_RUOLO].Text; isChecked = checkBox.Checked; // Viene verificato se l'associazione del ruolo è stata modificata if (originalRuoliTitolario.ContainsKey(idRuoloTitolario)) { ruoloTitolario = (DocsPAWA.DocsPaWR.OrgRuoloTitolario)originalRuoliTitolario[idRuoloTitolario]; // Se il ruolo risulta modificato, viene inserito nell'hashtable if (!ruoloTitolario.Associato.Equals(isChecked)) { ruoloTitolario.Associato = isChecked; changedRuoli.Add(ruoloTitolario); } ruoloTitolario = null; } } } gridItems = null; DocsPAWA.DocsPaWR.OrgRuoloTitolario[] retValue = new DocsPAWA.DocsPaWR.OrgRuoloTitolario[changedRuoli.Count]; changedRuoli.CopyTo(retValue); changedRuoli.Clear(); changedRuoli = null; return(retValue); }
private void UpdateRuoliTitolarioOnSession(DocsPAWA.DocsPaWR.OrgRuoloTitolario[] changedRuoliTitolario, DocsPAWA.DocsPaWR.EsitoOperazione[] ruoliNonAggiornati) { Hashtable htChangedRuoliTitolario = new Hashtable(); foreach (DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario in changedRuoliTitolario) { htChangedRuoliTitolario.Add(Convert.ToInt32(ruoloTitolario.ID), ruoloTitolario); } foreach (DocsPAWA.DocsPaWR.EsitoOperazione item in ruoliNonAggiornati) { if (htChangedRuoliTitolario.ContainsKey(item.Codice)) { DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario = (DocsPAWA.DocsPaWR.OrgRuoloTitolario)htChangedRuoliTitolario[item.Codice]; ruoloTitolario.Associato = !ruoloTitolario.Associato; } } htChangedRuoliTitolario.Clear(); htChangedRuoliTitolario = null; }
/// <summary> /// /// </summary> /// <returns></returns> private DocsPAWA.DocsPaWR.EsitoOperazione[] ApplyChanges() { // Reperimento dei ruoli modificati rispetto ai valori iniziali DocsPAWA.DocsPaWR.OrgRuoloTitolario[] changedRuoliTitolario = null; DocsPAWA.DocsPaWR.OrgRuoloTitolario[] changedRuoliTitolarioDisattivati = null; bool confermaCancellazione = false; string idAmm = AmmUtils.UtilsXml.GetAmmDataSession((string)Session["AMMDATASET"], "3"); string idRegistro = Request.QueryString["ID_REGISTRO"]; // Aggiornamento dei dati su database AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink(); bool AllTitolario = false; string idDaValutare = ""; if (Request.QueryString["ID_NODO_TITOLARIO"] == "") { AllTitolario = true; idDaValutare = Request.QueryString["ID_TITOLARIO"]; ArrayList ruoliAttivati = new ArrayList(); ArrayList ruoliDisattivati = new ArrayList(); DocsPAWA.DocsPaWR.OrgRuoloTitolario ruoloTitolario = null; Hashtable originalRuoliTitolario = this.GetOriginalRuoliTitolario(); for (int j = 0; j < this.grdRuoliTitolario.Items.Count; j++) { string idRuoloTitolario = this.grdRuoliTitolario.Items[j].Cells[GRIDCOL_ID_RUOLO].Text; // Viene verificato se l'associazione del ruolo è stata modificata if (originalRuoliTitolario.ContainsKey(idRuoloTitolario)) { ruoloTitolario = (DocsPAWA.DocsPaWR.OrgRuoloTitolario)originalRuoliTitolario[idRuoloTitolario]; if (((CheckBox)this.grdRuoliTitolario.Items[j].Cells[5].Controls[1]).Checked) { ruoliAttivati.Add(ruoloTitolario); } else if (((CheckBox)this.grdRuoliTitolario.Items[j].Cells[6].Controls[1]).Checked) { ruoliDisattivati.Add(ruoloTitolario); } ruoloTitolario = null; } } if (ruoliAttivati.Count > 0) { changedRuoliTitolario = new DocsPAWA.DocsPaWR.OrgRuoloTitolario[ruoliAttivati.Count]; ruoliAttivati.CopyTo(changedRuoliTitolario); ruoliAttivati.Clear(); ruoliAttivati = null; } if (ruoliDisattivati.Count > 0) { changedRuoliTitolarioDisattivati = new DocsPAWA.DocsPaWR.OrgRuoloTitolario[ruoliDisattivati.Count]; ruoliDisattivati.CopyTo(changedRuoliTitolarioDisattivati); ruoliDisattivati.Clear(); ruoliDisattivati = null; } } else { idDaValutare = Request.QueryString["ID_NODO_TITOLARIO"]; changedRuoliTitolario = this.GetChangedRuoliTitolario(); } DocsPAWA.DocsPaWR.EsitoOperazione[] retValue = null; retValue = ws.AmmUpdateRuoliTitolario(idDaValutare, idAmm, AllTitolario, changedRuoliTitolario, changedRuoliTitolarioDisattivati, idRegistro); if (!AllTitolario) { this.UpdateRuoliTitolarioOnSession(changedRuoliTitolario, retValue); } return(retValue); }