Commit d6eabd5c authored by Antony Le Courtes's avatar Antony Le Courtes
Browse files

Wip données personnelles

parent a829c390
Loading
Loading
Loading
Loading
Loading
+13 −10
Original line number Diff line number Diff line
@@ -71,8 +71,11 @@ class IntervenantDossierController extends AbstractController
            //$this->em()->refresh($intervenantDossier);
            $tblDossier = $intervenantDossier->getTblDossier();
        }

        //Ici on récupére le workflo pour savoir à quelle étape des données personnelles on se trouve
        $lastCompleted = (!empty($tblDossier)) ? $tblDossier->getCompletudeAvantRecrutement() : '';


        /* Initialisation du formulaire */
        $form = $this->getFormIntervenantIntervenantDossier()->setIntervenant($intervenant)->initForm();
        $form->bind($intervenantDossier);
+51 −65
Original line number Diff line number Diff line
@@ -25,23 +25,23 @@ class IntervenantDossierForm extends AbstractForm
    use ServiceServiceAwareTrait;
    use DossierServiceAwareTrait;

    protected AbstractFieldset $dossierIdentiteFieldset;
    protected ?AbstractFieldset $dossierIdentiteFieldset = null;

    protected AbstractFieldset $dossierIdentiteComplementaireFieldset;
    protected ?AbstractFieldset $dossierIdentiteComplementaireFieldset = null;

    protected AbstractFieldset $dossierAdresseFieldset;
    protected ?AbstractFieldset $dossierAdresseFieldset = null;

    protected AbstractFieldset $dossierStatutFieldset;
    protected ?AbstractFieldset $dossierStatutFieldset = null;

    protected AbstractFieldset $dossierContactFiedlset;
    protected ?AbstractFieldset $dossierContactFieldset = null;

    protected AbstractFieldset $dossierInseeFiedlset;
    protected ?AbstractFieldset $dossierInseeFiedlset = null;

    protected AbstractFieldset $dossierBancaireFieldset;
    protected ?AbstractFieldset $dossierBancaireFieldset = null;

    protected AbstractFieldset $dossierEmployeurFieldset;
    protected ?AbstractFieldset $dossierEmployeurFieldset = null;

    protected AbstractFieldset $dossierAutresFiedlset;
    protected ?AbstractFieldset $dossierAutresFiedlset = null;

    protected Intervenant $intervenant;

