示例#1
0
        /// <summary>
        /// Attivazione di un titolario
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool AttivaTitolario(OrgTitolario titolario)
        {
            // Attivazione struttura del titolario nel documentale ETDOCS
            bool saved = this.TitolarioManagerETDOCS.AttivaTitolario(titolario);

            return(saved);
        }
示例#2
0
        /// <summary>
        /// Cancellazione dei metadati generali relativi
        /// all’intera struttura di classificazione dei documenti
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool DeleteTitolario(OrgTitolario titolario)
        {
            bool retValue = true;

            // ... non fa nulla
            return(retValue);
        }
示例#3
0
        public OrgTitolario GetTitolarioAttivo(string idAmministrazione)
        {
            OrgTitolario titolarioAttivo = null;

            try
            {
                OrgTitolario[] titolari = null;
                titolari = (OrgTitolario[])BusinessLogic.Amministrazione.TitolarioManager.getTitolariUtilizzabili(idAmministrazione).ToArray(typeof(OrgTitolario));
                foreach (OrgTitolario ti in titolari)
                {
                    if (ti.Stato.Equals(OrgStatiTitolarioEnum.Attivo))
                    {
                        titolarioAttivo = ti;
                        break;
                    }
                }

                return(titolarioAttivo);
            }
            catch (Exception e)
            {
                logger.Debug("Hermes -  metodo:  GetTitolarioAttivo", e);
                return(null);;
            }
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool DeleteTitolario(OrgTitolario titolario)
        {
            // Cancellazione dati del titolario nel documentale ETDOCS
            bool canceled = this.TitolarioManagerETDOCS.DeleteTitolario(titolario);

            return(canceled);
        }
示例#5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool SaveTitolario(OrgTitolario titolario)
        {
            // Aggiornamento dati del titolario nel documentale ETDOCS
            bool saved = this.TitolarioManagerETDOCS.SaveTitolario(titolario);

            return(saved);
        }
示例#6
0
        /// <summary>
        /// Cancellazione metadati della struttura
        /// di classificazione del titolario
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool DeleteTitolario(OrgTitolario titolario)
        {
            bool deleted = false;

            using (DocsPaDB.Query_DocsPAWS.Amministrazione amm = new DocsPaDB.Query_DocsPAWS.Amministrazione())
            {
                deleted = amm.DeleteTitolario(titolario);
            }
            return(deleted);
        }
示例#7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        protected void ClearAclFascicoliTitolario(OrgTitolario titolario)
        {
            foreach (string idFascicolo in DocsPaQueryHelper.getFascicoliProcedimentaliTitolario(titolario.ID))
            {
                // Reperimento e cancellazione ACL per il fascicolo procedimentale
                CustomServices.AclDefinition aclDefinition = Dfs4DocsPa.getAclDefinition(idFascicolo, ObjectTypes.FASCICOLO, this.InfoUtente);

                this.DeleteAcl(aclDefinition);
            }
        }
示例#8
0
        public static OrgTitolario GetTitolarioObj(string titolarioName, string administrationSyd)
        {
            #region

            // L'oggetto amministrazione a cui richiedere le informazioni sul titolario
            DocsPaDB.Query_DocsPAWS.Amministrazione administration;

            // L'oggetto temporaneo in cui memorizzare le informazioni sul
            // titolario individuato
            OrgTitolario titolarioObject = null;

            #endregion

            // Creazione dell'oggetto amministrazione
            administration = new DocsPaDB.Query_DocsPAWS.Amministrazione();

            // Se titolatio non è valorizzato viene restituito l'id del titolario
            // attivo nell'amministrazione
            if (String.IsNullOrEmpty(titolarioName))
            {
                try
                {
                    titolarioObject = administration.getTitolarioAttivo(administrationSyd);
                }
                catch (Exception e)
                {
                    // Se non si riscono a recuperare le informazioni sul titolatio attivo,
                    // non viene intrapresa alcuna operazione
                }
            }
            else
            {
                // Altrimenti si procede al caricamento del titolario specificato
                try
                {
                    OrgTitolario[] t**s = (OrgTitolario[])administration.getTitolariUtilizzabili(administrationSyd).ToArray(typeof(OrgTitolario));

                    titolarioObject = t**s.Where(e => ((DateTime.Parse(e.DataAttivazione).Year.ToString() == titolarioName) && (e.Stato == OrgStatiTitolarioEnum.Chiuso))).FirstOrDefault();
                }
                catch (Exception e)
                {
                    // Se non si riscono a recuperare le informazioni sul titolatio,
                    // non viene intrapresa alcuna operazione
                }
            }

            // Se l'id del titolario è stato specificato, ne viene
            // restituito l'id altrimenti viene lanciata un'eccezione
            if (titolarioObject == null)
            {
                throw new ImportException("Non è stato possibile ricavare informazioni sul titolario.");
            }

            return(titolarioObject);
        }
示例#9
0
        /// <summary>
        /// Attivazione di un titolario
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool AttivaTitolario(OrgTitolario titolario)
        {
            // Attivazione struttura del titolario nel documentale ETDOCS
            bool saved = this.TitolarioManagerETDOCS.AttivaTitolario(titolario);

            /*
             * if (saved)
             * {
             *  // Attivazione struttura del titolario nel documentale DOCUMENTUM
             *  saved = this.TitolarioManagerDCTM.AttivaTitolario(titolario);
             * }
             */
            return(saved);
        }
示例#10
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool DeleteTitolario(OrgTitolario titolario)
        {
            // Cancellazione dati del titolario nel documentale ETDOCS
            bool canceled = this.TitolarioManagerETDOCS.DeleteTitolario(titolario);

            if (canceled)
            {
                // Se l'inserimento è andato a buon fine,
                // Aggiornamento dati del titolario nel documentale OCS
                canceled = this.TitolarioManagerOCS.DeleteTitolario(titolario);
            }

            return(canceled);
        }
示例#11
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool SaveTitolario(OrgTitolario titolario)
        {
            // Aggiornamento dati del titolario nel documentale ETDOCS
            bool saved = this.TitolarioManagerETDOCS.SaveTitolario(titolario);

            if (saved)
            {
                // Se l'inserimento è andato a buon fine,
                // Aggiornamento dati del titolario nel documentale OCS
                saved = this.TitolarioManagerOCS.SaveTitolario(titolario);
            }

            return(saved);
        }
示例#12
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool DeleteTitolario(OrgTitolario titolario)
        {
            // Cancellazione dati del titolario nel documentale ETDOCS
            bool canceled = this.TitolarioManagerETDOCS.DeleteTitolario(titolario);

            /*
             * if (canceled)
             * {
             *  // Se l'inserimento è andato a buon fine,
             *  // Aggiornamento dati del titolario nel documentale DOCUMENTUM
             *  canceled = this.TitolarioManagerDCTM.DeleteTitolario(titolario);
             * }
             */
            return(canceled);
        }
示例#13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool SaveTitolario(OrgTitolario titolario)
        {
            // Aggiornamento dati del titolario nel documentale ETDOCS
            bool saved = this.TitolarioManagerETDOCS.SaveTitolario(titolario);

            /*
             * if (saved)
             * {
             *  // Se l'inserimento è andato a buon fine,
             *  // Aggiornamento dati del titolario nel documentale DOCUMENTUM
             *  saved = this.TitolarioManagerDCTM.SaveTitolario(titolario);
             * }
             */
            return(saved);
        }
示例#14
0
        /// <summary>
        /// Creazione oggetto titolario
        /// </summary>
        /// <param name="row"></param>
        /// <param name="infoUtente"></param>
        /// <param name="amministrazione"></param>
        /// <returns></returns>
        private static OrgTitolario GetTitolario(DataRow row, InfoUtente infoUtente, InfoAmministrazione amministrazione)
        {
            OrgTitolario titolario = new OrgTitolario();

            titolario.ID     = DataReaderHelper.GetValue <object>(row, "IDRECORD", false).ToString();
            titolario.Codice = CODICE_TITOLARIO;
            titolario.CodiceAmministrazione = amministrazione.Codice;
            titolario.Descrizione           = DataReaderHelper.GetValue <string>(row, "DESCRIZIONE", false);
            titolario.SetStatoTitolario(DataReaderHelper.GetValue <string>(row, "CHA_STATO", false));
            titolario.DataAttivazione = DataReaderHelper.GetValue <DateTime>(row, "DTA_ATTIVAZIONE", false).ToString();
            if (titolario.Stato == OrgStatiTitolarioEnum.Chiuso)
            {
                titolario.DataCessazione = DataReaderHelper.GetValue <DateTime>(row, "DTA_CESSAZIONE", false).ToString();
            }
            titolario.Commento = DataReaderHelper.GetValue <string>(row, "VAR_NOTE", false);

            return(titolario);
        }
示例#15
0
        /// <summary>
        /// Cancellazione dei metadati generali relativi
        /// all’intera struttura di classificazione dei documenti
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool DeleteTitolario(OrgTitolario titolario)
        {
            bool retValue = false;

            try
            {
                IObjectService objSrvc = this.GetObjectServiceInstance();

                DeleteProfile deleteProfile = new DeleteProfile();
                deleteProfile.IsDeepDeleteFolders           = true;
                deleteProfile.IsDeepDeleteChildrenInFolders = true;

                OperationOptions opts = new OperationOptions();
                opts.Profiles = new List <Profile>();
                opts.Profiles.Add(deleteProfile);

                ObjectIdentitySet identitySet = new ObjectIdentitySet();
                identitySet.Identities = new List <ObjectIdentity>();
                identitySet.Identities.Add(Dfs4DocsPa.getTitolarioIdentity(titolario.ID));

                objSrvc.Delete(identitySet, opts);

                // Rimozione delle ACL di tutti i fascicoli procedimentali contenuti nel titolario
                this.ClearAclFascicoliTitolario(titolario);

                retValue = true;

                logger.Debug(string.Format("Documentum.DeleteTitolario: rimosso titolario con id {0}", titolario.ID));
            }
            catch (Exception ex)
            {
                retValue = false;

                logger.Debug("Errore in Documentum.DeleteTitolario: " + ex.ToString());
            }

            return(retValue);
        }
示例#16
0
        /// <summary>
        /// Aggiornamento metadati della struttura
        /// di classificazione del titolario
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool SaveTitolario(OrgTitolario titolario)
        {
            bool saved = false;

            if (string.IsNullOrEmpty(titolario.ID))
            {
                // Inserimento
                using (DocsPaDB.Query_DocsPAWS.Amministrazione amm = new DocsPaDB.Query_DocsPAWS.Amministrazione())
                {
                    saved = amm.SaveTitolario(titolario);
                }
            }
            else
            {
                // Aggiornamento
                using (DocsPaDB.Query_DocsPAWS.Amministrazione amm = new DocsPaDB.Query_DocsPAWS.Amministrazione())
                {
                    saved = amm.UpdateTitolario(titolario);
                }
            }

            return(saved);
        }
示例#17
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="titolario"></param>
 /// <returns></returns>
 public bool SaveTitolario(OrgTitolario titolario)
 {
     return(this.Instance.SaveTitolario(titolario));
 }
示例#18
0
 /// <summary>
 /// Attivazione di un titolario
 /// </summary>
 /// <param name="titolario"></param>
 /// <returns></returns>
 public bool AttivaTitolario(OrgTitolario titolario)
 {
     return(this.Instance.AttivaTitolario(titolario));
 }
示例#19
0
 /// <summary>
 /// Cancellazione struttura di classificazione
 /// </summary>
 /// <param name="titolario"></param>
 /// <returns></returns>
 public bool DeleteTitolario(OrgTitolario titolario)
 {
     return(this.Instance.DeleteTitolario(titolario));
 }
示例#20
0
        public virtual BandoSyncResponse InsertBando(BandoSyncRequest _bandoSyncRequest)
        {
            string user                = string.Empty;
            string password            = "******";
            string codiceNodoTitolario = string.Empty;
            string NomeTemplate        = string.Empty;

            if (ConfigurationManager.AppSettings["UtenteIntegrazione"] != null)
            {
                user = ConfigurationManager.AppSettings["UtenteIntegrazione"];
            }

            if (ConfigurationManager.AppSettings["CodiceNodoTitolario"] != null)
            {
                codiceNodoTitolario = ConfigurationManager.AppSettings["CodiceNodoTitolario"];
            }

            if (ConfigurationManager.AppSettings["NomeTemplate"] != null)
            {
                NomeTemplate = ConfigurationManager.AppSettings["NomeTemplate"];
            }

            BandoSyncResponse _BandoSyncResponse = new BandoSyncResponse();
            Utility           _utility           = new Utility();
            UserLogin         login = new UserLogin();

            login.UserName = user;
            login.Password = password;
            Utente utente = _utility.Login(login);

            if (utente.ruoli.Count > 0)
            {
                Ruolo      ruolo    = utente.ruoli[0] as Ruolo;
                Registro[] registri = _utility.RegistroGetRegistriRuolo(ruolo.systemId);
                if (registri.Length > 0)
                {
                    OrgTitolario _classificazione = _utility.GetTitolarioAttivo(utente.idAmministrazione);
                    if (_classificazione != null)
                    {
                        Classificazione nodo = _utility.FascicolazioneGetClassificazione(ruolo.idAmministrazione, ruolo.idGruppo, utente.idPeople, registri[0], codiceNodoTitolario, _classificazione.ID);
                        if (nodo != null)
                        {
                            Templates template = BusinessLogic.ProfilazioneDinamica.ProfilazioneFascicoli.getTemplateByDescrizione(NomeTemplate);
                            if (template.ELENCO_OGGETTI.Count > 0)
                            {
                                template.ELENCO_OGGETTI[0]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[0] as OggettoCustom, _bandoSyncRequest.Mandante);
                                template.ELENCO_OGGETTI[1]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[1] as OggettoCustom, _bandoSyncRequest.NumeroGaraAppalto.ToString());
                                template.ELENCO_OGGETTI[2]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[2] as OggettoCustom, _bandoSyncRequest.OrganizzazioneAcquisti);
                                template.ELENCO_OGGETTI[3]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[3] as OggettoCustom, _bandoSyncRequest.GruppoAcquisti);
                                template.ELENCO_OGGETTI[4]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[4] as OggettoCustom, _bandoSyncRequest.DescrizioneGara);
                                template.ELENCO_OGGETTI[5]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[5] as OggettoCustom, _bandoSyncRequest.DataScadenzaGara.ToString());
                                template.ELENCO_OGGETTI[6]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[6] as OggettoCustom, _bandoSyncRequest.DataEmissioneGara.ToString());
                                template.ELENCO_OGGETTI[7]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[7] as OggettoCustom, _bandoSyncRequest.DataAperturaBusteTecniche.ToString());
                                template.ELENCO_OGGETTI[8]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[8] as OggettoCustom, _bandoSyncRequest.DataRicezioneRelazioneTecnica.ToString());
                                template.ELENCO_OGGETTI[9]  = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[9] as OggettoCustom, _bandoSyncRequest.DataAperturaBusteEconomiche.ToString());
                                template.ELENCO_OGGETTI[10] = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[10] as OggettoCustom, _bandoSyncRequest.DataPropostaAggiudicazioneTrattativa.ToString());
                                template.ELENCO_OGGETTI[11] = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[11] as OggettoCustom, _bandoSyncRequest.DataAggiudicazione.ToString());
                                template.ELENCO_OGGETTI[12] = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[12] as OggettoCustom, _bandoSyncRequest.DataAnnulamentoGara.ToString());
                                template.ELENCO_OGGETTI[13] = _utility.salvaValoreOggetto(template.ELENCO_OGGETTI[13] as OggettoCustom, _bandoSyncRequest.ValoreGara.ToString());

                                InfoUtente        infoutente  = BusinessLogic.Utenti.UserManager.GetInfoUtente(utente, ruolo);
                                FiltroRicerca[][] listaFiltri = new FiltroRicerca[1][];
                                listaFiltri[0] = new FiltroRicerca[1];
                                List <FiltroRicerca> fVList = new List <FiltroRicerca>();
                                FiltroRicerca        fV1    = new FiltroRicerca();
                                fV1.argomento = listaArgomenti.TIPO_FASCICOLO.ToString();
                                fV1.valore    = "P";
                                fVList.Add(fV1);

                                fV1.argomento = listaArgomenti.PROFILAZIONE_DINAMICA.ToString();
                                fV1.template  = template;
                                fV1.argomento = string.Empty;
                                fVList.Add(fV1);


                                listaFiltri[0] = fVList.ToArray();
                                //La classificazione è null perchè non specifico nessun nodo di titolario
                                //Ricerco i fascicoli
                                Fascicolo[] fascicoli     = _utility.FascicolazioneGetListaFascicoli(null, listaFiltri[0], false, false, false, infoutente);
                                Fascicolo   _fascicoloNew = null;
                                if (fascicoli.Length > 0)
                                {
                                    fascicoli[0].template = template;
                                    _fascicoloNew         = BusinessLogic.Fascicoli.FascicoloManager.updateFascicolo(fascicoli[0]);
                                    if (_fascicoloNew != null)
                                    {
                                        _BandoSyncResponse.CodiceEsito = 0;
                                        _BandoSyncResponse.DescrEsito  = "Modifica effettuata correttamente";
                                    }
                                }
                                else
                                {
                                    Fascicolo _fascicolo = new Fascicolo();
                                    _fascicolo.descrizione = _bandoSyncRequest.DescrizioneGara;
                                    _fascicolo.idRegistro  = registri[0].systemId;
                                    _fascicolo.apertura    = System.DateTime.Now.ToShortDateString();
                                    _fascicolo.privato     = "0";
                                    _fascicolo.codUltimo   = _utility.FascicolazioneGetFascNumRif(nodo.systemID, registri[0].systemId);
                                    _fascicolo.template    = template;
                                    //creazione di un nuovo fascicolo
                                    _fascicoloNew = _utility.FascicolazioneNewFascicolo(nodo, _fascicolo, false, infoutente, ruolo);

                                    if (_fascicoloNew != null)
                                    {
                                        _BandoSyncResponse.CodiceEsito = 0;
                                        _BandoSyncResponse.DescrEsito  = "Inserimento effettuato correttamente";
                                    }
                                }
                            }
                            else
                            {
                                _BandoSyncResponse.CodiceEsito = 200;
                                _BandoSyncResponse.DescrEsito  = "Il template " + NomeTemplate + " non è corretto o inesiste";
                            }
                        }
                        else
                        {
                            _BandoSyncResponse.CodiceEsito = 310;
                            _BandoSyncResponse.DescrEsito  = "Il nodo" + codiceNodoTitolario + " non è corretto o inesiste";
                        }
                    }
                    else
                    {
                        _BandoSyncResponse.CodiceEsito = 300;
                        _BandoSyncResponse.DescrEsito  = "Non è presente nessun titolario attivo";
                    }
                }
                else
                {
                    _BandoSyncResponse.CodiceEsito = 100;
                    _BandoSyncResponse.DescrEsito  = "L'utente non ha associato nessun Registro";
                }
            }
            else
            {
                _BandoSyncResponse.CodiceEsito = 600;
                _BandoSyncResponse.DescrEsito  = "Autenticazione utente fallita";
            }

            return(_BandoSyncResponse);
        }
