Exemplo n.º 1
0
        /*
         * Requiere: una entidad comida empleado.
         * Efectua : Crea una consulta para poner en cancelado los datos de una comida empleado.
         * Retorna : un arreglo de hileras con el resultado.
         */
        internal String[] cancelar(EntidadComidaEmpleado entidadComidaEmpleado)
        {
            String[] resultado = new String[3];

            try
            {
                if (entidadComidaEmpleado.Turnos[0] == 'C' || entidadComidaEmpleado.Turnos[1] == 'C' || entidadComidaEmpleado.Turnos[2] == 'C') //si alguna ya fue consumida
                {
                    throw new Exception();                                                                                                      //no se puede cancelar
                }
                else
                {
                    String update = "UPDATE RESERVA_EMPLEADO SET Desayuno ='X', Almuerzo ='X', cena='X' WHERE IDCOMIDAEMPLEADO = " + entidadComidaEmpleado.IdComida;
                    adaptador.insertar(update);
                    resultado[0] = "SUCCESS";
                    resultado[1] = "Exito: ";
                    resultado[2] = "Los datos se Modificaron correctamente.";
                }
            }
            catch (Exception e)
            {
                resultado[0] = "DANGER";
                resultado[1] = "ERROR: ";
                resultado[2] = "No se pudo cancelar el elemento, por favor verifique los datos, No se puede cancelar comidas que ya han sido servidas.";
            }
            return(resultado);
        }
Exemplo n.º 2
0
        /*
         * Requiere: Una Entidad Comida Empleado con los datos a insertar
         * Efectua: Crea la insercion a traves de los datos proporcionados en la entidad encapsulada e inserta los datos a traves del adaptador.
         * Retorna: Un arreglo de hileras con el mensaje de confirmacion u error de la consulta.
         */
        public String[] agregar(EntidadComidaEmpleado nuevo)
        {
            String[] resultado = new String[3];
            String   turnos    = "";

            turnos += "'" + (nuevo.Turnos[0]) + "'";
            turnos += ",";
            turnos += "'" + (nuevo.Turnos[1]) + "'";
            turnos += ", ";
            turnos += "'" + (nuevo.Turnos[1]) + "'";
            try
            {
                foreach (DateTime fecha in nuevo.Fechas)
                {
                    //Crea la sentencia en sql para insertar.
                    String insercion = " Insert into Reserva_EMPLEADO (idEmpleado,fecha, Pagado, notas, desayuno, almuerzo, cena, estacion)values (";
                    insercion += ("'" + nuevo.IdEmpleado + "',");
                    insercion += ("TO_DATE('" + fecha.ToString() + "' ,'MM/dd/yyyy hh:mi:ss AM') ,");
                    insercion += ("'" + ((nuevo.Pagado)?'T':'F') + "',");
                    insercion += ("'" + nuevo.Notas + "',");
                    insercion += turnos + ", '";
                    insercion += nuevo.Estacion + "' )";
                    resultado  = adaptador.insertar(insercion);
                }
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.ToString());
            }
            return(resultado);
        }
