From 55baf87f7586d9cdbd5d4cf015fcfab460e6a80f Mon Sep 17 00:00:00 2001 From: Lucas D'Avila Date: Sun, 16 Nov 2014 17:31:22 -0200 Subject: [PATCH] Adicionado configuração para desabilitar rematricula automatica. --- ieducar/configuration/ieducar.ini | 4 ++++ ieducar/intranet/educar_iniciar_ano_letivo.php | 157 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------- 2 files changed, 78 insertions(+), 83 deletions(-) diff --git a/ieducar/configuration/ieducar.ini b/ieducar/configuration/ieducar.ini index a96bb21..4ed3718 100644 --- a/ieducar/configuration/ieducar.ini +++ b/ieducar/configuration/ieducar.ini @@ -147,6 +147,10 @@ app.recaptcha.options.secure = true app.recaptcha.options.lang = pt app.recaptcha.options.theme = white +; por padrao o sistema efetua a rematricula automatica de alunos ao inicializar um novo ano letivo, +; esta configuracao permite desativar este comportamento. +;app.regras_negocio.desativar_rematricula_automatica = true + [development : production] ; Herda configurações de banco de dados diff --git a/ieducar/intranet/educar_iniciar_ano_letivo.php b/ieducar/intranet/educar_iniciar_ano_letivo.php index e99b518..a2525c2 100644 --- a/ieducar/intranet/educar_iniciar_ano_letivo.php +++ b/ieducar/intranet/educar_iniciar_ano_letivo.php @@ -156,94 +156,23 @@ class indice extends clsCadastro */ $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_cod_escola,$this->ano,$this->pessoa_logada,$this->pessoa_logada,1,null,null,1); - if(!$obj_ano_letivo->edita()) - { - echo ""; + "); } - else - { - // lista todos alunos desse Escola que tem a ultima matricula no ano anterior e situacao APROVADO - $obj_matricula = new clsPmieducarMatricula(); - $lst_matricula = $obj_matricula->lista( null,null,$this->ref_cod_escola,null,null,null,null,1,null,null,null,null,1,$this->ano-1,null,null,1 ); - - if ( is_array($lst_matricula)) - { - foreach ($lst_matricula AS $key => $matricula) - { - $obj_sequencia = new clsPmieducarSequenciaSerie(); - $lst_sequencia = $obj_sequencia->lista( $matricula['ref_ref_cod_serie'],null,null,null,null,null,null,null,1 ); - // verifica qual eh a serie da sequencia - - if ( is_array($lst_sequencia) && (count($lst_sequencia) == 1) ) - { -// echo "
"; print_r($lst_sequencia);die;
-						$det_sequencia = array_shift($lst_sequencia);
-						$serie_destino = $det_sequencia["ref_serie_destino"];
-
-						
-						$obj_serie = new clsPmieducarSerie( $serie_destino );
-						$det_serie = $obj_serie->detalhe();
-						
-						//verificar aqui se a escola possui o curso
-//						echo "
"; print_r($matricula); die();
-						$obj_escola_curso = new clsPmieducarEscolaCurso($this->ref_cod_escola, $det_serie["ref_cod_curso"]);
-						if (is_array($obj_escola_curso->detalhe()))
-						{
-							$obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 );
-							$editou = $obj->edita();
-							if( $editou )
-							{
-								$obj = new clsPmieducarMatricula( null,null,$this->ref_cod_escola,$serie_destino,null,$this->pessoa_logada,$matricula['ref_cod_aluno'],3,null,null,1,$this->ano,1,null,null,null,null,$det_serie["ref_cod_curso"] );
-								$cadastra = $obj->cadastra();
-								if( !$cadastra )
-								{
-									echo "";
-								}
-							}
-						}
-					}
-				}
-			}
 