示例#21
0
        protected void GetTitolariUtilizzabili()
        {
            ddl_titolari.Items.Clear();

            ArrayList listaTitolari = new ArrayList(this.WsInstance.getTitolariUtilizzabili(IdAmministrazione.ToString()));

            string titolarioAttivo = string.Empty;

            //Esistono dei titolari chiusi
            if (listaTitolari.Count > 1)
            {
                //Creo le voci della ddl dei titolari
                string valueTutti = string.Empty;

                foreach (OrgTitolario titolario in listaTitolari)
                {
                    ListItem it = null;
                    switch (titolario.Stato)
                    {
                    case OrgStatiTitolarioEnum.Attivo:
                        it = new ListItem(titolario.Descrizione, titolario.ID);
                        ddl_titolari.Items.Add(it);
                        valueTutti     += titolario.ID + ",";
                        titolarioAttivo = titolario.ID;
                        break;

                    case OrgStatiTitolarioEnum.Chiuso:
                        it = new ListItem(titolario.Descrizione, titolario.ID);
                        ddl_titolari.Items.Add(it);
                        valueTutti += titolario.ID + ",";
                        break;
                    }
                }
                //Imposto la voce tutti i titolari
                valueTutti = valueTutti.Substring(0, valueTutti.Length - 1);
                if (valueTutti != string.Empty)
                {
                    if (valueTutti.IndexOf(',') == -1)
                    {
                        valueTutti = valueTutti + "," + valueTutti;
                    }

                    ListItem it = new ListItem("Tutti i titolari", valueTutti);
                    ddl_titolari.Items.Insert(0, it);
                }
            }

            //Non esistono titolario chiusi
            if (listaTitolari.Count == 1)
            {
                OrgTitolario titolario = (OrgTitolario)listaTitolari[0];
                if (titolario.Stato != OrgStatiTitolarioEnum.InDefinizione)
                {
                    ListItem it = new ListItem(titolario.Descrizione, titolario.ID);
                    ddl_titolari.Items.Add(it);
                }
                ddl_titolari.Enabled = false;
            }

            if (!string.IsNullOrEmpty(titolarioAttivo))
            {
                this.ddl_titolari.SelectedValue = titolarioAttivo;
            }
        }