Exemplo n.º 3
0
        /*
         * Requiere: String con el identificador de la comida empleado
         * Efectua : llama a seleccionar empleado de la controladora de datos con el parametro dado y luego saca los datos retornados para finalmente encpsularlos.
         * Retorna : La entidad encapsulada.
         */
        internal EntidadComidaEmpleado consultar(int idReservacion)
        {
            List <DateTime> list = new List <DateTime>();

            char[]    turnos = new char[3];
            DataTable dt     = controladoraBD.getInformacionReservacionEmpleado(idReservacion);

            //IDEMPLEADO, FECHA, PAGADO, NOTAS, DESAYUNO, ALMUERZO, CENA, IDCOMIDAEMPLEADO, ESTACION

            //list.Add(DateTime.ParseExact(dt.Rows[0][1].ToString(), "g", System.Globalization.CultureInfo.InvariantCulture));//{8/20/2015 12:00:00 AM}
            turnos[0] = dt.Rows[0][4].ToString().ToCharArray(0, 1)[0];
            turnos[1] = dt.Rows[0][5].ToString().ToCharArray(0, 1)[0];
            turnos[2] = dt.Rows[0][6].ToString().ToCharArray(0, 1)[0];
            bool     pagado   = (dt.Rows[0][2].ToString().Equals("T"));
            String   notas    = dt.Rows[0][3].ToString();
            String   estacion = dt.Rows[0][8].ToString();
            DateTime fecha;

            DateTime.TryParse(dt.Rows[0][1].ToString(), out fecha);
            list.Add(fecha);
            EntidadComidaEmpleado consultada = new EntidadComidaEmpleado(dt.Rows[0][0].ToString(), estacion, list, turnos, pagado, notas, Int32.Parse(dt.Rows[0][7].ToString()));

            //String idEmpleado, List<DateTime> fechasReserva, bool[] turnos, bool pagado, String notas, int id = -1
            return(consultada);
        }
        /* Requiere: N/A
         * Efectua : pide los datos a la controladora y los coloca en su posicion en la GUI.
         * Retorna : N/A
         */
        protected void consultar()
        {
            seleccionada = controladora.consultar(idComida);
            /****************************<guardarDatosViejos>********************************************/
            idComidaViejo   = seleccionada.IdComida;
            idEmpleadoViejo = seleccionada.IdEmpleado;
            fechasViejo     = seleccionada.Fechas;
            turnosViejo     = seleccionada.Turnos;
            pagadoViejo     = seleccionada.Pagado;
            notasViejo      = seleccionada.Notas;
            /****************************</guardarDatosViejos>*******************************************/

            list        = seleccionada.Fechas;
            notas.Value = seleccionada.Notas;
            Debug.WriteLine("notas: " + seleccionada.Notas);
            this.checkboxDesayuno.Checked  = (seleccionada.Turnos[0] == 'R' || seleccionada.Turnos[0] == 'C');
            this.checkboxDesayuno.Disabled = (seleccionada.Turnos[0] == 'C');
            this.checkboxAlmuerzo.Checked  = (seleccionada.Turnos[1] == 'R' || seleccionada.Turnos[1] == 'C');
            this.checkboxAlmuerzo.Disabled = (seleccionada.Turnos[1] == 'C');
            this.checkboxCena.Checked      = (seleccionada.Turnos[2] == 'R' || seleccionada.Turnos[2] == 'C');
            this.checkboxCena.Disabled     = (seleccionada.Turnos[2] == 'C');
            tipodePago.SelectedIndex       = (seleccionada.Pagado) ? 0 : 1;
            this.fecha.Value = String.Format("{0:yyyy-MM-dd}", list[0]);
            bloquearInterfaz();
        }
        /*
         * Requiere: Parametros de eventos de la GUI
         * Efectua : envia los datos seleccionados a la controladora para ser eliminada.
         * Retorna : N/A
         */
        protected void clickEliminar(object sender, EventArgs e)
        {
            EntidadComidaEmpleado aCancelar = new EntidadComidaEmpleado(seleccionada.IdEmpleado, seleccionada.Estacion, seleccionada.Fechas, seleccionada.Turnos, seleccionada.Pagado, seleccionada.Notas, seleccionada.IdComida);

            String[] resultado = controladora.eliminar(aCancelar);
            mostrarMensaje(resultado[0], resultado[1], resultado[2]);//String tipoAlerta, String alerta, String mensaje
        }
        /*
         * Requiere: Un identificador comida de empleado campo en un entero
         * Efectua : Llama el metodos de cancelar de la controladora de comidas de empleado dando como parametro el valor recibido
         * Retorna : Un arreglo de hileras retornado por la controladora con el resultado.
         */
        internal String[] cancelarComidaRegular(int id)
        {
            String[] resultado             = new string[3];
            EntidadComidaEmpleado cancelar = controladoraComidaEmpleado.consultar(id);

            resultado = controladoraComidaEmpleado.eliminar(cancelar);

            return(resultado);
        }
