Example #1
0
        private void btnEliminar_Click(object sender, EventArgs e)
        {
            if (!Globales.fVerificarAcceso(Globales.valor_perfil("ClientesEliminar")))
            {
                MessageBox.Show("No posee los permisos para esta acción", "Denegado", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                var result = MessageBox.Show("¿Seguro que desea ELIMINAR EL CLIENTE " + txtNombres.Text + " " + txtApellidos.Text + "?", "Campo Dirección vacío", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (result == DialogResult.Yes)
                {
                    string txtSQL = "Select nrocontrato from Contratos where Cedula='" + txtCedula.Text + "'";
                    if (Globales.BD.nregistros(txtSQL) > 0)
                    {
                        MessageBox.Show("No se puede eliminar el cliente porque ya tiene al menos un contrato", "Denegado", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        txtSQL = "Delete from clientes WHERE cedula_RIF='" + txtCedula.Text + "'";
                        Globales.BD.ejecutar_consulta(txtSQL, CommandType.Text, new List <Clases.Parameters>());
                        MessageBox.Show("Cliente eliminado satisfactoriamente", "Finalizado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        string evento = "Se Eliminó el cliente " + txtNombres.Text.TrimEnd(' ') + " " + txtApellidos.Text.TrimEnd(' ') + " Con Cedula: " + cmbCedPas.Text.TrimEnd(' ') + "-" + txtCedula.Text.TrimEnd(' ');

                        Clases.Bitacora bit = new Clases.Bitacora("-------", evento);
                        bit.registrar_suceso();
                        Globales.BD.eliminartabladsglobal("Clientes");
                        Globales.BD.llenardsglobal(txtSQL, "Clientes");
                        this.LoadFormClientes();
                    }
                }
            }
        }
Example #2
0
        public void eliminar_incidencias_viejas()//Método para eliminar incidencias viejas
        {
            bool encontrado = false;

            if (lbdinc.Count > 0 && lbdinc != null)
            {
                foreach (Clases.C_Incidencia auxl in lbdinc)
                {
                    encontrado = false;

                    foreach (Clases.habitacionIqware hb in lhi)
                    {
                        if (hb.lsumcamb != null)
                        {
                            foreach (Clases.C_Suministro sm in hb.lsumcamb)
                            {
                                if (sm.IsSelected && hb.ID_Room == auxl.idHabitacion && sm.idSuministro == auxl.idSuministro)
                                {
                                    encontrado = true;
                                }
                            }
                        }

                        if (hb.lsumrep != null)
                        {
                            foreach (Clases.C_Suministro sm in hb.lsumrep)
                            {
                                if (sm.IsSelected && hb.ID_Room == auxl.idHabitacion && sm.idSuministro == auxl.idSuministro)
                                {
                                    encontrado = true;
                                }
                            }
                        }
                    }

                    if (!encontrado)
                    {
                        Clases.C_Incidencia inc = new Clases.C_Incidencia();
                        inc.idHabitacion = auxl.idHabitacion;
                        inc.idSuministro = auxl.idSuministro;
                        inc.fecha        = DateTime.Today;
                        if (inc.EliminarPorSumHabFecha() == 1)
                        {
                            Console.WriteLine("Se eliminaron las incidencias satisfactoriamente");

                            //----------------------------- Bitácora -------------------------------//

                            txtdescbit = "ELIMINACIÓN DE INCIDENCIA ( NR. HAB='" + auxl.nhab + "', SUMINISTRO='" + auxl.nomsum + "', CANTIDAD='" + auxl.cantidad + "', OBSERVACION='" + auxl.observacion + "')";
                            Clases.Bitacora bit = new Clases.Bitacora(4, 3, txtdescbit, user.login);
                            if (bit.Guardar() == 1)
                            {
                                Console.WriteLine("Eliminación guardada en la bitácora");
                            }
                            //----------------------------------------------------------------------//
                        }
                    }
                }
            }
        }
Example #3
0
        public void eliminar_extras_viejos_cambio(List <Clases.C_Extra> lext)//Cambio
        {
            bool encontrado = false;

            if (lext != null && lext.Count > 0)
            {
                string nomsum = "";

                foreach (Clases.C_Extra sm in lext)//Lista de extras viejos (Base de Datos)
                {
                    encontrado = false;
                    nomsum     = "";

                    foreach (Clases.habitacionIqware hb2 in lhe)              //Recorrido de los nuevos extras en cada habitación
                    {
                        if (hb2.lsumcamb != null && hb2.lsumcamb.Count > 0)   //Si hay extras de cambio en una habitación específica
                        {
                            foreach (Clases.C_Suministro sm2 in hb2.lsumcamb) ///Recorrido del nuevo extra
                            {
                                if (sm2.IsSelected && sm.idHabitacion == hb2.ID_Room && sm2.idSuministro == sm.idSuministro)
                                {
                                    encontrado = true;
                                }

                                if (sm2.idSuministro == sm.idSuministro)
                                {
                                    nomsum = sm2.descripcion;
                                }
                            }
                        }
                    }

                    if (!encontrado)
                    {
                        if (sm.EliminarSuministroExtra() == 1)
                        {
                            Console.WriteLine("Extra de cambio eliminado");

                            //----------------------------- Bitácora -------------------------------//
                            txtdescbit = "ELIMINACIÓN DE SUMINISTRO EXTRA ( NR. HAB='" + sm.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "', OBSERVACION='" + sm.observacion + "')";
                            Clases.Bitacora bit = new Clases.Bitacora(5, 3, txtdescbit, user.login);
                            if (bit.Guardar() == 1)
                            {
                                Console.WriteLine("Eliminación guardada en la bitácora");
                            }
                            //----------------------------------------------------------------------//
                        }
                    }
                }
            }
        }
Example #4
0
        public void eliminar_extras_viejos()
        {
            bool encontrado = false;

            Clases.habitacionIqware hb = dtgrdhab.SelectedItem as Clases.habitacionIqware;
            foreach (Clases.C_Extra item in lext)
            {
                encontrado = false;
                foreach (Clases.C_Suministro sm in dtgrdsumcamb.ItemsSource)
                {
                    if (item.idSuministro == sm.idSuministro && sm.cantidadSal > 0)
                    {
                        encontrado = true;
                    }
                }

                foreach (Clases.C_Suministro sm in dtgrdsumrep.ItemsSource)
                {
                    if (item.idSuministro == sm.idSuministro && sm.cantidadSal > 0)
                    {
                        encontrado = true;
                    }
                }

                if (!encontrado)
                {
                    if (item.EliminarSuministroExtra() == 1)
                    {
                        Console.WriteLine("Extra eliminado");
                    }

                    if (item.RestarCantidadRealMov() == 1)
                    {
                        Console.WriteLine("Se restó la cantidad real del movimiento");
                    }

                    if (item.RestarSuciaEstimadaMov() == 1)
                    {
                        Console.WriteLine("Se restó la sucia estimada del movimiento");
                    }


                    txtdescbit = "ELIMINACIÓN DE SUMINISTRO EXTRA ( NR. HAB='" + hb.RoomNo + "', SUMINISTRO='" + item.descripcion + "', CANTIDAD='" + item.cantidad + "', OBSERVACION='" + item.observacion + "')";
                    Clases.Bitacora bit = new Clases.Bitacora(7, 3, txtdescbit, user.login);
                    if (bit.Guardar() == 1)
                    {
                        Console.WriteLine("Eliminación guardada en la bitácora");
                    }
                }
            }
        }
Example #5
0
        public void eliminar_perdidas_viejas()
        {
            Clases.C_Perdida per;
            bool             encontrado = false;

            foreach (Clases.C_Perdida sper in lpersumbd)//Pérdida de suministros en la base de datos
            {
                encontrado = false;

                foreach (Clases.habitacionIqware hs in lhp)//Pérdida de suministros en la lista (ejecución)
                {
                    foreach (Clases.C_Suministro ns in hs.lsumcamb)
                    {
                        if (sper.idHabitacion == hs.ID_Room && sper.idSuministro == ns.idSuministro && ns.IsSelected)
                        {
                            encontrado = true;
                        }
                    }
                }

                if (!encontrado)
                {
                    per = new Clases.C_Perdida();
                    per.idSuministro      = sper.idSuministro;
                    per.idHabitacion      = sper.idHabitacion;
                    per.cantidad          = sper.cantidad;
                    per.fecha             = DateTime.Today;
                    per.idUsuario         = user.idUsuario;
                    per.fechaModificacion = DateTime.Today;
                    per.observacion       = sper.observacion.ToUpper();
                    per.hora       = hora;
                    per.idCamarera = cam.idCamarera;
                    if (per.EliminarPerdida(DateTime.Today) == 1)
                    {
                        Console.WriteLine("Se eliminó la pérdida");
                    }

                    //--------- Bitácora ------------------------//

                    txtdescbit = "ELIMINACIÓN DE PÉRDIDA ( NR. HAB='" + sper.nhab + "', SUMINISTRO='" + sper.nomsum + "', CANTIDAD='" + sper.cantidad + "', OBSERVACION='" + sper.observacion + "')";
                    Clases.Bitacora bit = new Clases.Bitacora(3, 3, txtdescbit, user.login);
                    if (bit.Guardar() == 1)
                    {
                        Console.WriteLine("Eliminación guardada en la bitácora");
                    }
                    //-------------------------------------------//
                }
            }
        }
        private void tlGuardar_Click(object sender, RoutedEventArgs e)
        {
            if (dtgrdcam.SelectedIndex < 0)
            {
                MessageBox.Show("Debe elegir una camarera", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            bool hb_ds = false;

            hb_ds = hab_distintas();//Método para corroborar si hay cambios en habitaciones seleccionadas
            Clases.C_Asignacion asg = new Clases.C_Asignacion();
            string txtdescbit       = "";

            if (dtgrdhabsel.Items.Count == 0)//Para eliminar todas las habitaciones asignadas a una camarera
            {
                asg.EliminarAsignPorCamarera(cm_act.idCamarera);


                if (sp_act != null)
                {
                    txtdescbit = "ELIMINACIÓN (NOMBRE CAM.='" + cm_act.nombre + " " + cm_act.apellido + "', CÉD CAM.='" + cm_act.cedula + "'; NOMBRE SUP.='" + sp_act.nombre + " " + sp_act.apellido + "', CÉD SUP.='" + sp_act.cedula + "'; ";
                }
                else
                {
                    txtdescbit = "ELIMINACIÓN (NOMBRE CAM.='" + cm_act.nombre + " " + cm_act.apellido + "', CÉD CAM.='" + cm_act.cedula + "'; NOMBRE SUP.='-SIN ASIGNAR-'; ";
                }


                txtdescbit += "HABS.=";
                foreach (Clases.habitacionIqware h2 in hb_act)
                {
                    txtdescbit += "'" + h2.RoomNo + "',";
                }
                txtdescbit  = txtdescbit.Remove(txtdescbit.Length - 1);
                txtdescbit += ")";


                Clases.Bitacora bitc = new Clases.Bitacora(1, 3, txtdescbit, user.login);
                if (bitc.Guardar() == 1)
                {
                    Console.WriteLine("Eliminación de asignación guardada en la bitácora");
                }
                //----------------------------------------------------//

                MessageBox.Show("Asignación modificada satisfactoriamente", "Completado", MessageBoxButton.OK, MessageBoxImage.Information);
                DialogResult = true;
                Close();
                return;
            }


            Clases.C_Camarera   cam = dtgrdcam.SelectedItem as Clases.C_Camarera;
            Clases.C_Supervisor sup = dtgrdsup.SelectedItem as Clases.C_Supervisor;


            //-------------    Bitácora    ------------------------------------------//


            txtdescbit = "MODIFICACIÓN (";

            asg.idcamarera = cam.idCamarera;
            asg.idUsuario  = user.idUsuario;

            if (dtgrdsup.SelectedIndex < 0)
            {
                asg.idsupervisor = -1;
            }
            else
            {
                asg.idsupervisor = sup.idSupervisor;
            }

            if (habaux.Count > 0)
            {
                if (cm_act.idSupervisor != -1 && dtgrdsup.Items.Count != 0) //Si hay supervisores asignados en la base de datos (Viejo y Nuevo)
                {
                    if (sp_act.idSupervisor != sup.idSupervisor)            //Supervisores distinitos (anterior y nuevo)
                    {
                        txtdescbit += "NOMBRE SUP. ANT.='" + sp_act.nombre + " " + sp_act.apellido + "', CÉD SUP. ANT.='" + sp_act.cedula + "', NOMBRE SUP. NVO.='" + sup.nombre + " " + sup.apellido + "', CÉD SUP. NVO.='" + sup.cedula + "'; ";
                    }
                    else
                    {
                        txtdescbit += "NOMBRE SUP.='" + sup.nombre + " " + sup.apellido + "', CÉD SUP.='" + sup.cedula + "'; ";
                    }
                }
                else if (cm_act.idSupervisor == -1 && dtgrdsup.SelectedIndex >= 0)
                {//Si no hay en viejo y hay en nuevo
                    txtdescbit += "NOMBRE SUP. ANT.='SIN ASIGNAR', NOMBRE SUP. NVO.='" + sup.nombre + " " + sup.apellido + "', CÉD SUP. NVO.='" + sup.cedula + "'; ";
                }
                else if (cm_act.idSupervisor != -1 && dtgrdsup.Items.Count == 0)//Si hay viejo y no hay en nuevo
                {
                    txtdescbit += "NOMBRE SUP. ANT.='" + sp_act.nombre + " " + sp_act.apellido + "', CÉD SUP. ANT.='" + sp_act.cedula + "', NOMBRE SUP. NVO.='SIN ASIGNAR'; ";
                }

                Clases.C_Movimiento mov = new Clases.C_Movimiento();
                mov.idsupervisor = dtgrdsup.SelectedIndex != -1?sup.idSupervisor:-1;
                mov.idCamarera   = cam.idCamarera;
                mov.fecha        = DateTime.Today;

                if (mov.EditarMovSup() == 1)
                {
                    Console.WriteLine("Se modificó el supervisor");
                }
            }
            else
            {
                asg.EliminarAsignPorCamarera(cm_act.idCamarera);



                if (cm_act.idCamarera != cam.idCamarera)//Camareras distintas (anterior y nueva)
                {
                    txtdescbit += "NOMBRE CAM. ANT.='" + cm_act.nombre + " " + cm_act.apellido + "', CÉD CAM. ANT.='" + cm_act.cedula + "', NOMBRE CAM. NVA.='" + cam.nombre + " " + cam.apellido + "', CÉD CAM. NVA.='" + cam.cedula + "'; ";
                }
                else
                {
                    txtdescbit += "NOMBRE CAM.='" + cam.nombre + " " + cam.apellido + "', CÉD CAM.='" + cam.cedula + "'; ";
                }


                if (cm_act.idSupervisor != -1 && dtgrdsup.Items.Count != 0) //Si hay supervisores asignados en la base de datos (Viejo y Nuevo)
                {
                    if (sp_act.idSupervisor != sup.idSupervisor)            //Supervisores distinitos (anterior y nuevo)
                    {
                        txtdescbit += "NOMBRE SUP. ANT.='" + sp_act.nombre + " " + sp_act.apellido + "', CÉD SUP. ANT.='" + sp_act.cedula + "', NOMBRE SUP. NVO.='" + sup.nombre + " " + sup.apellido + "', CÉD SUP. NVO.='" + sup.cedula + "'; ";
                    }
                    else
                    {
                        txtdescbit += "NOMBRE SUP.='" + sup.nombre + " " + sup.apellido + "', CÉD SUP.='" + sup.cedula + "'; ";
                    }
                }
                else if (cm_act.idSupervisor == -1 && dtgrdsup.SelectedIndex >= 0)
                {//Si no hay en viejo y hay en nuevo
                    txtdescbit += "NOMBRE SUP. ANT.='SIN ASIGNAR', NOMBRE SUP. NVO.='" + sup.nombre + " " + sup.apellido + "', CÉD SUP. NVO.='" + sup.cedula + "'; ";
                }
                else if (cm_act.idSupervisor != -1 && dtgrdsup.Items.Count == 0)//Si hay viejo y no hay en nuevo
                {
                    txtdescbit += "NOMBRE SUP. ANT.='" + sp_act.nombre + " " + sp_act.apellido + "', CÉD SUP. ANT.='" + sp_act.cedula + "', NOMBRE SUP. NVO.='SIN ASIGNAR'; ";
                }



                if (hb_ds)
                {
                    txtdescbit += "HABS. ANT.=";
                    foreach (Clases.habitacionIqware h2 in hb_act)
                    {
                        txtdescbit += "'" + h2.RoomNo + "',";
                    }


                    txtdescbit  = txtdescbit.Remove(txtdescbit.Length - 1);
                    txtdescbit += "; ";
                }
                //----------------------------------------------------------------------------------//



                txtdescbit += "HABS. NVAS.=";//Bitácora


                foreach (Clases.habitacionIqware h in dtgrdhabsel.ItemsSource)
                {
                    txtdescbit += "'" + h.RoomNo + "',";//Bitácora

                    asg.idhabitacion = h.ID_Room;
                    asg.num_hab      = h.RoomNo;
                    asg.status_hab   = h.status;
                    asg.num_pax      = h.GuestTotal;
                    asg.modulo_hab   = h.modulo;
                    asg.tipo_hab     = h.RoomTypeShortName;
                    asg.idUsuario    = user.idUsuario;
                    asg.llegada      = h.llegada;
                    asg.salida       = h.salida;
                    asg.piso         = h.ID_Floor;
                    asg.Section      = h.Section;
                    asg.Guardar();
                }
            }

            asg.Modificar();

            //---------Bitácora -------------------------------------------//
            txtdescbit  = txtdescbit.Remove(txtdescbit.Length - 1);
            txtdescbit += ")";
            if (cm_act.idCamarera != cam.idCamarera || cm_act.idSupervisor != asg.idsupervisor || hb_ds)
            {
                Clases.Bitacora bit = new Clases.Bitacora(1, 2, txtdescbit, user.login);
                if (bit.Guardar() == 1)
                {
                    Console.WriteLine("Modificación de asignación guardada en la bitácora");
                }
            }
            //----------------------------------------------------//

            MessageBox.Show("Asignación modificada satisfactoriamente", "Completado", MessageBoxButton.OK, MessageBoxImage.Information);
            DialogResult = true;
            Close();
        }
Example #7
0
        public void actualizar_perdidas_por_hab(Clases.habitacionIqware hs, List <Clases.C_Suministro> lsum)
        {
            Clases.C_Perdida per;

            bool encontrado = false;



            foreach (Clases.C_Suministro ls in lsum)     //Pérdida de suministros en la lista (ejecución)
            {
                encontrado = false;

                foreach (Clases.C_Perdida sper in lpersumbd)     //Pérdida de suministros en la base de datos
                {
                    if (sper.idHabitacion == hs.ID_Room && sper.idSuministro == ls.idSuministro && ls.IsSelected)
                    {
                        encontrado            = true;
                        per                   = new Clases.C_Perdida();
                        per.idSuministro      = ls.idSuministro;
                        per.idHabitacion      = hs.ID_Room;
                        per.cantidad          = ls.cantidad;
                        per.fecha             = DateTime.Today;
                        per.idUsuario         = user.idUsuario;
                        per.fechaModificacion = DateTime.Today;
                        per.observacion       = ls.observacion.ToUpper();
                        per.hora              = hora;
                        per.idCamarera        = cam.idCamarera;
                        per.nhab              = hs.RoomNo;
                        if (per.Editar() == 1)
                        {
                            Console.WriteLine("Se modificó la pérdida");
                        }


                        //----------------------------- Bitácora -------------------------------//
                        if (sper.cantidad != ls.cantidad || sper.observacion != ls.observacion)
                        {
                            if (sper.cantidad != ls.cantidad)
                            {
                                txtdescbit = "MODIFICACIÓN DE PÉRDIDA (NR. HAB='" + hs.RoomNo + "', SUMINISTRO='" + ls.descripcion + "', CANTIDAD ANTERIOR='" + sper.cantidad + "', CANTIDAD NUEVA='" + ls.cantidad + "',";
                            }
                            else
                            {
                                txtdescbit = "MODIFICACIÓN DE PÉRDIDA (NR. HAB='" + hs.RoomNo + "', SUMINISTRO='" + ls.descripcion + "', CANTIDAD='" + ls.cantidad + "',";
                            }

                            if (sper.observacion != ls.observacion)
                            {
                                txtdescbit += " OBSERVACIÓN ANTERIOR='" + sper.observacion + "', OBSERVACIÓN NUEVA='" + ls.observacion + "')";
                            }
                            else
                            {
                                txtdescbit += " OBSERVACIÓN='" + ls.observacion + "')";
                            }

                            Clases.Bitacora bit = new Clases.Bitacora(3, 2, txtdescbit, user.login);
                            if (bit.Guardar() == 1)
                            {
                                Console.WriteLine("Modificación guardada en la bitácora");
                            }
                            //----------------------------------------------------------------------//
                        }
                    }
                }

                if (!encontrado && ls.IsSelected)
                {
                    per = new Clases.C_Perdida();
                    per.idSuministro      = ls.idSuministro;
                    per.idHabitacion      = hs.ID_Room;
                    per.cantidad          = ls.cantidad;
                    per.fecha             = DateTime.Today;
                    per.idUsuario         = user.idUsuario;
                    per.fechaModificacion = DateTime.Today;
                    per.observacion       = ls.observacion.ToUpper();
                    per.hora       = hora;
                    per.idCamarera = cam.idCamarera;
                    per.nhab       = hs.RoomNo;
                    if (per.Guardar() == 1)
                    {
                        Console.WriteLine("Se guardó la pérdida");
                    }

                    //----------------------------- Bitácora -------------------------------//

                    txtdescbit = "INSERCIÓN DE PÉRDIDA ( NR. HAB='" + hs.RoomNo + "', SUMINISTRO='" + ls.descripcion + "', CANTIDAD='" + per.cantidad + "', OBSERVACION='" + per.observacion + "')";
                    Clases.Bitacora bit = new Clases.Bitacora(3, 1, txtdescbit, user.login);
                    if (bit.Guardar() == 1)
                    {
                        Console.WriteLine("Inserción guardada en la bitácora");
                    }
                    //---------------------------------------------------------------------//
                }
            }
        }
Example #8
0
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            btnModificar.Enabled = false;
            btnEliminar.Enabled  = false;
            btnConsultar.Enabled = false;
            if (!Globales.fVerificarAcceso(Globales.valor_perfil("ClientesAgregar")))
            {
                MessageBox.Show("No cuenta con los permisos para realizar esta acción", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                this.Text     = "";
                this.indexcli = -1;
                this.idcli    = "-1";
                if (!esguardar)//Condición para un nuevo cliente (preparar el formulario para la inserción)
                {
                    btnAgregar.Text          = "Guardar";
                    this.esguardar           = true;
                    dtgrContratos.DataSource = null;

                    this.limpiarformcliente();
                    this.deshabilitarformcliente(false);
                }
                else//Condición para guardar el cliente
                {
                    bool seguir = true;
                    switch (this.validarformcliente())//Validaciones del formulario
                    {
                    case -1:
                        MessageBox.Show("Campo Cédula vacío", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        break;

                    case -2:
                        MessageBox.Show("Campo Nombres vacío", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        break;

                    case -4:
                        MessageBox.Show("Debe agregar por lo menos 2 números telefónicos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        break;

                    case 0:

                        if (txtApellidos.Text == "")
                        {
                            var result = MessageBox.Show("¿Desea agregar este cliente sin Apellido?", "Campo Dirección vacío", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                            if (result == DialogResult.No)
                            {
                                seguir = false;
                            }
                        }
                        if ((seguir) && txtDireccion.Text == "")
                        {
                            var result = MessageBox.Show("¿Desea agregar este cliente sin Dirección?", "Campo Dirección vacío", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                            if (result == DialogResult.No)
                            {
                                seguir = false;
                            }
                        }
                        if ((seguir) && txtEmail.Text == "")
                        {
                            var result = MessageBox.Show("¿Desea agregar este cliente sin Correo Electrónico?", "Campo Correo Electrónico vacío", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                            if (result == DialogResult.No)
                            {
                                seguir = false;
                            }
                        }
                        if ((seguir) && txtTwitter.Text == "")
                        {
                            var result = MessageBox.Show("¿Desea agregar este cliente sin Twitter?", "Campo Twitter vacío", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                            if (result == DialogResult.No)
                            {
                                seguir = false;
                            }
                        }
                        if ((seguir) && txtInstagram.Text == "")
                        {
                            var result = MessageBox.Show("¿Desea agregar este cliente sin Instagram?", "Campo Instagram vacío", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                            if (result == DialogResult.No)
                            {
                                seguir = false;
                            }
                        }

                        if (seguir)
                        {
                            string txtSQL = "SELECT * FROM Clientes WHERE (Nacionalidad='" + cmbCedPas.Text + "' AND cedula_rif='" + txtCedula.Text + "') OR RIF='" + txtRIF.Text + "'";

                            if (Globales.BD.nregistros(txtSQL) > 0)
                            {
                                MessageBox.Show("Ya existe un cliente con una cédula y/o RIF", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            else
                            {
                                this.CopiarDataFormCliente();
                                Globales.cli.registrar_cliente();

                                //------------------ Bitácora ----------------//
                                Clases.Bitacora Bit = new Clases.Bitacora("----------", "");
                                Bit.evento = Bit.desc_ins_cli();
                                Bit.registrar_suceso();
                                //---------------------------------------------//


                                txtSQL = "Select * from Clientes Where Estado ='activo' Order by Nombres";
                                Globales.BD.eliminartabladsglobal("Clientes");
                                Globales.BD.llenardsglobal(txtSQL, "Clientes");

                                MessageBox.Show("Cliente agregado satisfactoriamente", "Finalizado", MessageBoxButtons.OK, MessageBoxIcon.Information);

                                btnAgregar.Text = "Agregar";
                                this.esguardar  = false;
                                this.limpiarformcliente();
                                this.deshabilitarformcliente(true);
                                btnConsultar.Enabled = true;
                            }
                        }
                        break;
                    }
                }
            }
        }
Example #9
0
        public void actualizar_extras_nuevos_rep(Clases.habitacionIqware hb, List <Clases.C_Suministro> lext)//Reposición
        {
            bool encontrado = false;

            Clases.C_Extra ext;
            if (lext != null && lext.Count > 0)
            {
                foreach (Clases.C_Suministro sm in lext)//Lista de extras nuevos
                {
                    encontrado = false;
                    ext        = new Clases.C_Extra();

                    foreach (Clases.habitacionIqware hb2 in lhs)          //Recorrido de los extras viejos
                    {
                        if (hb2.lextrep != null && hb2.lextrep.Count > 0) //Si hay extras de cambio en una habitación específica
                        {
                            foreach (Clases.C_Extra sm2 in hb2.lextrep)   ///Recorrido de extra viejo de reposición
                            {
                                if (sm.IsSelected && hb.ID_Room == hb2.ID_Room && sm2.idSuministro == sm.idSuministro)
                                {
                                    encontrado = true;

                                    //-------- Bitácora ------------------------------------------------//
                                    if (sm2.cantidad != sm.cantidad || sm2.observacion != sm.observacion)
                                    {
                                        ext.idSuministro      = sm.idSuministro;
                                        ext.idHabitacion      = hb.ID_Room;
                                        ext.fecha             = DateTime.Now;
                                        ext.cantidad          = sm.cantidad;
                                        ext.idUsuario         = user.idUsuario;
                                        ext.fechaModificacion = DateTime.Now;
                                        ext.observacion       = sm.observacion.ToUpper();
                                        ext.hora       = DateTime.Now.ToString("HH:mm:ss");
                                        ext.idCamarera = cam.idCamarera;
                                        ext.nhab       = hb.RoomNo;

                                        if (ext.Editar2() == 1)
                                        {
                                            Console.WriteLine("");
                                        }



                                        if (sm2.cantidad != sm.cantidad)
                                        {
                                            txtdescbit = "MODIFICACIÓN DE SUMINISTRO EXTRA (NR. HAB='" + ext.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD ANTERIOR='" + sm2.cantidad + "' CANTIDAD NUEVA='" + ext.cantidad + "',";
                                        }
                                        else
                                        {
                                            txtdescbit = "MODIFICACIÓN DE SUMINISTRO EXTRA (NR. HAB='" + ext.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + ext.cantidad + "',";
                                        }

                                        if (sm2.observacion != sm.observacion)
                                        {
                                            txtdescbit += " OBSERVACIÓN ANTERIOR='" + sm2.observacion + "', OBSERVACIÓN NUEVA='" + sm.observacion + "')";
                                        }
                                        else
                                        {
                                            txtdescbit += " OBSERVACIÓN ='" + sm.observacion + "')";
                                        }

                                        Clases.Bitacora bit = new Clases.Bitacora(5, 2, txtdescbit, user.login);
                                        if (bit.Guardar() == 1)
                                        {
                                            Console.WriteLine("Modificación de extra guardada en la bitácora");
                                        }
                                    }
                                    //---------------------------------------------------------------//
                                }
                            }
                        }
                    }



                    if (!encontrado && sm.IsSelected)
                    {
                        ext.idSuministro      = sm.idSuministro;
                        ext.idHabitacion      = hb.ID_Room;
                        ext.fecha             = DateTime.Now;
                        ext.cantidad          = sm.cantidad;
                        ext.idUsuario         = user.idUsuario;
                        ext.fechaModificacion = DateTime.Now;
                        ext.observacion       = sm.observacion.ToUpper();
                        ext.hora       = DateTime.Now.ToString("HH:mm:ss");
                        ext.idCamarera = cam.idCamarera;
                        ext.nhab       = hb.RoomNo;
                        if (ext.Guardar() == 1)
                        {
                            Console.WriteLine("");
                        }

                        //----------------------------- Bitácora -------------------------------//

                        txtdescbit = "INSERCIÓN DE SUMINISTRO EXTRA ( NR. HAB='" + ext.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "', OBSERVACION='" + sm.observacion + "')";
                        Clases.Bitacora bit = new Clases.Bitacora(5, 1, txtdescbit, user.login);
                        if (bit.Guardar() == 1)
                        {
                            Console.WriteLine("Inserción de extra guardada en la bitácora");
                        }
                        //----------------------------------------------------------------------//
                    }
                }
            }
        }
        private void MenuItem_Click(object sender, RoutedEventArgs e)
        {
            if (dtgrdsumcamb.SelectedIndex != -1)
            {
                Clases.habitacionIqware hb = dtgrdhabsel.SelectedItem as Clases.habitacionIqware;
                Clases.C_Camarera       ca = dtgrdcam.SelectedItem as Clases.C_Camarera;
                Clases.C_Suministro     sm = dtgrdsumcamb.SelectedItem as Clases.C_Suministro;


                if (user.nivel != 0 && user.nivel != 1)
                {
                    MessageBox.Show("No poseen lo permisos para hacer esta acción", "Denegado", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }



                if (MessageBox.Show("Desea eliminar la pérdida de " + sm.descripcion + " de la lista?", "Confirmación", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    string texto = Microsoft.VisualBasic.Interaction.InputBox("Ingrese la observación", "Observación", "");//Modal pequeño para recopilar la observación


                    if (texto == "")
                    {
                        MessageBox.Show("Eliminación cancelada: Presionó botón 'Cancelar' o campo observación vacío", "Información", MessageBoxButton.OK, MessageBoxImage.Information);
                        return;
                    }



                    Clases.C_Perdida per = new Clases.C_Perdida();
                    per.idHabitacion = hb.ID_Room;
                    per.idCamarera   = ca.idCamarera;
                    per.idSuministro = sm.idSuministro;
                    per.hora         = ca.horamov;

                    Clases.C_Movimiento mov = new Clases.C_Movimiento();
                    mov.idSuministro = sm.idSuministro;
                    mov.idHabitacion = hb.ID_Room;
                    mov.fecha        = dtpFecha.SelectedDate;
                    mov.idCamarera   = ca.idCamarera;
                    mov.observacion  = texto;

                    if (mov.EditarMovPerdida() == 1)
                    {
                        Console.WriteLine("Modificada la observación en el movimiento");


                        //--------- Bitácora ------------------------//
                        txtdescbit = "ELIMINACIÓN DE PÉRDIDA ( FECHA='" + Convert.ToString(dtpFecha.SelectedDate).Replace(" 12:00:00 a.m.", "") + "' NR. HAB='" + hb.RoomNo + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "', OBSERVACION='" + texto.ToUpper() + "')";
                        Clases.Bitacora bit = new Clases.Bitacora(6, 3, txtdescbit, user.login);
                        if (bit.Guardar() == 1)
                        {
                            Console.WriteLine("Eliminación guardada en la bitácora");
                        }
                        //-------------------------------------------//
                    }



                    if (per.EliminarPerdida(Convert.ToDateTime(dtpFecha.SelectedDate)) == 1)       //Si la eliminación fue satisfactoria...
                    {
                        actualizar_dtgr_sum();                                                     //Se actualiza el datagrid de suministros (excluyendo el suministro que se caba de eliminar)
                        if (dtgrdsumcamb.ItemsSource == null && dtgrdhabsel.Items.Count > 1)       //Si se eliminaron todos los suministros de una habitación, y queda más de una habitación
                        {
                            actualizar_dtgr_habsel();                                              //Se actualiza el datagrid de habitaciones
                        }
                        else if (dtgrdsumcamb.ItemsSource == null && dtgrdhabsel.Items.Count == 1) //Si se eliminaron todos los suministros de una habitación, la cual es la que queda en el datagrid
                        {
                            dtgrdhabsel.ItemsSource = null;                                        //Se vacía el datagrid de habitaciones
                            actualizar_dtgr_cam();                                                 //y se actualiza el datagrid de camareras (excluyendo la fila de la camarera seleccionada, ya que no tiene pérdidas)
                        }
                        MessageBox.Show("Pérdida eliminada satisfactoriamente", "Información", MessageBoxButton.OK, MessageBoxImage.Information);
                        Clases.C_Camarera cm  = new Clases.C_Camarera();
                        DateTime          fch = dtpFecha.SelectedDate == null ? DateTime.Today : Convert.ToDateTime(dtpFecha.SelectedDate);
                        lcam = new List <Clases.C_Camarera>();
                        lcam = cm.PerCamPorFecha(fch);
                    }
                }
            }
        }
        private void tlGuardar_Click(object sender, RoutedEventArgs e)
        {
            if (dtgrdcam.SelectedIndex < 0)
            {
                MessageBox.Show("Debe elegir una camarera", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            if (dtgrdhabsel.Items.Count == 0)
            {
                MessageBox.Show("Debe asignar por lo menos una habitación", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            Clases.C_Asignacion asg = new Clases.C_Asignacion();
            Clases.C_Camarera   cam = dtgrdcam.SelectedItem as Clases.C_Camarera;
            Clases.C_Supervisor sup = dtgrdsup.SelectedItem as Clases.C_Supervisor;

            asg.idcamarera = cam.idCamarera;


            if (dtgrdsup.SelectedIndex < 0)
            {
                asg.idsupervisor = -1;
            }
            else
            {
                asg.idsupervisor = sup.idSupervisor;
            }



            #region Bitácora

            string txtdescbit = "";

            if (dtgrdsup.SelectedIndex >= 0)
            {
                txtdescbit = "INSERCIÓN (NOM. CAM.='" + cam.nombre + " " + cam.apellido + "', CÉD. CAM.='" + cam.cedula + "'; NOM. SUP.='" + sup.nombre + " " + sup.apellido + "', CÉD. SUP.='" + sup.cedula + "';  HABS.=";
            }
            else
            {
                txtdescbit = "INSERCIÓN (NOM. CAM.='" + cam.nombre + " " + cam.apellido + "', CÉD. CAM.='" + cam.cedula + "'; -SUPERVISOR SIN ASIGNAR-;  HABS.=";
            }

            foreach (Clases.habitacionIqware h in dtgrdhabsel.ItemsSource)
            {
                txtdescbit      += "'" + h.RoomNo + "',";
                asg.idhabitacion = h.ID_Room;
                asg.num_hab      = h.RoomNo;
                asg.status_hab   = h.status;
                asg.num_pax      = h.GuestTotal;
                asg.modulo_hab   = h.modulo;
                asg.tipo_hab     = h.RoomTypeShortName;
                asg.idUsuario    = user.idUsuario;
                asg.llegada      = h.llegada;
                asg.salida       = h.salida;
                asg.piso         = h.ID_Floor;
                asg.Section      = h.Section;

                if (asg.Guardar() == 1)
                {
                    Console.WriteLine("Guardado");
                }
            }

            txtdescbit  = txtdescbit.Remove(txtdescbit.Length - 1);
            txtdescbit += ")";
            Clases.Bitacora bit = new Clases.Bitacora(1, 1, txtdescbit, user.login);
            if (bit.Guardar() == 1)
            {
                Console.WriteLine("Inserción de asignación guardada en la bitácora");
            }
            #endregion



            if (MessageBox.Show("Asignación guardada satisfactoriamente, ¿Desea imprimir el reporte de camarera?", "Confirmación", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                reporteCamarera rc = new reporteCamarera();
                rc.camarera   = cam;
                rc.supervisor = sup;
                rc.todos      = false;
                rc.fecha      = DateTime.Today;
                rc.ShowDialog();
            }
            no_supervisor = true;
            Page_Loaded(sender, e);
        }
Example #12
0
        private void tlGenerar_Click(object sender, RoutedEventArgs e)
        {
            DateTime?f      = dpFecha.SelectedDate;
            string   titulo = "";
            string   txtSQL = "SELECT * FROM v_Bitacora WHERE ";

            if (f == null && string.IsNullOrWhiteSpace(txtNHab.Text) && string.IsNullOrWhiteSpace(cmbModulo.Text) && string.IsNullOrWhiteSpace(cmbAccion.Text) && string.IsNullOrWhiteSpace(txtUsuario.Text))
            {
                return;
            }



            //--------------- Procesamiento de la consulta (txtSQL), dependiendo de los parámetros seleccionados por el usuario -----------------------//


            if (f != null)
            {
                if (Convert.ToDateTime(dpFecha.SelectedDate).ToShortDateString() != "01/01/0001")
                {
                    txtSQL += "(fecha BETWEEN '" + convertirfechahora(" 00:00:00") + "' AND '" + convertirfechahora(" 23:59:59") + "') AND ";
                    titulo  = "Fecha='" + Convert.ToDateTime(dpFecha.SelectedDate).ToShortDateString() + "', ";
                }
            }

            if (!string.IsNullOrWhiteSpace(txtNHab.Text))
            {
                txtSQL += " descripcion like '%" + txtNHab.Text.ToUpper() + "%' AND";
                titulo += "N. Hab.='" + txtNHab.Text.ToUpper() + "', ";
            }


            if (cmbModulo.SelectedValue != null)
            {
                txtSQL += " idModulo=" + cmbModulo.SelectedValue.ToString() + " AND";
                titulo += "Módulo='" + cmbModulo.Text + "', ";
            }


            if (cmbAccion.SelectedValue != null)
            {
                txtSQL += " idaccion=" + cmbAccion.SelectedValue.ToString() + " AND";
                titulo += "Acción='" + cmbAccion.Text + "', ";
            }


            if (!string.IsNullOrWhiteSpace(txtUsuario.Text))
            {
                txtSQL += " usuario like '%" + txtUsuario.Text.ToUpper() + "%' AND";
                titulo += "Usuario='" + txtUsuario.Text + "', ";
            }

            txtSQL = txtSQL.Substring(0, txtSQL.Length - 4);
            titulo = titulo.Substring(0, titulo.Length - 2);
            //-------------------------------------------------------------------------------------------------------------------------------------//



            //--Limpieza de los parámetros ---//
            cmbAccion.SelectedValue = -1;
            cmbModulo.SelectedValue = -1;
            txtUsuario.Text         = "";
            txtNHab.Text            = "";
            //------------------------------//


            //-----Limpieza del informe---------//
            dsbit.Clear();
            _reportViewer.Clear();
            dsbit.BeginInit();
            pdsbit.Name = "DataSet1";
            this._reportViewer.LocalReport.ReportEmbeddedResource = "InventarioToallas.ReporteBitacoras.rdlc";
            this._reportViewer.LocalReport.DataSources.Clear();
            //-----------------------------------//

            Clases.Bitacora bit = new Clases.Bitacora();
            bit.cargar_dtt(txtSQL);//Carga del datatable con la consulta generada de acuerdo con los parámetros ingresados
            if (bit.dtt.Rows.Count == 0)
            {
                MessageBox.Show("No hubo coincidencias con los parámetros establecidos", "Sin Resultados", MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }



            //-------- Carga de las coincidencias en el informe ---------------------------------------------------//
            _reportViewer.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", bit.dtt));//Conjunto de Datos (Ver Datos de Informe en el archivo .rdlc)
            ReportParameter[] parameters = new ReportParameter[1];
            parameters[0] = new ReportParameter("titulo", titulo);
            _reportViewer.LocalReport.SetParameters(parameters);
            _reportViewer.SetDisplayMode(DisplayMode.PrintLayout);
            _reportViewer.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.Percent;
            _reportViewer.RefreshReport();
            //---------------------------------------------------------------------------------------------------//
        }
Example #13
0
        public void actualizar_extras_nuevos_rep()
        {
            Clases.C_Extra          ext;
            Clases.habitacionIqware hb = dtgrdhab.SelectedItem as Clases.habitacionIqware;
            bool encontrado            = false;

            foreach (Clases.C_Suministro sm in dtgrdsumrep.ItemsSource)//Recorrido de los nuevos extras en el datagrid
            {
                encontrado = false;
                foreach (Clases.C_Extra item in lext)                                                                  //Recorrido de los extras viejos
                {
                    if (hb.ID_Room == item.idHabitacion && sm.cantidadSal > 0 && sm.idSuministro == item.idSuministro) //Coincidencia de suministros (Editar)
                    {
                        encontrado = true;


                        if (sm.cantidadSal != item.cantidad || sm.observacion != item.observacion)
                        {
                            ext = new Clases.C_Extra();
                            ext.idSuministro      = sm.idSuministro;
                            ext.idHabitacion      = hb.ID_Room;
                            ext.fecha             = dpFecha.SelectedDate;
                            ext.cantidad          = sm.cantidadSal;
                            ext.idUsuario         = user.idUsuario;
                            ext.fechaModificacion = dpFecha.SelectedDate;
                            ext.observacion       = sm.observacion.ToUpper();
                            ext.hora       = DateTime.Now.ToString("HH:mm:ss");
                            ext.idCamarera = -1;
                            ext.nhab       = hb.RoomNo;
                            if (ext.Editar2() == 1)
                            {
                                Console.WriteLine("Se editó el extra");
                            }
                            else
                            {
                                Console.WriteLine("Hubo un error");
                            }

                            if (item.RestarCantidadRealMov() == 1)//Restar la cantidad vieja del extra en cantidadReal en tabla movimiento
                            {
                                Console.WriteLine("Se restó la cantidad real del movimiento");
                            }
                            if (ext.SumarCantidadRealMov() == 1)//Sumar cantidad nueva del extra en cantidadReal
                            {
                                Console.WriteLine("Se sumó la cantidad real del movimiento");
                            }
                            if (ext.SumarSuciaEstimadaMov() == 1)//Sumar cantidad nueva del extra en sucia estimada del otro día (Si el extra es del día anterior)
                            {
                                Console.WriteLine("Se sumó la sucia estimada del movimiento");
                            }


                            if (sm.cantidadSal != item.cantidad)
                            {
                                txtdescbit = "MODIFICACIÓN DE SUMINISTRO EXTRA (NR. HAB='" + ext.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD ANTERIOR='" + item.cantidad + "' CANTIDAD NUEVA='" + ext.cantidad + "',";
                            }
                            else
                            {
                                txtdescbit = "MODIFICACIÓN DE SUMINISTRO EXTRA (NR. HAB='" + ext.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + ext.cantidad + "',";
                            }

                            if (sm.observacion != item.observacion)
                            {
                                txtdescbit += " OBSERVACIÓN ANTERIOR='" + item.observacion + "', OBSERVACIÓN NUEVA='" + sm.observacion + "')";
                            }
                            else
                            {
                                txtdescbit += " OBSERVACIÓN ='" + sm.observacion + "')";
                            }

                            Clases.Bitacora bit = new Clases.Bitacora(7, 2, txtdescbit, user.login);
                            if (bit.Guardar() == 1)
                            {
                                Console.WriteLine("Modificación de extra guardada en la bitácora");
                            }
                        }
                    }
                }

                if (!encontrado && sm.cantidadSal > 0)//Si no encuentra coincidencia, los ingresa
                {
                    ext = new Clases.C_Extra();
                    ext.idSuministro      = sm.idSuministro;
                    ext.idHabitacion      = hb.ID_Room;
                    ext.fecha             = dpFecha.SelectedDate;
                    ext.cantidad          = sm.cantidadSal;
                    ext.idUsuario         = user.idUsuario;
                    ext.fechaModificacion = dpFecha.SelectedDate;
                    ext.observacion       = sm.observacion.ToUpper();
                    ext.hora       = DateTime.Now.ToString("HH:mm:ss");
                    ext.idCamarera = -1;
                    ext.nhab       = hb.RoomNo;
                    if (ext.Guardar() == 1)
                    {
                        Console.WriteLine("Se guardó el extra");
                    }

                    if (ext.SumarCantidadRealMov() == 1)//Sumar cantidad nueva del extra en cantidadReal
                    {
                        Console.WriteLine("Se sumó la cantidad estimada del movimiento");
                    }
                    if (ext.SumarSuciaEstimadaMov() == 1)//Sumar cantidad nueva del extra en sucia estimada del otro día (Si el extra es del día anterior)
                    {
                        Console.WriteLine("Se sumó la sucia estimada del movimiento");
                    }


                    txtdescbit = "INSERCIÓN DE SUMINISTRO EXTRA ( NR. HAB='" + ext.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidadSal + "', OBSERVACION='" + sm.observacion + "')";
                    Clases.Bitacora bit = new Clases.Bitacora(7, 1, txtdescbit, user.login);
                    if (bit.Guardar() == 1)
                    {
                        Console.WriteLine("Inserción de extra guardada en la bitácora");
                    }
                }
            }
        }
 /// <summary>
 /// Nombre del metodo: Registrar Bitacora
 /// Funcionalidad: registrar las acciones del 
 /// Usuario ingresado en el dia que se realizaron
 /// </summary>
 /// <param name="pacciones">Las acciones hechas por el Usuario</param>
 public static void registrarBitacora(String pacciones, Estructuras.StructUsuario pobjUsuario)
 {
     Clases.Bitacora bitacora = new Clases.Bitacora(pacciones);
     Persistentes.BitacoraPersistente bitacoraPers = new Persistentes.BitacoraPersistente();
     bitacoraPers.insertarBitacora(bitacora, pobjUsuario);
 }
Example #15
0
        public void guardar_incidencias_nuevas()
        {
            bool encontrado = false;

            foreach (Clases.habitacionIqware hb in lhi)
            {
                if (hb.lsumcamb != null)//Suministros de Cambio
                {
                    foreach (Clases.C_Suministro sm in hb.lsumcamb)
                    {
                        encontrado = false;
                        Clases.C_Incidencia inc = new Clases.C_Incidencia();
                        inc.idHabitacion      = hb.ID_Room;
                        inc.idCamarera        = cam.idCamarera;
                        inc.fecha             = DateTime.Today;
                        inc.hora              = hora;
                        inc.nhab              = hb.RoomNo;
                        inc.idUsuario         = user.idUsuario;
                        inc.fechaModificacion = DateTime.Today;
                        inc.idSuministro      = sm.idSuministro;
                        inc.cantidad          = sm.cantidad;
                        inc.observacion       = sm.observacion;
                        encontrado            = false;


                        if (lbdinc.Count > 0 && lbdinc != null)
                        {
                            foreach (Clases.C_Incidencia auxl in lbdinc)
                            {
                                if (sm.IsSelected && hb.ID_Room == auxl.idHabitacion && sm.idSuministro == auxl.idSuministro)
                                {
                                    encontrado = true;
                                    if (inc.Editar() == 1)
                                    {
                                        Console.WriteLine("Incidencia Editada");
                                    }


                                    //--------------------------------- Bitácora ------------------------------------//
                                    if (auxl.cantidad != sm.cantidad || auxl.observacion != sm.observacion)
                                    {
                                        if (auxl.cantidad != sm.cantidad)
                                        {
                                            txtdescbit = "MODIFICACIÓN DE INCIDENCIA (NR. HAB='" + inc.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD ANTERIOR='" + auxl.cantidad + "' CANTIDAD NUEVA='" + sm.cantidad + "',";
                                        }
                                        else
                                        {
                                            txtdescbit = "MODIFICACIÓN DE INCIDENCIA (NR. HAB='" + inc.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "',";
                                        }

                                        if (auxl.observacion != sm.observacion)
                                        {
                                            txtdescbit += " OBSERVACIÓN ANTERIOR='" + auxl.observacion + "', OBSERVACIÓN NUEVA='" + sm.observacion + "')";
                                        }
                                        else
                                        {
                                            txtdescbit += " OBSERVACIÓN ='" + sm.observacion + "')";
                                        }

                                        Clases.Bitacora bit = new Clases.Bitacora(4, 2, txtdescbit, user.login);
                                        if (bit.Guardar() == 1)
                                        {
                                            Console.WriteLine("Modificación de incidencia guardada en la bitácora");
                                        }
                                        //-----------------------------------------------------------------------------//
                                    }
                                }
                            }
                        }


                        if (sm.IsSelected && !encontrado)
                        {
                            if (inc.Guardar() == 1)
                            {
                                Console.WriteLine("Incidencia Guardada");
                            }


                            //----------------------------- Bitácora -------------------------------//
                            txtdescbit = "INSERCIÓN DE INCIDENCIA ( NR. HAB='" + inc.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "', OBSERVACION='" + sm.observacion + "')";
                            Clases.Bitacora bit = new Clases.Bitacora(4, 1, txtdescbit, user.login);
                            if (bit.Guardar() == 1)
                            {
                                Console.WriteLine("Inserción de incidencia guardada en la bitácora");
                            }
                            //----------------------------------------------------------------------//
                        }
                    }
                }

                if (hb.lsumrep != null)//Suministros de Reposición
                {
                    foreach (Clases.C_Suministro sm in hb.lsumrep)
                    {
                        encontrado = false;
                        Clases.C_Incidencia inc = new Clases.C_Incidencia();
                        inc.idHabitacion      = hb.ID_Room;
                        inc.idCamarera        = cam.idCamarera;
                        inc.fecha             = DateTime.Today;
                        inc.hora              = hora;
                        inc.nhab              = hb.RoomNo;
                        inc.idUsuario         = user.idUsuario;
                        inc.fechaModificacion = DateTime.Today;
                        inc.idSuministro      = sm.idSuministro;
                        inc.cantidad          = sm.cantidad;
                        inc.observacion       = sm.observacion;
                        encontrado            = false;

                        if (lbdinc.Count > 0 && lbdinc != null)
                        {
                            foreach (Clases.C_Incidencia auxl in lbdinc)
                            {
                                if (sm.IsSelected && hb.ID_Room == auxl.idHabitacion && sm.idSuministro == auxl.idSuministro)
                                {
                                    encontrado = true;
                                    if (inc.Editar() == 1)
                                    {
                                        Console.WriteLine("Incidencia Editada");
                                    }

                                    if (auxl.cantidad != sm.cantidad || auxl.observacion != sm.observacion)
                                    {
                                        if (auxl.cantidad != sm.cantidad)
                                        {
                                            txtdescbit = "MODIFICACIÓN DE INCIDENCIA (NR. HAB='" + inc.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD ANTERIOR='" + auxl.cantidad + "' CANTIDAD NUEVA='" + sm.cantidad + "',";
                                        }
                                        else
                                        {
                                            txtdescbit = "MODIFICACIÓN DE INCIDENCIA (NR. HAB='" + inc.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "',";
                                        }

                                        if (auxl.observacion != sm.observacion)
                                        {
                                            txtdescbit += " OBSERVACIÓN ANTERIOR='" + auxl.observacion + "', OBSERVACIÓN NUEVA='" + sm.observacion + "')";
                                        }
                                        else
                                        {
                                            txtdescbit += " OBSERVACIÓN ='" + sm.observacion + "')";
                                        }

                                        Clases.Bitacora bit = new Clases.Bitacora(4, 2, txtdescbit, user.login);
                                        if (bit.Guardar() == 1)
                                        {
                                            Console.WriteLine("Modificación de incidencia guardada en la bitácora");
                                        }
                                    }
                                }
                            }
                        }


                        if (sm.IsSelected && !encontrado)
                        {
                            if (inc.Guardar() == 1)
                            {
                                Console.WriteLine("Incidencia Guardada");
                            }


                            txtdescbit = "INSERCIÓN DE INCIDENCIA ( NR. HAB='" + inc.nhab + "', SUMINISTRO='" + sm.descripcion + "', CANTIDAD='" + sm.cantidad + "', OBSERVACION='" + sm.observacion + "')";
                            Clases.Bitacora bit = new Clases.Bitacora(4, 1, txtdescbit, user.login);
                            if (bit.Guardar() == 1)
                            {
                                Console.WriteLine("Inserción de incidencia guardada en la bitácora");
                            }
                        }
                    }
                }
            }
        }//Guardar incidencias nuevas