示例#22
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try {
                if (!IsPostBack)
                {
                    this.InitializeLabel();
                    //***************************************************************
                    //GIORDANO IACOZZILLI
                    //17/07/2013
                    //Gestione dell'icona della copia del docuemnto/fascicolo in deposito.
                    //***************************************************************
                    try
                    {
                        if (this.FlagCopyInArchive == "1")
                        {
                            this.phNeutro.Visible      = true;
                            this.cimgbttIsCopy.ToolTip = "Copia del fascicolo in archivio corrente";
                        }
                    }
                    catch
                    {
                        //Questo è per Veltri.
                    }
                    //***************************************************************
                    //FINE
                    //***************************************************************
                    Fascicolo fascicolo = UIManager.ProjectManager.getProjectInSession();
                    if (fascicolo != null && !string.IsNullOrEmpty(fascicolo.systemID))
                    {
                        this.viewLabel(true);
                        this.projectLblIdGenerato.Text     = fascicolo.systemID;
                        this.projectLblCodiceGenerato.Text = fascicolo.codice;
                        switch (fascicolo.stato)
                        {
                        case "A":
                        {
                            this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroAperto", UIManager.UserManager.GetUserLanguage());
                            this.projectLblStatoGenerato.CssClass = "open";
                            break;
                        }

                        case "C":
                        {
                            this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroChiuso", UIManager.UserManager.GetUserLanguage());
                            this.projectLblStatoGenerato.CssClass = "close";
                            break;
                        }

                        default:
                        {
                            this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroGiallo", UIManager.UserManager.GetUserLanguage());
                            this.projectLblStatoGenerato.CssClass = "giallo";
                            break;
                        }
                        }

                        Registro registro = UIManager.RegistryManager.getRegistroBySistemId(fascicolo.idRegistroNodoTit);
                        if (registro == null)
                        {
                            registro = UIManager.RegistryManager.getRegistroBySistemId(fascicolo.idRegistro);
                        }

                        if (registro != null)
                        {
                            this.projectLblRegistroGenerato.Text = registro.codRegistro;
                        }

                        OrgTitolario titolario = UIManager.ClassificationSchemeManager.getTitolario(fascicolo.idTitolario);
                        string       language  = UIManager.UserManager.GetUserLanguage();
                        if (titolario != null)
                        {
                            switch (titolario.Stato)
                            {
                            case OrgStatiTitolarioEnum.Attivo:
                                this.projectLblTitolarioGenerato.ToolTip = Utils.Languages.GetLabelFromCode("ProjectLblTitolarioAttivo", language).Replace("@@", titolario.DescrizioneLite);
                                this.projectLblTitolarioGenerato.Text    = ellipsis(projectLblTitolarioGenerato.ToolTip, 20);
                                break;

                            default:
                                this.projectLblTitolarioGenerato.ToolTip = UIManager.ClassificationSchemeManager.getTitolario(fascicolo.idTitolario).Descrizione;
                                this.projectLblTitolarioGenerato.Text    = ellipsis(projectLblTitolarioGenerato.ToolTip, 20);
                                break;
                            }
                        }

                        Fascicolo _tempfascicolo = UIManager.ProjectManager.getClassificazioneById(fascicolo.idClassificazione);
                        this.projectLblClassificaGenerato.ToolTip = _tempfascicolo.codice + " - " + _tempfascicolo.descrizione;
                        this.projectLblClassificaGenerato.Text    = ellipsis(projectLblClassificaGenerato.ToolTip, 50);
                        this.projectImgConservazione.Enabled      = true;
                        this.projectImgStampaEtichette.Enabled    = true;

                        if (fascicolo.folderSelezionato == null)
                        {
                            fascicolo.folderSelezionato = UIManager.GridManager.GetFolderByIdFasc(UIManager.UserManager.GetInfoUser(), fascicolo);
                        }
                        UIManager.ProjectManager.setProjectInSession(fascicolo);

                        if (fascicolo.template != null && !string.IsNullOrEmpty(fascicolo.template.SYSTEM_ID.ToString()) && fascicolo.template.SYSTEM_ID != 0)
                        {
                            this.ProjectLitTypeDocumentHead.Visible  = true;
                            this.ProjectLitTypeDocumentValue.Visible = true;
                            this.ProjectLitTypeDocumentValue.Text    = fascicolo.template.DESCRIZIONE.Length < 25 ? fascicolo.template.DESCRIZIONE: fascicolo.template.DESCRIZIONE.Substring(0, 25) + " ...";
                            this.ProjectLitTypeDocumentValue.ToolTip = fascicolo.template.DESCRIZIONE;
                        }
                        else
                        {
                            this.ProjectLitTypeDocumentHead.Visible  = false;
                            this.ProjectLitTypeDocumentValue.Visible = false;
                        }
                    }
                    else
                    {
                        this.viewLabel(false);
                    }

                    this.LoadKeys();
                    this.VisibiltyRoleFunctions();
                }
                else
                {
                    if (!string.IsNullOrEmpty(this.HiddenFaseDiagramma.Value))
                    {
                        this.SelectedPhaseId           = this.HiddenFaseDiagramma.Value;
                        this.HiddenFaseDiagramma.Value = string.Empty;
                        ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "ajaxModalPopupPhases", "ajaxModalPopupPhases();", true);
                    }

                    if (!string.IsNullOrEmpty(this.Phases.ReturnValue))
                    {
                        ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "setReturnValue", "SetRetValue('Phases','');", true);

                        // Verifico se esistono ruoli mancanti
                        //this.MissingRolesList = DiagrammiManager.ChangeStateGetMissingRoles(UIManager.ProjectManager.getProjectInSession().systemID, this.Phases.ReturnValue);
                        this.SelectedState = DiagrammiManager.GetStatoById(this.Phases.ReturnValue);
                        if (this.SelectedState != null && this.SelectedState.STATO_FINALE)
                        {
                            this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroChiuso", UIManager.UserManager.GetUserLanguage());
                            this.projectLblStatoGenerato.CssClass = "close";
                        }
                        else
                        {
                            this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroAperto", UIManager.UserManager.GetUserLanguage());
                            this.projectLblStatoGenerato.CssClass = "open";
                        }


                        if (this.MissingRolesList != null && this.MissingRolesList.Count > 0)
                        {
                            // Esistono ruoli mancanti
                            this.SelectedState = DiagrammiManager.GetStatoById(this.Phases.ReturnValue);
                            ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "ajaxModalPopupMissingRoles", "ajaxModalPopupMissingRoles();", true);
                        }
                        else
                        {
                            // Non esistono ruoli mancanti
                            // E' possibile inviare le trasmissioni salvate
                            DiagrammiManager.ChangeStateSendTransmissions(this.Phases.ReturnValue);
                        }
                        this.UpHeaderProject.Update();
                    }
                }
            }
            catch (System.Exception ex)
            {
                UIManager.AdministrationManager.DiagnosticError(ex);
                return;
            }
        }