Exemplo n.º 7
0
        /*
         * Requiere: Una entidad de comida Empleado con los datos antiguos y una Entidad de comida empleado con los datos encapsulados.
         * Efectua : Crea una consulta de actualizacion de los datos y lo actualiza en la base de datos.
         * Retorna : Retorna: Un arreglo de hileras con el mensaje de confirmacion u error de la consulta.
         */
        internal String[] modificar(EntidadComidaEmpleado seleccionada, EntidadComidaEmpleado nuevo)
        {
            String[] resultado = new String[3];
            try
            {
                foreach (DateTime fecha in nuevo.Fechas)
                {
                    string update = "UPDATE RESERVA_EMPLEADO SET ";
                    if (seleccionada.Turnos[0] == 'C' && nuevo.Turnos[0] != 'C') //DESAYUNO
                    {                                                            //Si ya se sirvio no se puede cancelar.
                        throw new Exception();
                    }
                    else
                    {
                        update += "Desayuno = '" + nuevo.Turnos[0] + "' ,";
                        //R = Reservado C= Consumido N=No reservado X=Cancelado
                    }
                    if (seleccionada.Turnos[1] == 'C' && nuevo.Turnos[1] != 'C') //ALMUERZO
                    {                                                            //Si ya se sirvio no se puede cancelar.
                        throw new Exception();
                    }
                    else
                    {
                        update += "Almuerzo = '" + nuevo.Turnos[1] + "' ,";
                        //R = Reservado C= Consumido N=No reservado X=Cancelado
                    }
                    if (seleccionada.Turnos[2] == 'C' && nuevo.Turnos[2] != 'C') //CENA
                    {                                                            //Si ya se sirvio no se puede cancelar.
                        throw new Exception();
                    }
                    else
                    {
                        update += "CENA = '" + nuevo.Turnos[1] + "', pagado =";
                        //R = Reservado C= Consumido N=No reservado X=Cancelado
                    }
                    update += (nuevo.Pagado) ? "'T'," : "'F',";  //Si esta o no pagado.
                    update += " notas = '" + nuevo.Notas + "' "; // predicado del update completo.
                    update += "estacion = '" + nuevo.Estacion + "' ";

                    //----------------------------------------------------------------------
                    update += "WHERE IDCOMIDAEMPLEADO =" + seleccionada.IdComida;
                    adaptador.insertar(update);
                    resultado[0] = "SUCCESS";
                    resultado[1] = "Exito: ";
                    resultado[2] = "Los datos se Modificaron correctamente.";
                }
            }
            catch (Exception e)
            {
                resultado[0] = "DANGER";
                resultado[1] = "ERROR: ";
                resultado[2] = "No se pudo modificar el elemento, por favor verifique los datos, No se puede cancelar comidas que ya han sido servidas.";
            }
            return(resultado);
        }
Exemplo n.º 8
0
        /*
         * Requiere:Argumentos de eventos de la GUI
         * Efectua :Pone visible el panel de botones para poder trabajar sobre la fila selecconada.
         * Retorna :N/A
         */
        protected void seleccionarComida(int index)
        {
            GridComidasReservadas.SelectedIndex = index;

            //  btnEditar.Disabled = false;
            //  btnCancelar.Disabled = false;

            if (GridComidasReservadas.SelectedRow.Cells[5].Text != "Comida regular")//* es mejor comparar strings con "mi string".equals()
            {
                comidaCampoConsultada = controladora.consultarComidaCampoSeleccionada(idEmpleado, GridComidasReservadas.SelectedRow.Cells[4].Text);
                seleccionado          = controladora.crearServicio(idEmpleado, int.Parse(comidaCampoConsultada.IdComidaCampo), comidaCampoConsultada.Fecha, "Comida Campo", "Notas no disponibles", comidaCampoConsultada.Estado, comidaCampoConsultada.Hora);
            }
            else
            {
                comidaEmpleadoSeleccionado = controladora.consultarComida(Int32.Parse(GridComidasReservadas.SelectedRow.Cells[4].Text));
                seleccionado = controladora.crearServicio(idEmpleado, comidaEmpleadoSeleccionado.IdComida, comidaEmpleadoSeleccionado.Fechas[0].ToString(), "Comida regular", comidaEmpleadoSeleccionado.Notas, "Depende del turno", "Depende del turno");
            }
        }
        /*
         * Requiere: Parametros de eventos de la GUI
         * Efectua : envia los datos seleccionados a la controladora para ser eliminada.
         * Retorna : N/A
         */
        protected void clickEliminar(object sender, EventArgs e)
        {
            EntidadComidaEmpleado aCancelar = new EntidadComidaEmpleado(seleccionada.IdEmpleado, seleccionada.Estacion, seleccionada.Fechas, seleccionada.Turnos, seleccionada.Pagado, seleccionada.Notas, seleccionada.IdComida);

            controladora.eliminar(aCancelar);
        }
