예제 #1
0
        } // end ds2newcustomer()

//
//-------------------------------------------------------------------------------------------------
//
        public bool ds2browse(string browse_type_in, string browse_category_in, string browse_actor_in,
                              string browse_title_in, int batch_size_in, int customerid_out, ref int rows_returned,
                              ref int[] prod_id_out, ref string[] title_out, ref string[] actor_out, ref decimal[] price_out,
                              ref int[] special_out, ref int[] common_prod_id_out, ref double rt)
        {
            // Products table: PROD_ID INT, CATEGORY TINYINT, TITLE VARCHAR(50), ACTOR VARCHAR(50),
            //   PRICE DECIMAL(12,2), SPECIAL TINYINT, COMMON_PROD_ID INT
            int    i_row;
            string data_in = null;

            int[] category_out = new int[GlobalConstants.MAX_ROWS];

#if (USE_WIN32_TIMER)
            long ctr0 = 0, ctr = 0, freq = 0;
#else
            TimeSpan TS = new TimeSpan();
            DateTime DT0;
#endif
            switch (browse_type_in)
            {
            case "category":
                Browse_By_Category.Parameters["batch_size_in"].Value = batch_size_in;
                Browse_By_Category.Parameters["category_in"].Value   = Convert.ToInt32(browse_category_in);
                data_in = browse_category_in;
                break;

            case "actor":
                Browse_By_Actor.Parameters["batch_size_in"].Value = batch_size_in;
                Browse_By_Actor.Parameters["actor_in"].Value      = "\"" + browse_actor_in + "\"";
                data_in = "\"" + browse_actor_in + "\"";
                break;

            case "title":
                Browse_By_Title.Parameters["batch_size_in"].Value = batch_size_in;
                Browse_By_Title.Parameters["title_in"].Value      = "\"" + browse_title_in + "\"";
                data_in = "\"" + browse_title_in + "\"";
                break;
            }

//    Console.WriteLine("Thread {0}: Calling Browse w/ browse_type= {1} batch_size_in= {2}  data_in= {3}",
//      Thread.CurrentThread.Name, browse_type_in, batch_size_in, data_in);

#if (USE_WIN32_TIMER)
            QueryPerformanceFrequency(ref freq); // obtain system freq (ticks/sec)
            QueryPerformanceCounter(ref ctr0);   // Start response time clock
#else
            DT0 = DateTime.Now;
#endif

            try
            {
                switch (browse_type_in)
                {
                case "category":
                    Rdr = Browse_By_Category.ExecuteReader();
                    break;

                case "actor":
                    Rdr = Browse_By_Actor.ExecuteReader();
                    break;

                case "title":
                    Rdr = Browse_By_Title.ExecuteReader();
                    break;
                }

                i_row = 0;
                while (Rdr.Read())
                {
                    prod_id_out[i_row]        = Rdr.GetInt32(0);
                    category_out[i_row]       = Rdr.GetInt16(1);
                    title_out[i_row]          = Rdr.GetString(2);
                    actor_out[i_row]          = Rdr.GetString(3);
                    price_out[i_row]          = Rdr.GetDecimal(4);
                    special_out[i_row]        = Rdr.GetInt16(5);
                    common_prod_id_out[i_row] = Rdr.GetInt32(6);
                    ++i_row;
                }
                Rdr.Close();
                rows_returned = i_row;
            }
            catch (NpgsqlException e)
            {
                Console.WriteLine("Thread {0}: Error in Browse: {1}", Thread.CurrentThread.Name, e.Message);
                return(false);
            }

#if (USE_WIN32_TIMER)
            QueryPerformanceCounter(ref ctr); // Stop response time clock
            rt = (ctr - ctr0) / (double)freq; // Calculate response time
#else
            TS = DateTime.Now - DT0;
            rt = TS.TotalSeconds; // Calculate response time
#endif

            return(true);
        } // end ds2browse()
예제 #2
0
 void SetNumInState(NpgsqlDataReader R)
 {
     numInState.Content = R.GetInt16(0).ToString();
 }