示例#23
0
        public void RefreshHeader()
        {
            Fascicolo fascicolo = UIManager.ProjectManager.getProjectInSession();

            if (fascicolo != null && !string.IsNullOrEmpty(fascicolo.systemID))
            {
                viewLabel(true);
                this.projectLblIdGenerato.Text     = fascicolo.systemID;
                this.projectLblCodiceGenerato.Text = fascicolo.codice;
                switch (fascicolo.stato)
                {
                case "A":
                {
                    this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroAperto", UIManager.UserManager.GetUserLanguage());
                    this.projectLblStatoGenerato.CssClass = "open";
                    break;
                }

                case "C":
                {
                    this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroChiuso", UIManager.UserManager.GetUserLanguage());
                    this.projectLblStatoGenerato.CssClass = "close";
                    break;
                }

                default:
                {
                    this.projectLblStatoGenerato.Text     = Utils.Languages.GetLabelFromCode("prjectStatoRegistroGiallo", UIManager.UserManager.GetUserLanguage());
                    this.projectLblStatoGenerato.CssClass = "giallo";
                    break;
                }
                }
                Registro registro = UIManager.RegistryManager.getRegistroBySistemId(fascicolo.idRegistroNodoTit);
                if (registro == null)
                {
                    registro = UIManager.RegistryManager.getRegistroBySistemId(fascicolo.idRegistro);
                }

                if (registro != null)
                {
                    this.projectLblRegistroGenerato.Text = registro.codRegistro;
                }

                string       language  = UIManager.UserManager.GetUserLanguage();
                OrgTitolario titolario = UIManager.ClassificationSchemeManager.getTitolario(fascicolo.idTitolario);

                switch (titolario.Stato)
                {
                case OrgStatiTitolarioEnum.Attivo:
                    this.projectLblTitolarioGenerato.ToolTip = Utils.Languages.GetLabelFromCode("ProjectLblTitolarioAttivo", language).Replace("@@", titolario.DescrizioneLite);
                    this.projectLblTitolarioGenerato.Text    = ellipsis(projectLblTitolarioGenerato.ToolTip, 20);
                    break;

                default:
                    this.projectLblTitolarioGenerato.ToolTip = UIManager.ClassificationSchemeManager.getTitolario(fascicolo.idTitolario).Descrizione;
                    this.projectLblTitolarioGenerato.Text    = ellipsis(projectLblTitolarioGenerato.ToolTip, 20);
                    break;
                }

                Fascicolo _tempfascicolo = UIManager.ProjectManager.getClassificazioneById(fascicolo.idClassificazione);
                this.projectLblClassificaGenerato.ToolTip = _tempfascicolo.codice + " - " + _tempfascicolo.descrizione;
                this.projectLblClassificaGenerato.Text    = ellipsis(projectLblClassificaGenerato.ToolTip, 50);
                this.projectImgConservazione.Enabled      = true;
                this.projectImgStampaEtichette.Enabled    = true;

                if (fascicolo.folderSelezionato == null)
                {
                    fascicolo.folderSelezionato = UIManager.GridManager.GetFolderByIdFasc(UIManager.UserManager.GetInfoUser(), fascicolo);
                }
                UIManager.ProjectManager.setProjectInSession(fascicolo);

                if (fascicolo.template != null && !string.IsNullOrEmpty(fascicolo.template.SYSTEM_ID.ToString()) && fascicolo.template.SYSTEM_ID != 0)
                {
                    this.ProjectLitTypeDocumentHead.Visible  = true;
                    this.ProjectLitTypeDocumentValue.Visible = true;
                    this.ProjectLitTypeDocumentValue.Text    = fascicolo.template.DESCRIZIONE; this.ProjectLitTypeDocumentValue.Text = fascicolo.template.DESCRIZIONE.Length < 25 ? fascicolo.template.DESCRIZIONE : fascicolo.template.DESCRIZIONE.Substring(0, 25) + " ...";
                    this.ProjectLitTypeDocumentValue.ToolTip = fascicolo.template.DESCRIZIONE;
                }
                else
                {
                    this.ProjectLitTypeDocumentHead.Visible  = false;
                    this.ProjectLitTypeDocumentValue.Visible = false;
                }
            }
            this.UpHeaderProject.Update();
        }
