Checkpoint: Ajout du module Masse salariale SANTINOVA : tables de salariés, rémunérations et évolutions manuelles sécurisées par rôle administrateur ; import contrôlé des bulletins 2025 et janvier–août 2026 ; écran tableau 2025–2027 ; tests d'autorisations, d'agrégats et des quatre états UI ; documentation des sources et de la politique d'import.
This commit is contained in:
67
docs/masse-salariale.md
Normal file
67
docs/masse-salariale.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# Module Masse salariale Santinova
|
||||
|
||||
## Périmètre et accès
|
||||
|
||||
Le module stocke des **données de rémunération à caractère sensible**. L'accès
|
||||
au menu, à la page et à toutes les procédures de lecture ou d'écriture est
|
||||
réservé au rôle `admin`. Les sources de paie importées ne sont pas conservées
|
||||
dans le code source ni dans le stockage applicatif ; seuls les champs métier
|
||||
nécessaires au tableau sont enregistrés en base.
|
||||
|
||||
## Champs du tableau
|
||||
|
||||
Chaque salarié est identifié par son matricule paie. Le tableau comprend le
|
||||
nom, le prénom, le poste et la date d'embauche ainsi que, pour 2025, 2026 et
|
||||
2027 : salaire annuel brut hors primes, salaire annuel brut avec primes,
|
||||
salaire mensuel brut hors primes, taux de charge et évolution salariale.
|
||||
|
||||
| Champ | Origine | Règle de traitement |
|
||||
|---|---|---|
|
||||
| Salaire mensuel brut hors primes | Ligne « Salaire de base » | Montant de la paie source. |
|
||||
| Salaire annuel brut hors primes | Salaire mensuel brut hors primes | Calcul : montant mensuel × 12. |
|
||||
| Salaire annuel brut avec primes | Synthèse « Annuel — Brut » | Montant cumulé annuel fourni par la paie. Pour une année non clôturée, le statut indique le mois de référence. |
|
||||
| Taux de charge | Synthèse « Annuel — Charges patronales » | Calcul : charges patronales ÷ brut annuel avec primes. |
|
||||
| Évolution salariale | Saisie utilisateur | Pourcentage manuel, stocké séparément des montants importés ; il peut donc être renseigné pour 2027 sans créer de rémunération fictive. |
|
||||
|
||||
## Sources analysées
|
||||
|
||||
Les bulletins de décembre 2025 fournissent un cumul annuel complet. Les
|
||||
bulletins 2026 reçus couvrent janvier à août ; le relevé le plus récent par
|
||||
salarié sera associé à son mois de référence afin de ne pas présenter un cumul
|
||||
partiel comme une année clôturée (`cumul_provisoire`). Les années ou salariés
|
||||
sans bulletin ne seront jamais créés avec des données fictives : le tableau
|
||||
affichera une valeur absente et un statut de donnée à compléter.
|
||||
|
||||
## Règles de sécurité et d'intégrité
|
||||
|
||||
Le couple `(matricule, année)` est unique. Une importation est idempotente : la
|
||||
dernière source validée remplace les valeurs extraites du même salarié pour la
|
||||
même année, sans écraser une évolution salariale saisie manuellement. Les
|
||||
montants sont stockés en centimes et les pourcentages en points de base pour
|
||||
éviter toute erreur d'arrondi.
|
||||
|
||||
## Contrôle de l'interface
|
||||
|
||||
La page de connexion est disponible sur l'environnement de développement. Le
|
||||
contrôle du tableau Masse salariale est réalisé avec un compte administrateur,
|
||||
afin de vérifier simultanément l'affichage des données et leur cloisonnement
|
||||
par rôle.
|
||||
|
||||
Un accès direct à `/masse-salariale` sans session est redirigé vers `/login`.
|
||||
La connexion avec le compte administrateur de test est acceptée et le menu
|
||||
SANTINOVA devient accessible dans la barre latérale.
|
||||
|
||||
Le contrôle visuel confirme que le tableau s'affiche sous SANTINOVA avec les
|
||||
19 salariés importés, les cumuls 2025 et 2026 correctement signalés, ainsi
|
||||
qu'une colonne 2027 vide plutôt qu'un total salarial fictif.
|
||||
Une cellule d'évolution 2027 devient éditable au clic et peut être annulée par
|
||||
la touche Échap, sans modifier la base de données.
|
||||
|
||||
## Modalité d'import
|
||||
|
||||
L'import initial des bulletins transmis est réalisé par un outil contrôlé hors
|
||||
de l'interface. Cette mesure évite d'exposer des documents de paie ou leurs
|
||||
données brutes dans le navigateur. Les procédures d'import tRPC existent et
|
||||
sont réservées aux administrateurs pour une future intégration d'import interne
|
||||
après validation du format de fichier et des règles de conservation. Aucun
|
||||
fichier de paie n'est versionné dans le dépôt applicatif.
|
||||
Reference in New Issue
Block a user