Esempio n. 1
0
        protected void FetchRegistri()
        {
            // Inserimento elemento vuoto
            if (RegistryManager.GetRegistryInSession() == null)
            {
                RegistryManager.SetRegistryInSession(RegistryManager.GetRegistriesByRole(UserManager.GetSelectedRole().systemId).FirstOrDefault());
            }

            this.cboRegistriRF.Items.Add(new ListItem(string.Empty, string.Empty));
            DocsPaWR.Registro[] registriRF = MultiBoxManager.GetRegisterEnabledSend().ToArray();
            this.cboRegistriRF.Items.AddRange(
                (from reg in registriRF
                 select new ListItem(
                     string.Format("{0} - {1}", reg.codRegistro, reg.descrizione), reg.systemId)).ToArray());
            int countRF = registriRF.Count(e => e.chaRF == "1");

            this.cboRegistriRF.SelectedValue = string.Empty;
            if (!string.IsNullOrEmpty(this.cboRegistriRF.SelectedValue))
            {
                SetCaselleRegistro("1");
                ddl_caselle.Enabled = true;
            }
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="infoSpedizione"></param>
        protected void FetchRegistri(DocsPaWR.SpedizioneDocumento infoSpedizione)
        {
            // Se è presente almeno un destinatario interoperante,
            // vengono caricati i registri e gli RF visibili dall'utente corrente
            if (infoSpedizione.DestinatariEsterni.Where(e => e.Interoperante).Count() > 0)
            {
                // Inserimento elemento vuoto
                this.cboRegistriRF.Items.Add(new ListItem(string.Empty, string.Empty));

                DocsPaWR.Registro[] registriRF = MultiBoxManager.GetRegisterEnabledSend().ToArray();

                this.cboRegistriRF.Items.AddRange(
                    (from reg in registriRF
                     select new ListItem(
                         string.Format("{0} - {1}", reg.codRegistro, reg.descrizione), reg.systemId)).ToArray());

                int countRF = registriRF.Count(e => e.chaRF == "1");

                if (this.SelezionaRFPredefinito)
                {
                    if (countRF == 0)
                    {
                        // Nessun RF presente, selezione sul registro di protocollazione
                        //if (registriRF.Where(reg => reg.systemId == infoSpedizione.IdRegistroRfMittente) != null)
                        if (registriRF.Count(reg => reg.systemId == infoSpedizione.IdRegistroRfMittente) > 0) //Riallineamento codice da versione 3.22
                        {
                            this.cboRegistriRF.SelectedValue = registriRF.Where(reg => reg.systemId == infoSpedizione.IdRegistroRfMittente).First().systemId;
                        }
                        else
                        {
                            this.cboRegistriRF.SelectedValue = string.Empty;
                        }
                        //this.cboRegistriRF.SelectedValue = registriRF.Contains(UserManager.getRegistroBySistemId(this.Page, infoSpedizione.IdRegistroRfMittente)) ? infoSpedizione.IdRegistroRfMittente : string.Empty;
                    }
                    else if (countRF == 1)
                    {
                        // Se è presente un solo RF, viene selezionato per impostazione predefinita nella combo

                        DocsPaWR.Registro rf = registriRF.Where(e => e.chaRF == "1").First();
                        this.cboRegistriRF.SelectedValue = rf.systemId;
                    }
                    else if (countRF > 1)
                    {
                        // In presenza di più di un RF, la selezione viene effettuata sull'elemento vuoto
                        this.cboRegistriRF.SelectedValue = string.Empty;
                    }
                }
                else
                {
                    //this.cboRegistriRF.SelectedValue = registriRF.Contains(UserManager.getRegistroBySistemId(this.Page,infoSpedizione.IdRegistroRfMittente)) ? infoSpedizione.IdRegistroRfMittente : string.Empty;
                    if (countRF == 0)
                    {
                        //if (registriRF.Where(reg => reg.systemId == infoSpedizione.IdRegistroRfMittente) != null)
                        if (registriRF.Count(reg => reg.systemId == infoSpedizione.IdRegistroRfMittente) > 0) //Riallineamento codice da versione 3.22
                        {
                            this.cboRegistriRF.SelectedValue = registriRF.Where(reg => reg.systemId == infoSpedizione.IdRegistroRfMittente).First().systemId;
                        }
                        else
                        {
                            this.cboRegistriRF.SelectedValue = string.Empty;
                        }
                    }
                    else
                    {
                        // In presenza di più di un RF, seleziona elemento vuoto
                        this.cboRegistriRF.SelectedValue = string.Empty;
                    }
                }

                if (!string.IsNullOrEmpty(this.cboRegistriRF.SelectedValue))
                {
                    SetCaselleRegistro("1");
                    SetRicevutaPecCombo();
                    ddl_caselle.Enabled        = true;
                    cboTipoRicevutaPec.Enabled = true;
                    // Refresh id registro selezionato e mail address
                    infoSpedizione.IdRegistroRfMittente = this.cboRegistriRF.SelectedValue;
                    infoSpedizione.mailAddress          = this.ddl_caselle.SelectedValue;
                    this.SetSpedizioneDocumento(infoSpedizione);
                }
            }
        }