Пример #1
0
        private static void EstraiDatiProtoEntrata(DocsPaVO.documento.SchedaDocumento schDoc, Registrazione registrazione)
        {
            DocsPaVO.documento.ProtocolloEntrata protEnt = schDoc.protocollo as DocsPaVO.documento.ProtocolloEntrata;
            if (protEnt != null)
            {
                registrazione.ProtocolloMittente = new ProtocolloMittente
                {
                    Protocollo      = protEnt.numero,
                    MezzoSpedizione = protEnt.mezzoSpedizione.ToString(),
                    Data            = protEnt.dataProtocollazione
                };

                DocsPaVO.utente.Corrispondente corr = protEnt.mittente;
                List <Mittente> mittList            = new List <Mittente>();

                if (protEnt.mittenti != null)
                {
                    foreach (object c in protEnt.mittenti)
                    {
                        DocsPaVO.utente.Corrispondente corrItem = c as DocsPaVO.utente.Corrispondente;
                        Mittente m = new Mittente
                        {
                            Codice                 = corrItem.codiceRubrica,
                            IndirizzoMail          = corrItem.email,
                            Descrizione            = corrItem.descrizione,
                            ProtocolloMittente     = protEnt.numero,
                            DataProtocolloMittente = protEnt.dataProtocolloMittente
                        };
                        mittList.Add(m);
                    }
                }
                if (protEnt.mittenteIntermedio != null)
                {
                    Mittente m = new Mittente
                    {
                        Codice                 = protEnt.mittenteIntermedio.codiceRubrica,
                        IndirizzoMail          = protEnt.mittenteIntermedio.email,
                        Descrizione            = protEnt.mittenteIntermedio.descrizione,
                        ProtocolloMittente     = protEnt.numero,
                        DataProtocolloMittente = protEnt.dataProtocolloMittente
                    };
                    mittList.Add(m);
                }
                {
                    Mittente m = new Mittente
                    {
                        Codice                 = corr.codiceRubrica,
                        IndirizzoMail          = corr.email,
                        Descrizione            = corr.descrizione,
                        ProtocolloMittente     = protEnt.numero,
                        DataProtocolloMittente = protEnt.dataProtocolloMittente
                    };
                    mittList.Add(m);
                }
                registrazione.Mittente = mittList.ToArray();
            }
        }
Пример #2
0
        /// <summary>
        /// Caricamento nella lista delle proprietà ocs
        /// della descrizione dei mittenti / destinatari del documento
        /// </summary>
        /// <param name="schedaDocumento"></param>
        /// <param name="metaDataList"></param>
        private static void fetchMittentiDestinatari(DocsPaVO.documento.SchedaDocumento schedaDocumento, List <MetadataType> metaDataList)
        {
            if (schedaDocumento.tipoProto.Equals("A"))
            {
                // Se il documento è in ingresso, viene reperito solo il mittente
                DocsPaVO.documento.ProtocolloEntrata pe = (DocsPaVO.documento.ProtocolloEntrata)schedaDocumento.protocollo;

                if (pe.mittente != null && pe.mittente.descrizione != null)
                {
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.MITTENTE, pe.mittente.ToString()));
                }
            }
            else if (schedaDocumento.tipoProto.Equals("P"))
            {
                // Se il documento è in uscita, vengono reperiti sia il mittente che i destinatari (anche per conoscenza)
                DocsPaVO.documento.ProtocolloUscita pu = (DocsPaVO.documento.ProtocolloUscita)schedaDocumento.protocollo;
                if (pu.mittente != null && pu.mittente.descrizione != null)
                {
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.MITTENTE, pu.mittente.ToString()));
                }

                if (pu.destinatari != null && pu.destinatari.Count > 0)
                {
                    List <string> destList = new List <string>();
                    foreach (DocsPaVO.utente.Corrispondente item in pu.destinatari)
                    {
                        destList.Add(item.ToString());
                    }
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.DESTINATARI, destList.ToArray()));
                }

                if (pu.destinatariConoscenza != null && pu.destinatariConoscenza.Count > 0)
                {
                    List <string> destList = new List <string>();
                    foreach (DocsPaVO.utente.Corrispondente item in pu.destinatariConoscenza)
                    {
                        destList.Add(item.ToString());
                    }
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.DESTINATARI_CC, destList.ToArray()));
                }
            }
            else if (schedaDocumento.tipoProto.Equals("I"))
            {
                // Se il documento è interno, vengono reperiti sia il mittente che i destinatari (anche per conoscenza)
                DocsPaVO.documento.ProtocolloInterno pi = (DocsPaVO.documento.ProtocolloInterno)schedaDocumento.protocollo;
                if (pi.mittente != null && pi.mittente.descrizione != null)
                {
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.MITTENTE, pi.mittente.ToString()));
                }

                if (pi.destinatari != null && pi.destinatari.Count > 0)
                {
                    List <string> destList = new List <string>();
                    foreach (DocsPaVO.utente.Corrispondente item in pi.destinatari)
                    {
                        destList.Add(item.ToString());
                    }
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.DESTINATARI, destList.ToArray()));
                }

                if (pi.destinatariConoscenza != null && pi.destinatariConoscenza.Count > 0)
                {
                    List <string> destList = new List <string>();
                    foreach (DocsPaVO.utente.Corrispondente item in pi.destinatariConoscenza)
                    {
                        destList.Add(item.ToString());
                    }
                    metaDataList.Add(OCSUtils.getMetadataItem(DocsPaObjectType.TypeDocumentoProtocollo.DESTINATARI_CC, destList.ToArray()));
                }
            }
        }