Exemple #1
0
        public static string getIdRoot(string docNumber /*,DocsPaWS.Utils.Database db*/)
        {
            logger.Debug("getIdRoot");
            string idRoot = "";

            try
            {
                #region Codice Commentato

                /*string idRootString="SELECT ID_ROOT FROM DPA_DOC_COLLEGAMENTI WHERE ID_DOCUMENTO="+docNumber;
                 *  if(db.executeScalar(idRootString)!=null && !db.executeScalar(idRootString).ToString().Equals(""))
                 *  {
                 *          idRoot=db.executeScalar(idRootString).ToString();
                 *  }
                 *  else{
                 *      idRoot=docNumber;
                 *  }*/
                #endregion

                DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
                doc.GetIdRoot(out idRoot, docNumber);
            }
            catch (Exception e)
            {
                logger.Debug("Errore nella gestione dell'ID root documento (getIdRoot)", e);
                throw e;
            }
            return(idRoot);
        }
Exemple #2
0
        /// <summary>
        /// Operazione per l'inserimento di un file in una versione / allegato di un documento
        ///
        /// PreCondizione:
        ///     la versione / allegato deve essere gi� stato creato come entit� persistente
        ///
        ///     Attributi dell'oggetto FileRequest gi� valorizzati in ingresso
        ///         VersionId:      ID della versione / allegato in docspa
        ///         Version:        0 se allegato, > 0 se versione
        ///         SubVersion:     ! se allegato, stringa vuota se versione
        ///         VersionLabel:   A# se allegato (dove # � il num. dell'allegato, fino a 99)
        ///                         (es. A01, A02, A03, ecc.)
        ///                         1, 2, 3, 4, ecc. se versione
        /// PostCondizioni:
        ///     il file deve essere stato associato alla versione / allegato
        ///
        /// </summary>
        /// <param name="fileRequest"></param>
        /// <param name="fileDocumento"></param>
        /// <param name="estensione"></param>
        /// <param name="objSicurezza"></param>
        /// <returns></returns>

        public bool PutFile(DocsPaVO.documento.FileRequest fileRequest, DocsPaVO.documento.FileDocumento fileDocumento, string estensione)
        {
            logger.Info("BEGIN");
            bool retValue = false;

            try
            {
                //CHIAMATA AL DOCUMENTALE ETDOCS
                retValue = this.DocumentManagerETDOCS.PutFile(fileRequest, fileDocumento, estensione);

                DocsPaDB.Query_DocsPAWS.Documenti documenti = new DocsPaDB.Query_DocsPAWS.Documenti();
                SchedaDocumento scheda = documenti.GetDettaglioNoSecurity(
                    this._infoUtente,
                    fileRequest.docNumber,
                    fileRequest.docNumber);

                //if (retValue && (scheda.interop == null || scheda.interop.ToUpper() != "I" ))
                //    retValue = this.DocumentManagerWSPIA.PutFile(fileRequest, fileDocumento, estensione);

                if (retValue && scheda.interop == null)
                {
                    retValue = this.DocumentManagerWSPIA.PutFile(fileRequest, fileDocumento, estensione);
                }
            }
            catch (Exception ex)
            {
                logger.Debug(string.Format("Errore nel metodo PutFile: {0}", ex.Message));
                logger.Debug(string.Format("Errore durante la scrittura del documento: {0}, non è stato possibile invocare il WebService di INPS", ex.Message));
            }
            logger.Info("END");
            return(retValue);
        }
