/*
  * Requiere: N/A
  * Modifica: Inicializa las controladoras.
  * Retorna: N/A.
  */
 public ControladoraReportes()
 {
     controlProy = new ControladoraProyecto();
     controlDis = new ControladoraDisenno();
     controlCasos = new ControladoraCasosPrueba();
     controlEjec = new ControladoraEjecucionPrueba();
     controlRH = new ControladoraRecursosHumanos();
     controlReq = new ControladoraRequerimiento();
 }
 protected void Session_End(Object sender, EventArgs e)
 {
     try
     {
         string id = Session["id_logeado"].ToString();
         Console.WriteLine("Finish");
         Controladoras.ControladoraRecursosHumanos controladoraRH = new Controladoras.ControladoraRecursosHumanos();
         controladoraRH.estadoLoggeado(id, "0");
         //Response.Redirect(Request.Url.GetLeftPart(UriPartial.Authority) + VirtualPathUtility.ToAbsolute("~\\Default.aspx"));
         //string id = HttpContext.Current.Session.SessionID;
     }
     catch (NullReferenceException nn)
     {
         Console.WriteLine("Referencia a null "+nn.ToString());
     }
 }
        /*
         * Requiere: N/A
         * Modifica: Se encarga de desplegar la información del diseño asociado, llenando las etiquetas en la parte superior de la pantalla.
         * Retorna: N/A
         */
        protected void llenarEtiquetasDiseno()
        {
            ControladoraRecursosHumanos crh = new ControladoraRecursosHumanos();

            List<string> la_lista = infoDisenno();
            Proposito.Text=la_lista[0];
            if (Convert.ToInt32(la_lista[1])==2)
            {
                Nivel.Text="Unitaria";
            }
            else if (Convert.ToInt32(la_lista[1]) == 3)
            {
                Nivel.Text="Integración";
            }
            else if (Convert.ToInt32(la_lista[1]) == 4)
            {
                Nivel.Text="Sistema";
            }
            else if (Convert.ToInt32(la_lista[1]) == 5)
            {
                Nivel.Text="Aceptación";
            }

            if (Convert.ToInt32(la_lista[2]) == 2)
            {
                Tecnica.Text="Caja Negra";
            }
            else if (Convert.ToInt32(la_lista[2]) == 3)
            {
                Tecnica.Text="Caja Blanca";
            }
            else if (Convert.ToInt32(la_lista[2]) == 4)
            {
                Tecnica.Text = "Exploratoria";
            }

            Proyecto.Text=crh.solicitarNombreProyecto(Convert.ToInt32(la_lista[8]));

            string[] esplit = la_lista[9].Split(';');
            string la_hilera = "";
            for (int i = 1; i < esplit.Length ; i++)
            {
                if (i == (esplit.Length)-1)
                {
                    la_hilera += esplit[i];
                }
                else
                {
                    la_hilera += esplit[i] + ",   ";
                }

            }
            Requerimientos.Text = la_hilera;
        }
 public string solicitarNombreRecursoSinProyecto()
 {
     controlRH = new ControladoraRecursosHumanos();
     string regreso = controlRH.solicitarNombreRecursoSinProyecto();
     return regreso;
 }
 /*
    Requiere: N/A
    Modifica: Usa la controladora de RH
    Retorna: un booleano que indica si esta loggeado un Admin o un Miembro de equipo
    */
 public bool PerfilDelLogeado()
 {
     controlRH = new ControladoraRecursosHumanos();
     bool retorno;
     string perfil = controlRH.perfilDelLoggeado();
     if (perfil == "Administrador")
         retorno = true;
     else
         retorno = false;
     return retorno;
 }
 /*
    Requiere: N/A
    Modifica: N/A
    Retorna: un string con la cedula del usuario logeado
    */
 public string IdLogeado()
 {
     controlRH = new ControladoraRecursosHumanos();
     return controlRH.idDelLoggeado().ToString();
 }
 /*
 Requiere: N/A
 Modifica: Se solicita una lista del id y nombre de todos los proyectos almacenados en la BD
 Retorna: Lista con id y nombre de todos los proyectos almacenados en la BD
 */
 public DataTable ConsultarProyectoIdNombre()
 {
     controlRH = new ControladoraRecursosHumanos();
     int id = controlRH.proyectosDelLoggeado();
     if (controlRH.perfilDelLoggeado() == "Administrador")
     {
         return controlBD.ConsultarProyectoIdNombre();
     }
     else
     {
         if (id == -1)
             return new DataTable();
         else
             return controlBD.ConsultarProyectoIdNombre(id);
     }
 }
 /*
 Requiere: int id_proyecto
 Modifica: Se solicita el: objetivo_general, fecha_asignacion, estado, nombre_resp, telefono_resp y oficina_resp del proyecto con el id que concuerde con el ingresado por parámetro.
 Retorna: Lista de string con: objetivo_general, fecha_asignacion, estado, nombre_resp, telefono_resp y oficina_resp.
 */
 public EntidadProyecto ConsultarProyecto(int id_Proyecto)
 {
     DataTable dt = controlBD.ConsultarProyecto(id_Proyecto);
     if (dt.Rows.Count == 1)
     {
         Object[] datos = new Object[9];
         EntidadProyecto retorno;
         controlRH = new ControladoraRecursosHumanos();
         datos[0] = dt.Rows[0][0].ToString();
         datos[1] = dt.Rows[0][1].ToString();
         datos[2] = dt.Rows[0][2].ToString();
         datos[3] = dt.Rows[0][3].ToString();
         datos[4] = dt.Rows[0][4].ToString();
         datos[5] = dt.Rows[0][5].ToString();
         datos[6] = dt.Rows[0][6].ToString();
         datos[7] = dt.Rows[0][7].ToString();
         if (dt.Rows[0][9].ToString() != "")
             datos[8] = controlRH.solicitarNombreRecurso(Int32.Parse(dt.Rows[0][9].ToString())).ToString();
         else
             datos[8] = "";
         //datos[8] = dt.Rows[0][8].ToString();
         retorno = new EntidadProyecto(datos);
         return retorno;
     }
     else return null;
 }