@silexpert/core 1.2.70 → 1.2.72

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.
Files changed (131) hide show
  1. package/dist/cjs/api/resources/ExercicePrestation.d.ts +7 -1
  2. package/dist/cjs/api/resources/ExercicePrestation.d.ts.map +1 -1
  3. package/dist/cjs/api/resources/ExercicePrestation.js +8 -0
  4. package/dist/cjs/api/resources/ExercicePrestation.js.map +1 -1
  5. package/dist/cjs/types/Enum/BalanceSheet.d.ts +3 -3
  6. package/dist/cjs/types/Enum/BalanceSheet.js +3 -3
  7. package/dist/cjs/types/Enum/BalanceSheet.js.map +1 -1
  8. package/dist/cjs/types/Enum/BrandClementine.d.ts.map +1 -1
  9. package/dist/cjs/types/Enum/BrandClementine.js +2 -0
  10. package/dist/cjs/types/Enum/BrandClementine.js.map +1 -1
  11. package/dist/cjs/types/Enum/CommercialManagement.d.ts +1 -0
  12. package/dist/cjs/types/Enum/CommercialManagement.d.ts.map +1 -1
  13. package/dist/cjs/types/Enum/CommercialManagement.js +5 -0
  14. package/dist/cjs/types/Enum/CommercialManagement.js.map +1 -1
  15. package/dist/cjs/types/Enum/InternalService.d.ts +1 -5
  16. package/dist/cjs/types/Enum/InternalService.d.ts.map +1 -1
  17. package/dist/cjs/types/Enum/InternalService.js +7 -7
  18. package/dist/cjs/types/Enum/InternalService.js.map +1 -1
  19. package/dist/cjs/types/Enum/JobTitle.d.ts +1 -1
  20. package/dist/cjs/types/Enum/JobTitle.d.ts.map +1 -1
  21. package/dist/cjs/types/Enum/JobTitle.js +2 -2
  22. package/dist/cjs/types/Enum/JobTitle.js.map +1 -1
  23. package/dist/cjs/types/Enum/Role.d.ts +1 -2
  24. package/dist/cjs/types/Enum/Role.d.ts.map +1 -1
  25. package/dist/cjs/types/Enum/Role.js +3 -4
  26. package/dist/cjs/types/Enum/Role.js.map +1 -1
  27. package/dist/cjs/types/Enum/RoleDetail.d.ts +1 -11
  28. package/dist/cjs/types/Enum/RoleDetail.d.ts.map +1 -1
  29. package/dist/cjs/types/Enum/RoleDetail.js +13 -13
  30. package/dist/cjs/types/Enum/RoleDetail.js.map +1 -1
  31. package/dist/cjs/types/Enum/TaskResponseType.js +4 -4
  32. package/dist/cjs/types/Enum/TaskResponseType.js.map +1 -1
  33. package/dist/cjs/types/Enum/TimeCounterType.js +6 -6
  34. package/dist/cjs/types/Enum/TimeCounterType.js.map +1 -1
  35. package/dist/cjs/types/Enum/TimeSlot.js +1 -1
  36. package/dist/cjs/types/Enum/TimeSlot.js.map +1 -1
  37. package/dist/cjs/types/Interface/api/exercicePrestation/Query.d.ts +6 -0
  38. package/dist/cjs/types/Interface/api/exercicePrestation/Query.d.ts.map +1 -1
  39. package/dist/cjs/types/Interface/api/exercicePrestation/Query.js +28 -1
  40. package/dist/cjs/types/Interface/api/exercicePrestation/Query.js.map +1 -1
  41. package/dist/cjs/utils/brands.d.ts +2 -0
  42. package/dist/cjs/utils/brands.d.ts.map +1 -1
  43. package/dist/cjs/utils/brands.js.map +1 -1
  44. package/dist/cjs/utils/commercialManagement/templates/common.js +1 -1
  45. package/dist/cjs/utils/commercialManagement/templates/common.js.map +1 -1
  46. package/dist/cjs/utils/email.d.ts.map +1 -1
  47. package/dist/cjs/utils/email.js +25 -11
  48. package/dist/cjs/utils/email.js.map +1 -1
  49. package/dist/cjs/utils/task.d.ts.map +1 -1
  50. package/dist/cjs/utils/task.js +3 -7
  51. package/dist/cjs/utils/task.js.map +1 -1
  52. package/dist/cjs/utils/vat/centuries.js +1 -1
  53. package/dist/cjs/utils/vat/centuries.js.map +1 -1
  54. package/dist/cjs/utils/webmail.d.ts.map +1 -1
  55. package/dist/cjs/utils/webmail.js +3 -7
  56. package/dist/cjs/utils/webmail.js.map +1 -1
  57. package/dist/mjs/api/resources/ExercicePrestation.d.ts +7 -1
  58. package/dist/mjs/api/resources/ExercicePrestation.d.ts.map +1 -1
  59. package/dist/mjs/api/resources/ExercicePrestation.js +8 -0
  60. package/dist/mjs/api/resources/ExercicePrestation.js.map +1 -1
  61. package/dist/mjs/types/Enum/BalanceSheet.d.ts +3 -3
  62. package/dist/mjs/types/Enum/BalanceSheet.js +3 -3
  63. package/dist/mjs/types/Enum/BalanceSheet.js.map +1 -1
  64. package/dist/mjs/types/Enum/BrandClementine.d.ts.map +1 -1
  65. package/dist/mjs/types/Enum/BrandClementine.js +2 -0
  66. package/dist/mjs/types/Enum/BrandClementine.js.map +1 -1
  67. package/dist/mjs/types/Enum/CommercialManagement.d.ts +1 -0
  68. package/dist/mjs/types/Enum/CommercialManagement.d.ts.map +1 -1
  69. package/dist/mjs/types/Enum/CommercialManagement.js +5 -0
  70. package/dist/mjs/types/Enum/CommercialManagement.js.map +1 -1
  71. package/dist/mjs/types/Enum/InternalService.d.ts +1 -5
  72. package/dist/mjs/types/Enum/InternalService.d.ts.map +1 -1
  73. package/dist/mjs/types/Enum/InternalService.js +7 -7
  74. package/dist/mjs/types/Enum/InternalService.js.map +1 -1
  75. package/dist/mjs/types/Enum/JobTitle.d.ts +1 -1
  76. package/dist/mjs/types/Enum/JobTitle.d.ts.map +1 -1
  77. package/dist/mjs/types/Enum/JobTitle.js +2 -2
  78. package/dist/mjs/types/Enum/JobTitle.js.map +1 -1
  79. package/dist/mjs/types/Enum/Role.d.ts +1 -2
  80. package/dist/mjs/types/Enum/Role.d.ts.map +1 -1
  81. package/dist/mjs/types/Enum/Role.js +3 -4
  82. package/dist/mjs/types/Enum/Role.js.map +1 -1
  83. package/dist/mjs/types/Enum/RoleDetail.d.ts +1 -11
  84. package/dist/mjs/types/Enum/RoleDetail.d.ts.map +1 -1
  85. package/dist/mjs/types/Enum/RoleDetail.js +13 -13
  86. package/dist/mjs/types/Enum/RoleDetail.js.map +1 -1
  87. package/dist/mjs/types/Enum/TaskResponseType.js +4 -4
  88. package/dist/mjs/types/Enum/TaskResponseType.js.map +1 -1
  89. package/dist/mjs/types/Enum/TimeCounterType.js +6 -6
  90. package/dist/mjs/types/Enum/TimeCounterType.js.map +1 -1
  91. package/dist/mjs/types/Enum/TimeSlot.js +1 -1
  92. package/dist/mjs/types/Enum/TimeSlot.js.map +1 -1
  93. package/dist/mjs/types/Interface/api/exercicePrestation/Query.d.ts +6 -0
  94. package/dist/mjs/types/Interface/api/exercicePrestation/Query.d.ts.map +1 -1
  95. package/dist/mjs/types/Interface/api/exercicePrestation/Query.js +31 -1
  96. package/dist/mjs/types/Interface/api/exercicePrestation/Query.js.map +1 -1
  97. package/dist/mjs/utils/brands.d.ts +2 -0
  98. package/dist/mjs/utils/brands.d.ts.map +1 -1
  99. package/dist/mjs/utils/brands.js.map +1 -1
  100. package/dist/mjs/utils/commercialManagement/templates/common.js +1 -1
  101. package/dist/mjs/utils/commercialManagement/templates/common.js.map +1 -1
  102. package/dist/mjs/utils/email.d.ts.map +1 -1
  103. package/dist/mjs/utils/email.js +31 -11
  104. package/dist/mjs/utils/email.js.map +1 -1
  105. package/dist/mjs/utils/task.d.ts.map +1 -1
  106. package/dist/mjs/utils/task.js +3 -7
  107. package/dist/mjs/utils/task.js.map +1 -1
  108. package/dist/mjs/utils/vat/centuries.js +1 -1
  109. package/dist/mjs/utils/vat/centuries.js.map +1 -1
  110. package/dist/mjs/utils/webmail.d.ts.map +1 -1
  111. package/dist/mjs/utils/webmail.js +3 -7
  112. package/dist/mjs/utils/webmail.js.map +1 -1
  113. package/package.json +1 -1
  114. package/ts/api/resources/ExercicePrestation.ts +10 -1
  115. package/ts/types/Enum/BalanceSheet.ts +3 -3
  116. package/ts/types/Enum/BrandClementine.ts +2 -0
  117. package/ts/types/Enum/CommercialManagement.ts +6 -1
  118. package/ts/types/Enum/InternalService.ts +7 -7
  119. package/ts/types/Enum/JobTitle.ts +2 -2
  120. package/ts/types/Enum/Role.ts +3 -4
  121. package/ts/types/Enum/RoleDetail.ts +13 -13
  122. package/ts/types/Enum/TaskResponseType.ts +4 -4
  123. package/ts/types/Enum/TimeCounterType.ts +6 -6
  124. package/ts/types/Enum/TimeSlot.ts +1 -1
  125. package/ts/types/Interface/api/exercicePrestation/Query.ts +23 -1
  126. package/ts/utils/brands.ts +2 -0
  127. package/ts/utils/commercialManagement/templates/common.ts +1 -1
  128. package/ts/utils/email.ts +29 -12
  129. package/ts/utils/task.ts +3 -6
  130. package/ts/utils/vat/centuries.ts +1 -1
  131. package/ts/utils/webmail.ts +3 -6
