@silexpert/core 1.1.28 → 1.1.30
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/es/types/Interface/api/cerfa/3310.d.ts.map +1 -1
- package/es/types/Interface/api/cerfa/3310.js.map +1 -1
- package/es/utils/vat/3310/century23.d.ts +2 -1
- package/es/utils/vat/3310/century23.d.ts.map +1 -1
- package/es/utils/vat/3310/century23.js +26 -4
- package/es/utils/vat/3310/century23.js.map +1 -1
- package/es/utils/vat/3517/century23.js +3 -3
- package/es/utils/vat/3517/century23.js.map +1 -1
- package/es/utils/vat/utils.d.ts +1 -1
- package/es/utils/vat/utils.d.ts.map +1 -1
- package/es/utils/vat/utils.js +3 -3
- package/es/utils/vat/utils.js.map +1 -1
- package/js/types/Interface/api/cerfa/3310.js.map +1 -1
- package/js/utils/vat/3310/century23.js +25 -3
- package/js/utils/vat/3310/century23.js.map +1 -1
- package/js/utils/vat/3517/century23.js +3 -3
- package/js/utils/vat/3517/century23.js.map +1 -1
- package/js/utils/vat/utils.js +3 -3
- package/js/utils/vat/utils.js.map +1 -1
- package/package.json +1 -1
- package/ts/types/Interface/api/cerfa/3310.ts +1 -1
- package/ts/utils/vat/3310/century23.ts +26 -4
- package/ts/utils/vat/3517/century23.ts +3 -3
- package/ts/utils/vat/utils.ts +3 -3
package/es/utils/vat/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IAccountingEntry } from '../../types/Interface/models/IAccountingEntry';
|
|
2
|
-
export declare function getAmountByAccountNumber(accountingEntries: IAccountingEntry[], accountsNumber: string[], precision?: number,
|
|
2
|
+
export declare function getAmountByAccountNumber(accountingEntries: IAccountingEntry[], accountsNumber: string[], precision?: number, isAbs?: boolean): number;
|
|
3
3
|
export declare function getTaxAmountByAccountNumber(accountingEntries: IAccountingEntry[], accountsNumber: string[], precision?: number): number;
|
|
4
4
|
export declare function textFormatting(value: any, length?: number | null): string | null;
|
|
5
5
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/utils/vat/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAGjF,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/utils/vat/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAGjF,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,EAAE,KAAK,UAAQ,GAAG,MAAM,CAc9I;AAED,wBAAgB,2BAA2B,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,GAAG,MAAM,CAalI;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,MAAM,GAAG,IAAI,CActF"}
|
package/es/utils/vat/utils.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { round as _round, uniqBy as _uniqBy } from 'lodash';
|
|
2
2
|
import { Vat } from '../../types/Enum/Vat';
|
|
3
|
-
export function getAmountByAccountNumber(accountingEntries, accountsNumber, precision = 0,
|
|
3
|
+
export function getAmountByAccountNumber(accountingEntries, accountsNumber, precision = 0, isAbs = false) {
|
|
4
4
|
const accountingEntriesUniq = _uniqBy(accountingEntries, 'id');
|
|
5
5
|
const result = _round(accountingEntriesUniq.reduce((acc, accountingEntry) => {
|
|
6
6
|
let accTmp = acc;
|
|
7
7
|
accountsNumber.some((number) => {
|
|
8
8
|
if (accountingEntry.account && accountingEntry.account.number && accountingEntry.account.number.toString().startsWith(number)) {
|
|
9
|
-
accTmp +=
|
|
9
|
+
accTmp += accountingEntry.debit - accountingEntry.credit;
|
|
10
10
|
return true;
|
|
11
11
|
}
|
|
12
12
|
return false;
|
|
13
13
|
});
|
|
14
14
|
return accTmp;
|
|
15
15
|
}, 0), precision);
|
|
16
|
-
return result;
|
|
16
|
+
return isAbs ? Math.abs(result) : result;
|
|
17
17
|
}
|
|
18
18
|
export function getTaxAmountByAccountNumber(accountingEntries, accountsNumber, precision = 0) {
|
|
19
19
|
const accountingEntriesUniq = _uniqBy(accountingEntries, 'id');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../ts/utils/vat/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE5D,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3C,MAAM,UAAU,wBAAwB,CAAC,iBAAqC,EAAE,cAAwB,EAAE,SAAS,GAAG,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../ts/utils/vat/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { round as _round, uniqBy as _uniqBy } from 'lodash';\nimport { IAccountingEntry } from '../../types/Interface/models/IAccountingEntry';\nimport { Vat } from '../../types/Enum/Vat';\n\nexport function getAmountByAccountNumber(accountingEntries: IAccountingEntry[], accountsNumber: string[], precision = 0, isAbs = false): number {\n const accountingEntriesUniq = _uniqBy(accountingEntries, 'id');\n const result = _round(accountingEntriesUniq.reduce((acc, accountingEntry) => {\n let accTmp = acc;\n accountsNumber.some((number) => {\n if (accountingEntry.account && accountingEntry.account.number && accountingEntry.account.number.toString().startsWith(number)) {\n accTmp += accountingEntry.debit - accountingEntry.credit;\n return true;\n }\n return false;\n });\n return accTmp;\n }, 0), precision);\n return isAbs ? Math.abs(result) : result;\n}\n\nexport function getTaxAmountByAccountNumber(accountingEntries: IAccountingEntry[], accountsNumber: string[], precision = 0): number {\n const accountingEntriesUniq = _uniqBy(accountingEntries, 'id');\n return _round(accountingEntriesUniq.reduce((acc, accountingEntry) => {\n let accTmp = acc;\n accountsNumber.some((number) => {\n if (accountingEntry.account && accountingEntry.account.number && accountingEntry.account.number.toString().startsWith(number)) {\n accTmp += ((accountingEntry.debit - accountingEntry.credit) * (((Object.values(Vat).find((v) => v.id === accountingEntry.idVat)?.value ?? 0) / 100)));\n return true;\n }\n return false;\n });\n return accTmp;\n }, precision));\n}\n\nexport function textFormatting(value: any, length: number | null = null): string | null {\n if (value && typeof value === 'string') {\n let formattedValue = value.replace(/[\\u2018\\u2019]/g, '\\''); // Suppression des \"Curly Quotes\"\n formattedValue = formattedValue.replace(/&/g, ''); // Suppression des &\n formattedValue = formattedValue.replace(/!/g, ''); // Suppression des !\n formattedValue = formattedValue.replace(/[\\t]/g, ''); // Suppression des tabulations\n formattedValue = formattedValue.replace(/`/g, '\\''); // Suppression des `\n formattedValue = formattedValue.replace(/\"/g, ''); // Suppression des \"\n formattedValue = formattedValue.replace(/^ */, ''); // Suppression des espaces de début\n formattedValue = formattedValue.replace(/ *$/, ''); // Suppression des espaces de fin\n if (length) formattedValue = formattedValue.slice(0, length);\n return formattedValue;\n }\n return null;\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"3310.js","names":[],"sources":["../../../../../ts/types/Interface/api/cerfa/3310.ts"],"sourcesContent":["import { ISociety } from '../../models/ISociety';\nimport { ISocietyGescom } from '../../models/ISocietyGescom';\nimport { ServiceOfTax } from '../tax/ReadTax';\n\ntype BaseAndTax = {\n base: number;\n tax: number;\n};\n\ntype Tic = {\n credit?: number;\n refund?: number;\n imputed?: number;\n tax?: number;\n};\n\nexport interface Cerfa3310_2023 {\n declaration: {\n recipient: {\n name: string | null;\n address: {\n full: string;\n }\n numbers: {\n SIE: string | null;\n folder: string | null;\n key: string | null;\n period: string | null;\n CM: string | null;\n OPT: string | null;\n service: string | null;\n system: string | null;\n }\n }\n period: {\n start: {\n day: string;\n month: string;\n year: string;\n },\n end: {\n day: string;\n month: string;\n year: string;\n }\n },\n service: {\n address: {\n full: string | null;\n }\n },\n siret: {\n first: string | null;\n second: string | null;\n },\n intracommunityVat: {\n first: string | null;\n second: string | null;\n third: string | null;\n },\n comment: string | null;\n payment: {\n date: string | null;\n phone: string | null;\n isPayment: boolean;\n byImputation: boolean;\n }\n },\n isNil: boolean;\n untaxedOperations: {\n exportationNotInEurope: number;\n other: number;\n distanceSelling: number;\n import: number;\n withdrawSuspensiveRegime: number;\n importInSuspensiveSystem: number;\n intracommunityAcquisitions: number;\n intracommunityDelivery: number;\n energyDelivery: number;\n oilProductsConsumption: number;\n importPetrolInSuspensiveSystem: number;\n purchaseInFranchise: number;\n saleOfServicesNotInFrance: number;\n regularizations: number;\n internalUniq: number;\n },\n taxedOperations: {\n services: number;\n other: number;\n purchaseOfIntracommunityServiceProvision: number;\n import: number;\n withdrawSuspensiveRegime: number;\n releaseFromConsumption: number;\n intracommunityAcquisitions: number;\n energyDelivery: number;\n purchaseOfServicesNotInFrance: number;\n regularizations: number;\n },\n vat: {\n carrieredOutInFrance: {\n normalRate20: BaseAndTax,\n reduceRate5Dot5: BaseAndTax,\n reduceRate10: BaseAndTax,\n },\n overseasDepartment: {\n reduceRate8Dot5: BaseAndTax,\n reduceRate2Dot1: BaseAndTax\n },\n oilProducts: {\n normalRate20: BaseAndTax,\n reduceRate13: BaseAndTax\n },\n importations: {\n normalRate20: BaseAndTax,\n reduceRate10: BaseAndTax,\n reduceRate8Dot5: BaseAndTax,\n reduceRate5Dot5: BaseAndTax,\n reduceRate2Dot1: BaseAndTax,\n reduceRate1Dot05: BaseAndTax,\n },\n previouslyDeductedToBeReturned: {\n onOilProducts: number;\n otherThanOilProducts: number;\n total: number;\n },\n sumToAdd: number;\n grossDue: number;\n onIntracommunityAcquisition: number;\n toMonaco: number;\n deductible: {\n other: {\n oil: number;\n thanOilProducts: number;\n collected: number;\n total: number;\n }\n immobilizations: number;\n otherGoodsAndServices: number;\n report: number;\n toImpute: number;\n total: number;\n onImportOtherThanOilProducts: number;\n coefficient: number;\n onOilProducts: number;\n },\n otherRate: {\n oldRate: BaseAndTax,\n at1Dot75: BaseAndTax,\n at1Dot05: BaseAndTax,\n at10: BaseAndTax,\n atCorse2Dot1: BaseAndTax,\n atCorse0Dot9: BaseAndTax,\n at2Dot1: BaseAndTax,\n author: BaseAndTax,\n }\n },\n credit: {\n amount: number;\n refundAsked: number;\n transferedToSocietyHeadOfGroup: number;\n assimiledTaxes: number;\n toReport: number;\n ticRefund: number;\n ticTransfered: number;\n },\n toPay: {\n netDue: number;\n acquittedBySocietyHeadOfGroup: number;\n total: number;\n },\n isDGE: boolean;\n isUniq: boolean;\n tic?: {\n ticfe?: Tic,\n ticgn?: Tic,\n ticc?: Tic,\n total?: Tic,\n }
|
|
1
|
+
{"version":3,"file":"3310.js","names":[],"sources":["../../../../../ts/types/Interface/api/cerfa/3310.ts"],"sourcesContent":["import { ISociety } from '../../models/ISociety';\nimport { ISocietyGescom } from '../../models/ISocietyGescom';\nimport { ServiceOfTax } from '../tax/ReadTax';\n\ntype BaseAndTax = {\n base: number;\n tax: number;\n};\n\ntype Tic = {\n credit?: number;\n refund?: number;\n imputed?: number;\n tax?: number;\n};\n\nexport interface Cerfa3310_2023 {\n declaration: {\n recipient: {\n name: string | null;\n address: {\n full: string;\n }\n numbers: {\n SIE: string | null;\n folder: string | null;\n key: string | null;\n period: string | null;\n CM: string | null;\n OPT: string | null;\n service: string | null;\n system: string | null;\n }\n }\n period: {\n start: {\n day: string;\n month: string;\n year: string;\n },\n end: {\n day: string;\n month: string;\n year: string;\n }\n },\n service: {\n address: {\n full: string | null;\n }\n },\n siret: {\n first: string | null;\n second: string | null;\n },\n intracommunityVat: {\n first: string | null;\n second: string | null;\n third: string | null;\n },\n comment: string | null;\n payment: {\n date: string | null;\n phone: string | null;\n isPayment: boolean;\n byImputation: boolean;\n }\n },\n isNil: boolean;\n untaxedOperations: {\n exportationNotInEurope: number;\n other: number;\n distanceSelling: number;\n import: number;\n withdrawSuspensiveRegime: number;\n importInSuspensiveSystem: number;\n intracommunityAcquisitions: number;\n intracommunityDelivery: number;\n energyDelivery: number;\n oilProductsConsumption: number;\n importPetrolInSuspensiveSystem: number;\n purchaseInFranchise: number;\n saleOfServicesNotInFrance: number;\n regularizations: number;\n internalUniq: number;\n },\n taxedOperations: {\n services: number;\n other: number;\n purchaseOfIntracommunityServiceProvision: number;\n import: number;\n withdrawSuspensiveRegime: number;\n releaseFromConsumption: number;\n intracommunityAcquisitions: number;\n energyDelivery: number;\n purchaseOfServicesNotInFrance: number;\n regularizations: number;\n },\n vat: {\n carrieredOutInFrance: {\n normalRate20: BaseAndTax,\n reduceRate5Dot5: BaseAndTax,\n reduceRate10: BaseAndTax,\n },\n overseasDepartment: {\n reduceRate8Dot5: BaseAndTax,\n reduceRate2Dot1: BaseAndTax\n },\n oilProducts: {\n normalRate20: BaseAndTax,\n reduceRate13: BaseAndTax\n },\n importations: {\n normalRate20: BaseAndTax,\n reduceRate10: BaseAndTax,\n reduceRate8Dot5: BaseAndTax,\n reduceRate5Dot5: BaseAndTax,\n reduceRate2Dot1: BaseAndTax,\n reduceRate1Dot05: BaseAndTax,\n },\n previouslyDeductedToBeReturned: {\n onOilProducts: number;\n otherThanOilProducts: number;\n total: number;\n },\n sumToAdd: number;\n grossDue: number;\n onIntracommunityAcquisition: number;\n toMonaco: number;\n deductible: {\n other: {\n oil: number;\n thanOilProducts: number;\n collected: number;\n total: number;\n }\n immobilizations: number;\n otherGoodsAndServices: number;\n report: number;\n toImpute: number;\n total: number;\n onImportOtherThanOilProducts: number;\n coefficient: number;\n onOilProducts: number;\n },\n otherRate: {\n oldRate: BaseAndTax,\n at1Dot75: BaseAndTax,\n at1Dot05: BaseAndTax,\n at10: BaseAndTax,\n atCorse2Dot1: BaseAndTax,\n atCorse0Dot9: BaseAndTax,\n at2Dot1: BaseAndTax,\n author: BaseAndTax,\n }\n },\n credit: {\n amount: number;\n refundAsked: number;\n transferedToSocietyHeadOfGroup: number;\n assimiledTaxes: number;\n toReport: number;\n ticRefund: number;\n ticTransfered: number;\n },\n toPay: {\n netDue: number;\n acquittedBySocietyHeadOfGroup: number;\n total: number;\n },\n isDGE: boolean;\n isUniq: boolean;\n tic?: {\n ticfe?: Tic,\n ticgn?: Tic,\n ticc?: Tic,\n total?: Tic,\n },\n}\n\nexport type PayloadCerfa3310_2023 = {\n isHolidayDeposit: boolean;\n startDate: string;\n endDate: string;\n society: ISociety;\n setting: ISocietyGescom | null;\n isNil: boolean;\n previousVatDeclaration: Cerfa3310_2023 | null;\n sie: ServiceOfTax | null;\n comment?: string;\n taxedOperations?: {\n withdrawSuspensiveRegime?: number;\n releaseFromConsumption?: number;\n energyDelivery?: number;\n purchaseOfServicesNotInFrance?: number;\n regularizations?: number;\n };\n untaxedOperations?: {\n distanceSelling?: number;\n withdrawSuspensiveRegime?: number;\n importInSuspensiveSystem?: number;\n intracommunityAcquisitions: number;\n intracommunityDelivery: number;\n energyDelivery?: number;\n oilProductsConsumption?: number;\n importPetrolInSuspensiveSystem?: number;\n purchaseInFranchise?: number;\n saleOfServicesNotInFrance?: number;\n regularizations?: number;\n internalUniq?: number;\n },\n vat?: {\n oilProducts?: {\n normalRate20?: { base?: number }\n reduceRate13?: { base?: number }\n },\n previouslyDeductedToBeReturned?: {\n onOilProducts?: number;\n otherThanOilProducts?: number;\n total?: number;\n },\n toMonaco?: number;\n deductible?: {\n other?: {\n oil?: number;\n },\n toImpute?: number;\n onOilProducts?: number;\n coefficient?: number;\n },\n otherRate?: {\n oldRate?: {\n tax?: number;\n base?: number;\n },\n },\n sumToAdd?: number;\n },\n credit?: {\n transferedToSocietyHeadOfGroup?: number;\n assimiledTaxes?: number;\n refundAsked?: number;\n },\n toPay?: {\n acquittedBySocietyHeadOfGroup?: number;\n },\n};"],"mappings":""}
|
|
@@ -14,7 +14,7 @@ var _Vat = require("../../../types/Enum/Vat");
|
|
|
14
14
|
var _utils = require("../utils");
|
|
15
15
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
16
16
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
-
function getCerfa3310Century23Payload(accountingEntries, payload) {
|
|
17
|
+
function getCerfa3310Century23Payload(accountingEntries, payload, updatedEntries = []) {
|
|
18
18
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96;
|
|
19
19
|
const shouldHaveVatCode = (0, _classValidator.isDefined)((_a = payload.setting) === null || _a === void 0 ? void 0 : _a.tvaCode) && (0, _classValidator.isDefined)(payload.society.siret);
|
|
20
20
|
const vats = Object.values(_Vat.Vat);
|
|
@@ -24,6 +24,28 @@ function getCerfa3310Century23Payload(accountingEntries, payload) {
|
|
|
24
24
|
const withoutTaxVat = vats.filter(v => v.value === 0).map(v => v.id);
|
|
25
25
|
const importationVat = vats.filter(v => v.isVatImportation && !v.isVatIntracom).map(v => v.id);
|
|
26
26
|
const vatEntries = accountingEntries.filter(ae => typeof ae.idVat === 'number');
|
|
27
|
+
const oldEntries = (0, _lodash.flatten)(updatedEntries === null || updatedEntries === void 0 ? void 0 : updatedEntries.map(u => u.old.entries));
|
|
28
|
+
const newEntries = (0, _lodash.flatten)(updatedEntries === null || updatedEntries === void 0 ? void 0 : updatedEntries.map(u => u.new.entries));
|
|
29
|
+
const collectedOldAmount = (0, _utils.getAmountByAccountNumber)(oldEntries, ['4457'], 0);
|
|
30
|
+
const collectedNewAmount = (0, _utils.getAmountByAccountNumber)(newEntries, ['4457'], 0);
|
|
31
|
+
const deductedOldAmount = (0, _utils.getAmountByAccountNumber)(oldEntries, ['4456'], 0);
|
|
32
|
+
const deductedNewAmount = (0, _utils.getAmountByAccountNumber)(newEntries, ['4456'], 0);
|
|
33
|
+
const mxCollected = collectedNewAmount - collectedOldAmount;
|
|
34
|
+
const mxDeducted = deductedNewAmount - deductedOldAmount;
|
|
35
|
+
let mxToAdd = 0;
|
|
36
|
+
let mxToSub = 0;
|
|
37
|
+
if (mxCollected > 0) {
|
|
38
|
+
mxToAdd += mxCollected;
|
|
39
|
+
}
|
|
40
|
+
if (mxDeducted < 0) {
|
|
41
|
+
mxToAdd += Math.abs(mxDeducted);
|
|
42
|
+
}
|
|
43
|
+
if (mxCollected < 0) {
|
|
44
|
+
mxToSub += Math.abs(mxCollected);
|
|
45
|
+
}
|
|
46
|
+
if (mxDeducted > 0) {
|
|
47
|
+
mxToSub += mxDeducted;
|
|
48
|
+
}
|
|
27
49
|
// Opérations taxées
|
|
28
50
|
const taxedServicesEntries = vatEntries.filter(ae => frenchVat.includes(ae.idVat) && withTaxVat.includes(ae.idVat));
|
|
29
51
|
const servicesAccounts = ['701', '702', '703', '704', '705', '706', '707', '708', '472'];
|
|
@@ -74,7 +96,7 @@ function getCerfa3310Century23Payload(accountingEntries, payload) {
|
|
|
74
96
|
const coefficient = (0, _lodash.round)((_g = (_f = (_e = payload.vat) === null || _e === void 0 ? void 0 : _e.deductible) === null || _f === void 0 ? void 0 : _f.coefficient) !== null && _g !== void 0 ? _g : 100, 2);
|
|
75
97
|
const isNil = payload.isNil === true;
|
|
76
98
|
const isHolidayDeposit = payload.isHolidayDeposit === true;
|
|
77
|
-
const sumToAdd = isNil ? 0 : isHolidayDeposit ? (0, _lodash.round)(((_k = (_j = (_h = payload.previousVatDeclaration) === null || _h === void 0 ? void 0 : _h.toPay) === null || _j === void 0 ? void 0 : _j.total) !== null && _k !== void 0 ? _k : 0) * 0.8, 2) : (0, _lodash.round)((_m = (_l = payload.vat) === null || _l === void 0 ? void 0 : _l.sumToAdd) !== null && _m !== void 0 ? _m : 0);
|
|
99
|
+
const sumToAdd = isNil ? 0 : isHolidayDeposit ? (0, _lodash.round)(((_k = (_j = (_h = payload.previousVatDeclaration) === null || _h === void 0 ? void 0 : _h.toPay) === null || _j === void 0 ? void 0 : _j.total) !== null && _k !== void 0 ? _k : 0) * 0.8, 2) : (0, _lodash.round)((_m = (_l = payload.vat) === null || _l === void 0 ? void 0 : _l.sumToAdd) !== null && _m !== void 0 ? _m : 0) + mxToAdd;
|
|
78
100
|
const comment = isHolidayDeposit ? `ACOMPTE CONGES ${(_o = payload.comment) !== null && _o !== void 0 ? _o : ''}` : (_p = payload.comment) !== null && _p !== void 0 ? _p : null;
|
|
79
101
|
const initialPayload = {
|
|
80
102
|
isNil,
|
|
@@ -240,7 +262,7 @@ function getCerfa3310Century23Payload(accountingEntries, payload) {
|
|
|
240
262
|
total: isNil || isHolidayDeposit ? 0 : otherDeductibles
|
|
241
263
|
},
|
|
242
264
|
report,
|
|
243
|
-
toImpute: isNil || isHolidayDeposit ? 0 : (0, _lodash.round)((_74 = (_73 = (_72 = payload.vat) === null || _72 === void 0 ? void 0 : _72.deductible) === null || _73 === void 0 ? void 0 : _73.toImpute) !== null && _74 !== void 0 ? _74 : 0),
|
|
265
|
+
toImpute: isNil || isHolidayDeposit ? 0 : (0, _lodash.round)((_74 = (_73 = (_72 = payload.vat) === null || _72 === void 0 ? void 0 : _72.deductible) === null || _73 === void 0 ? void 0 : _73.toImpute) !== null && _74 !== void 0 ? _74 : 0) + mxToSub,
|
|
244
266
|
total: 0,
|
|
245
267
|
onImportOtherThanOilProducts: isNil || isHolidayDeposit ? 0 : otherDeductibles,
|
|
246
268
|
coefficient: isNil || isHolidayDeposit ? 100 : coefficient,
|