@silexpert/core 1.1.396 → 1.1.399
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/Payment.d.ts +7 -1
- package/dist/cjs/api/resources/Payment.d.ts.map +1 -1
- package/dist/cjs/api/resources/Payment.js +15 -0
- package/dist/cjs/api/resources/Payment.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/Enum/BrandClementine.d.ts.map +1 -1
- package/dist/cjs/types/Enum/BrandClementine.js +1 -0
- package/dist/cjs/types/Enum/BrandClementine.js.map +1 -1
- package/dist/cjs/types/Enum/ConnectorType.d.ts +2 -1
- package/dist/cjs/types/Enum/ConnectorType.d.ts.map +1 -1
- package/dist/cjs/types/Enum/ConnectorType.js +1 -0
- package/dist/cjs/types/Enum/ConnectorType.js.map +1 -1
- package/dist/cjs/types/Enum/Ged.js +1 -1
- package/dist/cjs/types/Enum/Ged.js.map +1 -1
- package/dist/cjs/types/Enum/PaymentRecovery.d.ts +51 -0
- package/dist/cjs/types/Enum/PaymentRecovery.d.ts.map +1 -0
- package/dist/cjs/types/Enum/PaymentRecovery.js +57 -0
- package/dist/cjs/types/Enum/PaymentRecovery.js.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Caarl.d.ts +140 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Caarl.d.ts.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Caarl.js +3 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Caarl.js.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Create.d.ts +49 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Create.d.ts.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Create.js +161 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Create.js.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Query.d.ts +14 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Query.d.ts.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Query.js +72 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Query.js.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Read.d.ts +50 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Read.d.ts.map +1 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Read.js +3 -0
- package/dist/cjs/types/Interface/api/PaymentRecovery/Read.js.map +1 -0
- package/dist/cjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.d.ts +1 -0
- package/dist/cjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.d.ts.map +1 -1
- package/dist/cjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.js +5 -0
- package/dist/cjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.js.map +1 -1
- package/dist/cjs/types/Interface/models/IApiError.d.ts +1 -0
- package/dist/cjs/types/Interface/models/IApiError.d.ts.map +1 -1
- package/dist/cjs/types/Interface/models/IApiError.js +1 -0
- package/dist/cjs/types/Interface/models/IApiError.js.map +1 -1
- package/dist/cjs/types/Interface/models/IFile.d.ts +4 -1
- package/dist/cjs/types/Interface/models/IFile.d.ts.map +1 -1
- package/dist/cjs/types/Interface/models/IFile.js.map +1 -1
- package/dist/cjs/types/Interface/models/IPaymentRecovery.d.ts +17 -0
- package/dist/cjs/types/Interface/models/IPaymentRecovery.d.ts.map +1 -0
- package/dist/cjs/types/Interface/models/IPaymentRecovery.js +3 -0
- package/dist/cjs/types/Interface/models/IPaymentRecovery.js.map +1 -0
- package/dist/cjs/types/index.d.ts +5 -0
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/types/index.js +5 -0
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/utils/brands.d.ts +1 -0
- package/dist/cjs/utils/brands.d.ts.map +1 -1
- package/dist/cjs/utils/brands.js.map +1 -1
- package/dist/cjs/utils/commercialManagement/recovery.d.ts +7 -0
- package/dist/cjs/utils/commercialManagement/recovery.d.ts.map +1 -0
- package/dist/cjs/utils/commercialManagement/recovery.js +31 -0
- package/dist/cjs/utils/commercialManagement/recovery.js.map +1 -0
- package/dist/mjs/api/resources/Payment.d.ts +7 -1
- package/dist/mjs/api/resources/Payment.d.ts.map +1 -1
- package/dist/mjs/api/resources/Payment.js +15 -0
- package/dist/mjs/api/resources/Payment.js.map +1 -1
- package/dist/mjs/index.d.ts +1 -0
- package/dist/mjs/index.d.ts.map +1 -1
- package/dist/mjs/index.js +1 -0
- package/dist/mjs/index.js.map +1 -1
- package/dist/mjs/types/Enum/BrandClementine.d.ts.map +1 -1
- package/dist/mjs/types/Enum/BrandClementine.js +1 -0
- package/dist/mjs/types/Enum/BrandClementine.js.map +1 -1
- package/dist/mjs/types/Enum/ConnectorType.d.ts +2 -1
- package/dist/mjs/types/Enum/ConnectorType.d.ts.map +1 -1
- package/dist/mjs/types/Enum/ConnectorType.js +1 -0
- package/dist/mjs/types/Enum/ConnectorType.js.map +1 -1
- package/dist/mjs/types/Enum/Ged.js +1 -1
- package/dist/mjs/types/Enum/Ged.js.map +1 -1
- package/dist/mjs/types/Enum/PaymentRecovery.d.ts +51 -0
- package/dist/mjs/types/Enum/PaymentRecovery.d.ts.map +1 -0
- package/dist/mjs/types/Enum/PaymentRecovery.js +54 -0
- package/dist/mjs/types/Enum/PaymentRecovery.js.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Caarl.d.ts +140 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Caarl.d.ts.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Caarl.js +2 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Caarl.js.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Create.d.ts +49 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Create.d.ts.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Create.js +181 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Create.js.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Query.d.ts +14 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Query.d.ts.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Query.js +75 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Query.js.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Read.d.ts +50 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Read.d.ts.map +1 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Read.js +2 -0
- package/dist/mjs/types/Interface/api/PaymentRecovery/Read.js.map +1 -0
- package/dist/mjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.d.ts +1 -0
- package/dist/mjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.d.ts.map +1 -1
- package/dist/mjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.js +6 -0
- package/dist/mjs/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.js.map +1 -1
- package/dist/mjs/types/Interface/models/IApiError.d.ts +1 -0
- package/dist/mjs/types/Interface/models/IApiError.d.ts.map +1 -1
- package/dist/mjs/types/Interface/models/IApiError.js +1 -0
- package/dist/mjs/types/Interface/models/IApiError.js.map +1 -1
- package/dist/mjs/types/Interface/models/IFile.d.ts +4 -1
- package/dist/mjs/types/Interface/models/IFile.d.ts.map +1 -1
- package/dist/mjs/types/Interface/models/IFile.js.map +1 -1
- package/dist/mjs/types/Interface/models/IPaymentRecovery.d.ts +17 -0
- package/dist/mjs/types/Interface/models/IPaymentRecovery.d.ts.map +1 -0
- package/dist/mjs/types/Interface/models/IPaymentRecovery.js +2 -0
- package/dist/mjs/types/Interface/models/IPaymentRecovery.js.map +1 -0
- package/dist/mjs/types/index.d.ts +5 -0
- package/dist/mjs/types/index.d.ts.map +1 -1
- package/dist/mjs/types/index.js +5 -0
- package/dist/mjs/types/index.js.map +1 -1
- package/dist/mjs/utils/brands.d.ts +1 -0
- package/dist/mjs/utils/brands.d.ts.map +1 -1
- package/dist/mjs/utils/brands.js.map +1 -1
- package/dist/mjs/utils/commercialManagement/recovery.d.ts +7 -0
- package/dist/mjs/utils/commercialManagement/recovery.d.ts.map +1 -0
- package/dist/mjs/utils/commercialManagement/recovery.js +26 -0
- package/dist/mjs/utils/commercialManagement/recovery.js.map +1 -0
- package/package.json +1 -1
- package/ts/api/resources/Payment.ts +22 -1
- package/ts/index.ts +1 -0
- package/ts/types/Enum/BrandClementine.ts +1 -0
- package/ts/types/Enum/ConnectorType.ts +1 -0
- package/ts/types/Enum/Ged.ts +1 -1
- package/ts/types/Enum/PaymentRecovery.ts +52 -0
- package/ts/types/Interface/api/PaymentRecovery/Caarl.ts +144 -0
- package/ts/types/Interface/api/PaymentRecovery/Create.ts +135 -0
- package/ts/types/Interface/api/PaymentRecovery/Query.ts +49 -0
- package/ts/types/Interface/api/PaymentRecovery/Read.ts +52 -0
- package/ts/types/Interface/api/companyCreationForm/CreateCompanyCreationForm.ts +4 -0
- package/ts/types/Interface/models/IApiError.ts +1 -0
- package/ts/types/Interface/models/IFile.ts +4 -1
- package/ts/types/Interface/models/IPaymentRecovery.ts +18 -0
- package/ts/types/index.ts +5 -0
- package/ts/utils/brands.ts +1 -0
- package/ts/utils/commercialManagement/recovery.ts +26 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brands.js","sourceRoot":"","sources":["../../../ts/utils/brands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,IAAI,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAqI1D,MAAM,SAAS,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,SAAS,CAAU,CAAC;AAGjH,MAAM,WAAW,GAOb;IACF,eAAe;IACf,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,mBAAmB;IACnB,YAAY;CACb,CAAC;AAaF,MAAM,qBAAqB,GAAG,CAAC,OAAgB,EAAa,EAAE;IAC5D,MAAM,GAAG,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpE,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAK,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAClN,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACnE,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACvE,OAAO,aAAa,CAAC;QACvB,CAAC;QACD,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/D,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/D,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,SAAoB,EAAE,OAAgB,EAAW,EAAE;IACtE,MAAM,GAAG,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpE,OAAO,qBAAqB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,OAAgB,EAAgB,EAAE;IAC9D,MAAM,WAAW,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpD,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,aAAa;IACb,MAAM,iBAAiB,GAAW,WAAW,CAAC,QAAQ,cAAc,EAAE,CAAC,CAAC;IAExE,MAAM,KAAK,GAAG,iBAAiB,CAAC;IAEhC,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAGF,SAAS,QAAQ,CAAC,MAAsB;IAEtC,IAAI,KAAwB,CAAC;IAE7B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAEpD,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,MAAM,iBAAiB,GAAY,WAAW,CAAC,QAAQ,cAAc,EAAE,CAAC,CAAC;IAEzE,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,6EAA6E;QAC7E,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAQ,EAAE,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,cAAc,GAAG,CAAC,MAA2B,EAAS,EAAE;IAE5D,MAAM,EACJ,WAAW,GAAG,IAAI,EAAE,YAAY,GAAG,IAAI,EAAE,OAAO,GACjD,GAAG,MAAM,CAAC;IACX,IAAI,KAAK,CAAC;IAEV,MAAM,WAAW,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpD,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,aAAa;IACb,MAAM,iBAAiB,GAAW,WAAW,CAAC,QAAQ,cAAc,EAAE,CAAC,CAAC;IAExE,IAAI,WAAW,EAAE,CAAC;QAChB,2CAA2C;QAC3C,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;IAC9E,CAAC;IACD,wBAAwB;IACxB,mJAAmJ;IAEnJ,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,6EAA6E;QAC7E,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAQ,EAAE,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,mEAAmE;QACnE,IAAI,cAAc,GAAG,SAAS,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACpD,sEAAsE;QACtE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;YACrF,cAAc,GAAG,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAwG,EAAE;IAC9I,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IACjH,IAAI,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,WAAW,CAAC;IAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IACpE,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,qBAAqB,CAAC;IAC/E,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAiB,EAAE;IAC1D,MAAM,WAAW,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpD,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,aAAa;IACb,MAAM,iBAAiB,GAAY,WAAW,CAAC,QAAQ,cAAc,EAAE,CAAC,CAAC;IAEzE,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AAEF,OAAO,EACL,cAAc,EAAE,WAAW,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,eAAe,EAAE,eAAe,EAAE,QAAQ,GACrH,CAAC","sourcesContent":["import { get as getLodash } from 'lodash';\nimport { BrandClementine } from '../types/Enum/BrandClementine';\nimport { BrandLegalstart } from '../types/Enum/BrandLegalstart';\nimport { BrandComptalib } from '../types/Enum/BrandComptalib';\nimport { BrandPourcentage } from '../types/Enum/BrandPourcentage';\nimport { BrandStatutsExpress } from '../types/Enum/BrandStatutsExpress';\nimport { BrandAnytime } from '../types/Enum/BrandAnytime';\nimport { SaleContract } from '..';\n\nexport type Brand = {\n idTypeBrand: number,\n name: string;\n commercialName?: string;\n urlS3?: string;\n logoS3?: string;\n lightLogoS3?: string;\n privacyPolicy?: string;\n recaptcha?: { secretKey: string; };\n urlApi1?: string;\n urlClient?: string;\n urlApp?: string;\n colors: {\n primary: string,\n primary50?: string;\n primary100?: string;\n primary300?: string;\n primary500?: string;\n primary700?: string;\n footerColor?: string;\n sendContract?: string;\n },\n listMails?: {\n administratif?: string;\n app?: string;\n bonjour?: string;\n contact: string;\n facturation?: string;\n feedback?: string;\n gestion?: string;\n juridique?: string;\n informatique?: string;\n msd?: string;\n noreply?: string;\n qualite?: string;\n paiement?: string;\n rh?: string;\n social?: string;\n support?: string;\n tva?: string;\n wb?: string;\n },\n listPhones?: {\n contact: string;\n qualite: string;\n social?: string;\n juridique: string;\n },\n companyInformation?: {\n ape: string;\n bp: string;\n city: string;\n montantCapital: string;\n nomRaisonSociale: string;\n ECName?: string;\n ECOrderCity: string;\n ECDepartment?: string,\n ECPosition?: string;\n phone: string;\n postalAddress: string;\n rcs: string;\n statut: string;\n zipCode: string;\n };\n recaptchaSecretKey?: string;\n idPrestationsListHidden?: number[];\n idPrestationsListAuthorized?: number[];\n logoUrl?: string;\n miniLogoUrl?: string;\n hiddenPages?: [],\n urlApi2?: string;\n urlExpert?: string;\n bank?: {\n IBAN: string;\n BIC: string;\n Name: string;\n Id: string;\n codeEtablissement?: string;\n codeGuichet?: string;\n numeroCompte?: string;\n cleRib?: string;\n },\n internalInvoicing?: {\n lastUsedNumber?: number;\n statut: string;\n name: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n montantCapital: string;\n siret: string;\n ape: string;\n rcs: string;\n phone: string;\n vatIntracom: string;\n email: string;\n },\n webmail?: {\n domains: string[];\n },\n offices?: {\n LAXOU?: {\n id: number,\n name: string;\n },\n PARIS?: {\n id: number,\n name: string;\n },\n MARSEILLE?: {\n id: number,\n name: string;\n },\n EPINAL?: {\n id: number,\n name: string;\n },\n HOME_OFFICE?: {\n id: number,\n name: string;\n },\n NICE?: {\n id: number,\n name: string;\n },\n },\n salesContractConfig?: SaleContract[],\n};\n\nconst allBrands = ['Legalstart', 'Comptalib', 'Clementine', 'Pourcentage', 'StatutsExpress', 'Anytime'] as const;\ntype BrandList = typeof allBrands[number];\n\nconst listEnvEnum: { \n BrandClementine: Brand[];\n BrandLegalstart: Brand[];\n BrandComptalib: Brand[];\n BrandPourcentage: Brand[];\n BrandStatutsExpress: Brand[];\n BrandAnytime: Brand[];\n} = {\n BrandClementine,\n BrandLegalstart,\n BrandComptalib,\n BrandPourcentage,\n BrandStatutsExpress,\n BrandAnytime,\n};\n\ntype GetBrandConfigParam = {\n idTypeBrand?: number,\n objectWaited?: string,\n nodeEnv?: string\n};\n\ntype GetBrandParam = {\n idTypeBrand?: number,\n nodeEnv?: string\n};\n\nconst getBrandNameByNodeEnv = (nodeEnv?: string): BrandList => {\n const env = nodeEnv ?? process.env.NODE_ENV ?? process.env.API_HOST;\n if (env) {\n if (env.indexOf('legalstart') > -1 || env.indexOf('Legalstart') > -1 || env.indexOf('ComptaStart') > -1 || env.indexOf('comptaStart') > -1 || env.indexOf('Comptastart') > -1 || env.indexOf('comptastart') > -1) {\n return 'Legalstart';\n }\n if (env.indexOf('comptalib') > -1 || env.indexOf('Comptalib') > -1) {\n return 'Comptalib';\n }\n if (env.indexOf('pourcentage') > -1 || env.indexOf('Pourcentage') > -1) {\n return 'Pourcentage';\n }\n if (env.indexOf('statuts') > -1 || env.indexOf('Statuts') > -1) {\n return 'StatutsExpress';\n }\n\n if (env.indexOf('anytime') > -1 || env.indexOf('Anytime') > -1) {\n return 'Anytime';\n }\n }\n return 'Clementine';\n};\n\nconst isItThisEnv = (brandList: BrandList, nodeEnv?: string): boolean => {\n const env = nodeEnv ?? process.env.NODE_ENV ?? process.env.API_HOST;\n return getBrandNameByNodeEnv(env) === brandList;\n};\n\nconst getAllBrandByNodeEnv = (nodeEnv?: string): Array<Brand> => {\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n\n // @ts-ignore\n const currentConfigFile:brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n const brand = currentConfigFile;\n\n return brand;\n};\n\n\nfunction getBrand(params?: GetBrandParam): Brand {\n\n let brand: Brand | undefined;\n\n const { nodeEnv, idTypeBrand } = params ?? {};\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n\n const currentConfigFile: Brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n if (idTypeBrand) {\n brand = currentConfigFile.find((b: Brand) => b.idTypeBrand === idTypeBrand);\n }\n\n if (!brand) {\n // Si aucune brand trouvée, on passe par défaut la première brand de la liste\n [brand] = currentConfigFile.sort((a: Brand, b: Brand) => a.idTypeBrand - b.idTypeBrand);\n }\n\n return brand;\n}\n\n/**\n * @deprecated use getBrand()\n */\nconst getBrandConfig = (params: GetBrandConfigParam): Brand => {\n \n const {\n idTypeBrand = null, objectWaited = null, nodeEnv,\n } = params;\n let brand;\n\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n \n // @ts-ignore\n const currentConfigFile:brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n if (idTypeBrand) {\n // Récupération de la brand via idTypeBrand\n brand = currentConfigFile.find((b: Brand) => b.idTypeBrand === idTypeBrand);\n }\n // else if (idSociety) {\n // Récupération de la brand via l'idSociety -> impossible directement depuis le core (pas d'accès au resources, ni au token pour l'appel via fetch)\n\n if (!brand) {\n // Si aucune brand trouvée, on passe par défaut la première brand de la liste\n [brand] = currentConfigFile.sort((a: Brand, b: Brand) => a.idTypeBrand - b.idTypeBrand);\n }\n\n if (objectWaited) {\n // Si on attend un attribut particulier de la brand, on le parcourt\n let objectToReturn = getLodash(brand, objectWaited);\n // Si aucun attribut trouvé, on renvoit celui de Clementine par défaut\n if (!objectToReturn) {\n const brandDefault = currentConfigFile.find((b: Brand) => b.name === currentEnvName);\n objectToReturn = getLodash(brandDefault, objectWaited);\n }\n return objectToReturn;\n }\n\n return brand;\n};\n\nconst getBrandByEmail = (email: string): 'Legalstart' | 'Comptalib' | 'Clementine' | 'Pourcentage' | 'Lecomptablefrancais' | 'Statuts' | null => {\n if (email.indexOf('legalstart.fr') > -1 || email.indexOf('comptastartbyclementine.fr') > -1) return 'Legalstart';\n if (email.indexOf('statuts-express.fr') > -1) return 'Statuts';\n if (email.indexOf('comptalib.com') > -1) return 'Comptalib';\n if (email.indexOf('pourcentage.fr') > -1) return 'Pourcentage';\n if (email.indexOf('compta-clementine.fr') > -1) return 'Clementine';\n if (email.indexOf('clementine.fr') > -1) return 'Clementine';\n if (email.indexOf('lecomptablefrancais.fr') > -1) return 'Lecomptablefrancais';\n return null;\n};\n\nconst getSubBrandList = (nodeEnv?: string): Array<object> => {\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n\n // @ts-ignore\n const currentConfigFile: brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n return currentConfigFile;\n};\n\nexport {\n getBrandConfig, isItThisEnv, getAllBrandByNodeEnv, getBrandNameByNodeEnv, getBrandByEmail, getSubBrandList, getBrand,\n};"]}
|
|
1
|
+
{"version":3,"file":"brands.js","sourceRoot":"","sources":["../../../ts/utils/brands.ts"],"names":[],"mappings":"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","sourcesContent":["import { get as getLodash } from 'lodash';\nimport { BrandClementine } from '../types/Enum/BrandClementine';\nimport { BrandLegalstart } from '../types/Enum/BrandLegalstart';\nimport { BrandComptalib } from '../types/Enum/BrandComptalib';\nimport { BrandPourcentage } from '../types/Enum/BrandPourcentage';\nimport { BrandStatutsExpress } from '../types/Enum/BrandStatutsExpress';\nimport { BrandAnytime } from '../types/Enum/BrandAnytime';\nimport { SaleContract } from '..';\n\nexport type Brand = {\n idTypeBrand: number,\n name: string;\n commercialName?: string;\n urlS3?: string;\n logoS3?: string;\n lightLogoS3?: string;\n privacyPolicy?: string;\n recaptcha?: { secretKey: string; };\n urlApi1?: string;\n urlClient?: string;\n urlApp?: string;\n colors: {\n primary: string,\n primary50?: string;\n primary100?: string;\n primary300?: string;\n primary500?: string;\n primary700?: string;\n footerColor?: string;\n sendContract?: string;\n },\n listMails?: {\n administratif?: string;\n app?: string;\n bonjour?: string;\n contact: string;\n facturation?: string;\n feedback?: string;\n gestion?: string;\n juridique?: string;\n informatique?: string;\n msd?: string;\n noreply?: string;\n qualite?: string;\n paiement?: string;\n rh?: string;\n social?: string;\n support?: string;\n tva?: string;\n wb?: string;\n recovery?: string;\n },\n listPhones?: {\n contact: string;\n qualite: string;\n social?: string;\n juridique: string;\n },\n companyInformation?: {\n ape: string;\n bp: string;\n city: string;\n montantCapital: string;\n nomRaisonSociale: string;\n ECName?: string;\n ECOrderCity: string;\n ECDepartment?: string,\n ECPosition?: string;\n phone: string;\n postalAddress: string;\n rcs: string;\n statut: string;\n zipCode: string;\n };\n recaptchaSecretKey?: string;\n idPrestationsListHidden?: number[];\n idPrestationsListAuthorized?: number[];\n logoUrl?: string;\n miniLogoUrl?: string;\n hiddenPages?: [],\n urlApi2?: string;\n urlExpert?: string;\n bank?: {\n IBAN: string;\n BIC: string;\n Name: string;\n Id: string;\n codeEtablissement?: string;\n codeGuichet?: string;\n numeroCompte?: string;\n cleRib?: string;\n },\n internalInvoicing?: {\n lastUsedNumber?: number;\n statut: string;\n name: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n montantCapital: string;\n siret: string;\n ape: string;\n rcs: string;\n phone: string;\n vatIntracom: string;\n email: string;\n },\n webmail?: {\n domains: string[];\n },\n offices?: {\n LAXOU?: {\n id: number,\n name: string;\n },\n PARIS?: {\n id: number,\n name: string;\n },\n MARSEILLE?: {\n id: number,\n name: string;\n },\n EPINAL?: {\n id: number,\n name: string;\n },\n HOME_OFFICE?: {\n id: number,\n name: string;\n },\n NICE?: {\n id: number,\n name: string;\n },\n },\n salesContractConfig?: SaleContract[],\n};\n\nconst allBrands = ['Legalstart', 'Comptalib', 'Clementine', 'Pourcentage', 'StatutsExpress', 'Anytime'] as const;\ntype BrandList = typeof allBrands[number];\n\nconst listEnvEnum: { \n BrandClementine: Brand[];\n BrandLegalstart: Brand[];\n BrandComptalib: Brand[];\n BrandPourcentage: Brand[];\n BrandStatutsExpress: Brand[];\n BrandAnytime: Brand[];\n} = {\n BrandClementine,\n BrandLegalstart,\n BrandComptalib,\n BrandPourcentage,\n BrandStatutsExpress,\n BrandAnytime,\n};\n\ntype GetBrandConfigParam = {\n idTypeBrand?: number,\n objectWaited?: string,\n nodeEnv?: string\n};\n\ntype GetBrandParam = {\n idTypeBrand?: number,\n nodeEnv?: string\n};\n\nconst getBrandNameByNodeEnv = (nodeEnv?: string): BrandList => {\n const env = nodeEnv ?? process.env.NODE_ENV ?? process.env.API_HOST;\n if (env) {\n if (env.indexOf('legalstart') > -1 || env.indexOf('Legalstart') > -1 || env.indexOf('ComptaStart') > -1 || env.indexOf('comptaStart') > -1 || env.indexOf('Comptastart') > -1 || env.indexOf('comptastart') > -1) {\n return 'Legalstart';\n }\n if (env.indexOf('comptalib') > -1 || env.indexOf('Comptalib') > -1) {\n return 'Comptalib';\n }\n if (env.indexOf('pourcentage') > -1 || env.indexOf('Pourcentage') > -1) {\n return 'Pourcentage';\n }\n if (env.indexOf('statuts') > -1 || env.indexOf('Statuts') > -1) {\n return 'StatutsExpress';\n }\n\n if (env.indexOf('anytime') > -1 || env.indexOf('Anytime') > -1) {\n return 'Anytime';\n }\n }\n return 'Clementine';\n};\n\nconst isItThisEnv = (brandList: BrandList, nodeEnv?: string): boolean => {\n const env = nodeEnv ?? process.env.NODE_ENV ?? process.env.API_HOST;\n return getBrandNameByNodeEnv(env) === brandList;\n};\n\nconst getAllBrandByNodeEnv = (nodeEnv?: string): Array<Brand> => {\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n\n // @ts-ignore\n const currentConfigFile:brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n const brand = currentConfigFile;\n\n return brand;\n};\n\n\nfunction getBrand(params?: GetBrandParam): Brand {\n\n let brand: Brand | undefined;\n\n const { nodeEnv, idTypeBrand } = params ?? {};\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n\n const currentConfigFile: Brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n if (idTypeBrand) {\n brand = currentConfigFile.find((b: Brand) => b.idTypeBrand === idTypeBrand);\n }\n\n if (!brand) {\n // Si aucune brand trouvée, on passe par défaut la première brand de la liste\n [brand] = currentConfigFile.sort((a: Brand, b: Brand) => a.idTypeBrand - b.idTypeBrand);\n }\n\n return brand;\n}\n\n/**\n * @deprecated use getBrand()\n */\nconst getBrandConfig = (params: GetBrandConfigParam): Brand => {\n \n const {\n idTypeBrand = null, objectWaited = null, nodeEnv,\n } = params;\n let brand;\n\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n \n // @ts-ignore\n const currentConfigFile:brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n if (idTypeBrand) {\n // Récupération de la brand via idTypeBrand\n brand = currentConfigFile.find((b: Brand) => b.idTypeBrand === idTypeBrand);\n }\n // else if (idSociety) {\n // Récupération de la brand via l'idSociety -> impossible directement depuis le core (pas d'accès au resources, ni au token pour l'appel via fetch)\n\n if (!brand) {\n // Si aucune brand trouvée, on passe par défaut la première brand de la liste\n [brand] = currentConfigFile.sort((a: Brand, b: Brand) => a.idTypeBrand - b.idTypeBrand);\n }\n\n if (objectWaited) {\n // Si on attend un attribut particulier de la brand, on le parcourt\n let objectToReturn = getLodash(brand, objectWaited);\n // Si aucun attribut trouvé, on renvoit celui de Clementine par défaut\n if (!objectToReturn) {\n const brandDefault = currentConfigFile.find((b: Brand) => b.name === currentEnvName);\n objectToReturn = getLodash(brandDefault, objectWaited);\n }\n return objectToReturn;\n }\n\n return brand;\n};\n\nconst getBrandByEmail = (email: string): 'Legalstart' | 'Comptalib' | 'Clementine' | 'Pourcentage' | 'Lecomptablefrancais' | 'Statuts' | null => {\n if (email.indexOf('legalstart.fr') > -1 || email.indexOf('comptastartbyclementine.fr') > -1) return 'Legalstart';\n if (email.indexOf('statuts-express.fr') > -1) return 'Statuts';\n if (email.indexOf('comptalib.com') > -1) return 'Comptalib';\n if (email.indexOf('pourcentage.fr') > -1) return 'Pourcentage';\n if (email.indexOf('compta-clementine.fr') > -1) return 'Clementine';\n if (email.indexOf('clementine.fr') > -1) return 'Clementine';\n if (email.indexOf('lecomptablefrancais.fr') > -1) return 'Lecomptablefrancais';\n return null;\n};\n\nconst getSubBrandList = (nodeEnv?: string): Array<object> => {\n const nodeEnvUsed = nodeEnv ?? process.env.NODE_ENV;\n const currentEnvName = getBrandNameByNodeEnv(nodeEnvUsed);\n\n // @ts-ignore\n const currentConfigFile: brand[] = listEnvEnum[`Brand${currentEnvName}`];\n\n return currentConfigFile;\n};\n\nexport {\n getBrandConfig, isItThisEnv, getAllBrandByNodeEnv, getBrandNameByNodeEnv, getBrandByEmail, getSubBrandList, getBrand,\n};"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PaymentRecoveryStatus, PaymentRecoveryTag } from '../../types';
|
|
2
|
+
export declare const CAARL_WAITING_STATUS: PaymentRecoveryStatus[];
|
|
3
|
+
export declare const CAARL_RECOVERED_STATUS: PaymentRecoveryStatus[];
|
|
4
|
+
export declare const CAARL_NOT_RECOVERED_STATUS: PaymentRecoveryStatus[];
|
|
5
|
+
export declare function getRecoveryFeesFromAmountTotalTaxIncluded(amount: number): number;
|
|
6
|
+
export declare function getStatusGroup(status: PaymentRecoveryStatus): PaymentRecoveryTag;
|
|
7
|
+
//# sourceMappingURL=recovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recovery.d.ts","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/recovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAO,MAAM,aAAa,CAAC;AAM7E,eAAO,MAAM,oBAAoB,EAAE,qBAAqB,EAA6X,CAAC;AACtb,eAAO,MAAM,sBAAsB,EAAE,qBAAqB,EAAyC,CAAC;AACpG,eAAO,MAAM,0BAA0B,EAAE,qBAAqB,EAAsL,CAAC;AAErP,wBAAgB,yCAAyC,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQhF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,qBAAqB,GAAG,kBAAkB,CAKhF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { PaymentRecoveryStatus, PaymentRecoveryTag, Vat } from '../../types';
|
|
2
|
+
const CARL_RECOVERY_FEES_PERCENTAGE = 15;
|
|
3
|
+
const CARL_RECOVERY_REDUCED_FEES_PERCENTAGE = 10;
|
|
4
|
+
const CAARL_MINIMUM_AMOUNT_FOR_REDUCED_FEES = 5001;
|
|
5
|
+
export const CAARL_WAITING_STATUS = [PaymentRecoveryStatus.OPENED, PaymentRecoveryStatus.SENT_TO_AMICABLE, PaymentRecoveryStatus.AMICABLE_SETTLEMENT, PaymentRecoveryStatus.SENT_TO_COURT, PaymentRecoveryStatus.FEES_PAID, PaymentRecoveryStatus.IP_SUBMITTED_TO_COURT, PaymentRecoveryStatus.IP_OK, PaymentRecoveryStatus.IP_SIGNIFIED, PaymentRecoveryStatus.CUSTOM_RECOVERED, PaymentRecoveryStatus.CUSTOM_CANCELLATION];
|
|
6
|
+
export const CAARL_RECOVERED_STATUS = [PaymentRecoveryStatus.CLOSED_PAYED];
|
|
7
|
+
export const CAARL_NOT_RECOVERED_STATUS = [PaymentRecoveryStatus.CLOSED_DISPUTE, PaymentRecoveryStatus.CLOSED_FAILED, PaymentRecoveryStatus.CLOSED_RJ, PaymentRecoveryStatus.CLOSED_LJ, PaymentRecoveryStatus.CLOSED_IP_KO];
|
|
8
|
+
export function getRecoveryFeesFromAmountTotalTaxIncluded(amount) {
|
|
9
|
+
const rate = amount >= CAARL_MINIMUM_AMOUNT_FOR_REDUCED_FEES ? CARL_RECOVERY_REDUCED_FEES_PERCENTAGE : CARL_RECOVERY_FEES_PERCENTAGE;
|
|
10
|
+
const feesTaxExcluded = amount * (rate / 100);
|
|
11
|
+
const feesTax = feesTaxExcluded * (Vat.TX_20.value / 100);
|
|
12
|
+
return feesTaxExcluded + feesTax;
|
|
13
|
+
}
|
|
14
|
+
export function getStatusGroup(status) {
|
|
15
|
+
if (CAARL_WAITING_STATUS.includes(status)) {
|
|
16
|
+
return PaymentRecoveryTag.WAITING;
|
|
17
|
+
}
|
|
18
|
+
if (CAARL_RECOVERED_STATUS.includes(status)) {
|
|
19
|
+
return PaymentRecoveryTag.RECOVERED;
|
|
20
|
+
}
|
|
21
|
+
if (CAARL_NOT_RECOVERED_STATUS.includes(status)) {
|
|
22
|
+
return PaymentRecoveryTag.NOT_RECOVERED;
|
|
23
|
+
}
|
|
24
|
+
return PaymentRecoveryTag.WAITING;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=recovery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recovery.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/recovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE7E,MAAM,6BAA6B,GAAG,EAAE,CAAC;AACzC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AACjD,MAAM,qCAAqC,GAAG,IAAI,CAAC;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAA4B,CAAC,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,aAAa,EAAE,qBAAqB,CAAC,SAAS,EAAE,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,KAAK,EAAE,qBAAqB,CAAC,YAAY,EAAE,qBAAqB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;AACtb,MAAM,CAAC,MAAM,sBAAsB,GAA4B,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;AACpG,MAAM,CAAC,MAAM,0BAA0B,GAA4B,CAAC,qBAAqB,CAAC,cAAc,EAAE,qBAAqB,CAAC,aAAa,EAAE,qBAAqB,CAAC,SAAS,EAAE,qBAAqB,CAAC,SAAS,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;AAErP,MAAM,UAAU,yCAAyC,CAAC,MAAc;IAEtE,MAAM,IAAI,GAAG,MAAM,IAAI,qCAAqC,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,6BAA6B,CAAC;IAErI,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,eAAe,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IAE1D,OAAO,eAAe,GAAG,OAAO,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAA6B;IAC1D,IAAI,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC;IAAC,CAAC;IACjF,IAAI,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,kBAAkB,CAAC,SAAS,CAAC;IAAC,CAAC;IACrF,IAAI,0BAA0B,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,kBAAkB,CAAC,aAAa,CAAC;IAAC,CAAC;IAC7F,OAAO,kBAAkB,CAAC,OAAO,CAAC;AACpC,CAAC","sourcesContent":["import { PaymentRecoveryStatus, PaymentRecoveryTag, Vat } from '../../types';\n\nconst CARL_RECOVERY_FEES_PERCENTAGE = 15;\nconst CARL_RECOVERY_REDUCED_FEES_PERCENTAGE = 10;\nconst CAARL_MINIMUM_AMOUNT_FOR_REDUCED_FEES = 5001;\n\nexport const CAARL_WAITING_STATUS: PaymentRecoveryStatus[] = [PaymentRecoveryStatus.OPENED, PaymentRecoveryStatus.SENT_TO_AMICABLE, PaymentRecoveryStatus.AMICABLE_SETTLEMENT, PaymentRecoveryStatus.SENT_TO_COURT, PaymentRecoveryStatus.FEES_PAID, PaymentRecoveryStatus.IP_SUBMITTED_TO_COURT, PaymentRecoveryStatus.IP_OK, PaymentRecoveryStatus.IP_SIGNIFIED, PaymentRecoveryStatus.CUSTOM_RECOVERED, PaymentRecoveryStatus.CUSTOM_CANCELLATION];\nexport const CAARL_RECOVERED_STATUS: PaymentRecoveryStatus[] = [PaymentRecoveryStatus.CLOSED_PAYED];\nexport const CAARL_NOT_RECOVERED_STATUS: PaymentRecoveryStatus[] = [PaymentRecoveryStatus.CLOSED_DISPUTE, PaymentRecoveryStatus.CLOSED_FAILED, PaymentRecoveryStatus.CLOSED_RJ, PaymentRecoveryStatus.CLOSED_LJ, PaymentRecoveryStatus.CLOSED_IP_KO];\n\nexport function getRecoveryFeesFromAmountTotalTaxIncluded(amount: number): number {\n\n const rate = amount >= CAARL_MINIMUM_AMOUNT_FOR_REDUCED_FEES ? CARL_RECOVERY_REDUCED_FEES_PERCENTAGE : CARL_RECOVERY_FEES_PERCENTAGE;\n\n const feesTaxExcluded = amount * (rate / 100);\n const feesTax = feesTaxExcluded * (Vat.TX_20.value / 100);\n\n return feesTaxExcluded + feesTax;\n}\n\nexport function getStatusGroup(status: PaymentRecoveryStatus): PaymentRecoveryTag {\n if (CAARL_WAITING_STATUS.includes(status)) { return PaymentRecoveryTag.WAITING; }\n if (CAARL_RECOVERED_STATUS.includes(status)) { return PaymentRecoveryTag.RECOVERED; }\n if (CAARL_NOT_RECOVERED_STATUS.includes(status)) { return PaymentRecoveryTag.NOT_RECOVERED; }\n return PaymentRecoveryTag.WAITING;\n}"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@silexpert/core",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.399",
|
|
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,5 +1,6 @@
|
|
|
1
1
|
import { Resource } from '../Resource';
|
|
2
|
-
import { CreateNotifyCustomer, CreatePaymentsAutoBilling, IPayment, QueryMonthlyPayment, QueryPayment, QueryPaymentCsv, QueryPaymentInvoice, QuerySocietyUnpaid, ReadPaid, ReadPaymentInvoice, ReadStatPrestation, ReadStatsSocietyUnpaid } from '../../types';
|
|
2
|
+
import { AskProcessPaymentRecovery, BasePaginate, CreateNotifyCustomer, CreatePaymentRecovery, CreatePaymentsAutoBilling, IPayment, QueryMonthlyPayment, QueryPayment, QueryPaymentCsv, QueryPaymentInvoice, QueryPaymentRecoveryPaginated, QueryPaymentRecoveryStatistic, QuerySocietyUnpaid, ReadPaid, ReadPaymentInvoice, ReadPaymentRecovery, ReadPaymentRecoveryClaim, ReadPaymentRecoveryStatistic, ReadStatPrestation, ReadStatsSocietyUnpaid } from '../../types';
|
|
3
|
+
import { IPaymentRecovery } from '../../types/Interface/models/IPaymentRecovery';
|
|
3
4
|
|
|
4
5
|
export class Payment extends Resource {
|
|
5
6
|
getMonthlyCsv(query: QueryMonthlyPayment): Promise<void> {
|
|
@@ -61,4 +62,24 @@ export class Payment extends Resource {
|
|
|
61
62
|
getAllInvoices(idExercice: number, query: QueryPaymentInvoice): Promise<ReadPaymentInvoice[]> {
|
|
62
63
|
return this.axios.$get(`/exercices/${idExercice}/invoices`, { params: query });
|
|
63
64
|
}
|
|
65
|
+
|
|
66
|
+
createRecovery(idFile: number, payload: CreatePaymentRecovery): Promise<IPaymentRecovery> {
|
|
67
|
+
return this.axios.$post(`/invoices/${idFile}/payments-recovery`, payload);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
getRecovery(idPaymentRecovery: number): Promise<ReadPaymentRecoveryClaim> {
|
|
71
|
+
return this.axios.$get(`/payments-recovery/${idPaymentRecovery}`);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
getPaginatedRecovery(query: QueryPaymentRecoveryPaginated, signal: AbortSignal): Promise<BasePaginate<ReadPaymentRecovery>> {
|
|
75
|
+
return this.axios.$get('/payments-recovery', { params: query, signal });
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
getRecoveryStatistics(query: QueryPaymentRecoveryStatistic, signal: AbortSignal): Promise<ReadPaymentRecoveryStatistic> {
|
|
79
|
+
return this.axios.$get('/payments-recovery/statistics', { params: query, signal });
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
askProcess(idPaymentRecovery: number, payload: AskProcessPaymentRecovery): Promise<IPaymentRecovery> {
|
|
83
|
+
return this.axios.$post(`/payments-recovery/${idPaymentRecovery}/contact`, payload);
|
|
84
|
+
}
|
|
64
85
|
}
|
package/ts/index.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './utils';
|
|
2
2
|
export * from './utils/commercialManagement/product';
|
|
3
3
|
export * from './utils/commercialManagement/vat';
|
|
4
|
+
export * from './utils/commercialManagement/recovery';
|
|
4
5
|
// eslint-disable-next-line
|
|
5
6
|
export * from './types';
|
|
6
7
|
export * from './api';
|
package/ts/types/Enum/Ged.ts
CHANGED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export enum PaymentRecoveryEvent {
|
|
2
|
+
SUBMITTED = 'submitted',
|
|
3
|
+
SENT_TO_AMICABLE_SETTLEMENT = 'sentToAmicableSettlement',
|
|
4
|
+
AROK = 'AROK',
|
|
5
|
+
NEW_PAYMENT = 'newPayment',
|
|
6
|
+
CLAIM_ENDED = 'claimEnded',
|
|
7
|
+
CLAIM_ENDED_PAYED = 'claimEndedPayed',
|
|
8
|
+
CLAIM_ENDED_DISPUTE = 'claimEndedDispute',
|
|
9
|
+
CLAIM_ENDED_NOANSWER = 'claimEndedNoanswer',
|
|
10
|
+
CLAIM_ENDED_RJ = 'claimEndedRJ',
|
|
11
|
+
CLAIM_ENDED_LJ = 'claimEndedLJ',
|
|
12
|
+
PAY_SCHEDULE_SETUP = 'payScheduleSetup',
|
|
13
|
+
PAY_SCHEDULE_ERROR = 'payScheduleError',
|
|
14
|
+
NEW_ACTION = 'newAction',
|
|
15
|
+
NEW_PAYMENT_CLIENT = 'newPaymentClient',
|
|
16
|
+
SENT_TO_COURT_SETTLEMENT = 'sentToCourtSettlement',
|
|
17
|
+
COURT_SETTLEMENT_PAID = 'CourtSettlementPaid',
|
|
18
|
+
FILED_IP = 'filedIP',
|
|
19
|
+
IP_OK = 'IPOK',
|
|
20
|
+
IP_PARTIEL = 'IPpartiel',
|
|
21
|
+
IP_KO = 'IPKO',
|
|
22
|
+
SIGNIFIED_IP = 'signifiedIP',
|
|
23
|
+
RECORDED_IP = 'recordedIP',
|
|
24
|
+
CLAIM_ENDED_JUD = 'claimEndedJud',
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export enum PaymentRecoveryStatus {
|
|
28
|
+
OPENED = 'opened',
|
|
29
|
+
SENT_TO_AMICABLE = 'sent_to_amicable',
|
|
30
|
+
AMICABLE_SETTLEMENT = 'amicable_settlement',
|
|
31
|
+
CLOSED = 'closed',
|
|
32
|
+
CLOSED_PAYED = 'closed_payed',
|
|
33
|
+
CLOSED_DISPUTE = 'closed_dispute',
|
|
34
|
+
CLOSED_FAILED = 'closed_failed',
|
|
35
|
+
CLOSED_RJ = 'closed_rj',
|
|
36
|
+
CLOSED_LJ = 'closed_lj',
|
|
37
|
+
SENT_TO_COURT = 'sent_to_court',
|
|
38
|
+
FEES_PAID = 'fees_paid',
|
|
39
|
+
IP_SUBMITTED_TO_COURT = 'IP_submitted_to_court',
|
|
40
|
+
IP_OK = 'IPOK',
|
|
41
|
+
CLOSED_IP_KO = 'closed_IPKO',
|
|
42
|
+
IP_SIGNIFIED = 'IP_signified',
|
|
43
|
+
CLOSED_JUD = 'closed_jud',
|
|
44
|
+
CUSTOM_CANCELLATION = 'custom_cancellation',
|
|
45
|
+
CUSTOM_RECOVERED = 'custom_recovered',
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export enum PaymentRecoveryTag {
|
|
49
|
+
RECOVERED = 'recovered',
|
|
50
|
+
WAITING = 'waiting',
|
|
51
|
+
NOT_RECOVERED = 'not_recovered',
|
|
52
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { PaymentRecoveryStatus, PaymentRecoveryEvent } from '../../../Enum/PaymentRecovery';
|
|
2
|
+
|
|
3
|
+
export type CaarlServiceType = 'protectionJuridique' | 'litigeCommercial' | 'recouvrementFacture' | 'recouvrementFacture2';
|
|
4
|
+
export type CaarlLanguage = 'fr' | 'en' | 'es' | 'de' | 'it';
|
|
5
|
+
export type CaarlLegalCountry = 'FR' | 'ES' | 'DE' | 'IT';
|
|
6
|
+
export type CaarlGender = 'M' | 'F' | 'Other';
|
|
7
|
+
|
|
8
|
+
export interface CaarlCreateSubscriptionResponse {
|
|
9
|
+
subscription: {
|
|
10
|
+
number: string;
|
|
11
|
+
startDate: string;
|
|
12
|
+
endDate?: string;
|
|
13
|
+
externalId?: string;
|
|
14
|
+
firstName: string;
|
|
15
|
+
lastName: string;
|
|
16
|
+
email: string;
|
|
17
|
+
birthdate?: string;
|
|
18
|
+
gender: string;
|
|
19
|
+
address?: string;
|
|
20
|
+
postalCode?: string;
|
|
21
|
+
city?: string;
|
|
22
|
+
language: CaarlLanguage;
|
|
23
|
+
legalCountry: string;
|
|
24
|
+
bundle: {
|
|
25
|
+
name: string;
|
|
26
|
+
reference: string;
|
|
27
|
+
services: Array<CaarlServiceType>
|
|
28
|
+
},
|
|
29
|
+
distributor: {
|
|
30
|
+
reference: string;
|
|
31
|
+
name: string;
|
|
32
|
+
updatedAt: string;
|
|
33
|
+
createdAt?: string;
|
|
34
|
+
},
|
|
35
|
+
metadata: object,
|
|
36
|
+
createdAt: string;
|
|
37
|
+
updatedAt: string;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export interface CaarlCreateSubscriptionPayload {
|
|
42
|
+
externalId: string;
|
|
43
|
+
firstName: string;
|
|
44
|
+
lastName: string;
|
|
45
|
+
email: string;
|
|
46
|
+
gender?: CaarlGender;
|
|
47
|
+
company?: string;
|
|
48
|
+
siren?: string;
|
|
49
|
+
birthdate?: string;
|
|
50
|
+
address?: string;
|
|
51
|
+
city?: string;
|
|
52
|
+
postalCode?: string;
|
|
53
|
+
telephone?: string;
|
|
54
|
+
language?: CaarlLanguage;
|
|
55
|
+
legalCountry?: CaarlLegalCountry;
|
|
56
|
+
metadata?: object;
|
|
57
|
+
startDate: string;
|
|
58
|
+
endDate?: string;
|
|
59
|
+
bundleId: string;
|
|
60
|
+
distributor?: string;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface CaarlUploadFileResponse {
|
|
64
|
+
ribFile: { id?: string; error?: string; };
|
|
65
|
+
invoiceFile: { id?: string; error?: string; };
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface CaarlCreateClaimPayload {
|
|
69
|
+
subscriptionId: string;
|
|
70
|
+
invoiceDate: string;
|
|
71
|
+
invoiceAmount: number;
|
|
72
|
+
invoiceInitialRemainder: number;
|
|
73
|
+
invoiceNumber: string;
|
|
74
|
+
invoiceFile: string;
|
|
75
|
+
iban: string;
|
|
76
|
+
ribFile: string;
|
|
77
|
+
// Debtor
|
|
78
|
+
debtorCiv: 'M.' | 'Mme';
|
|
79
|
+
debtorFirstName: string;
|
|
80
|
+
debtorLastName: string;
|
|
81
|
+
debtorEmail: string;
|
|
82
|
+
debtorTelephone: string;
|
|
83
|
+
debtorAddress: string;
|
|
84
|
+
debtorAddressPlus?: string;
|
|
85
|
+
debtorPostalCode: string;
|
|
86
|
+
debtorCity: string;
|
|
87
|
+
// Debtor legal entity
|
|
88
|
+
debtorCompanyType?: string;
|
|
89
|
+
debtorCompanyName?: string;
|
|
90
|
+
debtorCompanySIREN?: string;
|
|
91
|
+
creditorCompanySIREN?: string;
|
|
92
|
+
creditorTelephone?: string;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export type CaarlClaim = {
|
|
96
|
+
number: string;
|
|
97
|
+
externalId?: string;
|
|
98
|
+
status: PaymentRecoveryStatus;
|
|
99
|
+
type: string;
|
|
100
|
+
data: {
|
|
101
|
+
invoiceFile: string;
|
|
102
|
+
invoiceDate: string;
|
|
103
|
+
invoiceNumber: string;
|
|
104
|
+
invoiceAmount: number;
|
|
105
|
+
invoiceInitialRemainder: number;
|
|
106
|
+
debtorFirstName: string;
|
|
107
|
+
debtorLastName: string;
|
|
108
|
+
debtorEmail: string;
|
|
109
|
+
debtorTelephone: string;
|
|
110
|
+
debtorAddress: string;
|
|
111
|
+
debtorPostalCode: string;
|
|
112
|
+
debtorCity: string;
|
|
113
|
+
iban: string;
|
|
114
|
+
ribFile: string;
|
|
115
|
+
events: Array<CaarlEvent>
|
|
116
|
+
},
|
|
117
|
+
purchase: {
|
|
118
|
+
number: string;
|
|
119
|
+
externalId: string;
|
|
120
|
+
firstName: string;
|
|
121
|
+
lastName: string;
|
|
122
|
+
email: string;
|
|
123
|
+
postalCode?: string;
|
|
124
|
+
createdAt: string;
|
|
125
|
+
},
|
|
126
|
+
createdAt: string;
|
|
127
|
+
updatedAt: string;
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
export type CaarlEvent = {
|
|
131
|
+
createdAt: string;
|
|
132
|
+
date: string;
|
|
133
|
+
type: PaymentRecoveryEvent;
|
|
134
|
+
message: string;
|
|
135
|
+
label: string;
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
export interface CaarlCreateClaimResponse {
|
|
139
|
+
claim: CaarlClaim;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
export interface CaarlClaimResponse {
|
|
143
|
+
claim: CaarlClaim;
|
|
144
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { IsDateString, IsEmail, IsIBAN, IsIn, IsInt, IsOptional, IsPhoneNumber, IsPositive, IsPostalCode, IsString, MinLength, ValidateNested } from 'class-validator';
|
|
2
|
+
import { ApiProperty, ApiPropertyOptional } from '../../../../utils';
|
|
3
|
+
import { PaymentRecoveryStatus } from '../../../Enum/PaymentRecovery';
|
|
4
|
+
|
|
5
|
+
type CaarlFilePayload = {
|
|
6
|
+
bufferString: string;
|
|
7
|
+
name: string;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export interface UploadRecoveryDocuments {
|
|
11
|
+
subscriptionId: string;
|
|
12
|
+
files: {
|
|
13
|
+
rib: CaarlFilePayload;
|
|
14
|
+
invoice: CaarlFilePayload;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
class DebtorPayload {
|
|
19
|
+
@ApiProperty()
|
|
20
|
+
@IsIn(['M.', 'Mme'])
|
|
21
|
+
civility: 'M.' | 'Mme';
|
|
22
|
+
|
|
23
|
+
@ApiProperty()
|
|
24
|
+
@IsString()
|
|
25
|
+
@MinLength(2)
|
|
26
|
+
firstname: string;
|
|
27
|
+
|
|
28
|
+
@ApiProperty()
|
|
29
|
+
@IsString()
|
|
30
|
+
@MinLength(2)
|
|
31
|
+
lastname: string;
|
|
32
|
+
|
|
33
|
+
@ApiProperty()
|
|
34
|
+
@IsEmail()
|
|
35
|
+
email: string;
|
|
36
|
+
|
|
37
|
+
@ApiProperty()
|
|
38
|
+
@IsPhoneNumber()
|
|
39
|
+
phone: string;
|
|
40
|
+
|
|
41
|
+
@ApiProperty()
|
|
42
|
+
@IsString()
|
|
43
|
+
@MinLength(2)
|
|
44
|
+
address: string;
|
|
45
|
+
|
|
46
|
+
@ApiProperty()
|
|
47
|
+
@IsPostalCode('any')
|
|
48
|
+
zipCode: string;
|
|
49
|
+
|
|
50
|
+
@ApiProperty()
|
|
51
|
+
@IsString()
|
|
52
|
+
@MinLength(2)
|
|
53
|
+
city: string;
|
|
54
|
+
|
|
55
|
+
@ApiPropertyOptional()
|
|
56
|
+
@IsString()
|
|
57
|
+
@IsOptional()
|
|
58
|
+
legalForm?: string;
|
|
59
|
+
|
|
60
|
+
@ApiPropertyOptional()
|
|
61
|
+
@IsString()
|
|
62
|
+
@IsOptional()
|
|
63
|
+
siren?: string;
|
|
64
|
+
|
|
65
|
+
@ApiPropertyOptional()
|
|
66
|
+
@IsString()
|
|
67
|
+
@IsOptional()
|
|
68
|
+
companyName?: string;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
class InvoicePayload {
|
|
72
|
+
@ApiProperty()
|
|
73
|
+
@IsDateString()
|
|
74
|
+
emissionDate: string;
|
|
75
|
+
|
|
76
|
+
@ApiProperty({ comment: 'Amount in cents' })
|
|
77
|
+
@IsInt()
|
|
78
|
+
@IsPositive()
|
|
79
|
+
amountTotalTaxIncluded: number;
|
|
80
|
+
|
|
81
|
+
@ApiProperty({ comment: 'Amount in cents' })
|
|
82
|
+
@IsInt()
|
|
83
|
+
@IsPositive()
|
|
84
|
+
unpaidAmountTaxIncluded: number;
|
|
85
|
+
|
|
86
|
+
@ApiProperty()
|
|
87
|
+
@IsString()
|
|
88
|
+
reference: string;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
class CreditorPayload {
|
|
92
|
+
@ApiProperty()
|
|
93
|
+
@IsIBAN()
|
|
94
|
+
iban: string;
|
|
95
|
+
|
|
96
|
+
@ApiProperty()
|
|
97
|
+
@IsInt()
|
|
98
|
+
idRibFile: number;
|
|
99
|
+
|
|
100
|
+
@ApiPropertyOptional({ comment: 'Required if subscription doesn\'t have siren field' })
|
|
101
|
+
@IsString()
|
|
102
|
+
@IsOptional()
|
|
103
|
+
siren?: string | null;
|
|
104
|
+
|
|
105
|
+
@ApiProperty({ comment: 'Required if subscription doesn\'t have telephone field' })
|
|
106
|
+
@IsPhoneNumber()
|
|
107
|
+
phone?: string | null;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export class CreatePaymentRecovery {
|
|
111
|
+
@ValidateNested()
|
|
112
|
+
invoice: InvoicePayload;
|
|
113
|
+
|
|
114
|
+
@ValidateNested()
|
|
115
|
+
debtor: DebtorPayload;
|
|
116
|
+
|
|
117
|
+
@ValidateNested()
|
|
118
|
+
creditor: CreditorPayload;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export class AskProcessPaymentRecovery {
|
|
122
|
+
@ApiProperty()
|
|
123
|
+
@IsString()
|
|
124
|
+
@MinLength(2)
|
|
125
|
+
subject: string;
|
|
126
|
+
|
|
127
|
+
@ApiProperty()
|
|
128
|
+
@IsString()
|
|
129
|
+
@MinLength(2)
|
|
130
|
+
content: string;
|
|
131
|
+
|
|
132
|
+
@ApiProperty()
|
|
133
|
+
@IsString()
|
|
134
|
+
type: PaymentRecoveryStatus.CUSTOM_CANCELLATION | PaymentRecoveryStatus.CUSTOM_RECOVERED | 'askCertificate';
|
|
135
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { IsBoolean, IsDateString, IsOptional, IsString } from 'class-validator';
|
|
2
|
+
import { ApiPropertyOptional } from '../../../../utils';
|
|
3
|
+
import { RequiredQueryPaginate } from '../BasePaginate';
|
|
4
|
+
import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
|
|
5
|
+
|
|
6
|
+
export class QueryPaymentRecoveryPaginated extends RequiredQueryPaginate {
|
|
7
|
+
@ApiPropertyOptional()
|
|
8
|
+
@IsBoolean()
|
|
9
|
+
@ToBoolean()
|
|
10
|
+
@IsOptional()
|
|
11
|
+
isDescending?: boolean;
|
|
12
|
+
|
|
13
|
+
@ApiPropertyOptional()
|
|
14
|
+
@IsDateString()
|
|
15
|
+
@IsOptional()
|
|
16
|
+
startDate?: string;
|
|
17
|
+
|
|
18
|
+
@ApiPropertyOptional()
|
|
19
|
+
@IsDateString()
|
|
20
|
+
@IsOptional()
|
|
21
|
+
endDate?: string;
|
|
22
|
+
|
|
23
|
+
@ApiPropertyOptional()
|
|
24
|
+
@IsString()
|
|
25
|
+
@IsOptional()
|
|
26
|
+
search?: string;
|
|
27
|
+
|
|
28
|
+
@ApiPropertyOptional()
|
|
29
|
+
@IsOptional()
|
|
30
|
+
@IsString()
|
|
31
|
+
status?: 'recovered' | 'notRecovered' | 'waiting';
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export class QueryPaymentRecoveryStatistic {
|
|
35
|
+
@ApiPropertyOptional()
|
|
36
|
+
@IsDateString()
|
|
37
|
+
@IsOptional()
|
|
38
|
+
startDate?: string;
|
|
39
|
+
|
|
40
|
+
@ApiPropertyOptional()
|
|
41
|
+
@IsDateString()
|
|
42
|
+
@IsOptional()
|
|
43
|
+
endDate?: string;
|
|
44
|
+
|
|
45
|
+
@ApiPropertyOptional()
|
|
46
|
+
@IsString()
|
|
47
|
+
@IsOptional()
|
|
48
|
+
search?: string;
|
|
49
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { PaymentRecoveryStatus } from '../../../Enum/PaymentRecovery';
|
|
2
|
+
import { IFile } from '../../models/IFile';
|
|
3
|
+
import { IThirdParty } from '../../models/IThirdParty';
|
|
4
|
+
import { CaarlEvent } from './Caarl';
|
|
5
|
+
|
|
6
|
+
export interface ReadPaymentRecoveryClaim {
|
|
7
|
+
status: PaymentRecoveryStatus;
|
|
8
|
+
type: string;
|
|
9
|
+
events: CaarlEvent[];
|
|
10
|
+
iban: string;
|
|
11
|
+
debtor: {
|
|
12
|
+
firstname: string;
|
|
13
|
+
lastname: string;
|
|
14
|
+
email: string;
|
|
15
|
+
phone: string;
|
|
16
|
+
address: string;
|
|
17
|
+
zipCode: string;
|
|
18
|
+
city: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface ReadPaymentRecovery {
|
|
23
|
+
id: number;
|
|
24
|
+
status: PaymentRecoveryStatus;
|
|
25
|
+
externalId: string;
|
|
26
|
+
thirdParty: IThirdParty;
|
|
27
|
+
invoice: {
|
|
28
|
+
file: IFile;
|
|
29
|
+
amountTotalTaxIncluded: number;
|
|
30
|
+
amountTotalTaxExcluded: number;
|
|
31
|
+
title: string;
|
|
32
|
+
reference: string;
|
|
33
|
+
};
|
|
34
|
+
lastSync: Date | null;
|
|
35
|
+
createdAt: Date;
|
|
36
|
+
updatedAt: Date;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface ReadPaymentRecoveryStatistic {
|
|
40
|
+
recovered: {
|
|
41
|
+
count: number;
|
|
42
|
+
amount: number;
|
|
43
|
+
};
|
|
44
|
+
waiting: {
|
|
45
|
+
count: number;
|
|
46
|
+
amount: number;
|
|
47
|
+
};
|
|
48
|
+
notRecovered: {
|
|
49
|
+
count: number;
|
|
50
|
+
amount: number;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
@@ -9,6 +9,7 @@ export enum Code {
|
|
|
9
9
|
tokenFailure = 'token_authentication_failure',
|
|
10
10
|
authenticationFailure = 'authentication_credentials_failure',
|
|
11
11
|
notFound = 'resource_not_found',
|
|
12
|
+
forbidden = 'forbidden',
|
|
12
13
|
fileNotFound = 'file_not_found',
|
|
13
14
|
validationError = 'resource_validation_error',
|
|
14
15
|
constraintError = 'resource_constraint_error',
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { IAttachmentFile } from './IAttachmentFile';
|
|
2
2
|
import { IFolderFile } from './IFolderFile';
|
|
3
3
|
import { IFileType } from './IFileType';
|
|
4
|
-
import { ICommercialMail, IMail, IMailAttachment } from '../..';
|
|
4
|
+
import { ICommercialMail, IEstimateInvoice, IMail, IMailAttachment } from '../..';
|
|
5
|
+
import { IPaymentRecovery } from './IPaymentRecovery';
|
|
5
6
|
|
|
6
7
|
// files
|
|
7
8
|
export interface IFile {
|
|
@@ -21,4 +22,6 @@ export interface IFile {
|
|
|
21
22
|
commercialMails?: ICommercialMail[];
|
|
22
23
|
mails?: IMail[];
|
|
23
24
|
mailAttachment?: IMailAttachment | null;
|
|
25
|
+
paymentRecovery?: IPaymentRecovery | null;
|
|
26
|
+
estimateInvoice?: IEstimateInvoice | null;
|
|
24
27
|
}
|