Commit 863d7c0c authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files

travail sur l'aval du TBL

parent e8df084b
Loading
Loading
Loading
Loading
Loading
+24 −11
Changes for code/QueryCompare.php: 24 added lines, 11 removed lines.
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
 * @var $container  \Psr\Container\ContainerInterface
 */

$sql1 = "SELECT * FROM v_contrat_main_old";
$sql1 = "SELECT * FROM temp_contrat_main";

$sql2 = "SELECT * FROM v_contrat_main";

@@ -17,39 +17,52 @@ $keyCols = ['CONTRAT_ID'];

$ignoreCols = [
    'FORMULE_RESULTAT_ID', // colonne supprimée
    'totalDiviseParDix',   // colonne supprimée
    //'totalDiviseParDix',   // colonne supprimée
    'tauxId',              // colonne supprimée
    'tauxMajoreId',        // colonne supprimée

    'heuresPeriodeEssai',   // nouvelle colonne
    'heuresPrimePrecarite', // nouvelle colonne
    'missions', // nouvelle colonne
    'typesMission', // nouvelle colonne
    'missionsTypesMissions', // nouvelle colonne

    'horodatage',          // dates générées à partir de NOW => pas de pb

    'date_creation',         // formatage pourri ancienne => Ok maintenant
    'date_contrat_lie',      // formatage pourri ancienne => Ok maintenant
    'tauxHoraireDate',       // formatage pourri ancienne => Ok maintenant
    'tauxMajoreHoraireDate', // colonne vide avant
    'dateCreation',         // formatage pourri ancienne => Ok maintenant
    'dateContratLie',      // formatage pourri ancienne => Ok maintenant
    //'tauxHoraireDate',       // formatage pourri ancienne => Ok maintenant
    //'tauxMajoreHoraireDate', // colonne vide avant

    'heuresFormation', // toutes vides ancienne vue

    'enteteAutresHeures',  // problèmes trouvés dans ancienne vue v_contrat_main
    'legendeAutresHeures', // problèmes trouvés dans ancienne vue v_contrat_main

    'pays_nationalite', // colonnes vides dans ancienne, car on ne prenait en compte que les données perso sans tenir compte de la table intervenant
    'paysNationalite', // colonnes vides dans ancienne, car on ne prenait en compte que les données perso sans tenir compte de la table intervenant

    'serviceTotalPaye', // le nouvel calcul met le taux de CP à 0 pour les enseignements, pas l'ancienne vue
    //'serviceTotalPaye', // le nouvel calcul met le taux de CP à 0 pour les enseignements, pas l'ancienne vue

    //'tauxMajoreNom', // bug sur ancien tbl, pas utilisé car recalculé en vue
    //'tauxNom', // bug sur ancien tbl, pas utilisé car recalculé en vue

    //'tauxHoraireDate', // les taux sont mieux calculés maintenant
    //'tauxHoraireValeur', // les taux sont mieux calculés maintenant
    //'tauxMajoreHoraireDate', // les taux sont mieux calculés maintenant
    //'tauxMajoreHoraireValeur', // les taux sont mieux calculés maintenant

    //'numeroAvenant', // pb calcul ancien v23

    /* à contrôler + finement */
    'titreCourt', // lié au pb parentalité des avenants ??
    'totalHETD',  // arrondis à retester ?
    //'titreCourt', // lié au pb parentalité des avenants ??
    //'totalHETD',  // arrondis à retester ?
    //avenant1	contrat1	modifieComplete	n	titre reste => avenants qui se transforment en contrat et vice versa ??
    // contrats concernés : 2479, 40336, 36972, 36028, 19628, 1912, 1854

];

$onlyCols = [
    //'hetdContrat'
    'avenant1'
];

$bdd = $container->get(\Unicaen\BddAdmin\Bdd::class);
+21 −0
Changes for code/test3.php: 21 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -4,3 +4,24 @@
 * @var $this       \Application\View\Renderer\PhpRenderer
 * @var $container  \Psr\Container\ContainerInterface
 */

$em = $container->get(\Doctrine\ORM\EntityManager::class);



$params = [
    'contrat' => 36821,
    'volumeHoraireIndex' => 0
];

$c = $em->getRepository(\Contrat\Entity\Db\TblContrat::class)->findOneBy($params);

echo $c->getId();
/** @var \Contrat\Entity\Db\TblContratVolumeHoraire[] $vhs */
$vhs = $c->getVolumesHoraires();

