@silexpert/core 2.0.74 → 2.0.76
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/dist/types/Enum/ConnectorTracking.d.ts +2 -1
- package/dist/types/Enum/ConnectorTracking.d.ts.map +1 -1
- package/dist/types/Enum/ConnectorTracking.js +1 -0
- package/dist/types/Enum/ConnectorTracking.js.map +1 -1
- package/dist/types/Enum/EInvoicingStatusCode.d.ts +6 -1
- package/dist/types/Enum/EInvoicingStatusCode.d.ts.map +1 -1
- package/dist/types/Enum/EInvoicingStatusCode.js +85 -15
- package/dist/types/Enum/EInvoicingStatusCode.js.map +1 -1
- package/dist/types/Interface/api/commercialManagement/Read.d.ts +2 -1
- package/dist/types/Interface/api/commercialManagement/Read.d.ts.map +1 -1
- package/dist/types/Interface/api/commercialManagement/Read.js.map +1 -1
- package/dist/types/Interface/api/docoon/DocoonInvoice.d.ts +2 -1
- package/dist/types/Interface/api/docoon/DocoonInvoice.d.ts.map +1 -1
- package/dist/types/Interface/api/docoon/DocoonInvoice.js.map +1 -1
- package/dist/types/Interface/models/IAccountingFile.d.ts +1 -0
- package/dist/types/Interface/models/IAccountingFile.d.ts.map +1 -1
- package/dist/types/Interface/models/IAccountingFile.js +1 -0
- package/dist/types/Interface/models/IAccountingFile.js.map +1 -1
- package/dist/utils/commercialManagement/document.js +4 -4
- package/dist/utils/commercialManagement/document.js.map +1 -1
- package/package.json +1 -1
- package/ts/types/Enum/ConnectorTracking.ts +1 -0
- package/ts/types/Enum/EInvoicingStatusCode.ts +88 -15
- package/ts/types/Interface/api/commercialManagement/Read.ts +2 -1
- package/ts/types/Interface/api/docoon/DocoonInvoice.ts +2 -1
- package/ts/types/Interface/models/IAccountingFile.ts +1 -0
- package/ts/utils/commercialManagement/document.ts +4 -4
|
@@ -4,6 +4,7 @@ export declare enum ConnectorTrackingType {
|
|
|
4
4
|
DOCOON_DIRECTORY = "DOCOON_DIRECTORY",
|
|
5
5
|
E_INVOICING_RECEPTION = "E_INVOICING_RECEPTION",
|
|
6
6
|
E_INVOICING_EMISSION = "E_INVOICING_EMISSION",
|
|
7
|
-
E_INVOICING_INTERNAL_EMISSION = "E_INVOICING_INTERNAL_EMISSION"
|
|
7
|
+
E_INVOICING_INTERNAL_EMISSION = "E_INVOICING_INTERNAL_EMISSION",
|
|
8
|
+
E_INVOICING_STATUS = "E_INVOICING_STATUS"
|
|
8
9
|
}
|
|
9
10
|
//# sourceMappingURL=ConnectorTracking.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectorTracking.d.ts","sourceRoot":"","sources":["../../../ts/types/Enum/ConnectorTracking.ts"],"names":[],"mappings":"AAAA,oBAAY,qBAAqB;IAC/B,GAAG,QAAQ;IACX,sBAAsB,2BAA2B;IACjD,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,oBAAoB,yBAAyB;IAC7C,6BAA6B,kCAAkC;
|
|
1
|
+
{"version":3,"file":"ConnectorTracking.d.ts","sourceRoot":"","sources":["../../../ts/types/Enum/ConnectorTracking.ts"],"names":[],"mappings":"AAAA,oBAAY,qBAAqB;IAC/B,GAAG,QAAQ;IACX,sBAAsB,2BAA2B;IACjD,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,oBAAoB,yBAAyB;IAC7C,6BAA6B,kCAAkC;IAC/D,kBAAkB,uBAAuB;CAC1C"}
|
|
@@ -6,5 +6,6 @@ export var ConnectorTrackingType;
|
|
|
6
6
|
ConnectorTrackingType["E_INVOICING_RECEPTION"] = "E_INVOICING_RECEPTION";
|
|
7
7
|
ConnectorTrackingType["E_INVOICING_EMISSION"] = "E_INVOICING_EMISSION";
|
|
8
8
|
ConnectorTrackingType["E_INVOICING_INTERNAL_EMISSION"] = "E_INVOICING_INTERNAL_EMISSION";
|
|
9
|
+
ConnectorTrackingType["E_INVOICING_STATUS"] = "E_INVOICING_STATUS";
|
|
9
10
|
})(ConnectorTrackingType || (ConnectorTrackingType = {}));
|
|
10
11
|
//# sourceMappingURL=ConnectorTracking.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectorTracking.js","sourceRoot":"","sources":["../../../ts/types/Enum/ConnectorTracking.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"ConnectorTracking.js","sourceRoot":"","sources":["../../../ts/types/Enum/ConnectorTracking.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,oCAAW,CAAA;IACX,0EAAiD,CAAA;IACjD,8DAAqC,CAAA;IACrC,wEAA+C,CAAA;IAC/C,sEAA6C,CAAA;IAC7C,wFAA+D,CAAA;IAC/D,kEAAyC,CAAA;AAC3C,CAAC,EARW,qBAAqB,KAArB,qBAAqB,QAQhC","sourcesContent":["export enum ConnectorTrackingType {\n ACD = 'ACD',\n DOCOON_MANDATE_PROCESS = 'DOCOON_MANDATE_PROCESS',\n DOCOON_DIRECTORY = 'DOCOON_DIRECTORY',\n E_INVOICING_RECEPTION = 'E_INVOICING_RECEPTION',\n E_INVOICING_EMISSION = 'E_INVOICING_EMISSION',\n E_INVOICING_INTERNAL_EMISSION = 'E_INVOICING_INTERNAL_EMISSION',\n E_INVOICING_STATUS = 'E_INVOICING_STATUS',\n}\n"]}
|
|
@@ -14,7 +14,12 @@ export declare enum EInvoicingStatusCode {
|
|
|
14
14
|
PAID = 13,// Encaissée
|
|
15
15
|
REJECTED = 14
|
|
16
16
|
}
|
|
17
|
-
export declare const
|
|
17
|
+
export declare const EInvoicingStatusCodeMetadata: Record<EInvoicingStatusCode, {
|
|
18
|
+
shortLabel: string;
|
|
19
|
+
label: string;
|
|
20
|
+
color: string;
|
|
21
|
+
description?: string;
|
|
22
|
+
}>;
|
|
18
23
|
export declare const EInvoicingStatusCodeDocoon: Record<EInvoicingStatusCode, number>;
|
|
19
24
|
export type EInvoicingFLowStatus = 'Refused' | 'Rejected' | 'InHand' | 'Approved' | 'PartiallyApproved' | 'Dispute' | 'Submited' | 'SentByPlatform' | 'ReceivedByPlatform' | 'Canceled' | 'Suspended' | 'Completed' | 'MadeAvailable' | 'Paid' | 'PaymentTransmitted';
|
|
20
25
|
export declare function eInvoicingFlowStatusToStatusCode(status: EInvoicingFLowStatus): EInvoicingStatusCode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EInvoicingStatusCode.d.ts","sourceRoot":"","sources":["../../../ts/types/Enum/EInvoicingStatusCode.ts"],"names":[],"mappings":"AAAA,oBAAY,oBAAoB;IAC9B,SAAS,IAAI,CAAE,UAAU;IACzB,MAAM,IAAI,CAAE,QAAQ;IACpB,QAAQ,IAAI,CAAE,QAAQ;IACtB,cAAc,IAAI,CAAE,qBAAqB;IACzC,OAAO,IAAI,CAAE,kBAAkB;IAC/B,QAAQ,IAAI,CAAE,YAAY;IAC1B,kBAAkB,IAAI,CAAE,wBAAwB;IAChD,UAAU,IAAI,CAAE,YAAY;IAC5B,SAAS,IAAI,CAAE,YAAY;IAC3B,SAAS,KAAK,CAAE,YAAY;IAC5B,OAAO,KAAK,CAAE,UAAU;IACxB,mBAAmB,KAAK,CAAE,oBAAoB;IAC9C,IAAI,KAAK,CAAE,YAAY;IACvB,QAAQ,KAAK;CACd;AAED,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"EInvoicingStatusCode.d.ts","sourceRoot":"","sources":["../../../ts/types/Enum/EInvoicingStatusCode.ts"],"names":[],"mappings":"AAAA,oBAAY,oBAAoB;IAC9B,SAAS,IAAI,CAAE,UAAU;IACzB,MAAM,IAAI,CAAE,QAAQ;IACpB,QAAQ,IAAI,CAAE,QAAQ;IACtB,cAAc,IAAI,CAAE,qBAAqB;IACzC,OAAO,IAAI,CAAE,kBAAkB;IAC/B,QAAQ,IAAI,CAAE,YAAY;IAC1B,kBAAkB,IAAI,CAAE,wBAAwB;IAChD,UAAU,IAAI,CAAE,YAAY;IAC5B,SAAS,IAAI,CAAE,YAAY;IAC3B,SAAS,KAAK,CAAE,YAAY;IAC5B,OAAO,KAAK,CAAE,UAAU;IACxB,mBAAmB,KAAK,CAAE,oBAAoB;IAC9C,IAAI,KAAK,CAAE,YAAY;IACvB,QAAQ,KAAK;CACd;AAED,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAC/C,oBAAoB,EACpB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAsF3E,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAe3E,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAC5B,SAAS,GACT,UAAU,GACV,QAAQ,GACR,UAAU,GACV,mBAAmB,GACnB,SAAS,GACT,UAAU,GACV,gBAAgB,GAChB,oBAAoB,GACpB,UAAU,GACV,WAAW,GACX,WAAW,GACX,eAAe,GACf,MAAM,GACN,oBAAoB,CAAC;AAEzB,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAiCnG"}
|
|
@@ -15,21 +15,91 @@ export var EInvoicingStatusCode;
|
|
|
15
15
|
EInvoicingStatusCode[EInvoicingStatusCode["PAID"] = 13] = "PAID";
|
|
16
16
|
EInvoicingStatusCode[EInvoicingStatusCode["REJECTED"] = 14] = "REJECTED";
|
|
17
17
|
})(EInvoicingStatusCode || (EInvoicingStatusCode = {}));
|
|
18
|
-
export const
|
|
19
|
-
[EInvoicingStatusCode.DEPOSITED]:
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
[EInvoicingStatusCode.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
[EInvoicingStatusCode.
|
|
32
|
-
|
|
18
|
+
export const EInvoicingStatusCodeMetadata = {
|
|
19
|
+
[EInvoicingStatusCode.DEPOSITED]: {
|
|
20
|
+
shortLabel: 'Déposée',
|
|
21
|
+
label: 'Déposée',
|
|
22
|
+
color: 'cerulean',
|
|
23
|
+
description: 'Facture déposée et contrôles techniques validés.',
|
|
24
|
+
},
|
|
25
|
+
[EInvoicingStatusCode.ISSUED]: {
|
|
26
|
+
shortLabel: 'Émise',
|
|
27
|
+
label: 'Émise par la plateforme',
|
|
28
|
+
color: 'success',
|
|
29
|
+
description: 'Facture transmise au réseau de facturation.',
|
|
30
|
+
},
|
|
31
|
+
[EInvoicingStatusCode.RECEIVED]: {
|
|
32
|
+
shortLabel: 'Reçue',
|
|
33
|
+
label: 'Reçue de la plateforme',
|
|
34
|
+
color: 'success',
|
|
35
|
+
description: 'Facture reçue par la plateforme du destinataire.',
|
|
36
|
+
},
|
|
37
|
+
[EInvoicingStatusCode.MADE_AVAILABLE]: {
|
|
38
|
+
shortLabel: 'Mise à disposition',
|
|
39
|
+
label: 'Mise à disposition',
|
|
40
|
+
color: 'fire',
|
|
41
|
+
description: 'Facture disponible pour le destinataire.',
|
|
42
|
+
},
|
|
43
|
+
[EInvoicingStatusCode.HANDLED]: {
|
|
44
|
+
shortLabel: 'Prise en charge',
|
|
45
|
+
label: 'Prise en charge',
|
|
46
|
+
color: 'fire',
|
|
47
|
+
description: 'Facture en cours de traitement par le destinataire.',
|
|
48
|
+
},
|
|
49
|
+
[EInvoicingStatusCode.APPROVED]: {
|
|
50
|
+
shortLabel: 'Approuvée',
|
|
51
|
+
label: 'Approuvée',
|
|
52
|
+
color: 'success',
|
|
53
|
+
description: 'Facture entièrement acceptée.',
|
|
54
|
+
},
|
|
55
|
+
[EInvoicingStatusCode.PARTIALLY_APPROVED]: {
|
|
56
|
+
shortLabel: 'Approbation partielle',
|
|
57
|
+
label: 'Approbation partielle',
|
|
58
|
+
color: 'error',
|
|
59
|
+
description: 'Facture partiellement acceptée.',
|
|
60
|
+
},
|
|
61
|
+
[EInvoicingStatusCode.IN_DISPUTE]: {
|
|
62
|
+
shortLabel: 'En litige',
|
|
63
|
+
label: 'En litige',
|
|
64
|
+
color: 'error',
|
|
65
|
+
description: 'Facture contestée par le destinataire.',
|
|
66
|
+
},
|
|
67
|
+
[EInvoicingStatusCode.SUSPENDED]: {
|
|
68
|
+
shortLabel: 'Suspendue',
|
|
69
|
+
label: 'Suspendue',
|
|
70
|
+
color: 'error',
|
|
71
|
+
description: 'Traitement suspendu, informations attendues.',
|
|
72
|
+
},
|
|
73
|
+
[EInvoicingStatusCode.COMPLETED]: {
|
|
74
|
+
shortLabel: 'Complétée',
|
|
75
|
+
label: 'Complétée',
|
|
76
|
+
color: 'fire',
|
|
77
|
+
description: 'Informations complémentaires transmises.',
|
|
78
|
+
},
|
|
79
|
+
[EInvoicingStatusCode.REFUSED]: {
|
|
80
|
+
shortLabel: 'Refusée',
|
|
81
|
+
label: 'Refusée',
|
|
82
|
+
color: 'error',
|
|
83
|
+
description: 'Facture refusée par le destinataire.',
|
|
84
|
+
},
|
|
85
|
+
[EInvoicingStatusCode.PAYMENT_TRANSMITTED]: {
|
|
86
|
+
shortLabel: 'Paiement transmis',
|
|
87
|
+
label: 'Paiement transmis',
|
|
88
|
+
color: 'success',
|
|
89
|
+
description: 'Paiement déclaré par le destinataire.',
|
|
90
|
+
},
|
|
91
|
+
[EInvoicingStatusCode.PAID]: {
|
|
92
|
+
shortLabel: 'Encaissée',
|
|
93
|
+
label: 'Encaissée',
|
|
94
|
+
color: 'success',
|
|
95
|
+
description: 'Paiement reçu et confirmé.',
|
|
96
|
+
},
|
|
97
|
+
[EInvoicingStatusCode.REJECTED]: {
|
|
98
|
+
shortLabel: 'Rejetée',
|
|
99
|
+
label: 'Rejetée',
|
|
100
|
+
color: 'error',
|
|
101
|
+
description: 'Facture rejetée, correction nécessaire.',
|
|
102
|
+
},
|
|
33
103
|
};
|
|
34
104
|
export const EInvoicingStatusCodeDocoon = {
|
|
35
105
|
[EInvoicingStatusCode.DEPOSITED]: 200,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EInvoicingStatusCode.js","sourceRoot":"","sources":["../../../ts/types/Enum/EInvoicingStatusCode.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,oBAeX;AAfD,WAAY,oBAAoB;IAC9B,yEAAa,CAAA;IACb,mEAAU,CAAA;IACV,uEAAY,CAAA;IACZ,mFAAkB,CAAA;IAClB,qEAAW,CAAA;IACX,uEAAY,CAAA;IACZ,2FAAsB,CAAA;IACtB,2EAAc,CAAA;IACd,yEAAa,CAAA;IACb,0EAAc,CAAA;IACd,sEAAY,CAAA;IACZ,8FAAwB,CAAA;IACxB,gEAAS,CAAA;IACT,wEAAa,CAAA;AACf,CAAC,EAfW,oBAAoB,KAApB,oBAAoB,QAe/B;AAED,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"EInvoicingStatusCode.js","sourceRoot":"","sources":["../../../ts/types/Enum/EInvoicingStatusCode.ts"],"names":[],"mappings":"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","sourcesContent":["export enum EInvoicingStatusCode {\n DEPOSITED = 1, // Déposée\n ISSUED = 2, // Émise\n RECEIVED = 3, // Reçue\n MADE_AVAILABLE = 4, // Mise à disposition\n HANDLED = 5, // Prise en charge\n APPROVED = 6, // Approuvée\n PARTIALLY_APPROVED = 7, // Approbation partielle\n IN_DISPUTE = 8, // En litige\n SUSPENDED = 9, // Suspendue\n COMPLETED = 10, // Complétée\n REFUSED = 11, // Refusée\n PAYMENT_TRANSMITTED = 12, // Paiement transmis\n PAID = 13, // Encaissée\n REJECTED = 14, // Rejetée\n}\n\nexport const EInvoicingStatusCodeMetadata: Record<\n EInvoicingStatusCode,\n { shortLabel: string; label: string; color: string; description?: string }\n> = {\n [EInvoicingStatusCode.DEPOSITED]: {\n shortLabel: 'Déposée',\n label: 'Déposée',\n color: 'cerulean',\n description: 'Facture déposée et contrôles techniques validés.',\n },\n [EInvoicingStatusCode.ISSUED]: {\n shortLabel: 'Émise',\n label: 'Émise par la plateforme',\n color: 'success',\n description: 'Facture transmise au réseau de facturation.',\n },\n [EInvoicingStatusCode.RECEIVED]: {\n shortLabel: 'Reçue',\n label: 'Reçue de la plateforme',\n color: 'success',\n description: 'Facture reçue par la plateforme du destinataire.',\n },\n [EInvoicingStatusCode.MADE_AVAILABLE]: {\n shortLabel: 'Mise à disposition',\n label: 'Mise à disposition',\n color: 'fire',\n description: 'Facture disponible pour le destinataire.',\n },\n [EInvoicingStatusCode.HANDLED]: {\n shortLabel: 'Prise en charge',\n label: 'Prise en charge',\n color: 'fire',\n description: 'Facture en cours de traitement par le destinataire.',\n },\n [EInvoicingStatusCode.APPROVED]: {\n shortLabel: 'Approuvée',\n label: 'Approuvée',\n color: 'success',\n description: 'Facture entièrement acceptée.',\n },\n [EInvoicingStatusCode.PARTIALLY_APPROVED]: {\n shortLabel: 'Approbation partielle',\n label: 'Approbation partielle',\n color: 'error',\n description: 'Facture partiellement acceptée.',\n },\n [EInvoicingStatusCode.IN_DISPUTE]: {\n shortLabel: 'En litige',\n label: 'En litige',\n color: 'error',\n description: 'Facture contestée par le destinataire.',\n },\n [EInvoicingStatusCode.SUSPENDED]: {\n shortLabel: 'Suspendue',\n label: 'Suspendue',\n color: 'error',\n description: 'Traitement suspendu, informations attendues.',\n },\n [EInvoicingStatusCode.COMPLETED]: {\n shortLabel: 'Complétée',\n label: 'Complétée',\n color: 'fire',\n description: 'Informations complémentaires transmises.',\n },\n [EInvoicingStatusCode.REFUSED]: {\n shortLabel: 'Refusée',\n label: 'Refusée',\n color: 'error',\n description: 'Facture refusée par le destinataire.',\n },\n [EInvoicingStatusCode.PAYMENT_TRANSMITTED]: {\n shortLabel: 'Paiement transmis',\n label: 'Paiement transmis',\n color: 'success',\n description: 'Paiement déclaré par le destinataire.',\n },\n [EInvoicingStatusCode.PAID]: {\n shortLabel: 'Encaissée',\n label: 'Encaissée',\n color: 'success',\n description: 'Paiement reçu et confirmé.',\n },\n [EInvoicingStatusCode.REJECTED]: {\n shortLabel: 'Rejetée',\n label: 'Rejetée',\n color: 'error',\n description: 'Facture rejetée, correction nécessaire.',\n },\n};\n\nexport const EInvoicingStatusCodeDocoon: Record<EInvoicingStatusCode, number> = {\n [EInvoicingStatusCode.DEPOSITED]: 200,\n [EInvoicingStatusCode.ISSUED]: 201,\n [EInvoicingStatusCode.RECEIVED]: 202,\n [EInvoicingStatusCode.MADE_AVAILABLE]: 203,\n [EInvoicingStatusCode.HANDLED]: 204,\n [EInvoicingStatusCode.APPROVED]: 205,\n [EInvoicingStatusCode.PARTIALLY_APPROVED]: 206,\n [EInvoicingStatusCode.IN_DISPUTE]: 207,\n [EInvoicingStatusCode.SUSPENDED]: 208,\n [EInvoicingStatusCode.COMPLETED]: 209,\n [EInvoicingStatusCode.REFUSED]: 210,\n [EInvoicingStatusCode.PAYMENT_TRANSMITTED]: 211,\n [EInvoicingStatusCode.PAID]: 212,\n [EInvoicingStatusCode.REJECTED]: 213,\n};\n\nexport type EInvoicingFLowStatus =\n | 'Refused'\n | 'Rejected'\n | 'InHand'\n | 'Approved'\n | 'PartiallyApproved'\n | 'Dispute'\n | 'Submited'\n | 'SentByPlatform'\n | 'ReceivedByPlatform'\n | 'Canceled'\n | 'Suspended'\n | 'Completed'\n | 'MadeAvailable'\n | 'Paid'\n | 'PaymentTransmitted';\n\nexport function eInvoicingFlowStatusToStatusCode(status: EInvoicingFLowStatus): EInvoicingStatusCode {\n switch (status) {\n case 'Refused':\n return EInvoicingStatusCode.REFUSED;\n case 'Rejected':\n return EInvoicingStatusCode.REJECTED;\n case 'Approved':\n return EInvoicingStatusCode.APPROVED;\n case 'PartiallyApproved':\n return EInvoicingStatusCode.PARTIALLY_APPROVED;\n case 'InHand':\n return EInvoicingStatusCode.HANDLED;\n case 'Dispute':\n return EInvoicingStatusCode.IN_DISPUTE;\n case 'Submited':\n case 'SentByPlatform':\n return EInvoicingStatusCode.ISSUED;\n case 'ReceivedByPlatform':\n return EInvoicingStatusCode.RECEIVED;\n case 'Canceled':\n case 'Suspended':\n return EInvoicingStatusCode.SUSPENDED;\n case 'Completed':\n return EInvoicingStatusCode.COMPLETED;\n case 'MadeAvailable':\n return EInvoicingStatusCode.MADE_AVAILABLE;\n case 'Paid':\n return EInvoicingStatusCode.PAID;\n case 'PaymentTransmitted':\n return EInvoicingStatusCode.PAYMENT_TRANSMITTED;\n default:\n return EInvoicingStatusCode.RECEIVED;\n }\n}\n"]}
|
|
@@ -10,6 +10,7 @@ import { InternationalizationChoices } from '../../../../utils/commercialManagem
|
|
|
10
10
|
import { ISaleEmail } from '../../models/ISaleEmail.js';
|
|
11
11
|
import { CountryId } from '#types/Enum/Country.js';
|
|
12
12
|
import { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';
|
|
13
|
+
import { EInvoicingReasonTypeCode } from '#types/Enum/EInvoicingReasonType.js';
|
|
13
14
|
export type ReadCashBasedInvoice = Partial<IAccountingFile>;
|
|
14
15
|
export type ReadAccrualInvoice = Partial<ReadFormattedAccountingTransaction>;
|
|
15
16
|
export type ReadEstimateInvoice = IEstimateInvoice & {
|
|
@@ -228,7 +229,7 @@ export type ReadEInvoice = {
|
|
|
228
229
|
name: string;
|
|
229
230
|
status: EInvoicingFLowStatus;
|
|
230
231
|
statusDetails: Array<{
|
|
231
|
-
code:
|
|
232
|
+
code: EInvoicingReasonTypeCode;
|
|
232
233
|
description: string;
|
|
233
234
|
fullDescription: string;
|
|
234
235
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Read.d.ts","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/commercialManagement/Read.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,kCAAkC,EAAE,MAAM,qDAAqD,CAAC;AACzG,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,qEAAqE,CAAC;AAClH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"Read.d.ts","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/commercialManagement/Read.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Read.js","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/commercialManagement/Read.ts"],"names":[],"mappings":"","sourcesContent":["import { EstimateInvoiceType } from '../../../Enum/EstimateInvoice.js';\nimport { IAccountingFile } from '../../models/IAccountingFile.js';\nimport { IProductInvoice } from '../../models/IProductInvoice.js';\nimport { ReadFormattedAccountingTransaction } from '../accountingEntry/AnnotateAccountingTransaction.js';\nimport { CommercialDocumentInputs } from './Create.js';\nimport { IEstimateInvoice } from '../../models/IEstimateInvoice.js';\nimport { EstimateStatus, FontIds, InvoiceStatus } from '../../../Enum/CommercialManagement.js';\nimport { IThirdParty } from '../../models/IThirdParty.js';\nimport { InternationalizationChoices } from '../../../../utils/commercialManagement/internationalization/type.js';\nimport { ISaleEmail } from '../../models/ISaleEmail.js';\nimport { CountryId } from '#types/Enum/Country.js';\nimport { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';\n\nexport type ReadCashBasedInvoice = Partial<IAccountingFile>;\n\nexport type ReadAccrualInvoice = Partial<ReadFormattedAccountingTransaction>;\n\nexport type ReadEstimateInvoice = IEstimateInvoice & { id: number };\n\nexport type ReadProductEditing = IProductInvoice & {\n totalTaxExcluded: number;\n unitFormatted: string;\n vatFormatted: string;\n discountFormatted: string | null;\n discountTypeFormatted: string | null;\n priceTaxExcludedFormatted: string | null;\n totalTaxExcludedFormatted: string | null;\n marginVatFormatted: string | null;\n};\n\nexport type ReadThirdPartyEditing = IThirdParty & {\n deliveryCountry: string | null;\n country: string | null;\n};\n\nexport type FacturXInvoiceData = {\n label: string;\n invoiceNumber: string;\n dateValue: string;\n totalTaxIncluded: number;\n totalTaxExcluded: number;\n isAsset: boolean;\n thirdParty: IThirdParty;\n amounts: Array<{ idVat: number; amountBase: number; amountVat: number }>;\n};\n\nexport type ReadVatEditing = {\n id: number;\n name: string;\n amount: number;\n value: number;\n baseFormatted: string;\n amountFormatted: string;\n toPay: number;\n base: number;\n};\n\nexport type ReadPreview = { idFile: number };\n\nexport type ReadDocumentEditing = CommercialDocumentInputs & {\n title?: string | null;\n idEstimateInvoiceType: EstimateInvoiceType;\n phoneContact: string | null;\n dueDateFormatted: string | null;\n expirationDateFormatted: string | null;\n capitalFormatted: string | null;\n depositFormatted: string | null;\n emissionDateFormatted: string | null;\n products: ReadProductEditing[];\n vats: ReadVatEditing[];\n totalTaxExcluded: number;\n totalTaxIncluded: number;\n totalTaxAndDiscountIncluded: number;\n generalDiscountFormatted: string | null;\n totalTaxExcludedFormatted: string;\n totalTaxIncludedFormatted: string;\n totalTaxAndDiscountIncludedFormatted: string;\n totalVatAmountFormatted: string;\n font: {\n id: FontIds;\n name: string;\n url: string;\n };\n shouldDisplayDiscountColumn: boolean;\n paymentLink?: string;\n marginVats: string[];\n accountingCategoryFormatted: string | null;\n languageTemplate: InternationalizationChoices;\n};\n\nexport type ReadCommercialDocumentTemplate = {\n header: string;\n body: string;\n footer: string;\n data: ReadDocumentEditing;\n};\n\nexport type ReadEstimateInvoiceStatus =\n | InvoiceStatus.PAID\n | InvoiceStatus.UNPAID\n | InvoiceStatus.CANCELED\n | InvoiceStatus.WAITING\n | EstimateStatus.REFUSED\n | EstimateStatus.BILLED\n | EstimateStatus.ACCEPTED\n | EstimateStatus.WAITING\n | EstimateStatus.EXPIRED;\n\ntype CountAndNumber = { count: number; amount: number };\n\nexport type ReadCountDocumentByStatus = {\n invoices: { paid: CountAndNumber; waiting: CountAndNumber; unpaid: CountAndNumber };\n preSales: { accepted: CountAndNumber; waiting: CountAndNumber; refused: CountAndNumber };\n};\n\nexport type ReadCommercialMailTemplate = {\n header: string;\n};\n\nexport type ReadSaleEmail = ISaleEmail & {\n defaultFromApplication: boolean;\n};\n\nexport type ReadRecentActivity = {\n id: number;\n type: 'estimate' | 'product' | 'tier';\n label: string;\n updatedAt: string;\n // i don't know if needed, it is in the type but not return from service for now\n item?: IEstimateInvoice | IProductInvoice | IThirdParty;\n};\n\nexport type ReadStatisticRecurrentRevenue = {\n period: string;\n done: {\n totalTaxExcluded: number;\n totalTaxIncluded: number;\n };\n projection: {\n totalTaxExcluded: number;\n totalTaxIncluded: number;\n } | null;\n};\n\nexport type ReadEInvoicingReception = {\n label: string;\n reference: string;\n emissionDate: string;\n dueDate: string | undefined;\n idCurrency: number;\n type: EstimateInvoiceType;\n purchaseOrderReference: string | undefined;\n /** float, not in cent */\n totalTaxExcluded: number;\n /** float, not in cent */\n totalTaxIncluded: number;\n /** float, not in cent */\n depositPaid: number;\n /** float, not in cent */\n amountToPay: number;\n customer: {\n reference: string | undefined;\n name: string | undefined;\n siren: string | undefined;\n vatNumber: string | undefined;\n idCountry: CountryId | undefined;\n };\n provider: {\n name: string | undefined;\n siren: string | undefined;\n vatNumber: string | undefined;\n email: string | undefined;\n idCountry: CountryId | undefined;\n };\n products: Array<{\n externalId: string;\n name: string;\n comment: string | null;\n quantity: number;\n taxExcluded: number;\n totalTaxExcluded: number;\n taxRate: number | undefined;\n idVat: number | undefined;\n externalData: {\n id: string;\n unit: string | undefined;\n };\n }>;\n referencedInvoices: Array<{\n number: string;\n date: string;\n }>;\n vat: {\n totalTaxExcluded: number | undefined;\n list: Array<{\n idVat: number | undefined;\n amountBase: number;\n taxAmount: number;\n }>;\n };\n discount: {\n document: Array<{\n isCharge: boolean;\n amount: number;\n taxRate: number | undefined;\n idVat: number | undefined;\n externalData: {\n reasonCode: string | undefined;\n };\n }>;\n lines: Array<{\n isCharge: boolean;\n amount: number;\n }>;\n };\n};\n\nexport type ProductInvoiceFromEInvoice = Omit<\n IProductInvoice,\n 'id' | 'idEstimateInvoice' | 'createdAt' | 'updatedAt'\n> & {\n idAccount: number | null;\n};\n\nexport type ReadEinvoiceInfo = {\n emissionDate: string;\n dueDate: string;\n idThirdParty: number;\n idCurrency: number;\n externalId: string;\n internalNumber: string;\n products: ProductInvoiceFromEInvoice[];\n};\n\nexport type ReadEInvoice = {\n externalId: string;\n entityId: string;\n direction: 'In' | 'Out';\n type: string;\n flow: 'CustomerInvoice' | 'SupplierInvoice';\n syntax: 'UBL' | 'CII' | 'Factur-X';\n category: 'FLUX1' | 'FLUX2' | 'FLUX3' | 'FLUX4' | 'FLUX5' | 'FLUX6';\n name: string;\n status: EInvoicingFLowStatus;\n statusDetails: Array<{ code:
|
|
1
|
+
{"version":3,"file":"Read.js","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/commercialManagement/Read.ts"],"names":[],"mappings":"","sourcesContent":["import { EstimateInvoiceType } from '../../../Enum/EstimateInvoice.js';\nimport { IAccountingFile } from '../../models/IAccountingFile.js';\nimport { IProductInvoice } from '../../models/IProductInvoice.js';\nimport { ReadFormattedAccountingTransaction } from '../accountingEntry/AnnotateAccountingTransaction.js';\nimport { CommercialDocumentInputs } from './Create.js';\nimport { IEstimateInvoice } from '../../models/IEstimateInvoice.js';\nimport { EstimateStatus, FontIds, InvoiceStatus } from '../../../Enum/CommercialManagement.js';\nimport { IThirdParty } from '../../models/IThirdParty.js';\nimport { InternationalizationChoices } from '../../../../utils/commercialManagement/internationalization/type.js';\nimport { ISaleEmail } from '../../models/ISaleEmail.js';\nimport { CountryId } from '#types/Enum/Country.js';\nimport { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';\nimport { EInvoicingReasonTypeCode } from '#types/Enum/EInvoicingReasonType.js';\n\nexport type ReadCashBasedInvoice = Partial<IAccountingFile>;\n\nexport type ReadAccrualInvoice = Partial<ReadFormattedAccountingTransaction>;\n\nexport type ReadEstimateInvoice = IEstimateInvoice & { id: number };\n\nexport type ReadProductEditing = IProductInvoice & {\n totalTaxExcluded: number;\n unitFormatted: string;\n vatFormatted: string;\n discountFormatted: string | null;\n discountTypeFormatted: string | null;\n priceTaxExcludedFormatted: string | null;\n totalTaxExcludedFormatted: string | null;\n marginVatFormatted: string | null;\n};\n\nexport type ReadThirdPartyEditing = IThirdParty & {\n deliveryCountry: string | null;\n country: string | null;\n};\n\nexport type FacturXInvoiceData = {\n label: string;\n invoiceNumber: string;\n dateValue: string;\n totalTaxIncluded: number;\n totalTaxExcluded: number;\n isAsset: boolean;\n thirdParty: IThirdParty;\n amounts: Array<{ idVat: number; amountBase: number; amountVat: number }>;\n};\n\nexport type ReadVatEditing = {\n id: number;\n name: string;\n amount: number;\n value: number;\n baseFormatted: string;\n amountFormatted: string;\n toPay: number;\n base: number;\n};\n\nexport type ReadPreview = { idFile: number };\n\nexport type ReadDocumentEditing = CommercialDocumentInputs & {\n title?: string | null;\n idEstimateInvoiceType: EstimateInvoiceType;\n phoneContact: string | null;\n dueDateFormatted: string | null;\n expirationDateFormatted: string | null;\n capitalFormatted: string | null;\n depositFormatted: string | null;\n emissionDateFormatted: string | null;\n products: ReadProductEditing[];\n vats: ReadVatEditing[];\n totalTaxExcluded: number;\n totalTaxIncluded: number;\n totalTaxAndDiscountIncluded: number;\n generalDiscountFormatted: string | null;\n totalTaxExcludedFormatted: string;\n totalTaxIncludedFormatted: string;\n totalTaxAndDiscountIncludedFormatted: string;\n totalVatAmountFormatted: string;\n font: {\n id: FontIds;\n name: string;\n url: string;\n };\n shouldDisplayDiscountColumn: boolean;\n paymentLink?: string;\n marginVats: string[];\n accountingCategoryFormatted: string | null;\n languageTemplate: InternationalizationChoices;\n};\n\nexport type ReadCommercialDocumentTemplate = {\n header: string;\n body: string;\n footer: string;\n data: ReadDocumentEditing;\n};\n\nexport type ReadEstimateInvoiceStatus =\n | InvoiceStatus.PAID\n | InvoiceStatus.UNPAID\n | InvoiceStatus.CANCELED\n | InvoiceStatus.WAITING\n | EstimateStatus.REFUSED\n | EstimateStatus.BILLED\n | EstimateStatus.ACCEPTED\n | EstimateStatus.WAITING\n | EstimateStatus.EXPIRED;\n\ntype CountAndNumber = { count: number; amount: number };\n\nexport type ReadCountDocumentByStatus = {\n invoices: { paid: CountAndNumber; waiting: CountAndNumber; unpaid: CountAndNumber };\n preSales: { accepted: CountAndNumber; waiting: CountAndNumber; refused: CountAndNumber };\n};\n\nexport type ReadCommercialMailTemplate = {\n header: string;\n};\n\nexport type ReadSaleEmail = ISaleEmail & {\n defaultFromApplication: boolean;\n};\n\nexport type ReadRecentActivity = {\n id: number;\n type: 'estimate' | 'product' | 'tier';\n label: string;\n updatedAt: string;\n // i don't know if needed, it is in the type but not return from service for now\n item?: IEstimateInvoice | IProductInvoice | IThirdParty;\n};\n\nexport type ReadStatisticRecurrentRevenue = {\n period: string;\n done: {\n totalTaxExcluded: number;\n totalTaxIncluded: number;\n };\n projection: {\n totalTaxExcluded: number;\n totalTaxIncluded: number;\n } | null;\n};\n\nexport type ReadEInvoicingReception = {\n label: string;\n reference: string;\n emissionDate: string;\n dueDate: string | undefined;\n idCurrency: number;\n type: EstimateInvoiceType;\n purchaseOrderReference: string | undefined;\n /** float, not in cent */\n totalTaxExcluded: number;\n /** float, not in cent */\n totalTaxIncluded: number;\n /** float, not in cent */\n depositPaid: number;\n /** float, not in cent */\n amountToPay: number;\n customer: {\n reference: string | undefined;\n name: string | undefined;\n siren: string | undefined;\n vatNumber: string | undefined;\n idCountry: CountryId | undefined;\n };\n provider: {\n name: string | undefined;\n siren: string | undefined;\n vatNumber: string | undefined;\n email: string | undefined;\n idCountry: CountryId | undefined;\n };\n products: Array<{\n externalId: string;\n name: string;\n comment: string | null;\n quantity: number;\n taxExcluded: number;\n totalTaxExcluded: number;\n taxRate: number | undefined;\n idVat: number | undefined;\n externalData: {\n id: string;\n unit: string | undefined;\n };\n }>;\n referencedInvoices: Array<{\n number: string;\n date: string;\n }>;\n vat: {\n totalTaxExcluded: number | undefined;\n list: Array<{\n idVat: number | undefined;\n amountBase: number;\n taxAmount: number;\n }>;\n };\n discount: {\n document: Array<{\n isCharge: boolean;\n amount: number;\n taxRate: number | undefined;\n idVat: number | undefined;\n externalData: {\n reasonCode: string | undefined;\n };\n }>;\n lines: Array<{\n isCharge: boolean;\n amount: number;\n }>;\n };\n};\n\nexport type ProductInvoiceFromEInvoice = Omit<\n IProductInvoice,\n 'id' | 'idEstimateInvoice' | 'createdAt' | 'updatedAt'\n> & {\n idAccount: number | null;\n};\n\nexport type ReadEinvoiceInfo = {\n emissionDate: string;\n dueDate: string;\n idThirdParty: number;\n idCurrency: number;\n externalId: string;\n internalNumber: string;\n products: ProductInvoiceFromEInvoice[];\n};\n\nexport type ReadEInvoice = {\n externalId: string;\n entityId: string;\n direction: 'In' | 'Out';\n type: string;\n flow: 'CustomerInvoice' | 'SupplierInvoice';\n syntax: 'UBL' | 'CII' | 'Factur-X';\n category: 'FLUX1' | 'FLUX2' | 'FLUX3' | 'FLUX4' | 'FLUX5' | 'FLUX6';\n name: string;\n status: EInvoicingFLowStatus;\n statusDetails: Array<{ code: EInvoicingReasonTypeCode; description: string; fullDescription: string }>;\n updatedAt: string;\n submittedAt: string;\n documentStatus: string;\n externalStructureId: string;\n documentId: string;\n};\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EInvoicingReasonTypeCode } from '#types/Enum/EInvoicingReasonType.js';
|
|
1
2
|
import { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';
|
|
2
3
|
export type DocoonInvoice = {
|
|
3
4
|
numeroFacture: string;
|
|
@@ -186,7 +187,7 @@ export type DocoonFlowAcknowledgement = {
|
|
|
186
187
|
export type DocoonFlowAcknowledgementDetails = {
|
|
187
188
|
level: string | null;
|
|
188
189
|
item: string | null;
|
|
189
|
-
reasonCode:
|
|
190
|
+
reasonCode: EInvoicingReasonTypeCode | null;
|
|
190
191
|
reasonMessage: string | null;
|
|
191
192
|
fullMessage: string | null;
|
|
192
193
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocoonInvoice.d.ts","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/docoon/DocoonInvoice.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"DocoonInvoice.d.ts","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/docoon/DocoonInvoice.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocoonInvoice.js","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/docoon/DocoonInvoice.ts"],"names":[],"mappings":"","sourcesContent":["import { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';\n\nexport type DocoonInvoice = {\n numeroFacture: string;\n dateEmission: string;\n codeType: string;\n codeDevise: string;\n codeDateExigibiliteTva: string;\n dateEcheance: string;\n referenceAcheteur: string;\n referenceBonCommande: string;\n numeroOrdreVente: string;\n identifiantObjetFacture: string;\n identifiantSchema: string;\n referenceComptableAcheteur: string;\n conditionPaiement: string;\n noteDeFacture: Array<{\n codeSujetNote: string;\n noteFacture: string;\n }>;\n controleDuProcessus: {\n typeProcessus: string;\n typeProfil: string;\n };\n /**\n * THIRDPARTY\n */\n vendeur: {\n raisonSociale: string;\n appellationCommerciale: string;\n identifiantPrive: Array<{\n identifiant: string;\n identifiantSchema: string;\n }>;\n numeroSiren: string;\n identifiantSchemaIdentifiant: string;\n identifiantFiscal: Array<{\n qualifiantIdentifiantFiscal: string;\n identifiantTva: string;\n }>;\n email: string;\n identifiantEmail: string;\n formeJuridique: string;\n adressePostale: {\n adresse1: string;\n adresse2: string | null;\n localite: string;\n cp: string;\n codePays: string;\n };\n contact: {\n pointContact: string;\n telephone: string;\n email: string;\n };\n countryCodeFR: boolean;\n };\n //\n acheteur: {\n raisonSociale: string;\n appellationCommerciale?: string;\n identifiantPrive: Array<{\n identifiant: string;\n identifiantSchema: string;\n }>;\n numeroSiren: string;\n identifiantSchemaIdentifiant: string;\n identifiantFiscal: Array<{\n qualifiantIdentifiantFiscal: string;\n identifiantTva: string;\n }>;\n email: string;\n identifiantEmail: string;\n adressePostale: {\n adresse1: string;\n adresse2: string | null;\n localite: string;\n cp: string;\n codePays: string;\n };\n contact: {\n pointContact: string;\n telephone: string;\n email: string;\n };\n countryCodeFR: boolean;\n };\n\n informationsDeLivraisonPresentationDeService: {\n lieuLivraison: string;\n };\n\n periodeDeFacturation: {\n dateDebut: string;\n dateFin: string;\n };\n adresseDeLivraisonRealisationPrestationDeService: {\n adresse1: string;\n adresse2: string | null;\n localite: string;\n cp: string;\n codePays: string;\n };\n instructionsDePaiement: {\n codeMoyen: string;\n libelleMoyen: 'Virement';\n avis: string;\n virement: {\n identifiantComptePaiement: string;\n nomComptePaiement: string;\n identifiantPrestatairePaiement: string;\n };\n };\n totauxDuDocument: {\n sommeMontantNetLigne: number;\n sommeRemiseDocument: number;\n sommeChargeDocument: number;\n montantTotalFactureHorsTva: number;\n montantTotalTvaFacture: number;\n montantTotalFactureAvecTva: number;\n montantPaye: number;\n montantAPayer: number;\n };\n ventilationDeLaTva: Array<{\n baseImpositionTva: number;\n montantTypeTva: number;\n codeTypeTva: string;\n tauxTypeTva: number;\n }>;\n ligneDeFacture: Array<{\n identifiant: string;\n quantiteFacture: number;\n codeQuantiteFacture: string;\n montantNetFacture: number;\n detailDuPrix: {\n prixNet: number;\n rabaisPrix: number;\n prixBrut: number;\n quantiteBasePrix: number;\n codeQuantitePrix: string;\n };\n informationSurLaTva: {\n codeTypeTva: string;\n tauxTva: number;\n };\n informationSurArticle: {\n designation: string;\n description: string;\n };\n }>;\n};\n\nexport type ReadDocoonSearch = {\n total: number;\n offset: number;\n limit: number;\n filter: {\n limit: number;\n offset: number;\n where: {\n updatedAfter: string;\n flowType: DocoonFlowType[];\n };\n };\n result: ReadDocoonResultSearch[];\n};\n\nexport type ReadDocoonResultSearch = {\n documentId: string;\n structureId: string;\n submittedAt: string;\n updatedAt: string;\n flowId: string;\n trackingId: string;\n flowDirection: DocoonFlowDirection;\n flowType: DocoonFlowType;\n flowStatus: string;\n flowSyntax: DocoonFlowSyntax;\n flowProfile: string;\n flowCategory: DocoonFlowCategory;\n isRead: boolean;\n documentTypeCode: string;\n documentStatus: EInvoicingFLowStatus;\n name: string;\n acknowledgement?: DocoonFlowAcknowledgement;\n // There is probably a typo in the document but just in case, we handle both \"acknowledgment\" and \"acknowledgement\"\n acknowledgment?: DocoonFlowAcknowledgement;\n};\n\nexport type DocoonFlowAcknowledgement = {\n status: 'Ok' | 'Error';\n details?: DocoonFlowAcknowledgementDetails;\n};\n\nexport type DocoonFlowAcknowledgementDetails = {\n level: string | null;\n item: string | null;\n reasonCode:
|
|
1
|
+
{"version":3,"file":"DocoonInvoice.js","sourceRoot":"","sources":["../../../../../ts/types/Interface/api/docoon/DocoonInvoice.ts"],"names":[],"mappings":"","sourcesContent":["import { EInvoicingReasonTypeCode } from '#types/Enum/EInvoicingReasonType.js';\nimport { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';\n\nexport type DocoonInvoice = {\n numeroFacture: string;\n dateEmission: string;\n codeType: string;\n codeDevise: string;\n codeDateExigibiliteTva: string;\n dateEcheance: string;\n referenceAcheteur: string;\n referenceBonCommande: string;\n numeroOrdreVente: string;\n identifiantObjetFacture: string;\n identifiantSchema: string;\n referenceComptableAcheteur: string;\n conditionPaiement: string;\n noteDeFacture: Array<{\n codeSujetNote: string;\n noteFacture: string;\n }>;\n controleDuProcessus: {\n typeProcessus: string;\n typeProfil: string;\n };\n /**\n * THIRDPARTY\n */\n vendeur: {\n raisonSociale: string;\n appellationCommerciale: string;\n identifiantPrive: Array<{\n identifiant: string;\n identifiantSchema: string;\n }>;\n numeroSiren: string;\n identifiantSchemaIdentifiant: string;\n identifiantFiscal: Array<{\n qualifiantIdentifiantFiscal: string;\n identifiantTva: string;\n }>;\n email: string;\n identifiantEmail: string;\n formeJuridique: string;\n adressePostale: {\n adresse1: string;\n adresse2: string | null;\n localite: string;\n cp: string;\n codePays: string;\n };\n contact: {\n pointContact: string;\n telephone: string;\n email: string;\n };\n countryCodeFR: boolean;\n };\n //\n acheteur: {\n raisonSociale: string;\n appellationCommerciale?: string;\n identifiantPrive: Array<{\n identifiant: string;\n identifiantSchema: string;\n }>;\n numeroSiren: string;\n identifiantSchemaIdentifiant: string;\n identifiantFiscal: Array<{\n qualifiantIdentifiantFiscal: string;\n identifiantTva: string;\n }>;\n email: string;\n identifiantEmail: string;\n adressePostale: {\n adresse1: string;\n adresse2: string | null;\n localite: string;\n cp: string;\n codePays: string;\n };\n contact: {\n pointContact: string;\n telephone: string;\n email: string;\n };\n countryCodeFR: boolean;\n };\n\n informationsDeLivraisonPresentationDeService: {\n lieuLivraison: string;\n };\n\n periodeDeFacturation: {\n dateDebut: string;\n dateFin: string;\n };\n adresseDeLivraisonRealisationPrestationDeService: {\n adresse1: string;\n adresse2: string | null;\n localite: string;\n cp: string;\n codePays: string;\n };\n instructionsDePaiement: {\n codeMoyen: string;\n libelleMoyen: 'Virement';\n avis: string;\n virement: {\n identifiantComptePaiement: string;\n nomComptePaiement: string;\n identifiantPrestatairePaiement: string;\n };\n };\n totauxDuDocument: {\n sommeMontantNetLigne: number;\n sommeRemiseDocument: number;\n sommeChargeDocument: number;\n montantTotalFactureHorsTva: number;\n montantTotalTvaFacture: number;\n montantTotalFactureAvecTva: number;\n montantPaye: number;\n montantAPayer: number;\n };\n ventilationDeLaTva: Array<{\n baseImpositionTva: number;\n montantTypeTva: number;\n codeTypeTva: string;\n tauxTypeTva: number;\n }>;\n ligneDeFacture: Array<{\n identifiant: string;\n quantiteFacture: number;\n codeQuantiteFacture: string;\n montantNetFacture: number;\n detailDuPrix: {\n prixNet: number;\n rabaisPrix: number;\n prixBrut: number;\n quantiteBasePrix: number;\n codeQuantitePrix: string;\n };\n informationSurLaTva: {\n codeTypeTva: string;\n tauxTva: number;\n };\n informationSurArticle: {\n designation: string;\n description: string;\n };\n }>;\n};\n\nexport type ReadDocoonSearch = {\n total: number;\n offset: number;\n limit: number;\n filter: {\n limit: number;\n offset: number;\n where: {\n updatedAfter: string;\n flowType: DocoonFlowType[];\n };\n };\n result: ReadDocoonResultSearch[];\n};\n\nexport type ReadDocoonResultSearch = {\n documentId: string;\n structureId: string;\n submittedAt: string;\n updatedAt: string;\n flowId: string;\n trackingId: string;\n flowDirection: DocoonFlowDirection;\n flowType: DocoonFlowType;\n flowStatus: string;\n flowSyntax: DocoonFlowSyntax;\n flowProfile: string;\n flowCategory: DocoonFlowCategory;\n isRead: boolean;\n documentTypeCode: string;\n documentStatus: EInvoicingFLowStatus;\n name: string;\n acknowledgement?: DocoonFlowAcknowledgement;\n // There is probably a typo in the document but just in case, we handle both \"acknowledgment\" and \"acknowledgement\"\n acknowledgment?: DocoonFlowAcknowledgement;\n};\n\nexport type DocoonFlowAcknowledgement = {\n status: 'Ok' | 'Error';\n details?: DocoonFlowAcknowledgementDetails;\n};\n\nexport type DocoonFlowAcknowledgementDetails = {\n level: string | null;\n item: string | null;\n reasonCode: EInvoicingReasonTypeCode | null;\n reasonMessage: string | null;\n fullMessage: string | null;\n};\n\nexport type DocoonFlowType = 'CustomerInvoice' | 'SupplierInvoice';\nexport type DocoonFlowDirection = 'In' | 'Out';\nexport type DocoonFlowSyntax = 'UBL' | 'CII' | 'Factur-X';\nexport type DocoonFlowCategory = 'FLUX1' | 'FLUX2' | 'FLUX3' | 'FLUX4' | 'FLUX5' | 'FLUX6';\n\nexport type DocoonFlowDocType = 'Original' | 'ReadableView';\n"]}
|
|
@@ -17,6 +17,7 @@ export declare class IAccountingFile {
|
|
|
17
17
|
totalTaxExcluded?: number | null;
|
|
18
18
|
isMobile: boolean;
|
|
19
19
|
internComment?: string | null;
|
|
20
|
+
invoiceNumber?: string | null;
|
|
20
21
|
idAccountingTransaction?: number | null;
|
|
21
22
|
idEstimateInvoice?: number | null;
|
|
22
23
|
idAccountingFileType: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAccountingFile.d.ts","sourceRoot":"","sources":["../../../../ts/types/Interface/models/IAccountingFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,qBAAa,eAAe;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,qBAAqB,CAAC,EAAE,sBAAsB,CAAC;IAC/C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CACjC"}
|
|
1
|
+
{"version":3,"file":"IAccountingFile.d.ts","sourceRoot":"","sources":["../../../../ts/types/Interface/models/IAccountingFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,qBAAa,eAAe;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,qBAAqB,CAAC,EAAE,sBAAsB,CAAC;IAC/C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CACjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAccountingFile.js","sourceRoot":"","sources":["../../../../ts/types/Interface/models/IAccountingFile.ts"],"names":[],"mappings":"AASA,iBAAiB;AACjB,MAAM,OAAO,eAAe;IAC1B,EAAE,CAAU;IACZ,MAAM,CAAiB;IACvB,QAAQ,CAAW;IACnB,gBAAgB,CAAiB;IACjC,UAAU,CAAiB;IAC3B,YAAY,CAAe;IAC3B,gBAAgB,CAAiB;IACjC,gBAAgB,CAAiB;IACjC,QAAQ,CAAU;IAClB,aAAa,CAAiB;IAC9B,uBAAuB,CAAiB;IACxC,iBAAiB,CAAiB;IAClC,oBAAoB,CAAS;IAC7B,YAAY,CAAiB;IAC7B,SAAS,CAAS;IAClB,MAAM,CAAS;IACf,YAAY,CAAiB;IAC7B,SAAS,CAAe;IACxB,SAAS,CAAe;IACxB,SAAS,CAAe;IACxB,UAAU,CAAiB;IAC3B,UAAU,CAAW;IACrB,QAAQ,CAAW;IAEnB,eAAe;IACf,qBAAqB,CAA0B;IAC/C,gBAAgB,CAAoB;IACpC,kBAAkB,CAAuB;IACzC,QAAQ,CAAa;IACrB,IAAI,CAAS;IACb,OAAO,CAAY;IACnB,UAAU,CAAsB;IAChC,UAAU,CAAsB;CACjC","sourcesContent":["import { IAccountingTransaction } from './IAccountingTransaction.js';\nimport { IEstimateInvoice } from './IEstimateInvoice.js';\nimport { IFileType } from './IFileType.js';\nimport { IFile } from './IFile.js';\nimport { ISociety } from './ISociety.js';\nimport { IAccountingFileType } from './IAccountingFileType.js';\nimport { IEInvoicing } from './IEInvoicing.js';\nimport { IThirdParty } from './IThirdParty.js';\n\n// accountingFile\nexport class IAccountingFile {\n id?: number;\n idUser?: number | null;\n isMerged?: boolean;\n budgeaDocumentId?: number | null;\n bankFileId?: string | null;\n emissionDate?: Date | null;\n totalTaxIncluded?: number | null;\n totalTaxExcluded?: number | null;\n isMobile: boolean;\n internComment?: string | null;\n idAccountingTransaction?: number | null;\n idEstimateInvoice?: number | null;\n idAccountingFileType: number;\n idThirdParty?: number | null;\n idSociety: number;\n idFile: number;\n idEInvoicing?: number | null;\n createdAt?: Date | null;\n updatedAt?: Date | null;\n deletedAt?: Date | null;\n idFileType?: number | null;\n isVerified?: boolean;\n toVerify?: boolean;\n\n // Associations\n accountingTransaction?: IAccountingTransaction;\n estimatesInvoice?: IEstimateInvoice;\n accountingFileType?: IAccountingFileType;\n fileType?: IFileType;\n file?: IFile;\n society?: ISociety;\n thirdParty?: IThirdParty | null;\n eInvoicing?: IEInvoicing | null;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"IAccountingFile.js","sourceRoot":"","sources":["../../../../ts/types/Interface/models/IAccountingFile.ts"],"names":[],"mappings":"AASA,iBAAiB;AACjB,MAAM,OAAO,eAAe;IAC1B,EAAE,CAAU;IACZ,MAAM,CAAiB;IACvB,QAAQ,CAAW;IACnB,gBAAgB,CAAiB;IACjC,UAAU,CAAiB;IAC3B,YAAY,CAAe;IAC3B,gBAAgB,CAAiB;IACjC,gBAAgB,CAAiB;IACjC,QAAQ,CAAU;IAClB,aAAa,CAAiB;IAC9B,aAAa,CAAiB;IAC9B,uBAAuB,CAAiB;IACxC,iBAAiB,CAAiB;IAClC,oBAAoB,CAAS;IAC7B,YAAY,CAAiB;IAC7B,SAAS,CAAS;IAClB,MAAM,CAAS;IACf,YAAY,CAAiB;IAC7B,SAAS,CAAe;IACxB,SAAS,CAAe;IACxB,SAAS,CAAe;IACxB,UAAU,CAAiB;IAC3B,UAAU,CAAW;IACrB,QAAQ,CAAW;IAEnB,eAAe;IACf,qBAAqB,CAA0B;IAC/C,gBAAgB,CAAoB;IACpC,kBAAkB,CAAuB;IACzC,QAAQ,CAAa;IACrB,IAAI,CAAS;IACb,OAAO,CAAY;IACnB,UAAU,CAAsB;IAChC,UAAU,CAAsB;CACjC","sourcesContent":["import { IAccountingTransaction } from './IAccountingTransaction.js';\nimport { IEstimateInvoice } from './IEstimateInvoice.js';\nimport { IFileType } from './IFileType.js';\nimport { IFile } from './IFile.js';\nimport { ISociety } from './ISociety.js';\nimport { IAccountingFileType } from './IAccountingFileType.js';\nimport { IEInvoicing } from './IEInvoicing.js';\nimport { IThirdParty } from './IThirdParty.js';\n\n// accountingFile\nexport class IAccountingFile {\n id?: number;\n idUser?: number | null;\n isMerged?: boolean;\n budgeaDocumentId?: number | null;\n bankFileId?: string | null;\n emissionDate?: Date | null;\n totalTaxIncluded?: number | null;\n totalTaxExcluded?: number | null;\n isMobile: boolean;\n internComment?: string | null;\n invoiceNumber?: string | null;\n idAccountingTransaction?: number | null;\n idEstimateInvoice?: number | null;\n idAccountingFileType: number;\n idThirdParty?: number | null;\n idSociety: number;\n idFile: number;\n idEInvoicing?: number | null;\n createdAt?: Date | null;\n updatedAt?: Date | null;\n deletedAt?: Date | null;\n idFileType?: number | null;\n isVerified?: boolean;\n toVerify?: boolean;\n\n // Associations\n accountingTransaction?: IAccountingTransaction;\n estimatesInvoice?: IEstimateInvoice;\n accountingFileType?: IAccountingFileType;\n fileType?: IFileType;\n file?: IFile;\n society?: ISociety;\n thirdParty?: IThirdParty | null;\n eInvoicing?: IEInvoicing | null;\n}\n"]}
|
|
@@ -231,10 +231,10 @@ export function checkCommercialDocumentInformation(payload) {
|
|
|
231
231
|
value: payload.idCountry,
|
|
232
232
|
error: 'Le pays du vendeur est obligatoire.',
|
|
233
233
|
},
|
|
234
|
-
{
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
},
|
|
234
|
+
// {
|
|
235
|
+
// value: payload.settings?.mailContact,
|
|
236
|
+
// error: 'L’email du vendeur est obligatoire.',
|
|
237
|
+
// },
|
|
238
238
|
// Customer
|
|
239
239
|
{
|
|
240
240
|
value: payload.thirdParty.company ?? payload.thirdParty.fullname ?? 'NA',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\nimport {\n ReadCommercialDocumentTemplate,\n ReadDocumentEditing,\n ReadVatEditing,\n} from '../../types/Interface/api/commercialManagement/Read.js';\nimport {\n AccountingCategoryList,\n CommercialVatMentionList,\n FontIds,\n fontList,\n InvoiceLanguage,\n} from '../../types/Enum/CommercialManagement.js';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice.js';\nimport { Vat } from '../../types/Enum/Vat.js';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount.js';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common.js';\nimport { bodyTemplate } from './templates/body.js';\nimport { productToReadProductEditing } from './product.js';\nimport { getById, vatToReadVatEditing } from './vat.js';\nimport {\n CreateInvoiceDocument,\n CreateMailHeader,\n CreatePreSaleDocument,\n ReadCommercialMailTemplate,\n} from '../../types/index.js';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty.js';\nimport { getBrandConfig } from '../brands.js';\nimport { internationalizationChoices, internationalizationConsistency } from './internationalization/choices.js';\nimport ejs from 'ejs';\nimport 'dayjs/locale/fr.js';\nimport { orderBy, groupBy, sumBy, round, uniq } from 'lodash-es';\nimport sanitize from 'sanitize-html';\n\ntype brandColorType = {\n primary: string;\n primary50: string;\n primary100: string;\n primary300: string;\n primary500: string;\n primary700: string;\n};\n\nexport function generateCommercialDocument(\n idEstimateInvoiceType: EstimateInvoiceType,\n payload: CreateInvoiceDocument | CreatePreSaleDocument,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialDocumentTemplate {\n const products = orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = orderBy(\n Object.values(groupBy(products, 'vatFormatted')).map((v) => vatToReadVatEditing(v), 'value'),\n ).filter((v) => v.id !== Vat.MARGE.id);\n\n const thirdParty = thirdPartyToReadThirdPartyEditing(payload.thirdParty);\n\n let forcedVats: ReadVatEditing[] | undefined = undefined;\n\n if (payload.advanceProducts?.length) {\n const advanceVats = Object.values(groupBy(payload.advanceProducts, 'vatFormatted'))\n .map((v) => vatToReadVatEditing(v), 'value')\n .filter((v) => v.id !== Vat.MARGE.id);\n\n forcedVats = vats.map((v) => {\n const base = v.base - (advanceVats.find((a) => a.id === v.id)?.base ?? 0);\n const toPay = v.toPay - (advanceVats.find((a) => a.id === v.id)?.toPay ?? 0);\n return {\n ...v,\n baseFormatted: integerToFormattedAmountString(base),\n amountFormatted: integerToFormattedAmountString(toPay),\n };\n });\n }\n\n const totalVats = sumBy(vats, (v) => round(v.amount));\n const totalTaxExcluded = sumBy(products, (p) => round(p.totalTaxExcluded));\n\n const totalTaxIncluded = totalTaxExcluded + totalVats;\n\n const locale = payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n\n const accountingCategory = AccountingCategoryList.find((a) => a.id === payload.accountingCategory)?.label ?? null;\n\n const recoveryCost = payload.recoveryCost;\n const data: ReadDocumentEditing & { brandColors: brandColorType; brandName: string; shouldHideBrandName: boolean } = {\n ...payload,\n thirdParty,\n paymentLink: payload.paymentLink ?? '#',\n idEstimateInvoiceType,\n title: payload.title ?? null,\n penalties: payload.penalties\n ? (internationalizationConsistency(locale, payload.penalties, 'penalties') ?? payload.penalties)\n : null,\n termsOfPayment: payload.termsOfPayment\n ? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ?? payload.termsOfPayment)\n : null,\n recoveryCost: recoveryCost\n ? (internationalizationConsistency(locale, recoveryCost, 'recoveryCost') ?? recoveryCost)\n : null,\n discount: payload.discount\n ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? payload.discount)\n : null,\n vatMention: payload.vatMention\n ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? payload.vatMention)\n : null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: totalTaxExcluded,\n totalTaxIncluded: round(totalTaxIncluded),\n totalTaxAndDiscountIncluded: round(totalTaxIncluded),\n generalDiscountFormatted: payload.generalDiscount2\n ? integerToFormattedAmountString(payload.generalDiscount2)\n : null,\n depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,\n totalTaxExcludedFormatted: integerToFormattedAmountString(totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(\n totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0),\n ),\n totalVatAmountFormatted: integerToFormattedAmountString(totalVats),\n font: {\n id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,\n name: fontList.find((f) => f.id === payload.settings?.idFont)?.name ?? fontList[0].name,\n url: fontList.find((f) => f.id === payload.settings?.idFont)?.link ?? fontList[0].link,\n },\n capitalFormatted: payload.capital\n ? `${payload.capital}`\n .split('')\n .reduceRight((acc, char, i, { length }) => `${char}${(length - (i + 1)) % 3 === 0 ? ' ' : ''}${acc}`, '')\n .trim()\n : null,\n dueDateFormatted: payload.dueDate ? dayjs(payload.dueDate).format('DD/MM/YYYY') : null,\n expirationDateFormatted: payload.expirationDate ? dayjs(payload.expirationDate).format('DD/MM/YYYY') : null,\n emissionDateFormatted: payload.emissionDate ? dayjs(payload.emissionDate).format('DD/MM/YYYY') : null,\n shouldDisplayDiscountColumn: !!products.find((p) => p.discount2 && p.discount2 > 0),\n // @ts-ignore\n marginVats: uniq(products.filter((p) => p.marginVatFormatted !== null).map((p) => p.marginVatFormatted)),\n accountingCategoryFormatted: accountingCategory\n ? (internationalizationConsistency(locale, accountingCategory, 'accountingCategory') ?? null)\n : null,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv }) as unknown as string}`,\n shouldHideBrandName,\n addressComplement: payload.addressComplement ?? null,\n paymentType: payload.paymentType\n ? (internationalizationConsistency(locale, payload.paymentType, 'paymentType') ?? payload.paymentType)\n : null,\n languageTemplate: languageOption,\n };\n\n const commonTemplate = new CommercialDocumentCommonHTML();\n const documentFreeText = [EstimateInvoiceType.DEVIS, EstimateInvoiceType.BON].includes(idEstimateInvoiceType)\n ? payload?.settings?.freeEstimateText\n : payload?.settings?.freeInvoiceText;\n\n return {\n header: ejs.render(commonTemplate.header, data),\n body: ejs.render(bodyTemplate, {\n ...data,\n comment:\n data.comment && typeof data.comment === 'string'\n ? sanitize(data.comment?.replace(/\\n/g, '<br/>'), { allowedTags: ['b', 'i', 'em', 'br', 'strong'] })\n : null,\n products: data.products.map((p) => ({\n ...p,\n comment:\n p.comment && typeof p.comment === 'string'\n ? sanitize(p.comment?.replace(/\\n/g, '<br/>'), { allowedTags: ['b', 'i', 'em', 'br', 'strong'] })\n : null,\n // @ts-expect-error\n unitFormatted: internationalizationConsistency(locale, p.unitFormatted, 'unit'),\n })),\n vats: forcedVats ?? vats,\n }),\n footer: ejs.render(commonTemplate.footer, {\n ...data,\n freeText: documentFreeText ?? null,\n }),\n data,\n };\n}\n\nexport function generateMailHeader(\n params: CreateMailHeader,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialMailTemplate {\n const locale = params.payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n dayjs.locale('fr');\n const data = {\n ...params.payload,\n totalTaxExcludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded),\n totalVatFormatted: integerToFormattedAmountObject(\n params.payload.totalTaxIncluded - params.payload.totalTaxExcluded,\n ),\n dueDateFormatted: params.payload.dueDate ? dayjs(params.payload.dueDate).format('DD MMMM YYYY') : null,\n hasVat: params.hasVat,\n hostS3: params.hostS3,\n logoUrl: params.logoUrl,\n companyName: params.companyName,\n fileUrl: params.fileUrl,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n shouldHideBrandName,\n languageMail: languageOption,\n };\n\n const mailTemplate = new CommercialDocumentMailHTML();\n\n return {\n header: ejs.render(mailTemplate.header, data),\n };\n}\n\nfunction isMissing(value: unknown): boolean {\n if (value === null || value === undefined) return true;\n if (typeof value === 'string') return value.trim().length === 0;\n if (Array.isArray(value)) return value.length === 0;\n return false;\n}\n\n/**\n * @description Si cette fonction est modifiée, penser à check si la fonction `checkErrors` de `emission.service.ts` du core doit être modifiée aussi\n */\nexport function checkCommercialDocumentInformation(payload: CreateInvoiceDocument | CreatePreSaleDocument): {\n valid: boolean;\n errors?: string[];\n} {\n const errors: string[] = [];\n\n const products = orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = orderBy(\n Object.values(groupBy(products, 'vatFormatted')).map((v) => vatToReadVatEditing(v), 'value'),\n ).filter((v) => v.id !== Vat.MARGE.id);\n\n const totalVats = sumBy(vats, (v) => round(v.amount));\n const totalTaxExcluded = sumBy(products, (p) => round(p.totalTaxExcluded));\n const totalTaxIncluded = round(totalTaxExcluded + totalVats);\n\n const requiredData: Array<{ value: unknown; error: string }> = [\n // Invoice\n { value: payload.reference, error: 'Le numéro de facture est obligatoire.' },\n { value: payload.idEstimateInvoiceType, error: 'Le type de document est obligatoire.' },\n { value: payload.emissionDate, error: 'La date d’émission est obligatoire.' },\n // Items\n ...products.flatMap((product, index) => {\n const productLabel = product.itemSaleName?.trim() ? `\"${product.itemSaleName}\"` : `à la ligne ${index + 1}`;\n\n return [\n {\n value: product.itemSaleName,\n error: `Le nom de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.priceTaxExcluded,\n error: `Le prix net de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.quantity,\n error: `La quantité de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.unit,\n error: `Le code EN 16931 de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.idVat,\n error: `Le type de TVA de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.totalTaxExcluded,\n error: `Le montant net de l'article ${productLabel} est obligatoire.`,\n },\n ];\n }),\n // Seller\n { value: payload.name, error: 'Le nom du vendeur est obligatoire.' },\n { value: payload.siren, error: 'Le SIREN du vendeur est obligatoire.' },\n {\n value: payload.zipCode,\n error: 'Le code postal du vendeur est obligatoire.',\n },\n {\n value: payload.street,\n error: 'L’adresse du vendeur est obligatoire.',\n },\n {\n value: payload.city,\n error: 'La ville du vendeur est obligatoire.',\n },\n {\n value: payload.idCountry,\n error: 'Le pays du vendeur est obligatoire.',\n },\n {\n value: payload.settings?.mailContact,\n error: 'L’email du vendeur est obligatoire.',\n },\n // Customer\n {\n value: payload.thirdParty.company ?? payload.thirdParty.fullname ?? 'NA',\n error: 'Le nom de l’acheteur est obligatoire.',\n },\n {\n value: payload.thirdParty?.idCountry,\n error: 'Le pays de l’acheteur est obligatoire.',\n },\n // Vats\n ...vats.flatMap((vat, index) => [\n {\n value: vat.amount,\n error: `Le montant de TVA à la ligne ${index + 1} est obligatoire.`,\n },\n {\n value: vat.base,\n error: `La base d’imposition de la TVA à la ligne ${index + 1} est obligatoire.`,\n },\n {\n value: vat.value,\n error: `Le type de TVA à la ligne ${index + 1} est obligatoire.`,\n },\n ]),\n // Totals\n { value: totalTaxExcluded, error: 'Le montant total hors taxe est obligatoire.' },\n {\n value: totalTaxExcluded,\n error: 'La somme du montant net des lignes est obligatoire.',\n },\n { value: totalVats, error: 'Le montant total de TVA est obligatoire.' },\n {\n value: totalTaxIncluded,\n error: 'Le montant total TTC est obligatoire.',\n },\n ];\n\n // Check des mentions de tva\n const vatType = CommercialVatMentionList.find((v) => v.value === payload.vatMention)?.taxType ?? 'standard';\n\n // Si le type de tva est margin, autoliquidation, export ou exempt,\n // aucun produit ne doit avoir de tva > 0\n if (['margin', 'autoliquidation', 'export', 'exempt'].includes(vatType)) {\n for (const product of products) {\n if (getById(product.idVat)?.value !== 0) {\n errors.push(`L'article ${product.itemSaleName} a une TVA non nulle alors que le type de TVA est ${vatType}.`);\n }\n }\n }\n\n errors.push(...requiredData.filter((data) => isMissing(data.value)).map((data) => data.error));\n\n return { valid: errors.length === 0, errors: errors.length > 0 ? errors : undefined };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\nimport {\n ReadCommercialDocumentTemplate,\n ReadDocumentEditing,\n ReadVatEditing,\n} from '../../types/Interface/api/commercialManagement/Read.js';\nimport {\n AccountingCategoryList,\n CommercialVatMentionList,\n FontIds,\n fontList,\n InvoiceLanguage,\n} from '../../types/Enum/CommercialManagement.js';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice.js';\nimport { Vat } from '../../types/Enum/Vat.js';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount.js';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common.js';\nimport { bodyTemplate } from './templates/body.js';\nimport { productToReadProductEditing } from './product.js';\nimport { getById, vatToReadVatEditing } from './vat.js';\nimport {\n CreateInvoiceDocument,\n CreateMailHeader,\n CreatePreSaleDocument,\n ReadCommercialMailTemplate,\n} from '../../types/index.js';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty.js';\nimport { getBrandConfig } from '../brands.js';\nimport { internationalizationChoices, internationalizationConsistency } from './internationalization/choices.js';\nimport ejs from 'ejs';\nimport 'dayjs/locale/fr.js';\nimport { orderBy, groupBy, sumBy, round, uniq } from 'lodash-es';\nimport sanitize from 'sanitize-html';\n\ntype brandColorType = {\n primary: string;\n primary50: string;\n primary100: string;\n primary300: string;\n primary500: string;\n primary700: string;\n};\n\nexport function generateCommercialDocument(\n idEstimateInvoiceType: EstimateInvoiceType,\n payload: CreateInvoiceDocument | CreatePreSaleDocument,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialDocumentTemplate {\n const products = orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = orderBy(\n Object.values(groupBy(products, 'vatFormatted')).map((v) => vatToReadVatEditing(v), 'value'),\n ).filter((v) => v.id !== Vat.MARGE.id);\n\n const thirdParty = thirdPartyToReadThirdPartyEditing(payload.thirdParty);\n\n let forcedVats: ReadVatEditing[] | undefined = undefined;\n\n if (payload.advanceProducts?.length) {\n const advanceVats = Object.values(groupBy(payload.advanceProducts, 'vatFormatted'))\n .map((v) => vatToReadVatEditing(v), 'value')\n .filter((v) => v.id !== Vat.MARGE.id);\n\n forcedVats = vats.map((v) => {\n const base = v.base - (advanceVats.find((a) => a.id === v.id)?.base ?? 0);\n const toPay = v.toPay - (advanceVats.find((a) => a.id === v.id)?.toPay ?? 0);\n return {\n ...v,\n baseFormatted: integerToFormattedAmountString(base),\n amountFormatted: integerToFormattedAmountString(toPay),\n };\n });\n }\n\n const totalVats = sumBy(vats, (v) => round(v.amount));\n const totalTaxExcluded = sumBy(products, (p) => round(p.totalTaxExcluded));\n\n const totalTaxIncluded = totalTaxExcluded + totalVats;\n\n const locale = payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n\n const accountingCategory = AccountingCategoryList.find((a) => a.id === payload.accountingCategory)?.label ?? null;\n\n const recoveryCost = payload.recoveryCost;\n const data: ReadDocumentEditing & { brandColors: brandColorType; brandName: string; shouldHideBrandName: boolean } = {\n ...payload,\n thirdParty,\n paymentLink: payload.paymentLink ?? '#',\n idEstimateInvoiceType,\n title: payload.title ?? null,\n penalties: payload.penalties\n ? (internationalizationConsistency(locale, payload.penalties, 'penalties') ?? payload.penalties)\n : null,\n termsOfPayment: payload.termsOfPayment\n ? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ?? payload.termsOfPayment)\n : null,\n recoveryCost: recoveryCost\n ? (internationalizationConsistency(locale, recoveryCost, 'recoveryCost') ?? recoveryCost)\n : null,\n discount: payload.discount\n ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? payload.discount)\n : null,\n vatMention: payload.vatMention\n ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? payload.vatMention)\n : null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: totalTaxExcluded,\n totalTaxIncluded: round(totalTaxIncluded),\n totalTaxAndDiscountIncluded: round(totalTaxIncluded),\n generalDiscountFormatted: payload.generalDiscount2\n ? integerToFormattedAmountString(payload.generalDiscount2)\n : null,\n depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,\n totalTaxExcludedFormatted: integerToFormattedAmountString(totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(\n totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0),\n ),\n totalVatAmountFormatted: integerToFormattedAmountString(totalVats),\n font: {\n id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,\n name: fontList.find((f) => f.id === payload.settings?.idFont)?.name ?? fontList[0].name,\n url: fontList.find((f) => f.id === payload.settings?.idFont)?.link ?? fontList[0].link,\n },\n capitalFormatted: payload.capital\n ? `${payload.capital}`\n .split('')\n .reduceRight((acc, char, i, { length }) => `${char}${(length - (i + 1)) % 3 === 0 ? ' ' : ''}${acc}`, '')\n .trim()\n : null,\n dueDateFormatted: payload.dueDate ? dayjs(payload.dueDate).format('DD/MM/YYYY') : null,\n expirationDateFormatted: payload.expirationDate ? dayjs(payload.expirationDate).format('DD/MM/YYYY') : null,\n emissionDateFormatted: payload.emissionDate ? dayjs(payload.emissionDate).format('DD/MM/YYYY') : null,\n shouldDisplayDiscountColumn: !!products.find((p) => p.discount2 && p.discount2 > 0),\n // @ts-ignore\n marginVats: uniq(products.filter((p) => p.marginVatFormatted !== null).map((p) => p.marginVatFormatted)),\n accountingCategoryFormatted: accountingCategory\n ? (internationalizationConsistency(locale, accountingCategory, 'accountingCategory') ?? null)\n : null,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv }) as unknown as string}`,\n shouldHideBrandName,\n addressComplement: payload.addressComplement ?? null,\n paymentType: payload.paymentType\n ? (internationalizationConsistency(locale, payload.paymentType, 'paymentType') ?? payload.paymentType)\n : null,\n languageTemplate: languageOption,\n };\n\n const commonTemplate = new CommercialDocumentCommonHTML();\n const documentFreeText = [EstimateInvoiceType.DEVIS, EstimateInvoiceType.BON].includes(idEstimateInvoiceType)\n ? payload?.settings?.freeEstimateText\n : payload?.settings?.freeInvoiceText;\n\n return {\n header: ejs.render(commonTemplate.header, data),\n body: ejs.render(bodyTemplate, {\n ...data,\n comment:\n data.comment && typeof data.comment === 'string'\n ? sanitize(data.comment?.replace(/\\n/g, '<br/>'), { allowedTags: ['b', 'i', 'em', 'br', 'strong'] })\n : null,\n products: data.products.map((p) => ({\n ...p,\n comment:\n p.comment && typeof p.comment === 'string'\n ? sanitize(p.comment?.replace(/\\n/g, '<br/>'), { allowedTags: ['b', 'i', 'em', 'br', 'strong'] })\n : null,\n // @ts-expect-error\n unitFormatted: internationalizationConsistency(locale, p.unitFormatted, 'unit'),\n })),\n vats: forcedVats ?? vats,\n }),\n footer: ejs.render(commonTemplate.footer, {\n ...data,\n freeText: documentFreeText ?? null,\n }),\n data,\n };\n}\n\nexport function generateMailHeader(\n params: CreateMailHeader,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialMailTemplate {\n const locale = params.payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n dayjs.locale('fr');\n const data = {\n ...params.payload,\n totalTaxExcludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded),\n totalVatFormatted: integerToFormattedAmountObject(\n params.payload.totalTaxIncluded - params.payload.totalTaxExcluded,\n ),\n dueDateFormatted: params.payload.dueDate ? dayjs(params.payload.dueDate).format('DD MMMM YYYY') : null,\n hasVat: params.hasVat,\n hostS3: params.hostS3,\n logoUrl: params.logoUrl,\n companyName: params.companyName,\n fileUrl: params.fileUrl,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n shouldHideBrandName,\n languageMail: languageOption,\n };\n\n const mailTemplate = new CommercialDocumentMailHTML();\n\n return {\n header: ejs.render(mailTemplate.header, data),\n };\n}\n\nfunction isMissing(value: unknown): boolean {\n if (value === null || value === undefined) return true;\n if (typeof value === 'string') return value.trim().length === 0;\n if (Array.isArray(value)) return value.length === 0;\n return false;\n}\n\n/**\n * @description Si cette fonction est modifiée, penser à check si la fonction `checkErrors` de `emission.service.ts` du core doit être modifiée aussi\n */\nexport function checkCommercialDocumentInformation(payload: CreateInvoiceDocument | CreatePreSaleDocument): {\n valid: boolean;\n errors?: string[];\n} {\n const errors: string[] = [];\n\n const products = orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = orderBy(\n Object.values(groupBy(products, 'vatFormatted')).map((v) => vatToReadVatEditing(v), 'value'),\n ).filter((v) => v.id !== Vat.MARGE.id);\n\n const totalVats = sumBy(vats, (v) => round(v.amount));\n const totalTaxExcluded = sumBy(products, (p) => round(p.totalTaxExcluded));\n const totalTaxIncluded = round(totalTaxExcluded + totalVats);\n\n const requiredData: Array<{ value: unknown; error: string }> = [\n // Invoice\n { value: payload.reference, error: 'Le numéro de facture est obligatoire.' },\n { value: payload.idEstimateInvoiceType, error: 'Le type de document est obligatoire.' },\n { value: payload.emissionDate, error: 'La date d’émission est obligatoire.' },\n // Items\n ...products.flatMap((product, index) => {\n const productLabel = product.itemSaleName?.trim() ? `\"${product.itemSaleName}\"` : `à la ligne ${index + 1}`;\n\n return [\n {\n value: product.itemSaleName,\n error: `Le nom de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.priceTaxExcluded,\n error: `Le prix net de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.quantity,\n error: `La quantité de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.unit,\n error: `Le code EN 16931 de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.idVat,\n error: `Le type de TVA de l'article ${productLabel} est obligatoire.`,\n },\n {\n value: product.totalTaxExcluded,\n error: `Le montant net de l'article ${productLabel} est obligatoire.`,\n },\n ];\n }),\n // Seller\n { value: payload.name, error: 'Le nom du vendeur est obligatoire.' },\n { value: payload.siren, error: 'Le SIREN du vendeur est obligatoire.' },\n {\n value: payload.zipCode,\n error: 'Le code postal du vendeur est obligatoire.',\n },\n {\n value: payload.street,\n error: 'L’adresse du vendeur est obligatoire.',\n },\n {\n value: payload.city,\n error: 'La ville du vendeur est obligatoire.',\n },\n {\n value: payload.idCountry,\n error: 'Le pays du vendeur est obligatoire.',\n },\n // {\n // value: payload.settings?.mailContact,\n // error: 'L’email du vendeur est obligatoire.',\n // },\n // Customer\n {\n value: payload.thirdParty.company ?? payload.thirdParty.fullname ?? 'NA',\n error: 'Le nom de l’acheteur est obligatoire.',\n },\n {\n value: payload.thirdParty?.idCountry,\n error: 'Le pays de l’acheteur est obligatoire.',\n },\n // Vats\n ...vats.flatMap((vat, index) => [\n {\n value: vat.amount,\n error: `Le montant de TVA à la ligne ${index + 1} est obligatoire.`,\n },\n {\n value: vat.base,\n error: `La base d’imposition de la TVA à la ligne ${index + 1} est obligatoire.`,\n },\n {\n value: vat.value,\n error: `Le type de TVA à la ligne ${index + 1} est obligatoire.`,\n },\n ]),\n // Totals\n { value: totalTaxExcluded, error: 'Le montant total hors taxe est obligatoire.' },\n {\n value: totalTaxExcluded,\n error: 'La somme du montant net des lignes est obligatoire.',\n },\n { value: totalVats, error: 'Le montant total de TVA est obligatoire.' },\n {\n value: totalTaxIncluded,\n error: 'Le montant total TTC est obligatoire.',\n },\n ];\n\n // Check des mentions de tva\n const vatType = CommercialVatMentionList.find((v) => v.value === payload.vatMention)?.taxType ?? 'standard';\n\n // Si le type de tva est margin, autoliquidation, export ou exempt,\n // aucun produit ne doit avoir de tva > 0\n if (['margin', 'autoliquidation', 'export', 'exempt'].includes(vatType)) {\n for (const product of products) {\n if (getById(product.idVat)?.value !== 0) {\n errors.push(`L'article ${product.itemSaleName} a une TVA non nulle alors que le type de TVA est ${vatType}.`);\n }\n }\n }\n\n errors.push(...requiredData.filter((data) => isMissing(data.value)).map((data) => data.error));\n\n return { valid: errors.length === 0, errors: errors.length > 0 ? errors : undefined };\n}\n"]}
|
package/package.json
CHANGED
|
@@ -15,21 +15,94 @@ export enum EInvoicingStatusCode {
|
|
|
15
15
|
REJECTED = 14, // Rejetée
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
export const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
[EInvoicingStatusCode.
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
[EInvoicingStatusCode.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
18
|
+
export const EInvoicingStatusCodeMetadata: Record<
|
|
19
|
+
EInvoicingStatusCode,
|
|
20
|
+
{ shortLabel: string; label: string; color: string; description?: string }
|
|
21
|
+
> = {
|
|
22
|
+
[EInvoicingStatusCode.DEPOSITED]: {
|
|
23
|
+
shortLabel: 'Déposée',
|
|
24
|
+
label: 'Déposée',
|
|
25
|
+
color: 'cerulean',
|
|
26
|
+
description: 'Facture déposée et contrôles techniques validés.',
|
|
27
|
+
},
|
|
28
|
+
[EInvoicingStatusCode.ISSUED]: {
|
|
29
|
+
shortLabel: 'Émise',
|
|
30
|
+
label: 'Émise par la plateforme',
|
|
31
|
+
color: 'success',
|
|
32
|
+
description: 'Facture transmise au réseau de facturation.',
|
|
33
|
+
},
|
|
34
|
+
[EInvoicingStatusCode.RECEIVED]: {
|
|
35
|
+
shortLabel: 'Reçue',
|
|
36
|
+
label: 'Reçue de la plateforme',
|
|
37
|
+
color: 'success',
|
|
38
|
+
description: 'Facture reçue par la plateforme du destinataire.',
|
|
39
|
+
},
|
|
40
|
+
[EInvoicingStatusCode.MADE_AVAILABLE]: {
|
|
41
|
+
shortLabel: 'Mise à disposition',
|
|
42
|
+
label: 'Mise à disposition',
|
|
43
|
+
color: 'fire',
|
|
44
|
+
description: 'Facture disponible pour le destinataire.',
|
|
45
|
+
},
|
|
46
|
+
[EInvoicingStatusCode.HANDLED]: {
|
|
47
|
+
shortLabel: 'Prise en charge',
|
|
48
|
+
label: 'Prise en charge',
|
|
49
|
+
color: 'fire',
|
|
50
|
+
description: 'Facture en cours de traitement par le destinataire.',
|
|
51
|
+
},
|
|
52
|
+
[EInvoicingStatusCode.APPROVED]: {
|
|
53
|
+
shortLabel: 'Approuvée',
|
|
54
|
+
label: 'Approuvée',
|
|
55
|
+
color: 'success',
|
|
56
|
+
description: 'Facture entièrement acceptée.',
|
|
57
|
+
},
|
|
58
|
+
[EInvoicingStatusCode.PARTIALLY_APPROVED]: {
|
|
59
|
+
shortLabel: 'Approbation partielle',
|
|
60
|
+
label: 'Approbation partielle',
|
|
61
|
+
color: 'error',
|
|
62
|
+
description: 'Facture partiellement acceptée.',
|
|
63
|
+
},
|
|
64
|
+
[EInvoicingStatusCode.IN_DISPUTE]: {
|
|
65
|
+
shortLabel: 'En litige',
|
|
66
|
+
label: 'En litige',
|
|
67
|
+
color: 'error',
|
|
68
|
+
description: 'Facture contestée par le destinataire.',
|
|
69
|
+
},
|
|
70
|
+
[EInvoicingStatusCode.SUSPENDED]: {
|
|
71
|
+
shortLabel: 'Suspendue',
|
|
72
|
+
label: 'Suspendue',
|
|
73
|
+
color: 'error',
|
|
74
|
+
description: 'Traitement suspendu, informations attendues.',
|
|
75
|
+
},
|
|
76
|
+
[EInvoicingStatusCode.COMPLETED]: {
|
|
77
|
+
shortLabel: 'Complétée',
|
|
78
|
+
label: 'Complétée',
|
|
79
|
+
color: 'fire',
|
|
80
|
+
description: 'Informations complémentaires transmises.',
|
|
81
|
+
},
|
|
82
|
+
[EInvoicingStatusCode.REFUSED]: {
|
|
83
|
+
shortLabel: 'Refusée',
|
|
84
|
+
label: 'Refusée',
|
|
85
|
+
color: 'error',
|
|
86
|
+
description: 'Facture refusée par le destinataire.',
|
|
87
|
+
},
|
|
88
|
+
[EInvoicingStatusCode.PAYMENT_TRANSMITTED]: {
|
|
89
|
+
shortLabel: 'Paiement transmis',
|
|
90
|
+
label: 'Paiement transmis',
|
|
91
|
+
color: 'success',
|
|
92
|
+
description: 'Paiement déclaré par le destinataire.',
|
|
93
|
+
},
|
|
94
|
+
[EInvoicingStatusCode.PAID]: {
|
|
95
|
+
shortLabel: 'Encaissée',
|
|
96
|
+
label: 'Encaissée',
|
|
97
|
+
color: 'success',
|
|
98
|
+
description: 'Paiement reçu et confirmé.',
|
|
99
|
+
},
|
|
100
|
+
[EInvoicingStatusCode.REJECTED]: {
|
|
101
|
+
shortLabel: 'Rejetée',
|
|
102
|
+
label: 'Rejetée',
|
|
103
|
+
color: 'error',
|
|
104
|
+
description: 'Facture rejetée, correction nécessaire.',
|
|
105
|
+
},
|
|
33
106
|
};
|
|
34
107
|
|
|
35
108
|
export const EInvoicingStatusCodeDocoon: Record<EInvoicingStatusCode, number> = {
|
|
@@ -10,6 +10,7 @@ import { InternationalizationChoices } from '../../../../utils/commercialManagem
|
|
|
10
10
|
import { ISaleEmail } from '../../models/ISaleEmail.js';
|
|
11
11
|
import { CountryId } from '#types/Enum/Country.js';
|
|
12
12
|
import { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';
|
|
13
|
+
import { EInvoicingReasonTypeCode } from '#types/Enum/EInvoicingReasonType.js';
|
|
13
14
|
|
|
14
15
|
export type ReadCashBasedInvoice = Partial<IAccountingFile>;
|
|
15
16
|
|
|
@@ -242,7 +243,7 @@ export type ReadEInvoice = {
|
|
|
242
243
|
category: 'FLUX1' | 'FLUX2' | 'FLUX3' | 'FLUX4' | 'FLUX5' | 'FLUX6';
|
|
243
244
|
name: string;
|
|
244
245
|
status: EInvoicingFLowStatus;
|
|
245
|
-
statusDetails: Array<{ code:
|
|
246
|
+
statusDetails: Array<{ code: EInvoicingReasonTypeCode; description: string; fullDescription: string }>;
|
|
246
247
|
updatedAt: string;
|
|
247
248
|
submittedAt: string;
|
|
248
249
|
documentStatus: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EInvoicingReasonTypeCode } from '#types/Enum/EInvoicingReasonType.js';
|
|
1
2
|
import { EInvoicingFLowStatus } from '#types/Enum/EInvoicingStatusCode.js';
|
|
2
3
|
|
|
3
4
|
export type DocoonInvoice = {
|
|
@@ -195,7 +196,7 @@ export type DocoonFlowAcknowledgement = {
|
|
|
195
196
|
export type DocoonFlowAcknowledgementDetails = {
|
|
196
197
|
level: string | null;
|
|
197
198
|
item: string | null;
|
|
198
|
-
reasonCode:
|
|
199
|
+
reasonCode: EInvoicingReasonTypeCode | null;
|
|
199
200
|
reasonMessage: string | null;
|
|
200
201
|
fullMessage: string | null;
|
|
201
202
|
};
|
|
@@ -19,6 +19,7 @@ export class IAccountingFile {
|
|
|
19
19
|
totalTaxExcluded?: number | null;
|
|
20
20
|
isMobile: boolean;
|
|
21
21
|
internComment?: string | null;
|
|
22
|
+
invoiceNumber?: string | null;
|
|
22
23
|
idAccountingTransaction?: number | null;
|
|
23
24
|
idEstimateInvoice?: number | null;
|
|
24
25
|
idAccountingFileType: number;
|
|
@@ -297,10 +297,10 @@ export function checkCommercialDocumentInformation(payload: CreateInvoiceDocumen
|
|
|
297
297
|
value: payload.idCountry,
|
|
298
298
|
error: 'Le pays du vendeur est obligatoire.',
|
|
299
299
|
},
|
|
300
|
-
{
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
},
|
|
300
|
+
// {
|
|
301
|
+
// value: payload.settings?.mailContact,
|
|
302
|
+
// error: 'L’email du vendeur est obligatoire.',
|
|
303
|
+
// },
|
|
304
304
|
// Customer
|
|
305
305
|
{
|
|
306
306
|
value: payload.thirdParty.company ?? payload.thirdParty.fullname ?? 'NA',
|