Files
sirh/gestion_employe/__pycache__/views.cpython-310.pyc

114 lines
16 KiB
Plaintext
Raw Normal View History

o
2026-09-08 11:09:53 +00:00
}<7D><>j@Z<00>@s<>ddlZddlmZmZddlZddlmZddlmZddlm Z ddl
m Z ddl m Z ddlmZdd lmZdd
lmZdd lmZdd lmZdd lmZmZddlmZddlmZddlm Z m!Z!m"Z"ddl#m$Z$m%Z%m&Z&m'Z'm(Z(e dd<14><00>Z)e dd<16><00>Z*e dd<18><00>Z+e dd<1A><00>Z,dd<1C>Z-dd<1E>Z.dd <20>Z/d!d"<22>Z0d#d$<24>Z1e d%d&<26><00>Z2e d'd(<28><00>Z3e d)d*<2A><00>Z4e d+d,<2C><00>Z5d-d.<2E>Z6e d/d0<64><00>Z7e d1d2<64><00>Z8e d3d4<64><00>Z9dS)5<>N)<02>datetime<6D> timedelta)<01> relativedelta)<01>messages)<01>logout)<01>login_required)<01>User)<01>validate_password)<01>ValidationError)<01>Sum)<01> model_to_dict)<01> JsonResponse)<02>redirect<63>render)<01>timezone)<01>fonctions_utilitaire<72>)<03>AffectationForm<72> ContratForm<72> FormationForm)<05> Affectation<6F>Contrat<61> Departement<6E>Employe<79> Formationc Cs<>|jjjdd<02><01><03>std<03>Stj<06><07><00>d<04>}tj<06> <09>}t
2026-08-31 09:48:21 +00:00
jjdd<06><01> <09>}t
jjdd<06><01> <09>}t <0B> <0C><00> <0A>tdd <09>}t
jj|t <0B> <0C><00> <0A>d
d <0B><03> <09>}t|d |||||t<10>t<11>tj<06><07>d <0A><08>S)z Vue d'index<65>ressource_humaine)<01>name<6D>gestion_employe:mon-profilz-user__date_joined<65>contrat_prestation)<01> type_contrat<61> contrat_stage<67><<00><01>days<79>actif<69><03> date_fin__lte<74> date_fin__gte<74>statut<75>gestion_employe/index.html)<08>employes<65>nombre_employes<65>
2026-09-08 11:09:53 +00:00
nombre_cps<EFBFBD> nombre_stage<67>nombre_expirants<74>affectation_form<72> contrat_form<72> departements)<13>user<65>groups<70>filter<65>existsrr<00>objects<74>all<6C>order_by<62>countrr<00>now<6F>daterrrrr)<07>requestr*r+r,r-<00> date_limiter.<00>r><00>@/home/sorel/systeme_gestion_cerfig/sirh/gestion_employe/views.py<70>indexs0

2026-09-08 11:09:53 +00:00
<04><02><08>r@cCsHt<00><01><00><02>ttjd<01>}dd<03>tjj|t<00><01><00><02>dd<05>D<00>}t |dd<07>S)z Liste des contrats proches r"c SsVg|]'}|jjj<02>d|jjj<03><00>ttj<06><01>|j<08>|j |j
|j |j r%|j j ndd<02><06>qS)<03> <20>)<06>employer<00>
date_debut<EFBFBD>date_finr(<00>fichier_contrat)rCr2<00>
first_name<EFBFBD> last_name<6D>dictr<00> TYPE_CONTRAT<41>getrrDrEr(rF<00>url<72><02>.0<EFBFBD>contratr>r>r?<00>
<listcomp>9s <18><04><06>z+liste_contrat_expirants.<locals>.<listcomp>r$r%F<><01>safe)
rr:r;rr<00>DUREE_FIN_CONTRATrr6r4r )r<r=<00>contats_expirantsr>r>r?<00>liste_contrat_expirants4s

2026-09-08 11:09:53 +00:00
<06> rUc Cs(|jdk<02>r|j<01>d<02>}z tjj|d<03>}Wntjy)t<06>|d<04>td<05>YSwt |j<01>}|<03>
2026-08-31 09:48:21 +00:00
<EFBFBD><00>r|j d}|j d}|j d}|j d }|r<>|r<>t jj |d
2026-09-08 11:09:53 +00:00
<EFBFBD>jtd<08>d <0B>d p\d }||krkt<06>|d<0E>td<05>S||jkr<>t<06>|d|<05>d|j<11>d<11><05>td<05>S||dkr<>t<06>|d|jj<13>d|jj<14>d||<00>d<16><07>td<05>St jj|||j d ||j d|d<18>d<19>t<06>|d|jj<13>d|jj<14>d|j<17>d<1C><07>tjdd|jj<13>d|jj<14>d|j<17><1A><00>d |j d <00>d!<21><01>d"|<05>d!<21><01>d#tt j<1D><01>|j d<00><01>d$<24> |jjgd%<25>td<05>St<06>|d&<26>td<05>Std<05>S)'u[Vue pour affecter un employé à un projet avec vérification des contraintes d'affectation<6F>POST<53>affecter_employe_id<69><01>idu#L'employé spécifié n'existe pas.<2E>gestion_employe:index<65>projet<65>date_fin_daffectation<6F>pourcentage_temps_affectation<6F>date_affectation<6F>rC)<01>total_pourcentage_affectationr`ruPLa date de fin d'affectation ne peut pas être antérieure à la date de début.z!La date de fin de l'affectation (u2) ne peut pas dépasser la date de fin du projet (z).<2E>du-Les pourcentages d'affectation de l'employé rAu, dépasse 100% sur les différents projets (z%).<2E>role<6C>r^r\rbr])rCr[<00>defaultsu L'employé u a été affecté au projet <20>.uAffectation à un projetzBonjour u%, vous avez été affecté au projet u pour la période du z%d/%m/%Yz au z en tant que u9.
Veuillez consulter votre profil pour plus de détails.)<03>sujet<65>message<67> destinataireszErreur : Formulaire non valide.)<1F>methodrVrKrr6<00> DoesNotExistr<00>errorrr<00>is_valid<69> cleaned_datarr4<00> aggregater <00>warningrEr2rGrH<00>update_or_create<74>success<73>
nom_projetr<00> envoyer_mail<69>upper<65>strftimerI<00> ROLE_CHOICES<45>email) r<<00>
employe_idrC<00>formr[<00>date_fin_affectation<6F> temps_nouveaur^<00>total_affectationr>r>r?<00>affecter_employe_projetHsj    <02>
2026-05-07 11:22:14 +00:00





 <04><04><02> 
2026-08-31 09:48:21 +00:00
 "<04><04><06>*
2026-09-08 11:09:53 +00:00
Z<06> r}c Csz
tjj|jd<01>}Wntjyt<05>|d<02>td<03>YSwtjj |dd<05><02>
2026-09-04 12:19:27 +00:00
<EFBFBD>}t jj |t <0C> <0A><00><0E>d<06><02>d<07>}t|d||r`it|<02><01>ttj<13><01>|j<14>ttj<15><01>|j<16>|jrZ|jjnd d
2026-09-08 11:09:53 +00:00
<EFBFBD><03>gngd d <0C>|D<00>t<19>|d u|rt|jtjkndtd|r||jnd<0F>d<10><07>S)uBVue pour afficher et modifier le profil de l'utilisateur connecté<74><01>user__usernameu<65>Impossible d'acceder au menu 'Mon profil' car votre profil Utilisateur n'est lié à aucun profil Employé. Veuillez contacter l'Administrateur.zgestion_conges:conger$<00>rCr(<00>rC<00>date_fin_daffectation__gter[zgestion_employe/monprofil.htmlrB)rr(rFcSs<g|]}it|j<01><01>|j|jttj<06><01>|j<08>|j d<00><04><01>qS)rc)
r r[r^r\rIrrvrKrbr]<00>rN<00>ar>r>r?rP<00>s<02><02><06><06>zmon_profil.<locals>.<listcomp>NFr)rC<00>contrats<74>projets<74>formation_form<72> has_contrat<61>expiration_contrat<61>contrat_nb_jours_restant)rr6rKr2rjrrkrrr4<00>firstrrr:r;<00>select_relatedrr rIrJr<00>STATUT_CONTRATr(rFrLr<00>nombre_jours_restantrrS<00>max)r<rCr<>r<>r>r>r?<00>
mon_profil<EFBFBD>sL<04> <02>
2026-09-04 12:19:27 +00:00
<04><02><04><02>
<EFBFBD><04>
2026-09-08 11:09:53 +00:00
<04><04>r<EFBFBD>cCs&z
2026-07-14 09:03:28 +00:00
tjj|jd<01>}Wntjytddi<01>YSw|jdkr<>tjj|jd<05>}|jd|_ |jd|_
|jd|_ |jd |_ |jd
2026-09-08 11:09:53 +00:00
|_ |jd |_|j<0F>d <0C>rX|jd |_|jd r<>tt<12><13><00><14>t<15>|jd d<0E><02><14><00>}|jdkr{|jd |_nt<19>|d<10>|<01><1B>|<02><1B>t<19>|d<11>td<12>S)uOVue pour permettre à un utilisateur de modifier les informations d'un employér~rg<00>Employé non trouvé.rV)<01>username<6D>nom<6F>prenomrw<00> telephone<6E>adresse<73>sexe<78>photo<74>date_naissance<63>%Y-%m-%d<>z/Veuillez entrez une date de naissance correcte.u Profil mis à jour avec succès.r)rr6rKr2rjr rirrVrHrGrwr<>r<>r<><00>FILESr<53>rrr:r;r<00>strptime<6D>yearsr<73>rrk<00>saverqr)r<rCr2<00>
differencer>r>r?<00>modifier_employer<65>s0<02>
2026-07-14 09:03:28 +00:00
        
$
2026-09-08 11:09:53 +00:00
  r<>cCs<>tjj|jd<01>}|jdkrO|j<05>d<03>r|jd|_d|jvr$|jd|_d|jvr/|jd|_d|jvr:|jd|_ d|jvrE|jd|_
|<01> <0B>t <0C> |d<08>td <09>S)
2026-09-08 11:09:53 +00:00
ufVue pour permettre à un utilisateur de télécharger et enregistrer des documents liés à son profil<69>r2rVr<><00>cv<63>diplome<6D>rib<69>casier_judiciaireu$Documents enregistrés avec succès.r)rr6rKr2rir<>r<><00>CVr<56>r<>r<>r<>rrqr)r<rCr>r>r?<00>enregistrement_document<6E>s
  
 
 
 
2026-09-08 11:09:53 +00:00
  r<>cCsht<00>|j<02>d}z tjj|d<02>}Wntjy)t<07>|d<03>t ddidd<06>YSw|<02>
<EFBFBD>t ddi<01>S)u<Vue pour permettre à un utilisateur de supprimer un contratrY)<01>numero_contratuContrat non trouvé.rg<00><><00><01>statusuContrat supprimé avec succès.) <0B>json<6F>loads<64>bodyrr6rKrjrrkr <00>delete)r<<00>
id_contratrOr>r>r?<00>suppression_contrat<61>s <02> r<>cCs\t<00>|j<02>d}z tjj|d<02>}Wntjy#tddidd<06>YSw|<02><08>tddi<01>S)uAVue pour permettre à un utilisateur de supprimer une affectationrYrXrguAffectation non trouvée.r<>r<>u$Affectation supprimée avec succès.) r<>r<>r<>rr6rKrjr r<>)r<<00>id_affectation<6F> affectationr>r>r?<00>suppression_affectation<6F>s<02> r<>cCs<>z tjj|j<03>d<01>d<02>}Wntjy!t<05>|d<03>td<04>YSwtjj |t
<EFBFBD> <0B><00> <0C>d<05><02> <0A>}|jdkrj|rAt<05>|d<07>td<08>St|j|j<10>}|<03><11>rc|jd d
2026-09-08 11:09:53 +00:00
<EFBFBD>}||_|<04><12>t<05>|d <0B>td<08>St<05>|d <0C>ntd |id<0E>}t|dd|i<01>S)uPCréer un contrat pour un employé (avec contrôle d'existence de contrat actif)rxrXr<>z employe-index)rCr'rVuIImpossible de créer un contrat : cet employé a déjà un contrat actif.rZF<><01>commituContrat créé avec succès.zFormulaire non validerC)<01>initialr)r0)rr6rKrVrjrrkrrr4rr:r;r5rirr<>rlr<>rCrqr)r<rC<00> contrat_actifryrOr>r>r?<00>creation_contrat<61>s>  <02>
<04><02>
2026-09-08 11:09:53 +00:00
<04>  <06>r<EFBFBD>cCsnz tjj|d<01>}Wntjytddidd<05>YSwtjj|d<06><01>d<07>}dd <09>|D<00>}t|j<08> <09>|d
<EFBFBD><02>S) NrXrkuEmployé non trouvér<C3A9>r<>r_z -date_debutc Sslg|]2}|j|jttj<04><01>|j<06>|j<07>d<00>|j r|j <09>d<00>nd|j
ttj <0B><01>|j <0C>|j r0|j jndd<02><08>qS)r<>rB)rYr<>rrDrE<00>salaire_mensuelr(<00>fichier)rYr<>rIrrJrKrrDrurEr<>r<>r(rFrLrMr>r>r?rP0s <04>
<02>

2026-09-08 11:09:53 +00:00
<02><04><06>z$contrats_employe.<locals>.<listcomp>)rCr<>)
rr6rKrjr rr4r8r2<00> get_full_name)r<rxrCr<><00>datar>r>r?<00>contrats_employe!s(
<EFBFBD><02><04><02><06><08>r<EFBFBD>c
CsT|jdkr<>t<01>|j<03>}z tjj|dd<03>}Wntjy(tddidd<07>YSw|<01>d<08>|_ |<01>d <09>|_
|<01>d
2026-09-08 11:09:53 +00:00
<EFBFBD>|_ |<01>d <0B>}t d |<03><02><02>t d t |<03>j<0E><00><02>t d| <00><00><02>|r<>t|<03><01><10>r<>zt|<03>}tjj|d<03>}||_Wn&tjy~d|_Ynttfy<>}z d|_WYd}~nd}~wwd|_|<02><16>tddi<01>Stddidd<07>S)uaVue pour permettre à un utilisateur de modifier les détails d'un employé via une requête AJAXrVrYrXrkr<>r<>r<><00>fonction<6F> date_embauche<68> matricule<6C> departementuEBUG] Département brut: uEBUG] Type département: z[DEBUG] Est vide: Nrgu0Détails de l'employé mis à jour avec succès.uMéthode non autorisée.i<>)rir<>r<>r<>rr6rKrjr r<>r<>r<><00>print<6E>type<70>__name__<5F>str<74>strip<69>intrr<><00>
ValueError<EFBFBD> TypeErrorr<72>)r<r<>rC<00>
dept_value<EFBFBD>dept_idr<64><00>er>r>r?<00>enregistrer_detail_employeHs:
 <02>   


2026-09-08 11:09:53 +00:00
<08><02> r<>cCs<>tjjddd<02>}g}|D]<5D>}|jjdkr<>|jjdkr<>d<04>dd<06>tjj|t <09>
<EFBFBD><00> <0B>d<07>D<00><01>g}dd<06>t jj|d <09>D<00>}d
d<06>t jj|d d <0C>D<00>}d d<06>tjj|t <09>
2026-09-08 11:09:53 +00:00
<EFBFBD><00> <0B>d<07>D<00>}|<02>id|j<0F>d|jj<04>d|jj<05><00><03>d|j<10>d|jj<11>d|<05>d|<07>d|<04>d|<06>d|jr<>|jjnd<01>d|j<13>d|j<14>d|j<15>d|j<16>d|j<17>d|jr<>|jjnd<01>d|jr<>|jjnd<01>d|jr<>|jjnd<01>|jr<>|jjnd|jr<>|jjnd|jd<1F><03><01>q td |d!<21>d"d#<23>S)$u3 Vue pour retourner la liste de tous les employés rB)<02>user__first_name<6D>user__last_namerAz, cSsg|]}|jj<01>qSr>)r[rrr<>r>r>r?rPws<06>z!liste_employe.<locals>.<listcomp>r<>c Ss6g|]}|j|j|j|j|j|jr|jjndd<01><06>qS)rB)<06>titre<72> organisme<6D> description<6F>date_obtentionrE<00>
certificat)r<>r<>r<>r<>rEr<>rL<00>rN<00> formationr>r>r?rP~s<04><04><06>r_c
Ss:g|]}|j|j|j|j|j|j|jr|jjndd<01><07>qS)rB)r<>rrDrEr<>r(rF)r<>rrDrEr<>r(rFrLrMr>r>r?rP<00>s <04><04><06>r$r<>cSs$g|]}it|<01><01>d|jji<01><01>qS)r[)r r[rr)rNr<>r>r>r?rP<00>s<16><06>rYrCr<>rw<00>
formations<EFBFBD> affectationsr[r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>)r<>r<>r<>T)rqr<>FrQ) rr6<00>excluder2rGrH<00>joinrr4rr:r;rr<00>appendrYr<>rwr<>r<>r<>r<>r<>r<>r<>rLr<>r<>r<>r<>r<>r )r<r*r<>rCr<>r<>r<>r<>r>r>r?<00> liste_employens<>

<04><06><04> <06>  <06> 
<04><06><02><02><02><02><02><02><02><02> <02>
2026-09-08 11:09:53 +00:00
<02> <02> <02> <02><02><02><02><02><06><04><02>r<>cCsrtjj|jd<01>}|jdkr5t|j|j<07>}|<02><08>r/|j dd<04>}||_
|<03> <09>t <0B> |d<05>t d<06>St <0B>|d<07>t d<06>S)uGVue pour permettre à un employé d'ajouter une formation à son profilr~rVFr<46>u Formation ajoutée avec succès r<00>CFormulaire non valide. Veuillez vérifier les informations saisies.)rr6rKr2rirrVr<>rlr<>rCrrqrrk)r<rCr<><00> ma_formationr>r>r?<00>ajouter_formation<6F>s
   r<>cCs,tjj|jd<01><01>d<02>}tdd<04>|D<00>dd<06>S)N)<01>employe__user__usernamez-date_obtentioncSs.g|]}it|<01><01>d|jr|jjndi<01><01>qS)r<>rB)r r<>rLr<>r>r>r?rP<00>s<02><02><04><06>z#liste_formation.<locals>.<listcomp>FrQ)rr6r4r2r8r )r<r<>r>r>r?<00>liste_formation<6F>s <04><06>r<EFBFBD>cCs<>z tjj||jd<01>}Wntjyt<05>|d<02>td<03>YSw|jdkrBt |j
|j |d<05>}|<02> <0C>r<t<05> |d<06>|<02><0E>t<05>|d<07>td<03>S)uIVue pour permettre à un employé de modifier une formation de son profil<69>rYr*<00>Formation non trouvée.<2E>mes_formationsrV)<01>instanceuFormation mise à jour r<>)rr6rKr2rjrrkrrirrVr<>rlrqr<><00>r<<00> id_formationr<6E>r>r>r?<00>modifier_formation<6F>s  <02>
  r<>cCsfz tjj||jd<01>}Wntjyt<05>|d<02>td<03>YSw|jdkr/|<02> <09>t<05>
|d<05>td<03>S)uJVue pour permettre à un employé de supprimer une formation de son profilr<6C>r<>r<>rVuFormation supprimée ) rr6rKr2rjrrkrrir<>rqr<>r>r>r?<00>supprimer_formation<6F>s  <02>
 r<>c
Cs|jdkr<>|jj}|j<03>d<02>}|j<03>d<03>}|j<03>d<04>}z t||jd<05>Wn#tyG}zt<07>|dd<07> |j<07><01><00><02>t
d<08>WYd }~Sd }~ww||||d
<EFBFBD>}d d d <0C>}t j d ||d<0E>}|<08> <0A>} tt| <09><10><00><01>}
tt| <09><11><00><01>} |
dkr~t<07>|| <0B>t
d<08>St<07>|| <0B>t
d<08>Sd S)u>Vue pour permettre à un employé de modifier son mot de passerVz
ancien-mdpz nouveau-mdpzconfirmation-mdpr<70>z Erreur : rArN)r<><00>
ancien_mdp<EFBFBD> nouveau_mdp<64>confirmation_mdpzapplication/json)z Content-Type<70>Acceptz,http://localhost:8000/modifier-mot-de-passe/)r<><00>headersrq)rir2r<>rVrKr r
rrkr<>r<00>requests<74>postr<74><00>next<78>iter<65>keys<79>valuesrq) r<r<>r<>r<>r<>r<><00>donneesr<73><00>responser<65><00>cle<6C>valeurr>r>r?<00>modifier_mot_passe<73>sD
   <08><02><06><06><06>  <0C><04>r<EFBFBD>):r<>rrr<><00>dateutil.relativedeltar<00>django.contribr<00>django.contrib.authr<00>django.contrib.auth.decoratorsr<00>django.contrib.auth.modelsr<00>'django.contrib.auth.password_validationr <00>django.core.exceptionsr
<00>django.db.modelsr <00>django.forms.modelsr <00> django.httpr <00>django.shortcutsrr<00> django.utilsr<00>fonction_utilitairer<00>formsrrr<00>modelsrrrrrr@rUr}r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r>r>r>r?<00><module>s\            


2026-05-07 11:22:14 +00:00
=
2026-09-08 11:09:53 +00:00
0  %
&
2026-09-08 11:09:53 +00:00
%
H

2026-09-08 11:09:53 +00:00