SVN Alba r4994 - in prosistem/alba/trunk/alba: apps/principal/modules/docente/config config data/sql lib/model/map lib/model/om
Author: josx Date: 2007-08-22 12:29:37 -0300 (Wed, 22 Aug 2007) New Revision: 4994 Modified: prosistem/alba/trunk/alba/apps/principal/modules/docente/config/generator.yml prosistem/alba/trunk/alba/config/schema.yml prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql prosistem/alba/trunk/alba/lib/model/map/DocenteMapBuilder.php prosistem/alba/trunk/alba/lib/model/om/BaseDocente.php prosistem/alba/trunk/alba/lib/model/om/BaseDocentePeer.php prosistem/alba/trunk/alba/lib/model/om/BasePais.php prosistem/alba/trunk/alba/lib/model/om/BaseProvincia.php prosistem/alba/trunk/alba/lib/model/om/BaseTipodocumento.php Log: Se agrego nacionalidad y lugar de nacimiento a los docentes. Ademas se reordeno como se muestra ( #244 ) Modified: prosistem/alba/trunk/alba/apps/principal/modules/docente/config/generator.yml =================================================================== --- prosistem/alba/trunk/alba/apps/principal/modules/docente/config/generator.yml 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/apps/principal/modules/docente/config/generator.yml 2007-08-22 15:29:37 UTC (rev 4994) @@ -6,10 +6,10 @@ fields: apellido: { name: Apellido, params: size=64 } - nombre: { name: Nombre , params: size=64 } - fk_tipodocumento_id: { name: Doc. } - tipodocumento: { name: Doc. } - nro_documento: { name: Nro. } + nombre: { name: Nombres , params: size=64 } + fk_tipodocumento_id: { name: Tipo de Documento } + tipodocumento: { name: Tipo de Documento } + nro_documento: { name: Nro. Documento } direccion: { name: Dirección , params: size=64 } ciudad: { name: Ciudad , params: size=64} codigo_postal: { name: CP } @@ -23,6 +23,8 @@ psicofisico: { name: ¿Trajo Examen psicofisico?} titulo: { name: Titulo Habilitante , params: size=64} activo: { name: Activo} + lugar_nacimiento: { name: Lugar de Nacimiento } + fk_pais_id: { name: Nacionalidad } edit: title: Editar Docente @@ -30,7 +32,7 @@ actividades: { type: admin_double_list, params: through_class=RelAnioActividadDocente style=width:260px } display: - "Informacion general": [apellido, nombre, fecha_nacimiento, _sexo, fk_tipodocumento_id, nro_documento ] + "Informacion general": [ apellido, nombre, _sexo, fk_tipodocumento_id , nro_documento , lugar_nacimiento, fecha_nacimiento, fk_pais_id ] "Donde vive": [direccion, ciudad, _pais_id, _fk_provincia_id, codigo_postal] "Otros": [ email, telefono, telefono_movil, libreta_sanitaria, psicofisico, titulo, activo, actividades ] Modified: prosistem/alba/trunk/alba/config/schema.yml =================================================================== --- prosistem/alba/trunk/alba/config/schema.yml 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/config/schema.yml 2007-08-22 15:29:37 UTC (rev 4994) @@ -1499,6 +1499,10 @@ type: varchar size: 16 required: true + lugar_nacimiento: + type: VARCHAR + size: 128 + required: false direccion: type: varchar size: 128 @@ -1546,6 +1550,12 @@ default: 0 foreignTable: provincia foreignReference: id + fk_pais_id: + type: INTEGER + required: true + default: 0 + foreignTable: pais + foreignReference: id rel_docente_establecimiento: _attributes: idMethod: native Modified: prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql =================================================================== --- prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql 2007-08-22 15:29:37 UTC (rev 4994) @@ -1170,6 +1170,7 @@ `fecha_nacimiento` DATETIME NOT NULL, `fk_tipodocumento_id` INTEGER(11) default 0 NOT NULL, `nro_documento` VARCHAR(16) NOT NULL, + `lugar_nacimiento` VARCHAR(128), `direccion` VARCHAR(128), `ciudad` VARCHAR(128), `codigo_postal` VARCHAR(20), @@ -1181,6 +1182,7 @@ `psicofisico` INTEGER default 0, `activo` INTEGER default 1, `fk_provincia_id` INTEGER(11) default 0 NOT NULL, + `fk_pais_id` INTEGER default 0 NOT NULL, PRIMARY KEY (`id`), INDEX `docente_FI_1` (`fk_tipodocumento_id`), CONSTRAINT `docente_FK_1` @@ -1189,7 +1191,11 @@ INDEX `docente_FI_2` (`fk_provincia_id`), CONSTRAINT `docente_FK_2` FOREIGN KEY (`fk_provincia_id`) - REFERENCES `provincia` (`id`) + REFERENCES `provincia` (`id`), + INDEX `docente_FI_3` (`fk_pais_id`), + CONSTRAINT `docente_FK_3` + FOREIGN KEY (`fk_pais_id`) + REFERENCES `pais` (`id`) )Type=InnoDB; #----------------------------------------------------------------------------- Modified: prosistem/alba/trunk/alba/lib/model/map/DocenteMapBuilder.php =================================================================== --- prosistem/alba/trunk/alba/lib/model/map/DocenteMapBuilder.php 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/lib/model/map/DocenteMapBuilder.php 2007-08-22 15:29:37 UTC (rev 4994) @@ -46,6 +46,8 @@ $tMap->addColumn('NRO_DOCUMENTO', 'NroDocumento', 'string', CreoleTypes::VARCHAR, true, 16); + $tMap->addColumn('LUGAR_NACIMIENTO', 'LugarNacimiento', 'string', CreoleTypes::VARCHAR, false, 128); + $tMap->addColumn('DIRECCION', 'Direccion', 'string', CreoleTypes::VARCHAR, false, 128); $tMap->addColumn('CIUDAD', 'Ciudad', 'string', CreoleTypes::VARCHAR, false, 128); @@ -68,5 +70,7 @@ $tMap->addForeignKey('FK_PROVINCIA_ID', 'FkProvinciaId', 'int', CreoleTypes::INTEGER, 'provincia', 'ID', true, 11); + $tMap->addForeignKey('FK_PAIS_ID', 'FkPaisId', 'int', CreoleTypes::INTEGER, 'pais', 'ID', true, null); + } } \ No newline at end of file Modified: prosistem/alba/trunk/alba/lib/model/om/BaseDocente.php =================================================================== --- prosistem/alba/trunk/alba/lib/model/om/BaseDocente.php 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/lib/model/om/BaseDocente.php 2007-08-22 15:29:37 UTC (rev 4994) @@ -37,6 +37,10 @@ + protected $lugar_nacimiento; + + + protected $direccion; @@ -79,13 +83,20 @@ protected $fk_provincia_id = 0; + + protected $fk_pais_id = 0; + + protected $aTipodocumento; protected $aProvincia; + protected $aPais; + + protected $collRelDivisionActividadDocentes; @@ -180,6 +191,13 @@ } + public function getLugarNacimiento() + { + + return $this->lugar_nacimiento; + } + + public function getDireccion() { @@ -257,6 +275,13 @@ } + public function getFkPaisId() + { + + return $this->fk_pais_id; + } + + public function setId($v) { @@ -362,6 +387,20 @@ } + public function setLugarNacimiento($v) + { + + if ($v !== null && !is_string($v)) { + $v = (string) $v; + } + + if ($this->lugar_nacimiento !== $v) { + $this->lugar_nacimiento = $v; + $this->modifiedColumns[] = DocentePeer::LUGAR_NACIMIENTO; + } + + } + public function setDireccion($v) { @@ -508,6 +547,24 @@ } + public function setFkPaisId($v) + { + + if ($v !== null && !is_int($v) && is_numeric($v)) { + $v = (int) $v; + } + + if ($this->fk_pais_id !== $v || $v === 0) { + $this->fk_pais_id = $v; + $this->modifiedColumns[] = DocentePeer::FK_PAIS_ID; + } + + if ($this->aPais !== null && $this->aPais->getId() !== $v) { + $this->aPais = null; + } + + } + public function hydrate(ResultSet $rs, $startcol = 1) { try { @@ -526,33 +583,37 @@ $this->nro_documento = $rs->getString($startcol + 6); - $this->direccion = $rs->getString($startcol + 7); + $this->lugar_nacimiento = $rs->getString($startcol + 7); - $this->ciudad = $rs->getString($startcol + 8); + $this->direccion = $rs->getString($startcol + 8); - $this->codigo_postal = $rs->getString($startcol + 9); + $this->ciudad = $rs->getString($startcol + 9); - $this->email = $rs->getString($startcol + 10); + $this->codigo_postal = $rs->getString($startcol + 10); - $this->telefono = $rs->getString($startcol + 11); + $this->email = $rs->getString($startcol + 11); - $this->telefono_movil = $rs->getString($startcol + 12); + $this->telefono = $rs->getString($startcol + 12); - $this->titulo = $rs->getString($startcol + 13); + $this->telefono_movil = $rs->getString($startcol + 13); - $this->libreta_sanitaria = $rs->getBoolean($startcol + 14); + $this->titulo = $rs->getString($startcol + 14); - $this->psicofisico = $rs->getBoolean($startcol + 15); + $this->libreta_sanitaria = $rs->getBoolean($startcol + 15); - $this->activo = $rs->getBoolean($startcol + 16); + $this->psicofisico = $rs->getBoolean($startcol + 16); - $this->fk_provincia_id = $rs->getInt($startcol + 17); + $this->activo = $rs->getBoolean($startcol + 17); + $this->fk_provincia_id = $rs->getInt($startcol + 18); + + $this->fk_pais_id = $rs->getInt($startcol + 19); + $this->resetModified(); $this->setNew(false); - return $startcol + 18; + return $startcol + 20; } catch (Exception $e) { throw new PropelException("Error populating Docente object", $e); } @@ -624,7 +685,14 @@ $this->setProvincia($this->aProvincia); } + if ($this->aPais !== null) { + if ($this->aPais->isModified()) { + $affectedRows += $this->aPais->save($con); + } + $this->setPais($this->aPais); + } + if ($this->isModified()) { if ($this->isNew()) { $pk = DocentePeer::doInsert($this, $con); @@ -717,7 +785,13 @@ } } + if ($this->aPais !== null) { + if (!$this->aPais->validate($columns)) { + $failureMap = array_merge($failureMap, $this->aPais->getValidationFailures()); + } + } + if (($retval = DocentePeer::doValidate($this, $columns)) !== true) { $failureMap = array_merge($failureMap, $retval); } @@ -795,38 +869,44 @@ return $this->getNroDocumento(); break; case 7: + return $this->getLugarNacimiento(); + break; + case 8: return $this->getDireccion(); break; - case 8: + case 9: return $this->getCiudad(); break; - case 9: + case 10: return $this->getCodigoPostal(); break; - case 10: + case 11: return $this->getEmail(); break; - case 11: + case 12: return $this->getTelefono(); break; - case 12: + case 13: return $this->getTelefonoMovil(); break; - case 13: + case 14: return $this->getTitulo(); break; - case 14: + case 15: return $this->getLibretaSanitaria(); break; - case 15: + case 16: return $this->getPsicofisico(); break; - case 16: + case 17: return $this->getActivo(); break; - case 17: + case 18: return $this->getFkProvinciaId(); break; + case 19: + return $this->getFkPaisId(); + break; default: return null; break; @@ -844,17 +924,19 @@ $keys[4] => $this->getFechaNacimiento(), $keys[5] => $this->getFkTipodocumentoId(), $keys[6] => $this->getNroDocumento(), - $keys[7] => $this->getDireccion(), - $keys[8] => $this->getCiudad(), - $keys[9] => $this->getCodigoPostal(), - $keys[10] => $this->getEmail(), - $keys[11] => $this->getTelefono(), - $keys[12] => $this->getTelefonoMovil(), - $keys[13] => $this->getTitulo(), - $keys[14] => $this->getLibretaSanitaria(), - $keys[15] => $this->getPsicofisico(), - $keys[16] => $this->getActivo(), - $keys[17] => $this->getFkProvinciaId(), + $keys[7] => $this->getLugarNacimiento(), + $keys[8] => $this->getDireccion(), + $keys[9] => $this->getCiudad(), + $keys[10] => $this->getCodigoPostal(), + $keys[11] => $this->getEmail(), + $keys[12] => $this->getTelefono(), + $keys[13] => $this->getTelefonoMovil(), + $keys[14] => $this->getTitulo(), + $keys[15] => $this->getLibretaSanitaria(), + $keys[16] => $this->getPsicofisico(), + $keys[17] => $this->getActivo(), + $keys[18] => $this->getFkProvinciaId(), + $keys[19] => $this->getFkPaisId(), ); return $result; } @@ -892,38 +974,44 @@ $this->setNroDocumento($value); break; case 7: + $this->setLugarNacimiento($value); + break; + case 8: $this->setDireccion($value); break; - case 8: + case 9: $this->setCiudad($value); break; - case 9: + case 10: $this->setCodigoPostal($value); break; - case 10: + case 11: $this->setEmail($value); break; - case 11: + case 12: $this->setTelefono($value); break; - case 12: + case 13: $this->setTelefonoMovil($value); break; - case 13: + case 14: $this->setTitulo($value); break; - case 14: + case 15: $this->setLibretaSanitaria($value); break; - case 15: + case 16: $this->setPsicofisico($value); break; - case 16: + case 17: $this->setActivo($value); break; - case 17: + case 18: $this->setFkProvinciaId($value); break; + case 19: + $this->setFkPaisId($value); + break; } } @@ -938,17 +1026,19 @@ if (array_key_exists($keys[4], $arr)) $this->setFechaNacimiento($arr[$keys[4]]); if (array_key_exists($keys[5], $arr)) $this->setFkTipodocumentoId($arr[$keys[5]]); if (array_key_exists($keys[6], $arr)) $this->setNroDocumento($arr[$keys[6]]); - if (array_key_exists($keys[7], $arr)) $this->setDireccion($arr[$keys[7]]); - if (array_key_exists($keys[8], $arr)) $this->setCiudad($arr[$keys[8]]); - if (array_key_exists($keys[9], $arr)) $this->setCodigoPostal($arr[$keys[9]]); - if (array_key_exists($keys[10], $arr)) $this->setEmail($arr[$keys[10]]); - if (array_key_exists($keys[11], $arr)) $this->setTelefono($arr[$keys[11]]); - if (array_key_exists($keys[12], $arr)) $this->setTelefonoMovil($arr[$keys[12]]); - if (array_key_exists($keys[13], $arr)) $this->setTitulo($arr[$keys[13]]); - if (array_key_exists($keys[14], $arr)) $this->setLibretaSanitaria($arr[$keys[14]]); - if (array_key_exists($keys[15], $arr)) $this->setPsicofisico($arr[$keys[15]]); - if (array_key_exists($keys[16], $arr)) $this->setActivo($arr[$keys[16]]); - if (array_key_exists($keys[17], $arr)) $this->setFkProvinciaId($arr[$keys[17]]); + if (array_key_exists($keys[7], $arr)) $this->setLugarNacimiento($arr[$keys[7]]); + if (array_key_exists($keys[8], $arr)) $this->setDireccion($arr[$keys[8]]); + if (array_key_exists($keys[9], $arr)) $this->setCiudad($arr[$keys[9]]); + if (array_key_exists($keys[10], $arr)) $this->setCodigoPostal($arr[$keys[10]]); + if (array_key_exists($keys[11], $arr)) $this->setEmail($arr[$keys[11]]); + if (array_key_exists($keys[12], $arr)) $this->setTelefono($arr[$keys[12]]); + if (array_key_exists($keys[13], $arr)) $this->setTelefonoMovil($arr[$keys[13]]); + if (array_key_exists($keys[14], $arr)) $this->setTitulo($arr[$keys[14]]); + if (array_key_exists($keys[15], $arr)) $this->setLibretaSanitaria($arr[$keys[15]]); + if (array_key_exists($keys[16], $arr)) $this->setPsicofisico($arr[$keys[16]]); + if (array_key_exists($keys[17], $arr)) $this->setActivo($arr[$keys[17]]); + if (array_key_exists($keys[18], $arr)) $this->setFkProvinciaId($arr[$keys[18]]); + if (array_key_exists($keys[19], $arr)) $this->setFkPaisId($arr[$keys[19]]); } @@ -963,6 +1053,7 @@ if ($this->isColumnModified(DocentePeer::FECHA_NACIMIENTO)) $criteria->add(DocentePeer::FECHA_NACIMIENTO, $this->fecha_nacimiento); if ($this->isColumnModified(DocentePeer::FK_TIPODOCUMENTO_ID)) $criteria->add(DocentePeer::FK_TIPODOCUMENTO_ID, $this->fk_tipodocumento_id); if ($this->isColumnModified(DocentePeer::NRO_DOCUMENTO)) $criteria->add(DocentePeer::NRO_DOCUMENTO, $this->nro_documento); + if ($this->isColumnModified(DocentePeer::LUGAR_NACIMIENTO)) $criteria->add(DocentePeer::LUGAR_NACIMIENTO, $this->lugar_nacimiento); if ($this->isColumnModified(DocentePeer::DIRECCION)) $criteria->add(DocentePeer::DIRECCION, $this->direccion); if ($this->isColumnModified(DocentePeer::CIUDAD)) $criteria->add(DocentePeer::CIUDAD, $this->ciudad); if ($this->isColumnModified(DocentePeer::CODIGO_POSTAL)) $criteria->add(DocentePeer::CODIGO_POSTAL, $this->codigo_postal); @@ -974,6 +1065,7 @@ if ($this->isColumnModified(DocentePeer::PSICOFISICO)) $criteria->add(DocentePeer::PSICOFISICO, $this->psicofisico); if ($this->isColumnModified(DocentePeer::ACTIVO)) $criteria->add(DocentePeer::ACTIVO, $this->activo); if ($this->isColumnModified(DocentePeer::FK_PROVINCIA_ID)) $criteria->add(DocentePeer::FK_PROVINCIA_ID, $this->fk_provincia_id); + if ($this->isColumnModified(DocentePeer::FK_PAIS_ID)) $criteria->add(DocentePeer::FK_PAIS_ID, $this->fk_pais_id); return $criteria; } @@ -1016,6 +1108,8 @@ $copyObj->setNroDocumento($this->nro_documento); + $copyObj->setLugarNacimiento($this->lugar_nacimiento); + $copyObj->setDireccion($this->direccion); $copyObj->setCiudad($this->ciudad); @@ -1038,7 +1132,9 @@ $copyObj->setFkProvinciaId($this->fk_provincia_id); + $copyObj->setFkPaisId($this->fk_pais_id); + if ($deepCopy) { $copyObj->setNew(false); @@ -1144,6 +1240,36 @@ } + public function setPais($v) + { + + + if ($v === null) { + $this->setFkPaisId('0'); + } else { + $this->setFkPaisId($v->getId()); + } + + + $this->aPais = $v; + } + + + + public function getPais($con = null) + { + include_once 'lib/model/om/BasePaisPeer.php'; + + if ($this->aPais === null && ($this->fk_pais_id !== null)) { + + $this->aPais = PaisPeer::retrieveByPK($this->fk_pais_id, $con); + + + } + return $this->aPais; + } + + public function initRelDivisionActividadDocentes() { if ($this->collRelDivisionActividadDocentes === null) { Modified: prosistem/alba/trunk/alba/lib/model/om/BaseDocentePeer.php =================================================================== --- prosistem/alba/trunk/alba/lib/model/om/BaseDocentePeer.php 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/lib/model/om/BaseDocentePeer.php 2007-08-22 15:29:37 UTC (rev 4994) @@ -13,7 +13,7 @@ const CLASS_DEFAULT = 'lib.model.Docente'; - const NUM_COLUMNS = 18; + const NUM_COLUMNS = 20; const NUM_LAZY_LOAD_COLUMNS = 0; @@ -41,6 +41,9 @@ const NRO_DOCUMENTO = 'docente.NRO_DOCUMENTO'; + const LUGAR_NACIMIENTO = 'docente.LUGAR_NACIMIENTO'; + + const DIRECCION = 'docente.DIRECCION'; @@ -74,23 +77,26 @@ const FK_PROVINCIA_ID = 'docente.FK_PROVINCIA_ID'; + const FK_PAIS_ID = 'docente.FK_PAIS_ID'; + + private static $phpNameMap = null; private static $fieldNames = array ( - BasePeer::TYPE_PHPNAME => array ('Id', 'Apellido', 'Nombre', 'Sexo', 'FechaNacimiento', 'FkTipodocumentoId', 'NroDocumento', 'Direccion', 'Ciudad', 'CodigoPostal', 'Email', 'Telefono', 'TelefonoMovil', 'Titulo', 'LibretaSanitaria', 'Psicofisico', 'Activo', 'FkProvinciaId', ), - BasePeer::TYPE_COLNAME => array (DocentePeer::ID, DocentePeer::APELLIDO, DocentePeer::NOMBRE, DocentePeer::SEXO, DocentePeer::FECHA_NACIMIENTO, DocentePeer::FK_TIPODOCUMENTO_ID, DocentePeer::NRO_DOCUMENTO, DocentePeer::DIRECCION, DocentePeer::CIUDAD, DocentePeer::CODIGO_POSTAL, DocentePeer::EMAIL, DocentePeer::TELEFONO, DocentePeer::TELEFONO_MOVIL, DocentePeer::TITULO, DocentePeer::LIBRETA_SANITARIA, DocentePeer::PSICOFISICO, DocentePeer::ACTIVO, DocentePeer::FK_PROVINCIA_ID, ), - BasePeer::TYPE_FIELDNAME => array ('id', 'apellido', 'nombre', 'sexo', 'fecha_nacimiento', 'fk_tipodocumento_id', 'nro_documento', 'direccion', 'ciudad', 'codigo_postal', 'email', 'telefono', 'telefono_movil', 'titulo', 'libreta_sanitaria', 'psicofisico', 'activo', 'fk_provincia_id', ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, ) + BasePeer::TYPE_PHPNAME => array ('Id', 'Apellido', 'Nombre', 'Sexo', 'FechaNacimiento', 'FkTipodocumentoId', 'NroDocumento', 'LugarNacimiento', 'Direccion', 'Ciudad', 'CodigoPostal', 'Email', 'Telefono', 'TelefonoMovil', 'Titulo', 'LibretaSanitaria', 'Psicofisico', 'Activo', 'FkProvinciaId', 'FkPaisId', ), + BasePeer::TYPE_COLNAME => array (DocentePeer::ID, DocentePeer::APELLIDO, DocentePeer::NOMBRE, DocentePeer::SEXO, DocentePeer::FECHA_NACIMIENTO, DocentePeer::FK_TIPODOCUMENTO_ID, DocentePeer::NRO_DOCUMENTO, DocentePeer::LUGAR_NACIMIENTO, DocentePeer::DIRECCION, DocentePeer::CIUDAD, DocentePeer::CODIGO_POSTAL, DocentePeer::EMAIL, DocentePeer::TELEFONO, DocentePeer::TELEFONO_MOVIL, DocentePeer::TITULO, DocentePeer::LIBRETA_SANITARIA, DocentePeer::PSICOFISICO, DocentePeer::ACTIVO, DocentePeer::FK_PROVINCIA_ID, DocentePeer::FK_PAIS_ID, ), + BasePeer::TYPE_FIELDNAME => array ('id', 'apellido', 'nombre', 'sexo', 'fecha_nacimiento', 'fk_tipodocumento_id', 'nro_documento', 'lugar_nacimiento', 'direccion', 'ciudad', 'codigo_postal', 'email', 'telefono', 'telefono_movil', 'titulo', 'libreta_sanitaria', 'psicofisico', 'activo', 'fk_provincia_id', 'fk_pais_id', ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ) ); private static $fieldKeys = array ( - BasePeer::TYPE_PHPNAME => array ('Id' => 0, 'Apellido' => 1, 'Nombre' => 2, 'Sexo' => 3, 'FechaNacimiento' => 4, 'FkTipodocumentoId' => 5, 'NroDocumento' => 6, 'Direccion' => 7, 'Ciudad' => 8, 'CodigoPostal' => 9, 'Email' => 10, 'Telefono' => 11, 'TelefonoMovil' => 12, 'Titulo' => 13, 'LibretaSanitaria' => 14, 'Psicofisico' => 15, 'Activo' => 16, 'FkProvinciaId' => 17, ), - BasePeer::TYPE_COLNAME => array (DocentePeer::ID => 0, DocentePeer::APELLIDO => 1, DocentePeer::NOMBRE => 2, DocentePeer::SEXO => 3, DocentePeer::FECHA_NACIMIENTO => 4, DocentePeer::FK_TIPODOCUMENTO_ID => 5, DocentePeer::NRO_DOCUMENTO => 6, DocentePeer::DIRECCION => 7, DocentePeer::CIUDAD => 8, DocentePeer::CODIGO_POSTAL => 9, DocentePeer::EMAIL => 10, DocentePeer::TELEFONO => 11, DocentePeer::TELEFONO_MOVIL => 12, DocentePeer::TITULO => 13, DocentePeer::LIBRETA_SANITARIA => 14, DocentePeer::PSICOFISICO => 15, DocentePeer::ACTIVO => 16, DocentePeer::FK_PROVINCIA_ID => 17, ), - BasePeer::TYPE_FIELDNAME => array ('id' => 0, 'apellido' => 1, 'nombre' => 2, 'sexo' => 3, 'fecha_nacimiento' => 4, 'fk_tipodocumento_id' => 5, 'nro_documento' => 6, 'direccion' => 7, 'ciudad' => 8, 'codigo_postal' => 9, 'email' => 10, 'telefono' => 11, 'telefono_movil' => 12, 'titulo' => 13, 'libreta_sanitaria' => 14, 'psicofisico' => 15, 'activo' => 16, 'fk_provincia_id' => 17, ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, ) + BasePeer::TYPE_PHPNAME => array ('Id' => 0, 'Apellido' => 1, 'Nombre' => 2, 'Sexo' => 3, 'FechaNacimiento' => 4, 'FkTipodocumentoId' => 5, 'NroDocumento' => 6, 'LugarNacimiento' => 7, 'Direccion' => 8, 'Ciudad' => 9, 'CodigoPostal' => 10, 'Email' => 11, 'Telefono' => 12, 'TelefonoMovil' => 13, 'Titulo' => 14, 'LibretaSanitaria' => 15, 'Psicofisico' => 16, 'Activo' => 17, 'FkProvinciaId' => 18, 'FkPaisId' => 19, ), + BasePeer::TYPE_COLNAME => array (DocentePeer::ID => 0, DocentePeer::APELLIDO => 1, DocentePeer::NOMBRE => 2, DocentePeer::SEXO => 3, DocentePeer::FECHA_NACIMIENTO => 4, DocentePeer::FK_TIPODOCUMENTO_ID => 5, DocentePeer::NRO_DOCUMENTO => 6, DocentePeer::LUGAR_NACIMIENTO => 7, DocentePeer::DIRECCION => 8, DocentePeer::CIUDAD => 9, DocentePeer::CODIGO_POSTAL => 10, DocentePeer::EMAIL => 11, DocentePeer::TELEFONO => 12, DocentePeer::TELEFONO_MOVIL => 13, DocentePeer::TITULO => 14, DocentePeer::LIBRETA_SANITARIA => 15, DocentePeer::PSICOFISICO => 16, DocentePeer::ACTIVO => 17, DocentePeer::FK_PROVINCIA_ID => 18, DocentePeer::FK_PAIS_ID => 19, ), + BasePeer::TYPE_FIELDNAME => array ('id' => 0, 'apellido' => 1, 'nombre' => 2, 'sexo' => 3, 'fecha_nacimiento' => 4, 'fk_tipodocumento_id' => 5, 'nro_documento' => 6, 'lugar_nacimiento' => 7, 'direccion' => 8, 'ciudad' => 9, 'codigo_postal' => 10, 'email' => 11, 'telefono' => 12, 'telefono_movil' => 13, 'titulo' => 14, 'libreta_sanitaria' => 15, 'psicofisico' => 16, 'activo' => 17, 'fk_provincia_id' => 18, 'fk_pais_id' => 19, ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ) ); @@ -158,6 +164,8 @@ $criteria->addSelectColumn(DocentePeer::NRO_DOCUMENTO); + $criteria->addSelectColumn(DocentePeer::LUGAR_NACIMIENTO); + $criteria->addSelectColumn(DocentePeer::DIRECCION); $criteria->addSelectColumn(DocentePeer::CIUDAD); @@ -180,6 +188,8 @@ $criteria->addSelectColumn(DocentePeer::FK_PROVINCIA_ID); + $criteria->addSelectColumn(DocentePeer::FK_PAIS_ID); + } const COUNT = 'COUNT(docente.ID)'; @@ -315,6 +325,34 @@ + public static function doCountJoinPais(Criteria $criteria, $distinct = false, $con = null) + { + $criteria = clone $criteria; + + $criteria->clearSelectColumns()->clearOrderByColumns(); + if ($distinct || in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) { + $criteria->addSelectColumn(DocentePeer::COUNT_DISTINCT); + } else { + $criteria->addSelectColumn(DocentePeer::COUNT); + } + + foreach($criteria->getGroupByColumns() as $column) + { + $criteria->addSelectColumn($column); + } + + $criteria->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + + $rs = DocentePeer::doSelectRS($criteria, $con); + if ($rs->next()) { + return $rs->getInt(1); + } else { + return 0; + } + } + + + public static function doSelectJoinTipodocumento(Criteria $c, $con = null) { $c = clone $c; @@ -409,6 +447,53 @@ + public static function doSelectJoinPais(Criteria $c, $con = null) + { + $c = clone $c; + + if ($c->getDbName() == Propel::getDefaultDB()) { + $c->setDbName(self::DATABASE_NAME); + } + + DocentePeer::addSelectColumns($c); + $startcol = (DocentePeer::NUM_COLUMNS - DocentePeer::NUM_LAZY_LOAD_COLUMNS) + 1; + PaisPeer::addSelectColumns($c); + + $c->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = BasePeer::doSelect($c, $con); + $results = array(); + + while($rs->next()) { + + $omClass = DocentePeer::getOMClass(); + + $cls = Propel::import($omClass); + $obj1 = new $cls(); + $obj1->hydrate($rs); + + $omClass = PaisPeer::getOMClass(); + + $cls = Propel::import($omClass); + $obj2 = new $cls(); + $obj2->hydrate($rs, $startcol); + + $newObject = true; + foreach($results as $temp_obj1) { + $temp_obj2 = $temp_obj1->getPais(); if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) { + $newObject = false; + $temp_obj2->addDocente($obj1); break; + } + } + if ($newObject) { + $obj2->initDocentes(); + $obj2->addDocente($obj1); } + $results[] = $obj1; + } + return $results; + } + + + public static function doCountJoinAll(Criteria $criteria, $distinct = false, $con = null) { $criteria = clone $criteria; @@ -429,6 +514,8 @@ $criteria->addJoin(DocentePeer::FK_PROVINCIA_ID, ProvinciaPeer::ID); + $criteria->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = DocentePeer::doSelectRS($criteria, $con); if ($rs->next()) { return $rs->getInt(1); @@ -456,10 +543,15 @@ ProvinciaPeer::addSelectColumns($c); $startcol4 = $startcol3 + ProvinciaPeer::NUM_COLUMNS; + PaisPeer::addSelectColumns($c); + $startcol5 = $startcol4 + PaisPeer::NUM_COLUMNS; + $c->addJoin(DocentePeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID); $c->addJoin(DocentePeer::FK_PROVINCIA_ID, ProvinciaPeer::ID); + $c->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = BasePeer::doSelect($c, $con); $results = array(); @@ -518,6 +610,29 @@ $obj3->addDocente($obj1); } + + + $omClass = PaisPeer::getOMClass(); + + + $cls = Propel::import($omClass); + $obj4 = new $cls(); + $obj4->hydrate($rs, $startcol4); + + $newObject = true; + for ($j=0, $resCount=count($results); $j < $resCount; $j++) { + $temp_obj1 = $results[$j]; + $temp_obj4 = $temp_obj1->getPais(); if ($temp_obj4->getPrimaryKey() === $obj4->getPrimaryKey()) { + $newObject = false; + $temp_obj4->addDocente($obj1); break; + } + } + + if ($newObject) { + $obj4->initDocentes(); + $obj4->addDocente($obj1); + } + $results[] = $obj1; } return $results; @@ -543,6 +658,8 @@ $criteria->addJoin(DocentePeer::FK_PROVINCIA_ID, ProvinciaPeer::ID); + $criteria->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = DocentePeer::doSelectRS($criteria, $con); if ($rs->next()) { return $rs->getInt(1); @@ -571,6 +688,8 @@ $criteria->addJoin(DocentePeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID); + $criteria->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = DocentePeer::doSelectRS($criteria, $con); if ($rs->next()) { return $rs->getInt(1); @@ -581,6 +700,36 @@ + public static function doCountJoinAllExceptPais(Criteria $criteria, $distinct = false, $con = null) + { + $criteria = clone $criteria; + + $criteria->clearSelectColumns()->clearOrderByColumns(); + if ($distinct || in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) { + $criteria->addSelectColumn(DocentePeer::COUNT_DISTINCT); + } else { + $criteria->addSelectColumn(DocentePeer::COUNT); + } + + foreach($criteria->getGroupByColumns() as $column) + { + $criteria->addSelectColumn($column); + } + + $criteria->addJoin(DocentePeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID); + + $criteria->addJoin(DocentePeer::FK_PROVINCIA_ID, ProvinciaPeer::ID); + + $rs = DocentePeer::doSelectRS($criteria, $con); + if ($rs->next()) { + return $rs->getInt(1); + } else { + return 0; + } + } + + + public static function doSelectJoinAllExceptTipodocumento(Criteria $c, $con = null) { $c = clone $c; @@ -595,9 +744,14 @@ ProvinciaPeer::addSelectColumns($c); $startcol3 = $startcol2 + ProvinciaPeer::NUM_COLUMNS; + PaisPeer::addSelectColumns($c); + $startcol4 = $startcol3 + PaisPeer::NUM_COLUMNS; + $c->addJoin(DocentePeer::FK_PROVINCIA_ID, ProvinciaPeer::ID); + $c->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = BasePeer::doSelect($c, $con); $results = array(); @@ -631,6 +785,28 @@ $obj2->addDocente($obj1); } + $omClass = PaisPeer::getOMClass(); + + + $cls = Propel::import($omClass); + $obj3 = new $cls(); + $obj3->hydrate($rs, $startcol3); + + $newObject = true; + for ($j=0, $resCount=count($results); $j < $resCount; $j++) { + $temp_obj1 = $results[$j]; + $temp_obj3 = $temp_obj1->getPais(); if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) { + $newObject = false; + $temp_obj3->addDocente($obj1); + break; + } + } + + if ($newObject) { + $obj3->initDocentes(); + $obj3->addDocente($obj1); + } + $results[] = $obj1; } return $results; @@ -652,9 +828,14 @@ TipodocumentoPeer::addSelectColumns($c); $startcol3 = $startcol2 + TipodocumentoPeer::NUM_COLUMNS; + PaisPeer::addSelectColumns($c); + $startcol4 = $startcol3 + PaisPeer::NUM_COLUMNS; + $c->addJoin(DocentePeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID); + $c->addJoin(DocentePeer::FK_PAIS_ID, PaisPeer::ID); + $rs = BasePeer::doSelect($c, $con); $results = array(); @@ -688,12 +869,118 @@ $obj2->addDocente($obj1); } + $omClass = PaisPeer::getOMClass(); + + + $cls = Propel::import($omClass); + $obj3 = new $cls(); + $obj3->hydrate($rs, $startcol3); + + $newObject = true; + for ($j=0, $resCount=count($results); $j < $resCount; $j++) { + $temp_obj1 = $results[$j]; + $temp_obj3 = $temp_obj1->getPais(); if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) { + $newObject = false; + $temp_obj3->addDocente($obj1); + break; + } + } + + if ($newObject) { + $obj3->initDocentes(); + $obj3->addDocente($obj1); + } + $results[] = $obj1; } return $results; } + + public static function doSelectJoinAllExceptPais(Criteria $c, $con = null) + { + $c = clone $c; + + if ($c->getDbName() == Propel::getDefaultDB()) { + $c->setDbName(self::DATABASE_NAME); + } + + DocentePeer::addSelectColumns($c); + $startcol2 = (DocentePeer::NUM_COLUMNS - DocentePeer::NUM_LAZY_LOAD_COLUMNS) + 1; + + TipodocumentoPeer::addSelectColumns($c); + $startcol3 = $startcol2 + TipodocumentoPeer::NUM_COLUMNS; + + ProvinciaPeer::addSelectColumns($c); + $startcol4 = $startcol3 + ProvinciaPeer::NUM_COLUMNS; + + $c->addJoin(DocentePeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID); + + $c->addJoin(DocentePeer::FK_PROVINCIA_ID, ProvinciaPeer::ID); + + + $rs = BasePeer::doSelect($c, $con); + $results = array(); + + while($rs->next()) { + + $omClass = DocentePeer::getOMClass(); + + $cls = Propel::import($omClass); + $obj1 = new $cls(); + $obj1->hydrate($rs); + + $omClass = TipodocumentoPeer::getOMClass(); + + + $cls = Propel::import($omClass); + $obj2 = new $cls(); + $obj2->hydrate($rs, $startcol2); + + $newObject = true; + for ($j=0, $resCount=count($results); $j < $resCount; $j++) { + $temp_obj1 = $results[$j]; + $temp_obj2 = $temp_obj1->getTipodocumento(); if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) { + $newObject = false; + $temp_obj2->addDocente($obj1); + break; + } + } + + if ($newObject) { + $obj2->initDocentes(); + $obj2->addDocente($obj1); + } + + $omClass = ProvinciaPeer::getOMClass(); + + + $cls = Propel::import($omClass); + $obj3 = new $cls(); + $obj3->hydrate($rs, $startcol3); + + $newObject = true; + for ($j=0, $resCount=count($results); $j < $resCount; $j++) { + $temp_obj1 = $results[$j]; + $temp_obj3 = $temp_obj1->getProvincia(); if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) { + $newObject = false; + $temp_obj3->addDocente($obj1); + break; + } + } + + if ($newObject) { + $obj3->initDocentes(); + $obj3->addDocente($obj1); + } + + $results[] = $obj1; + } + return $results; + } + + public static function getTableMap() { return Propel::getDatabaseMap(self::DATABASE_NAME)->getTable(self::TABLE_NAME); Modified: prosistem/alba/trunk/alba/lib/model/om/BasePais.php =================================================================== --- prosistem/alba/trunk/alba/lib/model/om/BasePais.php 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/lib/model/om/BasePais.php 2007-08-22 15:29:37 UTC (rev 4994) @@ -36,6 +36,12 @@ protected $lastAlumnoCriteria = null; + protected $collDocentes; + + + protected $lastDocenteCriteria = null; + + protected $alreadyInSave = false; @@ -226,6 +232,14 @@ } } + if ($this->collDocentes !== null) { + foreach($this->collDocentes as $referrerFK) { + if (!$referrerFK->isDeleted()) { + $affectedRows += $referrerFK->save($con); + } + } + } + $this->alreadyInSave = false; } return $affectedRows; @@ -283,7 +297,15 @@ } } + if ($this->collDocentes !== null) { + foreach($this->collDocentes as $referrerFK) { + if (!$referrerFK->validate($columns)) { + $failureMap = array_merge($failureMap, $referrerFK->getValidationFailures()); + } + } + } + $this->alreadyInValidation = false; } @@ -424,6 +446,10 @@ $copyObj->addAlumno($relObj->copy($deepCopy)); } + foreach($this->getDocentes() as $relObj) { + $copyObj->addDocente($relObj->copy($deepCopy)); + } + } $copyObj->setNew(true); @@ -764,4 +790,144 @@ return $this->collAlumnos; } + + public function initDocentes() + { + if ($this->collDocentes === null) { + $this->collDocentes = array(); + } + } + + + public function getDocentes($criteria = null, $con = null) + { + include_once 'lib/model/om/BaseDocentePeer.php'; + if ($criteria === null) { + $criteria = new Criteria(); + } + elseif ($criteria instanceof Criteria) + { + $criteria = clone $criteria; + } + + if ($this->collDocentes === null) { + if ($this->isNew()) { + $this->collDocentes = array(); + } else { + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + DocentePeer::addSelectColumns($criteria); + $this->collDocentes = DocentePeer::doSelect($criteria, $con); + } + } else { + if (!$this->isNew()) { + + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + DocentePeer::addSelectColumns($criteria); + if (!isset($this->lastDocenteCriteria) || !$this->lastDocenteCriteria->equals($criteria)) { + $this->collDocentes = DocentePeer::doSelect($criteria, $con); + } + } + } + $this->lastDocenteCriteria = $criteria; + return $this->collDocentes; + } + + + public function countDocentes($criteria = null, $distinct = false, $con = null) + { + include_once 'lib/model/om/BaseDocentePeer.php'; + if ($criteria === null) { + $criteria = new Criteria(); + } + elseif ($criteria instanceof Criteria) + { + $criteria = clone $criteria; + } + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + return DocentePeer::doCount($criteria, $distinct, $con); + } + + + public function addDocente(Docente $l) + { + $this->collDocentes[] = $l; + $l->setPais($this); + } + + + + public function getDocentesJoinTipodocumento($criteria = null, $con = null) + { + include_once 'lib/model/om/BaseDocentePeer.php'; + if ($criteria === null) { + $criteria = new Criteria(); + } + elseif ($criteria instanceof Criteria) + { + $criteria = clone $criteria; + } + + if ($this->collDocentes === null) { + if ($this->isNew()) { + $this->collDocentes = array(); + } else { + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + $this->collDocentes = DocentePeer::doSelectJoinTipodocumento($criteria, $con); + } + } else { + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + if (!isset($this->lastDocenteCriteria) || !$this->lastDocenteCriteria->equals($criteria)) { + $this->collDocentes = DocentePeer::doSelectJoinTipodocumento($criteria, $con); + } + } + $this->lastDocenteCriteria = $criteria; + + return $this->collDocentes; + } + + + + public function getDocentesJoinProvincia($criteria = null, $con = null) + { + include_once 'lib/model/om/BaseDocentePeer.php'; + if ($criteria === null) { + $criteria = new Criteria(); + } + elseif ($criteria instanceof Criteria) + { + $criteria = clone $criteria; + } + + if ($this->collDocentes === null) { + if ($this->isNew()) { + $this->collDocentes = array(); + } else { + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + $this->collDocentes = DocentePeer::doSelectJoinProvincia($criteria, $con); + } + } else { + + $criteria->add(DocentePeer::FK_PAIS_ID, $this->getId()); + + if (!isset($this->lastDocenteCriteria) || !$this->lastDocenteCriteria->equals($criteria)) { + $this->collDocentes = DocentePeer::doSelectJoinProvincia($criteria, $con); + } + } + $this->lastDocenteCriteria = $criteria; + + return $this->collDocentes; + } + } \ No newline at end of file Modified: prosistem/alba/trunk/alba/lib/model/om/BaseProvincia.php =================================================================== --- prosistem/alba/trunk/alba/lib/model/om/BaseProvincia.php 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/lib/model/om/BaseProvincia.php 2007-08-22 15:29:37 UTC (rev 4994) @@ -1485,4 +1485,39 @@ return $this->collDocentes; } + + + public function getDocentesJoinPais($criteria = null, $con = null) + { + include_once 'lib/model/om/BaseDocentePeer.php'; + if ($criteria === null) { + $criteria = new Criteria(); + } + elseif ($criteria instanceof Criteria) + { + $criteria = clone $criteria; + } + + if ($this->collDocentes === null) { + if ($this->isNew()) { + $this->collDocentes = array(); + } else { + + $criteria->add(DocentePeer::FK_PROVINCIA_ID, $this->getId()); + + $this->collDocentes = DocentePeer::doSelectJoinPais($criteria, $con); + } + } else { + + $criteria->add(DocentePeer::FK_PROVINCIA_ID, $this->getId()); + + if (!isset($this->lastDocenteCriteria) || !$this->lastDocenteCriteria->equals($criteria)) { + $this->collDocentes = DocentePeer::doSelectJoinPais($criteria, $con); + } + } + $this->lastDocenteCriteria = $criteria; + + return $this->collDocentes; + } + } \ No newline at end of file Modified: prosistem/alba/trunk/alba/lib/model/om/BaseTipodocumento.php =================================================================== --- prosistem/alba/trunk/alba/lib/model/om/BaseTipodocumento.php 2007-08-22 15:05:32 UTC (rev 4993) +++ prosistem/alba/trunk/alba/lib/model/om/BaseTipodocumento.php 2007-08-22 15:29:37 UTC (rev 4994) @@ -1000,4 +1000,39 @@ return $this->collDocentes; } + + + public function getDocentesJoinPais($criteria = null, $con = null) + { + include_once 'lib/model/om/BaseDocentePeer.php'; + if ($criteria === null) { + $criteria = new Criteria(); + } + elseif ($criteria instanceof Criteria) + { + $criteria = clone $criteria; + } + + if ($this->collDocentes === null) { + if ($this->isNew()) { + $this->collDocentes = array(); + } else { + + $criteria->add(DocentePeer::FK_TIPODOCUMENTO_ID, $this->getId()); + + $this->collDocentes = DocentePeer::doSelectJoinPais($criteria, $con); + } + } else { + + $criteria->add(DocentePeer::FK_TIPODOCUMENTO_ID, $this->getId()); + + if (!isset($this->lastDocenteCriteria) || !$this->lastDocenteCriteria->equals($criteria)) { + $this->collDocentes = DocentePeer::doSelectJoinPais($criteria, $con); + } + } + $this->lastDocenteCriteria = $criteria; + + return $this->collDocentes; + } + } \ No newline at end of file
participants (1)
-
commits@pressenter.com.ar