private void dgvOfertas_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (inputCantidadUnidades.Text == "")
            {
                MessageBoxUtil.ShowError("Ingrese la cantidad de unidades a comprar");
            }
            else if (!TextFieldUtil.IsDigitsOnly(inputCantidadUnidades.Text))
            {
                MessageBoxUtil.ShowError("La cantidad de unidades debe ser un numero natural");
            }
            else
            {
                if (MessageBox.Show("¿Desea comprar " + inputCantidadUnidades.Text + " unidades de " + dgvOfertas.CurrentRow.Cells["descripcion"].Value.ToString() + "?", "Atención", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                {
                    StoredProcedureParameters inputParameters = new StoredProcedureParameters()
                                                                .AddParameter("@id_cliente_comprador", new RepositorioClientes().ObtenerIdClienteDeUsuario(Session.Instance.IdUsuario))
                                                                .AddParameter("@codigo_oferta", dgvOfertas.CurrentRow.Cells["codigo_oferta"].Value.ToString())
                                                                .AddParameter("@cant_unidades", Int32.Parse(inputCantidadUnidades.Text))
                                                                .AddParameter("@fecha", DateTime.Parse(ConfigurationManager.AppSettings["FechaSistema"]));

                    try
                    {
                        new Conexion().ExecDataTableStoredProcedure(StoredProcedures.ComprarOferta, inputParameters);

                        MessageBoxUtil.ShowInfo("Compra exitosa!");
                        this.LlenarTablaOfertas();
                    }
                    catch (SqlException ex) { MessageBoxUtil.ShowError(ex.Message); }
                }
            }
        }
Beispiel #2
0
        private Boolean ValidarInputs()
        {
            string errores = "";

            // Validacion monto
            if (inputMonto.Text == "")
            {
                errores += "El monto es obligatorio\n";
            }
            else if (!TextFieldUtil.IsDigitsOnly(inputMonto.Text))
            {
                errores += "El monto debe ser un número entero positivo\n";
            }

            // Validacion tarjeta
            if (cmbTipoPago.SelectedItem == null)
            {
                errores += "El tipo de pago es obligatorio\n";
            }
            else if (cmbTipoPago.Text == "Efectivo" && cmbTarjeta.SelectedItem != null)
            {
                errores += "No seleccione una tarjeta si el pago es en efectivo\n";
            }
            else if ((cmbTipoPago.Text == "Débito" || cmbTipoPago.Text == "Crédito") && cmbTarjeta.SelectedItem == null)
            {
                errores += "Seleccione la tarjeta asociada al pago\n";
            }
            else if ((cmbTipoPago.Text == "Débito" || cmbTipoPago.Text == "Crédito") && !cmbTarjeta.Text.Contains(cmbTipoPago.Text))
            {
                errores += "El tipo de la tarjeta seleccionada no coincide con el indicado en el formulario\n";
            }

            if (errores != "")
            {
                MessageBoxUtil.ShowError(errores);
                return(false);
            }
            else
            {
                return(true);
            }
        }
Beispiel #3
0
 private void buscar_Click(object sender, EventArgs e)
 {
     // Validaciones de campos
     if (!TextFieldUtil.CampoNumericoValido(DNI) || !TextFieldUtil.CampoTextoValido(Nombre, Apellido))
     {
         // No hacer nada. El msj de error esta dentro de las funciones
     }
     else
     {
         if (AlMenosUnCampoNoVacio())
         {
             try
             {
                 DataTable dat = new RepositorioClientes().BuscarCliente(Nombre.Text, Apellido.Text, DNI.Text, Email.Text);
                 grillaClientes.DataSource = dat;
                 grillaClientes.Columns["id_cliente"].Visible = false;
             }
             catch (SqlException ex)
             {
                 MessageBoxUtil.ShowError(ex.Message);
             }
         }
     }
 }
Beispiel #4
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            // Validaciones de campos
            if (!TextFieldUtil.CampoNumericoValido(inputTelefono, inputPiso, inputCodigoPostal) ||
                !TextFieldUtil.CampoTextoValido(inputRubro, inputCiudad))
            {
                // Dentro del metodo esta el mensaje de error
            }
            else
            {
                if (CamposRequeridosNoVacios())
                {
                    Conexion con = new Conexion();

                    // Armo Procedimiento con los parametros de usuario y rol
                    StoredProcedureParameters parametrosUsuarioRol = new StoredProcedureParameters()
                                                                     .AddParameter("@id_rol", ID_ROL_PROVEEDOR)
                                                                     .AddParameter("@username", username);

                    // Armo el Store Procedure con los parametros REQUERIDOS
                    StoredProcedureParameters parametros = new StoredProcedureParameters()
                                                           .AddParameter("@username", username)
                                                           .AddParameter("@password", password)
                                                           .AddParameter("@razon_social", inputRazonSocial.Text)
                                                           .AddParameter("@mail", inputMail.Text)
                                                           .AddParameter("@telefono", decimal.Parse(inputTelefono.Text))
                                                           .AddParameter("@direccion", inputDireccion.Text)
                                                           .AddParameter("@ciudad", inputCiudad.Text)
                                                           .AddParameter("@cuit", inputCuit.Text)
                                                           .AddParameter("@rubro", inputRubro.Text)
                                                           .AddParameter("@nombre_contacto", inputNombreDeContacto.Text);

                    // Ahora me fijo si completo los campos no requeridos y lo agrego en caso que si
                    // Piso
                    if (inputPiso.Text == "")
                    {
                        parametros.AddParameter("@piso", DBNull.Value); // Muy diferente de NULL
                    }
                    else
                    {
                        parametros.AddParameter("@piso", inputPiso.Text);
                    }

                    // Dpto
                    if (inputDepartamento.Text == "")
                    {
                        parametros.AddParameter("@departamento", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@departamento", inputDepartamento.Text);
                    }

                    // Localidad
                    if (inputLocalidad.Text == "")
                    {
                        parametros.AddParameter("@localidad", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@localidad", inputLocalidad.Text);
                    }

                    // Codigo Postal
                    if (inputCodigoPostal.Text == "")
                    {
                        parametros.AddParameter("@codigo_postal", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@codigo_postal", inputCodigoPostal.Text);
                    }

                    try
                    {
                        //Aca se guarda el usuario y sus datos propios de proveedor en la tabla proveedor
                        int id_usuario = con.ExecSingleOutputStoredProcedure <int>(StoredProcedures.AltaProveedorDesdeRegistroUsuario, parametros, "id_usuario");
                        MessageBoxUtil.ShowInfo("Proveedor generado con exito");

                        //Agrego el rol del usuario tipo proveedor
                        con.ExecStoredProcedure(StoredProcedures.AgregarRolAlUsuario, parametrosUsuarioRol);
                        MessageBoxUtil.ShowInfo("Rol asignado con exito");

                        // Logueo al usuario
                        Session.Instance.OpenSession(id_usuario);

                        NavigableFormUtil.BackwardTo(this, new SeleccionarFuncionalidad.SeleccionarFuncionalidad(previousForm, new RepositorioRoles().ObtenerRolesDeUsuario(id_usuario)));
                    }
                    catch (Exception ex)
                    {
                        MessageBoxUtil.ShowError(ex.Message);
                    }
                } //Cierro If campos requeridos no vacios
            }     // Cierro else del if validaciones de campos
        }         //Cierro metodo
Beispiel #5
0
        private void guardar_Click(object sender, EventArgs e)
        {
            // Validaciones de campos
            if (!TextFieldUtil.CampoNumericoValido(DNI, Piso, CodigoPostal) ||
                !TextFieldUtil.CampoTextoValido(Nombre, Apellido, Localidad))
            {
                // Dentro del metodo esta el mensaje de error
            }
            else
            {
                if (CamposRequeridosNoVacios())
                {
                    Conexion con = new Conexion();
                    // Crear el usuario
                    string username = DNI.Text;
                    string password = DNI.Text;
                    StoredProcedureParameters userParametros = new StoredProcedureParameters()
                                                               .AddParameter("@username", username)
                                                               .AddParameter("@password", password)
                                                               .AddParameter("@cant_intentos_fallidos", 0);
                    con.ExecDataTableStoredProcedure(StoredProcedures.AltaUsuario, userParametros);


                    // Armo el Store Procedure con los parametros REQUERIDOS
                    StoredProcedureParameters parametros = new StoredProcedureParameters()
                                                           .AddParameter("@nombre", Nombre.Text)
                                                           .AddParameter("@apellido", Apellido.Text)
                                                           .AddParameter("@dni", double.Parse(DNI.Text))
                                                           .AddParameter("@mail", Email.Text)
                                                           .AddParameter("@telefono", double.Parse(Telefono.Text))
                                                           .AddParameter("@direccion", Direccion.Text)
                                                           .AddParameter("@fecha_nacimiento", DateTime.Parse(FechaDeNacimiento.Text))
                                                           .AddParameter("@username", username)
                                                           .AddParameter("@password", password);
                    // Ahora me fijo si completo los campos no requeridos y lo agrego en caso que si
                    // Piso
                    if (Piso.Text == "")
                    {
                        parametros.AddParameter("@piso", DBNull.Value); // Muy diferente de NULL
                    }
                    else
                    {
                        parametros.AddParameter("@piso", decimal.Parse(Piso.Text));
                    }
                    // Dpto
                    if (Departamento.Text == "")
                    {
                        parametros.AddParameter("@departamento", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@departamento", Departamento.Text);
                    }
                    // Localidad
                    if (Localidad.Text == "")
                    {
                        parametros.AddParameter("@localidad", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@localidad", Localidad.Text);
                    }
                    // Codigo Postal
                    if (CodigoPostal.Text == "")
                    {
                        parametros.AddParameter("@codigo_postal", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@codigo_postal", decimal.Parse(CodigoPostal.Text));
                    }

                    // TENGO QUE VERIFICAR LO DE CLIENTES GEMELOS

                    try
                    {
                        // Impacto en la base
                        con.ExecDataTableStoredProcedure(StoredProcedures.AltaCliente, parametros);
                        MessageBoxUtil.ShowInfo("Cliente generado con exito");
                    }
                    catch (Exception ex)
                    {
                        MessageBoxUtil.ShowError(ex.Message);
                    }
                }
            }
        }
Beispiel #6
0
        private void guardar_Click(object sender, EventArgs e)
        {
            // Validaciones de campos
            if (!TextFieldUtil.CampoNumericoValido(DNI, Piso, CodigoPostal) ||
                !TextFieldUtil.CampoTextoValido(Nombre, Apellido, Localidad))
            {
                // Dentro del metodo esta el mensaje de error
            }
            else
            {
                if (CamposRequeridosNoVacios())
                {
                    Conexion con = new Conexion();

                    StoredProcedureParameters parametrosUsuarioRol = new StoredProcedureParameters()
                                                                     .AddParameter("@id_rol", ID_ROL_CLIENTE)
                                                                     .AddParameter("@username", username);

                    // Armo el Store Procedure con los parametros REQUERIDOS
                    StoredProcedureParameters parametros = new StoredProcedureParameters()
                                                           .AddParameter("@nombre", Nombre.Text)
                                                           .AddParameter("@apellido", Apellido.Text)
                                                           .AddParameter("@dni", double.Parse(DNI.Text))
                                                           .AddParameter("@mail", Email.Text)
                                                           .AddParameter("@telefono", double.Parse(Telefono.Text))
                                                           .AddParameter("@direccion", Direccion.Text)
                                                           .AddParameter("@fecha_nacimiento", DateTime.Parse(FechaDeNacimiento.Text))
                                                           .AddParameter("@username", username)
                                                           .AddParameter("@password", password);
                    // Ahora me fijo si completo los campos no requeridos y lo agrego en caso que si
                    // Piso
                    if (Piso.Text == "")
                    {
                        parametros.AddParameter("@piso", DBNull.Value); // Muy diferente de NULL
                    }
                    else
                    {
                        parametros.AddParameter("@piso", decimal.Parse(Piso.Text));
                    }
                    // Dpto
                    if (Departamento.Text == "")
                    {
                        parametros.AddParameter("@departamento", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@departamento", Departamento.Text);
                    }
                    // Localidad
                    if (Localidad.Text == "")
                    {
                        parametros.AddParameter("@localidad", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@localidad", Localidad.Text);
                    }
                    // Codigo Postal
                    if (CodigoPostal.Text == "")
                    {
                        parametros.AddParameter("@codigo_postal", DBNull.Value);
                    }
                    else
                    {
                        parametros.AddParameter("@codigo_postal", decimal.Parse(CodigoPostal.Text));
                    }

                    // TENGO QUE VERIFICAR LO DE CLIENTES GEMELOS

                    try
                    {
                        // Impacto en la base
                        int id_usuario = con.ExecSingleOutputStoredProcedure <int>(StoredProcedures.AltaClienteDesdeRegistroUsuario, parametros, "id_usuario");
                        MessageBoxUtil.ShowInfo("Cliente generado con exito");
                        con.ExecDataTableStoredProcedure(StoredProcedures.AgregarRolAlUsuario, parametrosUsuarioRol);
                        MessageBoxUtil.ShowInfo("Rol asignado con exito");

                        // Logueo al usuario
                        Session.Instance.OpenSession(id_usuario);

                        NavigableFormUtil.BackwardTo(this, new SeleccionarFuncionalidad.SeleccionarFuncionalidad(previousForm, new RepositorioRoles().ObtenerRolesDeUsuario(id_usuario)));
                    }
                    catch (Exception ex)
                    {
                        MessageBoxUtil.ShowError(ex.Message);
                    }
                }
            }
        }
Beispiel #7
0
        private void actualizar_Click(object sender, EventArgs e)
        {
            if (!TextFieldUtil.CampoNumericoValido(DNI, Piso, CodigoPostal) ||
                !TextFieldUtil.CampoTextoValido(Nombre, Apellido))
            {
                // Nothing
            }
            else
            {
                if (CamposRequeridosNoVacios())
                {
                    StoredProcedureParameters datosActualizados = new StoredProcedureParameters()
                                                                  .AddParameter("@dniOriginal", dniOriginal)
                                                                  .AddParameter("@nombre", Nombre.Text)
                                                                  .AddParameter("@apellido", Apellido.Text)
                                                                  .AddParameter("@dni", double.Parse(DNI.Text))
                                                                  .AddParameter("@mail", Email.Text)
                                                                  .AddParameter("@telefono", double.Parse(Telefono.Text))
                                                                  .AddParameter("@direccion", Direccion.Text)
                                                                  .AddParameter("@fecha_nacimiento", DateTime.Parse(FechaDeNacimiento.Text))
                                                                  .AddParameter("@habilitado", habilitacion.Checked);

                    // Ahora me fijo si completo los campos no requeridos y lo agrego en caso que si
                    // Piso
                    if (Piso.Text == "")
                    {
                        datosActualizados.AddParameter("@piso", DBNull.Value); // Muy diferente de NULL
                    }
                    else
                    {
                        datosActualizados.AddParameter("@piso", decimal.Parse(Piso.Text));
                    }
                    // Dpto
                    if (Departamento.Text == "")
                    {
                        datosActualizados.AddParameter("@departamento", DBNull.Value);
                    }
                    else
                    {
                        datosActualizados.AddParameter("@departamento", Departamento.Text);
                    }
                    // Localidad
                    if (Localidad.Text == "")
                    {
                        datosActualizados.AddParameter("@localidad", DBNull.Value);
                    }
                    else
                    {
                        datosActualizados.AddParameter("@localidad", Localidad.Text);
                    }
                    // Codigo Postal
                    if (CodigoPostal.Text == "")
                    {
                        datosActualizados.AddParameter("@codigo_postal", DBNull.Value);
                    }
                    else
                    {
                        datosActualizados.AddParameter("@codigo_postal", decimal.Parse(CodigoPostal.Text));
                    }

                    try
                    {
                        Conexion con = new Conexion();
                        con.ExecDataTableStoredProcedure(StoredProcedures.ActualizarCliente, datosActualizados);

                        previousForm.RefrescarBusqueda();

                        MessageBoxUtil.ShowInfo("Cliente actualizado correctamente");
                    }
                    catch (Exception ex)
                    {
                        MessageBoxUtil.ShowError(ex.Message);
                    }
                }
            }
        }
        private Boolean ValidarInputs()
        {
            string   errores = "";
            double   precioOferta, precioLista;
            DateTime fechaSistema = DateTime.Parse(ConfigurationManager.AppSettings["FechaSistema"]);

            // Validacion fecha publicacion
            if (dateTimePickerFechaPublicacion.Value.CompareTo(fechaSistema) < 0)
            {
                errores += "La fecha de publicacion no puede ser anterior a la fecha actual (" + fechaSistema + ")\n";
            }

            // Validacion fecha vencimiento
            if (dateTimePickerFechaVencimiento.Value.CompareTo(fechaSistema) < 0)
            {
                errores += "La fecha de publicacion no puede ser anterior a la fecha actual (" + fechaSistema + ")\n";
            }

            // Validacion fecha publicacion y vencimiento
            if (dateTimePickerFechaVencimiento.Value.CompareTo(dateTimePickerFechaPublicacion.Value) < 0)
            {
                errores += "La fecha de vencimiento no puede ser anterior a la fecha de publicacion\n";
            }

            // Validacion precio oferta
            if (inputPrecioOferta.Text == "")
            {
                errores += "El precio de oferta es obligatorio\n";
            }
            else if (!double.TryParse(inputPrecioOferta.Text, out precioOferta))
            {
                errores += "El precio de oferta debe ser un número flotante\n";
            }
            else if (precioOferta <= 0)
            {
                errores += "El precio de oferta debe ser mayor que cero\n";
            }

            // Validacion precio lista
            if (inputPrecioLista.Text == "")
            {
                errores += "El precio de lista es obligatorio\n";
            }
            else if (!double.TryParse(inputPrecioLista.Text, out precioLista))
            {
                errores += "El precio de lista debe ser un número flotante\n";
            }
            else if (precioLista <= 0)
            {
                errores += "El precio de lista debe ser mayor que cero\n";
            }

            // Validacion precio oferta y precio lista
            if (double.TryParse(inputPrecioOferta.Text, out precioOferta) && double.TryParse(inputPrecioLista.Text, out precioLista) && precioOferta >= precioLista)
            {
                errores += "El precio de oferta debe ser menor que el precio de lista\n";
            }

            // Validacion stock disponible
            if (inputStockDisponible.Text == "")
            {
                errores += "El stock disponible es obligatorio\n";
            }
            else if (!TextFieldUtil.IsDigitsOnly(inputStockDisponible.Text))
            {
                errores += "El stock disponible debe ser un número entero positivo\n";
            }

            // Validacion max unidades por cliente
            if (inputMaxUnidadesPorCliente.Text == "")
            {
                errores += "El maximo de unidades por cliente es obligatorio\n";
            }
            else if (!TextFieldUtil.IsDigitsOnly(inputMaxUnidadesPorCliente.Text))
            {
                errores += "El maximo de unidades por cliente debe ser un número entero positivo\n";
            }

            // Validacion codigo
            if (inputCodigo.Text == "")
            {
                errores += "El codigo es obligatorio\n";
            }
            else if (inputCodigo.Text.Length > 50)
            {
                errores += "El codigo es muy largo\n";
            }
            else if (inputCodigo.Text.Length < 4)
            {
                errores += "El codigo es muy corto\n";
            }

            // Validacion descripcion
            if (inputDescripcion.Text == "")
            {
                errores += "La descripcion es obligatoria\n";
            }

            if (errores != "")
            {
                MessageBoxUtil.ShowError(errores);
                return(false);
            }
            else
            {
                return(true);
            }
        }