示例#24
0
        /// <summary>
        /// Implementazione della logica del task di migrazione dati
        /// per tutti i titolari di una singola amministrazione DocsPa
        /// </summary>
        /// <param name="infoUtente"></param>
        /// <param name="amministrazione"></param>

        internal static void ImportaTitolari(InfoUtente infoUtente, InfoAmministrazione amministrazione)
        {
            using (DocsPaDB.DBProvider dbProvider = new DocsPaDB.DBProvider())
            {
                // 1. Reperimento titolari per l'amministrazione
                using (DataSet ds = new DataSet())
                {
                    if (dbProvider.ExecuteQuery(ds, GetQueryTitolari(infoUtente, amministrazione)))
                    {
                        //DocsPaDocumentale_DOCUMENTUM.Documentale.TitolarioManager titolarioManager = new DocsPaDocumentale_DOCUMENTUM.Documentale.TitolarioManager(infoUtente);

                        foreach (DataRow row in ds.Tables[0].Rows)
                        {
                            string codice = DataReaderHelper.GetValue <string>(row, "CODICE", false);

                            if (codice == CODICE_TITOLARIO)
                            {
                                // 2. Import titolario
                                OrgTitolario titolario = GetTitolario(row, infoUtente, amministrazione);

                                /*
                                 * if (titolarioManager.SaveTitolario(titolario))
                                 *  Log.GetInstance(amministrazione).Write(string.Format("Migrazione titolario. Codice: '{0}' - Descrizione: '{1}'", titolario.Codice, titolario.Descrizione), false);
                                 * else
                                 *  // 2a. Errore nell'inserimento del titolario
                                 *  throw new ApplicationException(
                                 *      string.Format("Si è verificato un errore nell'import del titolario '{0}' per l'amministrazione '{1}'",
                                 *      titolario.Codice, amministrazione.Codice));*/
                            }
                            else
                            {
                                // 3. Import nodo titolario
                                OrgNodoTitolario nodoTitolario = GetNodoTitolario(row, infoUtente, amministrazione);

                                /*
                                 * if (titolarioManager.ContainsNodoTitolario(nodoTitolario.ID))
                                 * {
                                 *  // Nodo titolario già esistente, save dei dati con refresh delle entries dell'acl associata
                                 *  titolarioManager.SaveNodoTitolario(nodoTitolario, true);
                                 *
                                 *  Log.GetInstance(amministrazione).Write(string.Format("Migrazione nodo titolario. Codice: '{0}' - Descrizione: '{1}'. Aggiornamento.", nodoTitolario.Codice, nodoTitolario.Descrizione), false);
                                 * }
                                 * else
                                 * {
                                 *  if (titolarioManager.SaveNodoTitolario(nodoTitolario))
                                 *      Log.GetInstance(amministrazione).Write(string.Format("Migrazione nodo titolario. Codice: '{0}' - Descrizione: '{1}'", nodoTitolario.Codice, nodoTitolario.Descrizione), false);
                                 *  else
                                 *      // 3a. Errore nell'inserimento del nodo titolario
                                 *      throw new ApplicationException(
                                 *          string.Format("Si è verificato un errore nell'import del nodo titolario '{0}' per l'amministrazione '{1}'",
                                 *          nodoTitolario.Codice, amministrazione.Codice));
                                 * }*/
                            }
                        }
                    }
                    else
                    {
                        // 1a. Errore nel reperimento dei titolari per l'amministrazione
                        throw new ApplicationException(
                                  string.Format("Si è verificato un errore nel reperimento dei titolari per l'amministrazione '{0}'",
                                                amministrazione.Codice));
                    }
                }
            }
        }
