@silexpert/core 1.2.80 → 1.2.82
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/cjs/api/resources/Reminder.d.ts +17 -2
- package/dist/cjs/api/resources/Reminder.d.ts.map +1 -1
- package/dist/cjs/api/resources/Reminder.js +31 -2
- package/dist/cjs/api/resources/Reminder.js.map +1 -1
- package/dist/cjs/types/Enum/AppointmentState.d.ts +6 -1
- package/dist/cjs/types/Enum/AppointmentState.d.ts.map +1 -1
- package/dist/cjs/types/Enum/AppointmentState.js +5 -0
- package/dist/cjs/types/Enum/AppointmentState.js.map +1 -1
- package/dist/cjs/types/Enum/CommercialManagement.d.ts.map +1 -1
- package/dist/cjs/types/Enum/CommercialManagement.js +5 -36
- package/dist/cjs/types/Enum/CommercialManagement.js.map +1 -1
- package/dist/cjs/types/Enum/IncomeStatement.js +1 -1
- package/dist/cjs/types/Enum/IncomeStatement.js.map +1 -1
- package/dist/cjs/types/Interface/api/commercialManagement/Create.d.ts +17 -7
- package/dist/cjs/types/Interface/api/commercialManagement/Create.d.ts.map +1 -1
- package/dist/cjs/types/Interface/api/commercialManagement/Create.js +66 -11
- package/dist/cjs/types/Interface/api/commercialManagement/Create.js.map +1 -1
- package/dist/cjs/types/Interface/api/commercialManagement/Update.d.ts +7 -0
- package/dist/cjs/types/Interface/api/commercialManagement/Update.d.ts.map +1 -1
- package/dist/cjs/types/Interface/api/commercialManagement/Update.js +36 -1
- package/dist/cjs/types/Interface/api/commercialManagement/Update.js.map +1 -1
- package/dist/cjs/types/Interface/models/IEstimateInvoice.d.ts +3 -0
- package/dist/cjs/types/Interface/models/IEstimateInvoice.d.ts.map +1 -1
- package/dist/cjs/types/Interface/models/IEstimateInvoice.js.map +1 -1
- package/dist/cjs/types/Interface/models/IInvoiceReminder.d.ts +3 -0
- package/dist/cjs/types/Interface/models/IInvoiceReminder.d.ts.map +1 -1
- package/dist/cjs/types/Interface/models/IInvoiceReminder.js.map +1 -1
- package/dist/cjs/types/Interface/models/IReminder.d.ts +18 -0
- package/dist/cjs/types/Interface/models/IReminder.d.ts.map +1 -0
- package/dist/cjs/types/Interface/models/IReminder.js +3 -0
- package/dist/cjs/types/Interface/models/IReminder.js.map +1 -0
- package/dist/cjs/types/Interface/models/IReminderAttachment.d.ts +12 -0
- package/dist/cjs/types/Interface/models/IReminderAttachment.d.ts.map +1 -0
- package/dist/cjs/types/Interface/models/IReminderAttachment.js +3 -0
- package/dist/cjs/types/Interface/models/IReminderAttachment.js.map +1 -0
- package/dist/cjs/types/Interface/models/IScheduledReminder.d.ts +8 -0
- package/dist/cjs/types/Interface/models/IScheduledReminder.d.ts.map +1 -0
- package/dist/cjs/types/Interface/models/IScheduledReminder.js +3 -0
- package/dist/cjs/types/Interface/models/IScheduledReminder.js.map +1 -0
- package/dist/cjs/types/Interface/models/ISocietyGescom.d.ts +3 -3
- package/dist/cjs/types/Interface/models/ISocietyGescom.d.ts.map +1 -1
- package/dist/cjs/types/Interface/models/ISocietyGescom.js.map +1 -1
- package/dist/cjs/types/index.d.ts +3 -0
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/utils/commercialManagement/document.d.ts.map +1 -1
- package/dist/cjs/utils/commercialManagement/document.js +21 -16
- package/dist/cjs/utils/commercialManagement/document.js.map +1 -1
- package/dist/cjs/utils/commercialManagement/internationalization/choices.d.ts +1 -1
- package/dist/cjs/utils/commercialManagement/internationalization/choices.d.ts.map +1 -1
- package/dist/cjs/utils/commercialManagement/internationalization/choices.js +15 -1
- package/dist/cjs/utils/commercialManagement/internationalization/choices.js.map +1 -1
- package/dist/mjs/api/resources/Reminder.d.ts +17 -2
- package/dist/mjs/api/resources/Reminder.d.ts.map +1 -1
- package/dist/mjs/api/resources/Reminder.js +31 -2
- package/dist/mjs/api/resources/Reminder.js.map +1 -1
- package/dist/mjs/types/Enum/AppointmentState.d.ts +6 -1
- package/dist/mjs/types/Enum/AppointmentState.d.ts.map +1 -1
- package/dist/mjs/types/Enum/AppointmentState.js +5 -0
- package/dist/mjs/types/Enum/AppointmentState.js.map +1 -1
- package/dist/mjs/types/Enum/CommercialManagement.d.ts.map +1 -1
- package/dist/mjs/types/Enum/CommercialManagement.js +5 -36
- package/dist/mjs/types/Enum/CommercialManagement.js.map +1 -1
- package/dist/mjs/types/Enum/IncomeStatement.js +1 -1
- package/dist/mjs/types/Enum/IncomeStatement.js.map +1 -1
- package/dist/mjs/types/Interface/api/commercialManagement/Create.d.ts +17 -7
- package/dist/mjs/types/Interface/api/commercialManagement/Create.d.ts.map +1 -1
- package/dist/mjs/types/Interface/api/commercialManagement/Create.js +73 -14
- package/dist/mjs/types/Interface/api/commercialManagement/Create.js.map +1 -1
- package/dist/mjs/types/Interface/api/commercialManagement/Update.d.ts +7 -0
- package/dist/mjs/types/Interface/api/commercialManagement/Update.d.ts.map +1 -1
- package/dist/mjs/types/Interface/api/commercialManagement/Update.js +40 -1
- package/dist/mjs/types/Interface/api/commercialManagement/Update.js.map +1 -1
- package/dist/mjs/types/Interface/models/IEstimateInvoice.d.ts +3 -0
- package/dist/mjs/types/Interface/models/IEstimateInvoice.d.ts.map +1 -1
- package/dist/mjs/types/Interface/models/IEstimateInvoice.js.map +1 -1
- package/dist/mjs/types/Interface/models/IInvoiceReminder.d.ts +3 -0
- package/dist/mjs/types/Interface/models/IInvoiceReminder.d.ts.map +1 -1
- package/dist/mjs/types/Interface/models/IInvoiceReminder.js.map +1 -1
- package/dist/mjs/types/Interface/models/IReminder.d.ts +18 -0
- package/dist/mjs/types/Interface/models/IReminder.d.ts.map +1 -0
- package/dist/mjs/types/Interface/models/IReminder.js +2 -0
- package/dist/mjs/types/Interface/models/IReminder.js.map +1 -0
- package/dist/mjs/types/Interface/models/IReminderAttachment.d.ts +12 -0
- package/dist/mjs/types/Interface/models/IReminderAttachment.d.ts.map +1 -0
- package/dist/mjs/types/Interface/models/IReminderAttachment.js +2 -0
- package/dist/mjs/types/Interface/models/IReminderAttachment.js.map +1 -0
- package/dist/mjs/types/Interface/models/IScheduledReminder.d.ts +8 -0
- package/dist/mjs/types/Interface/models/IScheduledReminder.d.ts.map +1 -0
- package/dist/mjs/types/Interface/models/IScheduledReminder.js +2 -0
- package/dist/mjs/types/Interface/models/IScheduledReminder.js.map +1 -0
- package/dist/mjs/types/Interface/models/ISocietyGescom.d.ts +3 -3
- package/dist/mjs/types/Interface/models/ISocietyGescom.d.ts.map +1 -1
- package/dist/mjs/types/Interface/models/ISocietyGescom.js.map +1 -1
- package/dist/mjs/types/index.d.ts +3 -0
- package/dist/mjs/types/index.d.ts.map +1 -1
- package/dist/mjs/types/index.js +3 -0
- package/dist/mjs/types/index.js.map +1 -1
- package/dist/mjs/utils/commercialManagement/document.d.ts.map +1 -1
- package/dist/mjs/utils/commercialManagement/document.js +10 -5
- package/dist/mjs/utils/commercialManagement/document.js.map +1 -1
- package/dist/mjs/utils/commercialManagement/internationalization/choices.d.ts +1 -1
- package/dist/mjs/utils/commercialManagement/internationalization/choices.d.ts.map +1 -1
- package/dist/mjs/utils/commercialManagement/internationalization/choices.js +15 -1
- package/dist/mjs/utils/commercialManagement/internationalization/choices.js.map +1 -1
- package/package.json +1 -1
- package/ts/api/resources/Reminder.ts +51 -5
- package/ts/types/Enum/AppointmentState.ts +5 -0
- package/ts/types/Enum/CommercialManagement.ts +10 -36
- package/ts/types/Enum/IncomeStatement.ts +1 -1
- package/ts/types/Interface/api/commercialManagement/Create.ts +55 -12
- package/ts/types/Interface/api/commercialManagement/Update.ts +30 -0
- package/ts/types/Interface/models/IEstimateInvoice.ts +3 -0
- package/ts/types/Interface/models/IInvoiceReminder.ts +3 -0
- package/ts/types/Interface/models/IReminder.ts +20 -0
- package/ts/types/Interface/models/IReminderAttachment.ts +14 -0
- package/ts/types/Interface/models/IScheduledReminder.ts +7 -0
- package/ts/types/Interface/models/ISocietyGescom.ts +3 -3
- package/ts/types/index.ts +3 -0
- package/ts/utils/commercialManagement/document.ts +11 -5
- package/ts/utils/commercialManagement/internationalization/choices.ts +17 -2
|
@@ -36,6 +36,7 @@ export function generateCommercialDocument(idEstimateInvoiceType, payload, shoul
|
|
|
36
36
|
const totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');
|
|
37
37
|
const locale = payload.language ?? InvoiceLanguage.FR;
|
|
38
38
|
const languageOption = internationalizationChoices[locale];
|
|
39
|
+
const accountingCategory = AccountingCategoryList.find((a) => a.id === payload.accountingCategory)?.label ?? null;
|
|
39
40
|
const data = {
|
|
40
41
|
...payload,
|
|
41
42
|
thirdParty,
|
|
@@ -43,15 +44,17 @@ export function generateCommercialDocument(idEstimateInvoiceType, payload, shoul
|
|
|
43
44
|
idEstimateInvoiceType,
|
|
44
45
|
title: payload.title ?? null,
|
|
45
46
|
penalties: payload.penalties
|
|
46
|
-
? (internationalizationConsistency(locale, payload.penalties, 'penalties') ??
|
|
47
|
+
? (internationalizationConsistency(locale, payload.penalties, 'penalties') ?? payload.penalties)
|
|
47
48
|
: null,
|
|
48
49
|
termsOfPayment: payload.termsOfPayment
|
|
49
|
-
? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ??
|
|
50
|
+
? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ?? payload.termsOfPayment)
|
|
50
51
|
: null,
|
|
51
52
|
compensation: payload.compensation
|
|
52
|
-
? (internationalizationConsistency(locale, payload.compensation, 'recoveryCost') ??
|
|
53
|
+
? (internationalizationConsistency(locale, payload.compensation, 'recoveryCost') ?? payload.compensation)
|
|
54
|
+
: null,
|
|
55
|
+
discount: payload.discount
|
|
56
|
+
? (internationalizationConsistency(locale, payload.discount, 'discount') ?? payload.discount)
|
|
53
57
|
: null,
|
|
54
|
-
discount: payload.discount ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? null) : null,
|
|
55
58
|
vatMention: payload.vatMention
|
|
56
59
|
? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? null)
|
|
57
60
|
: null,
|
|
@@ -86,7 +89,9 @@ export function generateCommercialDocument(idEstimateInvoiceType, payload, shoul
|
|
|
86
89
|
shouldDisplayDiscountColumn: !!products.find((p) => p.discount2 && p.discount2 > 0),
|
|
87
90
|
// @ts-ignore
|
|
88
91
|
marginVats: _uniq(products.filter((p) => p.marginVatFormatted !== null).map((p) => p.marginVatFormatted)),
|
|
89
|
-
accountingCategoryFormatted:
|
|
92
|
+
accountingCategoryFormatted: accountingCategory
|
|
93
|
+
? (internationalizationConsistency(locale, accountingCategory, 'accountingCategory') ?? null)
|
|
94
|
+
: null,
|
|
90
95
|
// @ts-ignore
|
|
91
96
|
brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }),
|
|
92
97
|
brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv })}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import { orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq, round as _round } from 'lodash';\nimport * as dayjs from 'dayjs';\nimport {\n ReadCommercialDocumentTemplate,\n ReadDocumentEditing,\n ReadVatEditing,\n} from '../../types/Interface/api/commercialManagement/Read';\nimport { AccountingCategoryList, FontIds, fontList, InvoiceLanguage } from '../../types/Enum/CommercialManagement';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice';\nimport { Vat } from '../../types/Enum/Vat';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common';\nimport { bodyTemplate } from './templates/body';\nimport { productToReadProductEditing } from './product';\nimport { vatToReadVatEditing } from './vat';\nimport {\n CreateInvoiceDocument,\n CreateMailHeader,\n CreatePreSaleDocument,\n ReadCommercialMailTemplate,\n} from '../../types';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty';\nimport { getBrandConfig } from '../brands';\nimport { internationalizationChoices, internationalizationConsistency } from './internationalization/choices';\n\nimport * as ejs from 'ejs';\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nrequire('dayjs/locale/fr');\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 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 totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');\n\n const locale = payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n\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') ?? null)\n : null,\n termsOfPayment: payload.termsOfPayment\n ? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ?? null)\n : null,\n compensation: payload.compensation\n ? (internationalizationConsistency(locale, payload.compensation, 'recoveryCost') ?? null)\n : null,\n discount: payload.discount ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? null) : null,\n vatMention: payload.vatMention\n ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? null)\n : null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: _sumBy(products, '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(_sumBy(products, 'totalTaxExcluded')),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(\n totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0),\n ),\n totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),\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: AccountingCategoryList.find((a) => a.id === payload.accountingCategory)?.label ?? 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 paymentType: payload.paymentType\n ? internationalizationConsistency(locale, payload.paymentType, '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: data.comment && typeof data.comment === 'string' ? data.comment?.replace(/\\n/g, '<br/>') : null,\n products: data.products.map((p) => ({\n ...p,\n comment: p.comment && typeof p.comment === 'string' ? p.comment?.replace(/\\n/g, '<br/>') : null,\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"]}
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import { orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq, round as _round } from 'lodash';\nimport * as dayjs from 'dayjs';\nimport {\n ReadCommercialDocumentTemplate,\n ReadDocumentEditing,\n ReadVatEditing,\n} from '../../types/Interface/api/commercialManagement/Read';\nimport { AccountingCategoryList, FontIds, fontList, InvoiceLanguage } from '../../types/Enum/CommercialManagement';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice';\nimport { Vat } from '../../types/Enum/Vat';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common';\nimport { bodyTemplate } from './templates/body';\nimport { productToReadProductEditing } from './product';\nimport { vatToReadVatEditing } from './vat';\nimport {\n CreateInvoiceDocument,\n CreateMailHeader,\n CreatePreSaleDocument,\n ReadCommercialMailTemplate,\n} from '../../types';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty';\nimport { getBrandConfig } from '../brands';\nimport { internationalizationChoices, internationalizationConsistency } from './internationalization/choices';\n\nimport * as ejs from 'ejs';\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nrequire('dayjs/locale/fr');\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 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 totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');\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 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 compensation: payload.compensation\n ? (internationalizationConsistency(locale, payload.compensation, 'recoveryCost') ?? payload.compensation)\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') ?? null)\n : null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: _sumBy(products, '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(_sumBy(products, 'totalTaxExcluded')),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(\n totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0),\n ),\n totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),\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 paymentType: payload.paymentType\n ? internationalizationConsistency(locale, payload.paymentType, '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: data.comment && typeof data.comment === 'string' ? data.comment?.replace(/\\n/g, '<br/>') : null,\n products: data.products.map((p) => ({\n ...p,\n comment: p.comment && typeof p.comment === 'string' ? p.comment?.replace(/\\n/g, '<br/>') : null,\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"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { InvoiceLanguage } from '../../../types/Enum/CommercialManagement';
|
|
2
2
|
import { InternationalizationChoicesType } from './type';
|
|
3
|
-
type InternationalizationConsistencyKey = 'penalties' | 'discount' | 'vatMention' | 'recoveryCost' | 'paymentType' | 'termsOfPayment';
|
|
3
|
+
type InternationalizationConsistencyKey = 'penalties' | 'discount' | 'vatMention' | 'recoveryCost' | 'paymentType' | 'termsOfPayment' | 'accountingCategory';
|
|
4
4
|
export declare const internationalizationChoices: InternationalizationChoicesType;
|
|
5
5
|
export declare const internationalizationConsistency: (language: InvoiceLanguage, value: string, key: InternationalizationConsistencyKey) => string | undefined;
|
|
6
6
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"choices.d.ts","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/internationalization/choices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,MAAM,0CAA0C,CAAC;AACjG,OAAO,EAAE,+BAA+B,EAAE,MAAM,QAAQ,CAAC;AAEzD,KAAK,kCAAkC,GACnC,WAAW,GACX,UAAU,GACV,YAAY,GACZ,cAAc,GACd,aAAa,GACb,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"choices.d.ts","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/internationalization/choices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,MAAM,0CAA0C,CAAC;AACjG,OAAO,EAAE,+BAA+B,EAAE,MAAM,QAAQ,CAAC;AAEzD,KAAK,kCAAkC,GACnC,WAAW,GACX,UAAU,GACV,YAAY,GACZ,cAAc,GACd,aAAa,GACb,gBAAgB,GAChB,oBAAoB,CAAC;AAEzB,eAAO,MAAM,2BAA2B,EAAE,+BA6XzC,CAAC;AAuHF,eAAO,MAAM,+BAA+B,aAChC,eAAe,SAClB,MAAM,OACR,kCAAkC,KACtC,MAAM,GAAG,SAKX,CAAC"}
|
|
@@ -239,7 +239,7 @@ export const internationalizationChoices = {
|
|
|
239
239
|
accountingCategory: {
|
|
240
240
|
title: 'Transaction type',
|
|
241
241
|
choices: [
|
|
242
|
-
{ id: AccountingCategoryId.DELIVERY_OF_GOOD, label: '
|
|
242
|
+
{ id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Supply of goods' },
|
|
243
243
|
{ id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services provision' },
|
|
244
244
|
{ id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services provision and supply of goods' },
|
|
245
245
|
],
|
|
@@ -482,6 +482,20 @@ const internationalizationMatching = {
|
|
|
482
482
|
en: '60 days upon receipt of invoice',
|
|
483
483
|
},
|
|
484
484
|
],
|
|
485
|
+
accountingCategory: [
|
|
486
|
+
{
|
|
487
|
+
fr: 'Livraison de biens',
|
|
488
|
+
en: 'Supply of goods',
|
|
489
|
+
},
|
|
490
|
+
{
|
|
491
|
+
fr: 'Prestation de services',
|
|
492
|
+
en: 'Services provision',
|
|
493
|
+
},
|
|
494
|
+
{
|
|
495
|
+
fr: 'Prestation de services et livraison de biens',
|
|
496
|
+
en: 'Services provision and supply of goods',
|
|
497
|
+
},
|
|
498
|
+
],
|
|
485
499
|
};
|
|
486
500
|
export const internationalizationConsistency = (language, value, key) => {
|
|
487
501
|
const keyObjectToMacht = internationalizationMatching[key];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"choices.js","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/internationalization/choices.ts"],"names":[],"mappings":"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","sourcesContent":["import { AccountingCategoryId, InvoiceLanguage } from '../../../types/Enum/CommercialManagement';\nimport { InternationalizationChoicesType } from './type';\n\ntype InternationalizationConsistencyKey =\n | 'penalties'\n | 'discount'\n | 'vatMention'\n | 'recoveryCost'\n | 'paymentType'\n | 'termsOfPayment';\n\nexport const internationalizationChoices: InternationalizationChoicesType = {\n fr: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'À la livraison',\n 'À la commande',\n 'À réception de la facture',\n 'Exigible sous 14 jours',\n 'Exigible sous 30 jours',\n '30 jours à réception de la facture',\n '45 jours à réception de la facture',\n '60 jours à réception de la facture',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n options: {\n penalties: ['Non applicable', '3 fois le taux légal', 'Taux directeur de la BCE + 10 points'],\n discount: ['Non applicable', 'Aucun escompte en cas de paiement anticipé'],\n vatMention: [\n 'Non concerné',\n 'Non applicable',\n 'TVA non applicable, art. 293 B du CGI',\n 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n \"Non soumis à TVA selon l'article 261C du CGI\",\n 'Article 261 D du code général des impôts (CGI)',\n 'Exonération de TVA, article 283-2 du Code général des impôts',\n 'Exonération de la TVA : Article 262 ter I du CGI',\n 'Mention de TVA 261.4.4 1 du CGI',\n \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n 'Facture soumise au régime de l’auto-liquidation de la TVA',\n ],\n recoveryCost: ['Non applicable', '40€'],\n paymentType: ['Carte bancaire', 'Chèque', 'Espèces', 'Prélèvement', 'Virement bancaire'],\n },\n },\n template: {\n common: {\n headers: {\n emissionDate: \"Date d'émission\",\n accountingCategory: {\n title: \"Catégorie de l'opération\",\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n },\n footer: {\n capital: 'au capital de',\n siren: 'immatriculée sous le SIREN',\n vatCode: 'N° TVA',\n marginVat: 'Régime TVA sur marge',\n legalVatMention: 'ART 297-A du CGI ou directive 2006-212 CE',\n shouldPayTaxAfterDebit: \"Option pour le paiement de la taxe d'après les débits\",\n penalties: 'Pénalités en cas de retard',\n discount: 'Escompte',\n recoveryCosts: 'Indemnités forfaitaire en cas de retard',\n generate: 'Généré par',\n },\n options: {\n vatMention: 'Mention TVA',\n paymentType: 'Mode de paiement',\n bank: 'BANQUE',\n approval: 'Bon pour accord',\n comment: 'Commentaire',\n },\n table: {\n headers: {\n product: 'Article',\n quantity: 'Quantité',\n unitPrice: 'P.U HT',\n unitPriceWithoutVat: 'P.U',\n discount: 'Remise',\n vat: 'TVA',\n amount: 'Montant HT',\n amountWithoutVat: 'Montant',\n base: 'Base',\n rate: 'Taux',\n vatAmount: 'Montant TVA',\n recap: 'Récapitulatif',\n },\n lines: {\n totalHt: 'Total HT',\n vat: 'TVA',\n totalTTC: 'Total TTC',\n totalWhitoutVat: 'Total',\n deposit: 'Acompte',\n remainderToPay: 'Reste à payer',\n netToPay: 'Net à payer',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Facture',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n estimate: {\n headers: {\n title: 'Devis',\n dueDate: \"Valide jusqu'au\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n orderForm: {\n headers: {\n title: 'Bon de commande',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n deposit: {\n headers: {\n title: \"Facture d'acompte\",\n expirationDate: \"Date d'expiration\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n asset: {\n headers: {\n title: 'Avoir',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n remainder: {\n headers: {\n title: 'Facture de solde',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n draft: {\n headers: {\n title: 'Brouillon',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Échéance',\n generate: 'Généré par',\n displayDocument: 'Afficher le document',\n totalHt: 'Total HT',\n totalVat: 'Total TVA',\n totalTtc: 'Total TTC',\n send: 'vous adresse',\n },\n invoice: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n estimate: {\n title: 'ce devis',\n subTitle: 'Devis',\n },\n orderForm: {\n title: 'ce bon de commande',\n subTitle: 'Bon de commande',\n },\n deposit: {\n title: 'cet acompte',\n subTitle: 'Acompte',\n },\n asset: {\n title: 'cet avoir',\n subTitle: 'Avoir',\n },\n remainder: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n default: {\n title: 'ce document',\n subTitle: 'Document',\n },\n },\n },\n en: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'On delivery',\n 'On order',\n 'Upon receipt of invoice',\n 'Due within 14 days',\n 'Due within 30 days',\n '30 days upon receipt of invoice',\n '45 days upon receipt of invoice',\n '60 days upon receipt of invoice',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Delivery of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services delivery' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services and goods delivery' },\n ],\n },\n options: {\n penalties: ['Not applicable', '3 times the legal rate', 'ECB key rate + 10 points'],\n discount: ['Not applicable', 'No discount for early payment'],\n vatMention: [\n 'Not affected',\n 'Not applicable',\n 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n 'Article 261D of the French General Tax Code (FGTC)',\n 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)',\n 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Invoice subject to VAT reverse charge system',\n ],\n recoveryCost: ['Not applicable', '40€'],\n paymentType: ['Credit card', 'Check', 'Cash', 'Direct debit', 'Bank transfer'],\n },\n },\n template: {\n common: {\n headers: {\n emissionDate: 'Invoice date',\n accountingCategory: {\n title: 'Transaction type',\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'supply of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services provision' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services provision and supply of goods' },\n ],\n },\n },\n footer: {\n capital: 'with capital of',\n siren: 'registered under SIREN',\n vatCode: 'VAT number',\n marginVat: 'VAT margin scheme',\n legalVatMention: 'ART 297-A of the FGTC or directive 2006-212 EC',\n shouldPayTaxAfterDebit: 'Option to pay tax on debits',\n penalties: 'Late fees',\n discount: 'discount',\n recoveryCosts: 'flat-rate delay compensation',\n generate: 'Created by',\n },\n options: {\n vatMention: 'VAT mention',\n paymentType: 'payment type',\n bank: 'BANK',\n approval: 'Agreed and signed',\n comment: 'Comment',\n },\n table: {\n headers: {\n product: 'Product',\n quantity: 'Quantity',\n unitPrice: 'Excl. tax unit price',\n unitPriceWithoutVat: 'Unit price',\n discount: 'Discount',\n vat: 'VAT',\n amount: 'Amount excl. tax',\n amountWithoutVat: 'Amount',\n base: 'Base',\n rate: 'Rate',\n vatAmount: 'VAT amount',\n recap: 'Summary',\n },\n lines: {\n totalHt: 'Amount excl. tax',\n vat: 'VAT',\n totalTTC: 'Amount incl. tax',\n totalWhitoutVat: 'Amount',\n deposit: 'Deposit',\n remainderToPay: 'Remainder to pay',\n netToPay: 'Net to pay',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n estimate: {\n headers: {\n title: 'Quotation',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n orderForm: {\n headers: {\n title: 'Order form',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n deposit: {\n headers: {\n title: 'Deposit invoice',\n expirationDate: 'expiry date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n asset: {\n headers: {\n title: 'Credit note',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n remainder: {\n headers: {\n title: 'Balance invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n draft: {\n headers: {\n title: 'Draft',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Due date',\n generate: 'Created by',\n displayDocument: 'Display document',\n totalHt: 'Total excl. tax',\n totalVat: 'Total VAT',\n totalTtc: 'Total incl. tax',\n send: 'send you',\n },\n invoice: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n estimate: {\n title: 'this estimate',\n subTitle: 'Estimate',\n },\n orderForm: {\n title: 'this order form',\n subTitle: 'Order form',\n },\n deposit: {\n title: 'this deposit',\n subTitle: 'Deposit',\n },\n asset: {\n title: 'this asset',\n subTitle: 'Asset',\n },\n remainder: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n default: {\n title: 'this document',\n subTitle: 'Document',\n },\n },\n },\n};\n\nconst internationalizationMatching: { [key: string]: { fr: string; en: string }[] } = {\n penalties: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '3 fois le taux légal', en: '3 times the legal rate' },\n { fr: 'Taux directeur de la BCE + 10 points', en: 'ECB key rate + 10 points' },\n ],\n discount: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: 'Aucun escompte en cas de paiement anticipé', en: 'No discount for early payment' },\n ],\n recoveryCost: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '40€', en: '40€' },\n ],\n paymentType: [\n { fr: 'Carte bancaire', en: 'Credit card' },\n { fr: 'Chèque', en: 'Check' },\n { fr: 'Espèces', en: 'Cash' },\n { fr: 'Prélèvement', en: 'Direct debit' },\n { fr: 'Virement bancaire', en: 'Bank transfer' },\n ],\n vatMention: [\n { fr: 'Non concerné', en: 'Not affected' },\n { fr: 'Non applicable', en: 'Not applicable' },\n {\n fr: 'TVA non applicable, art. 293 B du CGI',\n en: 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n },\n {\n fr: 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n en: 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n },\n {\n fr: \"Non soumis à TVA selon l'article 261C du CGI\",\n en: 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n },\n { fr: 'Article 261 D du code général des impôts (CGI)', en: 'Article 261D of the French General Tax Code (FGTC)' },\n {\n fr: 'Exonération de TVA, article 283-2 du Code général des impôts',\n en: 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n },\n {\n fr: 'Exonération de la TVA : Article 262 ter I du CGI',\n en: 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n },\n { fr: 'Mention de TVA 261.4.4 1 du CGI', en: 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)' },\n {\n fr: \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n en: 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Facture soumise au régime de l’auto-liquidation de la TVA',\n en: 'Invoice subject to VAT reverse charge system',\n },\n ],\n termsOfPayment: [\n {\n fr: 'À la livraison',\n en: 'On delivery',\n },\n {\n fr: 'À la command',\n en: 'On order',\n },\n {\n fr: 'À réception de la facture',\n en: 'Upon receipt of invoice',\n },\n {\n fr: 'Exigible sous 14 jours',\n en: 'Due within 14 days',\n },\n {\n fr: 'Exigible sous 30 jours',\n en: 'Due within 30 days',\n },\n {\n fr: '30 jours à réception de la facture',\n en: '30 days upon receipt of invoice',\n },\n {\n fr: '45 jours à réception de la facture',\n en: '45 days upon receipt of invoice',\n },\n {\n fr: '60 jours à réception de la facture',\n en: '60 days upon receipt of invoice',\n },\n ],\n};\n\nexport const internationalizationConsistency = (\n language: InvoiceLanguage,\n value: string,\n key: InternationalizationConsistencyKey,\n): string | undefined => {\n const keyObjectToMacht = internationalizationMatching[key];\n return language === InvoiceLanguage.FR\n ? keyObjectToMacht.find((obj) => obj.fr === value)?.fr\n : keyObjectToMacht.find((obj) => obj.fr === value)?.en;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"choices.js","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/internationalization/choices.ts"],"names":[],"mappings":"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","sourcesContent":["import { AccountingCategoryId, InvoiceLanguage } from '../../../types/Enum/CommercialManagement';\nimport { InternationalizationChoicesType } from './type';\n\ntype InternationalizationConsistencyKey =\n | 'penalties'\n | 'discount'\n | 'vatMention'\n | 'recoveryCost'\n | 'paymentType'\n | 'termsOfPayment'\n | 'accountingCategory';\n\nexport const internationalizationChoices: InternationalizationChoicesType = {\n fr: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'À la livraison',\n 'À la commande',\n 'À réception de la facture',\n 'Exigible sous 14 jours',\n 'Exigible sous 30 jours',\n '30 jours à réception de la facture',\n '45 jours à réception de la facture',\n '60 jours à réception de la facture',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n options: {\n penalties: ['Non applicable', '3 fois le taux légal', 'Taux directeur de la BCE + 10 points'],\n discount: ['Non applicable', 'Aucun escompte en cas de paiement anticipé'],\n vatMention: [\n 'Non concerné',\n 'Non applicable',\n 'TVA non applicable, art. 293 B du CGI',\n 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n \"Non soumis à TVA selon l'article 261C du CGI\",\n 'Article 261 D du code général des impôts (CGI)',\n 'Exonération de TVA, article 283-2 du Code général des impôts',\n 'Exonération de la TVA : Article 262 ter I du CGI',\n 'Mention de TVA 261.4.4 1 du CGI',\n \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n 'Facture soumise au régime de l’auto-liquidation de la TVA',\n ],\n recoveryCost: ['Non applicable', '40€'],\n paymentType: ['Carte bancaire', 'Chèque', 'Espèces', 'Prélèvement', 'Virement bancaire'],\n },\n },\n template: {\n common: {\n headers: {\n emissionDate: \"Date d'émission\",\n accountingCategory: {\n title: \"Catégorie de l'opération\",\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n },\n footer: {\n capital: 'au capital de',\n siren: 'immatriculée sous le SIREN',\n vatCode: 'N° TVA',\n marginVat: 'Régime TVA sur marge',\n legalVatMention: 'ART 297-A du CGI ou directive 2006-212 CE',\n shouldPayTaxAfterDebit: \"Option pour le paiement de la taxe d'après les débits\",\n penalties: 'Pénalités en cas de retard',\n discount: 'Escompte',\n recoveryCosts: 'Indemnités forfaitaire en cas de retard',\n generate: 'Généré par',\n },\n options: {\n vatMention: 'Mention TVA',\n paymentType: 'Mode de paiement',\n bank: 'BANQUE',\n approval: 'Bon pour accord',\n comment: 'Commentaire',\n },\n table: {\n headers: {\n product: 'Article',\n quantity: 'Quantité',\n unitPrice: 'P.U HT',\n unitPriceWithoutVat: 'P.U',\n discount: 'Remise',\n vat: 'TVA',\n amount: 'Montant HT',\n amountWithoutVat: 'Montant',\n base: 'Base',\n rate: 'Taux',\n vatAmount: 'Montant TVA',\n recap: 'Récapitulatif',\n },\n lines: {\n totalHt: 'Total HT',\n vat: 'TVA',\n totalTTC: 'Total TTC',\n totalWhitoutVat: 'Total',\n deposit: 'Acompte',\n remainderToPay: 'Reste à payer',\n netToPay: 'Net à payer',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Facture',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n estimate: {\n headers: {\n title: 'Devis',\n dueDate: \"Valide jusqu'au\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n orderForm: {\n headers: {\n title: 'Bon de commande',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n deposit: {\n headers: {\n title: \"Facture d'acompte\",\n expirationDate: \"Date d'expiration\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n asset: {\n headers: {\n title: 'Avoir',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n remainder: {\n headers: {\n title: 'Facture de solde',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n draft: {\n headers: {\n title: 'Brouillon',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Échéance',\n generate: 'Généré par',\n displayDocument: 'Afficher le document',\n totalHt: 'Total HT',\n totalVat: 'Total TVA',\n totalTtc: 'Total TTC',\n send: 'vous adresse',\n },\n invoice: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n estimate: {\n title: 'ce devis',\n subTitle: 'Devis',\n },\n orderForm: {\n title: 'ce bon de commande',\n subTitle: 'Bon de commande',\n },\n deposit: {\n title: 'cet acompte',\n subTitle: 'Acompte',\n },\n asset: {\n title: 'cet avoir',\n subTitle: 'Avoir',\n },\n remainder: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n default: {\n title: 'ce document',\n subTitle: 'Document',\n },\n },\n },\n en: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'On delivery',\n 'On order',\n 'Upon receipt of invoice',\n 'Due within 14 days',\n 'Due within 30 days',\n '30 days upon receipt of invoice',\n '45 days upon receipt of invoice',\n '60 days upon receipt of invoice',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Delivery of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services delivery' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services and goods delivery' },\n ],\n },\n options: {\n penalties: ['Not applicable', '3 times the legal rate', 'ECB key rate + 10 points'],\n discount: ['Not applicable', 'No discount for early payment'],\n vatMention: [\n 'Not affected',\n 'Not applicable',\n 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n 'Article 261D of the French General Tax Code (FGTC)',\n 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)',\n 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Invoice subject to VAT reverse charge system',\n ],\n recoveryCost: ['Not applicable', '40€'],\n paymentType: ['Credit card', 'Check', 'Cash', 'Direct debit', 'Bank transfer'],\n },\n },\n template: {\n common: {\n headers: {\n emissionDate: 'Invoice date',\n accountingCategory: {\n title: 'Transaction type',\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Supply of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services provision' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services provision and supply of goods' },\n ],\n },\n },\n footer: {\n capital: 'with capital of',\n siren: 'registered under SIREN',\n vatCode: 'VAT number',\n marginVat: 'VAT margin scheme',\n legalVatMention: 'ART 297-A of the FGTC or directive 2006-212 EC',\n shouldPayTaxAfterDebit: 'Option to pay tax on debits',\n penalties: 'Late fees',\n discount: 'discount',\n recoveryCosts: 'flat-rate delay compensation',\n generate: 'Created by',\n },\n options: {\n vatMention: 'VAT mention',\n paymentType: 'payment type',\n bank: 'BANK',\n approval: 'Agreed and signed',\n comment: 'Comment',\n },\n table: {\n headers: {\n product: 'Product',\n quantity: 'Quantity',\n unitPrice: 'Excl. tax unit price',\n unitPriceWithoutVat: 'Unit price',\n discount: 'Discount',\n vat: 'VAT',\n amount: 'Amount excl. tax',\n amountWithoutVat: 'Amount',\n base: 'Base',\n rate: 'Rate',\n vatAmount: 'VAT amount',\n recap: 'Summary',\n },\n lines: {\n totalHt: 'Amount excl. tax',\n vat: 'VAT',\n totalTTC: 'Amount incl. tax',\n totalWhitoutVat: 'Amount',\n deposit: 'Deposit',\n remainderToPay: 'Remainder to pay',\n netToPay: 'Net to pay',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n estimate: {\n headers: {\n title: 'Quotation',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n orderForm: {\n headers: {\n title: 'Order form',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n deposit: {\n headers: {\n title: 'Deposit invoice',\n expirationDate: 'expiry date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n asset: {\n headers: {\n title: 'Credit note',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n remainder: {\n headers: {\n title: 'Balance invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n draft: {\n headers: {\n title: 'Draft',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Due date',\n generate: 'Created by',\n displayDocument: 'Display document',\n totalHt: 'Total excl. tax',\n totalVat: 'Total VAT',\n totalTtc: 'Total incl. tax',\n send: 'send you',\n },\n invoice: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n estimate: {\n title: 'this estimate',\n subTitle: 'Estimate',\n },\n orderForm: {\n title: 'this order form',\n subTitle: 'Order form',\n },\n deposit: {\n title: 'this deposit',\n subTitle: 'Deposit',\n },\n asset: {\n title: 'this asset',\n subTitle: 'Asset',\n },\n remainder: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n default: {\n title: 'this document',\n subTitle: 'Document',\n },\n },\n },\n};\n\nconst internationalizationMatching: { [key: string]: { fr: string; en: string }[] } = {\n penalties: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '3 fois le taux légal', en: '3 times the legal rate' },\n { fr: 'Taux directeur de la BCE + 10 points', en: 'ECB key rate + 10 points' },\n ],\n discount: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: 'Aucun escompte en cas de paiement anticipé', en: 'No discount for early payment' },\n ],\n recoveryCost: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '40€', en: '40€' },\n ],\n paymentType: [\n { fr: 'Carte bancaire', en: 'Credit card' },\n { fr: 'Chèque', en: 'Check' },\n { fr: 'Espèces', en: 'Cash' },\n { fr: 'Prélèvement', en: 'Direct debit' },\n { fr: 'Virement bancaire', en: 'Bank transfer' },\n ],\n vatMention: [\n { fr: 'Non concerné', en: 'Not affected' },\n { fr: 'Non applicable', en: 'Not applicable' },\n {\n fr: 'TVA non applicable, art. 293 B du CGI',\n en: 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n },\n {\n fr: 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n en: 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n },\n {\n fr: \"Non soumis à TVA selon l'article 261C du CGI\",\n en: 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n },\n { fr: 'Article 261 D du code général des impôts (CGI)', en: 'Article 261D of the French General Tax Code (FGTC)' },\n {\n fr: 'Exonération de TVA, article 283-2 du Code général des impôts',\n en: 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n },\n {\n fr: 'Exonération de la TVA : Article 262 ter I du CGI',\n en: 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n },\n { fr: 'Mention de TVA 261.4.4 1 du CGI', en: 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)' },\n {\n fr: \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n en: 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Facture soumise au régime de l’auto-liquidation de la TVA',\n en: 'Invoice subject to VAT reverse charge system',\n },\n ],\n termsOfPayment: [\n {\n fr: 'À la livraison',\n en: 'On delivery',\n },\n {\n fr: 'À la command',\n en: 'On order',\n },\n {\n fr: 'À réception de la facture',\n en: 'Upon receipt of invoice',\n },\n {\n fr: 'Exigible sous 14 jours',\n en: 'Due within 14 days',\n },\n {\n fr: 'Exigible sous 30 jours',\n en: 'Due within 30 days',\n },\n {\n fr: '30 jours à réception de la facture',\n en: '30 days upon receipt of invoice',\n },\n {\n fr: '45 jours à réception de la facture',\n en: '45 days upon receipt of invoice',\n },\n {\n fr: '60 jours à réception de la facture',\n en: '60 days upon receipt of invoice',\n },\n ],\n accountingCategory: [\n {\n fr: 'Livraison de biens',\n en: 'Supply of goods',\n },\n {\n fr: 'Prestation de services',\n en: 'Services provision',\n },\n {\n fr: 'Prestation de services et livraison de biens',\n en: 'Services provision and supply of goods',\n },\n ],\n};\n\nexport const internationalizationConsistency = (\n language: InvoiceLanguage,\n value: string,\n key: InternationalizationConsistencyKey,\n): string | undefined => {\n const keyObjectToMacht = internationalizationMatching[key];\n return language === InvoiceLanguage.FR\n ? keyObjectToMacht.find((obj) => obj.fr === value)?.fr\n : keyObjectToMacht.find((obj) => obj.fr === value)?.en;\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@silexpert/core",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.82",
|
|
4
4
|
"description": "Silex Core perform HTTP Request and object binding. Silex core helps developers to retrieve and return formatted object",
|
|
5
5
|
"homepage": "https://gitlab.compta-clementine.fr/dev/silex-api",
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -1,22 +1,68 @@
|
|
|
1
1
|
import { Resource } from '../Resource';
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
CreateReminder,
|
|
4
|
+
CreateReminder2,
|
|
5
|
+
CreateReminderAttachment,
|
|
6
|
+
CreateScheduleReminder,
|
|
7
|
+
IInvoiceReminder,
|
|
8
|
+
IReminder,
|
|
9
|
+
IReminderAttachment,
|
|
10
|
+
IScheduledReminder,
|
|
11
|
+
UpdateReminder,
|
|
12
|
+
UpdateReminder2,
|
|
13
|
+
} from '../../types';
|
|
3
14
|
|
|
4
15
|
export class Reminder extends Resource {
|
|
16
|
+
/**
|
|
17
|
+
* @deprecated
|
|
18
|
+
*/
|
|
5
19
|
create(idEstimateInvoice: number, payload: CreateReminder): Promise<IInvoiceReminder> {
|
|
6
20
|
return this.axios.$post(`/commercial-management/documents/${idEstimateInvoice}/reminders`, payload);
|
|
7
21
|
}
|
|
8
22
|
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated
|
|
25
|
+
*/
|
|
9
26
|
update(id: number, idEstimateInvoice: number, payload: UpdateReminder): Promise<IInvoiceReminder> {
|
|
10
27
|
return this.axios.$put(`/commercial-management/documents/${idEstimateInvoice}/reminders/${id}`, payload);
|
|
11
28
|
}
|
|
12
29
|
|
|
30
|
+
/**
|
|
31
|
+
* @deprecated
|
|
32
|
+
*/
|
|
13
33
|
delete(id: number, idEstimateInvoice: number): Promise<true> {
|
|
14
34
|
return this.axios.$delete(`/commercial-management/documents/${idEstimateInvoice}/reminders/${id}`);
|
|
15
35
|
}
|
|
16
36
|
|
|
17
|
-
|
|
18
|
-
return this.axios.$
|
|
19
|
-
|
|
20
|
-
|
|
37
|
+
createReminder(payload: CreateReminder2): Promise<IReminder> {
|
|
38
|
+
return this.axios.$post('/commercial-management/reminders', payload);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
updateReminder(id: number, payload: UpdateReminder2): Promise<IReminder> {
|
|
42
|
+
return this.axios.$put(`/commercial-management/reminders/${id}`, payload);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
deleteReminder(id: number): Promise<true> {
|
|
46
|
+
return this.axios.$delete(`/commercial-management/reminders/${id}`);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// ATTACHMENTS
|
|
50
|
+
|
|
51
|
+
createAttachment(idReminder: number, payload: CreateReminderAttachment): Promise<IReminderAttachment> {
|
|
52
|
+
return this.axios.$post(`/commercial-management/reminders/${idReminder}/attachments`, payload);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
deleteAttachment(id: number, idReminder: number): Promise<true> {
|
|
56
|
+
return this.axios.$delete(`/commercial-management/reminders/${idReminder}/attachments/${id}`);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// SCHEDULES
|
|
60
|
+
|
|
61
|
+
createSchedule(idReminder: number, payload: CreateScheduleReminder): Promise<IScheduledReminder> {
|
|
62
|
+
return this.axios.$post(`/commercial-management/reminders/${idReminder}/schedules`, payload);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
deleteSchedule(id: number, idReminder: number): Promise<true> {
|
|
66
|
+
return this.axios.$delete(`/commercial-management/reminders/${idReminder}/schedules/${id}`);
|
|
21
67
|
}
|
|
22
68
|
}
|
|
@@ -4,6 +4,7 @@ export enum StateAppointment {
|
|
|
4
4
|
SOCIETY_CANCELLED = 3,
|
|
5
5
|
MISSING_FILE = 4,
|
|
6
6
|
BUSINESS_CONTRIBUTOR = 5,
|
|
7
|
+
MANY_COMPANIES = 6,
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
export const StateAppointmentDetail = {
|
|
@@ -27,4 +28,8 @@ export const StateAppointmentDetail = {
|
|
|
27
28
|
id: StateAppointment.BUSINESS_CONTRIBUTOR,
|
|
28
29
|
name: "Apporteur d'affaires",
|
|
29
30
|
},
|
|
31
|
+
MANY_COMPANIES: {
|
|
32
|
+
id: StateAppointment.MANY_COMPANIES,
|
|
33
|
+
name: 'Multiples sociétés',
|
|
34
|
+
},
|
|
30
35
|
};
|
|
@@ -183,66 +183,40 @@ export const DefaultEmailTemplateList: Array<Omit<ISaleEmail, 'idSociety'>> = [
|
|
|
183
183
|
{
|
|
184
184
|
name: 'modèle devis par défaut',
|
|
185
185
|
subject: 'Votre devis',
|
|
186
|
-
content:
|
|
187
|
-
|
|
188
|
-
<p>Vous en souhaitant bonne réception.</p>
|
|
189
|
-
<p>Cordialement,
|
|
190
|
-
<span style="color: rgb(131, 131, 132);">[raison_sociale]</span>
|
|
191
|
-
</p>`,
|
|
186
|
+
content:
|
|
187
|
+
'<p>Bonjour, <span style="color: rgb(131, 131, 132);">[nom_client]</span> </p> <p>Vous trouverez ci-joint votre devis N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span>. </p> <p>Vous en souhaitant bonne réception. </p> <p>Cordialement,</p><p><span style="color: rgb(131, 131, 132);">[raison_sociale]</span></p>',
|
|
192
188
|
type: EmailType.ESTIMATE,
|
|
193
189
|
isDefault: false,
|
|
194
190
|
},
|
|
195
191
|
{
|
|
196
192
|
name: 'modèle facture par défaut',
|
|
197
193
|
subject: 'Votre facture',
|
|
198
|
-
content:
|
|
199
|
-
|
|
200
|
-
<p>Cordialement,
|
|
201
|
-
<span style="color: rgb(131, 131, 132);">[raison_sociale]</span>
|
|
202
|
-
</p>`,
|
|
194
|
+
content:
|
|
195
|
+
'<p>Bonjour, <span style="color: rgb(131, 131, 132);">[nom_client]</span> </p> <p>Vous trouverez ci-joint votre facture N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span>.</p> <p>Vous en souhaitant bonne réception.</p> <p>Cordialement,</p><p><span style="color: rgb(131, 131, 132);">[raison_sociale]</span></p>',
|
|
203
196
|
type: EmailType.INVOICE,
|
|
204
197
|
isDefault: false,
|
|
205
198
|
},
|
|
206
199
|
{
|
|
207
200
|
name: 'modèle bon de commande par défaut',
|
|
208
201
|
subject: 'Votre bon de commande',
|
|
209
|
-
content:
|
|
210
|
-
|
|
211
|
-
<p>Vous en souhaitant bonne réception.</p>
|
|
212
|
-
<p>Cordialement,
|
|
213
|
-
<span style="color: rgb(131, 131, 132);">[raison_sociale]</span>
|
|
214
|
-
</p>`,
|
|
202
|
+
content:
|
|
203
|
+
'<p>Bonjour, <span style="color: rgb(131, 131, 132);">[nom_client]</span></p> <p>Vous trouverez ci-joint votre bon de commande N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span>. </p> <p>Vous en souhaitant bonne réception.</p> <p>Cordialement,</p><p><span style="color: rgb(131, 131, 132);">[raison_sociale]</span></p>',
|
|
215
204
|
type: EmailType.ORDER_FORM,
|
|
216
205
|
isDefault: false,
|
|
217
206
|
},
|
|
218
207
|
{
|
|
219
208
|
name: 'modèle avoir par défaut',
|
|
220
209
|
subject: 'Votre avoir',
|
|
221
|
-
content:
|
|
222
|
-
|
|
223
|
-
<p>Vous trouverez ci-joint votre bon de commande N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span>. </p>
|
|
224
|
-
<p>Vous en souhaitant bonne réception.</p>
|
|
225
|
-
<p>Cordialement,
|
|
226
|
-
<span style="color: rgb(131, 131, 132);">[raison_sociale]</span>
|
|
227
|
-
</p>`,
|
|
210
|
+
content:
|
|
211
|
+
'<p>Bonjour, <span style="color: rgb(131, 131, 132);">[nom_client]</span> </p> <p>Vous trouverez ci-joint votre facture.</p> <p>Vous trouverez ci-joint votre bon de commande N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span>. </p> <p>Vous en souhaitant bonne réception.</p> <p>Cordialement,</p><p><span style="color: rgb(131, 131, 132);">[raison_sociale]</span></p>',
|
|
228
212
|
type: EmailType.ASSET,
|
|
229
213
|
isDefault: false,
|
|
230
214
|
},
|
|
231
215
|
{
|
|
232
216
|
name: 'modèle relance par défaut',
|
|
233
217
|
subject: 'Votre facture',
|
|
234
|
-
content:
|
|
235
|
-
|
|
236
|
-
Je me permets de revenir vers vous concernant la facture N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span> pour laquelle le paiement est toujours en attente.
|
|
237
|
-
</p>
|
|
238
|
-
<p>
|
|
239
|
-
Je vous joins à nouveau le document en pièce jointe en cas de besoin.
|
|
240
|
-
</p>
|
|
241
|
-
<p>Vous en souhaitant bonne réception.</p>
|
|
242
|
-
<p>
|
|
243
|
-
Cordialement,
|
|
244
|
-
<span style="color: rgb(131, 131, 132);">[raison_sociale]</span>
|
|
245
|
-
</p>`,
|
|
218
|
+
content:
|
|
219
|
+
'<p>Bonjour, <span style="color: rgb(131, 131, 132);">[nom_client]</span> </p> <p>Je me permets de revenir vers vous concernant la facture N°<span style="color: rgb(131, 131, 132);">[reference_document]</span> d’un montant de <span style="color: rgb(131, 131, 132);">[montant_ttc_document]</span> pour laquelle le paiement est toujours en attente. </p> <p>Je vous joins à nouveau le document en pièce jointe en cas de besoin.</p> <p>Vous en souhaitant bonne réception.</p> <p>Cordialement,</p><p><span style="color: rgb(131, 131, 132);">[raison_sociale]</span></p>',
|
|
246
220
|
type: EmailType.CUSTOMER_REMINDER,
|
|
247
221
|
isDefault: false,
|
|
248
222
|
},
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
IsObject,
|
|
11
11
|
IsOptional,
|
|
12
12
|
IsString,
|
|
13
|
+
Length,
|
|
13
14
|
Min,
|
|
14
15
|
} from 'class-validator';
|
|
15
16
|
import { BorderLineType, IFile, ReadProductEditing } from '../../..';
|
|
@@ -308,11 +309,6 @@ export class CreateCommercialSetting {
|
|
|
308
309
|
@IsString()
|
|
309
310
|
externalBorderColor?: string;
|
|
310
311
|
|
|
311
|
-
@ApiPropertyOptional()
|
|
312
|
-
@IsOptional()
|
|
313
|
-
@IsNumber()
|
|
314
|
-
reminderCustomizedDayDiff?: number | null;
|
|
315
|
-
|
|
316
312
|
@ApiPropertyOptional()
|
|
317
313
|
@IsOptional()
|
|
318
314
|
@IsInt()
|
|
@@ -331,7 +327,7 @@ export class CreateCommercialSetting {
|
|
|
331
327
|
@ApiPropertyOptional()
|
|
332
328
|
@IsOptional()
|
|
333
329
|
@IsInt()
|
|
334
|
-
|
|
330
|
+
idReminder?: number | null;
|
|
335
331
|
|
|
336
332
|
@ApiPropertyOptional()
|
|
337
333
|
@IsOptional()
|
|
@@ -535,7 +531,7 @@ export class CreateInvoiceDocument extends CommercialDocumentInputs {
|
|
|
535
531
|
assetMarginVatIds?: number[]; // Laisser vide côté front, utilisé pour l'affichage des tva sur marge sur les acomptes
|
|
536
532
|
advanceProducts?: ReadProductEditing[]; // Laisser vide côté front, utilisé pour l'affichage des bases TVA sur les acomptes
|
|
537
533
|
language?: InvoiceLanguage;
|
|
538
|
-
reminder?:
|
|
534
|
+
reminder?: CreateReminder2 | null;
|
|
539
535
|
recurrence?: CreateRecurrence | null;
|
|
540
536
|
}
|
|
541
537
|
|
|
@@ -596,11 +592,6 @@ export class CreateReminder {
|
|
|
596
592
|
idFiles?: number[];
|
|
597
593
|
}
|
|
598
594
|
|
|
599
|
-
export class CreateReminderForTemplate extends CreateReminder {
|
|
600
|
-
idSaleEmail?: number | null;
|
|
601
|
-
customizedDayDiff?: number | null;
|
|
602
|
-
}
|
|
603
|
-
|
|
604
595
|
export class CreateRecurrence {
|
|
605
596
|
@ApiProperty()
|
|
606
597
|
@IsEnum(RecurrenceType)
|
|
@@ -796,3 +787,55 @@ export class UpdateSaleDocumentTemplate {
|
|
|
796
787
|
@ToBoolean()
|
|
797
788
|
isDefault?: boolean;
|
|
798
789
|
}
|
|
790
|
+
|
|
791
|
+
export class CreateReminder2 {
|
|
792
|
+
@ApiPropertyOptional()
|
|
793
|
+
@IsString()
|
|
794
|
+
@Length(0, 255)
|
|
795
|
+
@IsOptional()
|
|
796
|
+
email: string | null;
|
|
797
|
+
|
|
798
|
+
@ApiPropertyOptional()
|
|
799
|
+
@IsString()
|
|
800
|
+
@IsOptional()
|
|
801
|
+
content: string | null;
|
|
802
|
+
|
|
803
|
+
@ApiPropertyOptional()
|
|
804
|
+
@IsString()
|
|
805
|
+
@Length(0, 255)
|
|
806
|
+
@IsOptional()
|
|
807
|
+
subject: string | null;
|
|
808
|
+
|
|
809
|
+
@ApiPropertyOptional({ comment: 'ids of file to attach' })
|
|
810
|
+
@IsArray()
|
|
811
|
+
@IsInt({ each: true })
|
|
812
|
+
@IsOptional()
|
|
813
|
+
attachments: number[];
|
|
814
|
+
|
|
815
|
+
@ApiProperty({ comment: 'days between due date and remind' })
|
|
816
|
+
@IsArray()
|
|
817
|
+
@IsInt({ each: true })
|
|
818
|
+
schedules: number[];
|
|
819
|
+
|
|
820
|
+
@ApiPropertyOptional()
|
|
821
|
+
@IsInt()
|
|
822
|
+
@IsOptional()
|
|
823
|
+
idEstimateInvoice: number | null;
|
|
824
|
+
|
|
825
|
+
@ApiPropertyOptional()
|
|
826
|
+
@IsInt()
|
|
827
|
+
@IsOptional()
|
|
828
|
+
idSaleEmail: number | null;
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
export class CreateReminderAttachment {
|
|
832
|
+
@ApiProperty()
|
|
833
|
+
@IsInt()
|
|
834
|
+
idFile: number;
|
|
835
|
+
}
|
|
836
|
+
|
|
837
|
+
export class CreateScheduleReminder {
|
|
838
|
+
@ApiProperty()
|
|
839
|
+
@IsInt()
|
|
840
|
+
day: number;
|
|
841
|
+
}
|