private void Guardar_Click(object sender, EventArgs e)
        {
            if (Nombre.Text == "" || ListaFuncionalidades.CheckedItems.Count == 0) {
                MessageBox.Show("Faltan datos");
                return;
            }

            String nombreRol = NombreRol.Text;

            ParamSet ps = new ParamSet("GESTION_DE_PATOS.AltaRol");
            ps.AddParameter("@nombre",nombreRol);
            SqlParameter retval = ps.execSP();

            switch (retval.Value.ToString()) {
                case "1" : MessageBox.Show("El rol ya existe");
                    return;
            }

            ps.NombreSP("GESTION_DE_PATOS.AsignarFuncionalidadAlRol");

            foreach (String item in ListaFuncionalidades.CheckedItems)
            {
                ps.AddParameter("@id",Int32.Parse(item.ToString().Substring(0,item.IndexOf(":"))));
                ps.AddParameter("@rol",nombreRol);
                ps.execSP();
            }
            MessageBox.Show("Alta correcta");
            this.Hide();
            return;
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (this.user.Text == "" || this.pass.Text == "" || this.nombreA.Text == "" || this.apellido.Text == "") {
                MessageBox.Show("Faltan datos");
                return;

            }

            ParamSet ps = new ParamSet("GESTION_DE_PATOS.AltaAdministrador");
            ps.AddParameter("@user", user.Text);
            ps.AddParameter("@nombre", nombreA.Text);
            ps.AddParameter("@apellido", apellido.Text);
            ps.AddParameter("@pass", pass.Text);

            switch (ps.execSP().Value.ToString()) {

                case "0":
                    MessageBox.Show("Alta realizada con éxito");
                    this.Hide();
                    return;
                case "1":
                    MessageBox.Show("El username ya existe");
                    return;

            }
        }
        private void Confirmar_Click_1(object sender, EventArgs e)
        {
            if (passV.Text == "" || passN.Text == "" || passN2.Text == "")
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            Session s = (Session)AppContext.getObject(typeof(Session));
            ParamSet ps = new ParamSet("GESTION_DE_PATOS.CambiarPassword");
            ps.AddParameter("@user", s.username);
            ps.AddParameter("@passVieja", passV.Text);
            ps.AddParameter("@passNueva", passN.Text);
            ps.AddParameter("@passNueva2", passN2.Text);
            SqlParameter ret = ps.execSP();

            switch (ret.Value.ToString())
            {

                case "0":
                    MessageBox.Show("Contraseña cambiada con éxito");
                    this.Hide();
                    return;

                case "1":
                    MessageBox.Show("La contraseña actual ingresada es incorrecta");
                    return;

                case "2":
                    MessageBox.Show("La confirmación de la nueva contraseña no coincide con la ingresada");
                    return;
            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            Session s = (Session)AppContext.getObject(typeof(Session));
            if (ClienteDestino.Text == "" || monto.SelectedItem == null)
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            ParamSet ps = new ParamSet("GESTION_DE_PATOS.ComprarGiftcard");

            ps.AddParameter("@clienteOrigen", s.username);
            ps.AddParameter("@fecha", (String)AppContext.getObject(typeof(String)));
            ps.AddParameter("@clienteDestino", ClienteDestino.Text);
            ps.AddParameter("@monto", Int64.Parse(monto.SelectedItem.ToString()));

            SqlParameter retval = ps.execSP();

            switch (retval.Value.ToString())
            {
                case "0":
                    MessageBox.Show("Operación finalizada con éxito");
                    Main.actualizar();
                    break;
                case "1": MessageBox.Show("El cliente destino no puede coincidir con el cliente origen");
                    break;
                case "2": MessageBox.Show("El cliente destino no se encuentra habilitado");
                    break;
                case "3": MessageBox.Show("Cliente destino incorrecto");
                    break;
                case "4": MessageBox.Show("Usted no tiene saldo suficiente para comprar el giftcard requerido");
                    break;
            }
        }
        private void cupones_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            String columna_seleccionada = this.cupones.Columns[e.ColumnIndex].Name;

            if (columna_seleccionada == "Publicar")
            {
                String codigo = this.cupones.Rows[e.RowIndex].Cells[0].Value.ToString();
                if(codigo == ""){
                    MessageBox.Show("No hay promociones para publicar");
                    return;
                }

                ParamSet ps = new ParamSet("GESTION_DE_PATOS.PublicarCupon");
                ps.AddParameter("@codigoPromocion", codigo);
                ps.AddParameter("@fecha", (String)AppContext.getObject(typeof(String)));
                ps.executeNoReturn();

                MessageBox.Show("Promoción publicada");

                setDataGridView();

            }

                return;
        }
        private void Datos_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            // Si el índice es 3, quiere borrar el registro.
            if (e.ColumnIndex == 3) {
                DialogResult ret = MessageBox.Show(null, "Desea borrar el Rol?", "Confirmación", MessageBoxButtons.OKCancel);
                if (ret.Equals(DialogResult.Cancel))
                {
                    return;
                }

                SQLResponse resp = m.executeQuery("select id_estado from GESTION_DE_PATOS.Estados where nombre_estado = 'Eliminado'");

                DataGridViewCellCollection celdas = this.Datos.Rows[e.RowIndex].Cells;
                ParamSet builder = new ParamSet("GESTION_DE_PATOS.EstablecerEstadoDelRol");
                builder.AddParameter("nombre_rol", celdas[0].Value.ToString());
                builder.AddParameter("estado", resp.result.Rows[0][0]);
                builder.executeNoReturn();
                MessageBox.Show("Baja de rol exitosa","Baja rol");
                Datos.DataSource = m.executeQuery("SELECT * from GESTION_DE_PATOS.viewroles").result;

            }
            // Índice 2 es modificar columna.
            else if (e.ColumnIndex == 2)
            {
                new ModificacionRol(this.Datos.Rows[e.RowIndex].Cells[0].Value.ToString()).ShowDialog();
                Datos.DataSource = m.executeQuery("SELECT * from GESTION_DE_PATOS.viewroles").result;

            }
        }
        private void Confirmar_Click(object sender, EventArgs e)
        {
            if (passN.Text == "" || passN2.Text == "")
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            ParamSet ps = new ParamSet("GESTION_DE_PATOS.CambiarPasswordDesdeAdmin");
            ps.AddParameter("@user", this.username);
            ps.AddParameter("@passNueva", passN.Text);
            ps.AddParameter("@passNueva2", passN2.Text);
            SqlParameter ret = ps.execSP();

            switch (ret.Value.ToString())
            {

                case "0":
                    MessageBox.Show("Contraseña cambiada con éxito");
                    this.Hide();
                    return;

                case "1":
                    MessageBox.Show("La confirmación de la nueva contraseña no coincide con la ingresada");
                    return;
            }
        }
