feature: Affichage du message sur l'tat du contrat
This commit is contained in:
@@ -19,12 +19,13 @@
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% if not expiration_contrat %}
|
||||
<div class="alert alert-danger fade show alert-dismissible mt-2">
|
||||
{% if not has_contrat %}
|
||||
<div class="alert alert-danger mt-2">
|
||||
<strong>Important :</strong> Les informations sur votre contrat n'ont pas été renseignées, veuillez contacter les ressources humaines.
|
||||
</div>
|
||||
{% elif contrat_nb_jours_restant %}
|
||||
<div class="alert alert-danger fade show alert-dismissible mt-2">
|
||||
|
||||
{% elif expiration_contrat %}
|
||||
<div class="alert alert-warning mt-2">
|
||||
<strong>Important :</strong> Votre contrat de travail expire dans {{ contrat_nb_jours_restant }} jours, veuillez contacter les ressources humaines.
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
@@ -122,26 +122,41 @@ def mon_profil(request):
|
||||
try:
|
||||
employe = Employe.objects.get(user__username=request.user)
|
||||
except Employe.DoesNotExist:
|
||||
messages.error(request, "Impossible d'acceder au menu 'Mon profil' car votre profil Utilisateur n'est lié à aucun profil Employé. Veuillez contacter l'Administrateur.")
|
||||
messages.error(
|
||||
request,
|
||||
"Impossible d'acceder au menu 'Mon profil' car votre profil Utilisateur n'est lié à aucun profil Employé. Veuillez contacter l'Administrateur."
|
||||
)
|
||||
return redirect("gestion_conges:conge")
|
||||
|
||||
|
||||
contrats = Contrat.objects.filter(employe=employe, statut='actif').first()
|
||||
|
||||
projets = Affectation.objects.filter(
|
||||
employe = employe,
|
||||
date_fin_daffectation__gte = timezone.now().date()
|
||||
employe=employe,
|
||||
date_fin_daffectation__gte=timezone.now().date()
|
||||
).select_related('projet')
|
||||
|
||||
has_contrat = contrats is not None
|
||||
expiration_contrat = False
|
||||
contrat_nb_jours_restant = None
|
||||
|
||||
if contrats:
|
||||
nb_jours = contrats.nombre_jours_restant
|
||||
contrat_nb_jours_restant = nb_jours
|
||||
expiration_contrat = nb_jours <= fonctions_utilitaire.DUREE_FIN_CONTRAT
|
||||
|
||||
return render(
|
||||
request,
|
||||
'gestion_employe/monprofil.html',
|
||||
request,
|
||||
'gestion_employe/monprofil.html',
|
||||
{
|
||||
'employe': employe,
|
||||
|
||||
'contrats': [{
|
||||
**model_to_dict(contrats),
|
||||
"type_contrat": dict(Contrat.TYPE_CONTRAT).get(contrats.type_contrat),
|
||||
"statut": dict(Contrat.STATUT_CONTRAT).get(contrats.statut),
|
||||
"fichier_contrat": contrats.fichier_contrat.url if contrats.fichier_contrat else "",
|
||||
} if contrats else []],
|
||||
}] if contrats else [],
|
||||
|
||||
'projets': [
|
||||
{
|
||||
**model_to_dict(a.projet),
|
||||
@@ -151,12 +166,13 @@ def mon_profil(request):
|
||||
"pourcentage_temps_affectation": a.pourcentage_temps_affectation
|
||||
} for a in projets
|
||||
],
|
||||
|
||||
"formation_form": FormationForm(),
|
||||
"expiration_contrat": contrats.nombre_jours_restant <= fonctions_utilitaire.DUREE_FIN_CONTRAT if contrats else False,
|
||||
"contrat_nb_jours_restant": contrats.nombre_jours_restant if contrats else None
|
||||
"has_contrat": has_contrat,
|
||||
"expiration_contrat": expiration_contrat,
|
||||
"contrat_nb_jours_restant": contrat_nb_jours_restant
|
||||
}
|
||||
)
|
||||
|
||||
@login_required
|
||||
def modifier_mot_passe(request):
|
||||
"""Vue pour permettre à un utilisateur de modifier son mot de passe et ses informations de profil"""
|
||||
|
||||
Reference in New Issue
Block a user