예제 #1
0
        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);
        }
예제 #2
0
        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);
        }
예제 #3
0
        /// <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');");
                }
            }
        }
예제 #4
0
        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);
        }
예제 #5
0
        /// <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);
        }
예제 #6
0
        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;
        }
예제 #7
0
        /// <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);
        }