Exemplo n.º 8
0
        private void confirmarLogin_Click(object sender, EventArgs e)
        {
            DBManager manager = (DBManager)AppContext.getObject(typeof(DBManager));
            try
            {

                if (usuario.Text == "" || password.Text == "")
                {
                    MessageBox.Show("Faltan datos");
                    return;
                }

                ParamSet ps = new ParamSet("GESTION_DE_PATOS.Loguearse");
                ps.AddParameter("@user", usuario.Text);
                ps.AddParameter("@pass", password.Text);

                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "0":
                        SqlCommand consulta = new SqlCommand("SELECT rol FROM GESTION_DE_PATOS.Usuarios WHERE username=@username AND passwd=GESTION_DE_PATOS.SHA256(@passwd)");
                        consulta.Parameters.AddWithValue("username", usuario.Text);
                        consulta.Parameters.AddWithValue("passwd", password.Text);
                        SQLResponse r = manager.executeQuery(consulta);
                        Session s = new Session();
                        s.username = usuario.Text;
                        s.rol = (String)r.result.Rows[0][0];
                        AppContext.setObject(typeof(Session), s);
                        this.Hide();
                        break;
                    case "1": MessageBox.Show("La contraseña no es válida");
                        break;
                    case "2": MessageBox.Show("Se ha inhabilitado al usuario por intentos fallidos");
                        break;
                    case "3": MessageBox.Show("Usuario incorrecto");
                        break;
                    case "4":
                        if (MessageBox.Show("Usted se encuentra inhabilitado, ¿Desea darse de baja?", "Login",MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            ps.NombreSP("GESTION_DE_PATOS.EliminarUsuario");
                            ps.AddParameter("@user", usuario.Text);
                            ps.execSP();
                            MessageBox.Show("Usted ha sido dado de baja");
                            Dispose();
                        }
                        break;
                    case "5": MessageBox.Show("Usuario incorrecto");
                        break;
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show("No se pudo conectar a la base de datos.");
                Console.Write(ex);
            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (this.Estado.Text == "1: Habilitado") {
                if (this.ListaFuncionalidades.CheckedItems.Count == 0) {
                    MessageBox.Show("Seleccione al menos una funcionalidad");
                    return;
                }
            }
            ParamSet builder = new ParamSet("GESTION_DE_PATOS.EliminarFuncionalidadesDeRol");
            builder.AddParameter("nombre_rol", this.nombre);
            builder.executeNoReturn();

            builder.NombreSP("GESTION_DE_PATOS.AsignarFuncionalidadAlRol");
            foreach (String item in ListaFuncionalidades.CheckedItems)
            {
                builder.AddParameter("@id", Int32.Parse(item.ToString().Substring(0, item.IndexOf(":"))));
                builder.AddParameter("@rol", this.nombre);
                builder.execSP();
            }

            SqlCommand query;

            String estado = this.Estado.SelectedItem.ToString();

            builder = new ParamSet("GESTION_DE_PATOS.EstablecerEstadoDelRol");
            builder.AddParameter("nombre_rol", this.nombre);
            builder.AddParameter("estado", estado.Substring(0, estado.IndexOf(':')));
            builder.executeNoReturn();

            //("estado", estado.Substring(0, estado.IndexOf(':')))

            if (this.nombre != this.NombreRol.Text)
            {
                query = new SqlCommand("UPDATE GESTION_DE_PATOS.Roles SET nombre=@nombre WHERE nombre=@nombre_original");
                query.Parameters.AddWithValue("nombre", this.NombreRol.Text);
                query.Parameters.AddWithValue("nombre_original", this.nombre);
                manager.executeQuery(query);
            }
            MessageBox.Show("Rol actualizado");

            Main.actualizar();
            this.Hide();
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (CodigoCupon.Text == "" || Cliente.Text == "" )
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            try
            {
                Session s = (Session)AppContext.getObject(typeof(Session));
                ParamSet ps = new ParamSet("GESTION_DE_PATOS.ConsumoCupon");

                ps.AddParameter("@idcupon", Int32.Parse(CodigoCupon.Text));
                ps.AddParameter("@username", Cliente.Text);
                ps.AddParameter("@fecha_actual", (String)AppContext.getObject(typeof(String)));
                ps.AddParameter("@proveedor", s.username);

                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "1": MessageBox.Show("El cupón no es válido para el cliente ingresado");
                        return;
                    case "2": MessageBox.Show("El cupón no pertenece al proveedor logueado");
                        return;
                    case "3": MessageBox.Show("Se venció el canje del cupón");
                        return;
                    case "0": MessageBox.Show("Registro de consumo de cupón exitoso");
                        return;
                    case "5": MessageBox.Show("El cupón está devuelto o ya canjeado");
                        return;
                    case "6": MessageBox.Show("El cliente ingresado no existe");
                        return;

                }
            }
            catch (FormatException) {
                MessageBox.Show("Ingrese un valor numérico de cupón");
            }
        }
        private void Facturar_Click(object sender, EventArgs e)
        {
            if (FechaDesde.Text == "" || FechaHasta.Text == "" || this.proveedores.Text == "" )
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            if(this.dataGridCupones.RowCount == 0){
                MessageBox.Show("No hay cupones para facturar para el intervalo de fechas seleccionado");
                return;
            }

            ParamSet ps = new ParamSet("GESTION_DE_PATOS.FacturarProveedor");

            float monto = float.Parse(montoFactura().ToString());
            r = dbManager.executeQuery("SELECT username FROM GESTION_DE_PATOS.Proveedores where cuit = '"+proveedores.SelectedItem.ToString() + "'");
            ps.AddParameter("@proveedor", r.result.Rows[0][0].ToString() );
            ps.AddParameter("@fecha_desde", FechaDesde.Text);
            ps.AddParameter("@fecha_hasta", FechaHasta.Text);
            ps.AddParameter("@monto", monto*0.5);

            SqlParameter retval = ps.execSP();

            String ret = retval.Value.ToString();
            switch (ret)
            {
                case "1": MessageBox.Show("Ya hay cupones facturados para el intervalo ingresado.");
                    return;

                default:

                    String elMonto = (monto*0.5).ToString();
                    if (elMonto.Contains(","))
                    {
                        int decimales = elMonto.Substring(elMonto.IndexOf(","), elMonto.Length - elMonto.IndexOf(",")).Length;
                        if (decimales < 3)
                        {
                            elMonto = elMonto.Substring(0, elMonto.IndexOf(",") + decimales);

                        }
                        else {
                            elMonto = elMonto.Substring(0, elMonto.IndexOf(",") + 3);
                        }
                    }
                    MessageBox.Show("Facturación finalizada con éxito. \n Nro de factura: " + ret + ".\n Monto: $" + elMonto);
                    r = dbManager.executeQuery("SELECT c.id_cupon, c.cliente, c.id_promocion, c.fecha_compra, ca.fecha_canje FROM GESTION_DE_PATOS.Cupones c, GESTION_DE_PATOS.Promociones g, GESTION_DE_PATOS.Proveedores p , GESTION_DE_PATOS.Canjes ca WHERE ca.id_cupon = c.id_cupon AND c.id_promocion = g.id_promocion AND g.proveedor = p.username AND p.cuit = \'" + this.proveedores.SelectedItem.ToString() + "\' AND ca.fecha_canje between " + "\'" + this.FechaDesde.Text + "\'" + " and " + "\'" + this.FechaHasta.Text + "\' and not exists (select * from GESTION_DE_PATOS.Cupones_por_factura cpf where cpf.id_cupon = c.id_cupon)");
                    this.SetDataGridView(r.result);
                    return;

            }
        }
        private void administradores_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            String columna_seleccionada = this.administradores.Columns[e.ColumnIndex].Name;
            int columna = administradores.Columns["usernameDataGridViewTextBoxColumn"].Index;
            int fila = administradores.CurrentCell.RowIndex;
            String username = administradores[columna, fila].Value.ToString();

            if (columna_seleccionada == "eliminar")
            {

                ParamSet ps = new ParamSet("GESTION_DE_PATOS.EliminarUsuario");
                ps.AddParameter("@user", username);

                switch (ps.execSP().Value.ToString())
                {

                    case "0":
                        MessageBox.Show("Baja realizada con éxito","Baja administrador");
                        this.listado.actualizar_datagridview();
                        return;
                    case "1":
                        MessageBox.Show("El usuario no existe","Baja administrador");
                        return;
                    case "2":
                        MessageBox.Show("El usuario ya se encuentra dado de baja", "Baja administrador", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                }

            }
            else if (columna_seleccionada == "habilitar")
            {
                SQLResponse r;
                String query = "UPDATE GESTION_DE_PATOS.Usuarios SET estado = GESTION_DE_PATOS.idEstado('Habilitado') WHERE username = '******'";
                r = dbManager.executeQuery(query);
                this.listado.actualizar_datagridview();
                return;
            }
            else if (columna_seleccionada == "deshabilitar")
            {
                SQLResponse r;
                String query = "UPDATE GESTION_DE_PATOS.Usuarios SET estado = GESTION_DE_PATOS.idEstado('Deshabilitado') WHERE username = '******'";
                r = dbManager.executeQuery(query);
                this.listado.actualizar_datagridview();
                return;
            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            try
            {
                ParamSet ps = new ParamSet("GESTION_DE_PATOS.ModificarProveedor");

                ps.AddParameter("@user", UsernameP.Text);
                ps.AddParameter("@cuit", CUIT.Text);
                ps.AddParameter("@razon_social", RazonSocial.Text);
                ps.AddParameter("@mail", MailP.Text);
                ps.AddParameter("@telefono", Int64.Parse(TelefonoP.Text));
                ps.AddParameter("@direccion", Direccion.Text);
                ps.AddParameter("@codigo_postal", Int64.Parse(CodigoPostalP.Text));
                ps.AddParameter("@ciudad", ciudadP.SelectedItem.ToString());
                ps.AddParameter("@rubro", RubroP.SelectedItem.ToString());
                ps.AddParameter("@nombre_contacto", NombreContacto.Text);
                ps.AddParameter("@estado", Estado.Text);

                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "0":
                        MessageBox.Show("Registro modificado con éxito", "Modificar proveedor", MessageBoxButtons.OK);
                        this.listado.actualizar_datagridview();
                        this.Hide();
                        break;
                    case "1": MessageBox.Show("El proveedor no existe", "Modificar proveedor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        break;
                    case "2": MessageBox.Show("Los datos ingresados corresponden a un usuario ya registrado", "Modificar proveedor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        break;
                }

            }
            catch (FormatException) {
                MessageBox.Show("Ingrese un valor numérico para código postal y teléfono ");
            }
            catch (OverflowException)
            {
                MessageBox.Show("Ha ingresado un codigo postal demasiado grande, ingrese otro", "Alta proveedor", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (NullReferenceException)
            {
                MessageBox.Show("Hay campos vacíos", "Modificación proveedor");
            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (!String.Equals(PassP.Text, ConfirmarPassword.Text))
            {
                MessageBox.Show("Los campos passwords no coinciden", "Alta Proveedor");
                return;
            }

            if ((UsernameP.Text == "" && UsernameP.Enabled == true) || PassP.Text == "" ||
                       RazonSocial.Text == "" || CUIT.Text == "" ||
                       MailP.Text == "" || TelefonoP.Text == "" ||
                       Direccion.Text == "" || NombreContacto.Text == "" ||
                       ciudadP.SelectedItem == null ||
                       CodigoPostalP.Text == "" ||
                       RubroP.SelectedItem  == null || ConfirmarPassword.Text == "")
            {

                MessageBox.Show("Faltan datos");
                return;
            }

            ParamSet ps = new ParamSet("GESTION_DE_PATOS.AltaProveedor");
            ps.AddParameter("@user", UsernameP.Text);

            if (UsernameP.Enabled == true)
            {
                ps.AddParameter("@pass", PassP.Text);
            }
            else
            {
                ps.NombreSP("GESTION_DE_PATOS.CambiarRolProveedor");
            }

            try
            {
                ps.AddParameter("@cuit", CUIT.Text);
                ps.AddParameter("@razon_social", RazonSocial.Text);
                ps.AddParameter("@mail", MailP.Text);
                ps.AddParameter("@telefono", Int64.Parse(TelefonoP.Text));
                ps.AddParameter("@direccion", Direccion.Text);
                ps.AddParameter("@codigo_postal", Int64.Parse(CodigoPostalP.Text));
                ps.AddParameter("@ciudad", ciudadP.SelectedItem.ToString());
                ps.AddParameter("@rubro", RubroP.SelectedItem.ToString());
                ps.AddParameter("@nombre_contacto", NombreContacto.Text);

                SqlParameter ret = ps.execSP();
                switch (ret.Value.ToString())
                {
                    case "0":
                        MessageBox.Show("Registro realizado con éxito", "Alta proveedor");

                        if (this.listado != null)
                            this.listado.actualizar_datagridview();

                        this.Hide();
                        return;

                    case "2":
                        MessageBox.Show("Los datos ingresados corresponden a un usuario existente", "Alta proveedor");
                        return;

                    case "1":
                        MessageBox.Show("El usuario ya existe", "Alta proveedor");
                        return;

                }

                return;

            }
            catch (FormatException)
            {
                MessageBox.Show("Ingrese un valor correcto para el teléfono o el código postal", "Alta proveedor");
            }
            catch (OverflowException)
            {
                MessageBox.Show("Ha ingresado un codigo postal demasiado grande, ingrese otro", "Alta proveedor", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (NullReferenceException)
            {
                MessageBox.Show("Hay campos vacíos", "Alta proveedor");
            }

            return;
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (UsernameCliente.Text == "" || NombreCliente.Text == "" || ApellidoCliente.Text == "" || TelefonoCliente.Text == "" || DNICliente.Text == "")
            {
                MessageBox.Show("Hay campos obligatorios que están vacíos", "Modificar cliente");
                return;
            }

            try
            {
                ParamSet ps = new ParamSet("GESTION_DE_PATOS.ModificarCliente");

                ps.AddParameter("@user", UsernameCliente.Text);
                ps.AddParameter("@nombre", NombreCliente.Text);
                ps.AddParameter("@apellido", ApellidoCliente.Text);
                ps.AddParameter("@mail", MailCliente.Text);
                ps.AddParameter("@tel", TelefonoCliente.Text);
                ps.AddParameter("@fecha", DateTime.Parse(FchNacimientoCliente.Text));
                ps.AddParameter("@dni", DNICliente.Text);
                ps.AddParameter("@direccion", DireccionC.Text);
                ps.AddParameter("@codigo_postal", CodigoPostal.Text);
                ps.AddParameter("@ciudad", ciudadCliente.SelectedItem.ToString());
                ps.AddParameter("@estado", Estado.SelectedItem.ToString());

                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "0":
                        ps.NombreSP("GESTION_DE_PATOS.EliminarLocalidades");
                        ps.AddParameter("@user", UsernameCliente.Text);
                        ps.executeNoReturn();

                        ps.NombreSP("GESTION_DE_PATOS.RegistrarLocalidades");
                        foreach (Object localidad in this.ListaZonas.CheckedItems)
                        {
                            ps.AddParameter("@localidad", localidad.ToString());
                            ps.AddParameter("@user", UsernameCliente.Text);
                            ps.executeNoReturn();
                        }

                        MessageBox.Show("Registro modificado con éxito", "Modificar cliente");
                        this.listado.actualizar_datagridview();
                        this.Hide();
                        break;
                    case "1": MessageBox.Show("El cliente no existe", "Modificar cliente", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        break;
                    case "2": MessageBox.Show("Los datos ingresados corresponden a un usuario ya registrado", "Modificar cliente", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        break;
                }
            }
            catch (SqlException) {
                MessageBox.Show("Ingrese valores correctos para el dni, teléfono, código postal y fecha de nacimiento");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Ha ingresado un codigo postal demasiado grande, ingrese otro", "Alta proveedor", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (NullReferenceException)
            {
                MessageBox.Show("Hay campos vacíos", "Modificación cliente");
            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (Cupon.Text == "" || Motivo.Text == "")
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            try
            {
                Session s = (Session)AppContext.getObject(typeof(Session));

                ParamSet ps = new ParamSet();
                ps.NombreSP("GESTION_DE_PATOS.PedirDevolucion");
                Dictionary<String, Object> d = new Dictionary<string, object>();
                d.Add("@idCupon", Int32.Parse(Cupon.Text));
                d.Add("@username", s.username);
                d.Add("@fecha_actual", (String)AppContext.getObject(typeof(String)));
                d.Add("@motivo", Motivo.Text);
                ps.Parametros(d);
                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "1": MessageBox.Show("El cupón ingresado no corresponde al usuario");
                        return;
                    case "4": MessageBox.Show("El cupón está canjeado o ya devuelto");
                        return;
                    case "3": MessageBox.Show("El cupón expiró");
                        return;
                      }
            }
            catch (FormatException) {
                MessageBox.Show("Ingrese un valor numérico de cupón");
                return;
            }

            DBManager manager = (DBManager)AppContext.getObject(typeof(DBManager));
            SQLResponse response = manager.executeQuery("select c.id_cupon, c.id_promocion, gc.descripcion from GESTION_DE_PATOS.Cupones c join GESTION_DE_PATOS.Promociones gc on c.id_promocion = gc.id_promocion where c.id_cupon = " + Cupon.Text);

            if (MessageBox.Show("¿Esta seguro que quiere devolver el cupón?\n\nID CUPON: " + this.Cupon.Text + " \nPROMOCIÓN: " + response.result.Rows[0][1].ToString() + "\nDESCRIPCIÓN: "+ response.result.Rows[0][2].ToString() ,"Devolver cupón", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                Session s = (Session)AppContext.getObject(typeof(Session));
                ParamSet ps = new ParamSet("GESTION_DE_PATOS.ConfirmarDevolucion");
                ps.AddParameter("@idCupon", Int64.Parse(this.Cupon.Text));
                ps.AddParameter("@fecha_actual", (String)AppContext.getObject(typeof(String)));
                ps.AddParameter("@motivo", this.Motivo.Text);

                SqlParameter retval = ps.execSP();
                switch (retval.Value.ToString())
                {
                    case "0": MessageBox.Show("Devolución exitosa");
                        Main.actualizar();
                        return;

                    case "1": MessageBox.Show("El cupón ya está devuelto");
                        return;

                }
            }
        }
        private void dataGridProveedor_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            String columna_seleccionada = this.dataGridProveedores.Columns[e.ColumnIndex].Name;

            if ( columna_seleccionada == "modificar")
            {
                FilaSeleccionada proveedor = new FilaSeleccionada();
                int cantidad_columnas = dataGridProveedores.ColumnCount - 1;

                for (int i = 0; i < cantidad_columnas; i++)
                {
                    Object value = dataGridProveedores[i, dataGridProveedores.CurrentCell.RowIndex].Value;
                    String nombre = dataGridProveedores.Columns[i].Name;
                    proveedor.addDato(nombre, value);
                }

                ModificacionProveedor mc = new ModificacionProveedor(proveedor,listado);
                mc.Show();
                this.listado.actualizar_datagridview();
            }
            else if (columna_seleccionada == "eliminar")
            {
                if (MessageBox.Show("¿Esta seguro que quiere eliminar este proveedor?", "Eliminar proveedor", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    ParamSet ps = new ParamSet("GESTION_DE_PATOS.EliminarUsuario");
                    int columna = dataGridProveedores.Columns["usernameDataGridViewTextBoxColumn"].Index;
                    int fila = dataGridProveedores.CurrentCell.RowIndex;

                    String username = dataGridProveedores[columna, fila].Value.ToString();
                    ps.AddParameter("@user", username);

                    SqlParameter retval = ps.execSP();

                    switch (retval.Value.ToString())
                    {
                        case "0": MessageBox.Show("Registro eliminado","Eliminar proveedor");
                            this.listado.actualizar_datagridview();
                            break;
                        case "1": MessageBox.Show("Se produció un error. El nombre de usuario no existe", "Eliminar proveedor");
                            break;
                        case "2": MessageBox.Show("El proveedor ya se encuentra eliminado");
                            break;

                    }
                }
            }
        }
        private void cuponesDisponibles_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            String columna_seleccionada = this.cuponesDisponibles.Columns[e.ColumnIndex].Name;

            if (columna_seleccionada == "comprar")
            {

                if (this.Cantidad.Text == "") {
                    MessageBox.Show("Ingrese una cantidad");
                    return;
                }

                Int64 cantidad = 1;

                try{
                    cantidad = Int64.Parse(this.Cantidad.Text);

                }
                catch(FormatException){
                    MessageBox.Show("Ingrese una cantidad correcta");
                    return;
                }
                if(cantidad < 1 ){
                    MessageBox.Show("Ingrese una cantidad positiva");
                    return;
                }

                ParamSet ps = new ParamSet("GESTION_DE_PATOS.ValidarCompraCupon");
                ps.AddParameter("@id_promocion", this.cuponesDisponibles.Rows[e.RowIndex].Cells[0].Value.ToString());
                ps.AddParameter("@fecha", (String)AppContext.getObject(typeof(String)));
                ps.AddParameter("@username", s.username);
                ps.AddParameter("@cantidad", cantidad);

                SqlParameter retval;

                retval = ps.execSP();
                String ret = retval.Value.ToString();

                switch (ret)
                {
                    case "1": MessageBox.Show("La compra solicitada supera el límite por usuario permitido.");
                        return;
                    case "2": MessageBox.Show("No hay stock para la compra deseada.");
                        return;
                    case "3": MessageBox.Show("El usuario no tiene saldo suficiente.");
                        return;

                    case "0":
                        String mensaje;
                        if (cantidad == 1)
                        {
                            mensaje = "Compra realizada con éxito. \nCupón nro: ";
                        }
                        else
                        {
                            mensaje = "Compra realizada con éxito. \nCupones: ";
                        }
                        SqlParameter r;
                        ps.NombreSP("GESTION_DE_PATOS.ComprarCupon");
                        mensaje += "\n";
                        int cambioDeLinea = 0;
                        for (int i = 0; i < cantidad; i++)
                        {
                            if (cambioDeLinea == 10)
                            {
                                mensaje += "\n";
                                cambioDeLinea = 0;
                            }
                            ps.AddParameter("@id_promocion", this.cuponesDisponibles.Rows[e.RowIndex].Cells[0].Value.ToString());
                            ps.AddParameter("@fecha", (String)AppContext.getObject(typeof(String)));
                            ps.AddParameter("@username", s.username);
                            r = ps.execSP();

                            if (i == cantidad-1)
                            {
                                mensaje += r.Value.ToString() + ".";
                            }
                            else {
                                mensaje += r.Value.ToString() + ", ";
                            }
                                Main.actualizar();
                                cambioDeLinea++;
                        }
                        MessageBox.Show(mensaje);
                        return;
                }
            }
        }
Exemplo n.º 19
0
 private void DarDeBaja_Click(object sender, EventArgs e)
 {
     if (MessageBox.Show("¿Esta seguro que desea darse de baja?", "Baja", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
     {
         ParamSet ps = new ParamSet("GESTION_DE_PATOS.EliminarUsuario");
         ps.AddParameter("@user", sesion.username);
         ps.execSP();
         MessageBox.Show("Usted ha sido dado de baja");
         Dispose();
     }
 }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (PrecioFicticio.Text == "" || PrecioReal.Text  == "" || Publicacion.Text == ""
                || VencimientoOferta.Text == "" || VencimientoCanje.Text == "" || Stock.Text  == "" ||
                LimitePorUsuario.Text  == "" || DescripcionCupon.Text  == "" || ListaZonas.CheckedItems.Count == 0)
            {
                MessageBox.Show("Faltan datos");
                return;
            }

            if (PrecioFicticio.Text.Contains('.') || PrecioReal.Text.Contains('.'))
            {
                MessageBox.Show("Ingrese un precio correcto. El decimal se indica con una ',' (coma).", "Armar cupon");
                return;
            }

            try
            {
                if (Int64.Parse(Stock.Text) < Int64.Parse(LimitePorUsuario.Text))
                {
                    MessageBox.Show("El limite por usuario no puede ser mayor que el stock", "Armar cupón");
                    return;
                }

                Session s = (Session)AppContext.getObject(typeof(Session));
                DBManager db = (DBManager)AppContext.getObject(typeof(DBManager));

                Random promo = new Random();
                String idPromo = promo.Next(999999999).ToString();

                SQLResponse res = db.executeQuery("select id_promocion from GESTION_DE_PATOS.Promociones where id_promocion = '" + idPromo + "'");
                while (res.rowsAffected != 0) {
                    idPromo = promo.Next(999999999).ToString();
                    res = db.executeQuery("select id_promocion from GESTION_DE_PATOS.Promociones where id_promocion = '" + idPromo + "'");
                }

                ParamSet ps = new ParamSet("GESTION_DE_PATOS.ArmarCupon");

                ps.AddParameter("@codigoGrupo",idPromo);
                ps.AddParameter("@descripcion", DescripcionCupon.Text);
                ps.AddParameter("@fechaSistema", (String)AppContext.getObject(typeof(String)));
                ps.AddParameter("@fechaVencimientoCanje", VencimientoCanje.Text);
                ps.AddParameter("@fechaVencimientoOferta", VencimientoOferta.Text);
                ps.AddParameter("@fechaPublicacion", Publicacion.Text);
                ps.AddParameter("@precio_ficticio", float.Parse(PrecioFicticio.Text));
                ps.AddParameter("@precio_real", float.Parse(PrecioReal.Text));
                ps.AddParameter("@limite_usuario", Int64.Parse(LimitePorUsuario.Text));
                ps.AddParameter("@stock", Int64.Parse(Stock.Text));
                ps.AddParameter("@proveedor", s.username);

                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "1": MessageBox.Show("El cupón ya existe");
                        return;
                    case "2": MessageBox.Show("La fecha de vencimiento de la oferta ya pasó");
                        return;
                    case "3": MessageBox.Show("El canje no puede vencer antes de la oferta");
                        return;
                    case "4": MessageBox.Show("La fecha de publicación no puede ser posterior al vencimiento de la oferta");
                        return;
                    case "5": MessageBox.Show("La fecha de publicación no puede ser anterior a la fecha actual");
                        return;

                }

                ps.NombreSP("GESTION_DE_PATOS.AsignarLocalidadAlGrupo");

                foreach (Object item in ListaZonas.CheckedItems)
                {
                    ps.AddParameter("@localidad", item.ToString());
                    ps.AddParameter("@grupo", idPromo);
                    ps.execSP();
                }

                MessageBox.Show("Promoción armada exitosamente \nCódigo de promoción: " + idPromo);
                this.Hide();
            }
            catch (FormatException)
            {
                MessageBox.Show("Ingrese un valor numérico para los precios, límite y stock");
                return;
            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            if (Cliente.Text == "" || Monto.Text == "" || TipoPago.SelectedItem == null || (NumeroTarjeta.Text == "" && NumeroTarjeta.Enabled)) {
                MessageBox.Show("Faltan datos");
                return;
            }

            try
            {
                Int64.Parse(Monto.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Ingrese un monto entero válido");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("El campo ingresado es demasiado grande, ingrese otro", "Carga de crédito");
                return;
            }
            ParamSet ps = new ParamSet("GESTION_DE_PATOS.CargarCredito");
            ps.AddParameter("@username", Cliente.Text);
            ps.AddParameter("@fecha", (String)AppContext.getObject(typeof(String)));
            ps.AddParameter("@tipoPago", TipoPago.SelectedItem.ToString());
            ps.AddParameter("@monto", Int64.Parse(Monto.Text));

            if (!this.NumeroTarjeta.Enabled)
            {
                ps.AddParameter("@numeroTarjeta", 0);

            }
            else {
                try
                {
                    ps.AddParameter("@numeroTarjeta", Int64.Parse(this.NumeroTarjeta.Text));
                }
                catch (FormatException)
                {
                    MessageBox.Show("Ingrese un número de tarjeta válido");
                    return;
                }

            }

            SqlParameter retval = ps.execSP();

            switch (retval.Value.ToString()) {
                case "0": MessageBox.Show("Carga correcta");
                    break;
                case "1" : MessageBox.Show("El monto debe ser mayor a $15");
                    break;
                case "2": MessageBox.Show("Tarjeta incorrecta");
                    break;
                case "3": MessageBox.Show("Cliente incorrecto");
                    break;
                case "4": MessageBox.Show("El cliente no está habilitado para la carga de crédito");
                    break;
            }

            Main.actualizar();
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            Object elRol = this.Rol.SelectedItem;
            if (elRol == null) {
                MessageBox.Show("Seleccione un rol", "Registro de usuario");
                return;
            }

            ParamSet ps = new ParamSet();
            SqlParameter ret;

            switch (elRol.ToString()) {

                case "Cliente":
                    try
                    {
                        if (!String.Equals(PasswordCliente.Text, ConfirmarPassword.Text))
                        {
                            MessageBox.Show("Los campos passwords no coinciden", "Registro Usuario");
                            return;
                        }

                        if (UsernameCliente.Text == "" || PasswordCliente.Text == "" ||
                            ConfirmarPassword.Text == "" ||
                            NombreCliente.Text == "" || ApellidoCliente.Text == "" ||
                            MailCliente.Text == "" || TelefonoCliente.Text == "" ||
                            FchNacimientoCliente.Text == "" || DNICliente.Text == "" ||
                            DireccionC.Text == "" || ListaZonas.CheckedItems.Count == 0 ||
                            CodigoPostalC.Text == "" ||
                            ciudadCliente.SelectedItem.ToString() == "")
                        {

                            MessageBox.Show("Faltan datos");
                            return;
                        }
                    }
                    catch (NullReferenceException)
                    {
                        MessageBox.Show("Hay campos vacíos", "Registro de Usuario");
                    }

                    ps.NombreSP("GESTION_DE_PATOS.RegistroCliente");
                    ps.AddParameter("@user", UsernameCliente.Text);
                    ps.AddParameter("@pass", PasswordCliente.Text);
                    ps.AddParameter("@nombre", NombreCliente.Text);
                    ps.AddParameter("@apellido", ApellidoCliente.Text);
                    ps.AddParameter("@mail", MailCliente.Text);
                    ps.AddParameter("@tel", Int64.Parse(TelefonoCliente.Text));
                    ps.AddParameter("@fecha", FchNacimientoCliente.Text);
                    ps.AddParameter("@dni", Int64.Parse(DNICliente.Text));
                    ps.AddParameter("@direccion", DireccionC.Text);
                    ps.AddParameter("@ciudad", ciudadCliente.SelectedItem.ToString());
                    ps.AddParameter("@cp", Int64.Parse(CodigoPostalC.Text));

                    try {

                        ret = ps.execSP();
                        switch (ret.Value.ToString()) {
                            case "0":
                                ps.NombreSP("GESTION_DE_PATOS.RegistrarLocalidades");
                                foreach (Object localidad in this.ListaZonas.CheckedItems) {
                                    ps.AddParameter("@localidad", localidad.ToString());
                                    ps.AddParameter("@user", UsernameCliente.Text);
                                    ps.executeNoReturn();
                                }

                                MessageBox.Show("Registro realizado con éxito","Registro de usuario",MessageBoxButtons.OK);
                                this.Hide();
                                return;

                            case "1":
                                MessageBox.Show("El usuario ya existe","Registro de usuario");
                                return;

                            case "2":
                                MessageBox.Show("Los datos ingresados corresponden a un usuario existente", "Registro de usuario");
                                return;

                            }
                    }

                    catch(SqlException){
                        MessageBox.Show("Ingrese un valor correcto para el teléfono, el dni, el código postal o la fecha de nacimiento", "Registro de usuario");
                        return;
                    }
                    catch (OverflowException)
                    {
                        MessageBox.Show("Ha ingresado un codigo postal demasiado grande, ingrese otro", "Alta proveedor", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                    return;

                case "Proveedor":

                    try
                    {

                        if (!String.Equals(PassP.Text, ConfirmarPass.Text))
                        {
                            MessageBox.Show("Los campos passwords no coinciden", "Registro Usuario");
                            return;
                        }

                        if (UsernameP.Text == "" || PassP.Text == "" ||
                            ConfirmarPass.Text == "" ||
                            RazonSocial.Text == "" || CUIT.Text == "" ||
                            MailP.Text == "" || TelefonoP.Text == "" ||
                            Direccion.Text == "" || NombreContacto.Text == "" ||
                            ciudadP.SelectedItem.ToString() == "" ||
                            CodigoPostalP.Text == "" ||
                            RubroP.SelectedItem.ToString() == "")
                        {

                            MessageBox.Show("Faltan datos", "Registro de usuario");
                            return;
                        }
                    }
                    catch (NullReferenceException)
                    {
                        MessageBox.Show("Hay campos vacíos", "Registro de Usuario");
                    }

                    try{
                        ps.NombreSP("GESTION_DE_PATOS.RegistrarProveedor");
                        ps.AddParameter("@user", UsernameP.Text);
                        ps.AddParameter("@pass", PassP.Text);
                        ps.AddParameter("@rs", RazonSocial.Text);
                        ps.AddParameter("@cuit", CUIT.Text);
                        ps.AddParameter("@mail", MailP.Text);
                        ps.AddParameter("@telefono", Int64.Parse(TelefonoP.Text));
                        ps.AddParameter("@direccion", Direccion.Text);
                        ps.AddParameter("@ciudad", ciudadP.SelectedItem.ToString());
                        ps.AddParameter("@rubro", RubroP.SelectedItem.ToString());
                        ps.AddParameter("@contacto", NombreContacto.Text);
                        ps.AddParameter("@cp", Int64.Parse(CodigoPostalP.Text));

                        ret = ps.execSP();
                        switch (ret.Value.ToString())
                        {
                            case "0":
                                MessageBox.Show("Registro realizado con éxito", "Registro de usuario",MessageBoxButtons.OK);
                                this.Hide();
                                return;

                            case "1":
                                MessageBox.Show("El usuario ya existe", "Registro de usuario");
                                return;

                            case "2":
                                MessageBox.Show("Los datos ingresados corresponden a un usuario existente", "Registro de usuario");
                                return;

                          }

                        return;

                    }
                     catch(FormatException){
                        MessageBox.Show("Ingrese un valor correcto para el teléfono o el código postal");
                     }
                    catch (OverflowException)
                    {
                        MessageBox.Show("Ha ingresado un codigo postal demasiado grande, ingrese otro", "Alta proveedor", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                return;

            }
        }
        private void Guardar_Click(object sender, EventArgs e)
        {
            try
            {
                if (!String.Equals(PasswordCliente.Text, ConfirmarPassword.Text))
                {
                    MessageBox.Show("Los campos passwords no coinciden", "Alta Cliente");
                    return;
                }

                if ((UsernameCliente.Text == "" && UsernameCliente.Enabled == true) || PasswordCliente.Text == "" ||
                       NombreCliente.Text == "" || ApellidoCliente.Text == "" ||
                       MailCliente.Text == "" || TelefonoCliente.Text == "" ||
                       FchNacimientoCliente.Text == "" || DNICliente.Text == "" ||
                       DireccionC.Text == "" || ListaZonas.CheckedItems.Count == 0 ||
                       CodigoPostal.Text == "" || ConfirmarPassword.Text == "" ||
                       ciudadCliente.SelectedItem.ToString() == "")
                {

                    MessageBox.Show("Faltan datos", "Alta cliente");
                    return;
                }
                ParamSet ps = new ParamSet("GESTION_DE_PATOS.AltaCliente");

                ps.AddParameter("@user", UsernameCliente.Text);
                if (UsernameCliente.Enabled == true)
                {
                    ps.AddParameter("@pass", PasswordCliente.Text);
                }
                else
                {
                    ps.NombreSP("GESTION_DE_PATOS.CambiarRolCliente");
                }

                ps.AddParameter("@nombre", NombreCliente.Text);
                ps.AddParameter("@apellido", ApellidoCliente.Text);
                ps.AddParameter("@dni", Int64.Parse(DNICliente.Text));
                ps.AddParameter("@fecha", DateTime.Parse(FchNacimientoCliente.Text));
                ps.AddParameter("@mail", MailCliente.Text);
                ps.AddParameter("@tel", Int64.Parse(TelefonoCliente.Text));
                ps.AddParameter("@direccion", DireccionC.Text);
                ps.AddParameter("@cp", Int64.Parse(CodigoPostal.Text));
                ps.AddParameter("@ciudad", ciudadCliente.SelectedItem.ToString());
                SqlParameter retval = ps.execSP();

                switch (retval.Value.ToString())
                {
                    case "0":
                        ps.NombreSP("GESTION_DE_PATOS.RegistrarLocalidades");
                        foreach (Object localidad in this.ListaZonas.CheckedItems)
                        {
                            ps.AddParameter("@localidad", localidad.ToString());
                            ps.AddParameter("@user", UsernameCliente.Text);
                            ps.executeNoReturn();
                        }

                        MessageBox.Show("Registro realizado con éxito", "Alta cliente");

                        if (this.listado != null)
                            this.listado.actualizar_datagridview();

                        this.Hide();
                        return;

                    case "1": MessageBox.Show("El cliente ya existe", "Alta cliente", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        break;
                    case "2": MessageBox.Show("Los datos ingresados corresponden a un usuario ya registrado", "Alta cliente", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        break;
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Ingrese un valor correcto para el teléfono, el dni, el código postal o la fecha de nacimiento", "Alta cliente");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Ha ingresado un codigo postal demasiado grande, ingrese otro", "Alta proveedor", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (NullReferenceException)
            {
                MessageBox.Show("Hay campos vacíos", "Alta cliente");
            }
        }