示例#1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="spedizione"></param>
        public void SaveData(DocsPAWA.DocsPaWR.SpedizioneDocumento spedizione)
        {
            foreach (DataGridItem item in this.DataGrid.Items)
            {
                CheckBox chkIncludiInSpedizione = this.GetCheckBoxIncludiInSpedizione(item);
                if (chkIncludiInSpedizione != null)
                {
                    DocsPaWR.Destinatario destinatario = this.GetDestinatario(spedizione, this.GetIdDestinatario(item));
                    if (destinatario != null)
                    {
                        destinatario.IncludiInSpedizione = chkIncludiInSpedizione.Checked;
                    }

                    bool go = true;
                    for (int i = 0; i < spedizione.DestinatariEsterni.Length; i++)
                    {
                        foreach (DocsPaWR.Corrispondente corr in spedizione.DestinatariEsterni[i].DatiDestinatari)
                        {
                            if (corr.systemId.Equals(destinatario.Id))
                            {
                                spedizione.DestinatariEsterni[i].Email = (item.FindControl("ddl_caselle_corr_est") as DropDownList).SelectedValue.Trim();
                                go = false;
                                break;
                            }
                        }
                        if (!go)
                        {
                            break;
                        }
                    }
                }
            }
        }
示例#2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="spedizione"></param>
        /// <returns></returns>
        protected virtual DocsPaWR.Destinatario[] GetDestinatari(DocsPAWA.DocsPaWR.SpedizioneDocumento spedizione)
        {
            if (this.TipoDestinatario == TipoDestinatarioEnum.Interno)
            {
                return(spedizione.DestinatariInterni);
            }
            else if (this.TipoDestinatario == TipoDestinatarioEnum.Esterno)
            {
                return((from c in spedizione.DestinatariEsterni
                        where c.Interoperante && (c.DatiDestinatari[0].tipoIE != null && c.DatiDestinatari[0].tipoIE.Equals("I") ||
                                                  (c.DatiDestinatari[0].canalePref != null && !c.DatiDestinatari[0].canalePref.descrizione.Equals("Interoperabilità PITRE")) ||
                                                  (c.DatiDestinatari[0].tipoCorrispondente == "O" && !string.IsNullOrEmpty(c.DatiDestinatari[0].email)))
                        select c).ToArray());
            }
            else if (this.TipoDestinatario == TipoDestinatarioEnum.EsternoNonInteroperante)
            {
                return((from c in spedizione.DestinatariEsterni
                        where !c.Interoperante
                        select c).ToArray());
            }
            else if (this.TipoDestinatario == TipoDestinatarioEnum.SimplifiedInteroperability)
            {
                return((from c in spedizione.DestinatariEsterni
                        where c.Interoperante &&
                        c.DatiDestinatari[0].canalePref != null &&
                        c.DatiDestinatari[0].canalePref.descrizione.Equals("Interoperabilità PITRE") &&
                        c.DatiDestinatari[0].Url != null &&
                        c.DatiDestinatari[0].Url.Length > 0 &&
                        !String.IsNullOrEmpty(c.DatiDestinatari[0].Url[0].Url)
                        select c).ToArray());
            }

            return(null);
        }
示例#3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="spedizione"></param>
 /// <param name="tipoDestinatario"></param>
 public void FetchData(DocsPAWA.DocsPaWR.SpedizioneDocumento spedizione, TipoDestinatarioEnum tipoDestinatario)
 {
     this.Spedizione          = spedizione;
     this.TipoDestinatario    = tipoDestinatario;
     this.DataGrid.DataSource = this.GetDestinatari(spedizione);
     this.DataGrid.DataBind();
 }