Ejemplo n.º 1
0
        public static SortedList <string, Utente> readClienti()
        {
            SortedList <string, Utente> listClienti = new SortedList <string, Utente>();

            try
            {
                if (conn == null)
                {
                    initDBConnection();
                }
                string queryString = "SELECT clienti.idcliente,clienti.nome,clienti.cognome,clienti.sesso,"
                                     + "clienti.codiceFiscale,clienti.dataNascita,clienti.luogoNascita,clienti.email,"
                                     + "clienti.telefono,clienti.indirizzo,province.abbr,province.nome,province.regione,"
                                     + "clienti.stato,clienti.scadAbb,clienti.scadVisita,clienti.stato_cliente"
                                     + " FROM clienti inner join province on province.abbr = clienti.provincia";
                cmd = new MySqlCommand(queryString, conn);
                rdr = cmd.ExecuteReader();

                while (rdr.Read())
                {
                    Utente user = new Utente();
                    user.Identifier           = rdr.GetString(0);
                    user.Nome                 = rdr.GetString(1);
                    user.Cognome              = rdr.GetString(2);
                    user.Sesso                = rdr.GetString(3);
                    user.CodiceFiscale        = rdr.GetString(4);
                    user.DataDiNascita        = rdr.GetDateTime(5);
                    user.LuogoNascita         = rdr.GetString(6);
                    user.Email                = rdr.GetString(7);
                    user.Telefono             = rdr.GetString(8);
                    user.Indirizzo            = rdr.GetString(9);
                    user.Provincia            = new Provincia(rdr.GetString(10), rdr.GetString(11), rdr.GetString(12));
                    user.Stato                = rdr.GetString(13);
                    user.ScadenzaAbb          = rdr.GetDateTime(14);
                    user.ScadenzaVisitaMedica = rdr.GetDateTime(15);
                    try
                    {
                        user.Status = Convert.ToInt32(rdr.GetString(16).ToString());
                    }
                    catch (Exception ex)
                    {
                        if (Convert.ToBoolean(rdr["stato_cliente"].ToString()))
                        {
                            user.Status = 1;
                        }
                        else
                        {
                            user.Status = 0;
                        }
                    }
                    listClienti.Add(user.Identifier, user);
                }

                if (rdr != null)
                {
                    rdr.Close();
                }

                foreach (string id in listClienti.Keys)
                {
                    try
                    {
                        queryString = "SELECT presenze.dataingresso,presenze.oraIn,presenze.oraOut,presenze.idpresenze" +
                                      " FROM presenze INNER JOIN clienti on clienti.idcliente = presenze.idutente" +
                                      " WHERE idcliente = " + id;
                        cmd = new MySqlCommand(queryString, conn);
                        rdr = cmd.ExecuteReader();

                        while (rdr.Read())
                        {
                            Utente   user = listClienti[id];
                            Presenza pres = new Presenza();
                            pres.Data        = rdr.GetDateTime(0);
                            pres.OraIngresso = rdr.GetTimeSpan(1);
                            pres.OraUscita   = rdr.GetTimeSpan(2);
                            pres.IdPresenza  = rdr.GetInt32(3);
                            user.ListPresenze.Add(pres.Data, pres);
                        }
                    }
                    catch (Exception ex)
                    {
                        Helper.Logger("class=DBHelper readClienti.readPresenze ->" + ex.Message);
                    }
                    finally
                    {
                        if (rdr != null)
                        {
                            rdr.Close();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Helper.Logger("class=DBHelper readClienti ->" + ex.Message);
            }
            finally
            {
                if (rdr != null)
                {
                    rdr.Close();
                }
            }
            return(listClienti);
        }