Пример #1
0
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = TipoasistenciaPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setNombre($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setDescripcion($arr[$keys[2]]);
     }
     if (array_key_exists($keys[3], $arr)) {
         $this->setValor($arr[$keys[3]]);
     }
     if (array_key_exists($keys[4], $arr)) {
         $this->setGrupo($arr[$keys[4]]);
     }
     if (array_key_exists($keys[5], $arr)) {
         $this->setDefecto($arr[$keys[5]]);
     }
 }
Пример #2
0
 /**
  * Obtiene los tipos de asistencias
  */
 protected function getTiposasistencias()
 {
     $aDatosTablaTipoAsistencias = array();
     $criteria = new Criteria();
     $aTipoasistencias = TipoasistenciaPeer::doSelect($criteria);
     foreach ($aTipoasistencias as $tipoasistencia) {
         $aDatosTablaTipoAsistencias[$tipoasistencia->getNombre()] = array($tipoasistencia->getId(), $tipoasistencia->getDescripcion());
     }
     return $aDatosTablaTipoAsistencias;
 }
Пример #3
0
 public function getAsistenciasPorFechas($fecha_inicio, $fecha_fin)
 {
     $aAsistencia = array();
     // En teoria esta dos consultas pueden reemplazarse con una solo usando LEFT JOIN y CASE
     $c = new Criteria();
     $c->addSelectColumn(TipoasistenciaPeer::DESCRIPCION);
     $c->add(TipoasistenciaPeer::GRUPO, 'Inasistencias', Criteria::EQUAL);
     $rsColumna = TipoasistenciaPeer::doSelectStmt($c);
     $c = new Criteria();
     $c->clearSelectColumns();
     $c->addGroupByColumn(TipoasistenciaPeer::DESCRIPCION);
     //        $c->addSelectColumn(TipoasistenciaPeer::GRUPO);
     $c->addSelectColumn(TipoasistenciaPeer::DESCRIPCION);
     $c->addSelectColumn('SUM(' . TipoasistenciaPeer::VALOR . ') AS valor');
     $c->addJoin(TipoasistenciaPeer::ID, AsistenciaPeer::FK_TIPOASISTENCIA_ID);
     $c->add(AsistenciaPeer::FK_ALUMNO_ID, $this->getId(), Criteria::EQUAL);
     $c2 = new Criteria();
     $criterion = $c2->getNewCriterion(AsistenciaPeer::FECHA, $fecha_inicio, Criteria::GREATER_EQUAL);
     $criterion->addAnd($c2->getNewCriterion(AsistenciaPeer::FECHA, $fecha_fin, Criteria::LESS_EQUAL));
     $c->add($criterion);
     $c->add(TipoasistenciaPeer::GRUPO, 'Inasistencias', Criteria::EQUAL);
     $rsValor = TipoasistenciaPeer::doSelectStmt($c);
     if ($rsColumna) {
         while ($res_c = $rsColumna->fetch()) {
             $aAsistencia[$res_c[0]] = 0;
             // indice: nombre del Grupo, contenido:
         }
     }
     if ($rsValor) {
         while ($res = $rsValor->fetch()) {
             // indice: nombre del Grupo, contenido: sumatoria de valor
             $aAsistencia[$res[0]] = $res[1];
         }
     }
     return $aAsistencia;
 }
Пример #4
0
 public function getTipoasistencia(PropelPDO $con = null)
 {
     if ($this->aTipoasistencia === null && $this->fk_tipoasistencia_id !== null) {
         $c = new Criteria(TipoasistenciaPeer::DATABASE_NAME);
         $c->add(TipoasistenciaPeer::ID, $this->fk_tipoasistencia_id);
         $this->aTipoasistencia = TipoasistenciaPeer::doSelectOne($c, $con);
     }
     return $this->aTipoasistencia;
 }
Пример #5
0
 public static function retrieveByPKs($pks, PropelPDO $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(TipoasistenciaPeer::DATABASE_NAME, Propel::CONNECTION_READ);
     }
     $objs = null;
     if (empty($pks)) {
         $objs = array();
     } else {
         $criteria = new Criteria(TipoasistenciaPeer::DATABASE_NAME);
         $criteria->add(TipoasistenciaPeer::ID, $pks, Criteria::IN);
         $objs = TipoasistenciaPeer::doSelect($criteria, $con);
     }
     return $objs;
 }
Пример #6
0
 public static function doSelectJoinAllExceptAlumno(Criteria $c, $con = null, $join_behavior = Criteria::LEFT_JOIN)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     AsistenciaPeer::addSelectColumns($c);
     $startcol2 = AsistenciaPeer::NUM_COLUMNS - AsistenciaPeer::NUM_LAZY_LOAD_COLUMNS;
     TipoasistenciaPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + (TipoasistenciaPeer::NUM_COLUMNS - TipoasistenciaPeer::NUM_LAZY_LOAD_COLUMNS);
     $c->addJoin(array(AsistenciaPeer::FK_TIPOASISTENCIA_ID), array(TipoasistenciaPeer::ID), $join_behavior);
     $stmt = BasePeer::doSelect($c, $con);
     $results = array();
     while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
         $key1 = AsistenciaPeer::getPrimaryKeyHashFromRow($row, 0);
         if (null !== ($obj1 = AsistenciaPeer::getInstanceFromPool($key1))) {
         } else {
             $omClass = AsistenciaPeer::getOMClass();
             $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1);
             $obj1 = new $cls();
             $obj1->hydrate($row);
             AsistenciaPeer::addInstanceToPool($obj1, $key1);
         }
         $key2 = TipoasistenciaPeer::getPrimaryKeyHashFromRow($row, $startcol2);
         if ($key2 !== null) {
             $obj2 = TipoasistenciaPeer::getInstanceFromPool($key2);
             if (!$obj2) {
                 $omClass = TipoasistenciaPeer::getOMClass();
                 $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1);
                 $obj2 = new $cls();
                 $obj2->hydrate($row, $startcol2);
                 TipoasistenciaPeer::addInstanceToPool($obj2, $key2);
             }
             $obj2->addAsistencia($obj1);
         }
         $results[] = $obj1;
     }
     $stmt->closeCursor();
     return $results;
 }