Exemple #1
0
        //Reporte de Camarera
        private void MenuItem_Click_1(object sender, RoutedEventArgs e)
        {
            reporteCamarera rc = new reporteCamarera();

            Clases.C_Camarera   cam = dtgrdcam.SelectedItem as Clases.C_Camarera;
            Clases.C_Supervisor sp  = new Clases.C_Supervisor();
            rc.camarera   = cam;
            rc.supervisor = sp.SupervisorPorId(Convert.ToInt32(cam.idSupervisor));


            DateTime?f = dtpFecha.SelectedDate;

            if (f != null)
            {
                rc.fecha = Convert.ToDateTime(dtpFecha.SelectedDate);
            }
            else
            {
                rc.fecha = DateTime.Today;
            }


            rc.todos = false;
            rc.ShowDialog();
        }
        private void MetroWindow_Loaded(object sender, RoutedEventArgs e)
        {
            Clases.C_Supervisor sp = new Clases.C_Supervisor();

            if (cm_act.idSupervisor != -1)//Si la asignación actual tiene supervisores
            {
                dtgrdsup.ItemsSource   = sp.BuscarSupervisorPorId(Convert.ToInt32(cm_act.idSupervisor));
                dtgrdsup.SelectedIndex = 0;
                sp_act = dtgrdsup.SelectedItem as Clases.C_Supervisor;
            }
            else//Si no tiene supervisor asignado
            {
                sp_act = null;
            }


            habaux = h2.listarhabxcamfecha(cm_act.idCamarera, DateTime.Today); //Listado de habitaciones (De haber asignación de suministros)
            if (habaux.Count > 0)                                              //Condición en caso de que las habitaciones tengan asignados suministros (Sólo estará habilitado para editar supervisor)

            {
                dtgrdcam.IsEnabled       = false;
                txtBuscarCam.IsEnabled   = false;
                dtgrdhab.IsEnabled       = false;
                txtBuscarHab.IsEnabled   = false;
                dtgrdhabsel.IsEnabled    = false;
                cmbModulo.IsEnabled      = false;
                cmbPiso.IsEnabled        = false;
                btnRst.IsEnabled         = false;
                btnSeleccionar.IsEnabled = false;
            }



            dtgrdcam.ItemsSource   = cm_act.BuscarCamareraPorId(cm_act.idCamarera);
            dtgrdcam.SelectedIndex = 0;
            Clases.habitacionIqware hb = new Clases.habitacionIqware();

            dtgrdhabsel.ItemsSource = hb.listarhabasigxcamysup(cm_act.idCamarera, Convert.ToInt32(cm_act.idSupervisor), DateTime.Today);

            lblHabSel.Content = "HABITACIONES SELECCIONADAS: " + Convert.ToString(dtgrdhabsel.Items.Count);


            copiar_dghabsel_a_list();//Carga de lista de habitaciones seleccionadas actualmente en hb_act


            //------------------------ Carga de Hab. (Para anexar las habitaciones asignadas actuales en la búsqueda) ---------------------//
            foreach (Clases.habitacionIqware h in dtgrdhabsel.ItemsSource)
            {
                habit.Add(h.ID_Room);
            }
            //----------------------------------------------------------------------------------------------------------------------------//

            Clases.habitacionIqware hI = new Clases.habitacionIqware();
            cmbModulo.ItemsSource       = hI.listarModulos();
            cmbModulo.DisplayMemberPath = "descripcion";
            cmbModulo.SelectedValuePath = "descripcion";
        }
 private void txtBuscarSup_KeyUp(object sender, KeyEventArgs e)
 {
     Clases.C_Supervisor sup = new Clases.C_Supervisor();
     dtgrdsup.ItemsSource = null;
     if (sup.BuscarSupervisores(txtBuscarSup.Text).Count > 0)
     {
         dtgrdsup.ItemsSource = sup.BuscarSupervisores(txtBuscarSup.Text);
     }
 }
        //Carga de datos en el formulario de supervisor (Para editar)

        public void llenarform(Clases.C_Supervisor sup)
        {
            txtIdSup.Text           = Convert.ToString(sup.idSupervisor);
            cmbCed.Text             = sup.nac;
            txtCedula.Text          = sup.documento;
            txtNombre.Text          = sup.nombre;
            txtApellido.Text        = sup.apellido;
            cmbEstado.SelectedIndex = Convert.ToInt32(sup.activo) == 1 ? 0 : 1;
            cmbCed.Text             = sup.nac;
        }
 private void Page_Loaded(object sender, RoutedEventArgs e)
 {
     cmbEstado.Items.Clear();
     cmbEstado.Items.Add("ACTIVO");
     cmbEstado.Items.Add("INACTIVO");
     cmbCed.Items.Clear();
     cmbCed.Items.Add("V");
     cmbCed.Items.Add("E");
     Clases.C_Supervisor sup = new Clases.C_Supervisor();
     dtgrdsup.ItemsSource = sup.listarSupervisores();
 }
 private void dtgrdsup_MouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
 {
     if (dtgrdsup.SelectedIndex >= 0)
     {
         Clases.C_Supervisor sup = dtgrdsup.SelectedItem as Clases.C_Supervisor;
         accion         = "EDITAR";
         flNuevo.Header = "Editar Supervisor";
         nac_actual     = sup.nac;
         cedula_actual  = sup.documento;
         llenarform(sup);
         flNuevo.IsOpen = true;
     }
 }
        //----------- TextBox Supervisor ----------------------------//
        private void txtBuscarSup_KeyUp(object sender, KeyEventArgs e)
        {
            Clases.C_Supervisor        sup = new Clases.C_Supervisor();
            List <Clases.C_Supervisor> aux = new List <Clases.C_Supervisor>();

            dtgrdsup.ItemsSource = null;
            if (txtBuscarSup.Text != "")
            {
                aux = sup.BuscarSupervisores(txtBuscarSup.Text);
                if (aux.Count > 0)
                {
                    dtgrdsup.ItemsSource = aux;
                }
            }
        }
        //Evento para el listado de camareras

        private void BtnCam_Click(object sender, RoutedEventArgs e)
        {
            if (dtgrdsup.SelectedIndex >= 0)
            {
                Clases.C_Supervisor sup = dtgrdsup.SelectedItem as Clases.C_Supervisor;
                Clases.C_Camarera   cam = new Clases.C_Camarera();
                flCamarera.Header    = "Listado de Camareras del Sup. " + sup.nombre + " " + sup.apellido;
                flCamarera.IsOpen    = true;
                dtgrdcam.ItemsSource = cam.BuscarCamarerasPorSupervisor(sup.idSupervisor);
            }
            else
            {
                MessageBox.Show("Debe elegir un supervisor, presionando click en la fila del mismo", "Información", MessageBoxButton.OK, MessageBoxImage.Information);
            }
        }
 private void tlGuardar_Click(object sender, RoutedEventArgs e)
 {
     if (cmbCed.SelectedIndex == -1 || string.IsNullOrWhiteSpace(txtCedula.Text) || string.IsNullOrWhiteSpace(txtNombre.Text) || string.IsNullOrWhiteSpace(txtApellido.Text) || cmbEstado.SelectedIndex == -1)
     {
         MessageBox.Show("Debe completar campos obligatorios", "Advertencia", MessageBoxButton.OK, MessageBoxImage.Warning);
         return;
     }
     Clases.C_Supervisor newSup = new Clases.C_Supervisor();
     newSup.nac       = cmbCed.Text;
     newSup.documento = txtCedula.Text;
     newSup.nombre    = txtNombre.Text;
     newSup.apellido  = txtApellido.Text;
     newSup.activo    = cmbEstado.SelectedIndex == 0 ? 1 : 0;
     if (accion == "INSERTAR")
     {
         if (newSup.NuevoSupervisor() == 1)
         {
             MessageBox.Show("Se ha guardado correctamente", "Información", MessageBoxButton.OK, MessageBoxImage.Information);
             tlCancelar_Click(sender, e);
             Page_Loaded(sender, e);
         }
         else
         {
             MessageBox.Show("Error al guardar el supervisor", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
         }
     }
     else
     {
         newSup.idSupervisor = Convert.ToInt32(txtIdSup.Text);
         if (newSup.EditarSupervisor() == 1)
         {
             MessageBox.Show("Se ha modificado correctamente", "Información", MessageBoxButton.OK, MessageBoxImage.Information);
             tlCancelar_Click(sender, e);
             Page_Loaded(sender, e);
         }
         else
         {
             MessageBox.Show("Error al guardar el supervisor", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
         }
     }
 }
        private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            Clases.C_Supervisor sp = new Clases.C_Supervisor();
            lsup = sp.listarSupervisores();

            if (!no_supervisor)
            {
                dtgrdsup.ItemsSource = lsup;
            }

            Clases.C_Camarera cam = new Clases.C_Camarera();
            lcam = cam.ListaCamarerasDisp();
            dtgrdcam.ItemsSource    = lcam;
            dtgrdhab.ItemsSource    = null;
            dtgrdhabsel.ItemsSource = null;
            lblHabSel.Content       = "HABITACIONES SELECCIONADAS: 0";
            Clases.habitacionIqware hI = new Clases.habitacionIqware();
            cmbModulo.ItemsSource       = hI.listarModulos();
            cmbModulo.DisplayMemberPath = "descripcion";
            cmbModulo.SelectedValuePath = "descripcion";
            cmbPiso.ItemsSource         = null;
            no_supervisor = false;
        }
        //Método para validar redundancias en cédulas

        public void buscarcedula()
        {
            if (accion == "INSERTAR")//En la inserción
            {
                if (txtCedula.Text != "")
                {
                    Clases.C_Supervisor sup = new Clases.C_Supervisor();
                    sup.nac       = cmbCed.Text;
                    sup.documento = txtCedula.Text;
                    if (sup.existeCedula() == 1)
                    {
                        MessageBox.Show("Existe un supervisor con ese número de cédula", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                        cmbCed.SelectedIndex = -1;
                        txtCedula.Text       = "";
                        return;
                    }
                }
            }
            else//En modificacion
            {
                if (txtCedula.Text != "")
                {
                    Clases.C_Supervisor sup = new Clases.C_Supervisor();
                    sup.idSupervisor = Convert.ToInt32(txtIdSup.Text);
                    sup.nac          = cmbCed.Text;
                    sup.documento    = txtCedula.Text;
                    if (sup.existeCedula2() == 1)
                    {
                        MessageBox.Show("Existe otro supervisor con ese número de cédula", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                        cmbCed.Text    = nac_actual;
                        txtCedula.Text = cedula_actual;
                        return;
                    }
                }
            }
        }
        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();
        }
        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);
        }