示例#1
0
        public static List <Reserva> ListadoCliente(string nombre_cliente)
        {
            List <Reserva> resp = new List <Reserva>();
            SqlConnection  cnn  = new SqlConnection(BaseDeDatos.CONEXION);
            SqlCommand     cmd  = new SqlCommand("reservasActivasCliente", cnn);

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@nombre", nombre_cliente);
            try
            {
                cnn.Open();
                SqlDataReader lector = cmd.ExecuteReader();
                while (lector.Read())
                {
                    Cliente cli = PersistenciaCliente.BuscarCliente((string)lector["nombre_cli"]);

                    Habitacion hab = PersistenciaHabitacion.ObtenerHabitacion((string)lector["nombre_hotel"], (int)lector["numero_hab"]);
                    Reserva    r   = new Reserva((int)lector["numero"], (DateTime)lector["fecha_inicio"], (DateTime)lector["fecha_final"], (string)lector["estado_reserva"],
                                                 cli, hab);

                    resp.Add(r);
                }
                lector.Close();
            }
            catch (Exception ex)
            { throw ex; }
            finally
            { cnn.Close(); }
            return(resp);
        }
示例#2
0
        //LISTAR PEDIDOS GENERADOS O ENVIADOS
        public List <Pedido> ListarPedidoGeneradoOEnviado()
        {
            //GET CONNECTION STRING
            SqlConnection connection = new SqlConnection(Conexion.ConnectionString);

            //STORED PROCEDURE
            SqlCommand Command = new SqlCommand("ListarPedidoGeneradoOEnviado", connection);

            Command.CommandType = CommandType.StoredProcedure;

            //READER
            SqlDataReader Reader;

            //PREPARAR VARIABLES
            PersistenciaCliente     persistenciaCliente     = new PersistenciaCliente();
            PersistenciaMedicamento persistenciaMedicamento = new PersistenciaMedicamento();
            int           Numero;
            Cliente       cliente = null;
            int           Cantidad;
            string        Estado;
            Medicamento   medicamento = null;
            int           MedicamentoCodigo;
            string        MedicamentoFarmacia;
            List <Pedido> List = new List <Pedido>();

            try
            {
                connection.Open();
                Reader = Command.ExecuteReader();
                while (Reader.Read())
                {
                    Numero              = (int)Reader["Numero"];
                    Estado              = (string)Reader["Estado"];
                    Cantidad            = (int)Reader["CantidadMedicamento"];
                    MedicamentoCodigo   = (int)Reader["MedicamentoCodigo"];
                    MedicamentoFarmacia = (string)Reader["MedicamentoFarmaceutica"];
                    medicamento         = persistenciaMedicamento.BuscarMedicamento(MedicamentoCodigo, MedicamentoFarmacia);
                    cliente             = persistenciaCliente.BuscarCliente((string)Reader["Cliente"]);
                    Pedido pedido = new Pedido(Numero, cliente, medicamento, Cantidad, Estado);
                    List.Add(pedido);
                }
                Reader.Close();
            }
            catch (Exception ex)
            {
                throw new ApplicationException("Error en la base de datos: " + ex.Message);
            }
            finally
            {
                connection.Close();
            }
            return(List);
        }
示例#3
0
        //GET PEDIDO
        public Pedido BuscarPedido(int Numero)
        {
            //GET CONNECTION STRING
            SqlConnection connection = new SqlConnection(Conexion.ConnectionString);

            //STORED PROCEDURE
            SqlCommand sp = new SqlCommand("BuscarPedido", connection);

            sp.CommandType = CommandType.StoredProcedure;

            //PARAMETROS
            sp.Parameters.AddWithValue("@Numero", Numero);

            //READER
            SqlDataReader reader;

            //PREPARAR VARIABLES
            PersistenciaCliente     persistenciaCliente     = new PersistenciaCliente();
            PersistenciaMedicamento persistenciaMedicamento = new PersistenciaMedicamento();
            Cliente     cliente;
            Medicamento medicamento;
            Pedido      pedido;
            int         Cantidad;
            string      Estado;

            try
            {
                connection.Open();
                reader = sp.ExecuteReader();

                if (reader.Read())
                {
                    cliente     = persistenciaCliente.BuscarCliente((string)reader["Cliente"]);
                    medicamento = persistenciaMedicamento.BuscarMedicamento((int)reader["MedicamentoCodigo"], (string)reader["MedicamentoFarmaceutica"]);
                    Cantidad    = (int)reader["CantidadMedicamento"];
                    Estado      = (string)reader["Estado"];
                    pedido      = new Pedido(Numero, cliente, medicamento, Cantidad, Estado);
                    reader.Close();
                }
                else
                {
                    return(null);
                }

                return(pedido);
            }
            catch { throw; }

            finally { connection.Close(); }
        }
示例#4
0
        public static List <Reserva> ListarPorHabitacion(Habitacion hab, string filtro)
        {
            List <Reserva> lstRes = new List <Reserva>();
            SqlConnection  cnn    = new SqlConnection(BaseDeDatos.CONEXION);

            SqlCommand cmd = new SqlCommand("listadoReservasCronologica", cnn);

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@numeroHab", Convert.ToInt32(hab.Numero));
            cmd.Parameters.AddWithValue("@nombreHotel", hab.Hotel.Nombre);
            cmd.Parameters.AddWithValue("@filtro", filtro);

            SqlParameter prmRetorno = new SqlParameter();

            prmRetorno.Direction = ParameterDirection.ReturnValue;
            cmd.Parameters.Add(prmRetorno);

            try
            {
                cnn.Open();
                SqlDataReader lector = cmd.ExecuteReader();
                if (prmRetorno.Value != null)
                {
                    int resp = (int)prmRetorno.Value;
                    if (resp == -1)
                    {
                        throw new Exception("No existen reservas para esta habitación con el filtro seleccionado.");
                    }
                }

                while (lector.Read())
                {
                    Cliente    cliente    = PersistenciaCliente.BuscarCliente((string)lector["nombre_cli"]);
                    Habitacion habitacion = PersistenciaHabitacion.ObtenerHabitacion((string)lector["nombre_hotel"], (int)lector["numero_hab"]);
                    Reserva    reserva    = new Reserva(
                        (int)lector["numero"],
                        (DateTime)lector["fecha_inicio"],
                        (DateTime)lector["fecha_final"],
                        (string)lector["estado_reserva"],
                        cliente,
                        habitacion);
                    lstRes.Add(reserva);
                }
            }
            catch (Exception ex)
            { throw ex; }
            finally
            { cnn.Close(); }
            return(lstRes);
        }
示例#5
0
        public static List <Cliente> ListarComprasXCliente()
        {
            Cliente        oCli;
            List <Cliente> oListaCxC = new List <Cliente>();
            SqlDataReader  oReader;

            SqlConnection oConexion = new SqlConnection(Conexion.STR);
            SqlCommand    oComando  = new SqlCommand("sp_TotalComprasXCliente", oConexion);

            try
            {
                oConexion.Open();
                oReader = oComando.ExecuteReader();

                if (oReader.HasRows)
                {
                    while (oReader.Read())
                    {
                        int CI = (int)oReader["ci"];
                        oCli = PersistenciaCliente.BuscarCliente(CI);

                        Cliente _Cli = new Cliente(CI, (string)oReader["nombre"], (string)oReader["apellido"], (int)oReader["numTel"]);

                        oListaCxC.Add(_Cli);
                    }

                    oReader.Close();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                oConexion.Close();
            }

            return(oListaCxC);
        }