예제 #3
0
        public static IEnumerable <T> SimpleQuery <T>(this IDbConnection p_connection, string p_sql = "")
        {
            if (string.IsNullOrEmpty(p_sql))
            {
                p_sql = $@"SELECT * FROM ""{typeof(T).Name}""";
            }

            p_connection.Open();

            using (NpgsqlCommand command = new NpgsqlCommand(p_sql, (NpgsqlConnection)p_connection))
            {
                using (NpgsqlDataReader sqlDataReader = command.ExecuteReader())
                {
                    Type           type          = typeof(T);
                    PropertyInfo[] propertyInfos = type.GetProperties();
                    IList <T>      result        = new List <T>();

                    while (sqlDataReader.Read())
                    {
                        object entity = Activator.CreateInstance(type);
                        propertyInfos.Each(p_info =>
                        {
                            switch (p_info.PropertyType.Name.ToLower())
                            {
                            case "char":
                                p_info.SetValue(entity, sqlDataReader.GetChar(p_info.Name));
                                break;

                            case "boolean":
                                p_info.SetValue(entity, sqlDataReader.GetBoolean(p_info.Name));
                                break;

                            case "string":
                                p_info.SetValue(entity, sqlDataReader.GetString(p_info.Name));
                                break;

                            case "byte":
                                p_info.SetValue(entity, sqlDataReader.GetByte(p_info.Name));
                                break;

                            case "decimal":
                                p_info.SetValue(entity, sqlDataReader.GetDecimal(p_info.Name));
                                break;

                            case "float":
                                p_info.SetValue(entity, sqlDataReader.GetFloat(p_info.Name));
                                break;

                            case "double":
                                p_info.SetValue(entity, sqlDataReader.GetDouble(p_info.Name));
                                break;

                            case "int16":
                                p_info.SetValue(entity, sqlDataReader.GetInt16(p_info.Name));
                                break;

                            case "int32":
                                p_info.SetValue(entity, sqlDataReader.GetInt32(p_info.Name));
                                break;

                            case "int64":
                                p_info.SetValue(entity, sqlDataReader.GetInt64(p_info.Name));
                                break;

                            default:
                                p_info.SetValue(entity, sqlDataReader.GetValue(p_info.Name));
                                break;
                            }
                        });

                        result.Add((T)entity);
                    }

                    return(result);
                }
            }
        }
예제 #4
0
        public static List <Registro> Buscar_lreg(char pt_deleg, int pd_n_rg, int ph_n_rg, char pt_cte, int pd_cte, int ph_cte) //int pfra, string pn_cte, string pexp)
        {
            string          sql    = "";
            List <Registro> _lista = new List <Registro>();

            if (pt_deleg == ' ' & pd_n_rg == 0 & ph_n_rg == 999999 & pt_cte == ' ' & pd_cte == 0 & ph_cte == 999999) //consulta todos los registros. (Mregistros)
            {
                sql = "select * from registros order by delegacion, n_reg";
            }
            else //opciones del buscador de registros
            {
                if (pt_deleg != ' ') //consulta el n_reg de su deleg.
                //sql = "select delegacion, n_reg, fec_ent, id_cte, factura, fec_fra, exp_tl, fec_pre_exp from registros where delegacion='" + pt_deleg + "' and n_reg=" + pn_reg;
                {
                    sql = "select * from registros where delegacion='" + pt_deleg + "' and n_reg between " + pd_n_rg + " and " + ph_n_rg + " order by delegacion, n_reg";
                }
                else
                {
                    if (pt_cte != ' ')    // t_cte y nombre
                    {
                        if (pt_cte == 'C')
                        {
                            sql = "select * from registros where registros.id_cte between " + pd_cte + " and " + ph_cte;     //(select id_cliente from clientes where tipo_cte ='C' and nombre like '%" + pn_cte + "%')";
                        }
                        else
                        {
                            sql = "select * from registros where registros.id_titular between " + pd_cte + " and " + ph_cte;    //(select id_cliente from clientes where tipo_cte ='T' and nombre like '%" + pn_cte + "%')";
                        }
                        //sql = "select delegacion, n_reg, fec_ent, id_cte,nombre,factura, fec_fra, exp_tl, fec_pre_exp from registros, clientes " +
                        //"where registros.id_titular = clientes.id_cliente and clientes.tipo_cte ='T' and nombre like '%" + pn_cte + "%'";
                    }
                    //else //x n_exp.
                    //  sql = "select * from registros where exp_tl like '%" + pexp + "%'";

                    /*
                     * if (pfra != 0)// consulta n_fra
                     *  sql = "select * from registros where factura=" + pfra;
                     * else
                     * {
                     *  }
                     */
                }
            }

            using (BDConexion.ObtenerConexion())
            {
                NpgsqlCommand comando = new NpgsqlCommand(sql, BDConexion.ObtenerConexion());
                comando.CommandTimeout = 5 * 60;
                NpgsqlDataReader datos = comando.ExecuteReader();


                while (datos.Read())
                {
                    Registro pRegistro = new Registro();
                    pRegistro.delegacion  = datos.GetChar(0);
                    pRegistro.n_reg       = datos.GetInt32(1);
                    pRegistro.fec_ent     = datos.GetDateTime(2);
                    pRegistro.id_cte      = datos.GetInt32(3);
                    pRegistro.id_titular  = datos.GetInt32(4);
                    pRegistro.seccion_int = datos.GetString(5);
                    pRegistro.seccion     = datos.GetString(6);
                    pRegistro.t_tramite   = datos.GetString(7);
                    pRegistro.matricula   = datos.GetString(8);
                    pRegistro.estado      = datos.GetString(9);
                    pRegistro.factura     = datos.GetInt32(10);
                    pRegistro.fec_fra     = datos.GetDateTime(11);
                    pRegistro.observacion = datos.GetString(12);
                    pRegistro.honorarios  = datos.GetDecimal(13);
                    pRegistro.p_iva       = datos.GetInt16(14);
                    pRegistro.tasa        = datos.GetDecimal(15);
                    pRegistro.exp_tl      = datos.GetString(16);
                    pRegistro.fec_pre_exp = datos.GetDateTime(17);
                    pRegistro.et_tasa     = datos.GetInt64(18);
                    pRegistro.t_tasa      = datos.GetString(19);
                    pRegistro.cambio_serv = datos.GetString(20);
                    pRegistro.bate_ant    = datos.GetString(21);
                    pRegistro.nif         = datos.GetString(22);
                    pRegistro.dcho_col    = datos.GetDecimal(23);
                    pRegistro.t_cte_fra   = datos.GetChar(24);
                    pRegistro.et_tasa2    = datos.GetInt64(25);
                    pRegistro.t_tasa2     = datos.GetString(26);
                    pRegistro.et_tasa3    = datos.GetInt64(27);
                    pRegistro.t_tasa3     = datos.GetString(28);
                    pRegistro.et_tasa4    = datos.GetInt64(29);
                    pRegistro.t_tasa4     = datos.GetString(30);
                    pRegistro.descripcion = datos.GetString(31);
                    pRegistro.ruta_pdf    = datos.GetString(32);
                    pRegistro.vehiculo    = datos.GetString(33);

                    _lista.Add(pRegistro);
                }

                comando.Connection.Close();
                return(_lista);
            }
        }
        public ArrayList LlenarDtVistaPreliminarVuelosASCString(string paisO, string paisD)
        {
            ArrayList lista = new ArrayList();
            string    datos = string.Empty;

            try
            {
                Conexion();
                conexion.Open();
                NpgsqlCommand    consulta       = new NpgsqlCommand("SELECT pais_origen,pais_destino,duracion,precio FROM tarifas_vuelos  JOIN rutas ON tarifas_vuelos.ruta=rutas.identificador_ruta WHERE pais_origen='" + paisO + "' AND pais_destino='" + paisD + "' ORDER BY precio ASC", conexion);
                NpgsqlDataReader lectorConsulta = consulta.ExecuteReader();
                if (lectorConsulta.HasRows)
                {
                    while (lectorConsulta.Read())
                    {
                        //datos = lectorConsulta.GetDouble(0).ToString();
                        datos = lectorConsulta.GetString(0) + ";" + lectorConsulta.GetString(1) + ";" + lectorConsulta.GetInt16(2) + ";" + lectorConsulta.GetDouble(3);
                        lista.Add(datos);
                    }
                }

                //dtgVuelosASC.Columns.Add("vueloDirectoEscala", "Vuelo Directo o Escala");
                conexion.Close();
            }
            catch (Exception error)
            {
                MessageBox.Show("Error \n" + error);
            }
            return(lista);
        }
예제 #6
0
 public ArticuloHead(NpgsqlDataReader rdr)
 {
     this.id          = rdr.GetInt16(0);
     this.name        = rdr.GetString(1);
     this.minecraftID = rdr.GetString(2);
 }
예제 #7
0
파일: Robot.cs 프로젝트: Itzanh/ERPCraft
 public RobotHead(NpgsqlDataReader rdr)
 {
     this.id   = rdr.GetInt16(0);
     this.name = rdr.GetString(1);
     this.uuid = rdr.GetGuid(2);
 }
예제 #8
0
        public static ArrayList retCasco(string invgcscCodigoPersonaje, string invgcscCodigoCasco, NpgsqlConnection con)
        {
            NpgsqlCommand    comando;
            NpgsqlDataReader res = null;
            InvGuardaCascos  invGuaCas;
            ArrayList        invCascos = new ArrayList();

            if (invgcscCodigoPersonaje != null)
            {
                if (invgcscCodigoCasco == null)
                {
                    comando = new NpgsqlCommand(string.Format("SELECT *FROM invGuardaCascos WHERE invgcscCodigoPersonaje = '{0}'",
                                                              invgcscCodigoPersonaje), con);
                    try
                    {
                        res = comando.ExecuteReader();
                    }
                    catch (NpgsqlException e)
                    {
                        MessageBox.Show("No se encontró casco.\n" + e);
                    }
                }
                else
                {
                    comando = new NpgsqlCommand(string.Format("SELECT *FROM invGuardaCascos WHERE invgcscCodigoPersonaje = '{0}' AND invgcscCodigoCasco= '{1}'",
                                                              invgcscCodigoPersonaje, invgcscCodigoCasco), con);
                    try
                    {
                        res = comando.ExecuteReader();
                    }
                    catch (NpgsqlException e)
                    {
                        MessageBox.Show("No se encontró casco.\n" + e);
                    }
                }
            }
            else if (invgcscCodigoCasco != null)
            {
                comando = new NpgsqlCommand(string.Format("SELECT *FROM invGuardaCascos WHERE invgcscCodigoCasco = '{1}'",
                                                          invgcscCodigoPersonaje, invgcscCodigoCasco), con);
                try
                {
                    res = comando.ExecuteReader();
                }
                catch (NpgsqlException e)
                {
                    MessageBox.Show("No se encontró casco.\n" + e);
                }
            }

            if (res.HasRows)
            {
                while (res.Read())
                {
                    //Console.WriteLine("{0}\t{1}", res.GetInt32(0),
                    //    res.GetString(1));
                    //Devuelvo Casco, TODO:
                    invGuaCas = new InvGuardaCascos(res.GetString(0), res.GetString(1), res.GetInt16(2));
                    invCascos.Add(invGuaCas);
                }
            }
            else
            {
                MessageBox.Show("No se encontró casco.\n");
                res.Close();
                return(null);
            }
            res.Close();
            return(invCascos);
        }
 public short GetInt16(int i)
 {
     return(_reader.GetInt16(i));
 }
