@silexpert/core 1.1.36 → 1.1.38

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.
@@ -1 +1 @@
1
- {"version":3,"file":"century22.d.ts","sourceRoot":"","sources":["../../../../ts/utils/vat/3514/century22.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAEhF,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA6D3F;AAED,eAAO,MAAM,wBAAwB,EAAE,gBAAgB,EAqCrD,CAAC"}
1
+ {"version":3,"file":"century22.d.ts","sourceRoot":"","sources":["../../../../ts/utils/vat/3514/century22.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAGhF,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA6D3F;AAED,eAAO,MAAM,wBAAwB,EAAE,gBAAgB,EAqCrD,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import { isDefined } from 'class-validator';
2
2
  import * as dayjs from 'dayjs';
3
3
  import { round } from 'lodash';
4
+ import { setZeroIfIsNegative } from '../utils';
4
5
  export function getCerfa3514Century22Payload(payload) {
5
6
  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;
6
7
  const shouldHaveVatCode = isDefined((_a = payload.setting) === null || _a === void 0 ? void 0 : _a.tvaCode) && isDefined(payload.society.siret);
7
8
  const currentMonth = dayjs(payload.startDate).month() + 1;
8
- const previousCA12Rate = round(currentMonth === 7 ? ((_c = (_b = payload.previousCA12) === null || _b === void 0 ? void 0 : _b.total) !== null && _c !== void 0 ? _c : 0) * 0.55 : currentMonth === 1 ? ((_e = (_d = payload.previousCA12) === null || _d === void 0 ? void 0 : _d.total) !== null && _e !== void 0 ? _e : 0) * 0.4 : 0);
9
+ const previousCA12Rate = round(currentMonth === 7 ? ((_c = (_b = payload.previousCA12) === null || _b === void 0 ? void 0 : _b.total) !== null && _c !== void 0 ? _c : 0) * 0.4 : currentMonth === 1 ? ((_e = (_d = payload.previousCA12) === null || _d === void 0 ? void 0 : _d.total) !== null && _e !== void 0 ? _e : 0) * 0.55 : 0);
9
10
  const previousCA12Credit = round(((_h = (_g = (_f = payload.previousCA12) === null || _f === void 0 ? void 0 : _f.recapitulation) === null || _g === void 0 ? void 0 : _g.balance) !== null && _h !== void 0 ? _h : 0) + ((_l = (_k = (_j = payload.previousCA12) === null || _j === void 0 ? void 0 : _j.recapitulation) === null || _k === void 0 ? void 0 : _k.imputedCredit) !== null && _l !== void 0 ? _l : 0));
10
11
  const data = {
11
12
  declaration: {
@@ -54,8 +55,8 @@ export function getCerfa3514Century22Payload(payload) {
54
55
  vatAmountQuarter: 0,
55
56
  vatRefundedOnInvests: 0, // Calculé plus bas
56
57
  };
57
- data.vatAmountToPay = ((_10 = data.amountWanted) !== null && _10 !== void 0 ? _10 : 0) - ((_11 = data.amountOfCredit) !== null && _11 !== void 0 ? _11 : 0);
58
- data.vatAmountQuarter = ((_12 = data.vatAmountDeductible) !== null && _12 !== void 0 ? _12 : 0) - ((_13 = data.vatAmountCollected) !== null && _13 !== void 0 ? _13 : 0);
58
+ data.vatAmountToPay = setZeroIfIsNegative(((_10 = data.amountWanted) !== null && _10 !== void 0 ? _10 : 0) - ((_11 = data.amountOfCredit) !== null && _11 !== void 0 ? _11 : 0));
59
+ data.vatAmountQuarter = setZeroIfIsNegative(((_12 = data.vatAmountDeductible) !== null && _12 !== void 0 ? _12 : 0) - ((_13 = data.vatAmountCollected) !== null && _13 !== void 0 ? _13 : 0));
59
60
  data.vatRefundedOnInvests = data.vatAmountQuarter > 760 ? data.vatAmountQuarter : 0;
60
61
  return data;
61
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"century22.js","sourceRoot":"","sources":["../../../../ts/utils/vat/3514/century22.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDefined } from 'class-validator';\nimport * as dayjs from 'dayjs';\nimport { round } from 'lodash';\nimport { Cerfa3514_2022, PayloadCerfa3514_2022 } from '../../../types/Interface/api/cerfa/3514';\nimport { CerfaPayloadForm } from '../../../types/Interface/api/cerfa/ReadCerfa';\n\nexport function getCerfa3514Century22Payload(payload: PayloadCerfa3514_2022): Cerfa3514_2022 {\n const shouldHaveVatCode = isDefined(payload.setting?.tvaCode) && isDefined(payload.society.siret);\n\n const currentMonth = dayjs(payload.startDate).month() + 1;\n\n const previousCA12Rate = round(currentMonth === 7 ? (payload.previousCA12?.total ?? 0) * 0.55 : currentMonth === 1 ? (payload.previousCA12?.total ?? 0) * 0.4 : 0);\n const previousCA12Credit = round((payload.previousCA12?.recapitulation?.balance ?? 0) + (payload.previousCA12?.recapitulation?.imputedCredit ?? 0));\n\n const data: Cerfa3514_2022 = {\n declaration: {\n maxDate: ![1, 7].includes(currentMonth) ? 24 : payload.society.vatUploadDay ?? null,\n service: {\n address: {\n full: isDefined(payload.sie?.address?.address1) ? `${payload.sie?.address.address1}\\n${payload.sie?.address.address2}\\n${payload.sie?.address.address3}\\n${payload.sie?.address.address4}\\n${payload.sie?.address.address5}` : null,\n },\n },\n recipient: {\n address: {\n full: `${payload.society.address}\\n${payload.society.zipCode} ${payload.society.city}`,\n },\n name: payload.society.name,\n },\n numbers: {\n SIE: payload.sie?.sages ?? null,\n folder: null,\n key: null,\n CDI: null,\n service: null,\n system: null,\n },\n intracommunityVat: {\n first: shouldHaveVatCode ? (payload.setting?.tvaCode?.slice(0, 2) ?? null) : null,\n second: shouldHaveVatCode ? (payload.setting?.tvaCode?.slice(2, 4) ?? null) : null,\n third: shouldHaveVatCode ? (payload.society.siret?.slice(0, 9) ?? null) : null,\n },\n siret: {\n second: isDefined(payload.society.siret) ? (payload.society.siret?.slice(5) ?? null) : null,\n },\n comment: payload.comment ?? null,\n },\n payment: {\n date: dayjs().format('YYYY-MM-DD'),\n phone: null,\n isPayment: true,\n byImputation: false,\n },\n amountWanted: typeof payload.amountWanted === 'number' ? payload.amountWanted : previousCA12Rate ?? 0,\n amountOfCredit: typeof payload.amountOfCredit === 'number' ? payload.amountOfCredit : previousCA12Credit ?? 0,\n vatAmountToPay: 0, // Calculé plus bas\n shouldCancelAdvance: false,\n vatAmountCollected: payload.vatAmountCollected ?? 0,\n vatAmountDeductible: payload.vatAmountDeductible ?? 0,\n vatAmountQuarter: 0, // Calculé plus bas\n vatRefundedOnInvests: 0, // Calculé plus bas\n };\n\n data.vatAmountToPay = (data.amountWanted ?? 0) - (data.amountOfCredit ?? 0);\n data.vatAmountQuarter = (data.vatAmountDeductible ?? 0) - (data.vatAmountCollected ?? 0);\n data.vatRefundedOnInvests = data.vatAmountQuarter > 760 ? data.vatAmountQuarter : 0;\n\n return data;\n}\n\nexport const cerfa3514Century22Fields: CerfaPayloadForm[] = [{\n sectionName: 'Général',\n childrens: [\n {\n label: 'Commentaire',\n key: 'comment',\n type: 'text',\n },\n ],\n}, {\n sectionName: 'Acompte de TVA',\n childrens: [\n {\n label: '01 - Montant de l\\'acompte attendu ou modulé',\n key: 'amountWanted',\n type: 'number',\n columns: 6,\n },\n {\n label: '02 - Montant du crédit ou de l\\'excédent de TVA',\n key: 'amountOfCredit',\n type: 'number',\n columns: 6,\n },\n {\n label: '05 - Montant de la TVA collectée au titre du semestre',\n key: 'vatAmountCollected',\n type: 'number',\n columns: 6,\n },\n {\n label: '06 - Montant de la TVA déductible au titre du semestre',\n key: 'vatAmountDeductible',\n type: 'number',\n columns: 6,\n },\n ],\n}];"]}
1
+ {"version":3,"file":"century22.js","sourceRoot":"","sources":["../../../../ts/utils/vat/3514/century22.ts"],"names":[],"mappings":"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","sourcesContent":["import { isDefined } from 'class-validator';\nimport * as dayjs from 'dayjs';\nimport { round } from 'lodash';\nimport { Cerfa3514_2022, PayloadCerfa3514_2022 } from '../../../types/Interface/api/cerfa/3514';\nimport { CerfaPayloadForm } from '../../../types/Interface/api/cerfa/ReadCerfa';\nimport { setZeroIfIsNegative } from '../utils';\n\nexport function getCerfa3514Century22Payload(payload: PayloadCerfa3514_2022): Cerfa3514_2022 {\n const shouldHaveVatCode = isDefined(payload.setting?.tvaCode) && isDefined(payload.society.siret);\n\n const currentMonth = dayjs(payload.startDate).month() + 1;\n\n const previousCA12Rate = round(currentMonth === 7 ? (payload.previousCA12?.total ?? 0) * 0.4 : currentMonth === 1 ? (payload.previousCA12?.total ?? 0) * 0.55 : 0);\n const previousCA12Credit = round((payload.previousCA12?.recapitulation?.balance ?? 0) + (payload.previousCA12?.recapitulation?.imputedCredit ?? 0));\n\n const data: Cerfa3514_2022 = {\n declaration: {\n maxDate: ![1, 7].includes(currentMonth) ? 24 : payload.society.vatUploadDay ?? null,\n service: {\n address: {\n full: isDefined(payload.sie?.address?.address1) ? `${payload.sie?.address.address1}\\n${payload.sie?.address.address2}\\n${payload.sie?.address.address3}\\n${payload.sie?.address.address4}\\n${payload.sie?.address.address5}` : null,\n },\n },\n recipient: {\n address: {\n full: `${payload.society.address}\\n${payload.society.zipCode} ${payload.society.city}`,\n },\n name: payload.society.name,\n },\n numbers: {\n SIE: payload.sie?.sages ?? null,\n folder: null,\n key: null,\n CDI: null,\n service: null,\n system: null,\n },\n intracommunityVat: {\n first: shouldHaveVatCode ? (payload.setting?.tvaCode?.slice(0, 2) ?? null) : null,\n second: shouldHaveVatCode ? (payload.setting?.tvaCode?.slice(2, 4) ?? null) : null,\n third: shouldHaveVatCode ? (payload.society.siret?.slice(0, 9) ?? null) : null,\n },\n siret: {\n second: isDefined(payload.society.siret) ? (payload.society.siret?.slice(5) ?? null) : null,\n },\n comment: payload.comment ?? null,\n },\n payment: {\n date: dayjs().format('YYYY-MM-DD'),\n phone: null,\n isPayment: true,\n byImputation: false,\n },\n amountWanted: typeof payload.amountWanted === 'number' ? payload.amountWanted : previousCA12Rate ?? 0,\n amountOfCredit: typeof payload.amountOfCredit === 'number' ? payload.amountOfCredit : previousCA12Credit ?? 0,\n vatAmountToPay: 0, // Calculé plus bas\n shouldCancelAdvance: false,\n vatAmountCollected: payload.vatAmountCollected ?? 0,\n vatAmountDeductible: payload.vatAmountDeductible ?? 0,\n vatAmountQuarter: 0, // Calculé plus bas\n vatRefundedOnInvests: 0, // Calculé plus bas\n };\n\n data.vatAmountToPay = setZeroIfIsNegative((data.amountWanted ?? 0) - (data.amountOfCredit ?? 0));\n data.vatAmountQuarter = setZeroIfIsNegative((data.vatAmountDeductible ?? 0) - (data.vatAmountCollected ?? 0));\n data.vatRefundedOnInvests = data.vatAmountQuarter > 760 ? data.vatAmountQuarter : 0;\n\n return data;\n}\n\nexport const cerfa3514Century22Fields: CerfaPayloadForm[] = [{\n sectionName: 'Général',\n childrens: [\n {\n label: 'Commentaire',\n key: 'comment',\n type: 'text',\n },\n ],\n}, {\n sectionName: 'Acompte de TVA',\n childrens: [\n {\n label: '01 - Montant de l\\'acompte attendu ou modulé',\n key: 'amountWanted',\n type: 'number',\n columns: 6,\n },\n {\n label: '02 - Montant du crédit ou de l\\'excédent de TVA',\n key: 'amountOfCredit',\n type: 'number',\n columns: 6,\n },\n {\n label: '05 - Montant de la TVA collectée au titre du semestre',\n key: 'vatAmountCollected',\n type: 'number',\n columns: 6,\n },\n {\n label: '06 - Montant de la TVA déductible au titre du semestre',\n key: 'vatAmountDeductible',\n type: 'number',\n columns: 6,\n },\n ],\n}];"]}
@@ -296,7 +296,7 @@ export function getCerfa3517Century23Payload(accountingEntries, payload) {
296
296
  },
297
297
  };
298
298
  data.vat.total.tax = data.vat.normalRate20.tax + data.vat.normalRate20OnPetrol.tax + data.vat.reduceRate5Dot5.tax + data.vat.reduceRate10.tax + data.vat.reduceRate8Dot5.tax + data.vat.reduceRate2Dot1.tax + data.vat.particularRate.tax + data.vat.reducedRateOnPetrol.tax + data.vat.oldRate.tax + data.vat.energyBought.tax + data.vat.prestation.tax + data.vat.prestation2.tax + data.vat.saleOfImmobilization.tax + data.vat.ownDelivery.tax + data.vat.other.tax;
299
- data.other.total = data.other.refund + data.other.previousDeducted + data.other.sum;
299
+ data.other.total = data.vat.total.tax + data.other.refund + data.other.previousDeducted + data.other.sum;
300
300
  data.deductible.total1 = data.deductible.onInvoice + data.deductible.onFlatRate;
301
301
  data.deductible.total = data.deductible.total1 + data.deductible.onImmobilization + data.deductible.previousCredit + data.deductible.forget + data.deductible.sumToImpute;
302
302
  data.net.due = data.other.total - data.deductible.total > 0 ? data.other.total - data.deductible.total : 0;
@@ -304,7 +304,7 @@ export function getCerfa3517Century23Payload(accountingEntries, payload) {
304
304
  data.net.advance.paid = data.net.advance1.paid + data.net.advance2.paid;
305
305
  data.net.advance.toPay = data.net.advance1.toPay + data.net.advance2.toPay;
306
306
  data.net.advance.total = data.net.advance.paid + data.net.advance.toPay;
307
- data.net.balance = data.net.due - (data.net.due + data.net.advance.total) > 0 ? data.net.due - (data.net.due + data.net.advance.total) : 0;
307
+ data.net.balance = data.net.due - (data.net.credit + data.net.advance.total) > 0 ? data.net.due - (data.net.due + data.net.advance.total) : 0;
308
308
  data.net.surplus = data.net.advance.total - data.net.due > 0 ? data.net.advance.total - data.net.due : 0;
309
309
  data.net.balanceSurplus = data.net.credit + data.net.surplus;
310
310
  data.tax.total = data.tax.onRetransmission + data.tax.onResultFarm + data.tax.payingVideo.reduced + data.tax.payingVideo.normal + data.tax.freeVideo.reduce + data.tax.freeVideo.normal + data.tax.bailiff + data.tax.contribution + data.tax.ofEmployer + data.tax.onBoardingCorse + data.tax.onBoarding + data.tax.development + data.tax.publicity + data.tax.onCompanySurplus + data.tax.onPublicElectricity + data.tax.onCanceledOrders + data.tax.specialDue + data.tax.slaughter + data.tax.cutting + data.tax.substances + data.tax.fishing + data.tax.fishingProduct + data.tax.agreement + data.tax.phyto.onCirculation + data.tax.phyto.onExportation + data.tax.phyto.total + data.tax.onPreciousMetal.normalRate + data.tax.onPreciousMetal.reduceRate + data.tax.onContribution + data.tax.onSaleAntiquity + data.tax.onYearly + data.tax.onCO2 + data.tax.oldVehicle + data.tax.profit + data.tax.social + data.tax.fromOtherCountry + data.tax.trottingRace + data.tax.gallopRace + data.tax.sportBetting + data.tax.sportBettingSocial + data.tax.sportBettingSport + data.tax.sportBettingCommercial + data.tax.sportBettingCommercialSocial + data.tax.sportBettingCommercialSport + data.tax.onlineGame + data.tax.onlineGameSocial + data.tax.fuelExploration + data.tax.nonAlcoolWithSugar + data.tax.nonAlcool + data.tax.nonAlcoolWithEdul + data.tax.mineralWater + data.tax.numericalService + data.tax.platform;