@@ -1,4 +1,4 @@
1
- import { IsArray, IsObject } from 'class-validator';
1
+ import { IsArray, IsInt, IsObject, IsOptional } from 'class-validator';
2
2
  import { ApiProperty, ApiPropertyOptional } from '../../../../utils';
3
3
  import { ICommercialOffer } from '../../models/ICommercialOffer';
4
4
  import { IExercicePrestation } from '../../models/IExercicePrestation';
@@ -12,3 +12,25 @@ export class QueryCreateExercicePrestation {
12
12
  @IsArray()
13
13
  commercialOffers: ICommercialOffer[];
14
14
  }
15
+
16
+ export class QueryGetExercicePrestation {
17
+ @ApiPropertyOptional()
18
+ @IsOptional()
19
+ @IsInt()
20
+ id?: number;
21
+
22
+ @ApiPropertyOptional()
23
+ @IsOptional()
24
+ @IsInt()
25
+ idBalanceSheet?: number;
26
+
27
+ @ApiPropertyOptional()
28
+ @IsOptional()
29
+ @IsInt()
30
+ idExercice?: number;
31
+
32
+ @ApiPropertyOptional()
33
+ @IsOptional()
34
+ @IsInt()
35
+ idPrestation?: number;
36
+ }
@@ -43,7 +43,9 @@ export type Brand = {
43
43
  noreply?: string;
44
44
  qualite?: string;
45
45
  paiement?: string;
46
+ resiliation?: string;
46
47
  rh?: string;
48
+ satisfaction?: string;
47
49
  social?: string;
48
50
  support?: string;
49
51
  tva?: string;
@@ -9,7 +9,7 @@ export class CommercialDocumentCommonHTML {
9
9
  <% } %>`;
10
10
 
11
11
  footer = `<div style="font-size: 8px !important; color: #838384; text-align: center; padding: 0 40px; display: block; width: 100%;">
12
- <% if (freeText) { %><%- freeText %><br/><br/><% } %><% if (accountingCategoryFormatted) {%><%= accountingCategoryFormatted %> | <%}%><% if(marginVats.length > 0) { %><%= languageTemplate.template.common.footer.marginVat %> - <% marginVats.forEach(function(v, index) { %><%= v %> - <% }) %><%= languageTemplate.template.common.footer.legalVatMention %> | <% } %><% if(penalties || compensation || discount) { %><%= penalties ? languageTemplate.template.common.footer.penalties + ' : ' + penalties : ''%><%= penalties && compensation ? ' | ' : ''%><%= compensation ? languageTemplate.template.common.footer.recoveryCosts + ' : ' + compensation + ' ' : '' %><%= (compensation || penalties) && discount ? ' | ' : '' %><%= discount ? discount + ' ' : '' %><%= shouldPayTaxAfterDebit ? "| " + languageTemplate.template.common.footer.shouldPayTaxAfterDebit : '' %><% if(name || legalForm || capital || siren || rcs) {%><br/><br/><% } %><% } %><%= name %><%= name && (legalForm || capital || siren || rcs) ? ', ' : ''%><%= legalForm %><%= capital ? ' ' + languageTemplate.template.common.footer.capital + ' ' + capitalFormatted + ' €' : '' %><%= siren ? ' ' + languageTemplate.template.common.footer.siren + ' ' + siren : ''%><%= rcs ? '| RCS ' + rcs : ''%><% if (vatCode || nafCode) {%><br/><% } %><%= vatCode ? languageTemplate.template.common.footer.vatCode + ' ' +vatCode : ''%><% if(vatCode && nafCode){%>|<%}%><%= nafCode ? 'APE '+nafCode : '' %>
12
+ <% if (freeText) { %><%- freeText %><br/><br/><% } %><% if (accountingCategoryFormatted) {%><%= accountingCategoryFormatted %> | <%}%><% if(marginVats.length > 0) { %><%= languageTemplate.template.common.footer.marginVat %> - <% marginVats.forEach(function(v, index) { %><%= v %> - <% }) %><%= languageTemplate.template.common.footer.legalVatMention %> | <% } %><% if(penalties || compensation || discount) { %><%= penalties ? languageTemplate.template.common.footer.penalties + ' : ' + penalties : ''%><%= penalties && compensation ? ' | ' : ''%><%= compensation ? languageTemplate.template.common.footer.recoveryCosts + ' : ' + compensation + ' ' : '' %><%= (compensation || penalties) && discount ? ' | ' : '' %><%= discount ? languageTemplate.template.common.footer.discount + ' : ' + discount : '' %><%= shouldPayTaxAfterDebit ? "| " + languageTemplate.template.common.footer.shouldPayTaxAfterDebit : '' %><% if(name || legalForm || capital || siren || rcs) {%><br/><br/><% } %><% } %><%= name %><%= name && (legalForm || capital || siren || rcs) ? ', ' : ''%><%= legalForm %><%= capital ? ' ' + languageTemplate.template.common.footer.capital + ' ' + capitalFormatted + ' €' : '' %><%= siren ? ' ' + languageTemplate.template.common.footer.siren + ' ' + siren : ''%><%= rcs ? '| RCS ' + rcs : ''%><% if (vatCode || nafCode) {%><br/><% } %><%= vatCode ? languageTemplate.template.common.footer.vatCode + ' ' +vatCode : ''%><% if(vatCode && nafCode){%>|<%}%><%= nafCode ? 'APE '+nafCode : '' %>
13
13
  <% if (["Clementine", "Pourcentage", "Comptalib"].includes(brandName) && !shouldHideBrandName) { %>
14
14
  <div style="display: grid; place-items: center;"><div style="background-color: <%= brandColors.primary50 %>; color: <%= brandColors.primary500 %>; display: flex; gap: 3px; max-width: fit-content; border-radius: 4px; padding: 4px 8px; margin-top: 8px; align-items: center; font-size: 9px; line-height: 140%; font-family: 'circular std', sans serif; font-weight: 450;">
15
15
  <%= languageTemplate.template.common.footer.generate %>
package/ts/utils/email.ts CHANGED
@@ -34,9 +34,7 @@ function getRoleSignature(user: any) {
34
34
  // eslint-disable-next-line @typescript-eslint/no-unsafe-return
35
35
  const isOnBoarder = user.roles.map((r: any) => r.id).includes(Role.ON_BOARDER);
36
36
  // eslint-disable-next-line @typescript-eslint/no-unsafe-return
37
- const isTermination = user.roles.map((r: any) => r.id).includes(Role.TERMINATION);
38
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
39
- const isLitige = user.roles.map((r: any) => r.id).includes(Role.LITIGE);
37
+ const isSatisfaction = user.roles.map((r: any) => r.id).includes(Role.SATISFACTION);
40
38
  // eslint-disable-next-line @typescript-eslint/no-unsafe-return
41
39
  const isDataOfficer = user.roles.map((r: any) => r.id).includes(Role.DATA_OFFICER);
42
40
  // eslint-disable-next-line @typescript-eslint/no-unsafe-return
@@ -77,20 +75,13 @@ function getRoleSignature(user: any) {
77
75
  return `Chargé${user.idCivility === 2 ? 'e' : ''} accueil clients`;
78
76
  }
79
77
 
80
- if (isTermination && isManager) {
78
+ if (isSatisfaction && isManager) {
81
79
  return `Responsable chargé${user.idCivility === 2 ? 'e' : ''} de la satisfaction clients`;
82
80
  }
83
- if (isTermination) {
81
+ if (isSatisfaction) {
84
82
  return `Chargé${user.idCivility === 2 ? 'e' : ''} de la satisfaction clients`;
85
83
  }
86
84
 
87
- if (isLitige && isManager) {
88
- return `Responsable chargé${user.idCivility === 2 ? 'e' : ''} de la satisfaction clients (Litige)`;
89
- }
90
- if (isLitige) {
91
- return `Chargé${user.idCivility === 2 ? 'e' : ''} de la satisfaction clients (Litige)`;
92
- }
93
-
94
85
  if (isDataOfficer && isManager) {
95
86
  return 'Responsable aide comptable';
96
87
  }
@@ -275,6 +266,14 @@ export function generateSignature(params: any): string {
275
266
  ...(idTypeBrand ? { idTypeBrand } : {}),
276
267
  objectWaited: 'listMails.gestion',
277
268
  }) as unknown as string;
269
+ const satisfactionMail = getBrandConfig({
270
+ ...(idTypeBrand ? { idTypeBrand } : {}),
271
+ objectWaited: 'listMails.satisfaction',
272
+ }) as unknown as string;
273
+ const resiliationMail = getBrandConfig({
274
+ ...(idTypeBrand ? { idTypeBrand } : {}),
275
+ objectWaited: 'listMails.resiliation',
276
+ }) as unknown as string;
278
277
  const supportMail = getBrandConfig({
279
278
  ...(idTypeBrand ? { idTypeBrand } : {}),
280
279
  objectWaited: 'listMails.support',
@@ -338,6 +337,24 @@ export function generateSignature(params: any): string {
338
337
  };
339
338
  mailSignature = bonjourMail;
340
339
  roleSignature = '';
340
+ } else if (forceRole === 'satisfaction') {
341
+ // Signature satisfaction
342
+ user = {
343
+ firstname: 'Service satisfaction clients',
344
+ isAll: true,
345
+ };
346
+ mailSignature = satisfactionMail;
347
+ roleSignature = '';
348
+ phoneSignature = standardPhoneSignature;
349
+ } else if (forceRole === 'resiliation') {
350
+ // Signature resiliation
351
+ user = {
352
+ firstname: 'Service satisfaction clients',
353
+ isAll: true,
354
+ };
355
+ mailSignature = resiliationMail;
356
+ roleSignature = '';
357
+ phoneSignature = standardPhoneSignature;
341
358
  } else if (forceRole === 'social') {
342
359
  // Signature social
343
360
  user = {
package/ts/utils/task.ts CHANGED
@@ -23,10 +23,8 @@ const getIdRoleUsedForTask = (listRoles: Role[]): Role => {
23
23
  idRole = Role.TECHNICAL_ADVISOR;
24
24
  } else if (listRoles.includes(Role.ON_BOARDER)) {
25
25
  idRole = Role.ON_BOARDER;
26
- } else if (listRoles.includes(Role.TERMINATION)) {
27
- idRole = Role.TERMINATION;
28
- } else if (listRoles.includes(Role.LITIGE)) {
29
- idRole = Role.LITIGE;
26
+ } else if (listRoles.includes(Role.SATISFACTION)) {
27
+ idRole = Role.SATISFACTION;
30
28
  } else if (listRoles.includes(Role.FRONT_OFFICE)) {
31
29
  idRole = Role.FRONT_OFFICE;
32
30
  } else if (listRoles.includes(Role.DATA_OFFICER)) {
@@ -66,8 +64,7 @@ const getListIdRolesUsedForTask = (listRoles: Role[]): Role[] => {
66
64
  Role.CUSTOMER_SUCCESS,
67
65
  Role.TECHNICAL_ADVISOR,
68
66
  Role.ON_BOARDER,
69
- Role.TERMINATION,
70
- Role.LITIGE,
67
+ Role.SATISFACTION,
71
68
  Role.FRONT_OFFICE,
72
69
  Role.DATA_OFFICER,
73
70
  ].includes(r));
@@ -75,7 +75,7 @@ const vatDocuments: VatDocument[] = [
75
75
  fileName: '3310-2024',
76
76
  annex: {
77
77
  name: '3519',
78
- century: '24',
78
+ century: dayjs().month() === 0 ? dayjs().subtract(1, 'month').format('YY') : dayjs().format('YY'),
79
79
  shouldInclude: (data: Cerfa3310_2023) => Boolean(data.credit?.refundAsked && data.credit.refundAsked > 0),
80
80
  payload: (amount: number, payload: PayloadCerfa3519_2017) => getCerfa3519Century17Payload(amount, payload),
81
81
  asponePayload: (data: Cerfa3519_2017) => getCerfa3519Century23RegistrationFields(data),
@@ -24,10 +24,8 @@ const getIdRoleUsedForEmail = (listRoles: number[]): Role => {
24
24
  idRole = Role.SOCIAL;
25
25
  } else if (listRoles.includes(Role.ON_BOARDER)) {
26
26
  idRole = Role.ON_BOARDER;
27
- } else if (listRoles.includes(Role.TERMINATION)) {
28
- idRole = Role.TERMINATION;
29
- } else if (listRoles.includes(Role.LITIGE)) {
30
- idRole = Role.LITIGE;
27
+ } else if (listRoles.includes(Role.SATISFACTION)) {
28
+ idRole = Role.SATISFACTION;
31
29
  }
32
30
  return idRole;
33
31
  };
@@ -46,8 +44,7 @@ const getListIdRolesUsedForEmail = (listRoles: number[]): Role[] => {
46
44
  Role.JURIDIC,
47
45
  Role.SOCIAL,
48
46
  Role.ON_BOARDER,
49
- Role.TERMINATION,
50
- Role.LITIGE
47
+ Role.SATISFACTION
51
48
  ].includes(r));
52
49
  return listIdRoles;
53
50
  };