Skip to content
Snippets Groups Projects
Commit 91f27cca authored by lecluse's avatar lecluse
Browse files

Fusion des périodes et des périodes d'enseignement

parent 54309c11
No related branches found
No related tags found
No related merge requests found
Showing
with 270 additions and 215 deletions
......@@ -83,13 +83,18 @@ class ElementPedagogique
*/
private $id;
/**
* @var \Doctrine\Common\Collections\Collection
*/
private $cheminPedagogique;
/**
* @var \Application\Entity\Db\Structure
*/
private $structure;
/**
* @var \Application\Entity\Db\PeriodeEnseignement
* @var \Application\Entity\Db\Periode
*/
private $periode;
......@@ -119,10 +124,12 @@ class ElementPedagogique
private $etape;
/**
* @var \Doctrine\Common\Collections\Collection
* Constructor
*/
private $cheminPedagogique;
public function __construct()
{
$this->cheminPedagogique = new \Doctrine\Common\Collections\ArrayCollection();
}
/**
* Set histoCreation
......@@ -344,10 +351,10 @@ class ElementPedagogique
/**
* Set periode
*
* @param \Application\Entity\Db\PeriodeEnseignement $periode
* @param \Application\Entity\Db\Periode $periode
* @return ElementPedagogique
*/
public function setPeriode(\Application\Entity\Db\PeriodeEnseignement $periode = null)
public function setPeriode(\Application\Entity\Db\Periode $periode = null)
{
$this->periode = $periode;
......@@ -357,7 +364,7 @@ class ElementPedagogique
/**
* Get periode
*
* @return \Application\Entity\Db\PeriodeEnseignement
* @return \Application\Entity\Db\Periode
*/
public function getPeriode()
{
......
......@@ -7,9 +7,9 @@
<index name="IDX_CCADDAC059860CDC" columns="HISTO_CREATEUR_ID"/>
<index name="IDX_CCADDAC07E9E2204" columns="HISTO_DESTRUCTEUR_ID"/>
<index name="IDX_CCADDAC063F06898" columns="HISTO_MODIFICATEUR_ID"/>
<index name="IDX_CCADDAC0C0569A10" columns="PERIODE_ID"/>
<index name="IDX_CCADDAC0E9B3446E" columns="SOURCE_ID"/>
<index name="IDX_CCADDAC0884B0F7B" columns="STRUCTURE_ID"/>
<index name="IDX_CCADDAC0C0569A10" columns="PERIODE_ID"/>
</indexes>
<unique-constraints>
<unique-constraint name="ep_code__un" columns="SOURCE_CODE"/>
......@@ -25,22 +25,22 @@
<field name="tauxFoad" type="integer" column="TAUX_FOAD" nullable="true"/>
<field name="validiteDebut" type="datetime" column="VALIDITE_DEBUT" nullable="false"/>
<field name="validiteFin" type="datetime" column="VALIDITE_FIN" nullable="true"/>
<many-to-one field="source" target-entity="Application\Entity\Db\Source">
<join-columns>
<join-column name="SOURCE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<!-- NB: inversed-by ajouté à la main -->
<many-to-one field="structure" target-entity="Application\Entity\Db\Structure" inversed-by="elementPedagogique">
<join-columns>
<join-column name="STRUCTURE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="periode" target-entity="Application\Entity\Db\PeriodeEnseignement">
<many-to-one field="periode" target-entity="Application\Entity\Db\Periode">
<join-columns>
<join-column name="PERIODE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="source" target-entity="Application\Entity\Db\Source">
<join-columns>
<join-column name="SOURCE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="histoModificateur" target-entity="Application\Entity\Db\Utilisateur">
<join-columns>
<join-column name="HISTO_MODIFICATEUR_ID" referenced-column-name="ID"/>
......
......@@ -2,21 +2,22 @@
<doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd">
<entity name="Application\Entity\Db\Periode" table="PERIODE">
<indexes>
<index name="IDX_C230EB2059860CDC" columns="HISTO_CREATEUR_ID"/>
<index name="IDX_C230EB207E9E2204" columns="HISTO_DESTRUCTEUR_ID"/>
<index name="IDX_C230EB2063F06898" columns="HISTO_MODIFICATEUR_ID"/>
<index name="IDX_C230EB206C6285FC" columns="TYPE_INTERVENANT_ID"/>
<index name="IDX_AC86D3E959860CDC" columns="HISTO_CREATEUR_ID"/>
<index name="IDX_AC86D3E97E9E2204" columns="HISTO_DESTRUCTEUR_ID"/>
<index name="IDX_AC86D3E963F06898" columns="HISTO_MODIFICATEUR_ID"/>
<index name="IDX_AC86D3E96C6285FC" columns="TYPE_INTERVENANT_ID"/>
</indexes>
<id name="id" type="integer" column="ID">
<generator strategy="SEQUENCE"/>
</id>
<field name="enseignement" type="boolean" column="ENSEIGNEMENT" nullable="true"/>
<field name="histoCreation" type="datetime" column="HISTO_CREATION" nullable="false"/>
<field name="histoDestruction" type="datetime" column="HISTO_DESTRUCTION" nullable="true"/>
<field name="histoModification" type="datetime" column="HISTO_MODIFICATION" nullable="false"/>
<field name="libelle" type="string" column="LIBELLE" length="20" nullable="false"/>
<field name="validiteDebut" type="datetime" column="VALIDITE_DEBUT" nullable="false"/>
<field name="validiteFin" type="datetime" column="VALIDITE_FIN" nullable="true"/>
<field name="ordre" type="integer" column="ordre" nullable="false"/>
<field name="libelleCourt" type="string" column="LIBELLE_COURT" length="15" nullable="true"/>
<field name="libelleLong" type="string" column="LIBELLE_LONG" length="40" nullable="false"/>
<field name="ordre" type="integer" column="ORDRE" nullable="false"/>
<field name="paiement" type="boolean" column="PAIEMENT" nullable="true"/>
<many-to-one field="typeIntervenant" target-entity="Application\Entity\Db\TypeIntervenant">
<join-columns>
<join-column name="TYPE_INTERVENANT_ID" referenced-column-name="ID"/>
......
......@@ -12,6 +12,9 @@
<index name="IDX_DED864C879CEECC4" columns="STRUCTURE_AFF_ID"/>
<index name="IDX_DED864C8B5E842BE" columns="STRUCTURE_ENS_ID"/>
</indexes>
<unique-constraints>
<unique-constraint name="service__un" columns="INTERVENANT_ID,ELEMENT_PEDAGOGIQUE_ID,ANNEE_ID,ETABLISSEMENT_ID,HISTO_DESTRUCTION"/>
</unique-constraints>
<id name="id" type="integer" column="ID">
<generator strategy="SEQUENCE"/>
</id>
......
......@@ -11,9 +11,6 @@
<index name="IDX_42741E7D78FF2BCB" columns="INTERVENANT_ID"/>
<index name="IDX_42741E7D884B0F7B" columns="STRUCTURE_ID"/>
</indexes>
<unique-constraints>
<unique-constraint name="service_referentiel_un" columns="FONCTION_ID,INTERVENANT_ID,ANNEE_ID,HISTO_DESTRUCTION"/>
</unique-constraints>
<id name="id" type="integer" column="ID">
<generator strategy="SEQUENCE"/>
</id>
......
......@@ -5,10 +5,11 @@
<index name="IDX_157F091959860CDC" columns="HISTO_CREATEUR_ID"/>
<index name="IDX_157F09197E9E2204" columns="HISTO_DESTRUCTEUR_ID"/>
<index name="IDX_157F091963F06898" columns="HISTO_MODIFICATEUR_ID"/>
<index name="IDX_157F0919E9B3446E" columns="SOURCE_ID"/>
<index name="IDX_157F09196C6285FC" columns="TYPE_INTERVENANT_ID"/>
</indexes>
<unique-constraints>
<unique-constraint name="statut_intervenant__un" columns="CODE"/>
<unique-constraint name="statut_intervenant__un" columns="SOURCE_CODE"/>
</unique-constraints>
<id name="id" type="integer" column="ID">
<generator strategy="SEQUENCE"/>
......@@ -20,7 +21,7 @@
<field name="histoModification" type="datetime" column="HISTO_MODIFICATION" nullable="false"/>
<field name="libelle" type="string" column="LIBELLE" length="30" nullable="false"/>
<field name="serviceStatutaire" type="float" column="SERVICE_STATUTAIRE" precision="126" scale="0" nullable="false"/>
<field name="sourceCode" type="string" column="SOURCE_CODE" length="100" nullable="true"/>
<field name="sourceCode" type="string" column="SOURCE_CODE" length="100" nullable="false"/>
<field name="validiteDebut" type="datetime" column="VALIDITE_DEBUT" nullable="false"/>
<field name="validiteFin" type="datetime" column="VALIDITE_FIN" nullable="true"/>
<many-to-one field="typeIntervenant" target-entity="Application\Entity\Db\TypeIntervenant">
......@@ -28,6 +29,11 @@
<join-column name="TYPE_INTERVENANT_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="source" target-entity="Application\Entity\Db\Source">
<join-columns>
<join-column name="SOURCE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="histoModificateur" target-entity="Application\Entity\Db\Utilisateur">
<join-columns>
<join-column name="HISTO_MODIFICATEUR_ID" referenced-column-name="ID"/>
......
......@@ -8,6 +8,7 @@
<index name="IDX_2BC329057E9E2204" columns="HISTO_DESTRUCTEUR_ID"/>
<index name="IDX_2BC3290563F06898" columns="HISTO_MODIFICATEUR_ID"/>
<index name="IDX_2BC32905E9B3446E" columns="SOURCE_ID"/>
<index name="IDX_2BC329053C7479AE" columns="STRUCTURE_NIV2_ID"/>
<index name="IDX_2BC32905C2443469" columns="TYPE_ID"/>
</indexes>
<unique-constraints>
......@@ -30,6 +31,11 @@
<join-column name="SOURCE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="structureNiv2" target-entity="Application\Entity\Db\Structure">
<join-columns>
<join-column name="STRUCTURE_NIV2_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="type" target-entity="Application\Entity\Db\TypeStructure">
<join-columns>
<join-column name="TYPE_ID" referenced-column-name="ID"/>
......@@ -60,11 +66,6 @@
<join-column name="PARENTE_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<many-to-one field="structureNiv2" target-entity="Application\Entity\Db\Structure">
<join-columns>
<join-column name="STRUCTURE_NIV2_ID" referenced-column-name="ID"/>
</join-columns>
</many-to-one>
<one-to-many field="elementPedagogique" target-entity="Application\Entity\Db\ElementPedagogique" mapped-by="structure" />
</entity>
</doctrine-mapping>
......@@ -10,6 +10,9 @@
<index name="IDX_C2A901857E9E2204" columns="HISTO_DESTRUCTEUR_ID"/>
<index name="IDX_C2A9018563F06898" columns="HISTO_MODIFICATEUR_ID"/>
</indexes>
<unique-constraints>
<unique-constraint name="volume_horaire__un" columns="SERVICE_ID,PERIODE_ID,TYPE_INTERVENTION_ID,MOTIF_NON_PAIEMENT_ID"/>
</unique-constraints>
<id name="id" type="integer" column="ID">
<generator strategy="SEQUENCE"/>
</id>
......
......@@ -24,11 +24,6 @@ class Periode
*/
private $histoModification;
/**
* @var string
*/
private $libelle;
/**
* @var \DateTime
*/
......@@ -69,6 +64,26 @@ class Periode
*/
private $histoCreateur;
/**
* @var boolean
*/
private $enseignement;
/**
* @var string
*/
private $libelleCourt;
/**
* @var string
*/
private $libelleLong;
/**
* @var boolean
*/
private $paiement;
/**
* Set histoCreation
......@@ -140,197 +155,220 @@ class Periode
}
/**
* Set libelle
* Set ordre
*
* @param string $libelle
* @param integer $ordre
* @return Periode
*/
public function setLibelle($libelle)
public function setOrdre($ordre)
{
$this->libelle = $libelle;
$this->ordre = $ordre;
return $this;
}
/**
* Get libelle
* Get ordre
*
* @return string
* @return integer
*/
public function getOrdre()
{
return $this->ordre;
}
/**
* Get id
*
* @return integer
*/
public function getLibelle()
public function getId()
{
return $this->libelle;
return $this->id;
}
/**
* Set validiteDebut
* Set typeIntervenant
*
* @param \DateTime $validiteDebut
* @param \Application\Entity\Db\TypeIntervenant $typeIntervenant
* @return Periode
*/
public function setValiditeDebut($validiteDebut)
public function setTypeIntervenant(\Application\Entity\Db\TypeIntervenant $typeIntervenant = null)
{
$this->validiteDebut = $validiteDebut;
$this->typeIntervenant = $typeIntervenant;
return $this;
}
/**
* Get validiteDebut
* Get typeIntervenant
*
* @return \DateTime
* @return \Application\Entity\Db\TypeIntervenant
*/
public function getValiditeDebut()
public function getTypeIntervenant()
{
return $this->validiteDebut;
return $this->typeIntervenant;
}
/**
* Set validiteFin
* Set histoModificateur
*
* @param \DateTime $validiteFin
* @param \Application\Entity\Db\Utilisateur $histoModificateur
* @return Periode
*/
public function setValiditeFin($validiteFin)
public function setHistoModificateur(\Application\Entity\Db\Utilisateur $histoModificateur = null)
{
$this->validiteFin = $validiteFin;
$this->histoModificateur = $histoModificateur;
return $this;
}
/**
* Get validiteFin
* Get histoModificateur
*
* @return \DateTime
* @return \Application\Entity\Db\Utilisateur
*/
public function getValiditeFin()
public function getHistoModificateur()
{
return $this->validiteFin;
return $this->histoModificateur;
}
/**
* Set ordre
* Set histoDestructeur
*
* @param integer $ordre
* @param \Application\Entity\Db\Utilisateur $histoDestructeur
* @return Periode
*/
public function setOrdre($ordre)
public function setHistoDestructeur(\Application\Entity\Db\Utilisateur $histoDestructeur = null)
{
$this->ordre = $ordre;
$this->histoDestructeur = $histoDestructeur;
return $this;
}
/**
* Get ordre
* Get histoDestructeur
*
* @return integer
* @return \Application\Entity\Db\Utilisateur
*/
public function getOrdre()
public function getHistoDestructeur()
{
return $this->ordre;
return $this->histoDestructeur;
}
/**
* Get id
* Set histoCreateur
*
* @return integer
* @param \Application\Entity\Db\Utilisateur $histoCreateur
* @return Periode
*/
public function getId()
public function setHistoCreateur(\Application\Entity\Db\Utilisateur $histoCreateur = null)
{
return $this->id;
$this->histoCreateur = $histoCreateur;
return $this;
}
/**
* Set typeIntervenant
* Get histoCreateur
*
* @param \Application\Entity\Db\TypeIntervenant $typeIntervenant
* @return \Application\Entity\Db\Utilisateur
*/
public function getHistoCreateur()
{
return $this->histoCreateur;
}
/**
* Set enseignement
*
* @param boolean $enseignement
* @return Periode
*/
public function setTypeIntervenant(\Application\Entity\Db\TypeIntervenant $typeIntervenant = null)
public function setEnseignement($enseignement)
{
$this->typeIntervenant = $typeIntervenant;
$this->enseignement = $enseignement;
return $this;
}
/**
* Get typeIntervenant
* Get enseignement
*
* @return \Application\Entity\Db\TypeIntervenant
* @return boolean
*/
public function getTypeIntervenant()
public function getEnseignement()
{
return $this->typeIntervenant;
return $this->enseignement;
}
/**
* Set histoModificateur
* Set libelleCourt
*
* @param \Application\Entity\Db\Utilisateur $histoModificateur
* @param string $libelleCourt
* @return Periode
*/
public function setHistoModificateur(\Application\Entity\Db\Utilisateur $histoModificateur = null)
public function setLibelleCourt($libelleCourt)
{
$this->histoModificateur = $histoModificateur;
$this->libelleCourt = $libelleCourt;
return $this;
}
/**
* Get histoModificateur
* Get libelleCourt
*
* @return \Application\Entity\Db\Utilisateur
* @return string
*/
public function getHistoModificateur()
public function getLibelleCourt()
{
return $this->histoModificateur;
return $this->libelleCourt;
}
/**
* Set histoDestructeur
* Set libelleLong
*
* @param \Application\Entity\Db\Utilisateur $histoDestructeur
* @param string $libelleLong
* @return Periode
*/
public function setHistoDestructeur(\Application\Entity\Db\Utilisateur $histoDestructeur = null)
public function setLibelleLong($libelleLong)
{
$this->histoDestructeur = $histoDestructeur;
$this->libelleLong = $libelleLong;
return $this;
}
/**
* Get histoDestructeur
* Get libelleLong
*
* @return \Application\Entity\Db\Utilisateur
* @return string
*/
public function getHistoDestructeur()
public function getLibelleLong()
{
return $this->histoDestructeur;
return $this->libelleLong;
}
/**
* Set histoCreateur
* Set paiement
*
* @param \Application\Entity\Db\Utilisateur $histoCreateur
* @param boolean $paiement
* @return Periode
*/
public function setHistoCreateur(\Application\Entity\Db\Utilisateur $histoCreateur = null)
public function setPaiement($paiement)
{
$this->histoCreateur = $histoCreateur;
$this->paiement = $paiement;
return $this;
}
/**
* Get histoCreateur
* Get paiement
*
* @return \Application\Entity\Db\Utilisateur
* @return boolean
*/
public function getHistoCreateur()
public function getPaiement()
{
return $this->histoCreateur;
return $this->paiement;
}
/*******************************************************************************************************
......@@ -343,7 +381,6 @@ class Periode
*/
public function __toString()
{
return $this->getLibelle();
return $this->getLibelleLong();
}
}
......@@ -100,15 +100,15 @@ class ElementPedagogiqueRepository extends EntityRepository
$whereContext = $whereContext ? 'AND ' . $whereContext : null;
$sql = <<<EOS
SELECT ep.id, ep.source_code, ep.libelle, e.libelle libelle_etape, e.niveau, pe.libelle libelle_pe,
SELECT ep.id, ep.source_code, ep.libelle, e.libelle libelle_etape, e.niveau, pe.libelle_long libelle_pe,
gtf.libelle_court libelle_gtf, tf.libelle_long libelle_tf, v.etape_info
FROM element_pedagogique ep
JOIN periode_enseignement pe ON ep.periode_id = pe.id
JOIN etape e ON ep.etape_id = e.id
JOIN type_formation tf ON e.type_formation_id = tf.id
JOIN groupe_type_formation gtf ON tf.groupe_id = gtf.id
JOIN structure s ON ep.structure_id = s.id
JOIN V_CONCAT_ELEMENT_INFOS v ON ep.id = v.id
LEFT JOIN periode pe ON ep.periode_id = pe.id
WHERE $whereTerm
$whereContext
AND ROWNUM <= :limit
......@@ -119,15 +119,15 @@ EOS;
select * from (
select ep.id,
rank() over (partition by ep.id order by cp.ordre) rang,
ep.source_code, ep.libelle, e.libelle libelle_etape, e.niveau, pe.libelle libelle_pe, gtf.libelle_court libelle_gtf, tf.libelle_long libelle_tf,
ep.source_code, ep.libelle, e.libelle libelle_etape, e.niveau, pe.libelle_long libelle_pe, gtf.libelle_court libelle_gtf, tf.libelle_long libelle_tf,
ep.source_code || ' ' || ep.libelle|| ' ' || e.source_code || ' ' || e.libelle || ' ' || gtf.LIBELLE_COURT || ' ' || e.NIVEAU || ' ' || tf.LIBELLE_COURT etape_info
from chemin_pedagogique cp
JOIN element_pedagogique ep ON cp.element_pedagogique_id = ep.id
JOIN periode_enseignement pe ON ep.periode_id = pe.id
JOIN etape e ON cp.etape_id = e.id
JOIN TYPE_FORMATION tf on e.TYPE_FORMATION_ID = tf.ID and tf.HISTO_DESTRUCTEUR_ID is null and sysdate between tf.VALIDITE_DEBUT and nvl(tf.VALIDITE_FIN, sysdate)
JOIN GROUPE_TYPE_FORMATION gtf on tf.GROUPE_ID = gtf.ID and gtf.HISTO_DESTRUCTEUR_ID is null
JOIN structure s ON ep.structure_id = s.id
LEFT JOIN periode pe ON ep.periode_id = pe.id
where e.HISTO_DESTRUCTEUR_ID is null and sysdate between e.VALIDITE_DEBUT and nvl(e.VALIDITE_FIN, sysdate)
and lower(ep.source_code || ' ' || ep.libelle|| ' ' || e.source_code || ' ' || e.libelle || ' ' || gtf.LIBELLE_COURT || ' ' || e.NIVEAU || ' ' || tf.LIBELLE_COURT) like '%carri_res publiques%'
order by gtf.ordre, e.niveau, ep.libelle
......@@ -183,15 +183,15 @@ EOS;
select * from (
select ep.id,
rank() over (partition by ep.id order by cp.ordre) rang,
ep.source_code, ep.libelle, e.libelle libelle_etape, e.niveau, pe.libelle libelle_pe, gtf.libelle_court libelle_gtf, tf.libelle_long libelle_tf,
ep.source_code, ep.libelle, e.libelle libelle_etape, e.niveau, pe.libelle_long libelle_pe, gtf.libelle_court libelle_gtf, tf.libelle_long libelle_tf,
ep.source_code || ' ' || ep.libelle|| ' ' || e.source_code || ' ' || e.libelle || ' ' || gtf.LIBELLE_COURT || ' ' || e.NIVEAU || ' ' || tf.LIBELLE_COURT etape_info
from chemin_pedagogique cp
JOIN element_pedagogique ep ON cp.element_pedagogique_id = ep.id
JOIN periode_enseignement pe ON ep.periode_id = pe.id
JOIN etape e ON cp.etape_id = e.id
JOIN TYPE_FORMATION tf on e.TYPE_FORMATION_ID = tf.ID and tf.HISTO_DESTRUCTEUR_ID is null and sysdate between tf.VALIDITE_DEBUT and nvl(tf.VALIDITE_FIN, sysdate)
JOIN GROUPE_TYPE_FORMATION gtf on tf.GROUPE_ID = gtf.ID and gtf.HISTO_DESTRUCTEUR_ID is null
JOIN structure s ON ep.structure_id = s.id
LEFT JOIN periode pe ON ep.periode_id = pe.id
where e.HISTO_DESTRUCTEUR_ID is null and sysdate between e.VALIDITE_DEBUT and nvl(e.VALIDITE_FIN, sysdate)
and $whereTerm
$whereContext
......
......@@ -14,6 +14,11 @@ class StatutIntervenant
return $this->getLibelle();
}
/**
* @var \Application\Entity\Db\Source
*/
private $source;
/**
* @var string
*/
......@@ -90,29 +95,6 @@ class StatutIntervenant
private $histoCreateur;
/**
* Set sourceCode
*
* @param string $sourceCode
* @return StatutIntervenant
*/
public function setCode($sourceCode)
{
$this->sourceCode = $sourceCode;
return $this;
}
/**
* Get sourceCode
*
* @return string
*/
public function getCode()
{
return $this->sourceCode;
}
/**
* Set depassement
*
......@@ -274,6 +256,29 @@ class StatutIntervenant
return $this->serviceStatutaire;
}
/**
* Set sourceCode
*
* @param string $sourceCode
* @return StatutIntervenant
*/
public function setSourceCode($sourceCode)
{
$this->sourceCode = $sourceCode;
return $this;
}
/**
* Get sourceCode
*
* @return string
*/
public function getSourceCode()
{
return $this->sourceCode;
}
/**
* Set validiteDebut
*
......@@ -421,4 +426,27 @@ class StatutIntervenant
{
return $this->histoCreateur;
}
/**
* Set source
*
* @param \Application\Entity\Db\Source $source
* @return StatutIntervenant
*/
public function setSource(\Application\Entity\Db\Source $source = null)
{
$this->source = $source;
return $this;
}
/**
* Get source
*
* @return \Application\Entity\Db\Source
*/
public function getSource()
{
return $this->source;
}
}
......@@ -52,14 +52,6 @@ class Saisie extends Form implements \Zend\InputFilter\InputFilterProviderInterf
));
$this->add($interneExterne);
/*$elementPedagogique = new SearchAndSelect('elementPedagogique');
$elementPedagogique->setLabel("Elément pédagogique :")
->setAttributes(array('title' => "Saisissez 2 lettres au moins"))
->setAutocompleteSource(
$url->fromRoute('of/default', array('action' => 'search-element') )
);
$this->add($elementPedagogique);*/
$queryTemplate = array('structure' => '__structure__', 'niveau' => '__niveau__', 'etape' => '__etape__');
$urlStructures = $url->fromRoute('of/default', array('action' => 'search-structures'), array('query' => $queryTemplate));
$urlNiveaux = $url->fromRoute('of/default', array('action' => 'search-niveaux'), array('query' => $queryTemplate));
......@@ -72,11 +64,7 @@ class Saisie extends Form implements \Zend\InputFilter\InputFilterProviderInterf
->setNiveauxSourceUrl($urlNiveaux)
->setEtapesSourceUrl($urlEtapes)
->setElementsSourceUrl($urlElements)
->setStructureEnabled(false)
// ->setNiveauEnabled(false)
->setEtapeEnabled(false)
;
// $fs->get('element')->setName('elementPedagogique');
$this->add($fs);
$etablissement = new SearchAndSelect('etablissement');
......@@ -89,11 +77,6 @@ class Saisie extends Form implements \Zend\InputFilter\InputFilterProviderInterf
->setAttributes(array('title' => "Saisissez le libellé (2 lettres au moins)"));
$this->add($etablissement);
/**
* Csrf
*/
$this->add(new Csrf('security'));
/**
* Submit
*/
......
......@@ -23,13 +23,6 @@ class Periode extends AbstractService
*/
protected $repo;
/**
* Périodes par types d'intervenants
*
* @var array[]
*/
protected $periodesByTypeIntervenant;
......@@ -46,28 +39,41 @@ class Periode extends AbstractService
if (empty($qb)) $qb = $this->getRepo()->createQueryBuilder('p');
$qb->andWhere('p.typeIntervenant = :type')->setParameter('type', $typeIntervenant);
$qb->orderBy('p.ordre');
return $qb;
}
/**
* Retourne la liste des périodes d'enseignement
*
* @param QueryBuilder|null $queryBuilder
* @return QueryBuilder
*/
public function finderByEnseignement( QueryBuilder $qb=null )
{
if (empty($qb)) $qb = $this->getRepo()->createQueryBuilder('p');
$qb->andWhere('p.enseignement = 1');
return $qb;
}
/**
* Retourne la liste des périodes
*
* @param EntityTypeIntervenant $typeIntervenant
* @return type
* @param QueryBuilder|null $queryBuilder
* @return Application\Entity\Db\Periode[]
*/
public function getByTypeIntervenant( EntityTypeIntervenant $typeIntervenant )
public function getList( QueryBuilder $qb=null )
{
if (! isset($this->periodesByTypeIntervenant[$typeIntervenant->getId()])){
$periodes = $this->finderByTypeIntervenant( $typeIntervenant )->getQuery()->execute();
$this->periodesByTypeIntervenant[$typeIntervenant->getId()] = array();
if (empty($qb)) $qb = $this->getRepo()->createQueryBuilder('p');
$qb->orderBy('p.ordre');
$periodes = $qb->getQuery()->execute();
$result = array();
foreach( $periodes as $periode ){
$this->periodesByTypeIntervenant[$typeIntervenant->getId()][$periode->getId()] = $periode;
$result[$periode->getId()] = $periode;
}
return $result;
}
return $this->periodesByTypeIntervenant[$typeIntervenant->getId()];
}
/**
*
......
......@@ -94,7 +94,9 @@ class Ligne extends AbstractHelper implements ServiceLocatorAwareInterface
protected function renderIntervenant($intervenant)
{
$out = (string)$intervenant;
$url = $this->getView()->url('intervenant/default', array('action' => 'voir', 'id' => $intervenant->getId()));
$pourl = $this->getView()->url('intervenant/default', array('action' => 'apercevoir', 'id' => $intervenant->getId()));
$out = '<a data-poload="'.$pourl.'" href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action">'.$intervenant.'</a>';
return $out;
}
......@@ -104,8 +106,7 @@ class Ligne extends AbstractHelper implements ServiceLocatorAwareInterface
$url = $this->getView()->url('structure/default', array('action' => 'voir', 'id' => $structure->getId()));
$pourl = $this->getView()->url('structure/default', array('action' => 'apercevoir', 'id' => $structure->getId()));
$out = '<a data-poload="/ose/test" href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action services">'.$structure->getLibelleCourt().'</a>';
$out = '<a href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action">'.$structure.'</a>';
return $out;
}
......@@ -114,8 +115,7 @@ class Ligne extends AbstractHelper implements ServiceLocatorAwareInterface
if (! $element) return '';
$url = $this->getView()->url('of/default', array('action' => 'voir-element'), array('query' => array('id' => $element->getId())));
$pourl = $this->getView()->url('of/default', array('action' => 'apercevoir-element'), array('query' => array('id' => $element->getId())));
$out = '<a href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action services">'.$element->getSourceCode().' - '.$element->getLibelle().'</a>';
$out = '<a href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action">'.$element->getSourceCode().' - '.$element.'</a>';
return $out;
}
......@@ -129,8 +129,8 @@ class Ligne extends AbstractHelper implements ServiceLocatorAwareInterface
{
if ($etablissement != $this->context['etablissement']){
$url = $this->getView()->url('etablissement/default', array('action' => 'voir', 'id' => $etablissement->getId()));
$pourl = $this->getView()->url('etablissement/default', array('action' => 'voir', 'id' => $etablissement->getId()));
$out = '<a href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action services">'.$etablissement->getLibelle().'</a>';
$pourl = $this->getView()->url('etablissement/default', array('action' => 'apercevoir', 'id' => $etablissement->getId()));
$out = '<a href="'.$url.'" data-po-href="'.$pourl.'" class="modal-action">'.$etablissement.'</a>';
}else{
$out = '';
}
......
......@@ -149,12 +149,23 @@ class Liste extends AbstractHelper implements ServiceLocatorAwareInterface
$serviceTypeIntervention = $this->getServiceLocator()->getServiceLocator()->get('ApplicationTypeIntervention');
/* @var $serviceTypeIntervention \Application\Service\TypeIntervention */
$periodes = null;
$elementPedagogique = $this->getService()->getElementPedagogique();
$periodes = null;
if ($elementPedagogique){
$periode = $elementPedagogique->getPeriode();
if ($periode){
// Liste des périodes possibles iniitalisée en fonction de l'élément pédagogique
$periodes = array( $periode->getId() => $periode );
}
}
if (! $periodes){
// Récupération des périodes issues du service Periodes
$servicePeriode = $this->getServiceLocator()->getServiceLocator()->get('applicationPeriode');
/* @var $servicePeriode \Application\Service\Periode */
$periodes = array(0 => null);
$periodes += $servicePeriode->getByTypeIntervenant( $this->getService()->getIntervenant()->getType() );
/* Récupération éventuelle des volumes horaires saisis sur d'autres périodes que celles habituelles */
$periodes = $servicePeriode->getList( $servicePeriode->finderByEnseignement() );
}
/* Récupération éventuelle des volumes horaires saisis sur d'autres périodes que celles habituelles (en cas de besoin) */
foreach( $volumeHoraires as $vh ){
if ($vh->getPeriode() && ! isset($periodes[$vh->getPeriode()->getId()])){
$periodes[$vh->getPeriode()->getId()] = $vh->getPeriode();
......@@ -164,6 +175,7 @@ class Liste extends AbstractHelper implements ServiceLocatorAwareInterface
uasort( $periodes, function( $a, $b ){
return ($a ? $a->getOrdre() : '') > ($b ? $b->getOrdre() : '');
});
$typesIntervention = $serviceTypeIntervention->getTypesIntervention();
$this->typesIntervention = $typesIntervention;
$this->data = array(); // DATA [Periode][MotifNonPaiement][TypeIntervention]
......
......@@ -26,7 +26,6 @@ echo '<div id="element-interne" '.(($interne) ? '' : 'style="display:none"').'>'
//echo '<div id="element-interne" '.(($interne) ? '' : 'style="display:none"').'>'.$this->formControlGroup($form->get('elementPedagogique')).'</div>';
echo '<div id="element-externe" '.(($interne) ? 'style="display:none"' : '').'>'.$this->formControlGroup($form->get('etablissement')).'</div>';
echo $this->formRow($form->get('submit'));
echo $this->formHidden($form->get('security'));
echo $this->formHidden($form->get('id'));
echo $this->form()->closeTag().'<br />';
......
......@@ -282,34 +282,6 @@ class Import extends Processus
return $diff;
}
/**
* Import d'un, plusieurs ou toutes les périodes d'enseignement
*
* @param string|array|null $sourceCode Identifiant source
* @param string $action Action
* @retun self
*/
public function periodeEnseignement( $sourceCode=null, $action=self::A_ALL )
{
$this->execMaj( 'PERIODE_ENSEIGNEMENT', 'SOURCE_CODE', $sourceCode, $action );
return $this;
}
/**
* Retourne les lignes de différentiel correspondantes aux périodes d'enseignement
*
* @param PeriodeEnseignement $periodeEnseignement
* @return Ligne[]|array()
*/
public function periodeEnseignementGetDifferentiel( PeriodeEnseignement $periodeEnseignement )
{
$q = new Query('periodeEnseignement');
$q->setSourceCode($periodeEnseignement->getSourceCode());
$diff = $this->getDifferentiel()->make($q)->fetchAll();
return $diff;
}
/**
* Import d'un, plusieurs ou tous groupes de type de formation
*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment