/*Método para insertar los telefonos de una oficina usuaria en la base de datos
         * Requiere: un objeto tipo EntidadTelOficina con los datos a guardar
         * Modifica: crea la sentencia sql y la ejecuta
         * Retorna: true si pudo almacenar los datos en la base de datos, false si no pudo
         */
        public bool insertarTelefono(EntidadTelOficina nuevo)
        {
            try
            {
                string insercion = "INSERT INTO Telefono_Oficina (id_oficina, num_telefono) VALUES ('" + nuevo.getIdOficina + "', '" + nuevo.getNumTelefono + "')";
                return acceso.insertarDatos(insercion);

            }
            catch (SqlException e)
            {
                return false;
            }
        }
        /*Método para ejecutar la acción del IMEC correspondiente a la base de datos.
        * Requiere: un modo que corresponde a 1 si es una inserción, 2 - modificación y 3 Borrado.
        * Modifica una variable boolean dependiendo si la inserción el borrado y el modificar se llevan a cabo correctamente.
        * Retorna el valor de la variable booleana.
        */
        public bool ejecutarAccion(int modo, int accion, Object[] datos, String nombre, string perfil)
        {

            Boolean resultado = false;
            switch (modo)
            {
                case 1:
                    { // INSERTAR
                        if (accion == 1) //inserta oficina usuaria
                        {
                            EntidadOficinaUsuaria nuevo = new EntidadOficinaUsuaria(datos);
                            resultado = controladoraBDProyecto.insertarOficina(nuevo);
                        }
                        else if (accion == 2) //inserta telefonos de oficina usuaria
                        {
                            EntidadTelOficina telefonosOficina = new EntidadTelOficina(datos);
                            resultado = controladoraBDProyecto.insertarTelefono(telefonosOficina);
                        }
                        else if (accion == 3) //inserta un nuevo proyecto
                        {
                            EntidadProyecto proyecto = new EntidadProyecto(datos);
                            resultado = controladoraBDProyecto.insertarProyecto(proyecto);
                        }
                        else if (accion == 4) //insertar miembros de un equipo de pruebas
                        {
                            ControladoraRecursos controladoraRH = new ControladoraRecursos();
                            resultado = controladoraRH.ejecutarAccion(1, 5, datos, "");
                        }
                        else if (accion == 5) //Insertar requerimientos
                        {
                            EntidadRequerimiento requerimiento = new EntidadRequerimiento(datos);
                            resultado = controladoraBDProyecto.insertarRequerimiento(requerimiento);
                        }
                    }
                    break;
                case 2:
                    { // MODIFICAR

                        if (accion == 1)//PROYECTO
                        {
                            EntidadProyecto entidadP = new EntidadProyecto(datos);
                            //int idProyecto = Int32.Parse(nombre); //supongo que nombre viene el id sino habría que hacer llamado de otro método
                            return controladoraBDProyecto.modificarProyecto(entidadP, nombre);
                        }
                        else if (accion == 2)//OFICINA USUARIA
                        {
                            EntidadOficinaUsuaria entidadOU = new EntidadOficinaUsuaria(datos);

                            resultado = controladoraBDProyecto.modificarOfUsuaria(entidadOU, nombre);
                        }
                    }
                    break;
                case 3:
                    { //ELIMINAR
                        if (accion == 3)//TELEFONOOFICINAUSUARIA
                        {
                            int idOficinaUsuaria = Int32.Parse(nombre); //en nombre viene el id de la oficina usuaria, para eliminarlo
                            resultado = controladoraBDProyecto.eliminarTelefonoOficinaUsuaria(idOficinaUsuaria);
                        }
                        else if (accion == 4)//TRABAJA_EN
                        {
                            int idProyecto = Int32.Parse(nombre);
                            controladoraRH = new ControladoraRecursos();
                            resultado = controladoraRH.eliminarTrabaja_En(idProyecto);//en nombre viene elidmiembroConsultado, idProyectoConsultado, para eliminarlo
                        }
                    }
                    break;
            }
            return resultado;

        }