private bool controllaStatiInizialiFinali(DocsPaWR.DiagrammaStato diagramma) { if (lbl_statiIniziali.Text != "" && lbl_statiFinali.Text != "" && diagramma != null) { ArrayList stati_Iniziali = new ArrayList(); ArrayList statiFinali = new ArrayList(); for (int i = 0; i < diagramma.STATI.Length; i++) { DocsPaWR.Stato st = (DocsPaWR.Stato)diagramma.STATI[i]; if (st.STATO_INIZIALE) { stati_Iniziali.Add(st); } if (st.STATO_FINALE) { statiFinali.Add(st); } } for (int j = 0; j < stati_Iniziali.Count; j++) { DocsPaWR.Stato stApp_1 = (DocsPaWR.Stato)stati_Iniziali[j]; for (int k = 0; k < statiFinali.Count; k++) { DocsPaWR.Stato stApp_2 = (DocsPaWR.Stato)statiFinali[k]; if (stApp_2.DESCRIZIONE.Trim().ToUpper() == stApp_1.DESCRIZIONE.Trim().ToUpper()) { return(true); } } } } return(false); }
private void dg_listaDiagrammi_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { int elSelezionato = (dg_listaDiagrammi.CurrentPageIndex * dg_listaDiagrammi.PageSize) + e.Item.ItemIndex; DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)listaDiagrammi[elSelezionato]; Session.Add("DiagrammaStato", dg); //Diagramma non cacellabile //if(dg.ID_TIPO_ATTO != 0) if (!DiagrammiManager.isModificabile(dg.SYSTEM_ID, this)) { RegisterStartupScript("scriptModDiagramma", "<script>alert('Il diagramma non può essere eliminato, è necessario disassociarlo dalla tipologia di documento !'); </script>"); dg_listaDiagrammi.SelectedIndex = -1; Panel_GestioneStati.Visible = false; Panel_ListaPassi.Visible = false; btn_salva.Visible = false; return; } //Diagramma cancellabile else { DiagrammiManager.delDiagramma(dg, this); listaDiagrammi = DiagrammiManager.getDiagrammi(idAmministrazione, this); dg_listaDiagrammi.CurrentPageIndex = 0; caricaDgListaDiagrammi(); Panel_GestioneStati.Visible = false; Panel_ListaPassi.Visible = false; btn_salva.Visible = false; dg_listaDiagrammi.SelectedIndex = -1; } }
private void dg_listaDiagrammi_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { if (e.CommandName.ToUpper().Equals("VISIBILITA")) { int elSelezionato = (dg_listaDiagrammi.CurrentPageIndex * dg_listaDiagrammi.PageSize) + e.Item.ItemIndex; DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)listaDiagrammi[elSelezionato]; Session.Add("DiagrammaStato", dg); string s = "<SCRIPT language='javascript'>ApriPopupVisibilita(); </SCRIPT>"; RegisterStartupScript("popupVis", s); } }
private bool verificaStatoPadre(string statoPadre) { DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.PASSI != null) { for (int i = 0; i < dg.PASSI.Length; i++) { DocsPaWR.Passo step = (SAAdminTool.DocsPaWR.Passo)dg.PASSI[i]; if (step.STATO_PADRE.DESCRIZIONE == statoPadre) { return(true); } } } return(false); }
private void modificaStato(string nomeNuovo, string nomeVecchio) { if (Session["DiagrammaStato"] != null) { DocsPaWR.DiagrammaStato dg = (DocsPAWA.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { for (int i = 0; i < dg.STATI.Length; i++) { if (nomeVecchio == ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).DESCRIZIONE) { ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).DESCRIZIONE = nomeNuovo; ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).STATO_INIZIALE = cb_statoIniziale.Checked; ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).CONVERSIONE_PDF = cb_convertiInPdf.Checked; ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).STATO_CONSOLIDAMENTO = (DocsPaWR.DocumentConsolidationStateEnum)Enum.Parse(typeof(DocsPaWR.DocumentConsolidationStateEnum), cb_consolidamento.SelectedValue, true); ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).NON_RICERCABILE = cb_statoNonRicercabile.Checked; ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).STATO_SISTEMA = cbxTransactionSystem.Checked; ((DocsPAWA.DocsPaWR.Stato)dg.STATI[i]).ID_PROCESSO_FIRMA = this.DdlProcessoFirma.SelectedValue; } if (dg.PASSI != null) { for (int j = 0; j < dg.PASSI.Length; j++) { DocsPaWR.Passo step = (DocsPAWA.DocsPaWR.Passo)dg.PASSI[j]; if (nomeVecchio == step.STATO_PADRE.DESCRIZIONE) { ((DocsPAWA.DocsPaWR.Passo)dg.PASSI[j]).STATO_PADRE.DESCRIZIONE = nomeNuovo; } if (step.SUCCESSIVI != null) { for (int k = 0; k < step.SUCCESSIVI.Length; k++) { if (nomeVecchio == ((DocsPAWA.DocsPaWR.Stato)step.SUCCESSIVI[k]).DESCRIZIONE) { ((DocsPAWA.DocsPaWR.Stato)((DocsPAWA.DocsPaWR.Passo)dg.PASSI[j]).SUCCESSIVI[k]).DESCRIZIONE = nomeNuovo; } } } } } } } Session.Add("DiagrammaStato", dg); } }
private ArrayList trovaStatiIniziali() { //E' uno stato Iniziale, uno stato che non è mai usato come successivo ArrayList statiIniziali = new ArrayList(); DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { for (int i = 0; i < dg.STATI.Length; i++) { DocsPaWR.Stato st = (SAAdminTool.DocsPaWR.Stato)dg.STATI[i]; bool resultIniziale = true; if (dg.PASSI != null) { for (int j = 0; j < dg.PASSI.Length; j++) { DocsPaWR.Passo step = (SAAdminTool.DocsPaWR.Passo)dg.PASSI[j]; if (step.SUCCESSIVI != null) { for (int k = 0; k < step.SUCCESSIVI.Length; k++) { if (st.DESCRIZIONE == ((SAAdminTool.DocsPaWR.Stato)step.SUCCESSIVI[k]).DESCRIZIONE) { resultIniziale = false; } } } } } if (resultIniziale) { statiIniziali.Add(st); ((SAAdminTool.DocsPaWR.Stato)dg.STATI[i]).STATO_INIZIALE = true; } else { ((SAAdminTool.DocsPaWR.Stato)dg.STATI[i]).STATO_INIZIALE = false; } } } return(statiIniziali); }
private void dg_listaPassi_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { int oggettoSelezionato = (dg_listaPassi.CurrentPageIndex * dg_listaPassi.PageSize) + e.Item.ItemIndex; DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; string statoIniziale = ((SAAdminTool.DocsPaWR.Passo)dg.PASSI[oggettoSelezionato]).STATO_PADRE.DESCRIZIONE; //string statoIniziale = dg_listaPassi.Items[oggettoSelezionato].Cells[0].Text; if (dg.PASSI != null) { for (int i = 0; i < dg.PASSI.Length; i++) { DocsPaWR.Passo step = (SAAdminTool.DocsPaWR.Passo)dg.PASSI[i]; if (step.STATO_PADRE.DESCRIZIONE == statoIniziale) { rimuoviPasso(i); } } } Session.Add("DiagrammaStato", dg); if (dg_listaPassi.Items.Count == 0) { Panel_ListaPassi.Visible = false; } else { dg_listaPassi.CurrentPageIndex = 0; } caricaDgListaPassi(); dg_listaPassi.Columns[2].Visible = true; dg_listaPassi.Columns[3].Visible = true; //Imposta le label che indicano istantaneamente quali sono gli stati iniziali e finali //del diagramma che si sta costruendo, avvalendosi delle funzioni: //"trovaStatoIniziale" - "trovaStatoFinale" //settaStatiIniziali(trovaStatiIniziali()); settaStatiFinali(trovaStatiFinali()); btn_modPasso.Visible = false; btn_addStep.Visible = true; }
public void caricaDgListaDiagrammi() { DataTable dt = new DataTable(); dt.Columns.Add("System_id"); dt.Columns.Add("Nome diagramma"); for (int i = 0; i < listaDiagrammi.Count; i++) { DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)listaDiagrammi[i]; DataRow dr = dt.NewRow(); dr["System_id"] = dg.SYSTEM_ID; dr["Nome diagramma"] = dg.DESCRIZIONE; dt.Rows.Add(dr); } dg_listaDiagrammi.DataSource = dt; dg_listaDiagrammi.DataBind(); }
private void btn_modStato_Click(object sender, System.EventArgs e) { if (Session["DiagrammaStato"] != null) { DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; foreach (SAAdminTool.DocsPaWR.Stato st in dg.STATI) { if ((st.SYSTEM_ID.ToString() == ddl_stati.SelectedValue) || (st.DESCRIZIONE == ddl_stati.SelectedItem.Text)) { Session.Add("statoDaModificare", st); ClientScript.RegisterStartupScript(this.GetType(), "gestioneStato", "apriPopupGestioneStato();", true); } } } dg_listaPassi.SelectedIndex = -1; btn_modPasso.Visible = false; btn_addStep.Visible = true; }
private void dg_listaDiagrammi_SelectedIndexChanged(object sender, System.EventArgs e) { int elSelezionato = (dg_listaDiagrammi.CurrentPageIndex * dg_listaDiagrammi.PageSize) + dg_listaDiagrammi.SelectedIndex; //Controllo se il diagramma puo' essere modificato o meno //a seconda se associato o no ad un tipo documento. //Verifico quindi la valorizzazione della proprietà "TIPO_DOCUMENTO". DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)listaDiagrammi[elSelezionato]; Session.Add("DiagrammaStato", dg); Panel_ListaDiagrammi.Visible = false; dg_listaDiagrammi.SelectedIndex = -1; Panel_GestioneStati.Visible = true; btn_nuovoDiagr.Visible = false; btn_salva.Visible = true; txt_descrizione.Text = dg.DESCRIZIONE; lbox_stati1.Items.Clear(); lbox_stati2.Items.Clear(); ddl_statiAutomatici.Items.Clear(); /* * ddl_stati.Items.Clear(); * for(int i=0; i<dg.STATI.Length; i++) * { * DocsPaWR.Stato st = (SAAdminTool.DocsPaWR.Stato) dg.STATI[i]; * ListItem li = new ListItem(); * li.Value = Convert.ToString(st.SYSTEM_ID); * li.Text = st.DESCRIZIONE; * ddl_stati.Items.Add(li); * //ddl_stati.Items.Add( ((SAAdminTool.DocsPaWR.Stato) dg.STATI[i]).DESCRIZIONE); * } */ caricaDdlStati(); //settaStatiIniziali(trovaStatiIniziali()); settaStatiInizialiNew(); settaStatiFinali(trovaStatiFinali()); caricaDgListaPassi(); dg_listaPassi.Columns[2].Visible = true; dg_listaPassi.Columns[3].Visible = true; Panel_ListaPassi.Visible = true; lbl_titolo.Text = "Gestione Diagramma di stato"; }
private bool verificaEistenzaStato(string nomeStato) { if (Session["DiagrammaStato"] != null) { DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { for (int i = 0; i < dg.STATI.Length; i++) { DocsPaWR.Stato st = (SAAdminTool.DocsPaWR.Stato)dg.STATI[i]; if (st.DESCRIZIONE == txt_descrizioneStato.Text) { return(true); } } } } return(false); }
private void settaStatiInizialiNew() { DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { lbl_statiIniziali.Text = ""; for (int i = 0; i < dg.STATI.Length; i++) { if (dg.STATI[i].STATO_INIZIALE) { lbl_statiIniziali.Text += dg.STATI[i].DESCRIZIONE + " - "; } } if (lbl_statiIniziali.Text != "") { lbl_statiIniziali.Text = lbl_statiIniziali.Text.Substring(0, lbl_statiIniziali.Text.Length - 2); } lbox_stati1.SelectedIndex = -1; } }
private ArrayList trovaStatiFinali() { //E' uno stato Finale, uno stato senza stati successivi ArrayList statiFinali = new ArrayList(); DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { for (int i = 0; i < dg.STATI.Length; i++) { DocsPaWR.Stato st = (SAAdminTool.DocsPaWR.Stato)dg.STATI[i]; bool resultFinale = true; if (dg.PASSI != null) { for (int j = 0; j < dg.PASSI.Length; j++) { DocsPaWR.Passo step = (SAAdminTool.DocsPaWR.Passo)dg.PASSI[j]; if (st.DESCRIZIONE == step.STATO_PADRE.DESCRIZIONE) { resultFinale = false; } } } if (resultFinale) { statiFinali.Add(st); ((SAAdminTool.DocsPaWR.Stato)dg.STATI[i]).STATO_FINALE = true; } else { ((SAAdminTool.DocsPaWR.Stato)dg.STATI[i]).STATO_FINALE = false; } } } return(statiFinali); }
public void caricaDgListaPassi() { DataTable dt = new DataTable(); dt.Columns.Add("Stato"); dt.Columns.Add("Stati Successivi"); DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.PASSI != null) { for (int i = 0; i < dg.PASSI.Length; i++) { DataRow dr = dt.NewRow(); DocsPaWR.Passo step = (SAAdminTool.DocsPaWR.Passo)dg.PASSI[i]; dr["Stato"] = step.STATO_PADRE.DESCRIZIONE; string statiSuccessivi = ""; if (step.SUCCESSIVI != null) { for (int j = 0; j < step.SUCCESSIVI.Length; j++) { statiSuccessivi += ((SAAdminTool.DocsPaWR.Stato)step.SUCCESSIVI[j]).DESCRIZIONE + " - "; } statiSuccessivi = statiSuccessivi.Substring(0, statiSuccessivi.Length - 2); dr["Stati Successivi"] = statiSuccessivi; dt.Rows.Add(dr); } } } dg_listaPassi.DataSource = dt; dg_listaPassi.DataBind(); dg_listaPassi.SelectedIndex = -1; Panel_ListaPassi.Visible = true; }
private void setLbxStati1(SAAdminTool.DocsPaWR.Stato st, SAAdminTool.DocsPaWR.Stato[] successivi /*ArrayList successivi*/) { lbox_stati1.Items.Clear(); DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { for (int i = 0; i < dg.STATI.Length; i++) { lbox_stati1.Items.Add(((SAAdminTool.DocsPaWR.Stato)dg.STATI[i]).DESCRIZIONE); } } for (int i = 0; i < lbox_stati1.Items.Count; i++) { if (lbox_stati1.Items[i].Text == st.DESCRIZIONE) { lbox_stati1.Items.RemoveAt(i); } } if (successivi != null) { for (int i = 0; i < successivi.Length; i++) { DocsPaWR.Stato stApp = (SAAdminTool.DocsPaWR.Stato)successivi[i]; for (int j = 0; j < lbox_stati1.Items.Count; j++) { if (stApp.DESCRIZIONE == lbox_stati1.Items[j].Text) { lbox_stati1.Items.RemoveAt(j); } } } } }
private void caricaDdlStati() { if (Session["DiagrammaStato"] != null) { DocsPaWR.DiagrammaStato dg = (SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]; if (dg.STATI != null) { int elSelezionato = ddl_stati.SelectedIndex; ddl_stati.Items.Clear(); for (int i = 0; i < dg.STATI.Length; i++) { DocsPaWR.Stato st = (SAAdminTool.DocsPaWR.Stato)dg.STATI[i]; ListItem li = new ListItem(); if (st.SYSTEM_ID != 0) { li.Value = Convert.ToString(st.SYSTEM_ID); } li.Text = st.DESCRIZIONE; ddl_stati.Items.Add(li); } ddl_stati.SelectedIndex = elSelezionato; } } }
private void impostaTitolo() { DocsPaWR.DiagrammaStato diagramma = DiagrammiManager.getDiagrammaById(idDiagramma, this.Page); lbl_titolo.Text = "Diagramma : - " + diagramma.DESCRIZIONE + " - STATO : " + (from s in diagramma.STATI where s.SYSTEM_ID.ToString().Equals(idStato) select s.DESCRIZIONE).First(); }
public void BindGrid(DocsPAWA.DocsPaWR.InfoDocumento[] infos) { DocsPaWR.InfoDocumento currentDoc; if (infos != null && infos.Length > 0) { this.SetMittDestColumnHeader(); //Costruisco il datagrid Dg_elem = new ArrayList(); string descrDoc = string.Empty; int numProt = new Int32(); for (int i = 0; i < infos.Length; i++) { currentDoc = ((DocsPAWA.DocsPaWR.InfoDocumento)infos[i]); string dataApertura = ""; if (currentDoc.dataApertura != null && currentDoc.dataApertura.Length > 0) { dataApertura = currentDoc.dataApertura.Substring(0, 10); } if (currentDoc.numProt != null) { numProt = Int32.Parse(currentDoc.numProt); } else { numProt = Int32.Parse(currentDoc.docNumber); } descrDoc = numProt.ToString(); descrDoc = descrDoc + "\n" + dataApertura; string MittDest = ""; if (currentDoc.mittDest != null && currentDoc.mittDest.Length > 0) { for (int g = 0; g < currentDoc.mittDest.Length; g++) { MittDest += currentDoc.mittDest[g] + " - "; } if (currentDoc.mittDest.Length > 0) { MittDest = MittDest.Substring(0, MittDest.Length - 3); } } string newEtichetta = getEtichetta(currentDoc.tipoProto); Dg_elem.Add(new Cols(descrDoc, currentDoc.oggetto, MittDest, newEtichetta, currentDoc.codRegistro, i, currentDoc.segnatura)); } this.DataGrid1.DataSource = Dg_elem; this.DataGrid1.DataBind(); string message = ""; int retValue; DocsPaWR.SchedaDocumento doc = DocumentManager.getDettaglioDocumento(this.Page, sys, sys); DocsPaWR.DiagrammaStato dg = null; // PALUMBO: se sono documenti tipizzati devo verificare se hanno diagrammi associati if (doc != null && doc.tipologiaAtto != null) { dg = DocsPAWA.DiagrammiManager.getDgByIdTipoDoc(doc.tipologiaAtto.systemId, (UserManager.getInfoUtente(this)).idAmministrazione, this); //PALUMBO: se hanno diagrammi associati verifico lo stato attuale if (dg != null && doc.docNumber != null && doc.docNumber != "") { DocsPaWR.Stato stato = DocsPAWA.DiagrammiManager.getStatoDoc(doc.docNumber, this); //PALUMBO: se lo stato è finale non consento la cancellazione della concatenazione presente if ((stato != null) && (stato.STATO_FINALE)) { for (int i = 0; i < infos.Length; i++) { currentDoc = ((DocsPAWA.DocsPaWR.InfoDocumento)infos[i]); ((ImageButton)this.DataGrid1.Items[i].Cells[7].Controls[1]).Visible = false; } } //PALUMBO: se lo stato NON è finale consento la cancellazione della concatenazione presente se verificaACL da OK (logica pre-esistente) else { for (int i = 0; i < infos.Length; i++) { currentDoc = ((DocsPAWA.DocsPaWR.InfoDocumento)infos[i]); retValue = DocumentManager.verificaACL("D", currentDoc.docNumber, UserManager.getInfoUtente(), out message); if (retValue == 0) { ((ImageButton)this.DataGrid1.Items[i].Cells[7].Controls[1]).Visible = false; } } } } } // PALUMBO: se sono Documenti non tipizzati (logica pre-esistente) else if (doc != null && doc.tipologiaAtto == null) { for (int i = 0; i < infos.Length; i++) { currentDoc = ((DocsPAWA.DocsPaWR.InfoDocumento)infos[i]); retValue = DocumentManager.verificaACL("D", currentDoc.docNumber, UserManager.getInfoUtente(), out message); if (retValue == 0) { ((ImageButton)this.DataGrid1.Items[i].Cells[7].Controls[1]).Visible = false; } } } else { this.lbl_message.Text = "Documenti non trovati"; this.DataGrid1.Visible = false; this.lbl_message.Visible = true; } } }