示例#1
0
        public List<Cliente> ConsultarClientes()
        {
            try
            {

                List<Cliente> clientes = null;
                Cliente cliente = null;

                using (SqlConnection conexion = Conexion.ObtenerInstancia().CrearConexionSQL())
                {

                    using (SqlCommand comando = conexion.CreateCommand())
                    {
                        comando.CommandType = CommandType.StoredProcedure;
                        comando.CommandText = "SPS_Cliente_Todos";

                        comando.Connection.Open();

                        SqlDataReader dataReader = comando.ExecuteReader(CommandBehavior.CloseConnection);

                        if (dataReader.HasRows)
                        {

                            clientes = new List<Cliente>();

                            while (dataReader.Read())
                            {
                                cliente = new Cliente();

                                cliente.DU = Convert.ToInt64(dataReader["DU"]);
                                cliente.Apellido = dataReader["APELLIDO"].ToString();
                                cliente.Nombre = dataReader["NOMBRE"].ToString();
                                cliente.Telefono = dataReader["TELEFONO"].ToString();
                                cliente.Direccion = ConsultarDireccion(cliente.DU, "Cliente");

                                clientes.Add(cliente);
                            }
                        }

                    }

                }

                return clientes;

            }
            catch (AccesoBDException ex)
            {
                throw new DALException("ReservaDAO", "ConsultarClientes", "AccesoBD", ex.Message, ex);
            }
            catch (SqlException ex)
            {
                throw new DALException("ReservaDAO", "ConsultarClientes", "SQL", ex.Message, ex);
            }
            catch (Exception ex)
            {
                throw new DALException("ReservaDAO", "ConsultarClientes", "General: " + ex.GetType().ToString(), ex.Message, ex);
            }
        }
示例#2
0
        public bool InsertarCliente(Cliente cliente)
        {
            try
            {

                int filasAfectadas = 0;

                using (SqlConnection conexion = Conexion.ObtenerInstancia().CrearConexionSQL())
                {
                    using (SqlCommand comando = conexion.CreateCommand())
                    {
                        comando.CommandType = CommandType.StoredProcedure;
                        comando.CommandText = "SPI_Cliente";
                        comando.Parameters.Add(new SqlParameter("@DU", cliente.DU));
                        comando.Parameters.Add(new SqlParameter("@Apellido", cliente.Apellido));
                        comando.Parameters.Add(new SqlParameter("@Nombre", cliente.Nombre));
                        comando.Parameters.Add(new SqlParameter("@Telefono", cliente.Telefono));

                        comando.Connection.Open();

                        filasAfectadas += comando.ExecuteNonQuery();

                        if (cliente.Direccion != null)
                        {
                            comando.CommandText = "SPI_Direccion";
                            comando.Parameters.Clear();
                            comando.Parameters.Add(new SqlParameter("@DUEmpleado", DBNull.Value));
                            comando.Parameters.Add(new SqlParameter("@DUCliente", cliente.DU));
                            comando.Parameters.Add(new SqlParameter("@Calle", cliente.Direccion.Calle));
                            comando.Parameters.Add(new SqlParameter("@Altura", cliente.Direccion.Altura));
                            comando.Parameters.Add(new SqlParameter("@Localidad", cliente.Direccion.Localidad));
                            comando.Parameters.Add(new SqlParameter("@Piso", cliente.Direccion.Piso));
                            comando.Parameters.Add(new SqlParameter("@Departamento", cliente.Direccion.Departamento));

                            comando.ExecuteNonQuery();
                        }

                    }
                }

                if (filasAfectadas > 0)
                {
                    return true;
                }
                else
                {
                    return false;
                }

            }
            catch (AccesoBDException ex)
            {
                throw new DALException("ReservaDAO", "InsertarCliente", "AccesoBD", ex.Message, ex);
            }
            catch (SqlException ex)
            {
                throw new DALException("ReservaDAO", "InsertarCliente", "SQL", ex.Message, ex);
            }
            catch (Exception ex)
            {
                throw new DALException("ReservaDAO", "InsertarCliente", "General: " + ex.GetType().ToString(), ex.Message, ex);
            }
        }
