예제 #1
0
 public static void messaInEsercizioTemplateFasc(DocsPaVO.ProfilazioneDinamica.Templates template, string idAmministrazione)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.messaInEsercizioTemplateFasc(template, idAmministrazione);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: messaInEsercizioTemplateFasc", e);
         }
     }
 }
예제 #2
0
 public static void UpdateMesiConsTipoFasc(int systemId_template, string mesiCons)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.UpdateMesiConsTipoFasc(systemId_template, mesiCons);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: UpdatePrivatoTipoFasc", e);
         }
     }
 }
예제 #3
0
 public static void updateScadenzeTipoFasc(int systemId_template, string scadenza, string preScadenza)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.updateScadenzeTipoFasc(systemId_template, scadenza, preScadenza);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: updateScadenzeTipoFasc", e);
         }
     }
 }
예제 #4
0
 public static void salvaInserimentoUtenteProfDimFasc(DocsPaVO.ProfilazioneDinamica.Templates template, string idProject)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.salvaInserimentoUtenteProfDimFasc(template, idProject);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: salvaInserimentoUtenteProfDimFasc", e);
         }
     }
 }
예제 #5
0
 public static void aggiornaPosizioneFasc(DocsPaVO.ProfilazioneDinamica.OggettoCustom oggettoCustom, DocsPaVO.ProfilazioneDinamica.Templates template)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.aggiornaPosizioneFasc(oggettoCustom, template);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: aggiornaPosizioneFasc", e);
         }
     }
 }
예제 #6
0
 public static void salvaAssociazioneModelliFasc(string idTipoFasc, string idDiagramma, ArrayList modelliSelezionati, string idStato)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.salvaAssociazioneModelliFasc(idTipoFasc, idDiagramma, modelliSelezionati, idStato);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: salvaAssociazioneModelliFasc", e);
         }
     }
 }
예제 #7
0
 public static void salvaAssociazioneFascRuoli(ArrayList assFascRuoli)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelFascDB.salvaAssociazioneFascRuoli(assFascRuoli);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: salvaAssociazioneFascRuoli", e);
         }
     }
 }
예제 #8
0
 public static void estendiDirittiRuoloACampiFasc(ArrayList listaDirittiRuoli, ArrayList listaCampi)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelDB.estendiDirittiRuoloACampiFasc(listaDirittiRuoli, listaCampi);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: estendiDirittiRuoloACampiFasc", e);
         }
     }
 }
예제 #9
0
 public static void salvaDirittiCampiTipologiaFasc(ArrayList listaDirittiCampiSelezionati)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             modelDB.salvaDirittiCampiTipologiaFasc(listaDirittiCampiSelezionati);
             transactionContext.Complete();
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: salvaDirittiCampiTipologiaFasc", e);
         }
     }
 }
예제 #10
0
 public static ArrayList getDirittiCampiTipologiaFasc(string idRuolo, string idTemplate)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             ArrayList dirittiCampi = modelDB.getDirittiCampiTipologiaFasc(idRuolo, idTemplate);
             transactionContext.Complete();
             return(dirittiCampi);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: getDirittiCampiTipologiaFasc", e);
             return(null);
         }
     }
 }
예제 #11
0
 public static string getIdTemplateFasc(string idProject)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             string idTemplate = modelFascDB.getIdTemplateFasc(idProject);
             transactionContext.Complete();
             return(idTemplate);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: getIdTemplateFasc", e);
             return(null);
         }
     }
 }
예제 #12
0
 public static DocsPaVO.ProfilazioneDinamica.Templates getTemplatePerRicerca(string idAmministrazione, string tipoFasc)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc       modelDB  = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             DocsPaVO.ProfilazioneDinamica.Templates template = modelDB.getTemplatePerRicerca(idAmministrazione, tipoFasc);
             transactionContext.Complete();
             return(template);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: getTemplatePerRicerca", e);
             return(null);
         }
     }
 }
예제 #13
0
 public static int countFascTipoFasc(string tipo_fasc, string codiceAmm)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             int numberFascTipoFasc = modelFascDB.countFascTipoFasc(tipo_fasc, codiceAmm);
             transactionContext.Complete();
             return(numberFascTipoFasc);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: countFascTipoFasc", e);
             return(0);
         }
     }
 }
예제 #14
0
 public static bool isInUseCampoComuneFasc(string idTemplate, string idCampoComune)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             bool result = modelFascDB.isInUseCampoComuneFasc(idTemplate, idCampoComune);
             transactionContext.Complete();
             return(result);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: isInUseCampoComuneFasc", e);
             return(false);
         }
     }
 }