예제 #10
0
파일: Robot.cs 프로젝트: Itzanh/ERPCraft
 public Robot(NpgsqlDataReader rdr)
 {
     this.id                         = rdr.GetInt16(0);
     this.name                       = rdr.GetString(1);
     this.uuid                       = rdr.GetGuid(2);
     this.tier                       = rdr.GetInt16(3);
     this.numeroSlots                = rdr.GetInt16(4);
     this.numeroStacks               = rdr.GetInt16(5);
     this.numeroItems                = rdr.GetInt16(6);
     this.estado                     = rdr.GetChar(7);
     this.totalEnergia               = rdr.GetInt32(8);
     this.energiaActual              = rdr.GetInt32(9);
     this.upgradeGenerador           = rdr.GetBoolean(10);
     this.itemsGenerador             = rdr.GetInt16(11);
     this.fechaConexion              = rdr.GetDateTime(12);
     this.fechaDesconexion           = rdr.GetDateTime(13);
     this.descripcion                = rdr.GetString(14);
     this.upgradeGps                 = rdr.GetBoolean(15);
     this.posX                       = rdr.GetInt16(16);
     this.posY                       = rdr.GetInt16(17);
     this.posZ                       = rdr.GetInt16(18);
     this.complejidad                = rdr.GetInt16(19);
     this.dateAdd                    = rdr.GetDateTime(20);
     this.dateUpd                    = rdr.GetDateTime(21);
     this.off                        = rdr.GetBoolean(22);
     this.offsetPosX                 = rdr.GetInt16(23);
     this.offsetPosY                 = rdr.GetInt16(24);
     this.offsetPosZ                 = rdr.GetInt16(25);
     this.notificacionConexion       = rdr.GetBoolean(26);
     this.notificacionDesconexion    = rdr.GetBoolean(27);
     this.notificacionBateriaBaja    = rdr.GetBoolean(28);
     this.upgradeInventoryController = rdr.GetBoolean(29);
     this.upgradeGeolyzer            = rdr.GetBoolean(30);
 }
 private void SetNumInCity(NpgsqlDataReader reader)
 {
     cityNumberLabel.Content = reader.GetInt16(0).ToString();
 }
 private void SetNumInState(NpgsqlDataReader reader)
 {
     stateNumberLabel.Content = reader.GetInt16(0).ToString();
 }
예제 #13
0
        public static List <OrderedMenues> GetOrderedMenues(int year, int month, int day, long location, bool consumed)
        {
            List <OrderedMenues> result = new List <OrderedMenues>();

            string queryMonth = "select * from wifi_mensa.orderedmenues " +
                                "where serve_date>= :startDate and servedate<= :endDate";
            string queryDay = "select * from wifi_mensa.orderedmenues " +
                              "where serve_date= :serve_date and location_id= :location_id and consumed= :consumed";

            if (DBConnection.Connection.State.ToString() == "Closed")
            {
                DBConnection.Connection.Open();
            }

            NpgsqlCommand command = new NpgsqlCommand();

            command.Connection = DBConnection.Connection;
            try
            {
                if (day == 0)
                {
                    int      daysInMonth = DateTime.DaysInMonth(year, month);
                    DateTime startDate   = new DateTime(year, month, 1);
                    DateTime endDate     = new DateTime(year, month, daysInMonth);
                    command.Parameters.AddWithValue("startDate", startDate);
                    command.Parameters.AddWithValue("endDate", endDate);
                    command.CommandText = queryMonth;
                }
                else
                {
                    DateTime date = new DateTime(year, month, day);
                    command.Parameters.AddWithValue("serve_date", date);
                    command.Parameters.AddWithValue("location_id", location);
                    command.Parameters.AddWithValue("consumed", consumed);

                    command.CommandText = queryDay;
                }

                NpgsqlDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    result.Add(new OrderedMenues()
                    {
                        OrderId      = reader.GetInt32(0),
                        UserId       = reader.GetInt32(1),
                        FirstName    = reader.GetString(2),
                        LastName     = reader.GetString(3),
                        UserNumber   = reader.GetInt16(4),
                        MenueTitel   = reader.GetString(5),
                        LocationId   = reader.GetInt32(6),
                        LocationName = reader.GetString(7),
                        ServeDate    = reader.GetDateTime(8),
                        Consumed     = reader.GetBoolean(9),
                    });
                }
                reader.Close();
            }
            catch (Exception ex)
            {
            }
            finally
            {
                DBConnection.Connection.Close();
            }

            //return result;
            foreach (OrderedMenues item in result)
            {
                item.ListAdditional = GetOrderedAddProducts(year, month, day, location, consumed, item.OrderId);
            }
            return(result);
        }
