Commit 7318d38858f0ac6e2f77deb6320ab233ade952e4
Exists in
master
Merge pull request #72 from ieducativa/configuracao-desabilitar-rematricula-automatica
Adicionado configuração para desabilitar rematricula automatica.
Showing
2 changed files
with
78 additions
and
83 deletions
Show diff stats
ieducar/configuration/ieducar.ini
@@ -147,6 +147,10 @@ app.recaptcha.options.secure = true | @@ -147,6 +147,10 @@ app.recaptcha.options.secure = true | ||
147 | app.recaptcha.options.lang = pt | 147 | app.recaptcha.options.lang = pt |
148 | app.recaptcha.options.theme = white | 148 | app.recaptcha.options.theme = white |
149 | 149 | ||
150 | +; por padrao o sistema efetua a rematricula automatica de alunos ao inicializar um novo ano letivo, | ||
151 | +; esta configuracao permite desativar este comportamento. | ||
152 | +;app.regras_negocio.desativar_rematricula_automatica = true | ||
153 | + | ||
150 | [development : production] | 154 | [development : production] |
151 | ; Herda configurações de banco de dados | 155 | ; Herda configurações de banco de dados |
152 | 156 |
ieducar/intranet/educar_iniciar_ano_letivo.php
@@ -156,94 +156,23 @@ class indice extends clsCadastro | @@ -156,94 +156,23 @@ class indice extends clsCadastro | ||
156 | */ | 156 | */ |
157 | 157 | ||
158 | $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_cod_escola,$this->ano,$this->pessoa_logada,$this->pessoa_logada,1,null,null,1); | 158 | $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_cod_escola,$this->ano,$this->pessoa_logada,$this->pessoa_logada,1,null,null,1); |
159 | - if(!$obj_ano_letivo->edita()) | ||
160 | - { | ||
161 | - echo "<script> | 159 | + |
160 | + if(! $obj_ano_letivo->edita()) { | ||
161 | + die("<script> | ||
162 | alert('Erro ao finalizar o ano letivo!'); | 162 | alert('Erro ao finalizar o ano letivo!'); |
163 | window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | 163 | window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; |
164 | - </script>"; | 164 | + </script>"); |
165 | } | 165 | } |
166 | - else | ||
167 | - { | ||
168 | - // lista todos alunos desse Escola que tem a ultima matricula no ano anterior e situacao APROVADO | ||
169 | - $obj_matricula = new clsPmieducarMatricula(); | ||
170 | - $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 ); | ||
171 | - | ||
172 | - if ( is_array($lst_matricula)) | ||
173 | - { | ||
174 | - foreach ($lst_matricula AS $key => $matricula) | ||
175 | - { | ||
176 | - $obj_sequencia = new clsPmieducarSequenciaSerie(); | ||
177 | - $lst_sequencia = $obj_sequencia->lista( $matricula['ref_ref_cod_serie'],null,null,null,null,null,null,null,1 ); | ||
178 | - // verifica qual eh a serie da sequencia | ||
179 | - | ||
180 | - if ( is_array($lst_sequencia) && (count($lst_sequencia) == 1) ) | ||
181 | - { | ||
182 | -// echo "<pre>"; print_r($lst_sequencia);die; | ||
183 | - $det_sequencia = array_shift($lst_sequencia); | ||
184 | - $serie_destino = $det_sequencia["ref_serie_destino"]; | ||
185 | - | ||
186 | - | ||
187 | - $obj_serie = new clsPmieducarSerie( $serie_destino ); | ||
188 | - $det_serie = $obj_serie->detalhe(); | ||
189 | - | ||
190 | - //verificar aqui se a escola possui o curso | ||
191 | -// echo "<pre>"; print_r($matricula); die(); | ||
192 | - $obj_escola_curso = new clsPmieducarEscolaCurso($this->ref_cod_escola, $det_serie["ref_cod_curso"]); | ||
193 | - if (is_array($obj_escola_curso->detalhe())) | ||
194 | - { | ||
195 | - $obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 ); | ||
196 | - $editou = $obj->edita(); | ||
197 | - if( $editou ) | ||
198 | - { | ||
199 | - $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"] ); | ||
200 | - $cadastra = $obj->cadastra(); | ||
201 | - if( !$cadastra ) | ||
202 | - { | ||
203 | - echo "<script> | ||
204 | - alert('Erro ao matricular os alunos da Escola!'); | ||
205 | - window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | ||
206 | - </script>"; | ||
207 | - } | ||
208 | - } | ||
209 | - } | ||
210 | - } | ||
211 | - } | ||
212 | - } | ||
213 | 166 | ||
214 | - // lista todos alunos desse Escola que tem a ultima matricula no ano anterior e situacao REPROVADO | ||
215 | - $obj_matricula = new clsPmieducarMatricula(); | ||
216 | - $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 ); | ||
217 | - if ( is_array($lst_matricula) ) | ||
218 | - { | ||
219 | -// echo "<pre>"; print_r($lst_matricula);die; | ||
220 | - foreach ($lst_matricula AS $key => $matricula) | ||
221 | - { | ||
222 | - $obj_serie = new clsPmieducarSerie( $matricula['ref_ref_cod_serie'] ); | ||
223 | - $det_serie = $obj_serie->detalhe(); | ||
224 | - | ||
225 | - $obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 ); | ||
226 | - $editou1 = $obj->edita(); | ||
227 | - if( $editou1 ) | ||
228 | - { | ||
229 | - $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"] ); | ||
230 | - $cadastra1 = $obj->cadastra(); | ||
231 | - if( !$cadastra1 ) | ||
232 | - { | ||
233 | - echo "<script> | ||
234 | - alert('Erro ao matricular os alunos da Escola!'); | ||
235 | - window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | ||
236 | - </script>"; | ||
237 | - } | ||
238 | - } | ||
239 | - } | ||
240 | - } | ||
241 | - | ||
242 | - echo "<script> | ||
243 | - alert('Ano letivo inicializado com sucesso!'); | ||
244 | - window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | ||
245 | - </script>"; | 167 | + if (! $GLOBALS['coreExt']['Config']->app->regras_negocio->desativar_rematricula_automatica) { |
168 | + $this->rematricularAlunosAprovados(); | ||
169 | + $this->rematricularAlunosReprovados(); | ||
246 | } | 170 | } |
171 | + | ||
172 | + die("<script> | ||
173 | + alert('Ano letivo inicializado com sucesso!'); | ||
174 | + window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | ||
175 | + </script>"); | ||
247 | } | 176 | } |
248 | 177 | ||
249 | function finalizarAnoLetivo() | 178 | function finalizarAnoLetivo() |
@@ -298,7 +227,69 @@ class indice extends clsCadastro | @@ -298,7 +227,69 @@ class indice extends clsCadastro | ||
298 | } | 227 | } |
299 | } | 228 | } |
300 | 229 | ||
230 | + function rematricularAlunosAprovados() { | ||
231 | + $obj_matricula = new clsPmieducarMatricula(); | ||
232 | + $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 ); | ||
233 | + | ||
234 | + if (! is_array($lst_matricula)) | ||
235 | + return; | ||
236 | + | ||
237 | + foreach ($lst_matricula AS $key => $matricula) { | ||
238 | + $obj_sequencia = new clsPmieducarSequenciaSerie(); | ||
239 | + $lst_sequencia = $obj_sequencia->lista( $matricula['ref_ref_cod_serie'],null,null,null,null,null,null,null,1 ); | ||
240 | + | ||
241 | + if ( is_array($lst_sequencia) && (count($lst_sequencia) == 1) ) { | ||
242 | + $det_sequencia = array_shift($lst_sequencia); | ||
243 | + $serie_destino = $det_sequencia["ref_serie_destino"]; | ||
301 | 244 | ||
245 | + $obj_serie = new clsPmieducarSerie( $serie_destino ); | ||
246 | + $det_serie = $obj_serie->detalhe(); | ||
247 | + | ||
248 | + $obj_escola_curso = new clsPmieducarEscolaCurso($this->ref_cod_escola, $det_serie["ref_cod_curso"]); | ||
249 | + | ||
250 | + if (is_array($obj_escola_curso->detalhe())) { | ||
251 | + $obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 ); | ||
252 | + $editou = $obj->edita(); | ||
253 | + if( $editou ) { | ||
254 | + $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"] ); | ||
255 | + $cadastra = $obj->cadastra(); | ||
256 | + if( !$cadastra ) { | ||
257 | + echo "<script> | ||
258 | + alert('Erro ao matricular os alunos da Escola!'); | ||
259 | + window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | ||
260 | + </script>"; | ||
261 | + } | ||
262 | + } | ||
263 | + } | ||
264 | + } | ||
265 | + } | ||
266 | + } | ||
267 | + | ||
268 | + function rematricularAlunosReprovados() { | ||
269 | + $obj_matricula = new clsPmieducarMatricula(); | ||
270 | + $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 ); | ||
271 | + | ||
272 | + if (! is_array($lst_matricula) ) | ||
273 | + return; | ||
274 | + | ||
275 | + foreach ($lst_matricula AS $key => $matricula) { | ||
276 | + $obj_serie = new clsPmieducarSerie( $matricula['ref_ref_cod_serie'] ); | ||
277 | + $det_serie = $obj_serie->detalhe(); | ||
278 | + | ||
279 | + $obj = new clsPmieducarMatricula( $matricula['cod_matricula'],null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,0 ); | ||
280 | + $editou1 = $obj->edita(); | ||
281 | + if( $editou1 ) { | ||
282 | + $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"] ); | ||
283 | + $cadastra1 = $obj->cadastra(); | ||
284 | + if( !$cadastra1 ) { | ||
285 | + echo "<script> | ||
286 | + alert('Erro ao matricular os alunos da Escola!'); | ||
287 | + window.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo'; | ||
288 | + </script>"; | ||
289 | + } | ||
290 | + } | ||
291 | + } | ||
292 | + } | ||
302 | } | 293 | } |
303 | 294 | ||
304 | // cria uma extensao da classe base | 295 | // cria uma extensao da classe base |