Exemplo n.º 10
0
        /*
         * Requiere: N/A
         * Efectúa : Pide a la controladora de base de datos la información del tiquete y las guarda en una tabla de datos.
         * Retorna : la tabla de datos que se crea.
         */
        internal EntidadTiquete solicitarTiquete(int numTiquete)
        {
            DataTable tiquete = controladoraBD.consultarTiquete(numTiquete);

            if (tiquete.Rows.Count > 0)
            {
                String idServicio        = tiquete.Rows[0][0].ToString();
                int    consumido         = int.Parse(tiquete.Rows[0][1].ToString());
                String categoria         = tiquete.Rows[0][2].ToString();
                String idSolicitante     = tiquete.Rows[0][3].ToString();
                String tipoSolicitante   = tiquete.Rows[0][4].ToString();
                String fecha             = tiquete.Rows[0][5].ToString();
                String hora              = tiquete.Rows[0][6].ToString();
                String notas             = "No disponible";
                String anfitriona        = "No disponible";
                String estacion          = "No disponible";
                String nombreSolicitante = "No disponible";

                if ("empleado".Equals(tipoSolicitante) && "Comida de campo".Equals(categoria))
                {
                    EntidadEmpleado empleado = controladoraComidaEmp.getInformacionDelEmpleado(idSolicitante);
                    nombreSolicitante = empleado.Nombre + " " + empleado.Apellido;
                }
                else if ("empleado".Equals(tipoSolicitante) && "Comida regular".Equals(categoria))
                {
                    EntidadComidaEmpleado comidaEmp = controladoraComidaEmp.consultar(int.Parse(idServicio));
                    EntidadEmpleado       empleado  = controladoraComidaEmp.getInformacionDelEmpleado(idSolicitante);
                    nombreSolicitante = empleado.Nombre + " " + empleado.Apellido;
                    notas             = comidaEmp.Notas;
                }
                else if ("reservacion".Equals(tipoSolicitante) && "Paquete".Equals(categoria))
                {
                    DataTable paquete = controladoraServicios.solicitarInfoPaquete(idServicio);
                    notas             = paquete.Rows[0][1].ToString();
                    anfitriona        = paquete.Rows[0][2].ToString();
                    estacion          = paquete.Rows[0][3].ToString();
                    nombreSolicitante = paquete.Rows[0][4].ToString();
                }
                else if ("reservacion".Equals(tipoSolicitante) && "Comida Extra".Equals(categoria))
                {
                    /*
                     * EntidadComidaExtra comidaExtra = controladoraComidaExtra.guardarServicioSeleccionado(idSolicitante, idServicio, fecha, hora);
                     * notas = comidaExtra.Descripcion;
                     * DataTable servicio = controladoraReservaciones.solicitarInfo(idSolicitante);
                     * anfitriona = servicio.Rows[0][2].ToString();
                     * estacion = servicio.Rows[0][3].ToString();
                     * nombreSolicitante = servicio.Rows[0][4].ToString();
                     * */
                }
                else if ("reservacion".Equals(tipoSolicitante) && "Comida Campo".Equals(categoria))
                {
                    EntidadComidaCampo comidaCampo = controladoraComidaCampo.guardarComidaSeleccionada(idSolicitante, idServicio);

                    DataTable servicio = controladoraReservaciones.solicitarInfo(idSolicitante);
                    anfitriona        = servicio.Rows[0][2].ToString();
                    estacion          = servicio.Rows[0][3].ToString();
                    nombreSolicitante = servicio.Rows[0][4].ToString();
                }

                seleccionado = new EntidadTiquete(numTiquete, idServicio, tipoSolicitante, consumido, idSolicitante, categoria, notas, anfitriona, estacion, nombreSolicitante, fecha, hora);
            }
            else
            {
                seleccionado = null;
            }
            return(seleccionado);
        }
Exemplo n.º 11
0
 /*
  * Requiere: EntidadComidaEmpleado con los daots a cancelar
  * Efectua : llama a cancelar de la controladora de base de datos con el parametro dado.
  * Retorna : un arreglo de hileras con el resultado de la controladora de base de datos.
  */
 internal String[] eliminar(EntidadComidaEmpleado entidadComidaEmpleado)
 {
     return(controladoraBD.cancelar(entidadComidaEmpleado));
 }
Exemplo n.º 12
0
        /*
         * Requiere: una entidad comida empleado ocn los datos originales, un identificador de empleado en una hilera, una lista de fechas para la reservacion, un arreglo de caracteres con la informacion de los turnos y una hilera con las notas
         * Efectua : encapsula los datos y los envia a la controladora de base de datos para ser modificados junto con los originales
         * Retorna : un arreglo de hileras con el resultado de la controladora de base de datos.
         */

        internal String[] modificar(EntidadComidaEmpleado seleccionada, string idEmpleado, String estacion, List <DateTime> fechasReserva, char[] turnos, bool pagado, String notas)
        {
            EntidadComidaEmpleado nuevo = new EntidadComidaEmpleado(idEmpleado, estacion, fechasReserva, turnos, pagado, notas, seleccionada.IdComida);

            return(controladoraBD.modificar(seleccionada, nuevo));
        }
Exemplo n.º 13
0
        /*
         * Requiere: un identificador de empleado en una hilera, una lista de fechas para la reservacion, un arreglo de caracteres con la informacion de los turnos y una hilera con las notas
         * Efectua : encapsula los datos y los envia a la controladora de base de datos para ser insertados
         * Retorna : un arreglo de hileras con el resultado de la controladora de base de datos.
         */
        public String[] agregar(String idEmpleado, String estacion, List <DateTime> fechasReserva, char[] turnos, bool pagado, String notas)
        {
            EntidadComidaEmpleado nuevo = new EntidadComidaEmpleado(idEmpleado, estacion, fechasReserva, turnos, pagado, notas, -1);

            return(controladoraBD.agregar(nuevo));
        }