예제 #14
0
 void SetNumInCity(NpgsqlDataReader R)
 {
     numInCity.Content = R.GetInt16(0).ToString();
 }
        public static ArrayList retPantalon(string invgpantCodigoPersonaje, string invgpantCodigoPantalon, NpgsqlConnection con)
        {
            NpgsqlCommand     comando;
            NpgsqlDataReader  res = null;
            InvGuardaPantalon invGuaPan;
            ArrayList         invPantalon = new ArrayList();

            if (invgpantCodigoPersonaje != null)
            {
                if (invgpantCodigoPantalon == null)
                {
                    comando = new NpgsqlCommand(string.Format("SELECT *FROM invGuardaPantalones WHERE invgpantCodigoPersonaje = '{0}'",
                                                              invgpantCodigoPersonaje), con);
                    try
                    {
                        res = comando.ExecuteReader();
                    }
                    catch (NpgsqlException e)
                    {
                        MessageBox.Show("No se encontró Pantalon.\n" + e);
                    }
                }
                else
                {
                    comando = new NpgsqlCommand(string.Format("SELECT *FROM invGuardaPantalones WHERE invgpantCodigoPersonaje = '{0}' AND invgpantCodigoPantalon= '{1}'",
                                                              invgpantCodigoPersonaje, invgpantCodigoPantalon), con);
                    try
                    {
                        res = comando.ExecuteReader();
                    }
                    catch (NpgsqlException e)
                    {
                        MessageBox.Show("No se encontró Pantalon.\n" + e);
                    }
                }
            }
            else if (invgpantCodigoPantalon != null)
            {
                comando = new NpgsqlCommand(string.Format("SELECT *FROM invGuardaPantalones WHERE invgpantCodigoPantalon = '{1}'",
                                                          invgpantCodigoPersonaje, invgpantCodigoPantalon), con);
                try
                {
                    res = comando.ExecuteReader();
                }
                catch (NpgsqlException e)
                {
                    MessageBox.Show("No se encontró Pantalon.\n" + e);
                }
            }

            if (res.HasRows)
            {
                while (res.Read())
                {
                    invGuaPan = new InvGuardaPantalon(res.GetString(0), res.GetString(1), res.GetInt16(2));
                    invPantalon.Add(invGuaPan);
                }
            }
            else
            {
                MessageBox.Show("No se encontró Pantalon.\n");
                res.Close();
                return(null);
            }
            res.Close();
            return(invPantalon);
        }
예제 #16
0
        public static List <Registro> Buscar(char pt_deleg, int pn_reg, int pfra, char pt_cte, string pn_cte, string pexp, string pmatri, string pvehi)
        {
            string          sql;
            List <Registro> _lista = new List <Registro>();

            if (pt_deleg == ' ' & pn_reg == 0 & pfra == 0 & pt_cte == ' ' & pn_cte == " " & pexp == " " & pmatri == " " & pvehi == " ") //consulta todos los registros. (Mregistros)
            {
                sql = "select * from registros order by delegacion, n_reg";
            }
            else //opciones del buscador de registros
            {
                if (pt_deleg != ' ' & pn_reg != 0) //consulta el n_reg de su deleg.
                //sql = "select delegacion, n_reg, fec_ent, id_cte, factura, fec_fra, exp_tl, fec_pre_exp from registros where delegacion='" + pt_deleg + "' and n_reg=" + pn_reg;
                {
                    sql = "select * from registros where delegacion='" + pt_deleg + "' and n_reg=" + pn_reg;
                }
                else
                {
                    if (pfra != 0)// consulta n_fra
                    {
                        sql = "select * from registros where factura=" + pfra;
                    }
                    else
                    {
                        if (pt_cte != ' ' & pn_cte != " ")// t_cte y nombre
                        {
                            if (pt_cte == 'C')
                            {
                                sql = "select * from registros where registros.id_cte = (select id_cliente from clientes where tipo_cte ='C' and nombre ~* '" + pn_cte + "')";
                            }
                            else
                            {
                                sql = "select * from registros where registros.id_titular = (select id_cliente from clientes where tipo_cte ='T' and nombre ~* '" + pn_cte + "')";
                            }
                            //sql = "select delegacion, n_reg, fec_ent, id_cte,nombre,factura, fec_fra, exp_tl, fec_pre_exp from registros, clientes " +
                            //"where registros.id_titular = clientes.id_cliente and clientes.tipo_cte ='T' and nombre like '%" + pn_cte + "%'";
                        }
                        else
                        {
                            if (pmatri != " " | pvehi != " ")// matricula or vehiculo
                            {
                                sql = "select * from registros where matricula ~* '" + pmatri + "' and vehiculo ~* '" + pvehi + "'";
                            }
                            else //x n_exp.
                            {
                                sql = "select * from registros where exp_tl ~* '" + pexp + "'";
                            }
                        }
                    }
                }
            }

            using (BDConexion.ObtenerConexion())
            {
                NpgsqlCommand comando = new NpgsqlCommand(sql, BDConexion.ObtenerConexion());
                comando.CommandTimeout = 5 * 60;
                NpgsqlDataReader datos = comando.ExecuteReader();


                while (datos.Read())
                {
                    Registro pRegistro = new Registro();
                    pRegistro.delegacion  = datos.GetChar(0);
                    pRegistro.n_reg       = datos.GetInt32(1);
                    pRegistro.fec_ent     = datos.GetDateTime(2);
                    pRegistro.id_cte      = datos.GetInt32(3);
                    pRegistro.id_titular  = datos.GetInt32(4);
                    pRegistro.seccion_int = datos.GetString(5);
                    pRegistro.seccion     = datos.GetString(6);
                    pRegistro.t_tramite   = datos.GetString(7);
                    pRegistro.matricula   = datos.GetString(8);
                    pRegistro.estado      = datos.GetString(9);
                    pRegistro.factura     = datos.GetInt32(10);
                    pRegistro.fec_fra     = datos.GetDateTime(11);
                    pRegistro.observacion = datos.GetString(12);
                    pRegistro.honorarios  = datos.GetDecimal(13);
                    pRegistro.p_iva       = datos.GetInt16(14);
                    pRegistro.tasa        = datos.GetDecimal(15);
                    pRegistro.exp_tl      = datos.GetString(16);
                    pRegistro.fec_pre_exp = datos.GetDateTime(17);
                    pRegistro.et_tasa     = datos.GetInt64(18);
                    pRegistro.t_tasa      = datos.GetString(19);
                    pRegistro.cambio_serv = datos.GetString(20);
                    pRegistro.bate_ant    = datos.GetString(21);
                    pRegistro.nif         = datos.GetString(22);
                    pRegistro.dcho_col    = datos.GetDecimal(23);
                    pRegistro.t_cte_fra   = datos.GetChar(24);
                    pRegistro.et_tasa2    = datos.GetInt64(25);
                    pRegistro.t_tasa2     = datos.GetString(26);
                    pRegistro.et_tasa3    = datos.GetInt64(27);
                    pRegistro.t_tasa3     = datos.GetString(28);
                    pRegistro.et_tasa4    = datos.GetInt64(29);
                    pRegistro.t_tasa4     = datos.GetString(30);
                    pRegistro.descripcion = datos.GetString(31);
                    pRegistro.ruta_pdf    = datos.GetString(32);
                    pRegistro.vehiculo    = datos.GetString(33);
                    pRegistro.descrip1    = datos.GetString(34);
                    pRegistro.impor1      = datos.GetDecimal(35);
                    pRegistro.iva1_sn     = datos.GetBoolean(36);
                    pRegistro.descrip2    = datos.GetString(37);
                    pRegistro.impor2      = datos.GetDecimal(38);
                    pRegistro.iva2_sn     = datos.GetBoolean(39);
                    _lista.Add(pRegistro);
                }

                comando.Connection.Close();
                return(_lista);
            }
        }
