Пример #1
0
        /// <summary>
        /// Caricamento dati protocollo interno
        /// </summary>
        private void FetchProtocolloInterno()
        {
            ProtocolloInterno protocollo = this.GetSchedaDocumento().protocollo as ProtocolloInterno;

            if (protocollo != null)
            {
                this.txtCodMitt.Text  = protocollo.mittente.codiceRubrica;
                this.txtDescMitt.Text = protocollo.mittente.descrizione;

                this.FetchItemsDestinatari(this.lstDestinatari.Items, protocollo.destinatari);
                this.FetchItemsDestinatari(this.lstDestinatariCC.Items, protocollo.destinatariConoscenza);
            }
        }
Пример #2
0
        /// <summary>
        /// Funzione per la creazione dell'oggetto protocollo in Ingresso
        /// </summary>
        /// <param name="rowData">L'oggetto con le informazioni sul documenti interno da creare</param>
        /// <param name="registrySyd">Il system id del registro</param>
        /// <param name="rfSyd">Il system id dell'RF</param>
        /// <param name="administrationSyd">Il system id dell'amministrazione</param>
        /// <param name="isSmistamentoEnabled">True se è abilitato lo smistamento</param>
        /// <param name="userInfo">Le informazioni sull'utente che ha lanciato la procedura</param>
        /// <param name="role">Il ruolo con cui è stata lanciata la procedura</param>
        /// <returns>L'oggetto con le informazioni sul protocollo da creare</returns>
        protected override Protocollo CreateProtocolObject(DocumentRowData rowData, string registrySyd, string rfSyd, string administrationSyd, bool isSmistamentoEnabled, InfoUtente userInfo, Ruolo role)
        {
            // Creazione dell'oggetto ProtocolloInterno
            ProtocolloInterno ownProto = new ProtocolloInterno();

            // Il corrispondente da inserire
            Corrispondente corr;

            // Il codice corrispondente da analizzare
            // Questo array dovrà contenere due elementi: Il codice corrispondente
            // e la tipologia (M, D, CC)
            string[] corrToAdd;

            // Creazione lista destinatari e destinatari conoscenza
            ownProto.destinatari           = new ArrayList();
            ownProto.destinatariConoscenza = new ArrayList();

            // Per ogni codice corrispondente in CorrCode...
            foreach (string corrDesc in rowData.CorrCode)
            {
                // Spezzettamento dei dati sul corrispondente
                corrToAdd = corrDesc.Split('#');

                // Se non ci sono più tre elementi, eccezione
                // Tre elementi poiché il formato con cui è scritto il codice è
                // <Codice>#D|CC#
                if (corrToAdd.Length != 3)
                {
                    throw new Exception(String.Format(
                                            "Specifica corrispondente non valida: {0}",
                                            corrDesc));
                }

                // A seconda del tipo di corrispondente bisogna intraprendere
                // azioni differenti
                switch (corrToAdd[1].ToUpper().Trim())
                {
                case "M":           // Mittente del protocollo
                    // Reperimento del corrispondente
                    corr = ImportUtils.GetCorrispondenteByCode(
                        ParametriRicercaRubrica.CallType.CALLTYPE_PROTO_INT_MITT,
                        corrToAdd[0].Trim(),
                        role,
                        userInfo,
                        registrySyd,
                        rfSyd,
                        isSmistamentoEnabled,
                        DocsPaVO.addressbook.TipoUtente.GLOBALE);

                    // Impostazione del mittente, se individuato
                    if (corr != null)
                    {
                        ownProto.mittente = corr;
                    }
                    break;

                case "D":           // Destinatario principale
                    // Reperimento del corrispondente
                    corr = ImportUtils.GetCorrispondenteByCode(
                        ParametriRicercaRubrica.CallType.CALLTYPE_PROTO_INT_DEST,
                        corrToAdd[0].Trim(),
                        role,
                        userInfo,
                        registrySyd,
                        rfSyd,
                        isSmistamentoEnabled,
                        DocsPaVO.addressbook.TipoUtente.GLOBALE);

                    // Aggiunta del corrispondente alla lista dei destinatari, se individuato
                    if (corr != null)
                    {
                        ownProto.destinatari.Add(corr);
                    }
                    break;

                case "CC":          // Destinatario in copia
                    // Reperimento del corrispondente
                    corr = ImportUtils.GetCorrispondenteByCode(
                        ParametriRicercaRubrica.CallType.CALLTYPE_PROTO_INT_DEST,
                        corrToAdd[0].Trim(),
                        role,
                        userInfo,
                        registrySyd,
                        rfSyd,
                        isSmistamentoEnabled,
                        DocsPaVO.addressbook.TipoUtente.GLOBALE);

                    // Aggiunta del corrispondente alla lista dei destinatari, se individuato
                    if (corr != null)
                    {
                        ownProto.destinatariConoscenza.Add(corr);
                    }
                    break;
                }
            }

            // Aggiornamento di destinatari, mittenti e destinatari in conoscenza
            ownProto.daAggiornareDestinatari           = true;
            ownProto.daAggiornareMittente              = true;
            ownProto.daAggiornareDestinatariConoscenza = true;

            // Restituzione dell'oggetto con le informazioni sul protocollo
            return(ownProto);
        }