foreach( $vhs as $vh ){
    echo "<h1>VH</h1>";
    var_dump($vh->getService()->getElementPedagogique()->getLibelle());
}
+30 −42
Changes for data/ddl/table/TBL_CONTRAT.php: 30 added lines, 42 removed lines.
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ return [
            'name'        => 'AUTRE_LIBELLE',
            'type'        => 'string',
            'bdd-type'    => 'VARCHAR2',
            'length'      => 4000,
            'length'      => 1000,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
@@ -52,8 +52,8 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'default'     => NULL,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 22,
            'commentaire' => NULL,
        ],
@@ -76,8 +76,8 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'default'     => NULL,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 19,
            'commentaire' => NULL,
        ],
@@ -143,11 +143,11 @@ return [
        ],
        'EDITE'                     => [
            'name'        => 'EDITE',
            'type'        => 'float',
            'bdd-type'    => 'FLOAT',
            'type'        => 'bool',
            'bdd-type'    => 'NUMBER',
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'precision'   => 1,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 10,
@@ -160,8 +160,8 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'default'     => NULL,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 25,
            'commentaire' => NULL,
        ],
@@ -172,8 +172,8 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'default'     => NULL,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 24,
            'commentaire' => NULL,
        ],
@@ -232,7 +232,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 2,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 43,
            'commentaire' => NULL,