예제 #17
0
 public FabricacionHead(NpgsqlDataReader rdr)
 {
     this.id   = rdr.GetInt16(0);
     this.name = rdr.GetString(1);
 }
예제 #18
0
        NpgsqlDbColumn LoadColumnDefinition(NpgsqlDataReader reader, NpgsqlDatabaseInfo databaseInfo, bool oldQueryMode)
        {
            // We don't set ColumnName here. It should always contain the column alias rather than
            // the table column name (i.e. in case of "SELECT foo AS foo_alias"). It will be set later.
            var column = new NpgsqlDbColumn
            {
                AllowDBNull           = !reader.GetBoolean(reader.GetOrdinal("attnotnull")),
                BaseCatalogName       = _connection.Database !,
                BaseSchemaName        = reader.GetString(reader.GetOrdinal("nspname")),
                BaseServerName        = _connection.Host !,
                BaseTableName         = reader.GetString(reader.GetOrdinal("relname")),
                BaseColumnName        = reader.GetString(reader.GetOrdinal("attname")),
                ColumnAttributeNumber = reader.GetInt16(reader.GetOrdinal("attnum")),
                IsKey      = reader.GetBoolean(reader.GetOrdinal("isprimarykey")),
                IsReadOnly = !reader.GetBoolean(reader.GetOrdinal("is_updatable")),
                IsUnique   = reader.GetBoolean(reader.GetOrdinal("isunique")),

                TableOID = reader.GetFieldValue <uint>(reader.GetOrdinal("attrelid")),
                TypeOID  = reader.GetFieldValue <uint>(reader.GetOrdinal("typoid"))
            };

            column.PostgresType = databaseInfo.ByOID[column.TypeOID];
            column.DataTypeName = column.PostgresType.DisplayName; // Facets do not get included

            var defaultValueOrdinal = reader.GetOrdinal("default");

            column.DefaultValue = reader.IsDBNull(defaultValueOrdinal) ? null : reader.GetString(defaultValueOrdinal);

            column.IsAutoIncrement =
                !oldQueryMode && reader.GetBoolean(reader.GetOrdinal("isidentity")) ||
                column.DefaultValue != null && column.DefaultValue.StartsWith("nextval(");

            ColumnPostConfig(column, reader.GetInt32(reader.GetOrdinal("typmod")));

            return(column);
        }

        NpgsqlDbColumn SetUpNonColumnField(FieldDescription field)
        {
            // ColumnName and BaseColumnName will be set later
            var column = new NpgsqlDbColumn
            {
                BaseCatalogName       = _connection.Database !,
                BaseServerName        = _connection.Host !,
                IsReadOnly            = true,
                DataTypeName          = field.PostgresType.DisplayName,
                TypeOID               = field.TypeOID,
                TableOID              = field.TableOID,
                ColumnAttributeNumber = field.ColumnAttributeNumber,
                PostgresType          = field.PostgresType
            };

            ColumnPostConfig(column, field.TypeModifier);

            return(column);
        }

        /// <summary>
        /// Performs some post-setup configuration that's common to both table columns and non-columns.
        /// </summary>
        void ColumnPostConfig(NpgsqlDbColumn column, int typeModifier)
        {
            var typeMapper = _connection.Connector !.TypeMapper;

            column.NpgsqlDbType = typeMapper.GetTypeInfoByOid(column.TypeOID).npgsqlDbType;
            column.DataType     = typeMapper.TryGetByOID(column.TypeOID, out var handler)
                ? handler.GetFieldType()
                : null;

            if (column.DataType != null)
            {
                column.IsLong = handler is ByteaHandler;

                if (handler is ICompositeHandler)
                {
                    column.UdtAssemblyQualifiedName = column.DataType.AssemblyQualifiedName;
                }
            }

            var facets = column.PostgresType.GetFacets(typeModifier);

            if (facets.Size != null)
            {
                column.ColumnSize = facets.Size;
            }
            if (facets.Precision != null)
            {
                column.NumericPrecision = facets.Precision;
            }
            if (facets.Scale != null)
            {
                column.NumericScale = facets.Scale;
            }
        }
    }
}
예제 #19
0
        public static T SimpleQueryFirstOrDefault <T>(this IDbConnection p_connection, string p_sql)
        {
            Type   type   = typeof(T);
            object entity = Activator.CreateInstance(type);

            p_connection.Open();

            using (NpgsqlCommand command = new NpgsqlCommand(p_sql, (NpgsqlConnection)p_connection))
            {
                using (NpgsqlDataReader sqlDataReader = command.ExecuteReader())
                {
                    PropertyInfo[] propertyInfos = type.GetProperties();

                    while (sqlDataReader.Read())
                    {
                        propertyInfos.Each(p_info =>
                        {
                            switch (p_info.PropertyType.Name.ToLower())
                            {
                            case "char":
                                p_info.SetValue(entity, sqlDataReader.GetChar(p_info.Name));
                                break;

                            case "boolean":
                                p_info.SetValue(entity, sqlDataReader.GetBoolean(p_info.Name));
                                break;

                            case "string":
                                p_info.SetValue(entity, sqlDataReader.GetString(p_info.Name));
                                break;

                            case "byte":
                                p_info.SetValue(entity, sqlDataReader.GetByte(p_info.Name));
                                break;

                            case "decimal":
                                p_info.SetValue(entity, sqlDataReader.GetDecimal(p_info.Name));
                                break;

                            case "float":
                                p_info.SetValue(entity, sqlDataReader.GetFloat(p_info.Name));
                                break;

                            case "double":
                                p_info.SetValue(entity, sqlDataReader.GetDouble(p_info.Name));
                                break;

                            case "int16":
                                p_info.SetValue(entity, sqlDataReader.GetInt16(p_info.Name));
                                break;

                            case "int32":
                                p_info.SetValue(entity, sqlDataReader.GetInt32(p_info.Name));
                                break;

                            case "int64":
                                p_info.SetValue(entity, sqlDataReader.GetInt64(p_info.Name));
                                break;

                            default:
                                p_info.SetValue(entity, sqlDataReader.GetValue(p_info.Name));
                                break;
                            }
                        });
                        return((T)entity);
                    }
                }
            }

            return((T)entity);
        }
        NpgsqlDbColumn LoadColumnDefinition(NpgsqlDataReader reader)
        {
            var columnName = reader.GetString(reader.GetOrdinal("attname"));
            var column = new NpgsqlDbColumn
            {
                AllowDBNull = !reader.GetBoolean(reader.GetOrdinal("attnotnull")),
                BaseCatalogName = _connection.Database,
                BaseColumnName = columnName,
                BaseSchemaName = reader.GetString(reader.GetOrdinal("nspname")),
                BaseServerName = _connection.Host,
                BaseTableName = reader.GetString(reader.GetOrdinal("relname")),
                ColumnName = columnName,
                ColumnOrdinal = reader.GetInt32(reader.GetOrdinal("attnum")) - 1,
                ColumnAttributeNumber = (short)(reader.GetInt16(reader.GetOrdinal("attnum")) - 1),
                IsKey = reader.GetBoolean(reader.GetOrdinal("isprimarykey")),
                IsReadOnly = !reader.GetBoolean(reader.GetOrdinal("is_updatable")),
                IsUnique = reader.GetBoolean(reader.GetOrdinal("isunique")),
                DataTypeName = reader.GetString(reader.GetOrdinal("typname")),

                TableOID = reader.GetFieldValue<uint>(reader.GetOrdinal("attrelid")),
                TypeOID = reader.GetFieldValue<uint>(reader.GetOrdinal("typoid"))
            };

            var defaultValueOrdinal = reader.GetOrdinal("default");
            column.DefaultValue = reader.IsDBNull(defaultValueOrdinal) ? null : reader.GetString(defaultValueOrdinal);

            column.IsAutoIncrement = column.DefaultValue != null && column.DefaultValue.StartsWith("nextval(");

            ColumnPostConfig(column, reader.GetInt32(reader.GetOrdinal("atttypmod")));

            return column;
        }
        /// <summary>
        /// Pesquisa uma conta na Database.
        /// </summary>
        /// <param name="valor">Parâmetro de pesquisa 1</param>
        /// <param name="valor2">Parâmetro de pesquisa 2</param>
        /// <param name="type">Tipo de pesquisa. 0 = Login; 1 = Id; 2 = Login e Senha</param>
        /// <param name="searchFlag">Detalhes (DB;Flag)\n0 = Nada\n1 = Títulos\n2 = Bônus\n4 = Amigos\n8 = Eventos\n16 = Configurações</param>
        /// <returns></returns>
        public Account getAccountDB(object valor, object valor2, int type, int searchFlag)
        {
            if (type == 0 && (string)valor == "" || type == 1 && (long)valor == 0 || type == 2 && (string.IsNullOrEmpty((string)valor) || string.IsNullOrEmpty((string)valor2)))
            {
                return(null);
            }
            Account conta = null;

            try
            {
                using (NpgsqlConnection connection = SQLjec.getInstance().conn())
                {
                    NpgsqlCommand command = connection.CreateCommand();
                    connection.Open();
                    command.Parameters.AddWithValue("@valor", valor);
                    if (type == 0)
                    {
                        command.CommandText = "SELECT * FROM contas WHERE login=@valor LIMIT 1";
                    }
                    else if (type == 1)
                    {
                        command.CommandText = "SELECT * FROM contas WHERE player_id=@valor LIMIT 1";
                    }
                    else if (type == 2)
                    {
                        command.Parameters.AddWithValue("@valor2", valor2);
                        command.CommandText = "SELECT * FROM contas WHERE login=@valor AND password=@valor2 LIMIT 1";
                    }
                    NpgsqlDataReader data = command.ExecuteReader();
                    while (data.Read())
                    {
                        conta          = new Account();
                        conta.login    = data.GetString(0);
                        conta.password = data.GetString(1);
                        conta.SetPlayerId(data.GetInt64(2), searchFlag);
                        conta.player_name                  = data.GetString(3);
                        conta.name_color                   = data.GetInt16(4);
                        conta.clan_id                      = data.GetInt32(5);
                        conta._rank                        = data.GetInt16(6);
                        conta._gp                          = data.GetInt32(7);
                        conta._exp                         = data.GetInt32(8);
                        conta.pc_cafe                      = data.GetInt32(9);
                        conta._statistic.fights            = data.GetInt32(10);
                        conta._statistic.fights_win        = data.GetInt32(11);
                        conta._statistic.fights_lost       = data.GetInt32(12);
                        conta._statistic.kills_count       = data.GetInt32(13);
                        conta._statistic.deaths_count      = data.GetInt32(14);
                        conta._statistic.headshots_count   = data.GetInt32(15);
                        conta._statistic.escapes           = data.GetInt32(16);
                        conta.access                       = data.GetInt16(17);
                        conta._money                       = data.GetInt32(20);
                        conta._isOnline                    = data.GetBoolean(21);
                        conta._equip._primary              = data.GetInt32(22);
                        conta._equip._secondary            = data.GetInt32(23);
                        conta._equip._melee                = data.GetInt32(24);
                        conta._equip._grenade              = data.GetInt32(25);
                        conta._equip._special              = data.GetInt32(26);
                        conta._equip._red                  = data.GetInt32(27);
                        conta._equip._blue                 = data.GetInt32(28);
                        conta._equip._helmet               = data.GetInt32(29);
                        conta._equip._dino                 = data.GetInt32(30);
                        conta._equip._beret                = data.GetInt32(31);
                        conta.brooch                       = data.GetInt32(32);
                        conta.insignia                     = data.GetInt32(33);
                        conta.medal                        = data.GetInt32(34);
                        conta.blue_order                   = data.GetInt32(35);
                        conta._mission.mission1            = data.GetInt32(36);
                        conta.clanAccess                   = data.GetInt16(37);
                        conta.effects                      = (CupomEffects)data.GetInt64(39);
                        conta._statistic.fights_draw       = data.GetInt32(40);
                        conta._mission.mission2            = data.GetInt32(41);
                        conta._mission.mission3            = data.GetInt32(42);
                        conta._statistic.totalkills_count  = data.GetInt32(43);
                        conta._statistic.totalfights_count = data.GetInt32(44);
                        conta._status.SetData((uint)data.GetInt64(45), conta.player_id);

                        if (AddAccount(conta) && conta._isOnline)
                        {
                            conta.setOnlineStatus(false);
                        }
                    }
                    command.Dispose();
                    data.Dispose();
                    data.Close();
                    connection.Dispose();
                    connection.Close();
                }
            }
            catch (Exception ex)
            {
                SaveLog.fatal(ex.ToString());
                Printf.b_danger("[AccountManager.getAccountDB] Erro fatal!");
            }
            return(conta);
        }