-			// lista todos alunos desse Escola que tem a ultima matricula no ano anterior e situacao REPROVADO
-			$obj_matricula = new clsPmieducarMatricula();
-			$lst_matricula = $obj_matricula->lista( null,null,$this->ref_cod_escola,null,null,null,null,2,null,null,null,null,1,$this->ano-1,null,null,1 );
-			if ( is_array($lst_matricula) )
-			{
-//				echo "
"; print_r($lst_matricula);die;
-				foreach ($lst_matricula AS $key => $matricula)
-				{
-					$obj_serie = new clsPmieducarSerie( $matricula['ref_ref_cod_serie'] );
-					$det_serie = $obj_serie->detalhe();
-
-					$obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 );
-					$editou1 = $obj->edita();
-					if( $editou1 )
-					{
-						$obj = new clsPmieducarMatricula( null,null,$this->ref_cod_escola,$matricula['ref_ref_cod_serie'],null,$this->pessoa_logada,$matricula['ref_cod_aluno'],3,null,null,1,$this->ano,1,null,null,null,null,$det_serie["ref_cod_curso"] );
-						$cadastra1 = $obj->cadastra();
-						if( !$cadastra1 )
-						{
-							echo "";
-						}
-					}
-				}
-			}
-
-			echo "";
+		if (! $GLOBALS['coreExt']['Config']->app->regras_negocio->desativar_rematricula_automatica) {
+			$this->rematricularAlunosAprovados();
+			$this->rematricularAlunosReprovados();
 		}
+
+		die("");
 	}
 
 	function finalizarAnoLetivo()
@@ -298,7 +227,69 @@ class indice extends clsCadastro
 		}
 	}
 
+	function rematricularAlunosAprovados() {
+		$obj_matricula = new clsPmieducarMatricula();
+		$lst_matricula = $obj_matricula->lista( null,null,$this->ref_cod_escola,null,null,null,null,1,null,null,null,null,1,$this->ano-1,null,null,1 );
+
+		if (! is_array($lst_matricula))
+			return;
+
+		foreach ($lst_matricula AS $key => $matricula) {
+			$obj_sequencia = new clsPmieducarSequenciaSerie();
+			$lst_sequencia = $obj_sequencia->lista( $matricula['ref_ref_cod_serie'],null,null,null,null,null,null,null,1 );
+
+			if ( is_array($lst_sequencia) && (count($lst_sequencia) == 1) ) {
+				$det_sequencia = array_shift($lst_sequencia);
+				$serie_destino = $det_sequencia["ref_serie_destino"];
 
+				$obj_serie = new clsPmieducarSerie( $serie_destino );
+				$det_serie = $obj_serie->detalhe();
+
+				$obj_escola_curso = new clsPmieducarEscolaCurso($this->ref_cod_escola, $det_serie["ref_cod_curso"]);
+
+				if (is_array($obj_escola_curso->detalhe())) {
+					$obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 );
+					$editou = $obj->edita();
+					if( $editou ) {
+						$obj = new clsPmieducarMatricula( null,null,$this->ref_cod_escola,$serie_destino,null,$this->pessoa_logada,$matricula['ref_cod_aluno'],3,null,null,1,$this->ano,1,null,null,null,null,$det_serie["ref_cod_curso"] );
+						$cadastra = $obj->cadastra();
+						if( !$cadastra ) {
+							echo "";
+						}
+					}
+				}
+			}
+		}
+	}
+
+	function rematricularAlunosReprovados() {
+		$obj_matricula = new clsPmieducarMatricula();
+		$lst_matricula = $obj_matricula->lista( null,null,$this->ref_cod_escola,null,null,null,null,2,null,null,null,null,1,$this->ano-1,null,null,1 );
+
+		if (! is_array($lst_matricula) )
+			return;
+
+		foreach ($lst_matricula AS $key => $matricula) {
+			$obj_serie = new clsPmieducarSerie( $matricula['ref_ref_cod_serie'] );
+			$det_serie = $obj_serie->detalhe();
+
+			$obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 );
+			$editou1 = $obj->edita();
+			if( $editou1 ) {
+				$obj = new clsPmieducarMatricula( null,null,$this->ref_cod_escola,$matricula['ref_ref_cod_serie'],null,$this->pessoa_logada,$matricula['ref_cod_aluno'],3,null,null,1,$this->ano,1,null,null,null,null,$det_serie["ref_cod_curso"] );
+				$cadastra1 = $obj->cadastra();
+				if( !$cadastra1 ) {
+					echo "";
+				}
+			}
+		}
+	}
 }
 
 // cria uma extensao da classe base
--
libgit2 0.21.2