//ActualizarProyecto();
        //Requiere: Recibir la información de proyecto encapsulado
        //Modifica: Modifica los valores para el proyecto ingresado por parámetro.
        //Retorna: Un 1 en caso de que la operación haya sido exitosa, otro número en caso contrario.
        public int ActualizarProyecto(EntidadProyecto datos)
        {
            using (SqlCommand comando = new SqlCommand("dbo.Modificar_Proyecto"))
            {
                //  comando.CommandText = "Insertar_Proyecto";
                comando.CommandType = CommandType.StoredProcedure;

                //  comando.Parameters.Add(new SqlParameter("@id_proyecto", datos.Id_proyecto));

                comando.Parameters.Add(new SqlParameter("@id", datos.Id_proyecto));

                comando.Parameters.Add(new SqlParameter("@nombre_sistema", datos.Nombre_sistema));

                comando.Parameters.Add(new SqlParameter("@objetivo_general", datos.Objetivo_general));

                comando.Parameters.Add(new SqlParameter("@fecha_asignacion", datos.Fecha_asignacion));

                comando.Parameters.Add(new SqlParameter("@estado", datos.Estado));

                comando.Parameters.Add(new SqlParameter("@nombre_rep", datos.Nombre_representante));

                comando.Parameters.Add(new SqlParameter("@telefono_rep", datos.Telefono_representante));

                comando.Parameters.Add(new SqlParameter("@oficina_rep", datos.Oficina_representante));

                if(datos.LiderProyecto.ToString() != "")
                comando.Parameters.Add(new SqlParameter("@LiderProyecto", datos.LiderProyecto));
                else
                    comando.Parameters.Add(new SqlParameter("@LiderProyecto", DBNull.Value));

                return acceso_BD.Insertar_Proced_Almacenado(comando);

            }
        }
 /*
 Requiere: Los datos ingresados atravez de la interfaz mediante un object[]
 Modifica: Actualiza la tupla correspondiente mediante la controladora de BD
 Retorna: N/A
 */
 public int ActualizarProyecto(object[] datos)
 {
     if (datos[8].ToString() != "")
     {
         datos[8] = controlRH.solicitarCedulaRecurso(datos[8].ToString()).ToString();
         controlRH.addProyecto(Int32.Parse(datos[8].ToString()), Int32.Parse(datos[0].ToString()));
     }
     else
         datos[8] = "";
     EntidadProyecto objProyecto = new EntidadProyecto(datos);
     int a = controlBD.ActualizarProyecto(objProyecto);
     return a;
 }
        public int InsertarProyecto_SinLider(EntidadProyecto datos)
        {
            using (SqlCommand comando = new SqlCommand("dbo.Insertar_Proyecto_SinLider"))
            {
                //  comando.CommandText = "Insertar_Proyecto";
                comando.CommandType = CommandType.StoredProcedure;

                //  comando.Parameters.Add(new SqlParameter("@id_proyecto", datos.Id_proyecto));

                comando.Parameters.Add(new SqlParameter("@nombre_sistema", datos.Nombre_sistema));

                comando.Parameters.Add(new SqlParameter("@objetivo_general", datos.Objetivo_general));

                comando.Parameters.Add(new SqlParameter("@fecha_asignacion", datos.Fecha_asignacion));

                comando.Parameters.Add(new SqlParameter("@estado", datos.Estado));

                comando.Parameters.Add(new SqlParameter("@nombre_rep", datos.Nombre_representante));

                comando.Parameters.Add(new SqlParameter("@telefono_rep", datos.Telefono_representante));

                comando.Parameters.Add(new SqlParameter("@oficina_rep", datos.Oficina_representante));

                return acceso_BD.Insertar_Proced_Almacenado(comando);

            }
        }
 /*
 Requiere: Los siguientes object [].
 Modifica: Solicita a la entidad de proyecto crear un objeto con el parámetro y llama a controladoraBDProyecto para hacer la inserción.
 Retorna: un 0 (cero) en caso de que se haya insertado correctamente, un -1(menos uno) en el caso contrario.
 */
 public int IngresaProyecto(object[] datos)
 {
     int a = 0;
     if (datos[8].ToString() != "")
     {
         datos[8] = controlRH.solicitarCedulaRecurso(datos[8].ToString()).ToString();
         controlRH.addProyecto(Int32.Parse(datos[8].ToString()), Int32.Parse(datos[0].ToString()));
         EntidadProyecto objProyecto = new EntidadProyecto(datos);
         a = controlBD.InsertarProyecto_SinLider(objProyecto);
     }
     else
     {
         datos[8] = "";
         EntidadProyecto objProyecto = new EntidadProyecto(datos);
         a = controlBD.InsertarProyecto_SinLider(objProyecto);
     }
     return a;
 }
 /*
 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;
 }
        /*
         * Requiere: String nombreProyecto y nombre del modulo
         * Modifica: N/A.
         * Retorna: List<object> con los datos del proyecto solicitado.
         */
        public List<object> reporteProyecto(EntidadProyecto entidad)
        {
            List<Object> retorno = new List<object>();

            retorno.Add(entidad.Nombre_sistema);
            retorno.Add(entidad.Objetivo_general);
            retorno.Add(entidad.Fecha_asignacion);
            string estado = "";
            if (entidad.Estado != "")
            {
                switch (Int32.Parse(entidad.Estado))
                {

                    case 1:
                        {
                            estado = "Pendiente";
                        }
                        break;
                    case 2:
                        {
                            estado = "Asignado";
                        }
                        break;
                    case 3:
                        {
                            estado = "En ejecución";
                        }
                        break;
                    case 4:
                        {
                            estado = "Finalizado";
                        }
                        break;
                    case 5:
                        {
                            estado = "Cerrado";
                        }
                        break;
                }
            }
            retorno.Add(estado);
            retorno.Add(entidad.Oficina_representante);
            retorno.Add(entidad.Telefono_representante);
            retorno.Add(entidad.Nombre_representante);
            retorno.Add(entidad.LiderProyecto);
            retorno.Add(controlRH.solicitarNombreRecursosPorProyecto(Int32.Parse(entidad.Id_proyecto)));

            return retorno;
        }