Corrigé l'import des employés lorsque le pays est codé à -1
[auf_rh_dae.git] / project / legacy / management / commands / rh_import_legacy.py
index 71f885a..1a5d996 100644 (file)
@@ -82,7 +82,7 @@ def sync_employe():
             ville=fiche.ville,
             province=fiche.etat_province,
             code_postal=fiche.code_postal_cedex,
             ville=fiche.ville,
             province=fiche.etat_province,
             code_postal=fiche.code_postal_cedex,
-            pays_id=fiche.pays_iso2,
+            pays_id=fiche.pays_iso2 if fiche.pays_iso2 != '-1' else None,
             date_creation=fiche.date_ouverture,
             date_modification=fiche.date_maj,
             actif=True,
             date_creation=fiche.date_ouverture,
             date_modification=fiche.date_maj,
             actif=True,
@@ -201,10 +201,35 @@ def sync_statut():
 def sync_tauxchange():
     connection.cursor().execute('TRUNCATE rh_tauxchange')
     connection.cursor().execute('TRUNCATE rh_devise')
 def sync_tauxchange():
     connection.cursor().execute('TRUNCATE rh_tauxchange')
     connection.cursor().execute('TRUNCATE rh_devise')
+
+    # Certaines devises ont besoin d'un id spécifique (#2581)
+    rh.Devise.objects.create(id=1, code='AMD', nom='Dram arménien')
+    rh.Devise.objects.create(id=2, code='CAD', nom='Dollar canadien')
+    rh.Devise.objects.create(id=3, code='CAN', nom='Dollar canadien')
+    rh.Devise.objects.create(id=4, code='DZD', nom='Dinar algérien')
+    rh.Devise.objects.create(id=5, code='EUR', nom='Euro')
+    rh.Devise.objects.create(id=6, code='GNF', nom='Franc Guinéen')
+    rh.Devise.objects.create(id=7, code='KMF', nom='Franc comorien')
+    rh.Devise.objects.create(id=8, code='LBP', nom='Livre libanaise')
+    rh.Devise.objects.create(id=9, code='MAD', nom='Dirham marocain')
+    rh.Devise.objects.create(id=10, code='MGF', nom='Franc Malgache')
+    rh.Devise.objects.create(id=11, code='MRO', nom='Ouguiya')
+    rh.Devise.objects.create(id=12, code='MUR', nom='Roupie mauricienne')
+    rh.Devise.objects.create(id=13, code='SYP', nom='Livre syrienne')
+    rh.Devise.objects.create(id=14, code='TND', nom='Dinar tunisien')
+    rh.Devise.objects.create(id=15, code='US ', nom='Dollar américain')
+    rh.Devise.objects.create(id=16, code='USD', nom='Dollar américain')
+    rh.Devise.objects.create(id=17, code='VUV', nom='Vatu')
+    rh.Devise.objects.create(id=18, code='XAF', nom='Franc CFA')
+    rh.Devise.objects.create(id=19, code='XOF', nom='Franc CFA')
+
     for taux in legacy.TauxChangeAnnuel.objects.exclude(taux_annuel=None):
 
         # Créer la devise
     for taux in legacy.TauxChangeAnnuel.objects.exclude(taux_annuel=None):
 
         # Créer la devise
-        devise, created = rh.Devise.objects.get_or_create(code=taux.code_devise)
+        try:
+            devise, created = rh.Devise.objects.get_or_create(code=taux.code_devise)
+        except:
+            import pdb; pdb.set_trace()
         if created:
             devise.nom=taux.nom_devise
             devise.save()
         if created:
             devise.nom=taux.nom_devise
             devise.save()