예제 #15
0
 public static DocsPaVO.ProfilazioneDinamica.Templates impostaCampiComuniFasc(DocsPaVO.ProfilazioneDinamica.Templates modello, ArrayList campiComuni)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc       modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             DocsPaVO.ProfilazioneDinamica.Templates template    = modelFascDB.impostaCampiComuniFasc(modello, campiComuni);
             transactionContext.Complete();
             return(template);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: impostaCampiComuniFasc", e);
             return(null);
         }
     }
 }
예제 #16
0
 public static ArrayList getRuoliTipoFasc(string idTipoFasc)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             ArrayList ruoliTipoFasc = modelFascDB.getRuoliTipoFasc(idTipoFasc);
             transactionContext.Complete();
             return(ruoliTipoFasc);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: getRuoliTipoFasc", e);
             return(null);
         }
     }
 }
예제 #17
0
 public static DocsPaVO.ProfilazioneDinamica.OggettoCustom getOggettoById(string idOggetto)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc           modelFascDB   = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             DocsPaVO.ProfilazioneDinamica.OggettoCustom oggettoCustom = modelFascDB.getOggettoById(idOggetto);
             transactionContext.Complete();
             return(oggettoCustom);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: getOggettoById", e);
             return(null);
         }
     }
 }
예제 #18
0
 //Data il system_id di una tipologia fascicolo restituisce la lista dei suoi attributi
 public static DocsPaVO.ProfilazioneDinamica.Templates getAttributiTipoFasc(DocsPaVO.utente.InfoUtente infoUtente, string idTipoFasc)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc       modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             DocsPaVO.ProfilazioneDinamica.Templates template    = modelFascDB.getTemplateFascCampiComuniById(infoUtente, idTipoFasc);
             transactionContext.Complete();
             return(template);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: getAttributiTipoFasc", e);
             return(null);
         }
     }
 }
예제 #19
0
 public static DocsPaVO.ProfilazioneDinamica.AssDocFascRuoli getDirittiCampoTipologiaFasc(string idRuolo, string idTemplate, string idOggettoCustom)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc             modelDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             DocsPaVO.ProfilazioneDinamica.AssDocFascRuoli assDocFascRuoliResult = modelDB.getDirittiCampoTipologiaFasc(idRuolo, idTemplate, idOggettoCustom);
             transactionContext.Complete();
             return(assDocFascRuoliResult);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: getDirittiCampoTipologiaFasc", e);
             return(null);
         }
     }
 }
예제 #20
0
 public static ArrayList getIdModelliTrasmAssociatiFasc(string idTipoFasc, string idDiagramma, string idStato)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             ArrayList idModelliAssociati = modelFascDB.getIdModelliTrasmAssociatiFasc(idTipoFasc, idDiagramma, idStato);
             transactionContext.Complete();
             return(idModelliAssociati);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: getIdModelliTrasmAssociatiFasc", e);
             return(null);
         }
     }
 }
예제 #21
0
 public static ArrayList getRuoliFromOggettoCustomFasc(string idTemplate, string idOggettoCustom)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             ArrayList ruoliFromOggettoCustom          = modelDB.getRuoliFromOggettoCustomFasc(idTemplate, idOggettoCustom);
             transactionContext.Complete();
             return(ruoliFromOggettoCustom);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneDocumenti  - metodo: getRuoliFromOggettoCustomFasc", e);
             return(null);
         }
     }
 }
예제 #22
0
 public static ArrayList getTipoFascFromRuolo(string idAmministrazione, string idRuolo, string diritti)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             ArrayList tipoFascFromRuolo = modelFascDB.getTipoFascFromRuolo(idAmministrazione, idRuolo, diritti);
             transactionContext.Complete();
             return(tipoFascFromRuolo);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: getTipoFascFromRuolo", e);
             return(null);
         }
     }
 }
예제 #23
0
 public static bool disabilitaTemplateFasc(DocsPaVO.ProfilazioneDinamica.Templates template, string idAmministrazione, string serverPath, string codiceAmministrazione)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             bool result = modelFascDB.disabilitaTemplateFasc(template, idAmministrazione, serverPath, codiceAmministrazione);
             transactionContext.Complete();
             return(result);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: disabilitaTemplateFasc", e);
             return(false);
         }
     }
 }
예제 #24
0
 public static bool aggiornaTemplateFasc(DocsPaVO.ProfilazioneDinamica.Templates template)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             bool result = modelFascDB.aggiornaTemplateFasc(template);
             transactionContext.Complete();
             return(result);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: aggiornaTemplateFasc", e);
             return(false);
         }
     }
 }
예제 #25
0
 public static DocsPaVO.ProfilazioneDinamica.Templates getTemplateByDescrizione(string descrizione)
 {
     using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
     {
         try
         {
             DocsPaDB.Query_DocsPAWS.ModelFasc       modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
             DocsPaVO.ProfilazioneDinamica.Templates template    = modelFascDB.getTemplateFascByDescrizione(descrizione);
             transactionContext.Complete();
             return(template);
         }
         catch (Exception e)
         {
             logger.Debug("Errore in ProfilazioneFascicoli  - metodo: getTemplateByDescrizione", e);
             return(null);
         }
     }
 }
