Masse salariale: ajout de couleur pour les tableaux
[auf_rh_dae.git] / project / rh / masse_salariale.py
index af50852..8f9553b 100644 (file)
@@ -21,13 +21,14 @@ TYPE_REMUN_BASE = (1,)
 TYPE_REMUN_FONC_RESP = (7, 8)
 TYPE_REMUN_EXPAT = (4,)
 TYPE_REMUN_LOGEMENT = (6,)
+TYPE_REMUN_SCOLARITE = (5,)
 TYPE_REMUN_TRANSP = (9,)
 TYPE_REMUN_13E = (18,)
 TYPE_PRIME_INTERIM = (19,)
 TYPE_REMUN_ALL_INDEMNITES = list(itertools.chain(*(TYPE_REMUN_BSTG,
         TYPE_REMUN_MAD, TYPE_REMUN_BASE, TYPE_REMUN_FONC_RESP,
         TYPE_REMUN_EXPAT, TYPE_REMUN_LOGEMENT, TYPE_REMUN_TRANSP,
-        TYPE_REMUN_13E, TYPE_PRIME_INTERIM)))
+        TYPE_REMUN_13E, TYPE_PRIME_INTERIM, TYPE_REMUN_SCOLARITE)))
 TYPE_PRIME_INSTALLATION = (13,)
 TYPE_PRIME_DEMENAG = (15,)
 TYPE_PRIME_AVION = (14,)
@@ -151,58 +152,68 @@ class MasseSalariale():
                     {'columnwidth': '2.9cm'}),
                 HEADER_SEPARATOR,
                 ('salaire_theorique', u"Salaire théorique",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#ecab44'}),
                 ('salaire_base_brut', u"Salaire de base brut",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#ecab44'}),
                 ('salaire_complementaire', u"Salaire complémentaire",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#ecab44'}),
                 HEADER_SEPARATOR,
                 ('indemnite_fonctions', u"Indemnités de fonctions",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('indemnite_expat', u"Indemnités d'expatriation",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
+                ('indemnite_scolarite', u"Indemnités de frais de scolarité",
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('indemnite_logement', u"Indemnités de logement",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('indemnite_transp', u"Indemnités de transport",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('indemnite_13e', u"Indemnités 13e mois",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('prime_interim', u"Prime d'intérim",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('indemnite_autre', u"Autre indemnités",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 ('indemnite_sous_total', u"Sous-total d'indemnités",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fff840'}),
                 HEADER_SEPARATOR,
                 ('prime_installation', u"Prime d'installation",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#d7fb0f'}),
                 ('prime_demenagement', u"Prime de déménagement",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#d7fb0f'}),
                 ('prime_avion', u"Prime d'avion",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#d7fb0f'}),
                 ('prime_autre', u"Autre prime",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#d7fb0f'}),
                 ('prime_sous_total', u"Total des primes",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#d7fb0f'}),
                 HEADER_SEPARATOR,
                 ('charges_patronales', u"Charges patronales",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fb680f'}),
                 ('charges_autre', u"Autres charges patronales",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fb680f'}),
                 ('charges_sous_total', u"Sous-total des charges patronales",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#fb680f'}),
                 HEADER_SEPARATOR,
-                ('sous_total_traitement_annee', u"Total traitement annuel"),
-                ('sous_total_indemnite_annee', u"Total indemnités annuel"),
-                ('sous_total_accessoire_annee', u"Total accessoires annuel"),
-                ('sous_total_charges_annee', u"Total charges annuel"),
+                ('sous_total_traitement_annee', u"Total traitement annuel",
+                    {'background-color': '#f88680'}),
+                ('sous_total_indemnite_annee', u"Total indemnités annuel",
+                    {'background-color': '#f88680'}),
+                ('sous_total_accessoire_annee', u"Total accessoires annuel",
+                    {'background-color': '#f88680'}),
+                ('sous_total_charges_annee', u"Total charges annuel",
+                    {'background-color': '#f88680'}),
                 HEADER_SEPARATOR,
                 ('masse_salariale', u"Masse salariale annuelle",
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#e6c6ed'}),
                 ('masse_salariale_annee', u"Masse salariale %s" % self.annee,
-                    {'columnwidth': '2.5cm'}),
+                    {'columnwidth': '2.5cm', 'background-color': '#e6c6ed'}),
                 ('masse_salariale_annee_euro', u"Masse salariale %s EUR" % \
-                        self.annee, {'columnwidth': '2.5cm'}),
+                        self.annee, {
+                            'columnwidth': '2.5cm',
+                            'background-color': '#e6c6ed'
+                            }
+                ),
         )
 
         grand_total = 0.0
@@ -271,6 +282,7 @@ class MasseSalariale():
             indemnites = {
                     'fonc_resp': 0.0,
                     'expat': 0.0,
+                    'scolarite': 0.0,
                     'logement': 0.0,
                     'transp': 0.0,
                     '13e': 0.0,
@@ -311,6 +323,9 @@ class MasseSalariale():
                 if r.type_id in TYPE_REMUN_EXPAT:
                     indemnites['expat'] += montant
 
+                if r.type_id in TYPE_REMUN_SCOLARITE:
+                    indemnites['scolarite'] += montant
+
                 if r.type_id in TYPE_REMUN_LOGEMENT:
                     indemnites['logement'] += montant
 
@@ -435,6 +450,8 @@ class MasseSalariale():
                             regime * rapport_nombre_jours,
                     'indemnite_expat': indemnites['expat'] * regime * \
                             rapport_nombre_jours,
+                    'indemnite_scolarite': indemnites['scolarite'] * \
+                            regime * rapport_nombre_jours,
                     'indemnite_logement': indemnites['logement'] * \
                             regime * rapport_nombre_jours,
                     'indemnite_transp': indemnites['transp'] * regime * \