Exemple #3
0
        /// <summary>
        /// Rimozione documenti
        /// </summary>
        /// <param name="items"></param>
        /// <returns></returns>
        public bool Remove(params DocsPaVO.documento.InfoDocumento[] items)
        {
            bool retValue = false;

            try
            {
                // Rimozione dei documenti dal database di docspa
                // NB: Non viene richiamato il metodo corrispondente nel documentale
                // etdocs in quanto quest'ultima elimina anche i file.
                // Per PITRE, questo non � necessario in quanto � DCTM che gestisce
                // la cancellazione dei file.
                foreach (DocsPaVO.documento.InfoDocumento infoDocumento in items)
                {
                    DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();

                    retValue = doc.EliminaDoc(this.InfoUtente, infoDocumento);

                    if (!retValue)
                    {
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                string errorMessage = string.Format("Errore nell'operazione 'RemoveDocumento': {0}", ex.Message);
                logger.Debug(errorMessage, ex);

                retValue = false;
            }

            return(retValue);
        }
Exemple #4
0
        internal static DocsPaVO.documento.FileRequest updateVers(DocsPaVO.documento.FileRequest fileRequest)
        {
            string tipoFile = "0";

            if (fileRequest.GetType().Equals(typeof(DocsPaVO.documento.Allegato)))
            {
                fileRequest.versionLabel = "A" + fileRequest.version;
                tipoFile = "1";
            }
            else
            {
                fileRequest.versionLabel = fileRequest.version;
            }

            if (fileRequest.descrizione == null)
            {
                fileRequest.descrizione = "";
            }
            fileRequest.version = getNumVersione(fileRequest);

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            string docnumber = getFNETename(fileRequest.docNumber);

            // v_e_name = doc.F_GetFilenetNumVersione( docnumber, fileRequest.version);

            DocsPaDB.Query_DocsPAWS.Documenti docF = new DocsPaDB.Query_DocsPAWS.Documenti();
            docF.F_UpdateVersion(fileRequest, tipoFile);

            return(fileRequest);
        }
Exemple #5
0
        private File getFileDetail(DocsPaVO.documento.FileDocumento fileDoc, DocsPaVO.documento.FileRequest objFileRequest, DocsPaVO.utente.InfoUtente infoUtente)
        {
            string impronta;

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            doc.GetImpronta(out impronta, objFileRequest.versionId, objFileRequest.docNumber);

            string algo = "N.A";

            if (impronta == DocsPaUtils.Security.CryptographyManager.CalcolaImpronta256(fileDoc.content))
            {
                algo = "SHA256";
            }
            else if (impronta == DocsPaUtils.Security.CryptographyManager.CalcolaImpronta(fileDoc.content))
            {
                algo = "SHA1";
            }

            File F = new File
            {
                Impronta       = impronta,
                Dimensione     = objFileRequest.fileSize,
                Formato        = fileDoc.contentType,
                AlgoritmoHash  = algo,
                FirmaDigitale  = extractFirmaDigitale(fileDoc),
                MarcaTemporale = extractMarcaTemporale(objFileRequest, infoUtente)
            };

            return(F);
        }
Exemple #6
0
        /// <summary>
        /// Rimozione di un allegato
        /// </summary>
        /// <param name="allegato"></param>
        /// <returns></returns>
        public bool RemoveAttatchment(DocsPaVO.documento.Allegato allegato)
        {
            bool retValue = false;

            // Creazione contesto transazionale
            using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
            {
                // nota: se cancello prima il docuemnto su docspa non riesco a risalire all'id su OCS
                // a meno chè non uso una ricerca ma al momento danno problemi!!!
                retValue = this.DocumentManagerOCS.RemoveAttatchment(allegato);

                if (retValue)
                {
                    // Se la nuova gestione degli allegati non risulta abilitata,
                    // il documento allegato viene rimosso direttamente
                    DocsPaDB.Query_DocsPAWS.Documenti dbDocumenti = new DocsPaDB.Query_DocsPAWS.Documenti();

                    // Reperimento dell'oggetto InfoDocumento relativo all'allegato
                    DocsPaVO.documento.InfoDocumento infoDocumentoAllegato = dbDocumenti.GetInfoDocumento(this.InfoUtente.idGruppo, this.InfoUtente.idPeople, allegato.docNumber, false);

                    retValue = ((DocsPaDocumentale_ETDOCS.Documentale.DocumentManager) this.DocumentManagerETDOCS).Remove(new DocsPaVO.documento.InfoDocumento[1] {
                        infoDocumentoAllegato
                    }, false);
                }

                if (retValue)
                {
                    transactionContext.Complete();
                }
            }

            return(retValue);
        }
Exemple #7
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="extension"></param>
 /// <returns></returns>
 protected DocsPaVO.documento.Applicazione GetApplication(string extension)
 {
     DocsPaVO.documento.Applicazione   app = new DocsPaVO.documento.Applicazione();
     DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
     doc.GetExt(extension, ref app);
     return(app);
 }
Exemple #8
0
        //nuovo 30/07/2003 gestione tipo spedizione
        /// <summary>
        /// </summary>
        /// <param name="idDocumentType"></param>
        /// <returns></returns>
        private static string getTipoDocumento(string idDocumentType)
        {
            #region Codice Commentato

            /*if (idDocumentType == null || idDocumentType.Equals(""))
             *      return "";
             * string queryString = "SELECT DESCRIPTION FROM DOCUMENTTYPES WHERE SYSTEM_ID = " + idDocumentType;
             * logger.Debug(queryString);
             * try
             * {
             *              object descr = db.executeScalar(queryString);
             *              if (descr != null)
             *                      return db.executeScalar(queryString).ToString();
             *              else
             *                      return "";
             * }
             * catch (Exception)
             * {
             *      return "";
             * }*/
            #endregion

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            return(doc.GetTipoDocumento(idDocumentType));
        }
Exemple #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="idProfile"></param>
        /// <returns></returns>
        internal static ArrayList getIdCorrInStatoInvio(string idProfile)
        {
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            return(doc.GetIdCorrInStatoInvio(idProfile));

            #region Codice Commentato

            /*logger.Debug("get IdCorr in DPA_STATO_INVIO");
             * ArrayList listaIdCorr = new ArrayList();
             * //ricerca dei Server Posta
             * string queryString =
             *      "SELECT ID_CORR_GLOBALE " +
             *      "FROM DPA_STATO_INVIO " +
             *      "WHERE ID_PROFILE = " + idProfile;
             *
             * logger.Debug(queryString);
             * IDataReader dr = db.executeReader(queryString);
             * while(dr.Read())
             * {
             *      listaIdCorr.Add(dr.GetValue(0).ToString());
             * }
             * dr.Close();
             * return listaIdCorr;*/
            #endregion
        }
Exemple #10
0
        /// <summary>
        /// Rimozione di un allegato
        /// </summary>
        /// <param name="allegato"></param>
        /// <returns></returns>
        public bool RemoveAttatchment(DocsPaVO.documento.Allegato allegato)
        {
            bool retValue = false;

            // Creazione contesto transazionale
            using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext())
            {
                // Se la nuova gestione degli allegati non risulta abilitata,
                // il documento allegato viene rimosso direttamente
                DocsPaDB.Query_DocsPAWS.Documenti dbDocumenti = new DocsPaDB.Query_DocsPAWS.Documenti();

                // Reperimento dell'oggetto InfoDocumento relativo all'allegato
                DocsPaVO.documento.InfoDocumento infoDocumentoAllegato = dbDocumenti.GetInfoDocumento(this.InfoUtente.idGruppo, this.InfoUtente.idPeople, allegato.docNumber, false);

                retValue = ((DocsPaDocumentale_ETDOCS.Documentale.DocumentManager) this.DocumentManagerETDOCS).Remove(new DocsPaVO.documento.InfoDocumento[1] {
                    infoDocumentoAllegato
                }, false);

                //quando funziona lo mettiamo in linea.. LL
                //if (retValue)
                //    retValue = this.DocumentManagerDocumentum.RemoveAttatchment(allegato);

                if (retValue)
                {
                    transactionContext.Complete();
                }
            }

            return(retValue);
        }
Exemple #11
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="idCorrispondente"></param>
        /// <returns></returns>
        private static ArrayList getIdCorrispondentiGruppo(string idCorrispondente)
        {
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            return(doc.GetIdCorrispondentiGruppo(idCorrispondente));

            #region Codice Commentato

            /*ArrayList idCorrispondenti = new ArrayList();
             * string queryString =
             *      "SELECT ID_COMP_GRUPPO FROM DPA_CORR_GRUPPO WHERE ID_GRUPPO="+idCorrispondente;
             * logger.Debug(queryString);
             * IDataReader dr = db.executeReader(queryString);
             * while (dr.Read())
             * {
             *      idCorrispondenti.Add(dr.GetValue(0).ToString());
             * }
             * dr.Close();
             *
             * if (idCorrispondenti.Count == 0)
             * {
             *      idCorrispondenti.Add(idCorrispondente);
             * }
             * return idCorrispondenti;*/
            #endregion
        }
Exemple #12
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="statoInvio"></param>
        /// <returns></returns>
        private static DocsPaVO.StatoInvio.StatoInvio getDettagliCorrispondente(DocsPaVO.StatoInvio.StatoInvio statoInvio)
        {
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            return(doc.GetDettagliCorrispondente(statoInvio));

            #region Codice Commentato

            /*if (statoInvio.tipoCanale.Equals("E"))
             * {
             *      return statoInvio;
             * }
             * string queryString =
             *      "SELECT  VAR_FAX, VAR_INDIRIZZO, VAR_CAP, VAR_PROVINCIA, VAR_CITTA " +
             *      "FROM DPA_DETT_GLOBALI WHERE ID_CORR_GLOBALI= " + statoInvio.idCorrispondente;
             * logger.Debug(queryString);
             * IDataReader dr = db.executeReader(queryString);
             * if (dr.Read())
             * {
             *      if(statoInvio.tipoCanale.Equals("F"))
             *      {
             *              statoInvio.indirizzo = dr.GetValue(0).ToString();
             *      }
             *      else
             *      {
             *              statoInvio.indirizzo = dr.GetValue(1).ToString();
             *              statoInvio.cap = dr.GetValue(2).ToString();
             *              statoInvio.provincia = dr.GetValue(3).ToString();
             *              statoInvio.citta = dr.GetValue(4).ToString();
             *      }
             * }
             * dr.Close();
             * return statoInvio;*/
            #endregion
        }
Exemple #13
0
        /// <summary>
        /// Reperimento del contentuto di un file dal repository Documentum
        /// </summary>
        /// <param name="docNumber"></param>
        /// <param name="version"></param>
        /// <param name="versionId"></param>
        /// <param name="versionLabel"></param>
        /// <returns></returns>
        public byte[] GetFile(string docNumber, string version, string versionId, string versionLabel)
        {
            logger.Info("BEGIN");
            byte[] content = null;
            DocsPaDB.Query_DocsPAWS.Documenti documenti = new DocsPaDB.Query_DocsPAWS.Documenti();
            List <BaseInfoDoc> listaSchedeDoc           = documenti.GetBaseInfoForDocument(null, docNumber, null);
            BaseInfoDoc        schedaDocBase            = listaSchedeDoc[0];
            SchedaDocumento    schedaDocumento          = documenti.GetDettaglioNoSecurity(this._infoUtente, schedaDocBase.IdProfile, schedaDocBase.DocNumber);

            try
            {
                if (!string.IsNullOrEmpty(_infoUtente.codWorkingApplication) && _infoUtente.codWorkingApplication == "DOCSPA")
                {
                    content = this.DocumentManagerSP.GetFile(docNumber, version, versionId, versionLabel);
                }
                else
                {
                    // Il reperimento dei file viene dapprima effettuato dal documentale ETNOTEAM
                    content = this.DocumentManagerETDOCS.GetFile(docNumber, version, versionId, versionLabel);
                }
            }
            catch (Exception ex)
            {
                logger.Debug("Errore nel reperimento del file nel documentale ETNOTEAM", ex);

                // Errore nel reperimento del file nel documentale ETNOTEAM
                content = null;
            }

            logger.Info("END");

            return(content);
        }
Exemple #14
0
        /// <summary>
        /// UpdatePerScollegamentoDoc
        /// </summary>
        /// <param name="systemId"></param>
        /// <param name="tipoProto"></param>
        public static bool updateProfilePerScollegamentoDoc(string systemId)
        {
            logger.Debug("scollegamento del documento: updateProfilePerScollegamentoDoc");

            DocsPaDB.Query_DocsPAWS.Documenti obj = new DocsPaDB.Query_DocsPAWS.Documenti();
            return(obj.UpdatePerScollegamentoDoc(systemId));
        }
Exemple #15
0
 internal void removeVers(string versionId)
 {
     DocsPaDB.Query_DocsPAWS.Documenti queryVersion = new DocsPaDB.Query_DocsPAWS.Documenti();
     if (!queryVersion.F_DeleteVersion(versionId))
     {
         throw new Exception("Errore nella eliminazione della versione");
     }
 }
Exemple #16
0
 internal static void setFirmatari(DocsPaVO.documento.FileRequest fileRequest)
 {
     if (fileRequest.firmatari != null && fileRequest.firmatari.Count > 0)
     {
         DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
         doc.UpdateFirmatari(fileRequest);
     }
 }
Exemple #17
0
        /// <summary>
        /// </summary>
        /// <param name="infoUtente"></param>
        /// <param name="infoDoc"></param>
        /// <param name="fasc"></param>
        public static void cancellaAreaLavoro(string idPeople, string idRuoloInUo, string idProfile, DocsPaVO.fascicolazione.Fascicolo fasc)
        {
            logger.Debug("cancellaAreaLavoro");
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();

            /*attenzione: aggiunto controllo su fasc.systemID, in alcuni casi è null quindi si va in
             * errore */
            /*if (!doc.DeleteAreaLavoro(fasc.systemID, infoDoc, infoUtente))
             * {
             *      throw new Exception();
             * }*/
            bool result;

            if (fasc == null)
            {
                result = doc.DeleteAreaLavoro(idPeople, idRuoloInUo, null, idProfile);
            }
            else
            {
                result = doc.DeleteAreaLavoro(idPeople, idRuoloInUo, fasc.systemID, idProfile);
            }
            if (!result)
            {
                //TODO : gestire la throw
                throw new Exception();
            }

            #region codice originale

            /*DocsPaWS.Utils.Database db=DocsPaWS.Utils.dbControl.getDatabase();
             * bool dbOpen=false;
             * try
             * {
             *      db.openConnection();
             *      dbOpen=true;
             *      //costruzione della query
             *      string idPeople=infoUtente.idPeople;
             *      string idRuoloInUo=infoUtente.idCorrGlobali;
             *      string deleteString="DELETE FROM DPA_AREA_LAVORO WHERE ID_PEOPLE="+idPeople+" AND ID_RUOLO_IN_UO="+idRuoloInUo;
             *      if(infoDoc!=null)
             *      {
             * deleteString=deleteString+" AND ID_PROFILE="+infoDoc.idProfile;
             *      }
             *      else{
             *         deleteString=deleteString+" AND ID_PROJECT="+fasc.systemID;
             *      }
             *      db.executeNonQuery(deleteString);
             *      db.closeConnection();
             * }
             * catch(Exception e){
             *      if(dbOpen){
             *         db.closeConnection();
             *      }
             *      throw e;
             * }*/
            #endregion
        }
Exemple #18
0
        /// <summary>
        /// Metodo per la costruzione dell'oggetto InfoDocumentDelivered contenente informazioni
        /// su ciò che è stato effettivamente recapitato a destinazione.
        /// </summary>
        /// <param name="schedaDocumento"></param>
        /// <returns></returns>
        private static InfoDocumentDelivered BuildInfoDocumentDelivered(SchedaDocumento schedaDocumento)
        {
            InfoDocumentDelivered infoDocDelivered = new InfoDocumentDelivered();

            if (schedaDocumento != null && !string.IsNullOrEmpty(schedaDocumento.docNumber))
            {
                try
                {
                    //Aggiungo le informazioni per il documento principale
                    FileRequest fileReq = (Documento)schedaDocumento.documenti[0];
                    DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
                    string impronta = string.Empty;
                    if (Int32.Parse(fileReq.fileSize) > 0)
                    {
                        doc.GetImpronta(out impronta, fileReq.versionId, fileReq.docNumber);
                    }
                    infoDocDelivered.MainDocument = new DocumentInfo
                    {
                        Name        = schedaDocumento.oggetto.descrizione,
                        FileName    = doc.GetNomeOriginale(fileReq.versionId, fileReq.docNumber),
                        Fingerprint = impronta
                    };

                    //Aggiungo le informazioni per gli allegati
                    infoDocDelivered.Attachments = new List <DocumentInfo>();
                    schedaDocumento.allegati     = doc.GetAllegati(schedaDocumento.docNumber, "user");
                    if (schedaDocumento.allegati != null && schedaDocumento.allegati.Count > 0)
                    {
                        DocumentInfo infoAttach;
                        foreach (Allegato allegato in schedaDocumento.allegati)
                        {
                            impronta = string.Empty;
                            if (Int32.Parse(allegato.fileSize) > 0)
                            {
                                doc.GetImpronta(out impronta, allegato.versionId, allegato.docNumber);
                            }

                            infoAttach = new DocumentInfo
                            {
                                Name         = allegato.descrizione,
                                VersionLabel = allegato.versionLabel,
                                FileName     = doc.GetNomeOriginale(allegato.versionId, allegato.docNumber),
                                Fingerprint  = impronta
                            };

                            infoDocDelivered.Attachments.Add(infoAttach);
                        }
                    }
                }
                catch (Exception e)
                {
                    logger.Error("BusinessLogic.interoperabilita.Semplificata.SimplifiedInteroperabilityRequestManager.BuildInfoDocumentDelivered. Errore durante la costruzione dell'oggetto contenente l'infomazione della spedizione : " + e.Message);
                }
            }
            return(infoDocDelivered);
        }
Exemple #19
0
        /// <summary>
        /// </summary>
        /// <param name="oggetto"></param>
        /// <param name="registro"></param>
        /// <param name="infoUtente"></param>
        /// <returns></returns>
        public static DocsPaVO.documento.Oggetto inserisciOggetto(string idAmministrazione, DocsPaVO.documento.Oggetto oggetto, DocsPaVO.utente.Registro registro, ref string errMsg)
        {
            logger.Debug("START : DocsPAWS > documenti > Oggettario.cs > inserisciOggetto");
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();

            logger.Debug("CALL : InsertOggettario");
            oggetto = doc.InsertOggettario(idAmministrazione, oggetto, registro, ref errMsg);

            #region Codice Commentato

            /*DocsPaWS.Utils.Database db = DocsPaWS.Utils.dbControl.getDatabase();
             *
             * db.openConnection();
             * string id_registro;
             * string id_amministrazione;
             * if (registro != null)
             * {
             *      id_registro = registro.systemId;
             * }
             * else
             * {
             *      id_registro = "null";
             * }
             * id_amministrazione = infoUtente.idAmministrazione;
             *
             * string numOggetti= checkOggetto(oggetto, registro,id_amministrazione,db);
             * if (!numOggetti.Equals("0"))
             * {
             *      throw new Exception("Oggetto già presente");
             * }
             *
             * try
             * {
             *      string insertString =
             *              "INSERT INTO DPA_OGGETTARIO " +
             *              "(" + DocsPaWS.Utils.dbControl.getSystemIdColName() + " ID_REGISTRO, ID_AMM, VAR_DESC_OGGETTO, CHA_OCCASIONALE) " +
             *              " VALUES (" + DocsPaWS.Utils.dbControl.getSystemIdNextVal("DPA_OGGETTARIO") +
             *              id_registro + ", " + id_amministrazione + ", '" + oggetto.descrizione.Replace("'", "''") + "', '0')";
             *
             *      logger.Debug(insertString);
             *      oggetto.systemId = db.insertLocked(insertString, "DPA_OGGETTARIO");
             *
             *      db.closeConnection();
             *
             * }
             * catch (Exception e)
             * {
             *      logger.Debug (e.Message);
             *      db.closeConnection();
             *      throw new Exception("F_System");
             * }*/
            #endregion

            logger.Debug("END : DocsPAWS > documenti > Oggettario.cs > inserisciOggetto");
            return(oggetto);
        }
Exemple #20
0
        public static void execAddLavoroRoleMethod(string idProfile, string tipoProto, string idRegistro, DocsPaVO.utente.InfoUtente infoUtente, DocsPaVO.fascicolazione.Fascicolo fasc)
        {
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            if (!doc.ExeAddLavoroRole(idProfile, tipoProto, idRegistro, infoUtente, fasc))
            {
                logger.Debug("Errore nella gestione dell'area lavoro ruolo (execAddLavoroRoleMethod)");

                throw new Exception();
            }
        }
Exemple #21
0
        private static DocsPaVO.trasmissione.Trasmissione ExecuteTransmission(DocsPaVO.documento.SchedaDocumento schedaDoc, string idGruppoDest, string idPeopleDest, DocsPaVO.utente.InfoUtente infoUtente)
        {
            DocsPaVO.trasmissione.Trasmissione trasm = new DocsPaVO.trasmissione.Trasmissione();

            DocsPaDB.Query_DocsPAWS.Utenti u = new DocsPaDB.Query_DocsPAWS.Utenti();

            trasm.ruolo  = u.GetRuoloByIdGruppo(infoUtente.idGruppo); //istanzaProcesso.RuoloProponente;
            trasm.utente = u.getUtenteById(infoUtente.idPeople);      //istanzaProcesso.UtenteProponente;
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();

            trasm.infoDocumento = schedaDoc.InfoDocumento;

            //INSERISCO LA RAGIONE DI TRASMISSIONE DI SISTEMA PER LIBRO FIRMA
            DocsPaVO.trasmissione.RagioneTrasmissione ragione = getRagioneTrasm(infoUtente.idAmministrazione, "D");

            //CREO LA TRASMISSIONE SINGOLA
            DocsPaVO.trasmissione.TrasmissioneSingola trasmSing = new DocsPaVO.trasmissione.TrasmissioneSingola();
            trasmSing.ragione   = ragione;
            trasmSing.tipoTrasm = "S";


            DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
            DocsPaVO.utente.Ruolo          ruolo  = utenti.GetRuoloByIdGruppo(idGruppoDest);
            trasmSing.corrispondenteInterno = ruolo;
            trasmSing.tipoDest = DocsPaVO.trasmissione.TipoDestinatario.RUOLO;

            System.Collections.ArrayList             listaUtenti = new System.Collections.ArrayList();
            DocsPaVO.addressbook.QueryCorrispondente qc          = new DocsPaVO.addressbook.QueryCorrispondente();
            qc.codiceRubrica = ruolo.codiceRubrica;
            System.Collections.ArrayList registri = ruolo.registri;
            qc.tipoUtente = DocsPaVO.addressbook.TipoUtente.INTERNO;
            //qc.idRegistri = registri;
            qc.idAmministrazione = ruolo.idAmministrazione;
            qc.getChildren       = true;
            qc.fineValidita      = true;
            listaUtenti          = BusinessLogic.Utenti.addressBookManager.listaCorrispondentiIntMethod(qc);
            System.Collections.ArrayList trasmissioniUt = new System.Collections.ArrayList();

            for (int k = 0; k < listaUtenti.Count; k++)
            {
                DocsPaVO.trasmissione.TrasmissioneUtente trUt = new DocsPaVO.trasmissione.TrasmissioneUtente();
                trUt.utente       = (DocsPaVO.utente.Utente)listaUtenti[k];
                trUt.daNotificare = (listaUtenti[k] as DocsPaVO.utente.Utente).idPeople.Equals(idPeopleDest);
                trasmissioniUt.Add(trUt);
            }

            trasmSing.trasmissioneUtente = trasmissioniUt;
            trasm.trasmissioniSingole    = new System.Collections.ArrayList()
            {
                trasmSing
            };
            return(BusinessLogic.Trasmissioni.ExecTrasmManager.saveExecuteTrasmMethod("", trasm));
        }
Exemple #22
0
        public static bool SetInstance(DocsPaVO.utente.InfoUtente infoUtente, string idAmm, DocsPaVO.documento.EtichettaInfo[] etichette)
        {
            bool success = false;

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            success = doc.setLettereDocumento(infoUtente, idAmm, etichette);
            DocsPaVO.documento.EtichettaInfo[] data = null;
            _intance.Remove(idAmm);
            data = doc.getLettereDocumento(infoUtente, idAmm);
            _intance.Add(idAmm, etichette);
            return(success);
        }
Exemple #23
0
        public static bool isAquisito(string docNumber, string versionId)
        {
            string impronta = null;

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            doc.GetImpronta(out impronta, versionId, docNumber);
            if (impronta.Length > 0)
            {
                return(true);
            }

            return(false);
        }
Exemple #24
0
 public static DocsPaVO.documento.AnelloDocumentale buildCatena(string idGruppo, string idPeople, string idNodo, System.Data.DataTable alberoTable)
 {
     DocsPaVO.documento.AnelloDocumentale nodo = new DocsPaVO.documento.AnelloDocumentale();
     DocsPaDB.Query_DocsPAWS.Documenti    doc  = new DocsPaDB.Query_DocsPAWS.Documenti();
     nodo.infoDoc = doc.GetInfoDocumento(idGruppo, idPeople, idNodo, true);
     System.Data.DataRow[] childRows = alberoTable.Select("ID_DOC_COLLEGATO=" + idNodo);
     for (int i = 0; i < childRows.Length; i++)
     {
         DocsPaVO.documento.AnelloDocumentale child = buildCatena(idGruppo, idPeople, childRows[i]["ID_DOCUMENTO"].ToString(), alberoTable);
         nodo.children.Add(child);
     }
     return(nodo);
 }
Exemple #25
0
        /// <summary>
        /// </summary>
        /// <param name="db"></param>
        /// <param name="idProfile"></param>
        /// <param name="debug"></param>
        private static void deleteParoleChiave(string idProfile)
        {
            #region Codice Commentato

            /*string deleteString =
             *                  "DELETE FROM DPA_PROF_PAROLE WHERE ID_PROFILE =" + idProfile;
             *          logger.Debug(deleteString);
             *          db.executeLocked(deleteString);*/
            #endregion

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            doc.DeleteParoleChiave(idProfile);
        }
Exemple #26
0
        /// <summary>
        /// </summary>
        /// <param name="idAmministrazione"></param>
        /// <param name="oggetto"></param>
        /// <returns></returns>
        public static bool modificaOggetto(string idAmministrazione, DocsPaVO.documento.Oggetto oggetto)
        {
            bool result;

            logger.Debug("START : DocsPAWS > documenti > Oggettario.cs > modificaOggetto");
            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();

            logger.Debug("CALL : UpdateOggettario");
            result = doc.UpdateOggettario(idAmministrazione, oggetto);

            logger.Debug("END : DocsPAWS > documenti > Oggettario.cs > modificaOggetto");
            return(result);
        }
Exemple #27
0
        /// <summary>
        /// </summary>
        /// <param name="db"></param>
        /// <param name="idProfile"></param>
        /// <param name="columnName"></param>
        /// <param name="debug"></param>
        private static void updateModProfile(/*DocsPaWS.Utils.Database db,*/ string idProfile, string columnName)
        {
            #region Codice Commentato

            /*string updateString =
             *                  "UPDATE PROFILE SET " + columnName + " = '1' " +
             *                  " WHERE SYSTEM_ID=" + idProfile;
             *          logger.Debug(queryString);
             *          db.executeLocked(queryString);*/
            #endregion

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            doc.UpdateModProfile(columnName, idProfile);
        }
Exemple #28
0
        private void GetData(DocsPaVO.utente.InfoUtente infoUtente, string idAmm)
        {
            DocsPaVO.documento.EtichettaInfo[] data = null;

            // Caricamento etichette relative all'amministrazione richiesta
            using (DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti())
            {
                data = doc.getLettereDocumento(infoUtente, idAmm);
            }
            _intance.Add(idAmm, data);

            //_intance.Add<infoUtente.idAmministrazione, data>;
            //  return data;
        }
Exemple #29
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="corrispondente"></param>
        /// <param name="idDocArrivoPar"></param>
        /// <param name="idRegistro"></param>
        /// <param name="idProfile"></param>

        public static void addStatoInvio(DocsPaVO.utente.Corrispondente corrispondente, string idDocArrivoPar, string idRegistro, string idProfile, string mail)
        {
            #region Codice Commentato

            /*ArrayList idCorrispondenti = getIdCorrispondentiGruppo(corrispondente.systemId);
             * DocsPaVO.StatoInvio.StatoInvio statoInvio;
             * for (int i = 0; i < idCorrispondenti.Count; i++)
             * {
             *      statoInvio = new DocsPaVO.StatoInvio.StatoInvio();
             *      statoInvio.idDocArrivoPar = idDocArrivoPar;
             *      statoInvio.idRegistro = idRegistro;
             *      statoInvio.idProfile = idProfile;
             *      statoInvio.idCorrispondente = (string) idCorrispondenti[i];
             *      //modifica per gestione - tipo spedizione  -- ATTENZIONE SE SI TRATTA DI UN GRUPPO NON HA MOLTO SENSO UN TIPO SPEDIZIONE VALIDO PER TUTTI I MEMBRI DEL GRUPPO
             *      //statoInvio = getDocumentType(db, statoInvio);
             *
             *      if (corrispondente.canalePref == null)
             *      {
             *              statoInvio = getDocumentType(statoInvio);
             *      }
             *      else
             *      {
             *                      statoInvio.typeId = corrispondente.canalePref.systemId;
             *      }
             *      if (statoInvio.typeId != null && !statoInvio.typeId.Equals(""))
             *      {
             *              statoInvio = getDatiCorrispondente(statoInvio);
             *              statoInvio = getDatiCanale(statoInvio);
             *              statoInvio = getDettagliCorrispondente(statoInvio);
             *      }
             *      string insertString =
             *              "INSERT INTO DPA_STATO_INVIO (" + DocsPa_V15_Utils.dbControl.getSystemIdColName() +
             *              "ID_CORR_GLOBALE, ID_PROFILE, ID_DOC_ARRIVO_PAR, ID_CANALE, " +
             *              "VAR_INDIRIZZO, VAR_CAP, VAR_CITTA, CHA_INTEROP, VAR_PROVINCIA, " +
             *              "ID_DOCUMENTTYPE, VAR_SERVER_SMTP, NUM_PORTA_SMTP, VAR_CODICE_AOO, VAR_CODICE_AMM) VALUES (" +
             *              DocsPa_V15_Utils.dbControl.getSystemIdNextVal("DPA_STATO_INVIO") +
             *              statoInvio.idCorrispondente + "," + statoInvio.idProfile + "," +
             *              statoInvio.idDocArrivoPar + ",'" + statoInvio.idCanale + "','" +
             *              statoInvio.indirizzo.Replace("'","''") + "','" + statoInvio.cap + "','" +
             *              statoInvio.citta.Replace("'","''") + "','" + statoInvio.interop + "','" +
             *              statoInvio.provincia.Replace("'","''") + "','" + statoInvio.typeId + "','" +
             *              statoInvio.serverSMTP.Replace("'","''") + "','" + statoInvio.portaSMTP + "','" +
             *              statoInvio.codiceAOO + "','" + statoInvio.codiceAmm + "')";
             *      logger.Debug(insertString);
             *      db.insertLocked(insertString, "DPA_STATO_INVIO");*/
            #endregion

            DocsPaDB.Query_DocsPAWS.Documenti doc = new DocsPaDB.Query_DocsPAWS.Documenti();
            doc.InsertStatoInvio(corrispondente, idDocArrivoPar, idRegistro, idProfile, mail);
        }
Exemple #30
0
        private static DocsPaVO.documento.SchedaDocumento getDocumentoInUscitaByDocPredisposto(DocsPaVO.utente.InfoUtente infoUtente, DocsPaVO.documento.SchedaDocumento schedaDoc)
        {
            logger.Debug("getDocumentoInUscitaByDocPredisposto");
            DataSet ds;

            DocsPaVO.documento.SchedaDocumento sd = new DocsPaVO.documento.SchedaDocumento();
            try
            {
                DocsPaDB.Query_DocsPAWS.Interoperabilita obj = new DocsPaDB.Query_DocsPAWS.Interoperabilita();
                string      sep       = DocsPaDB.Utils.Personalization.getInstance(schedaDoc.registro.idAmministrazione).getSepSegnatura();
                string[]    protoMitt = ((DocsPaVO.documento.ProtocolloEntrata)(schedaDoc.protocollo)).descrizioneProtocolloMittente.Split(sep.ToCharArray(), 2);
                CultureInfo ci        = new CultureInfo("it-IT");
                string[]    formati   = { "dd/MM/yyyy", "yyyy-MM-dd", "DD/MM/YYYY hh:mm:ss", "DD/MM/YYYY hh.mm.ss", "DD/MM/YYYY HH.mm.ss", "DD/MM/YYYY HH:mm:ss" };

                DateTime dataRegistrazione = DateTime.ParseExact(((DocsPaVO.documento.ProtocolloEntrata)(schedaDoc.protocollo)).dataProtocolloMittente, formati, ci.DateTimeFormat, DateTimeStyles.AllowWhiteSpaces);


                if (protoMitt != null && protoMitt.Length > 1)
                {
                    string regProto = protoMitt[0];
                    string numProto = protoMitt[1];
                    int    anno     = dataRegistrazione.Year;

                    DocsPaDB.Query_DocsPAWS.Interoperabilita interop = new DocsPaDB.Query_DocsPAWS.Interoperabilita();
                    DocsPaDB.Query_DocsPAWS.Documenti        doc     = new DocsPaDB.Query_DocsPAWS.Documenti();

                    interop.getIdProtocolloUscitaOriginario(out ds, numProto, regProto, anno);

                    if (ds != null && ds.Tables[0].Rows.Count > 0)
                    {
                        DataRow row       = ds.Tables["PROTOUSCITA"].Rows[0];
                        string  docNumber = row["DOCNUMBER"].ToString();

                        if (docNumber != null && docNumber != "")
                        {
                            sd = doc.GetSchedaDocumentoByID(infoUtente, docNumber);
                        }
                    }
                }
            }
            catch (Exception e)
            {
                logger.Error(e.ToString());

                logger.Error("Errore nella gestione dell'interoperabilità. (getDocumentoInUscitaByDocPredisposto", e);
                throw e;
            }
            return(sd);
        }