Skip to content

En tant qu’employeur je peux postuler pour des candidats vers d’autres employeurs (Employeur Orienteur) [GEN-240] - #4197

Merged
rsebille merged 4 commits into
masterfrom
rsebille/employeur-orienteur
Jun 25, 2024
Merged

En tant qu’employeur je peux postuler pour des candidats vers d’autres employeurs (Employeur Orienteur) [GEN-240]#4197
rsebille merged 4 commits into
masterfrom
rsebille/employeur-orienteur

Conversation

@rsebille

Copy link
Copy Markdown
Contributor

🤔 Pourquoi ?

Voir la carte associée.

🍰 Comment ?

Les deux premiers commits sont là pour convertir les divers tests lié au User.kind en drapeaux métier afin de n'avoir que ceux-ci à actionner dans le commit ouvrant le parcours aux employeurs et les faisant ainsi passer pour des prescripteurs.

Le commit suivant contient le changement attendu, il manque certainement des endroits utilisant encore la logique .is_employer mais je commence à ne plus avoir le recul donc on verra avec la relecture et les tests utilisateurs ce qui en ressort. Dans la même veine, il manque sûrement quelques tests mais vu qu'on reprend des parcours déjà bien utilisé je me dit qu'on va plutôt attendre de tomber sur un os.

Le dernier commit nettoie les URL de la PR préparatoire #4120.

💻 Captures d'écran

image

🏝️ Comment tester

  • Se connecter avec un employeur
  • Cliquer sur "Postuler pour un candidat" du nouveau bloc; suivre le tunnel, il est normalement identique à celui des prescripteurs
  • Une fois la candidature envoyée, cliquer sur "Candidatures envoyées" du nouveau bloc

@rsebille rsebille added 1-recette-jetable [Payé à l’heure] Crée une recette jetable sur CC ajouté Ajouté dans le changelog. labels Jun 10, 2024
@rsebille
rsebille requested a review from xavfernandez June 10, 2024 14:11
@rsebille rsebille self-assigned this Jun 10, 2024
@github-actions

Copy link
Copy Markdown

🥁 La recette jetable est prête ! 👉 Je veux tester cette PR !

Comment thread itou/www/apply/views/list_views.py Outdated
Comment on lines 131 to +143
"hire_process": self.hire_process,
"prescription_process": self.prescription_process,
"auto_prescription_process": self.auto_prescription_process,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Plutôt que 3 booléens, tu ne voulais pas avoir des process_type à l'origine ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oui, mais je n'ai pas fait pour garder les if dans les templates django les plus simples et lisible possibles.

@xavfernandez xavfernandez left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Effectivement ça a du être pénible 🙈

Comment thread itou/www/apply/views/list_views.py Outdated
<p class="fs-sm mb-2">Créez-en un grâce à notre partenaire Diagoriente.</p>
{% endif %}
<a href="https://diagoriente.beta.gouv.fr/services/plateforme?utm_source=emploi-inclusion-{{ request.user.is_prescriber|yesno:"prescripteur,candidat" }}"
<a href="https://diagoriente.beta.gouv.fr/services/plateforme?utm_source=emploi-inclusion-{{ request.user.is_job_seeker|yesno:"candidat,prescripteur" }}"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Les employeurs prescripteurs seront donc considérés comme prescripteur coté diagoriente ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C'est ce qui me semblais le plus logique puisque même si c'est un employeur, il agis en tant que prescripteur au final.

Comment thread itou/templates/dashboard/includes/employer_prescription_card.html Outdated
Comment thread itou/www/apply/forms.py Outdated
and request.user.is_authenticated
and (
request.user.is_prescriber
or (request.user.is_employer and self.company != request.current_organization)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je pense que l'on aura (comme toujours) des soucis avec la request.current_organization (un employeur avec 2 structures fait une prescription dans son autre structure au lieu d'une auto-prescription).
Je me demande si on ne devrait pas plutôt vérifier self.company not in requests.organizations ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

J'ai pris ce parti car :

  • Ce qui va vraiment changer entre les deux parcours c'est le moment où le diagnostique est fait
  • L'entreprise émettrice enregistrée dans la candidature serais current_organization donc a postériori on ne la verrais pas comme une auto-prescription mais comme une candidature orientée, à moins d'aller chercher les memberships de l'émetteur et que ceux-ci n'est pas changé depuis.
  • Actuellement on faisais le raccourcis "envoyée par un employeur == auto-prescription" mais la vraie règle c'est "diagnostique fait par l'employeur == auto-prescription", et je suis quasi certain d'avoir raté des trucs tellement c'est inscrit profondément.
  • Ça me semble plus sain de ne considérer que current_organization puisque c'est ce qui est sélectionné par l'employeur et que c'est ce qui conditionne ce qu'on lui affiche ou pas, typiquement il ne pourrais pas accepter la candidature, et si il faisais une embauche ça serais dans la structure actuelle.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Effectivement il faudrait changer d'autres choses dans le tunnel pour faire cela. Donc il semble effectivement plus sage de rester sur la current_organization.

@rsebille
rsebille force-pushed the rsebille/employeur-orienteur branch from 8634637 to ec9af27 Compare June 19, 2024 15:48
Comment thread itou/www/apply/views/list_views.py Outdated
SENT_FOR_ME = enum.auto()

@property
def do_not_call_in_templates(self):

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tu peux éventuellement utiliser do_not_call_in_templates = enum.nonmember(True)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je connaissais pas mais c'est clairement mieux !
Et trop tard pour le débug ;).

and request.user.is_authenticated
and (
request.user.is_prescriber
or (request.user.is_employer and self.company != request.current_organization)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Effectivement il faudrait changer d'autres choses dans le tunnel pour faire cela. Donc il semble effectivement plus sage de rester sur la current_organization.

@rsebille
rsebille force-pushed the rsebille/employeur-orienteur branch from ec9af27 to 89dd85b Compare June 24, 2024 13:53
@rsebille
rsebille added this pull request to the merge queue Jun 25, 2024
Merged via the queue into master with commit ea6b29a Jun 25, 2024
@rsebille
rsebille deleted the rsebille/employeur-orienteur branch June 25, 2024 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1-recette-jetable [Payé à l’heure] Crée une recette jetable sur CC ajouté Ajouté dans le changelog.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants