a5938ecf3c88a048806f0d39f2f24eccb2c1f97c
[auf_rh_dae.git] / project / dae / templates / dae / embauche.html
1 {% extends 'base.html' %}
2 {% load adminmedia %}
3 {% load dae %}
4
5 {% block title %}RH - DAE - Embauche{% endblock %}
6 {% block titre %}Ressources humaines{% endblock %}
7 {% block sous_titre %}Demande d'autorisation d'engagement{% endblock %}
8
9 {% block extrahead %}
10 <script src="{{ STATIC_URL }}js/jquery-1.5.1.min.js"
11 type="text/javascript"></script>
12
13 <script type="text/javascript">
14 var DEVISES = {};
15 {% for d in devises %}
16 DEVISES['{{d.devise_code}}'] = {{d.taux_euro|stringformat:".10f"}};
17 {% endfor %}
18 </script>
19
20 {% comment %} style pour le calendier {% endcomment %}
21 <script type="text/javascript">
22 window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}";
23 </script>
24 <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/calendrier.css" />
25 <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/dae.css" />
26 <script type="text/javascript" src="/admin/jsi18n/"></script>
27 <script type="text/javascript" src="{% admin_media_prefix %}js/core.js"></script>
28 <script type="text/javascript" src="{% admin_media_prefix %}js/calendar.js"></script>
29 <script type="text/javascript" src="{% admin_media_prefix %}js/admin/DateTimeShortcuts.js"></script>
30 <script src="{{ STATIC_URL }}jquery-autocomplete/jquery.autocomplete.js" type="text/javascript"></script>
31 <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}jquery-autocomplete/jquery.autocomplete.css" />
32 <script src="{{ STATIC_URL }}js/dae.js" type="text/javascript"></script>
33 <script src="{{ STATIC_URL }}js/dae-embauche.js" type="text/javascript"></script>
34 <script src="{{ STATIC_URL }}js/remun.js" type="text/javascript"></script>
35 {% endblock %}
36
37 {% block main %}
38
39 <h1>Demande d'autorisation d'engagement de personnel</h1>
40 <form action="" method="post" enctype="multipart/form-data">
41 <h2 class="section">SECTION 1 - POSTE</h2>
42 {% include 'dae/poste_resume.html' %}
43
44 <h2 class="section">SECTION 2 - PERSONNEL ENGAGÉ</h2>
45 <fieldset>
46 <div>
47 <div class="gauche"><h2>Personne</h2></div>
48 <div class="droite">
49 <table class="droite">
50 <tbody>
51 <tr>
52 <th>Mobilité interne</th>
53 <td colspan="3"><input id="mobilite_interne" type="checkbox" name="mobilite_interne" /></td>
54 </tr>
55 </tbody>
56 </table>
57 </div>
58 </div>
59 <div class="clear"></div>
60 <table id="form-employe">
61 <tbody>
62 <tr>
63 <th>
64 Employé :<br />
65 {{ forms.employe.employe.errors }}
66 </th>
67 <td colspan="5">{{ forms.employe.employe }}</td>
68 </tr>
69 <tr>
70 <th>
71 {{ forms.employe.nom.label_tag }} :<br />
72 {{ forms.employe.nom.errors }}
73 </th>
74 <td>{{ forms.employe.nom }}</td>
75 <th>
76 {{ forms.employe.prenom.label_tag }} :<br />
77 {{ forms.employe.prenom.errors }}
78 </th>
79 <td>{{ forms.employe.prenom }}</td>
80 <th>
81 {{ forms.employe.genre.label_tag }} :<br />
82 {{ forms.employe.genre.errors }}
83 </th>
84 <td>{{ forms.employe.genre }}</td>
85 </tr>
86 </tbody>
87 </table>
88
89 <input type="hidden" id="poste" name="poste"
90 value="dae-{{ poste.id }}" />
91 <input type="hidden" id="implantation" name="implantation"
92 value="{{ poste.implantation_id }}" />
93 <input type="hidden" id="dossier" name="dossier"
94 value="{{ dossier.id }}" />
95 </fieldset>
96
97 <fieldset>
98 <h2>Comparaison salariale</h2>
99 <span class="info">dans la région pour les employés occupant un poste similaire</span>
100 {{ comparaisons_formset.management_form }}
101
102 {% for f in comparaisons_formset.forms %}
103 <table>
104 {% for field in f %}
105 {% if field.is_hidden %}{{ field }}{% endif %}
106 {% endfor %}
107 <tr><td colspan=2>Rechercher (personne, poste) : {{ f.recherche }} <span class="clear-cmp"><a href="#" class="display-none">Supprimmer</a></span></td></tr>
108 <tr><th>{{ f.implantation.label }}</th><td>{{ f.implantation.errors }} {{ f.implantation }}</td></tr>
109 <tr><th>{{ f.poste.label }}</th><td>{{ f.poste.errors }} {{ f.poste }}</td></tr>
110 <tr><th>{{ f.personne.label }}</th><td>{{ f.personne.errors }} {{ f.personne }}</td></tr>
111 <tr><th>{{ f.statut.label }}</th><td>{{ f.statut.errors }} {{ f.statut }}</td></tr>
112 <tr><th>{{ f.classement.label }}</th><td>{{ f.classement.errors }} {{ f.classement }}</td></tr>
113 <tr><th>{{ f.montant.label }} ({{f.devise.label }})</th><td>{{ f.montant.errors }} {{ f.montant }} {{ f.devise.errors }} {{f.devise }}</td></tr>
114 </table>
115 {% endfor %}
116 </fieldset>
117
118
119 <div id="form-dossier">
120 <!-- Wrapper du formulaire de dossier -->
121 {% with forms.dossier as form %}
122
123
124 <fieldset>
125 <h2>Contrat</h2>
126 <table>
127 <tbody>
128 <tr>
129 <th rowspan="2">{{ form.type_contrat.label_tag }} :</th>
130 <td colspan="4" rowspan="2">
131 {{ form.type_contrat }}<br />
132 {{ form.type_contrat.errors }}
133 </td>
134 <th>
135 {{ form.remplacement.label_tag }} :
136 </th>
137 <td>
138 {{ form.remplacement }}<br />
139 {{ form.remplacement.errors }}
140 </td>
141 </tr>
142 <th>
143 {{ form.est_cadre.label_tag }} :
144 </th>
145 <td>
146 {{ form.est_cadre }}<br />
147 {{ form.est_cadre.errors }}
148 </td>
149 <tr>
150
151 </tr>
152 <tr>
153 <th rowspan="2">Durée :</th>
154 <td>du</td>
155 <td>
156 {{ form.contrat_date_debut }}<br />
157 <span class="info">({{form.contrat_date_debut.help_text }})</span><br />
158 {{ form.contrat_date_debut.errors }}
159 </td>
160 <td> au </td>
161 <td>
162 {{ form.contrat_date_fin }}<br />
163 <span class="info">({{form.contrat_date_fin.help_text }})</span><br />
164 {{ form.contrat_date_fin.errors }}
165 </td>
166 <th>{{ form.regime_travail.label_tag }} :<br />{{ form.regime_travail.errors }}</th>
167 <td>
168 {{ form.regime_travail }}
169 <span class="info">{{ form.regime_travail.help_text }}</span>
170 </td>
171 </tr>
172 <tr>
173 <td colspan="4" class="info">
174 <p id="note-duree">Pour une durée indéterminée, spécifier uniquement la date de début.</p>
175 </td>
176 <th>
177 {{ form.regime_travail_nb_heure_semaine.label_tag }} :<br />
178 {{ form.regime_travail_nb_heure_semaine.errors }}
179 </th>
180 <td>{{ form.regime_travail_nb_heure_semaine }}
181 <span class="info">{{ form.regime_travail_nb_heure_semaine.help_text }}</span></td>
182 </tr>
183 <tr>
184 <th>Statut : </th>
185 <td colspan="4">
186 {{ form.statut }}
187 <span class="row">
188 {{ form.statut_residence }}
189 {% if form.statut.errors %}
190 <br />
191 {{ form.statut.errors }}
192 {% endif %}
193 {% if form.statut_residence.errors %}
194 <br />
195 {{ form.statut_residence.errors }}
196 {% endif %}
197 </span>
198 </td>
199 <th>{{ form.organisme_bstg.label_tag }} :</th>
200 <td>
201 {{ form.organisme_bstg }}
202 {% if form.organisme_bstg.errors %}
203 <br />
204 {{ form.organisme_bstg.errors }}
205 {% endif %}
206 <span class="info">{{ form.organisme_bstg.help_text }}</span><br/><br/>
207 {{ form.organisme_bstg_autre }}
208 <span class="info">{{ form.organisme_bstg_autre.help_text }}</span>
209 </td>
210 </tr>
211 <tr>
212 <th></th>
213 <td colspan="4">
214 </td>
215 <th colspan="2">
216 </th>
217 </tr>
218 </tbody>
219 </table>
220 </fieldset>
221
222 <fieldset>
223 <h2>Classement et salaire de base</h2>
224 <table>
225 <tbody>
226 <tr>
227 <td colspan="7">
228 <h3>Ancien dossier <span class="info">(le cas échéant)</span></h3>
229 </td>
230 </tr>
231 <tr>
232 <td colspan="7">
233 {{ employe }} <span class="info">{{ employe.dossier_set.all.reverse }}</span>
234 </td>
235 </tr>
236 <tr>
237 <th>{{ form.classement_anterieur.label_tag }}</th>
238 <th>{{ form.salaire_anterieur.label_tag }}</th>
239 <th>{{ form.statut_anterieur.label_tag }}</th>
240 <th>{{ form.type_contrat_anterieur.label_tag }}</th>
241 <th colpsan="3"></th>
242 </tr>
243 <tr>
244 <td>{{ form.classement_anterieur }}</td>
245 <td>{{ form.salaire_anterieur }} {{ form.devise_anterieur }}</td>
246 <td>{{ form.statut_anterieur }}</td>
247 <td>{{ form.type_contrat_anterieur }}</td>
248 <td colspan="3"></td>
249 </tr>
250 <tr>
251 <td colspan="7">
252 <h3>Précédent titulaire <span class="info">(le cas échéant)</span></h3>
253 </td>
254 </tr>
255 <tr>
256 <td colspan="7">
257 {% if request.user|test_membre_drh %}
258 {{ form.instance.employe_anterieur }}{{ form.employe_anterieur }}
259 {% else %}
260 {{ form.instance.employe_anterieur }}{{ form.employe_anterieur.as_hidden }}
261 {% endif %}
262 {{ form.employe_anterieur.errors }}
263 </td>
264 </tr>
265 <tr>
266 <th>{{ form.classement_titulaire_anterieur.label_tag }}</th>
267 <th colspan="4">{{ form.salaire_titulaire_anterieur.label_tag }}</th>
268 <th>{{ form.statut_titulaire_anterieur.label_tag }}</th>
269 <th></th>
270 </tr>
271 <tr>
272 {% if request.user|test_membre_drh %}
273 <td>{{ form.instance.classement_titulaire_anterieur }}
274 {{ form.classement_titulaire_anterieur }}<br />
275 {{ form.classement_titulaire_anterieur.errors }}
276 </td>
277 <td>{{ form.instance.salaire_titulaire_anterieur }}{{ form.salaire_titulaire_anterieur }} {{ form.devise_titulaire_anterieur }}</td>
278 <td></td>
279 <td></td>
280 <td></td>
281 <td>{{ form.instance.statut_titulaire_anterieur }}{{ form.statut_titulaire_anterieur }}</td>
282 {% else %}
283 <td>{{ form.instance.classement_titulaire_anterieur }}
284 {{ form.classement_titulaire_anterieur.as_hidden }}<br />
285 {{ form.classement_titulaire_anterieur.errors }}
286 </td>
287 <td>{{ form.instance.salaire_titulaire_anterieur }}{{ form.salaire_titulaire_anterieur.as_hidden }} {{ form.instance.devise_titulaire_anterieur.as_hidden }}</td>
288 <td></td>
289 <td></td>
290 <td></td>
291 <td>{{ form.instance.statut_titulaire_anterieur }}{{ form.statut_titulaire_anterieur.as_hidden }}</td>
292 {% endif %}
293 <td></td>
294 </tr>
295 </tbody>
296 </table>
297 </fieldset>
298
299
300 <fieldset>
301 <h2>Accès et ouverture des comptes</h2>
302 <table>
303 <tbody>
304 <tr>
305 <th>
306 {{ form.compte_compta.label_tag }}
307 </th>
308 <td>
309 {{ form.compte_compta }}<br />
310 {{ form.compte_compta.errors }}
311 </td>
312 <th>
313 {{ form.compte_courriel.label_tag }}
314 </th>
315 <td>
316 {{ form.compte_courriel }}<br />
317 {{ form.compte_courriel.errors }}
318 </td>
319 </tr>
320 </tbody>
321 </table>
322 </fieldset>
323
324 </div>
325
326 <fieldset>
327 <h2>Pièces jointes</h2>
328 <p class="info">CV, lettre de motivation...</p>
329 {% include "dae/pieces.html" %}
330 </fieldset>
331
332 <h2 class="section">SECTION 3 - COÛT GLOBAL</h2>
333
334 <fieldset>
335 <div>
336 <div class="gauche"><h2>Proposition de classement</h2></div>
337 <div class="gauche">
338 <table class="gauche">
339 <tr>
340 <th>{{ form.classement.label_tag }}</th>
341 <th colspan="3">{{ form.salaire.label_tag }}</th>
342 </tr>
343 <tr>
344 <td>{{ form.classement }}<br />{{ form.classement.errors }}</td>
345 <td>{{ form.salaire.errors }} {{ form.salaire }} {{ form.devise }}
346 <span class="info">(fourchette du poste : {{ poste.salaire_min }} {{ poste.devise_min.code }}
347 - {{ poste.salaire_max }} {{ poste.devise_max.code }})</span>
348 </td>
349 <td id="salaire-propose-euros" class="montant"></td>
350 <td></td>
351 </tr>
352 <script type="text/javascript">
353 /* Changement de classement, on repropose un salaire */
354 $('#id_classement').change(function() {
355 loadSalaire();
356 proposition_comparaison($('#id_devise').val());
357 });
358 /* changements, on recalcule */
359 $('#id_salaire').focusout(function() {proposition_comparaison($('#id_devise').val());});
360 $('#id_devise').change(function() {proposition_comparaison($('#id_devise').val());});
361 proposition_comparaison($('#id_devise').val());
362 </script>
363 </table>
364 </div>
365 </div>
366 {% endwith %}
367
368
369
370
371 {% include 'dae/embauche-remun.html' %}
372
373 <!-- <select id="type-remun" name="type-remun"> -->
374 <!-- <option value="">(Ajouter une ligne)</option> -->
375 <!-- {% for tr in type_remun %} -->
376 <!-- <option value="{{ tr.id }}">{{ tr.nom }}</option> -->
377 <!-- {% endfor %} -->
378 <!-- </select> -->
379
380 </fieldset>
381
382 <h2 class="section">SECTION 4 - JUSTIFICATION DE LA DEMANDE (OBLIGATOIRE)</h2>
383 <h3>A - Justification du poste</h3>
384 <p>{{ poste.justification }}</p>
385
386 <h3>B - Justification de l'employé</h3>
387 <table>
388 <tr>
389 <th>Nouvel employé</th>
390 <th>Renouvellement, prolongation, reclassement, mobilité interne</th>
391 </tr>
392 <tr>
393 <td>
394 <h4>{{ forms.dossier.justif_nouveau_statut.label }}</h4>
395 {{ forms.dossier.justif_nouveau_statut }}
396 <h4>{{ forms.dossier.justif_nouveau_tmp_remplacement.label }}</h4>
397 {{ forms.dossier.justif_nouveau_tmp_remplacement }}
398 <h4>{{ forms.dossier.justif_nouveau_salaire.label }}</h4>
399 {{ forms.dossier.justif_nouveau_salaire }}
400 <h4>{{ forms.dossier.justif_nouveau_commentaire.label }}</h4>
401 {{ forms.dossier.justif_nouveau_commentaire }}
402 </td>
403 <td>
404 <h4>{{ forms.dossier.justif_rempl_type_contrat.label }}</h4>
405 {{ forms.dossier.justif_rempl_type_contrat}}
406 <h4>{{ forms.dossier.justif_rempl_statut_employe.label }}</h4>
407 {{ forms.dossier.justif_rempl_statut_employe}}
408 <h4>{{ forms.dossier.justif_rempl_evaluation.label }}</h4>
409 {{ forms.dossier.justif_rempl_evaluation}}
410 <h4>{{ forms.dossier.justif_rempl_salaire.label }}</h4>
411 {{ forms.dossier.justif_rempl_salaire }}
412 <h4>{{ forms.dossier.justif_rempl_commentaire.label }}</h4>
413 {{ forms.dossier.justif_rempl_commentaire }}
414 </td>
415 </tr>
416 </table>
417
418 <input type="submit" name="continue" value="Sauvegarder (et ajouter des lignes)" />
419 <input type="submit" name="save" value="Sauvegarder" />
420 </form>
421 {% endblock %}