예제 #26
0
        public static ArrayList getListaStoricoFascicolo(string id_tipo_fasc, string idProject)
        {
            ArrayList storico = null;

            using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
            {
                try
                {
                    DocsPaDB.Query_DocsPAWS.ModelFasc modelDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
                    storico = modelDB.getListaStoricoFascicolo(id_tipo_fasc, idProject);
                    transactionContext.Complete();
                }
                catch (Exception e)
                {
                    logger.Debug("Errore in ProfilazioneDocumenti  - metodo: getListaStoricoFasc", e);
                }
            }
            return(storico);
        }
예제 #27
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="classifica"></param>
        /// <param name="fascicolo"></param>
        /// <param name="ruolo"></param>
        /// <param name="enableUfficioReferente"></param>
        /// <param name="result"></param>
        /// <param name="ruoliSuperiori"></param>
        /// <returns></returns>
        public bool CreateProject(Classificazione classifica, Fascicolo fascicolo, Ruolo ruolo, bool enableUfficioReferente, out ResultCreazioneFascicolo result, out DocsPaVO.utente.Ruolo[] ruoliSuperiori)
        {
            logger.Info("BEGIN");
            bool retValue = false;

            ruoliSuperiori = null;

            using (DocsPaDB.DBProvider dbProvider = new DocsPaDB.DBProvider())
            {
                using (System.Data.IDataReader reader = dbProvider.ExecuteReader("select a.CHA_STATO from project a where a.SYSTEM_ID in (select b.ID_TITOLARIO from project b where b.SYSTEM_ID =" + classifica.systemID + ")"))
                {
                    if (reader.FieldCount > 0)
                    {
                        while (reader.Read())
                        {
                            string valorechiave = DocsPaUtils.Configuration.InitConfigurationKeys.GetValue("0", "BE_FASC_TUTTI_TIT");
                            if (string.IsNullOrEmpty(valorechiave) || !valorechiave.Equals("1"))
                            {
                                if (reader.GetString(reader.GetOrdinal("CHA_STATO")).ToUpper().Equals("C"))
                                {
                                    logger.Debug("sottofascilo chiuso");
                                    throw new Exception("sottofascilo chiuso");
                                }
                            }
                        }
                    }
                }

                logger.Debug(" *** INIZIO TRANSAZIONE CREAZIONE FASCICOLO ***");
                dbProvider.BeginTransaction();

                fascicolo.idClassificazione = classifica.systemID;

                result = DocsPaVO.fascicolazione.ResultCreazioneFascicolo.OK;
                DocsPaVO.fascicolazione.Folder             folder    = new DocsPaVO.fascicolazione.Folder();
                DocsPaDB.Query_DocsPAWS.AmministrazioneXml objAX     = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml();
                DocsPaDB.Query_DocsPAWS.Fascicoli          fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli();

                try
                {
                    fascicolo.stato = "A";
                    fascicolo.tipo  = "P";

                    // 6 - Si aggiorna il codUltimo relativo al fascicolo (solo per ora perchè andrà tolta questa gestione)
                    if (!fascicoli.aggiornaDpaRegFasc(ref fascicolo.codUltimo, fascicolo.idClassificazione, fascicolo.idRegistro, dbProvider))
                    {
                        throw new Exception("Errore nell'aggiornamento della tabella dpa_reg_fasc");
                    }

                    //prova per verifica codice univoco
                    string format = DocsPaDB.Utils.Personalization.getInstance(this.UserInfo.idAmministrazione).FormatoFascicolatura;
                    if (format == null || format.Equals(""))
                    {
                        //in alcuni casi, l'oggetto Personalization non è not null, ma il formato segnatura è null!!
                        //per evitare il blocco della protocollazione a meno di un iisreset inserisco questo codice.
                        logger.Debug("Ricalcolo Personalization");
                        DocsPaDB.Utils.Personalization.Reset();
                        format = DocsPaDB.Utils.Personalization.getInstance(this.UserInfo.idAmministrazione).FormatoFascicolatura;
                        if (format == null || format.Equals(""))
                        {
                            throw new FormatoFascicolaturaException();
                        }
                    }

                    //string codiceFasc = this.CalcolaCodiceFascicolo(this.UserInfo.idAmministrazione, classifica.codice, fascicolo.apertura, classifica.systemID, ref fascicolo.codUltimo, true, dbProvider);
                    string codiceFasc = this.CalcolaCodiceFascicolo(this.UserInfo.idAmministrazione, classifica, fascicolo.apertura, ref fascicolo.codUltimo, true, dbProvider);
                    string idReg      = fascicolo.idRegistro;

                    if (idReg != null && idReg == "")
                    {
                        idReg = classifica.registro.systemId;
                    }

                    // 4 - Si verifica che il codice sia univoco
                    if (!objAX.CheckUniqueCode("PROJECT", "VAR_CODICE", codiceFasc, "AND ((ID_REGISTRO IS NULL OR ID_REGISTRO=" + idReg + " ) ) AND ID_AMM =" + this.UserInfo.idAmministrazione + " AND ID_PARENT = " + classifica.systemID + "", dbProvider))
                    {
                        // 4 - Si verifica se il codice è già presente vienelanciata una eccezione
                        //codiceFascNew = calcolaCodiceFascicolo(infoUtente.idAmministrazione,classificazione.codice, fascicolo.apertura, classificazione.systemID, ref fascicolo.codUltimo, false, dbProvider);
                        throw new FascicoloPresenteException();
                    }

                    // Creazione fascicolo
                    string idPeopleDelegato = string.Empty;
                    if (fascicolo.creatoreFascicolo != null && fascicolo.creatoreFascicolo.idPeopleDelegato != null)
                    {
                        idPeopleDelegato = fascicolo.creatoreFascicolo.idPeopleDelegato;
                    }
                    string systemIdFasc = this.CreateProject(fascicolo.descrizione, idPeopleDelegato);

                    if (systemIdFasc != null && systemIdFasc != "")
                    {
                        fascicolo.systemID = systemIdFasc;

                        /* 2 - VIENE INVOCATO IL METODO PER LA CREAZIONE DEL FASCICOLO
                         * e della ROOT FOLDER */
                        bool resultNewFasc = this.CreazioneFascicoloConTransazione(classifica, fascicolo, this.UserInfo, ruolo, enableUfficioReferente, folder, codiceFasc, dbProvider, out ruoliSuperiori);

                        //3 - SE LA CREAZIONE DEL FASCICOLO è ANDATA A BUON FINE SI EFFETTUA IL COMMIT
                        //DELLA TRANSAZIONE
                        if (resultNewFasc)
                        {
                            result = DocsPaVO.fascicolazione.ResultCreazioneFascicolo.OK;
                        }
                        else
                        {
                            throw new Exception("Errore nella gestione dei fascicoli (newFascicolo)");
                        }
                    }
                    else
                    {
                        throw new Exception("Errore nella gestione dei fascicoli (newFascicolo)");
                    }

                    //Profilazione dinamica fascicoli
                    if (fascicolo.template != null)
                    {
                        DocsPaDB.Query_DocsPAWS.ModelFasc modelFasc = new DocsPaDB.Query_DocsPAWS.ModelFasc();
                        modelFasc.salvaInserimentoUtenteProfDimFasc(fascicolo.template, fascicolo.systemID);
                    }
                    //Fine profilazione dinamica fascicoli

                    logger.Debug("Fascicolo creato: idFascicolo = " + fascicolo.systemID);
                    logger.Debug("Folder creata: = " + folder.systemID);

                    if (result == ResultCreazioneFascicolo.OK)
                    {
                        retValue = true;
                    }
                }
                catch (FascicoloPresenteException e)
                {
                    retValue  = false;
                    fascicolo = null;
                    result    = DocsPaVO.fascicolazione.ResultCreazioneFascicolo.FASCICOLO_GIA_PRESENTE;

                    logger.Debug(e.Message);
                }
                catch (FormatoFascicolaturaException e)
                {
                    retValue  = false;
                    fascicolo = null;
                    result    = DocsPaVO.fascicolazione.ResultCreazioneFascicolo.FORMATO_FASCICOLATURA_NON_PRESENTE;

                    logger.Debug(e.Message);
                }
                catch (Exception e)
                {
                    //SE LA CREAZIONE DEL FASCICOLO GENERA ERRORE,
                    //SI RILASCIANO RISORSE ALLOCATE E SI EFFETTUA IL ROLLBACK DELLA TRANSAZIONE
                    retValue  = false;
                    fascicolo = null;
                    result    = DocsPaVO.fascicolazione.ResultCreazioneFascicolo.GENERIC_ERROR;

                    logger.Debug(e.Message);
                }

                if (retValue)
                {
                    dbProvider.CommitTransaction();
                }
                else
                {
                    dbProvider.RollbackTransaction();
                }
            }
            logger.Info("END");
            return(retValue);
        }
예제 #28
0
 public static ArrayList getIdPrjByAssTemplates(string idOggFasc, string valoreDB, string ordine)
 {
     DocsPaDB.Query_DocsPAWS.ModelFasc modelFascDB = new DocsPaDB.Query_DocsPAWS.ModelFasc();
     return(modelFascDB.getIdPrjByAssTemplates(idOggFasc, valoreDB, ordine));
 }