1734: Partie-2 - utilisation du package auf.django.emploi dans le site institutionnel
[auf_rh_dae.git] / src / auf.django.emploi / auf / django / emploi / api.py
CommitLineData
f77f4b9b
NBV
1# -*- encoding: utf-8 -*
2from django.shortcuts import render_to_response, redirect, get_object_or_404
d46075cb 3from django.template import Context, RequestContext
f77f4b9b
NBV
4
5from django.utils import simplejson
6from auf.django.emploi import models as emploi
7from auf.django.emploi import forms as emploiForms
14e06ff6 8from restkit import request as req
d46075cb 9import datamaster_modeles.models as ref
f77f4b9b
NBV
10
11class API:
12 def __init__(self, request):
13 self.request = request
14
15 def offre_emploi_liste(self):
14e06ff6
NBV
16 url = "http://127.0.0.1:8080/api/offre_emploi_liste/"
17 r = req(url)
f77f4b9b
NBV
18 liste_json = r.body_string()
19 liste_offres = simplejson.loads(liste_json)
20 obj_offres_emploi = []
21
22 for offre_dict in liste_offres:
23 offre = emploi.OffreEmploi()
14e06ff6
NBV
24 #offre.est_affiche = offre_dict['est_affiche']
25 #offre.statut = offre_dict['statut']
f77f4b9b
NBV
26 offre.nom = offre_dict['nom']
27 offre.resume = offre_dict['resume']
28 offre.description = offre_dict['description']
14e06ff6 29 #offre.poste = offre_dict['poste']
d46075cb
NBV
30 offre.date_limite = offre_dict['date_limite']
31 offre.region = ref.Region.objects.get(id=offre_dict['region'])
32 offre.bureau = ref.Bureau.objects.get(id=offre_dict['bureau'])
f77f4b9b
NBV
33 offre.duree_affectation = offre_dict['duree_affectation']
34 offre.renumeration = offre_dict['renumeration']
35 offre.debut_affectation = offre_dict['debut_affectation']
d46075cb 36 offre.lieu_affectation = ref.Implantation.objects.get(id=offre_dict['lieu_affectation'])
f77f4b9b
NBV
37 obj_offres_emploi.append(offre)
38 return obj_offres_emploi
39
40 def offre_emploi(self, offre_id):
d46075cb 41 url = "http://127.0.0.1:8080/api/offre_emploi/?id=%s"
14e06ff6 42 r = req(url % (offre_id))
f77f4b9b
NBV
43 offre_json = r.body_string()
44 offre_dict = simplejson.loads(offre_json)
d46075cb 45 obj_offres_emploi = []
f77f4b9b 46
d46075cb
NBV
47 offre = emploi.OffreEmploi()
48 #obj_offre.est_affiche = offre_dict('est_affiche')
49 #obj_offre.statut = offre_dict('statut')
50 offre.nom = offre_dict['nom']
51 offre.resume = offre_dict['resume']
52 offre.description = offre_dict['description']
14e06ff6 53 #obj_offre.poste = offre_dict('poste')
d46075cb
NBV
54 offre.date_limite = offre_dict['date_limite']
55 offre.region = ref.Region.objects.get(id=offre_dict['region'])
56 offre.bureau = ref.Bureau.objects.get(id=offre_dict['bureau'])
57 offre.duree_affectation = offre_dict['duree_affectation']
58 offre.renumeration = offre_dict['renumeration']
59 offre.debut_affectation = offre_dict['debut_affectation']
60 offre.lieu_affectation = ref.Implantation.objects.get(id=offre_dict['lieu_affectation'])
61 obj_offres_emploi.append(offre)
62 return obj_offres_emploi
63
64 def candidat_add(self, offre_id):
65 url = "http://127.0.0.1:8080/api/candidat_add/?id=%s" % (offre_id)
66 return redirect(url)
f77f4b9b 67
d46075cb 68