@@ -50,6 +50,7 @@ class IntervenantDossierForm extends AbstractForm
    public function initForm()
    {


        $dossierIntervenant = $this->getServiceDossier()->getByIntervenant($this->intervenant);
        $statut             = $this->intervenant->getStatut();
        $intervenant        = $dossierIntervenant->getIntervenant();
@@ -59,62 +60,47 @@ class IntervenantDossierForm extends AbstractForm
        $hydrator = new IntervenantDossierHydrator();
        $this->setHydrator($hydrator);


        $this->dossierStatutFieldset = new DossierStatutFieldset('DossierStatut', [
            'statut'      => $statut,
            'intervenant' => $intervenant,
        ]);
        $this->dossierStatutFieldset->init();

        $options = [
            'dossierIntervenant'      => $dossierIntervenant,
            'dossierIdentiteFieldset' => &$this->dossierIdentiteFieldset,
        ];

        $this->dossierIdentiteFieldset = new DossierIdentiteFieldset('DossierIdentite');
        $this->dossierIdentiteFieldset->init();

        $options['dossierIdentiteFieldset'] = $this->dossierIdentiteFieldset;

        $this->dossierIdentiteComplementaireFieldset = new DossierIdentiteComplementaireFieldset('DossierIdentiteComplementaire', $options);
        $this->dossierIdentiteComplementaireFieldset->init();

        $options['dossierIdentiteComplementaireFieldset'] = $this->dossierIdentiteComplementaireFieldset;

        $this->dossierAdresseFieldset = new AdresseFieldset('DossierAdresse');
        $this->dossierAdresseFieldset->init();

        $this->dossierContactFiedlset = new DossierContactFieldset('DossierContact', $options);
        $this->dossierContactFiedlset->init();

        $this->dossierInseeFiedlset = new DossierInseeFieldset('DossierInsee', $options);
        $this->dossierInseeFiedlset->init();

        $this->dossierBancaireFieldset = new DossierBancaireFieldset('DossierBancaire');
        $this->dossierBancaireFieldset->init();
        $blocDonneesPersonnelles = [
            'dossierStatut'                 => 1,
            'dossierIdentite'               => 1,
            'dossierIdentiteComplementaire' => $statut->getDossierIdentiteComplementaire(),
            'dossierContact'                => $statut->getDossierContact(),
            'dossierAdresse'                => $statut->getDossierAdresse(),
            'dossierInsee'                  => $statut->getDossierInsee(),
            'dossierBancaire'               => $statut->getDossierBanque(),
            'dossierEmployeur'              => $statut->getDossierEmployeur(),
        ];

        $this->dossierEmployeurFieldset = new EmployeurFieldset('DossierEmployeur');
        $this->dossierEmployeurFieldset->init();
        foreach ($blocDonneesPersonnelles as $blocName => $blocStep) {
            if ($blocStep === 1) {
                $propertyName            = $blocName . 'Fieldset';
                $fieldsetConstructorName = '\\Dossier\\Form\\' . ucfirst($blocName) . 'Fieldset';
                $fieldsetName            = ucfirst($blocName);
                if ($blocName == 'dossierStatut') {
                    $this->$propertyName = new $fieldsetConstructorName($fieldsetName, [
                        'intervenant' => $intervenant,
                        'statut'      => $statut,
                    ]);
                } elseif ($blocName == "dossierAdresse") {
                    $fieldsetConstructorName = '\\Lieu\\Form\\AdresseFieldset';
                    $this->$propertyName     = new $fieldsetConstructorName($fieldsetName, $options);

        if ($statut->getDossierEmployeurFacultatif()) {
            $this->dossierEmployeurFieldset->get('employeur')->setLabel('Employeurs :');
                } else {
                    $this->$propertyName = new $fieldsetConstructorName($fieldsetName, $options);
                }
                $this->$propertyName->init();
                $this->add($this->$propertyName);
            }
        }

        $this->dossierAutresFiedlset = new DossierAutresFieldset('DossierAutres', ['listChampsAutres' => $dossierIntervenant->getStatut()->getChampsAutres()]);
        $this->dossierAutresFiedlset->init();

       
        $this->setAttribute('id', 'dossier');

        $this->add($this->dossierStatutFieldset);
        $this->add($this->dossierIdentiteFieldset);
        $this->add($this->dossierIdentiteComplementaireFieldset);
        $this->add($this->dossierAdresseFieldset);
        $this->add($this->dossierContactFiedlset);
        $this->add($this->dossierInseeFiedlset);
        $this->add($this->dossierBancaireFieldset);
        $this->add($this->dossierEmployeurFieldset);
        $this->add($this->dossierAutresFiedlset);


        /**
         * Csrf
+10 −0
Original line number Diff line number Diff line
@@ -121,13 +121,23 @@ Debut du formulaire
    <h1>Etape 1 des données personnelles</h1>
    <!--Identité-->
    <?php

    if ($editIdentite) {
        echo $this->partial('dossier/intervenant-dossier/partial/formIdentite', compact('form', 'intervenant', 'intervenantDossier', 'tblDossier'));
    } else {
        echo $this->partial('dossier/intervenant-dossier/partial/formIdentite', compact('form', 'intervenant', 'intervenantDossier', 'tblDossier'));
    }
    if ($fieldsetRules['fieldset-identite-complementaire'] == 1) {
        if ($editIdentite) {
            echo $this->partial('dossier/intervenant-dossier/partial/formIdentiteComplementaire', compact('form', 'intervenant', 'intervenantDossier', 'tblDossier'));
        } else {
            echo $this->partial('dossier/intervenant-dossier/partial/formIdentiteComplementaire', compact('form', 'intervenant', 'intervenantDossier', 'tblDossier'));
        }
    }

    ?>


</div>
<!--Etape 2-->
<div class="row  display-flex">