Пример #3
0
        /// <summary>
        /// Costruttore con i relativi controlli!!!
        /// </summary>
        /// <param name="schDoc"></param>
        public Metadati(DocsPaVO.documento.SchedaDocumento schDoc)
        {
            try
            {
                dataCreazione       = schDoc.dataCreazione;
                oraCreazione        = schDoc.oraCreazione;
                docNumber           = schDoc.docNumber;
                descMezzoSpedizione = schDoc.descMezzoSpedizione;

                if (schDoc.tipoProto.ToUpper() == "G")
                {
                    tipoProto = "non protocollato";
                }
                else
                {
                    tipoProto = schDoc.tipoProto;
                }

                if (schDoc.protocollo != null)
                {
                    if (schDoc.protocollo.GetType() == typeof(DocsPaVO.documento.ProtocolloEntrata))
                    {
                        DocsPaVO.documento.ProtocolloEntrata protE = (DocsPaVO.documento.ProtocolloEntrata)schDoc.protocollo;
                        ProtocolloEntrata protocolloE = new ProtocolloEntrata();
                        protocolloE.anno = protE.anno;
                        protocolloE.dataProtocollazione           = protE.dataProtocollazione;
                        protocolloE.dataProtocolloMittente        = protE.dataProtocolloMittente;
                        protocolloE.descrizioneProtocolloMittente = protE.descrizioneProtocolloMittente;
                        protocolloE.numero    = protE.numero;
                        protocolloE.segnatura = protE.segnatura;
                        if (protE.mittente != null)
                        {
                            protocolloE.mittente             = new Corrispondente();
                            protocolloE.mittente.descrizione = protE.mittente.descrizione;
                        }
                        else
                        {
                            protocolloE.mittente = null;
                        }
                        protocollo = new ProtocolloEntrata();
                        protocollo = protocolloE;
                    }

                    if (schDoc.protocollo.GetType() == typeof(DocsPaVO.documento.ProtocolloInterno))
                    {
                        DocsPaVO.documento.ProtocolloInterno protI = (DocsPaVO.documento.ProtocolloInterno)schDoc.protocollo;
                        ProtocolloInterno protocolloI = new ProtocolloInterno();
                        protocolloI.anno = protI.anno;
                        protocolloI.dataProtocollazione = protI.dataProtocollazione;
                        protocolloI.numero    = protI.numero;
                        protocolloI.segnatura = protI.segnatura;
                        if (protI.mittente != null)
                        {
                            protocolloI.mittente             = new Corrispondente();
                            protocolloI.mittente.descrizione = protI.mittente.descrizione;
                        }
                        else
                        {
                            protocolloI.mittente = null;
                        }
                        if (protI.destinatari.Count > 0)
                        {
                            protocolloI.destinatari = new ArrayList();
                            for (int i = 0; i < protI.destinatari.Count; i++)
                            {
                                DocsPaVO.utente.Corrispondente corr = (DocsPaVO.utente.Corrispondente)protI.destinatari[i];
                                Corrispondente corrCons             = new Corrispondente();
                                corrCons.descrizione = corr.descrizione;
                                protocolloI.destinatari.Add(corrCons);
                            }
                        }
                        if (protI.destinatariConoscenza.Count > 0)
                        {
                            protocolloI.destinatariConoscenza = new ArrayList();
                            for (int i = 0; i < protI.destinatariConoscenza.Count; i++)
                            {
                                DocsPaVO.utente.Corrispondente corr = (DocsPaVO.utente.Corrispondente)protI.destinatariConoscenza[i];
                                Corrispondente corrCons             = new Corrispondente();
                                corrCons.descrizione = corr.descrizione;
                                protocolloI.destinatariConoscenza.Add(corrCons);
                            }
                        }
                        protocollo = new ProtocolloInterno();
                        protocollo = protocolloI;
                    }

                    if (schDoc.protocollo.GetType() == typeof(DocsPaVO.documento.ProtocolloUscita))
                    {
                        DocsPaVO.documento.ProtocolloUscita protU = (DocsPaVO.documento.ProtocolloUscita)schDoc.protocollo;
                        ProtocolloUscita protocolloU = new ProtocolloUscita();
                        protocolloU.anno = protU.anno;
                        protocolloU.dataProtocollazione = protU.dataProtocollazione;
                        protocolloU.numero    = protU.numero;
                        protocolloU.segnatura = protU.segnatura;
                        if (protU.mittente != null)
                        {
                            protocolloU.mittente             = new Corrispondente();
                            protocolloU.mittente.descrizione = protU.mittente.descrizione;
                        }
                        else
                        {
                            protocolloU.mittente = null;
                        }
                        if (protU.destinatari.Count > 0)
                        {
                            protocolloU.destinatari = new ArrayList();
                            for (int i = 0; i < protU.destinatari.Count; i++)
                            {
                                DocsPaVO.utente.Corrispondente corr = (DocsPaVO.utente.Corrispondente)protU.destinatari[i];
                                Corrispondente corrCons             = new Corrispondente();
                                corrCons.descrizione = corr.descrizione;
                                protocolloU.destinatari.Add(corrCons);
                            }
                        }
                        if (protU.destinatariConoscenza.Count > 0)
                        {
                            protocolloU.destinatariConoscenza = new ArrayList();
                            for (int i = 0; i < protU.destinatariConoscenza.Count; i++)
                            {
                                DocsPaVO.utente.Corrispondente corr = (DocsPaVO.utente.Corrispondente)protU.destinatariConoscenza[i];
                                Corrispondente corrCons             = new Corrispondente();
                                corrCons.descrizione = corr.descrizione;
                                protocolloU.destinatariConoscenza.Add(corrCons);
                            }
                        }
                        protocollo = new ProtocolloUscita();
                        protocollo = protocolloU;
                    }
                }

                if (schDoc.oggetto != null)
                {
                    oggetto             = new Oggetto();
                    oggetto.descrizione = schDoc.oggetto.descrizione;
                }

                if (schDoc.tipologiaAtto != null)
                {
                    tipologiaAtto             = new TipologiaAtto();
                    tipologiaAtto.descrizione = schDoc.tipologiaAtto.descrizione;
                }

                if (schDoc.registro != null)
                {
                    registro             = new Registro();
                    registro.codRegistro = schDoc.registro.codRegistro;
                }

                if (schDoc.protocollatore != null)
                {
                    protocollatore = new Protocollatore();
                    protocollatore.Nome_Cognome = schDoc.protocollatore.utente_idPeople;
                }

                if (schDoc.creatoreDocumento != null)
                {
                    creatoreDocumento = new CreatoreDocumento();
                    creatoreDocumento.Nome_Cognome = schDoc.creatoreDocumento.idPeople;
                }

                if (schDoc.documenti.Count > 0)
                {
                    documenti = new ArrayList();
                    for (int i = 0; i < schDoc.documenti.Count; i++)
                    {
                        DocsPaVO.documento.Documento doc = (DocsPaVO.documento.Documento)schDoc.documenti[i];
                        Documento docCons = new Documento();
                        docCons.autore          = doc.autore;
                        docCons.dataInserimento = doc.dataInserimento;
                        docCons.descrizione     = doc.descrizione;
                        docCons.version         = doc.version;
                        documenti.Add(docCons);
                    }
                }

                if (schDoc.allegati.Count > 0)
                {
                    allegati = new ArrayList();
                    foreach (documento.Allegato t in schDoc.allegati)
                    {
                        allegati.Add(new Allegato()
                        {
                            autore          = t.autore,
                            dataInserimento = t.dataInserimento,
                            descrizione     = t.descrizione,
                            version         = t.version
                        });
                    }
                }

                if (schDoc.paroleChiave.Count > 0)
                {
                    paroleChiave = new ArrayList();
                    foreach (documento.ParolaChiave t in schDoc.paroleChiave)
                    {
                        paroleChiave.Add(new ParolaChiave {
                            descrizione = t.descrizione
                        });
                    }
                }
            }
            catch
            {
                // Ignored
            }
        }