self.rapport = []
- pays_list = ref.Pays.objects.all()
+ pays_list = {}
+ for pays in ref.Pays.objects.all():
+ pays_list[pays.id] = pays
+
valeurs_point_par_imp = \
dict(
(v.implantation.id, v) for v in \
rh.ValeurPoint.objects.filter(annee=self.annee).all()
)
+
+ self.headers = (
+ ('bureau', u"Bureau"),
+ ('pays', u"Pays"),
+ ('implantation', u"Implantation"),
+ ('valeur_point', u"Valeur du point"),
+ ('numero_employe', u"Numéro d'employé"),
+ ('nom', u"Nom"),
+ ('prenom', u"Prénom"),
+ ('type_de_poste', u"Type de poste"),
+ ('intitule_de_poste', u"Intitulé du poste"),
+ ('niveau', u"Niveau"),
+ ('point', u"Point"),
+ ('regime_de_travail', u"Régime de travail"),
+ ('local_expatrie', u"Local / Expatrié"),
+ ('statut', u"Statut"),
+ ('date_fin_contrat', u"Date de fin de contrat"),
+ ('date_debut', u"Date de début"),
+ ('date_fin', u"Date de fin"),
+ ('nb_jours', u"Nombre de jours"),
+ ('devise', u"Devise"),
+ ('salaire_bstg_annuel', u"Salaire annuel BSTG"),
+ ('salaire_bstg_total', u"Salaire total BSTG"),
+ ('organisme_bstg', u"Organisme BSTG"),
+ ('salaire_theorique', u"Salaire théorique"),
+ ('salaire_base_brut', u"Salaire de base brut"),
+ ('salaire_complementaire', u"Salaire complémentaire"),
+ ('indemnite_fonctions', u"Indemnités de fonctions"),
+ ('indemnite_expat', u"Indemnités d'expatriation"),
+ ('indemnite_logement', u"Indemnités de logement"),
+ ('indemnite_transp', u"Indemnités de transport"),
+ ('indemnite_13e', u"Indemnités 13e mois"),
+ ('indemnite_autre', u"Autre indemnités"),
+ ('total_brut', u"Total brut"),
+ ('prime_interim', u"Prime d'intérim"),
+ ('prime_installation', u"Prime d'installation"),
+ ('prime_demenagement', u"Prime de déménagement"),
+ ('prime_avion', u"Prime d'avion"),
+ ('prime_autre', u"Autre prime"),
+ ('prime_total', u"Total des primes"),
+ ('charges_patronales', u"Charges patronales"),
+ ('charges_patronales_annee', u"Charge patronale %s" % \
+ self.annee),
+ ('masse_salariale', u"Masse salariale"),
+ ('masse_salariale_annee', u"Masse salariale %s" % self.annee),
+ ('masse_salariale_annee_euro', u"Masse salariale euro %s" % \
+ self.annee),
+ )
+
for item in self.employes.values():
dossiers = item['dossiers']
remuns = item['remunerations']
round(valeur_point.valeur * int(coefficient) * regime, 2) \
if valeur_point and coefficient and regime else "")
- item_rapport = (
- ('bureau', dossier.poste.implantation.region.code),
- ('pays', unicode(pays)),
- ('implantation', dossier.poste.implantation.nom_court),
- ('type_implantation', dossier.poste.implantation.type),
- #'imputation', None),
- ('valeur_point', valeur_point),
- ('numero_employe', dossier.employe_id),
- ('nom', dossier.employe.nom.upper()),
- ('prenom', dossier.employe.prenom),
- ('type_de_poste', dossier.poste.type_poste.nom),
- ('intitule_de_poste', dossier.poste.nom),
- ('niveau', unicode(dossier.classement)),
- ('point', coefficient),
- ('regime_de_travail', "%s %%" % int(regime * 100)),
- ('local_expatrie', statut),
- ('statut', dossier.statut.code),
- ('date_fin_contrat', dossier.date_fin or ""),
- ('date_debut', d_date_debut or ""),
- ('date_fin', d_date_fin or ""),
- ('nb_jours', date_delta.days),
- ('devise', remuns[0].devise),
- ('salaire_bstg_annuel', bstg_remun.montant \
- if bstg_remun else ""),
- ('salaire_bstg_total', bstg_remun_euro.montant \
- if bstg_remun else ""),
- ('organisme_bstg', dossier.organisme_bstg or ""),
- ('salaire_theorique', salaire_theorique),
- ('salaire_base_brut', \
+ item_rapport = {
+ 'bureau': dossier.poste.implantation.region.code,
+ 'pays': unicode(pays),
+ 'implantation': dossier.poste.implantation.nom_court,
+ 'type_implantation': dossier.poste.implantation.type,
+ #'imputation': None,
+ 'valeur_point': valeur_point,
+ 'numero_employe': dossier.employe_id,
+ 'nom': dossier.employe.nom.upper(),
+ 'prenom': dossier.employe.prenom,
+ 'type_de_poste': dossier.poste.type_poste.nom,
+ 'intitule_de_poste': dossier.poste.nom,
+ 'niveau': unicode(dossier.classement),
+ 'point': coefficient,
+ 'regime_de_travail': "%s %%" % int(regime * 100),
+ 'local_expatrie': statut,
+ 'statut': dossier.statut.code,
+ 'date_fin_contrat': dossier.date_fin or "",
+ 'date_debut': d_date_debut or "",
+ 'date_fin': d_date_fin or "",
+ 'nb_jours': date_delta.days,
+ 'devise': remuns[0].devise,
+ 'salaire_bstg_annuel': bstg_remun.montant \
+ if bstg_remun else "",
+ 'salaire_bstg_total': bstg_remun_euro.montant \
+ if bstg_remun else "",
+ 'organisme_bstg': dossier.organisme_bstg or "",
+ 'salaire_theorique': salaire_theorique,
+ 'salaire_base_brut': \
salaire_base * regime * (
date_delta.days / rapport_date_delta.days
- )),
- ('salaire_complementaire', \
+ ),
+ 'salaire_complementaire': \
salaire_complement * regime * (
date_delta.days / rapport_date_delta.days
- )),
- #'salaire_total', None
- ('indemnite_fonctions', indemnites['fonc_resp'] * \
+ ),
+ #'salaire_total': None
+ 'indemnite_fonctions': indemnites['fonc_resp'] * \
regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('indemnite_expat', indemnites['expat'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('indemnite_logement', indemnites['logement'] * \
+ (date_delta.days / rapport_date_delta.days),
+ 'indemnite_expat': indemnites['expat'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'indemnite_logement': indemnites['logement'] * \
regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('indemnites_transp', indemnites['transp'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('indemnites_13e', indemnites['13e'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('indemnites_autre', indemnites['autre_recurr'] * \
+ (date_delta.days / rapport_date_delta.days),
+ 'indemnite_transp': indemnites['transp'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'indemnite_13e': indemnites['13e'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'indemnite_autre': indemnites['autre_recurr'] * \
regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('indemnites_total', total_indemnites * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('total_brut', (
+ (date_delta.days / rapport_date_delta.days),
+ 'indemnite_total': total_indemnites * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'total_brut': (
total_indemnites + salaire_base +
salaire_complement
) * regime * (
date_delta.days / rapport_date_delta.days
- )),
- ('prime_interim', primes['interim'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('prime_installation', primes['installation'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('prime_demenagement', primes['demenagement'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('prime_avion', primes['avion'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('prime_autre', primes['autre'] * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('prime_total', sum(primes.values()) * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('charges_patronales', charges),
- ('charges_patronales_%s' % self.annee, charges * regime * \
- (date_delta.days / rapport_date_delta.days)),
- ('masse_salariale', masse_salariale),
- ('masse_salariale_%s' % self.annee, masse_salariale * \
+ ),
+ 'prime_interim': primes['interim'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'prime_installation': primes['installation'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'prime_demenagement': primes['demenagement'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'prime_avion': primes['avion'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'prime_autre': primes['autre'] * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'prime_total': sum(primes.values()) * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'charges_patronales': charges,
+ 'charges_patronales_annee': charges * regime * \
+ (date_delta.days / rapport_date_delta.days),
+ 'masse_salariale': masse_salariale,
+ 'masse_salariale_annee': masse_salariale * \
regime * (
date_delta.days / rapport_date_delta.days
- )),
- ('masse_salariale__euro_%s' % self.annee, \
+ ),
+ 'masse_salariale_annee_euro': \
masse_salariale_euro.montant * regime * (
date_delta.days / rapport_date_delta.days
- )),
- )
+ ),
+ }
self.rapport.append(item_rapport)