private void loadSchede(int idcliente)
        {
            var list = dag.cercaSchedeNotificaBySoggiorno(idSoggiorno);
            //se ci sono risultati carico quelli
            if (list.Count > 0)
            {
                schede = new ObservableCollection<SchedaNotifica>(list);
            }
            else
            {//creo di default la scheda per il cliente del soggiorno (dati potrebbero essere incompleti)
                schede = new ObservableCollection<SchedaNotifica>();
                var c = dag.cercaCliente(idcliente);
                var sc = new SchedaNotifica { Anno = DateTime.Today.Year, Numero = maxScheda + 1 };
                sc.Cliente = c;
                sc.SoggiornoId = idSoggiorno;
                schede.Add(sc);

                maxScheda++;
            }
            view = new ListCollectionView(schede);
            dataGridSchede.DataContext = view;
        }
Пример #2
0
        internal List<SchedaNotifica> cercaSchedeNotificaBySoggiorno(int idsoggiorno)
        {
            
            OleDbConnection conn = new OleDbConnection(Properties.Settings.Default.SoggiorniDbConnectionString);
            string queryString = "SELECT * FROM QuerySchedeBySoggiorno";
            OleDbCommand cmd = new OleDbCommand(queryString, conn);
            cmd.Parameters.Add("Soggiorno", OleDbType.Char, 255).Value = idsoggiorno;
            conn.Open();
            OleDbDataReader reader = cmd.ExecuteReader();
            var sclist = new List<SchedaNotifica>();
            SchedaNotifica sc;

            var comta = new ComuneTableAdapter();
            SoggiorniDbDataSet.ComuneDataTable comdt;

            var stata = new StatoTableAdapter();
            SoggiorniDbDataSet.StatoDataTable stadt;

            var tdocta = new TipoDocumentoTableAdapter();
            SoggiorniDbDataSet.TipoDocumentoDataTable tdocdt;

            while (reader.Read())
            {
                /*
                 * SchedaNotifica.Cliente, Cliente.Nome, Cliente.Cognome, Cliente.IsFemmina, Cliente.Indirizzo, 
                 * Cliente.ComuneResid, Cliente.StatoResid, Cliente.DataNascita, Cliente.ComuneNascita, 
                 * Cliente.StatoNascita, Cliente.StatoCittadinanza, Cliente.TipoDocumento, Cliente.NumDocumento, 
                 * Cliente.DataRilascioDoc, Cliente.ComuneRilascioDoc, Cliente.StatoRilascioDoc, Cliente.ProvenienzaIstat,
                 * SchedaNotifica.Numero, SchedaNotifica.Anno
                 */
                sc = new SchedaNotifica
                {
                    SoggiornoId = idsoggiorno,
                    Cliente = new Cliente{
                        Id = int.Parse(reader[0].ToString()),
                        Nome = reader[1].ToString(),
                        Cognome = reader[2].ToString(),
                        IsFemmina = bool.Parse(reader[3].ToString()),
                        Indirizzo = reader[4].ToString(),
                        ComuneResidenza = reader[5].ToString()=="" ? null : new Comune{ Id = int.Parse(reader[5].ToString())},
                        StatoResidenza = reader[6].ToString() == "" ? null : new Stato { Id = int.Parse(reader[6].ToString()) },
                        DataNascita = reader[7].ToString()=="" ? DateTime.MinValue : DateTime.Parse(reader[7].ToString()),
                        ComuneNascita = reader[8].ToString() == "" ? null : new Comune { Id = int.Parse(reader[8].ToString()) },
                        StatoNascita = reader[9].ToString() == "" ? null : new Stato { Id = int.Parse(reader[9].ToString()) },
                        StatoCittadinanza = reader[10].ToString() == "" ? null : new Stato { Id = int.Parse(reader[10].ToString()) },
                        TipoDoc = reader[11].ToString() == "" ? null : new TipoDocumento { Id = int.Parse(reader[11].ToString()) },
                        NumDoc = reader[12].ToString(),
                        DataRilascioDoc = reader[13].ToString() == "" ? DateTime.MinValue : DateTime.Parse(reader[13].ToString()),
                        ComuneRilascioDoc = reader[14].ToString() == "" ? null : new Comune { Id = int.Parse(reader[14].ToString()) },
                        StatoRilascioDoc = reader[15].ToString() == "" ? null : new Stato { Id = int.Parse(reader[15].ToString()) },
                        ProvenIstat= reader[16].ToString() == "" ? null : new ProvenienzaIstat { Id = int.Parse(reader[16].ToString()) }
                    },
                    Numero = reader[17].ToString()=="" ? 0 : int.Parse(reader[17].ToString()),
                    Anno = reader[18].ToString()=="" ? 0 : int.Parse(reader[18].ToString())
                };

                //raccolgo dati comuni, stati e tipo doc
                if (sc.Cliente.ComuneNascita != null)
                {
                    comdt = comta.GetDataById(sc.Cliente.ComuneNascita.Id);
                    sc.Cliente.ComuneNascita.Nome = comdt[0].Nome;
                    sc.Cliente.ComuneNascita.Provincia = comdt[0].Provincia;
                }
                if (sc.Cliente.ComuneResidenza != null)
                {
                    comdt = comta.GetDataById(sc.Cliente.ComuneResidenza.Id);
                    sc.Cliente.ComuneResidenza.Nome = comdt[0].Nome;
                    sc.Cliente.ComuneResidenza.Provincia = comdt[0].Provincia;
                }
                if (sc.Cliente.ComuneRilascioDoc != null)
                {
                    comdt = comta.GetDataById(sc.Cliente.ComuneRilascioDoc.Id);
                    sc.Cliente.ComuneRilascioDoc.Nome = comdt[0].Nome;
                    sc.Cliente.ComuneRilascioDoc.Provincia = comdt[0].Provincia;
                }
                stadt = stata.GetDataById(sc.Cliente.StatoNascita.Id);
                sc.Cliente.StatoNascita.Nome = stadt[0].Nome;
                stadt = stata.GetDataById(sc.Cliente.StatoResidenza.Id);
                sc.Cliente.StatoResidenza.Nome = stadt[0].Nome;
                stadt = stata.GetDataById(sc.Cliente.StatoRilascioDoc.Id);
                sc.Cliente.StatoRilascioDoc.Nome = stadt[0].Nome;
                stadt = stata.GetDataById(sc.Cliente.StatoCittadinanza.Id);
                sc.Cliente.StatoCittadinanza.Nome = stadt[0].Nome;
                tdocdt = tdocta.GetDataById(sc.Cliente.TipoDoc.Id);
                sc.Cliente.TipoDoc.Descrizione = tdocdt[0].Descrizione;
                sclist.Add(sc);

            }
            reader.Close();
            conn.Close();
            return sclist;
        }