示例#3
0
        public Int64 NuevaReserva(DateTime fechaDesde, DateTime fechaHasta, Cliente cliente)
        {
            Reserva nuevaReserva = null;

            try
            {

                if (ValidarHorarioReserva(fechaDesde, fechaHasta))
                {

                    Reserva reserva = new Reserva();
                    reserva.Cliente = cliente;
                    reserva.FechaHoraInicio = fechaDesde;
                    reserva.FechaHoraFin = fechaHasta;
                    reserva.Estado = "I"; //Inicial
                    reserva.Usuario = GestorLogin.ObtenerInstancia().Usuario.Nombre;
                    reserva.FechaHora = DateTime.Now;
                    reserva.DVH = GestorHash.ObtenerInstancia().GenerarHashDatos(reservaDAO.GenerarListaDatos(reserva));

                    Int64 idReserva = reservaDAO.InsertarNuevaReserva(reserva);

                    if (idReserva > 0)
                    {
                        nuevaReserva = reservaDAO.TraerReserva(idReserva);
                        nuevaReserva.DVH = GestorHash.ObtenerInstancia().GenerarHashDatos(reservaDAO.GenerarListaDatos(nuevaReserva));

                        if (reservaDAO.ActualizarReserva(nuevaReserva))
                        {
                            return idReserva;
                        }
                        else
                        {
                            return 0;
                        }
                    }
                    else
                    {
                        return 0;
                    }

                }
                else
                {
                    return -1;
                }

            }
            catch (Exception)
            {
                throw;
            }
        }
示例#4
0
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {

                if (ValidarCampos())
                {

                    long duCliente = 0;

                    if(Int64.TryParse(this.txtDU.Text, out duCliente))
                    {
                        if (duCliente > 0)
                        {
                            Cliente cliente = new Cliente();
                            cliente.DU = duCliente;
                            cliente.Apellido = this.txtApellido.Text.ToUpperInvariant();
                            cliente.Nombre = this.txtNombre.Text.ToUpperInvariant();
                            cliente.Telefono = this.txtTelefono.Text;

                            if (ValidarDireccion())
                            {
                                int altura = 0;
                                int piso = 0;
                                int.TryParse(this.txtPiso.Text, out piso);

                                if (Int32.TryParse(this.txtAltura.Text, out altura))
                                {
                                    if (altura > 0)
                                    {
                                        cliente.Direccion = new Direccion();
                                        cliente.Direccion.Calle = this.txtCalle.Text;
                                        cliente.Direccion.Altura = altura;
                                        cliente.Direccion.Localidad = this.txtLocalidad.Text;
                                        cliente.Direccion.Piso =  piso;
                                        cliente.Direccion.Departamento = String.IsNullOrWhiteSpace(this.txtDepto.Text) ? "N/A" : this.txtDepto.Text.PadRight(5, ' ').Substring(0, 5).Trim();
                                    }
                                    else
                                    {
                                        MessageBox.Show("La Altura debe ser distinta de 0.", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                        this.txtAltura.Focus();
                                        return;
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("La Altura debe ser numérica.", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                    this.txtAltura.Focus();
                                    return;
                                }
                            }

                            if (GestorReserva.ObtenerInstancia().InsertarNuevoCliente(cliente))
                            {
                                MessageBox.Show("Se ha creado un nuevo Cliente.", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                this.DialogResult = DialogResult.OK;
                            }
                            else
                            {
                                MessageBox.Show("No se ha podido dar de alta el Cliente.", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }

                        }
                        else
                        {
                            MessageBox.Show("El DU debe ser distinto de 0.", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            this.txtDU.Focus();
                        }
                    }
                    else
                    {
                        MessageBox.Show("El DU debe ser numérico.", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        this.txtDU.Focus();
                    }

                }
                else
                {
                    MessageBox.Show("Debe completar todos los datos del Cliente", "Gestión de Clientes", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }

            }
            catch (Exception ex)
            {
                string mensajeError = ErrorManager.ObtenerInstancia().LoguearGenerarMensajeError(ex, MensajeError.AltaClienteFallida, FormHelper.ObtenerInstancia().TraerUltimoIdioma());
                MessageBox.Show(mensajeError, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
示例#5
0
 public bool InsertarNuevoCliente(Cliente cliente)
 {
     try
     {
         return reservaDAO.InsertarCliente(cliente);
     }
     catch (Exception)
     {
         throw;
     }
 }