@@ -263,11 +263,11 @@ return [
        ],
        'SIGNE'                     => [
            'name'        => 'SIGNE',
            'type'        => 'float',
            'bdd-type'    => 'FLOAT',
            'type'        => 'bool',
            'bdd-type'    => 'NUMBER',
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'precision'   => 1,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 11,
@@ -304,7 +304,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 28,
            'commentaire' => NULL,
@@ -316,23 +316,11 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 26,
            'commentaire' => NULL,
        ],
        'TAUX_REMU_MAJORE_DATE'     => [
            'name'        => 'TAUX_REMU_MAJORE_DATE',
            'type'        => 'date',
            'bdd-type'    => 'DATE',
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'default'     => NULL,
            'position'    => 36,
            'commentaire' => NULL,
        ],
        'TAUX_REMU_MAJORE_ID'       => [
            'name'        => 'TAUX_REMU_MAJORE_ID',
            'type'        => 'int',
@@ -340,7 +328,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 29,
            'commentaire' => NULL,
@@ -352,7 +340,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 30,
            'commentaire' => NULL,
@@ -364,7 +352,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 27,
            'commentaire' => NULL,
@@ -376,18 +364,18 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'default'     => NULL,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 20,
            'commentaire' => NULL,
        ],
        'TERMINE'                   => [
            'name'        => 'TERMINE',
            'type'        => 'float',
            'bdd-type'    => 'FLOAT',
            'type'        => 'bool',
            'bdd-type'    => 'NUMBER',
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'precision'   => 1,
            'nullable'    => FALSE,
            'default'     => '0',
            'position'    => 35,
@@ -448,7 +436,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => 126,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 21,
            'commentaire' => NULL,
@@ -460,7 +448,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 9,
            'commentaire' => NULL,
@@ -472,7 +460,7 @@ return [
            'length'      => 0,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 18,
            'commentaire' => NULL,
@@ -496,7 +484,7 @@ return [
            'length'      => 120,
            'scale'       => NULL,
            'precision'   => NULL,
            'nullable'    => TRUE,
            'nullable'    => FALSE,
            'default'     => NULL,
            'position'    => 3,
            'commentaire' => NULL,
+10 −12
Changes for module/Contrat/src/Controller/ContratController.php: 10 added lines, 12 removed lines.
Original line number Diff line number Diff line
@@ -95,19 +95,16 @@ class ContratController extends AbstractController
        $title = "Contrat/avenants <small>{$intervenant}</small>";


        $volumesHoraireIntervenant = $this->getServiceTblContrat()->getContratVolumeHoraireByIntervenant($intervenant, $structure);
        $services                  = [];
        foreach ($volumesHoraireIntervenant as $volumeHoraireIntervenant) {
            /** @var TblContrat $volumesHoraireIntervenant */

            if ($volumeHoraireIntervenant->getTypeService() != null) {
                if ($volumeHoraireIntervenant->getContrat() == null) {
                    $services['NoContrat'][$volumeHoraireIntervenant->getUuid()][$volumeHoraireIntervenant->getTypeService()->getCode()][] = $volumeHoraireIntervenant;
        $contrats = $this->getServiceTblContrat()->getContratsByIntervenant($intervenant, $structure);

        $contratsNonContractualises = [];
        $contratsContractualises = [];
        foreach( $contrats as $contrat){
            if (empty($contrat->getContrat())) {
                $contratsNonContractualises[$contrat->getUuid()] = $contrat;
            }else{
                    $services['Contrat'][$volumeHoraireIntervenant->getUuid()][$volumeHoraireIntervenant->getTypeService()->getCode()][] = $volumeHoraireIntervenant;
                }
                $contratsContractualises[$contrat->getUuid()] = $contrat;
            }

        }

        $contratDirectResult        = $this->getServiceParametres()->get('contrat_direct');
@@ -149,7 +146,8 @@ class ContratController extends AbstractController
        return compact(
            'title',
            'intervenant',
            'services',
            'contratsNonContractualises',
            'contratsContractualises',
            'emailIntervenant',
            'contratDirect',
            'contratSignatureActivation',
+37 −70
Changes for module/Contrat/src/Entity/Db/Mapping/Contrat.Entity.Db.TblContrat.dcm.xml: 37 added lines, 70 removed lines.
Original line number Diff line number Diff line
@@ -3,101 +3,68 @@
                  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="Contrat\Entity\Db\TblContrat" table="TBL_CONTRAT">
        <id name="id" type="integer" column="ID">
            <generator strategy="SEQUENCE"/>
        </id>
        <field name="actif" type="boolean" column="ACTIF" nullable="false"/>
        <field name="uuid" type="string" column="UUID" length="120" nullable="true"/>
        <id name="id" type="integer" column="ID"/>
        <many-to-one field="annee" target-entity="Application\Entity\Db\Annee">
            <join-columns>
            <join-column name="ANNEE_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="intervenant" target-entity="Intervenant\Entity\Db\Intervenant">
            <join-columns>
            <join-column name="INTERVENANT_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="structure" target-entity="Lieu\Entity\Db\Structure">
            <join-columns>
            <join-column name="STRUCTURE_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <field name="uuid" type="string" column="UUID" length="120" nullable="false"/>
        <field name="actif" type="boolean" column="ACTIF" nullable="false"/>
        <many-to-one field="typeService" target-entity="Service\Entity\Db\TypeService">
            <join-column name="TYPE_SERVICE_ID" referenced-column-name="ID"/>
        </many-to-one>
        <many-to-one field="typeContrat" target-entity="Contrat\Entity\Db\TypeContrat">
            <join-column name="TYPE_CONTRAT_ID" referenced-column-name="ID"/>
        </many-to-one>
        <many-to-one field="contrat" target-entity="Contrat\Entity\Db\Contrat">
            <join-columns>
            <join-column name="CONTRAT_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="contratParent" target-entity="Contrat\Entity\Db\Contrat">
            <join-columns>
            <join-column name="CONTRAT_PARENT_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="typeContrat" target-entity="Contrat\Entity\Db\TypeContrat">
            <join-columns>
                <join-column name="TYPE_CONTRAT_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <field name="edite" type="float" column="EDITE" nullable="false"/>
        <field name="signe" type="float" column="SIGNE" nullable="false"/>
        <field name="numeroAvenant" type="integer" column="NUMERO_AVENANT" nullable="false"/>
        <field name="edite" type="boolean" column="EDITE" nullable="false"/>
        <field name="signe" type="boolean" column="SIGNE" nullable="false"/>
        <field name="termine" type="boolean" column="TERMINE" nullable="false"/>
        <field name="dateCreation" type="datetime" column="DATE_CREATION" nullable="true"/>
        <field name="dateDebut" type="datetime" column="DATE_DEBUT" nullable="true"/>
        <field name="dateFin" type="datetime" column="DATE_FIN" nullable="true"/>
        <field name="dateCreation" type="datetime" column="DATE_CREATION" nullable="true"/>
        <many-to-one field="mission" target-entity="Mission\Entity\Db\Mission">
            <join-columns>
                <join-column name="MISSION_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="service" target-entity="Enseignement\Entity\Db\Service">
            <join-columns>
                <join-column name="SERVICE_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="serviceReferentiel" target-entity="Referentiel\Entity\Db\ServiceReferentiel">
            <join-columns>
                <join-column name="SERVICE_REFERENTIEL_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="typeService" target-entity="Service\Entity\Db\TypeService">
            <join-columns>
                <join-column name="TYPE_SERVICE_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <field name="cm" type="float" column="CM" nullable="true"/>
        <field name="td" type="float" column="TD" nullable="true"/>
        <field name="tp" type="float" column="TP" nullable="true"/>
        <field name="autres" type="float" column="AUTRES" nullable="true"/>
        <field name="autreLibelle" type="string" column="AUTRE_LIBELLE" length="4000" nullable="true"/>
        <field name="heures" type="float" column="HEURES" nullable="true"/>
        <field name="hetd" type="float" column="HETD" nullable="true"/>
        <many-to-one field="tauxRemu" target-entity="Paiement\Entity\Db\TauxRemu">
            <join-columns>
            <join-column name="TAUX_REMU_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <field name="tauxRemuValeur" type="float" column="TAUX_REMU_VALEUR" nullable="true"/>
        <field name="tauxRemuDate" type="datetime" column="TAUX_REMU_DATE" nullable="true"/>
        <field name="tauxRemuValeur" type="float" column="TAUX_REMU_VALEUR" nullable="false"/>
        <field name="tauxRemuDate" type="datetime" column="TAUX_REMU_DATE" nullable="false"/>
        <many-to-one field="tauxRemuMajore" target-entity="Paiement\Entity\Db\TauxRemu">
            <join-columns>
            <join-column name="TAUX_REMU_MAJORE_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <field name="tauxRemuMajoreValeur" type="float" column="TAUX_REMU_MAJORE_VALEUR" nullable="true"/>
        <field name="tauxCongesPayes" type="float" column="TAUX_CONGES_PAYES" nullable="true"/>
        <many-to-one field="volumeHoraire" target-entity="Enseignement\Entity\Db\VolumeHoraire">
            <join-columns>
                <join-column name="VOLUME_HORAIRE_ID" referenced-column-name="ID"/>
            </join-columns>
        </many-to-one>
        <many-to-one field="volumeHoraireMission" target-entity="Mission\Entity\Db\VolumeHoraireMission">
            <join-columns>
                <join-column name="VOLUME_HORAIRE_MISSION_ID" referenced-column-name="ID"/>
            </join-columns>
        <field name="tauxRemuMajoreValeur" type="float" column="TAUX_REMU_MAJORE_VALEUR" nullable="false"/>
        <field name="tauxCongesPayes" type="float" column="TAUX_CONGES_PAYES" nullable="false"/>
        <many-to-one field="validation" target-entity="Application\Entity\Db\Validation">
            <join-column name="VALIDATION_ID" referenced-column-name="ID"/>
        </many-to-one>
        <many-to-one field="volumeHoraireRef" target-entity="Referentiel\Entity\Db\VolumeHoraireReferentiel">
        <field name="totalHeures" type="float" column="TOTAL_HEURES" nullable="false"/>
        <field name="totalHeuresFormation" type="float" column="TOTAL_HEURES_FORMATION" nullable="false"/>
        <field name="totalHetd" type="float" column="TOTAL_HETD" nullable="false"/>
        <field name="totalGlobalHetd" type="float" column="TOTAL_GLOBAL_HETD" nullable="false"/>
        <field name="autresLibelles" type="string" column="AUTRES_LIBELLES" length="1000" nullable="true"/>
        <field name="missionsLibelles" type="string" column="MISSIONS_LIBELLES" length="1000" nullable="true"/>
        <field name="typesMissionLibelles" type="string" column="TYPES_MISSION_LIBELLES" length="1000" nullable="true"/>
        <field name="volumeHoraireIndex" type="integer" column="VOLUME_HORAIRE_INDEX" nullable="false"/>

        <many-to-many field="volumesHoraires" target-entity="Contrat\Entity\Db\TblContratVolumeHoraire">
            <join-table name="TBL_CONTRAT">
                <join-columns>
                <join-column name="VOLUME_HORAIRE_REF_ID" referenced-column-name="ID"/>
                    <join-column name="UUID" referenced-column-name="UUID" />
                </join-columns>
        </many-to-one>
                <inverse-join-columns>
                    <join-column name="UUID" referenced-column-name="UUID" />
                </inverse-join-columns>
            </join-table>
        </many-to-many>
    </entity>
</doctrine-mapping>
Loading