Пример #3
0
        internal List<SchedaNotifica> cercaSchedeNotificaPerIstat(DateTime arrivoDa, DateTime arrivoA)
        {
            OleDbConnection conn = new OleDbConnection(Properties.Settings.Default.SoggiorniDbConnectionString);
            string queryString = "SELECT * FROM QuerySchedeByPeriodoIstat";
            OleDbCommand cmd = new OleDbCommand(queryString, conn);
            cmd.Parameters.Add("DataDa", OleDbType.Date).Value = arrivoDa;
            cmd.Parameters.Add("DataA", OleDbType.Date).Value = arrivoA;
            conn.Open();
            OleDbDataReader reader = cmd.ExecuteReader();
            var sclist = new List<SchedaNotifica>();
            SchedaNotifica sc;

            var provta = new ProvenienzaIstatTableAdapter();
            SoggiorniDbDataSet.ProvenienzaIstatDataTable provdt;

            while (reader.Read())
            {
                /*
                 * Soggiorno.Arrivo, Soggiorno.Partenza, Cliente.ProvenienzaIstat
                 */
                sc = new SchedaNotifica
                {
                    Soggiorno = new Soggiorno { 
                        Arrivo = DateTime.Parse(reader[0].ToString()),
                        Partenza = DateTime.Parse(reader[1].ToString())
                    },
                    Cliente = new Cliente{ 
                        ProvenIstat = new ProvenienzaIstat{ Id = int.Parse(reader[2].ToString())}
                    }
                };

                //raccolgo dati su provenienza istat
                provdt = provta.GetDataById(sc.Cliente.ProvenIstat.Id);
                sc.Cliente.ProvenIstat.Sigla = provdt[0].SiglaTuriweb;
                sc.Cliente.ProvenIstat.Regione = provdt[0].Regione;
                sc.Cliente.ProvenIstat.Stato = provdt[0].Stato;
                sclist.Add(sc);

            }
            reader.Close();
            conn.Close();
            return sclist;
        }