示例#25
0
 /// <summary>
 /// Attivazione di un titolario
 /// </summary>
 /// <param name="titolario"></param>
 /// <returns></returns>
 public bool AttivaTitolario(OrgTitolario titolario)
 {
     DocsPaDB.Query_DocsPAWS.Amministrazione amm = new DocsPaDB.Query_DocsPAWS.Amministrazione();
     return(amm.attivaTitolario(titolario));
 }
示例#26
0
        /// <summary>
        /// Attivazione di un titolario
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool AttivaTitolario(OrgTitolario titolario)
        {
            bool retValue = true;

            try
            {
                // Verifica della presenza di un titolario attivo
                string repositoryName = DctmConfigurations.GetRepositoryName();

                IObjectService objSrvc = this.GetObjectServiceInstance();

                // Verifica se in documentum è presente un titolario attivo
                bool existTitolarioAttivo = (Dfs4DocsPa.containsTitolarioAttivo(titolario.CodiceAmministrazione, this.GetQueryServiceInstance()));

                DataObject dataObjectTitolarioAttivo = null;

                if (existTitolarioAttivo)
                {
                    // Reperimento oggetto identity per il titolario attivo
                    ObjectIdentity identity = Dfs4DocsPa.getTitolarioAttivoIdentity(titolario.CodiceAmministrazione);

                    // Reperimento oggetto DataObject relativo al titolario attivo (se presente)
                    List <string> filters = new List <string>();
                    filters.Add(TypeTitolario.ID_DOCSPA);
                    dataObjectTitolarioAttivo = DfsHelper.getAllPropsAndFolders(objSrvc, identity, filters, false);
                    string idDocsPa = dataObjectTitolarioAttivo.Properties.Get(TypeTitolario.ID_DOCSPA).GetValueAsString();

                    // Reperimento del titolario appena chiuso in docspa, cui corrisponde il titolario da chiudere in documentum
                    OrgTitolario titolarioChiuso = DocsPaQueryHelper.getTitolario(idDocsPa);

                    dataObjectTitolarioAttivo            = new DataObject();
                    dataObjectTitolarioAttivo.Identity   = Dfs4DocsPa.getTitolarioIdentity(titolarioChiuso.ID);
                    dataObjectTitolarioAttivo.Type       = ObjectTypes.TITOLARIO;
                    dataObjectTitolarioAttivo.Properties = new PropertySet();
                    dataObjectTitolarioAttivo.Properties.Properties.AddRange(Dfs4DocsPa.getTitolarioProperties(titolarioChiuso));
                }

                // Reperimento identity titolario in definizione
                ObjectIdentity identityTitolarioInDef   = Dfs4DocsPa.getTitolarioIdentity(titolario.ID);
                DataObject     dataObjectTitolarioInDef = new DataObject();
                dataObjectTitolarioInDef.Identity   = identityTitolarioInDef;
                dataObjectTitolarioInDef.Type       = ObjectTypes.TITOLARIO;
                dataObjectTitolarioInDef.Properties = new PropertySet();
                dataObjectTitolarioInDef.Properties.Properties.AddRange(Dfs4DocsPa.getTitolarioProperties(titolario));

                List <DataObject> dataObjectList = new List <DataObject>();

                if (existTitolarioAttivo)
                {
                    dataObjectList.Add(dataObjectTitolarioAttivo);
                }

                dataObjectList.Add(dataObjectTitolarioInDef);

                // Creazione oggetto DataPackage
                DataPackage dataPackage = new DataPackage();
                dataPackage.DataObjects.AddRange(dataObjectList);

                dataPackage = objSrvc.Update(dataPackage, null);

                string objectId = ((ObjectId)dataPackage.DataObjects[0].Identity.Value).Id.ToString();

                retValue = (!string.IsNullOrEmpty(objectId));

                if (retValue)
                {
                    logger.Debug(string.Format("Documentum.AttivaTitolario: attivato titolario con id {0}", titolario.ID));
                }
            }
            catch (Exception ex)
            {
                retValue = false;

                logger.Debug("Errore in Documentum.AttivaTitolario: " + ex.ToString());
            }

            return(retValue);
        }
示例#27
0
        /// <summary>
        /// Inserimento o aggiornamento dei metadati generali relativi
        /// all’intera struttura di classificazione dei documenti
        /// </summary>
        /// <param name="titolario"></param>
        /// <returns></returns>
        public bool SaveTitolario(OrgTitolario titolario)
        {
            bool retValue = false;

            try
            {
                //titolario.ID viene SEMPRE valorizzato da ETDOCS; se così non è --> ERRORE
                if (string.IsNullOrEmpty(titolario.ID))
                {
                    logger.Debug("Errore passaggio dati da ETDOCS: ID Titolario mancante");
                }
                else
                {
                    // Reperimento istanza objectservice
                    IObjectService objSrvc = GetObjectServiceInstance();

                    DataObject dataObject = new DataObject();
                    dataObject.Type = ObjectTypes.TITOLARIO;

                    // Reperimento oggetto identity per il titolario corrente
                    ObjectIdentity titolarioIdentity = Dfs4DocsPa.getTitolarioIdentity(titolario.ID);

                    IQueryService querySrvc = this.GetQueryServiceInstance();

                    // Verifica se il titolario è già esistente
                    bool insertMode = (!Dfs4DocsPa.containsTitolario(titolario.ID, querySrvc));

                    if (insertMode)
                    {
                        // Creazione oggetto identity per nuovo inserimento
                        dataObject.Identity = new ObjectIdentity(DctmConfigurations.GetRepositoryName());

                        // Modalità di in inserimento, creazione oggetto Identity parent e oggetto relationship
                        ObjectIdentity parentIdentity = DfsHelper.createObjectIdentityByPath(DocsPaAdminCabinet.getRootTitolario(titolario.CodiceAmministrazione));

                        dataObject.Relationships = new List <Relationship>();
                        dataObject.Relationships.Add(DfsHelper.createParentFolderRelationship(parentIdentity));
                    }
                    else
                    {
                        // Reperimento oggetto identity per titolario da modificare
                        dataObject.Identity = titolarioIdentity;
                    }

                    // Impostazione proprietà titolario
                    dataObject.Properties = new PropertySet();
                    dataObject.Properties.Properties.AddRange(Dfs4DocsPa.getTitolarioProperties(titolario));

                    DataPackage dataPackage = new DataPackage(dataObject);
                    dataPackage.RepositoryName = DctmConfigurations.GetRepositoryName();

                    // Save oggetto titolario in documentum
                    if (insertMode)
                    {
                        // Reperimento ACL dell'amministrazione da associare al titolario
                        CustomServices.AclDefinition aclDefinition = Dfs4DocsPa.getAclDefinitionAmministrazione(titolario.CodiceAmministrazione);

                        // Impostazione delle properties relative all'acl per il nodo titolario
                        AclHelper.setAclObjectProperties(dataObject.Properties, aclDefinition);

                        dataPackage = objSrvc.Create(dataPackage, null);
                    }
                    else
                    {
                        dataPackage = objSrvc.Update(dataPackage, null);
                    }

                    retValue = (dataPackage.DataObjects.Count > 0);

                    if (retValue)
                    {
                        logger.Debug(string.Format("Documentum.SaveTitolario: salvato titolario con id {0}", titolario.ID));
                    }
                }
            }
            catch (Exception ex)
            {
                retValue = false;

                logger.Debug("Errore in Documentum.SaveTitolario: " + ex.ToString());
            }

            return(retValue);
        }