/**
   * Busca una lista de actividades dentro de un cronograma en un lapso académico
   *
   * @param lapso
   * @return List<Cronograma> Lista de elementos insertar en el cronograma
   * @throws No dispara ninguna excepción.
   */
  public List<String> historicoCronogramaActividades(LapsoAcademico lapso) {
    List<String> listaElementosAInsertar = new ArrayList<String>();
    String elementoAInsertar;
    List<Cronograma> cronogramas = iCronograma.findById_CodigoLapso(lapso.getCodigoLapso());

    for (int i = 0; i < cronogramas.size(); i++) {
      Cronograma cronograma = cronogramas.get(i);
      elementoAInsertar =
          "INSERT INTO sigarep.cronograma(codigo_lapso, id_actividad, estatus, fecha_fin, fecha_inicio, hora_inicio, lugar, observacion, id_instancia_apelada)"
              + "VALUES ('"
              + cronograma.getId().getCodigoLapso()
              + "',"
              + cronograma.getId().getIdActividad()
              + ",'"
              + cronograma.getEstatus()
              + "', '"
              + cronograma.getFechaFin()
              + "','"
              + cronograma.getFechaInicio()
              + "','"
              + cronograma.getHoraInicio()
              + "','"
              + cronograma.getLugar()
              + "','"
              + cronograma.getObservacion()
              + "','"
              + cronograma.getActividad().getInstanciaApelada().getInstanciaApelada()
              + "');";
      listaElementosAInsertar.add(elementoAInsertar);
    }
    return listaElementosAInsertar;
  }
 /**
  * Busca dentro del cronograma actual la última fecha con una actividad
  *
  * @return Una fecha.
  * @throws No dispara ninguna excepción.
  */
 public Date buscarUltimaFechaDelCronogramaActual() {
   return iCronograma.buscarUltimaFechaCronogramaActual();
 }
 /**
  * Busca una lista de todos los cronogramas donde coincida su código de lapso con el código de
  * lapso que entra por parametro.
  *
  * @param codigoLapso.
  * @return List<Cronograma> Lista de cronogramas
  * @throws No dispara ninguna excepción.
  */
 public List<Cronograma> buscarTodosCronogramas(String codigoLapso) {
   List<Cronograma> listaCronogramas = iCronograma.findById_CodigoLapso(codigoLapso);
   return listaCronogramas;
 }
 /**
  * Busca una lista de todos los cronogramas
  *
  * @return List<Cronograma> Lista de cronogramas
  * @throws No dispara ninguna excepción.
  */
 public List<Cronograma> buscarTodos() {
   return iCronograma.findAll();
 }
 /**
  * Guarda un cronograma
  *
  * @param cronograma.
  * @throws No dispara ninguna excepción.
  */
 public Cronograma guardar(Cronograma cronograma) {
   return iCronograma.save(cronograma);
 }
 /**
  * Busca una lista de todos los cronogramas activos.
  *
  * @return List<Cronograma> Lista de Cronograma.
  * @throws No dispara ninguna excepción.
  */
 public List<Cronograma> listadoCronograma() {
   List<Cronograma> cronogramaLista = iCronograma.findByEstatusTrue();
   return cronogramaLista;
 }
 /**
  * Elimina un cronograma . Busca el id del cronograma, actualiza estatus(false) y lo guarda en
  * base de datos.
  *
  * @param id.
  * @throws No dispara ninguna excepción.
  */
 public void eliminarCronograma(CronogramaPK id) {
   Cronograma c = iCronograma.findOne(id);
   c.setEstatus(false);
   iCronograma.save(c);
 }