Пример #4
0
        internal List<SchedaNotifica> cercaSchedeNotificaBetween(DateTime arrivoDa, DateTime arrivoA)
        {
            OleDbConnection conn = new OleDbConnection(Properties.Settings.Default.SoggiorniDbConnectionString);
            string queryString = "SELECT * FROM QuerySchedeByArrivo";
            OleDbCommand cmd = new OleDbCommand(queryString, conn);
            cmd.Parameters.Add("ArrivoDa", OleDbType.Date).Value = arrivoDa;
            cmd.Parameters.Add("ArrivoA", OleDbType.Date).Value = arrivoA;
            conn.Open();
            OleDbDataReader reader = cmd.ExecuteReader();
            var sclist = new List<SchedaNotifica>();
            SchedaNotifica sc;

            var comta = new ComuneTableAdapter();
            SoggiorniDbDataSet.ComuneDataTable comdt;

            var stata = new StatoTableAdapter();
            SoggiorniDbDataSet.StatoDataTable stadt;

            var tdocta = new TipoDocumentoTableAdapter();
            SoggiorniDbDataSet.TipoDocumentoDataTable tdocdt;

            while (reader.Read())
            {
                /*
                 * Soggiorno.Arrivo, Cliente.Cognome, Cliente.Nome, Cliente.IsFemmina, Cliente.DataNascita, 
                 * Cliente.ComuneNascita, Cliente.StatoNascita, Cliente.StatoCittadinanza, Cliente.ComuneResid, 
                 * Cliente.StatoResid, Cliente.Indirizzo, Cliente.TipoDocumento, Cliente.NumDocumento, 
                 * Cliente.ComuneRilascioDoc, Cliente.StatoRilascioDoc, Cliente.DataRilascioDoc
                 */
                sc = new SchedaNotifica
                {
                    Soggiorno = new Soggiorno{Arrivo = DateTime.Parse(reader[0].ToString())},
                    Cliente = new Cliente
                    {
                        Cognome = reader[1].ToString(),
                        Nome = reader[2].ToString(),
                        IsFemmina = bool.Parse(reader[3].ToString()),
                        DataNascita = DateTime.Parse(reader[4].ToString()),
                        ComuneNascita = new Comune { Id = int.Parse(reader[5].ToString()) },
                        StatoNascita = new Stato { Id = int.Parse(reader[6].ToString()) },
                        StatoCittadinanza = new Stato { Id = int.Parse(reader[7].ToString()) },
                        ComuneResidenza = new Comune { Id = int.Parse(reader[8].ToString()) },
                        StatoResidenza = new Stato { Id = int.Parse(reader[9].ToString()) },
                        Indirizzo = reader[10].ToString(),
                        TipoDoc = new TipoDocumento { Id = int.Parse(reader[11].ToString()) },
                        NumDoc = reader[12].ToString(),
                        ComuneRilascioDoc = new Comune { Id = int.Parse(reader[13].ToString()) },
                        StatoRilascioDoc = new Stato { Id = int.Parse(reader[14].ToString()) },
                        DataRilascioDoc = DateTime.Parse(reader[15].ToString())
                    }
                };

                //raccolgo dati comuni, stati e tipo doc
                comdt = comta.GetDataById(sc.Cliente.ComuneNascita.Id);
                sc.Cliente.ComuneNascita.CodicePolizia = comdt[0].CodicePolizia;
                sc.Cliente.ComuneNascita.Provincia = comdt[0].Provincia;
                comdt = comta.GetDataById(sc.Cliente.ComuneResidenza.Id);
                sc.Cliente.ComuneResidenza.CodicePolizia = comdt[0].CodicePolizia;
                sc.Cliente.ComuneResidenza.Provincia = comdt[0].Provincia;
                comdt = comta.GetDataById(sc.Cliente.ComuneRilascioDoc.Id);
                sc.Cliente.ComuneRilascioDoc.CodicePolizia = comdt[0].CodicePolizia;
                stadt = stata.GetDataById(sc.Cliente.StatoNascita.Id);
                sc.Cliente.StatoNascita.CodicePolizia = stadt[0].CodicePolizia;
                sc.Cliente.StatoNascita.Nome = stadt[0].Nome;
                stadt = stata.GetDataById(sc.Cliente.StatoResidenza.Id);
                sc.Cliente.StatoResidenza.CodicePolizia = stadt[0].CodicePolizia;
                sc.Cliente.StatoResidenza.Nome = stadt[0].Nome;
                stadt = stata.GetDataById(sc.Cliente.StatoRilascioDoc.Id);
                sc.Cliente.StatoRilascioDoc.Nome = stadt[0].Nome;
                sc.Cliente.StatoRilascioDoc.CodicePolizia = stadt[0].CodicePolizia;
                stadt = stata.GetDataById(sc.Cliente.StatoCittadinanza.Id);
                sc.Cliente.StatoCittadinanza.CodicePolizia = stadt[0].CodicePolizia;
                tdocdt = tdocta.GetDataById(sc.Cliente.TipoDoc.Id);
                sc.Cliente.TipoDoc.CodicePolizia = tdocdt[0].CodicePolizia;
                sclist.Add(sc);

            }
            reader.Close();
            conn.Close();
            return sclist;
        }
        private void btnAddScheda_Click(object sender, RoutedEventArgs e)
        {
            sucw = new SelezionaUnClienteWindow();
            sucw.ShowDialog();

            if (sucw.DialogResult.HasValue && sucw.DialogResult.Value)
            {
                //riempi i campi con i dati del cliente
                var sc = new SchedaNotifica
                {
                    SoggiornoId = idSoggiorno,
                    Cliente = sucw.clienteSelezionato,
                    Numero = maxScheda+1,
                    Anno = DateTime.Today.Year
                };
                schede.Add(sc);

                maxScheda++;
            }
        }
