[Alba-desarrollo] SVN Alba r4186 - in
prosistem/alba/trunk/alba/apps/principal/modules:
boletin/templates informes/actions informes/templates
commits en pressenter.com.ar
commits en pressenter.com.ar
Mie Feb 14 19:07:59 CET 2007
Author: josx
Date: 2007-02-14 15:07:58 -0300 (Wed, 14 Feb 2007)
New Revision: 4186
Added:
prosistem/alba/trunk/alba/apps/principal/modules/informes/templates/boletinFormularioSuccess.php
Modified:
prosistem/alba/trunk/alba/apps/principal/modules/boletin/templates/mostrarSuccess.php
prosistem/alba/trunk/alba/apps/principal/modules/informes/actions/actions.class.php
Log:
Agregue al menu de informes la posibilidad de buscar alumno e imprimir su boletin
Modified: prosistem/alba/trunk/alba/apps/principal/modules/boletin/templates/mostrarSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/boletin/templates/mostrarSuccess.php 2007-02-14 16:39:00 UTC (rev 4185)
+++ prosistem/alba/trunk/alba/apps/principal/modules/boletin/templates/mostrarSuccess.php 2007-02-14 18:07:58 UTC (rev 4186)
@@ -87,9 +87,10 @@
<br>
<?php } ?>
+<?php if($vista != 'imprimir') { ?>
<ul class="sf_admin_actions">
<li><? echo button_to('Ir a la cuenta','cuenta?action=verCompleta&id='.$alumno->getFkCuentaId(),array('class'=>'sf_admin_action_list'))?></li>
</ul>
-
+<? } ?>
</body>
</html>
\ No newline at end of file
Modified: prosistem/alba/trunk/alba/apps/principal/modules/informes/actions/actions.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/informes/actions/actions.class.php 2007-02-14 16:39:00 UTC (rev 4185)
+++ prosistem/alba/trunk/alba/apps/principal/modules/informes/actions/actions.class.php 2007-02-14 18:07:58 UTC (rev 4186)
@@ -43,9 +43,61 @@
*
*/
- public function handleErrorAlumnosPorDivisionListado() {
+
+
+ private function _getDivisiones($establecimiento_id) {
+ $optionsDivision = array();
+ $criteria = new Criteria();
+ $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
+ $divisiones = DivisionPeer::doSelectJoinAnio($criteria);
+ $optionsDivision[''] = "";
+ foreach($divisiones as $division) {
+ $optionsDivision[$division->getId()] = $division->getAnio()->getDescripcion()." ".$division->getDescripcion();
+ }
+ asort($optionsDivision);
+ return $optionsDivision;
+
+ }
+
+
+
+ private function _getAlumnosPorDivision($division_id = '', $txt = '') {
+ $aAlumno = array();
+
+ $criteria = new Criteria();
+ if($division_id) {
+ $criteria->add(DivisionPeer::ID, $division_id);
+ }
+ $criteria->addJoin(RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID);
+ $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID);
+ $criteria->addJoin(DivisionPeer::FK_ANIO_ID, AnioPeer::ID);
+
+ if($txt) {
+ $cton1 = $criteria->getNewCriterion(AlumnoPeer::NOMBRE, "%$txt%", Criteria::LIKE);
+ $cton2 = $criteria->getNewCriterion(AlumnoPeer::APELLIDO, "%$txt%", Criteria::LIKE);
+ $cton1->addOr($cton2);
+ $criteria->add($cton1);
+ }
+
+ $criteria->addAsColumn("alumno_id", AlumnoPeer::ID);
+ $criteria->addAsColumn("alumno_nombre", AlumnoPeer::NOMBRE);
+ $criteria->addAsColumn("alumno_apellido", AlumnoPeer::APELLIDO);
+ $criteria->addAsColumn("division_id", DivisionPeer::ID);
+ $criteria->addAsColumn("division_descripcion", DivisionPeer::DESCRIPCION);
+ $criteria->addAsColumn("anio_descripcion", AnioPeer::DESCRIPCION);
+
+ $alumnos = BasePeer::doSelect($criteria);
+ foreach($alumnos as $alumno) {
+ $aAlumno[] = (object) array( 'alumno_id' => $alumno[0],'alumno_nombre' => $alumno[1], 'alumno_apellido' => $alumno[2], 'division_id' => $alumno[3], 'division_nombre' => $alumno[4], 'anio_descripcion' => $alumno[5] );
+ }
+
+ return $aAlumno;
+ }
+
+
+ public function handleErrorAlumnosPorDivisionListado() {
$this->forward('informes','alumnosPorDivisionFormulario');
- }
+ }
public function executeAlumnosPorDivisionFormulario() {
// inicializando variables
@@ -56,14 +108,7 @@
// llenando el combo de division segun establecimiento
$establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
- $criteria = new Criteria();
- $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
- $divisiones = DivisionPeer::doSelectJoinAnio($criteria);
- $optionsDivision[''] = "";
- foreach($divisiones as $division) {
- $optionsDivision[$division->getId()] = $division->getAnio()->getDescripcion()." ".$division->getDescripcion();
- }
- asort($optionsDivision);
+ $optionsDivision = $this->_getDivisiones($establecimiento_id);
// asignando variables para ser usadas en el template
$this->optionsDivision = $optionsDivision;
@@ -88,7 +133,6 @@
$criteria->addJoin(RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID);
$criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID);
$criteria->addAscendingOrderByColumn(AlumnoPeer::APELLIDO);
-
$alumnos = AlumnoPeer::doSelect($criteria);
// asignando variables para ser usadas en el template
@@ -112,44 +156,11 @@
// llenando el combo de division segun establecimiento
$establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
- $criteria = new Criteria();
- $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
- $divisiones = DivisionPeer::doSelectJoinAnio($criteria);
- $optionsDivision[] = "";
- foreach($divisiones as $division) {
- $optionsDivision[$division->getId()] = $division->getAnio()->getDescripcion()." ".$division->getDescripcion();
- }
- asort($optionsDivision);
+ $optionsDivision = $this->_getDivisiones($establecimiento_id);
if ($this->getRequest()->getMethod() == sfRequest::POST) {
// buscando alumnos
- $criteria = new Criteria();
- if($division_id) {
- $criteria->add(DivisionPeer::ID, $division_id);
- }
- $criteria->addJoin(RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID);
- $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID);
- $criteria->addJoin(DivisionPeer::FK_ANIO_ID, AnioPeer::ID);
-
- if($txt) {
- $cton1 = $criteria->getNewCriterion(AlumnoPeer::NOMBRE, "%$txt%", Criteria::LIKE);
- $cton2 = $criteria->getNewCriterion(AlumnoPeer::APELLIDO, "%$txt%", Criteria::LIKE);
- $cton1->addOr($cton2);
- $criteria->add($cton1);
- }
-
- $criteria->addAsColumn("alumno_id", AlumnoPeer::ID);
- $criteria->addAsColumn("alumno_nombre", AlumnoPeer::NOMBRE);
- $criteria->addAsColumn("alumno_apellido", AlumnoPeer::APELLIDO);
- $criteria->addAsColumn("division_id", DivisionPeer::ID);
- $criteria->addAsColumn("division_descripcion", DivisionPeer::DESCRIPCION);
- $criteria->addAsColumn("anio_descripcion", AnioPeer::DESCRIPCION);
-
- $alumnos = BasePeer::doSelect($criteria);
- foreach($alumnos as $alumno) {
- $aAlumno[] = (object) array( 'alumno_id' => $alumno[0],'alumno_nombre' => $alumno[1], 'alumno_apellido' => $alumno[2], 'division_id' => $alumno[3], 'division_nombre' => $alumno[4], 'anio_descripcion' => $alumno[5] );
- }
-
+ $aAlumno = $this->_getAlumnosPorDivision($division_id, $txt);
}
// asignando variables para ser usadas en el template
@@ -204,44 +215,11 @@
// llenando el combo de division segun establecimiento
$establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
- $criteria = new Criteria();
- $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
- $divisiones = DivisionPeer::doSelectJoinAnio($criteria);
- $optionsDivision[] = "";
- foreach($divisiones as $division) {
- $optionsDivision[$division->getId()] = $division->getAnio()->getDescripcion()." ".$division->getDescripcion();
- }
- asort($optionsDivision);
+ $optionsDivision = $this->_getDivisiones($establecimiento_id);
if ($this->getRequest()->getMethod() == sfRequest::POST) {
// buscando alumnos
- $criteria = new Criteria();
- if($division_id) {
- $criteria->add(DivisionPeer::ID, $division_id);
- }
- $criteria->addJoin(RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID);
- $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID);
- $criteria->addJoin(DivisionPeer::FK_ANIO_ID, AnioPeer::ID);
-
- if($txt) {
- $cton1 = $criteria->getNewCriterion(AlumnoPeer::NOMBRE, "%$txt%", Criteria::LIKE);
- $cton2 = $criteria->getNewCriterion(AlumnoPeer::APELLIDO, "%$txt%", Criteria::LIKE);
- $cton1->addOr($cton2);
- $criteria->add($cton1);
- }
-
- $criteria->addAsColumn("alumno_id", AlumnoPeer::ID);
- $criteria->addAsColumn("alumno_nombre", AlumnoPeer::NOMBRE);
- $criteria->addAsColumn("alumno_apellido", AlumnoPeer::APELLIDO);
- $criteria->addAsColumn("division_id", DivisionPeer::ID);
- $criteria->addAsColumn("division_descripcion", DivisionPeer::DESCRIPCION);
- $criteria->addAsColumn("anio_descripcion", AnioPeer::DESCRIPCION);
-
- $alumnos = BasePeer::doSelect($criteria);
- foreach($alumnos as $alumno) {
- $aAlumno[] = (object) array( 'alumno_id' => $alumno[0],'alumno_nombre' => $alumno[1], 'alumno_apellido' => $alumno[2], 'division_id' => $alumno[3], 'division_nombre' => $alumno[4], 'anio_descripcion' => $alumno[5] );
- }
-
+ $aAlumno = $this->_getAlumnosPorDivision($division_id, $txt);
}
// asignando variables para ser usadas en el template
@@ -278,5 +256,40 @@
$this->dia = date("d");
}
+
+
+ public function executeBoletinFormulario() {
+ // inicializando variables
+ $optionsDivision = array();
+ $aAlumno = array();
+
+ // tomando los datos del formulario
+ $division_id = $this->getRequestParameter('division_id');
+ $txt = $this->getRequestParameter('txt');
+
+ // llenando el combo de division segun establecimiento
+ $establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
+ $optionsDivision = $this->_getDivisiones($establecimiento_id);
+
+ if ($this->getRequest()->getMethod() == sfRequest::POST) {
+ // buscando alumnos
+ $aAlumno = $this->_getAlumnosPorDivision($division_id, $txt);
+ }
+
+ // asignando variables para ser usadas en el template
+ $this->optionsDivision = $optionsDivision;
+ $this->division_id = $division_id;
+ $this->txt = $txt;
+ $this->aAlumno = $aAlumno;
+ $this->vista = "imprimir";
+ }
+
+
+ public function executeBoletinListado() {
+ $this->vista = 'imprimir';
+ $this->forward('boletin','mostrar');
+ }
+
+
}
?>
\ No newline at end of file
Added: prosistem/alba/trunk/alba/apps/principal/modules/informes/templates/boletinFormularioSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/informes/templates/boletinFormularioSuccess.php 2007-02-14 16:39:00 UTC (rev 4185)
+++ prosistem/alba/trunk/alba/apps/principal/modules/informes/templates/boletinFormularioSuccess.php 2007-02-14 18:07:58 UTC (rev 4186)
@@ -0,0 +1,62 @@
+<h1>Informe: Boletines</h1>
+
+<?php echo form_tag('informes/boletinFormulario', 'id=sf_admin_edit_form name=sf_admin_edit_form multipart=true') ?>
+
+<fieldset id="sf_fieldset_none" class="">
+ <div class="form-row">
+ <?php echo label_for('Buscar', __('Buscar Alumnos:')) ?>
+ <?php echo input_tag('txt', $txt) ?>
+ </div>
+
+ <div class="form-row">
+ <?php echo label_for('division', __('Division:')) ?>
+ <?php echo select_tag('division_id', options_for_select($optionsDivision, $division_id)) ?>
+ </div>
+</fieldset>
+
+ <ul class="sf_admin_actions">
+ <li><?php echo submit_tag(__('Buscar'), array (
+ 'name' => 'Mostrar',
+ 'class' => 'sf_admin_action_save',
+)) ?></li>
+</ul>
+
+</form>
+
+
+<? if (count($aAlumno) > 0) {
+ if ($txt) { ?>
+ Ustde busco -<?=$txt?>-
+ <? } ?>
+<h1>Alumnos</h1>
+<table cellspacing="0" class="sf_admin_list">
+ <thead>
+ <tr>
+ <th id="sf_admin_list_th_alumno"> Alumno</th>
+ <th id="sf_admin_list_th_sf_actions">Ver Informe</th>
+ </tr>
+ </thead>
+
+ <tbody>
+<?
+ $i = 0;
+ foreach($aAlumno as $alumno){
+?>
+ <tr class="sf_admin_row_0">
+ <td><?echo $alumno->alumno_apellido." ".$alumno->alumno_nombre; ?> ( <?=$alumno->anio_descripcion?> - <?=$alumno->division_nombre?> ) </td>
+ <td>
+ <ul class="sf_admin_td_actions">
+ <li><?php echo link_to(image_tag('/sf/images/sf_admin/edit_icon.png', array('alt' => 'editar', 'title' => 'Editar')) , 'informes?action=boletinListado&vista=imprimir&alumno_id='.$alumno->alumno_id."&division_id=".$alumno->division_id); ?></li>
+ </ul>
+ </td>
+ </tr>
+ <? } ?>
+ </tbody>
+</table>
+
+<? } else {
+ if ($txt) { ?>
+ Su búsqueda por -<?=$txt?>- no ha encontrado alumnos.
+ <? }
+}
+?>
\ No newline at end of file
Property changes on: prosistem/alba/trunk/alba/apps/principal/modules/informes/templates/boletinFormularioSuccess.php
___________________________________________________________________
Name: svn:keywords
+ "Id Author URL Date Rev"
Más información sobre la lista de distribución Alba-desarrollo