コード例 #1
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        protected void btn_find_Click(object sender, EventArgs e)
        {
            if (ddl_ricTipo.SelectedValue != "SEL")
            {
                SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione = tipoFunzione = new SAAdminTool.DocsPaWR.OrgTipoFunzione();


                switch (ddl_ricTipo.SelectedIndex)
                {
                case 2:
                    if (!string.IsNullOrEmpty(txt_ricerca.Text))
                    {
                        tipoFunzione.Codice = txt_ricerca.Text;
                    }
                    break;

                case 3:
                    if (!string.IsNullOrEmpty(txt_ricerca.Text))
                    {
                        tipoFunzione.Descrizione = txt_ricerca.Text;
                    }
                    break;
                }


                FillListFunzioni(tipoFunzione.Funzioni);
            }
            else
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "selezionaRic", "javascript:alert('Selezionare un tipo di Ricerca');", true);
            }
        }
コード例 #2
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Aggiornamento del tipo funzione dai dati dei campi della UI
        /// </summary>
        private void RefreshTipoFunzioneFromUI(SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
        {
            string idAmm = AmmUtils.UtilsXml.GetAmmDataSession((string)Session["AMMDATASET"], "3");

            tipoFunzione.IDTipoFunzione    = this.CurrentIDTipoFunzione;
            tipoFunzione.IDAmministrazione = idAmm;//string.Empty;
            tipoFunzione.Codice            = this.txt_codice.Text.Trim();
            tipoFunzione.Descrizione       = this.txt_descrizione.Text.Trim();

            this.RefreshFunzioniFromUI(tipoFunzione);
        }
コード例 #3
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Aggiornamento elemento datagrid dei tipi funzione corrente
        /// </summary>
        /// <param name="registro"></param>
        private void RefreshTipoFunzioneGridItem(SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
        {
            DataGridItem item = this.dg_macroFunzioni.SelectedItem;

            if (item != null)
            {
                item.Cells[GRID_TIPI_FUNZIONE_COL_DESCRIZIONE].Text = tipoFunzione.Descrizione;
                item.Cells[GRID_TIPI_FUNZIONE_COL_CODICE].Text      = tipoFunzione.Codice;
                item.Cells[GRID_TIPI_FUNZIONE_COL_ID].Text          = tipoFunzione.IDTipoFunzione;
            }
        }
コード例 #4
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Aggiornamento di un tipo funzione
        /// </summary>
        /// <param name="tipoRuolo"></param>
        /// <returns></returns>
        private SAAdminTool.DocsPaWR.ValidationResultInfo UpdateTipoFunzione(ref SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
        {
            SAAdminTool.DocsPaWR.ValidationResultInfo canUpdate = this.CanSaveFunction(ref tipoFunzione);

            AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink();

            if (canUpdate.Value)
            {
                return(ws.UpdateTipoFunzione(ref tipoFunzione));
            }
            else
            {
                return(canUpdate);
            }
        }
コード例 #5
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Salvataggio dati del tipo ruolo corrente
        /// </summary>
        private void Save()
        {
            SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione = new SAAdminTool.DocsPaWR.OrgTipoFunzione();
            this.RefreshTipoFunzioneFromUI(tipoFunzione);

            SAAdminTool.DocsPaWR.ValidationResultInfo result = null;

            bool insertMode = this.OnInsertMode();

            if (insertMode)
            {
                result = this.InsertTipoFunzione(ref tipoFunzione);
            }
            else
            {
                result = this.UpdateTipoFunzione(ref tipoFunzione);
            }

            if (!result.Value)
            {
                this.ShowValidationMessage(result);
            }
            else if (!insertMode)
            {
                // Aggiornamento
                this.RefreshTipoFunzioneGridItem(tipoFunzione);

                this.ClearData();

                this.pnl_info.Visible = false;
                this.lbl_cod.Visible  = true;

                this.dg_macroFunzioni.SelectedIndex = -1;
            }
            else
            {
                // Inserimento
                this.lbl_cod.Visible = true;

                // Refresh lista tipi funzione
                this.FillListTipiFunzione();

                // Predisposizione per un nuovo inserimento
                this.SetInsertMode();
            }
        }
コード例 #6
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Aggiornamento di tutte le singole funzioni dai dati dei campi della UI
        /// </summary>
        /// <param name="tipoFunzione"></param>
        private void RefreshFunzioniFromUI(SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
        {
            ArrayList funzioni = new ArrayList();
            string    idAmm    = AmmUtils.UtilsXml.GetAmmDataSession((string)Session["AMMDATASET"], "3");

            foreach (DataGridItem item in this.dg_funzioni.Items)
            {
                // Reperimento funzione elementare
                SAAdminTool.DocsPaWR.OrgFunzione funzione = this.CreateFunzioneFromGridItem(tipoFunzione.IDTipoFunzione, item);
                funzione.IDAmministrazione = idAmm;
                // Aggiornamento solamente se lo stato è diverso da non modificato
                //if (funzione.StatoFunzione!=DocsPaWR.StatoOrgFunzioneEnum.Unchanged)
                funzioni.Add(funzione);
            }

            tipoFunzione.Funzioni = (SAAdminTool.DocsPaWR.OrgFunzione[])funzioni.ToArray(typeof(SAAdminTool.DocsPaWR.OrgFunzione));
        }
コード例 #7
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Associazione dati del tipo funzione ai campi della UI
        /// </summary>
        /// <param name="tipoRuolo"></param>
        private void BindUI(SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
        {
            this.ClearData();

            this.CurrentIDTipoFunzione = tipoFunzione.IDTipoFunzione;

            this.pnl_info.Visible     = true;
            this.btn_aggiungi.Text    = "Modifica";
            this.txt_codice.Text      = tipoFunzione.Codice;
            this.txt_codice.Visible   = false;
            this.lbl_cod.Visible      = true;
            this.lbl_cod.Text         = this.txt_codice.Text;
            this.txt_descrizione.Text = tipoFunzione.Descrizione;
            this.SetFocus(this.btn_find);
            // Caricamento lista microfunzioni associate al tipo funzione
            this.FillListFunzioni(tipoFunzione.Funzioni);
            // this.SetFocus(this.btn_aggiungi);
        }
コード例 #8
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Metodo utilizzato per verificare se è possibile creare o apportare modifiche ad una macrofunzione.
        /// Una macrofunzione è modificabile solo se c'è almeno una microfunzione associata
        /// </summary>
        /// <param name="tipoFunzione"></param>
        /// <returns></returns>
        private SAAdminTool.DocsPaWR.ValidationResultInfo CanSaveFunction(ref SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
        {
            SAAdminTool.DocsPaWR.ValidationResultInfo retVal = new SAAdminTool.DocsPaWR.ValidationResultInfo();
            retVal.Value = true;

            if (this.ddl_ricTipo.SelectedIndex < 2)
            {
                retVal.Value = tipoFunzione.Funzioni.Count(f => f.Associato == true) > 0;
            }
            if (!retVal.Value)
            {
                retVal.BrokenRules = new SAAdminTool.DocsPaWR.BrokenRule[] { new SAAdminTool.DocsPaWR.BrokenRule()
                                                                             {
                                                                                 Description = "Associare almeno una funzione elementare al tipo funzione", Level = SAAdminTool.DocsPaWR.BrokenRuleLevelEnum.Error, ID = "FUNZIONI_MANCANTI"
                                                                             } }
            }
            ;

            return(retVal);
        }
コード例 #9
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        /// <summary>
        /// Cancellazione tipo funzione
        /// </summary>
        private void Delete()
        {
            SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione = new SAAdminTool.DocsPaWR.OrgTipoFunzione();
            this.RefreshTipoFunzioneFromUI(tipoFunzione);

            SAAdminTool.DocsPaWR.ValidationResultInfo result = this.DeleteTipoFunzione(ref tipoFunzione);

            if (result.Value)
            {
                this.FillListTipiFunzione();

                this.pnl_info.Visible = false;

                this.ClearData();

                this.dg_macroFunzioni.SelectedIndex = -1;
            }
            else
            {
                this.ShowValidationMessage(result);
            }
        }
コード例 #10
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
        private void dg_macroFunzioni_ItemCommand(object source, DataGridCommandEventArgs e)
        {
            resetFiltriricerca();

            if (e.CommandName.Equals("Select"))
            {
                this.dg_funzioni.Visible = true;
                this.RegisterScrollKeeper("divGridFunzioni");

                SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione = this.GetTipoFunzione(e.Item.Cells[GRID_TIPI_FUNZIONE_COL_ID].Text);
                //ViewState["tipoFunzione"] = tipoFunzione;
                ViewState.Add("tipoFunzione", tipoFunzione);
                this.BindUI(tipoFunzione);
            }
            else if (e.CommandName.Equals("Delete"))
            {
                this.dg_macroFunzioni.SelectedIndex = e.Item.ItemIndex;
                this.CurrentIDTipoFunzione          = this.dg_macroFunzioni.SelectedItem.Cells[GRID_TIPI_FUNZIONE_COL_ID].Text;

                this.Delete();
            }
        }
コード例 #11
0
ファイル: TipiFunzione.aspx.cs プロジェクト: sebbalex/PITre
 /// <summary>
 /// Cancellazione di un tipo funzione
 /// </summary>
 /// <param name="tipoRuolo"></param>
 /// <returns></returns>
 private SAAdminTool.DocsPaWR.ValidationResultInfo DeleteTipoFunzione(ref SAAdminTool.DocsPaWR.OrgTipoFunzione tipoFunzione)
 {
     AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink();
     return(ws.DeleteTipoFunzione(tipoFunzione));
 }