Пример #6
0
        private string getSchedaEnconded(SchedaNotifica sn)
        {
            
            StringBuilder sb = new StringBuilder(CODICE_TIPO_ALLOGGIATO);
            //data arrivo
            sb.Append(sn.Soggiorno.Arrivo.ToString("dd/MM/yyyy"));
            //cognome
            sb.Append(
                createFixedLengthStringWithContent(
                    replaceSpecialCharacters(sn.Cliente.Cognome), 50));
            //nome
            sb.Append(
                createFixedLengthStringWithContent(
                    replaceSpecialCharacters(sn.Cliente.Nome), 30));
            //sesso
            if (sn.Cliente.IsFemmina) sb.Append("2");
            else sb.Append("1");
            //data nascita
            sb.Append(sn.Cliente.DataNascita.ToString("dd/MM/yyyy"));

            if(sn.Cliente.StatoNascita.Nome==NOME_ITALIA)
            {
                //comune nascita
                sb.Append(sn.Cliente.ComuneNascita.CodicePolizia.Trim());
                //provincia nascita
                sb.Append(sn.Cliente.ComuneNascita.Provincia);
            }
            else //nato all'estero
            {
                //comune nascita
                sb.Append(createFixedLengthStringWithContent("",9));
                //provincia nascita
                sb.Append("  ");
            }
            
            //stato nascita
            sb.Append(sn.Cliente.StatoNascita.CodicePolizia.Trim());
            //cittadinanza
            sb.Append(sn.Cliente.StatoCittadinanza.CodicePolizia.Trim());

            if (sn.Cliente.StatoResidenza.Nome == NOME_ITALIA)
            {
                //comune res
                sb.Append(sn.Cliente.ComuneResidenza.CodicePolizia.Trim());
                //provincia res
                sb.Append(sn.Cliente.ComuneResidenza.Provincia);
            }
            else //residente all'estero
            {
                //comune res
                sb.Append(createFixedLengthStringWithContent("", 9));
                //provincia res
                sb.Append("  ");
            }
            //stato res
            sb.Append(sn.Cliente.StatoResidenza.CodicePolizia.Trim());
            
            //indirizzo
            sb.Append(
                createFixedLengthStringWithContent(
                    replaceSpecialCharacters(sn.Cliente.Indirizzo), 50));

            //tipo doc
            sb.Append(sn.Cliente.TipoDoc.CodicePolizia.Trim());
            //num doc
            sb.Append(createFixedLengthStringWithContent(sn.Cliente.NumDoc, 20));
            //luogo rilascio doc
            if (sn.Cliente.StatoRilascioDoc.Nome == NOME_ITALIA)
                sb.Append(sn.Cliente.ComuneRilascioDoc.CodicePolizia.Trim());
            else sb.Append(sn.Cliente.StatoRilascioDoc.CodicePolizia.Trim());

            return sb.ToString();
            
        }