@socialgouv/modeles-social 4.68.0 → 4.69.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/package.json +2 -2
- package/src/__test__/2941-aide-accompagnement-soins-services-domicile/preavis-retraite/depart-mise.spec.ts +84 -0
- package/src/__test__/2941-aide-accompagnement-soins-services-domicile/preavis-retraite/references.spec.ts +54 -0
- package/src/modeles/conventions/2941_aide_accompagnement_soins_services_domicile.yaml +141 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [4.69.0](https://github.com/SocialGouv/code-du-travail-numerique/compare/v4.68.0...v4.69.0) (2022-02-10)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **simulator:** add new CC 2941 ([#4166](https://github.com/SocialGouv/code-du-travail-numerique/issues/4166)) ([8330d59](https://github.com/SocialGouv/code-du-travail-numerique/commit/8330d59949b592446720173a680e01597d8df2ac))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# [4.68.0](https://github.com/SocialGouv/code-du-travail-numerique/compare/v4.67.1...v4.68.0) (2022-02-02)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @socialgouv/modeles-social
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@socialgouv/modeles-social",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.69.0",
|
|
4
4
|
"description": "Les règles publicodes des simulateurs de code du travail numérique",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -40,5 +40,5 @@
|
|
|
40
40
|
"yarn lint --fix"
|
|
41
41
|
]
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "53c59d6ed307afd81e13c7b918be1642c5cbdb14"
|
|
44
44
|
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import Engine from "publicodes";
|
|
2
|
+
|
|
3
|
+
import { getNotifications } from "../../../index";
|
|
4
|
+
import { mergeModels } from "../../../internal/merger";
|
|
5
|
+
|
|
6
|
+
const engine = new Engine(mergeModels());
|
|
7
|
+
|
|
8
|
+
test.each`
|
|
9
|
+
seniority | expectedNotice
|
|
10
|
+
${1} | ${0}
|
|
11
|
+
${6} | ${1}
|
|
12
|
+
${24} | ${2}
|
|
13
|
+
`(
|
|
14
|
+
"Pour un employé possédant $seniority mois d'ancienneté, son préavis de départ à la retraite devrait être $expectedNotice mois",
|
|
15
|
+
({ seniority, expectedNotice }) => {
|
|
16
|
+
const situation = engine.setSituation({
|
|
17
|
+
"contrat salarié . ancienneté": seniority,
|
|
18
|
+
"contrat salarié . convention collective": "'IDCC2941'",
|
|
19
|
+
"contrat salarié . mise à la retraite": "non",
|
|
20
|
+
"contrat salarié . travailleur handicapé": "non",
|
|
21
|
+
});
|
|
22
|
+
const result = situation.evaluate("contrat salarié . préavis de retraite");
|
|
23
|
+
|
|
24
|
+
expect(result.nodeValue).toEqual(expectedNotice);
|
|
25
|
+
expect(result.unit?.numerators).toEqual(["mois"]);
|
|
26
|
+
expect(result.missingVariables).toEqual({});
|
|
27
|
+
|
|
28
|
+
expect(getNotifications(situation)).toHaveLength(0);
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
test.each`
|
|
33
|
+
seniority | category | expectedNotice | expectedUnit | expectedNotif
|
|
34
|
+
${1} | ${"A, B, C ou D"} | ${7} | ${"jour"} | ${"1 semaine de date à date"}
|
|
35
|
+
${6} | ${"A, B, C ou D"} | ${1} | ${"mois"} | ${"1 mois de date à date"}
|
|
36
|
+
${25} | ${"A, B, C ou D"} | ${2} | ${"mois"} | ${"2 mois de date à date"}
|
|
37
|
+
${1} | ${"E ou F"} | ${1} | ${"mois"} | ${"1 mois de date à date"}
|
|
38
|
+
${6} | ${"E ou F"} | ${1} | ${"mois"} | ${"1 mois de date à date"}
|
|
39
|
+
${24} | ${"E ou F"} | ${2} | ${"mois"} | ${"2 mois de date à date"}
|
|
40
|
+
${25} | ${"E ou F"} | ${2} | ${"mois"} | ${"2 mois de date à date"}
|
|
41
|
+
${1} | ${"G, H ou I"} | ${2} | ${"mois"} | ${"2 mois de date à date"}
|
|
42
|
+
${6} | ${"G, H ou I"} | ${2} | ${"mois"} | ${"2 mois de date à date"}
|
|
43
|
+
${24} | ${"G, H ou I"} | ${4} | ${"mois"} | ${"4 mois de date à date"}
|
|
44
|
+
${25} | ${"G, H ou I"} | ${4} | ${"mois"} | ${"4 mois de date à date"}
|
|
45
|
+
`(
|
|
46
|
+
"Pour un employé de category $category possédant $seniority mois d'ancienneté, son préavis de mise à la retraite devrait être $expectedNotice mois",
|
|
47
|
+
({ seniority, category, expectedNotice, expectedUnit, expectedNotif }) => {
|
|
48
|
+
const situation = engine.setSituation({
|
|
49
|
+
"contrat salarié . ancienneté": seniority,
|
|
50
|
+
"contrat salarié . convention collective": "'IDCC2941'",
|
|
51
|
+
"contrat salarié . convention collective . bad . catégorie professionnelle": `'${category}'`,
|
|
52
|
+
"contrat salarié . mise à la retraite": "oui",
|
|
53
|
+
"contrat salarié . travailleur handicapé": "non",
|
|
54
|
+
});
|
|
55
|
+
const result = situation.evaluate("contrat salarié . préavis de retraite");
|
|
56
|
+
const notifications = getNotifications(situation);
|
|
57
|
+
|
|
58
|
+
expect(result.nodeValue).toEqual(expectedNotice);
|
|
59
|
+
expect(result.unit?.numerators).toEqual([expectedUnit]);
|
|
60
|
+
expect(result.missingVariables).toEqual({});
|
|
61
|
+
|
|
62
|
+
expect(notifications).toHaveLength(1);
|
|
63
|
+
expect(notifications[0].description).toBe(expectedNotif);
|
|
64
|
+
}
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
test("Pour un employé de category A, B, C ou D possédant 24 mois d'ancienneté, son préavis de mise à la retraite devrait être 2 mois mais il ne doit pas avoir de notif", () => {
|
|
68
|
+
const situation = engine.setSituation({
|
|
69
|
+
"contrat salarié . ancienneté": 24,
|
|
70
|
+
"contrat salarié . convention collective": "'IDCC2941'",
|
|
71
|
+
"contrat salarié . convention collective . bad . catégorie professionnelle":
|
|
72
|
+
"'A, B, C ou D'",
|
|
73
|
+
"contrat salarié . mise à la retraite": "oui",
|
|
74
|
+
"contrat salarié . travailleur handicapé": "non",
|
|
75
|
+
});
|
|
76
|
+
const result = situation.evaluate("contrat salarié . préavis de retraite");
|
|
77
|
+
const notifications = getNotifications(situation);
|
|
78
|
+
|
|
79
|
+
expect(result.nodeValue).toEqual(2);
|
|
80
|
+
expect(result.unit?.numerators).toEqual(["mois"]);
|
|
81
|
+
expect(result.missingVariables).toEqual({});
|
|
82
|
+
|
|
83
|
+
expect(notifications).toHaveLength(0);
|
|
84
|
+
});
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import Engine from "publicodes";
|
|
2
|
+
|
|
3
|
+
import { mergeModels } from "../../../internal/merger";
|
|
4
|
+
import { getReferences } from "../../../utils/GetReferences";
|
|
5
|
+
import {
|
|
6
|
+
DepartRetraiteReferences,
|
|
7
|
+
MiseRetraiteReferences,
|
|
8
|
+
} from "../../common/legal-references";
|
|
9
|
+
|
|
10
|
+
const engine = new Engine(mergeModels());
|
|
11
|
+
|
|
12
|
+
const MiseRetraiteReferencesBad = [
|
|
13
|
+
{
|
|
14
|
+
article: "Titre IV, article 26.1 et Titre IV, article 29",
|
|
15
|
+
url: "https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800",
|
|
16
|
+
},
|
|
17
|
+
].concat(MiseRetraiteReferences);
|
|
18
|
+
test("Vérification des références juridiques pour un employéen en depart à la retraite", () => {
|
|
19
|
+
const result = getReferences(
|
|
20
|
+
engine.setSituation({
|
|
21
|
+
"contrat salarié . ancienneté": 6,
|
|
22
|
+
"contrat salarié . convention collective": "'IDCC2941'",
|
|
23
|
+
"contrat salarié . convention collective . bad . catégorie professionnelle": `'A, B, C ou D'`,
|
|
24
|
+
"contrat salarié . mise à la retraite": "non",
|
|
25
|
+
"contrat salarié . travailleur handicapé": "non",
|
|
26
|
+
})
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
expect(result).toHaveLength(DepartRetraiteReferences.length);
|
|
30
|
+
expect(result).toEqual(expect.arrayContaining(DepartRetraiteReferences));
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
test.each`
|
|
34
|
+
category | expectedReferences
|
|
35
|
+
${"A, B, C ou D"} | ${MiseRetraiteReferencesBad}
|
|
36
|
+
${"E ou F"} | ${MiseRetraiteReferencesBad}
|
|
37
|
+
${"G, H ou I"} | ${MiseRetraiteReferencesBad}
|
|
38
|
+
`(
|
|
39
|
+
"Vérification des références juridiques pour un $category mise à la retraite",
|
|
40
|
+
({ category, expectedReferences }) => {
|
|
41
|
+
const result = getReferences(
|
|
42
|
+
engine.setSituation({
|
|
43
|
+
"contrat salarié . ancienneté": 6,
|
|
44
|
+
"contrat salarié . convention collective": "'IDCC2941'",
|
|
45
|
+
"contrat salarié . convention collective . bad . catégorie professionnelle": `'${category}'`,
|
|
46
|
+
"contrat salarié . mise à la retraite": "oui",
|
|
47
|
+
"contrat salarié . travailleur handicapé": "non",
|
|
48
|
+
})
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
expect(result).toHaveLength(expectedReferences.length);
|
|
52
|
+
expect(result).toEqual(expect.arrayContaining(expectedReferences));
|
|
53
|
+
}
|
|
54
|
+
);
|
|
@@ -4,4 +4,144 @@ contrat salarié . convention collective . bad:
|
|
|
4
4
|
valeur: oui
|
|
5
5
|
cdtn:
|
|
6
6
|
idcc: 2941
|
|
7
|
-
préavis-retraite:
|
|
7
|
+
préavis-retraite: true
|
|
8
|
+
|
|
9
|
+
contrat salarié . convention collective . bad . catégorie professionnelle:
|
|
10
|
+
applicable si: mise à la retraite
|
|
11
|
+
titre: Catégorie professionnelle
|
|
12
|
+
question: Quelle est la catégorie professionnelle du salarié ?
|
|
13
|
+
description: La catégorie professionnelle du salarié est habituellement mentionnée sur le <strong>bulletin de salaire</strong>.
|
|
14
|
+
cdtn:
|
|
15
|
+
type: liste
|
|
16
|
+
valeurs:
|
|
17
|
+
A, B, C ou D: "'A, B, C ou D'"
|
|
18
|
+
E ou F: "'E ou F'"
|
|
19
|
+
G, H ou I: "'G, H ou I'"
|
|
20
|
+
|
|
21
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D:
|
|
22
|
+
applicable si: catégorie professionnelle = 'A, B, C ou D'
|
|
23
|
+
valeur: oui
|
|
24
|
+
|
|
25
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . six mois:
|
|
26
|
+
applicable si: ancienneté < 6 mois
|
|
27
|
+
valeur: oui
|
|
28
|
+
|
|
29
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . six mois . préavis de retaite:
|
|
30
|
+
applicable si: mise à la retraite
|
|
31
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
32
|
+
valeur: 7 jour
|
|
33
|
+
références:
|
|
34
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
35
|
+
|
|
36
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . six mois . préavis de retaite . notification:
|
|
37
|
+
type: notification
|
|
38
|
+
description: "1 semaine de date à date"
|
|
39
|
+
valeur: oui
|
|
40
|
+
|
|
41
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . moins de deux ans:
|
|
42
|
+
applicable si:
|
|
43
|
+
toutes ces conditions:
|
|
44
|
+
- ancienneté >= 6 mois
|
|
45
|
+
- ancienneté <= 24 mois
|
|
46
|
+
valeur: oui
|
|
47
|
+
|
|
48
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . moins de deux ans . préavis de retaite:
|
|
49
|
+
applicable si: mise à la retraite
|
|
50
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
51
|
+
valeur: 1 mois
|
|
52
|
+
références:
|
|
53
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
54
|
+
|
|
55
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . moins de deux ans . préavis de retaite . notification:
|
|
56
|
+
type: notification
|
|
57
|
+
applicable si: contrat salarié . préavis de retraite = contrat salarié . préavis de retraite collective
|
|
58
|
+
description: "1 mois de date à date"
|
|
59
|
+
valeur: oui
|
|
60
|
+
|
|
61
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . plus de deux ans:
|
|
62
|
+
applicable si: ancienneté >= 25 mois
|
|
63
|
+
valeur: oui
|
|
64
|
+
|
|
65
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . plus de deux ans . préavis de retaite:
|
|
66
|
+
applicable si: mise à la retraite
|
|
67
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
68
|
+
valeur: 2 mois
|
|
69
|
+
références:
|
|
70
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
71
|
+
|
|
72
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . A B C ou D . plus de deux ans . préavis de retaite . notification:
|
|
73
|
+
type: notification
|
|
74
|
+
description: "2 mois de date à date"
|
|
75
|
+
valeur: oui
|
|
76
|
+
|
|
77
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F:
|
|
78
|
+
applicable si: catégorie professionnelle = 'E ou F'
|
|
79
|
+
valeur: oui
|
|
80
|
+
|
|
81
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F . moins de deux ans:
|
|
82
|
+
applicable si: ancienneté < 24 mois
|
|
83
|
+
valeur: oui
|
|
84
|
+
|
|
85
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F . moins de deux ans . préavis de retaite:
|
|
86
|
+
applicable si: mise à la retraite
|
|
87
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
88
|
+
valeur: 1 mois
|
|
89
|
+
références:
|
|
90
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
91
|
+
|
|
92
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F . moins de deux ans . préavis de retaite . notification:
|
|
93
|
+
type: notification
|
|
94
|
+
description: "1 mois de date à date"
|
|
95
|
+
valeur: oui
|
|
96
|
+
|
|
97
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F . plus de deux ans:
|
|
98
|
+
applicable si: ancienneté >= 24 mois
|
|
99
|
+
valeur: oui
|
|
100
|
+
|
|
101
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F . plus de deux ans . préavis de retaite:
|
|
102
|
+
applicable si: mise à la retraite
|
|
103
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
104
|
+
valeur: 2 mois
|
|
105
|
+
références:
|
|
106
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
107
|
+
|
|
108
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . E ou F . plus de deux ans . préavis de retaite . notification:
|
|
109
|
+
type: notification
|
|
110
|
+
description: "2 mois de date à date"
|
|
111
|
+
valeur: oui
|
|
112
|
+
|
|
113
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I:
|
|
114
|
+
applicable si: catégorie professionnelle = 'G, H ou I'
|
|
115
|
+
valeur: oui
|
|
116
|
+
|
|
117
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I . moins de deux ans:
|
|
118
|
+
applicable si: ancienneté < 24 mois
|
|
119
|
+
valeur: oui
|
|
120
|
+
|
|
121
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I . moins de deux ans . préavis de retaite:
|
|
122
|
+
applicable si: mise à la retraite
|
|
123
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
124
|
+
valeur: 2 mois
|
|
125
|
+
références:
|
|
126
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
127
|
+
|
|
128
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I . moins de deux ans . préavis de retaite . notification:
|
|
129
|
+
type: notification
|
|
130
|
+
description: "2 mois de date à date"
|
|
131
|
+
valeur: oui
|
|
132
|
+
|
|
133
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I . plus de deux ans:
|
|
134
|
+
applicable si: ancienneté >= 24 mois
|
|
135
|
+
valeur: oui
|
|
136
|
+
|
|
137
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I . plus de deux ans . préavis de retaite:
|
|
138
|
+
applicable si: mise à la retraite
|
|
139
|
+
remplace: contrat salarié . préavis de retraite collective
|
|
140
|
+
valeur: 4 mois
|
|
141
|
+
références:
|
|
142
|
+
Titre IV, article 26.1 et Titre IV, article 29: https://www.legifrance.gouv.fr/conv_coll/id/KALIARTI000025805633/?idConteneur=KALICONT000025805800
|
|
143
|
+
|
|
144
|
+
contrat salarié . convention collective . bad . catégorie professionnelle . G H ou I . plus de deux ans . préavis de retaite . notification:
|
|
145
|
+
type: notification
|
|
146
|
+
description: "4 mois de date à date"
|
|
147
|
+
valeur: oui
|