@fiado/api-invoker 4.5.0 → 4.7.0
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/.claude/settings.json +33 -33
- package/README.md +600 -600
- package/bin/container.config.js +9 -0
- package/bin/index.d.ts +2 -0
- package/bin/index.js +2 -0
- package/bin/messages-business/api/MessagesBusinessApi.d.ts +17 -0
- package/bin/messages-business/api/MessagesBusinessApi.js +53 -0
- package/bin/messages-business/api/interfaces/IMessagesBusinessApi.d.ts +12 -0
- package/bin/messages-business/api/interfaces/IMessagesBusinessApi.js +2 -0
- package/bin/messages-business/index.d.ts +4 -0
- package/bin/messages-business/index.js +25 -0
- package/bin/messages-business/queue/MessagesBusinessPublisher.d.ts +7 -0
- package/bin/messages-business/queue/MessagesBusinessPublisher.js +41 -0
- package/bin/messages-business/queue/interfaces/IMessagesBusinessPublisher.d.ts +4 -0
- package/bin/messages-business/queue/interfaces/IMessagesBusinessPublisher.js +2 -0
- package/bin/platformRbac/api/PlatformRbacBusinessApi.d.ts +26 -0
- package/bin/platformRbac/api/PlatformRbacBusinessApi.js +54 -0
- package/bin/platformRbac/api/interfaces/IPlatformRbacBusinessApi.d.ts +40 -0
- package/bin/platformRbac/api/interfaces/IPlatformRbacBusinessApi.js +2 -0
- package/bin/platformRbac/index.d.ts +2 -0
- package/bin/platformRbac/index.js +23 -0
- package/docs/TECH_DEBT.md +16 -0
- package/package.json +37 -36
- package/src/account-beneficiary/AccountBeneficiaryApi.ts +18 -18
- package/src/account-beneficiary/index.ts +2 -2
- package/src/account-beneficiary/interfaces/IAccountBeneficiaryApi.ts +7 -7
- package/src/account-fiadoinc/AccountFiadoIncApi.ts +126 -126
- package/src/account-fiadoinc/index.ts +4 -4
- package/src/account-fiadoinc/interfaces/IAccountFiadoIncApi.ts +50 -50
- package/src/account-fiadoinc/queue/Publisher.ts +23 -23
- package/src/account-fiadoinc/queue/interfaces/IPublisher.ts +4 -4
- package/src/account-fiadosa/AccountFiadoSAApi.ts +38 -38
- package/src/account-fiadosa/index.ts +1 -1
- package/src/account-fiadosa/interfaces/IAccountFiadoSAApi.ts +16 -16
- package/src/account-pagoconfiado/AccountPagoConfiadoApi.ts +78 -78
- package/src/account-pagoconfiado/index.ts +2 -2
- package/src/account-pagoconfiado/interfaces/IAccountPagoConfiadoApi.ts +37 -37
- package/src/activity-business/ActivityApi.ts +36 -36
- package/src/activity-business/index.ts +5 -5
- package/src/activity-business/interfaces/IActivityApi.ts +13 -13
- package/src/activity-business/queue/ActivityPublisher.ts +30 -30
- package/src/activity-business/queue/IActivityPublisher.ts +4 -4
- package/src/address/AddressApi.ts +46 -46
- package/src/address/index.ts +3 -3
- package/src/address/interfaces/IAddressApi.ts +30 -30
- package/src/ai-engine-connector/AiEngineApi.ts +28 -28
- package/src/ai-engine-connector/index.ts +2 -2
- package/src/ai-engine-connector/interfaces/IAiEngineApi.ts +6 -6
- package/src/appselectondata/AppSelectionDataApi.ts +32 -32
- package/src/appselectondata/index.ts +2 -2
- package/src/appselectondata/interfaces/IAppSelectionDataApi.ts +17 -17
- package/src/authentication/AuthenticationApi.ts +29 -29
- package/src/authentication/index.ts +4 -4
- package/src/authentication/interfaces/IAuthenticationApi.ts +8 -8
- package/src/bankAccount/BankAccountApi.ts +34 -34
- package/src/bankAccount/index.ts +1 -1
- package/src/bankAccount/interfaces/IBankAccountApi.ts +6 -6
- package/src/bbvaRst/api/BBVARstApi.ts +16 -16
- package/src/bbvaRst/api/interfaces/IBBVARstApi.ts +4 -4
- package/src/bbvaRst/index.ts +1 -1
- package/src/benefits-marketplace/api/BenefitsMarketplaceApi.ts +35 -35
- package/src/benefits-marketplace/api/dtos/BenefitLeafDisplayResponse.ts +21 -21
- package/src/benefits-marketplace/api/interfaces/IBenefitsMarketplaceApi.ts +62 -62
- package/src/benefits-marketplace/index.ts +3 -3
- package/src/blacklist/BlackListApi.ts +19 -19
- package/src/blacklist/index.ts +2 -2
- package/src/blacklist/interfaces/IBlackListApi.ts +20 -20
- package/src/card/CardApi.ts +103 -103
- package/src/card/index.ts +3 -3
- package/src/card/interfaces/ICardApi.ts +32 -32
- package/src/card-business/index.ts +2 -2
- package/src/card-business/queue/CardBusinessPublisher.ts +23 -23
- package/src/card-business/queue/ICardBusinessPublisher.ts +10 -10
- package/src/centralPayments/CentralPaymentsConnectorApi.ts +317 -317
- package/src/centralPayments/index.ts +1 -1
- package/src/centralPayments/interfaces/ICentralPaymentsConnectorApi.ts +153 -153
- package/src/circuloCredito/api/CirculoCreditoApi.ts +21 -21
- package/src/circuloCredito/api/interfaces/ICirculoCreditoApi.ts +7 -7
- package/src/circuloCredito/index.ts +2 -2
- package/src/cnbv-business/CnbvApi.ts +31 -31
- package/src/cnbv-business/index.ts +4 -4
- package/src/cnbv-business/interfaces/ICnbvApi.ts +19 -19
- package/src/cnbv-connector/CnbvConnectorApi.ts +18 -18
- package/src/cnbv-connector/index.ts +1 -1
- package/src/cnbv-connector/interfaces/ICnbvConnectorApi.ts +6 -6
- package/src/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.ts +254 -254
- package/src/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.ts +181 -181
- package/src/cognitoBackofficeConnector/index.ts +2 -2
- package/src/cognitoConnector/CognitoConnectorApi.ts +110 -110
- package/src/cognitoConnector/CognitoConnectorV2.ts +87 -87
- package/src/cognitoConnector/index.ts +11 -11
- package/src/cognitoConnector/interfaces/ICognitoConnectorApi.ts +16 -16
- package/src/cognitoConnector/interfaces/ICognitoV2Api.ts +63 -63
- package/src/collector/CollectorApi.ts +97 -97
- package/src/collector/index.ts +2 -2
- package/src/collector/interfaces/ICollectorApi.ts +47 -47
- package/src/commission-business/CommissionBusinessApi.ts +19 -19
- package/src/commission-business/index.ts +3 -3
- package/src/commission-business/interfaces/ICommissionBusinessApi.ts +15 -15
- package/src/contactInformation/ContactInformationApi.ts +20 -20
- package/src/contactInformation/index.ts +2 -2
- package/src/contactInformation/interface/IContactInformationApi.ts +8 -8
- package/src/container.config.ts +289 -276
- package/src/contract-business/api/ContractBusinessApi.ts +37 -37
- package/src/contract-business/api/interfaces/IContractBusinessApi.ts +32 -32
- package/src/contract-business/index.ts +2 -2
- package/src/contract-generator/ContractGeneratorApi.ts +18 -18
- package/src/contract-generator/index.ts +2 -2
- package/src/contract-generator/interfaces/IContractGeneratorApi.ts +16 -16
- package/src/countries-business/CountriesBusinessApi.ts +26 -26
- package/src/countries-business/index.ts +2 -2
- package/src/countries-business/interfaces/ICountriesBusinessApi.ts +22 -22
- package/src/credit-engine/CreditEngineApi.ts +54 -54
- package/src/credit-engine/index.ts +17 -17
- package/src/credit-engine/interfaces/ICreditEngineApi.ts +46 -46
- package/src/credit-engine/queue/CreditCollectionPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditDelinquencyPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditIncomeDetectionPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditLienCollectionPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditNotificationPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditOfferGenerationPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditReconciliationPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditScoringPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditStatementPublisher.ts +24 -24
- package/src/credit-engine/queue/CreditTransferPublisher.ts +24 -24
- package/src/credit-engine/queue/interfaces/ICreditCollectionPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditNotificationPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditReconciliationPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditScoringPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditStatementPublisher.ts +5 -5
- package/src/credit-engine/queue/interfaces/ICreditTransferPublisher.ts +5 -5
- package/src/credit-payment/CreditPaymentApi.ts +73 -73
- package/src/credit-payment/index.ts +2 -2
- package/src/credit-payment/interfaces/ICreditPaymentApi.ts +52 -52
- package/src/credit-statements/api/CreditStatementsApi.ts +25 -25
- package/src/credit-statements/api/interfaces/ICreditStatementsApi.ts +30 -30
- package/src/credit-statements/index.ts +2 -2
- package/src/device/DeviceApi.ts +32 -32
- package/src/device/index.ts +2 -2
- package/src/device/interfaces/IDeviceApi.ts +41 -41
- package/src/directories/DirectoriesApi.ts +63 -63
- package/src/directories/index.ts +3 -3
- package/src/directories/interfaces/IDirectoriesApi.ts +17 -17
- package/src/directory/DirectoryApi.ts +196 -196
- package/src/directory/index.ts +3 -3
- package/src/directory/interfaces/IDirectoryApi.ts +73 -73
- package/src/directorySetting/DirectorySettingApi.ts +42 -42
- package/src/directorySetting/index.ts +3 -3
- package/src/directorySetting/interfaces/IDirectorySettingApi.ts +56 -56
- package/src/disputes/DisputesApi.ts +50 -50
- package/src/disputes/index.ts +2 -2
- package/src/disputes/interfaces/IDisputesApi.ts +54 -54
- package/src/document-generator/DocumentGeneratorApi.ts +51 -51
- package/src/document-generator/index.ts +2 -2
- package/src/document-generator/interfaces/IDocumentGeneratorApi.ts +34 -34
- package/src/document-image-processor/DocumentImageProcessorApi.ts +22 -22
- package/src/document-image-processor/index.ts +1 -1
- package/src/document-image-processor/interfaces/IDocumentImageProcessorApi.ts +7 -7
- package/src/estafeta/api/EstafetaApi.ts +67 -67
- package/src/estafeta/api/interfaces/IEstafetaApi.ts +28 -28
- package/src/estafeta/index.ts +1 -1
- package/src/event-history-business/EventHistoryApi.ts +108 -108
- package/src/event-history-business/index.ts +3 -3
- package/src/event-history-business/interfaces/IEventHistoryApi.ts +47 -47
- package/src/exchangeRates/ExchangeRatesApi.ts +27 -27
- package/src/exchangeRates/index.ts +1 -1
- package/src/exchangeRates/interfaces/IExchangeRatesApi.ts +8 -8
- package/src/fiadoMessages/api/FiadoMessagesApi.ts +20 -20
- package/src/fiadoMessages/api/interfaces/IFiadoMessagesApi.ts +2 -2
- package/src/fiadoMessages/index.ts +1 -1
- package/src/firebase-connector/FirebaseConnectorApi.ts +53 -53
- package/src/firebase-connector/index.ts +3 -3
- package/src/firebase-connector/interfaces/IFirebaseConnectorApi.ts +6 -6
- package/src/fraudPreventionEngine/api/FraudPreventionEngineApi.ts +22 -22
- package/src/fraudPreventionEngine/api/interfaces/IFraudPreventionEngineApi.ts +7 -7
- package/src/fraudPreventionEngine/index.ts +1 -1
- package/src/group/GroupApi.ts +69 -69
- package/src/group/index.ts +1 -1
- package/src/group/interfaces/IGroupApi.ts +40 -40
- package/src/identity/IdentityApi.ts +95 -95
- package/src/identity/index.ts +3 -3
- package/src/identity/interfaces/IIdentityApi.ts +46 -46
- package/src/index.ts +78 -76
- package/src/legalDocument/api/LegalDocumentApi.ts +38 -38
- package/src/legalDocument/api/interfaces/ILegalDocumentApi.ts +7 -7
- package/src/legalDocument/index.ts +3 -3
- package/src/messages-business/api/MessagesBusinessApi.ts +50 -0
- package/src/messages-business/api/interfaces/IMessagesBusinessApi.ts +20 -0
- package/src/messages-business/index.ts +4 -0
- package/src/messages-business/queue/MessagesBusinessPublisher.ts +33 -0
- package/src/messages-business/queue/interfaces/IMessagesBusinessPublisher.ts +5 -0
- package/src/milestone-business/api/MilestoneBusinessApi.ts +26 -26
- package/src/milestone-business/api/interfaces/IMilestoneBusinessApi.ts +9 -9
- package/src/milestone-business/index.ts +2 -2
- package/src/multicommServicePayment/api/MulticommServicePaymentApi.ts +94 -94
- package/src/multicommServicePayment/api/interfaces/IMulticommServicePaymentApi.ts +44 -44
- package/src/multicommServicePayment/index.ts +1 -1
- package/src/notificationMessages/index.ts +1 -1
- package/src/notificationMessages/queue/NotificationMessagePublisher.ts +42 -42
- package/src/notificationMessages/queue/interfaces/INotificationMessagesPublisher.ts +7 -7
- package/src/notificationWebsockets/index.ts +1 -1
- package/src/notificationWebsockets/queue/NotificationWSMessagePublisher.ts +29 -29
- package/src/notificationWebsockets/queue/interfaces/INotificationWSMessagesPublisher.ts +4 -4
- package/src/observations/ObservationsApi.ts +23 -23
- package/src/observations/index.ts +3 -3
- package/src/observations/interfaces/IObservationsApi.ts +9 -9
- package/src/onboarding/api/OnboardingApi.ts +23 -23
- package/src/onboarding/api/interfaces/IOnboardingApi.ts +3 -3
- package/src/onboarding/index.ts +1 -1
- package/src/onboarding-business/api/OnboardingBusinessApi.ts +210 -210
- package/src/onboarding-business/api/interfaces/IOnboardingBusinessApi.ts +9 -9
- package/src/onboarding-business/index.ts +1 -1
- package/src/order-collector-business/OrderCollectorApi.ts +20 -20
- package/src/order-collector-business/index.ts +3 -3
- package/src/order-collector-business/interfaces/IOrderCollectorApi.ts +9 -9
- package/src/p2pContact/api/P2pContactApi.ts +19 -19
- package/src/p2pContact/api/interfaces/IP2pContactApi.ts +4 -4
- package/src/p2pContact/index.ts +1 -1
- package/src/payroll-business/PayrollApi.ts +19 -19
- package/src/payroll-business/index.ts +1 -1
- package/src/payroll-business/interfaces/IPayrollApi.ts +18 -18
- package/src/people-business/api/PeopleBusinessApi.ts +32 -32
- package/src/people-business/api/interfaces/IPeopleBusinessApi.ts +7 -7
- package/src/people-business/index.ts +1 -1
- package/src/platform-error-events/index.ts +2 -2
- package/src/platform-error-events/queue/PlatformErrorEventsPublisher.ts +24 -24
- package/src/platform-error-events/queue/interfaces/IPlatformErrorEventsPublisher.ts +5 -5
- package/src/platformRbac/api/PlatformRbacBusinessApi.ts +55 -0
- package/src/platformRbac/api/interfaces/IPlatformRbacBusinessApi.ts +56 -0
- package/src/platformRbac/index.ts +2 -0
- package/src/pomelo/api/PomeloApi.ts +109 -109
- package/src/pomelo/api/interfaces/IPomeloApi.ts +29 -29
- package/src/pomelo/index.ts +1 -1
- package/src/pomeloProcessor/api/PomeloProcessorApi.ts +17 -17
- package/src/pomeloProcessor/api/interfaces/IPomeloProcessorApi.ts +2 -2
- package/src/pomeloProcessor/index.ts +2 -2
- package/src/pricelist-business/PriceListApi.ts +45 -45
- package/src/pricelist-business/index.ts +1 -1
- package/src/pricelist-business/interfaces/IPriceListApi.ts +16 -16
- package/src/product-catalog/ProductCatalogApi.ts +17 -17
- package/src/product-catalog/index.ts +1 -1
- package/src/product-catalog/interfaces/IProductCatalogApi.ts +6 -6
- package/src/product-payment/api/ProductPaymentApi.ts +25 -25
- package/src/product-payment/api/interfaces/IProductPaymentApi.ts +8 -8
- package/src/product-payment/index.ts +1 -1
- package/src/referral-business/ReferralBusinessApi.ts +37 -37
- package/src/referral-business/index.ts +1 -1
- package/src/referral-business/interfaces/IReferralBusinessApi.ts +38 -38
- package/src/report-processor-business/api/IReportProcessorBusinessApi.ts +4 -4
- package/src/report-processor-business/api/ReportProcessorBusinessApi.ts +17 -17
- package/src/report-processor-business/index.ts +5 -5
- package/src/riskProfile/api/RiskProfileApi.ts +63 -63
- package/src/riskProfile/api/TransactionAlertApi.ts +49 -49
- package/src/riskProfile/api/interfaces/IRiskProfileApi.ts +51 -51
- package/src/riskProfile/api/interfaces/ITransactionAlertApi.ts +70 -70
- package/src/riskProfile/index.ts +7 -7
- package/src/riskProfile/queue/TransactionAlarmPublisher.ts +25 -25
- package/src/riskProfile/queue/interfaces/ITransactionAlarmPublisher.ts +4 -4
- package/src/service-business/ServiceApi.ts +78 -78
- package/src/service-business/index.ts +2 -2
- package/src/service-business/interfaces/IServiceApi.ts +73 -73
- package/src/sessionActivity/index.ts +2 -2
- package/src/sessionActivity/queue/SessionActivityPublisher.ts +23 -23
- package/src/sessionActivity/queue/interfaces/ISessionActivityPublisher.ts +4 -4
- package/src/stp-business/api/STPBusinessApi.ts +32 -32
- package/src/stp-business/api/interfaces/ISTPBusinessApi.ts +15 -15
- package/src/stp-business/index.ts +1 -1
- package/src/stpAccount/api/STPAccountApi.ts +111 -111
- package/src/stpAccount/api/interfaces/ISTPAccountApi.ts +7 -7
- package/src/stpAccount/index.ts +1 -1
- package/src/stpServicePayment/api/StpServicePaymentApi.ts +94 -94
- package/src/stpServicePayment/api/interfaces/IStpServicePaymentApi.ts +44 -44
- package/src/stpServicePayment/index.ts +1 -1
- package/src/stpSpei/api/StpSpeiApi.ts +32 -32
- package/src/stpSpei/api/interfaces/IStpSpeiApi.ts +6 -6
- package/src/stpSpei/index.ts +1 -1
- package/src/teams-connector/index.ts +2 -2
- package/src/teams-connector/queue/TeamsNotificationPublisher.ts +24 -24
- package/src/teams-connector/queue/interfaces/ITeamsNotificationPublisher.ts +5 -5
- package/src/tern/api/TernApi.ts +147 -147
- package/src/tern/api/interfaces/ITernApi.ts +54 -54
- package/src/tern/index.ts +1 -1
- package/src/transaction/api/TransactionApi.ts +157 -157
- package/src/transaction/api/interfaces/ITransactionApi.ts +82 -82
- package/src/transaction/index.ts +5 -5
- package/src/transaction/queue/TransactionPublisher.ts +25 -25
- package/src/transaction/queue/interfaces/ITransactionPublisher.ts +4 -4
- package/src/transactionProcessor/api/TransactionProcessorApi.ts +57 -57
- package/src/transactionProcessor/api/interfaces/ITransactionProcessorApi.ts +28 -28
- package/src/transactionProcessor/index.ts +1 -1
- package/src/uniteller-connector/api/UnitellerConnectorApi.ts +113 -113
- package/src/uniteller-connector/api/interfaces/IUnitellerConnectorApi.ts +85 -85
- package/src/uniteller-connector/index.ts +2 -2
- package/src/utils/InvokerUtils.ts +18 -18
- package/src/zendesk/ZendeskApi.ts +24 -24
- package/src/zendesk/index.ts +3 -3
- package/src/zendesk/interfaces/IZendeskApi.ts +10 -10
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { inject, injectable } from "inversify";
|
|
2
|
-
import { IHttpRequest } from "@fiado/http-client";
|
|
3
|
-
import { IContractBusinessApi } from "./interfaces/IContractBusinessApi";
|
|
4
|
-
|
|
5
|
-
@injectable()
|
|
6
|
-
export default class ContractBusinessApi implements IContractBusinessApi {
|
|
7
|
-
|
|
8
|
-
private readonly baseUrl = process.env.CONTRACT_BUSINESS_LAMBDA_URL || "";
|
|
9
|
-
|
|
10
|
-
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
async signDocument(params: {
|
|
14
|
-
documentType: string;
|
|
15
|
-
directoryId: string;
|
|
16
|
-
peopleId: string;
|
|
17
|
-
folio: string;
|
|
18
|
-
sessionId: string;
|
|
19
|
-
metadata?: Record<string, unknown>;
|
|
20
|
-
partnerId?: string;
|
|
21
|
-
category?: string;
|
|
22
|
-
skipTsa?: boolean;
|
|
23
|
-
}): Promise<any> {
|
|
24
|
-
const { documentType, ...body } = params;
|
|
25
|
-
return await this.httpRequest.post(`${this.baseUrl}/sign/${documentType}`, body);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
async listSignedByDirectory(directoryId: string, enterprise: string = "FIADOSA"): Promise<any> {
|
|
29
|
-
const url = `${this.baseUrl}/directories/${directoryId}/signed-documents?enterprise=${encodeURIComponent(enterprise)}`;
|
|
30
|
-
return await this.httpRequest.get(url);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async getContractPdfUrl(contractId: string, partnerId: string, category: string = "CREDITS"): Promise<any> {
|
|
34
|
-
const url = `${this.baseUrl}/contracts/${contractId}/pdf?partnerId=${encodeURIComponent(partnerId)}&category=${encodeURIComponent(category)}`;
|
|
35
|
-
return await this.httpRequest.get(url);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
1
|
+
import { inject, injectable } from "inversify";
|
|
2
|
+
import { IHttpRequest } from "@fiado/http-client";
|
|
3
|
+
import { IContractBusinessApi } from "./interfaces/IContractBusinessApi";
|
|
4
|
+
|
|
5
|
+
@injectable()
|
|
6
|
+
export default class ContractBusinessApi implements IContractBusinessApi {
|
|
7
|
+
|
|
8
|
+
private readonly baseUrl = process.env.CONTRACT_BUSINESS_LAMBDA_URL || "";
|
|
9
|
+
|
|
10
|
+
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
async signDocument(params: {
|
|
14
|
+
documentType: string;
|
|
15
|
+
directoryId: string;
|
|
16
|
+
peopleId: string;
|
|
17
|
+
folio: string;
|
|
18
|
+
sessionId: string;
|
|
19
|
+
metadata?: Record<string, unknown>;
|
|
20
|
+
partnerId?: string;
|
|
21
|
+
category?: string;
|
|
22
|
+
skipTsa?: boolean;
|
|
23
|
+
}): Promise<any> {
|
|
24
|
+
const { documentType, ...body } = params;
|
|
25
|
+
return await this.httpRequest.post(`${this.baseUrl}/sign/${documentType}`, body);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
async listSignedByDirectory(directoryId: string, enterprise: string = "FIADOSA"): Promise<any> {
|
|
29
|
+
const url = `${this.baseUrl}/directories/${directoryId}/signed-documents?enterprise=${encodeURIComponent(enterprise)}`;
|
|
30
|
+
return await this.httpRequest.get(url);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async getContractPdfUrl(contractId: string, partnerId: string, category: string = "CREDITS"): Promise<any> {
|
|
34
|
+
const url = `${this.baseUrl}/contracts/${contractId}/pdf?partnerId=${encodeURIComponent(partnerId)}&category=${encodeURIComponent(category)}`;
|
|
35
|
+
return await this.httpRequest.get(url);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
export interface IContractBusinessApi {
|
|
2
|
-
signDocument(params: {
|
|
3
|
-
documentType: string;
|
|
4
|
-
directoryId: string;
|
|
5
|
-
peopleId: string;
|
|
6
|
-
folio: string;
|
|
7
|
-
sessionId: string;
|
|
8
|
-
metadata?: Record<string, unknown>;
|
|
9
|
-
/** Opcional: partnerId para resolver el template con path profundo en S3 */
|
|
10
|
-
partnerId?: string;
|
|
11
|
-
/** Opcional: category (ej: "credito") para el path profundo de template */
|
|
12
|
-
category?: string;
|
|
13
|
-
/**
|
|
14
|
-
* Opcional. Si `true`, contract-business genera el PDF y lo guarda en S3
|
|
15
|
-
* pero NO aplica la firma digital TSA del banco. El ContractControl row
|
|
16
|
-
* queda con status `"PREVIEW"`. Sirve para mostrarle al cliente el
|
|
17
|
-
* documento antes de aceptar (no vinculante). Default: false.
|
|
18
|
-
*/
|
|
19
|
-
skipTsa?: boolean;
|
|
20
|
-
}): Promise<any>;
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Lista todos los contratos firmados del directorio (no solo el último por tipo).
|
|
24
|
-
* Backoffice consume este endpoint para mostrar el historial.
|
|
25
|
-
*/
|
|
26
|
-
listSignedByDirectory(directoryId: string, enterprise?: string): Promise<any>;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Obtiene una URL pre-firmada (15 min) para visualizar inline el PDF firmado.
|
|
30
|
-
*/
|
|
31
|
-
getContractPdfUrl(contractId: string, partnerId: string, category?: string): Promise<any>;
|
|
32
|
-
}
|
|
1
|
+
export interface IContractBusinessApi {
|
|
2
|
+
signDocument(params: {
|
|
3
|
+
documentType: string;
|
|
4
|
+
directoryId: string;
|
|
5
|
+
peopleId: string;
|
|
6
|
+
folio: string;
|
|
7
|
+
sessionId: string;
|
|
8
|
+
metadata?: Record<string, unknown>;
|
|
9
|
+
/** Opcional: partnerId para resolver el template con path profundo en S3 */
|
|
10
|
+
partnerId?: string;
|
|
11
|
+
/** Opcional: category (ej: "credito") para el path profundo de template */
|
|
12
|
+
category?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Opcional. Si `true`, contract-business genera el PDF y lo guarda en S3
|
|
15
|
+
* pero NO aplica la firma digital TSA del banco. El ContractControl row
|
|
16
|
+
* queda con status `"PREVIEW"`. Sirve para mostrarle al cliente el
|
|
17
|
+
* documento antes de aceptar (no vinculante). Default: false.
|
|
18
|
+
*/
|
|
19
|
+
skipTsa?: boolean;
|
|
20
|
+
}): Promise<any>;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Lista todos los contratos firmados del directorio (no solo el último por tipo).
|
|
24
|
+
* Backoffice consume este endpoint para mostrar el historial.
|
|
25
|
+
*/
|
|
26
|
+
listSignedByDirectory(directoryId: string, enterprise?: string): Promise<any>;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Obtiene una URL pre-firmada (15 min) para visualizar inline el PDF firmado.
|
|
30
|
+
*/
|
|
31
|
+
getContractPdfUrl(contractId: string, partnerId: string, category?: string): Promise<any>;
|
|
32
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './api/ContractBusinessApi';
|
|
2
|
-
export * from './api/interfaces/IContractBusinessApi';
|
|
1
|
+
export * from './api/ContractBusinessApi';
|
|
2
|
+
export * from './api/interfaces/IContractBusinessApi';
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { inject, injectable } from "inversify";
|
|
2
|
-
import { IContractGeneratorApi } from "./interfaces/IContractGeneratorApi";
|
|
3
|
-
import { IHttpRequest } from "@fiado/http-client";
|
|
4
|
-
import dotenv from 'dotenv';
|
|
5
|
-
import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
|
|
6
|
-
dotenv.config();
|
|
7
|
-
|
|
8
|
-
@injectable()
|
|
9
|
-
export class ContractGeneratorApi implements IContractGeneratorApi {
|
|
10
|
-
|
|
11
|
-
private readonly baseUrl = process.env.CONTRACT_GENERATOR_URL || "";
|
|
12
|
-
|
|
13
|
-
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
|
|
14
|
-
|
|
15
|
-
async generate(params: ContractCreateRequest): Promise<any> {
|
|
16
|
-
const url = `${this.baseUrl}`;
|
|
17
|
-
return await this.httpRequest.post(`${url}`,params, { 'spring.cloud.function.definition': "generateReport" });
|
|
18
|
-
}
|
|
1
|
+
import { inject, injectable } from "inversify";
|
|
2
|
+
import { IContractGeneratorApi } from "./interfaces/IContractGeneratorApi";
|
|
3
|
+
import { IHttpRequest } from "@fiado/http-client";
|
|
4
|
+
import dotenv from 'dotenv';
|
|
5
|
+
import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
|
|
6
|
+
dotenv.config();
|
|
7
|
+
|
|
8
|
+
@injectable()
|
|
9
|
+
export class ContractGeneratorApi implements IContractGeneratorApi {
|
|
10
|
+
|
|
11
|
+
private readonly baseUrl = process.env.CONTRACT_GENERATOR_URL || "";
|
|
12
|
+
|
|
13
|
+
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
|
|
14
|
+
|
|
15
|
+
async generate(params: ContractCreateRequest): Promise<any> {
|
|
16
|
+
const url = `${this.baseUrl}`;
|
|
17
|
+
return await this.httpRequest.post(`${url}`,params, { 'spring.cloud.function.definition': "generateReport" });
|
|
18
|
+
}
|
|
19
19
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export * from './interfaces/IContractGeneratorApi';
|
|
1
|
+
|
|
2
|
+
export * from './interfaces/IContractGeneratorApi';
|
|
3
3
|
export * from './ContractGeneratorApi';
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Interfaz para el servicio Contract Generator.
|
|
5
|
-
*/
|
|
6
|
-
export interface IContractGeneratorApi {
|
|
7
|
-
/**
|
|
8
|
-
* Obtiene una lista de people por sus IDs.
|
|
9
|
-
* @param ids Array de IDs de peopleId (UUIDs) a buscar.
|
|
10
|
-
* @returns Una promesa que resuelve a un arreglo de objetos de people.
|
|
11
|
-
* Puede devolver un arreglo vacío si no se encuentran coincidencias.
|
|
12
|
-
* @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
|
|
13
|
-
*/
|
|
14
|
-
generate(params:ContractCreateRequest): Promise<any>;
|
|
15
|
-
|
|
16
|
-
}
|
|
1
|
+
import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Interfaz para el servicio Contract Generator.
|
|
5
|
+
*/
|
|
6
|
+
export interface IContractGeneratorApi {
|
|
7
|
+
/**
|
|
8
|
+
* Obtiene una lista de people por sus IDs.
|
|
9
|
+
* @param ids Array de IDs de peopleId (UUIDs) a buscar.
|
|
10
|
+
* @returns Una promesa que resuelve a un arreglo de objetos de people.
|
|
11
|
+
* Puede devolver un arreglo vacío si no se encuentran coincidencias.
|
|
12
|
+
* @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
|
|
13
|
+
*/
|
|
14
|
+
generate(params:ContractCreateRequest): Promise<any>;
|
|
15
|
+
|
|
16
|
+
}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { CountriesGetListRequest, ICountriesBusinessApi } from "./interfaces/ICountriesBusinessApi";
|
|
2
|
-
import { inject, injectable } from "inversify";
|
|
3
|
-
import { IHttpRequest } from "@fiado/http-client";
|
|
4
|
-
|
|
5
|
-
@injectable()
|
|
6
|
-
export default class CountriesBusinessApi implements ICountriesBusinessApi {
|
|
7
|
-
private readonly baseUrl = process.env.COUNTRIES_BUSINESS_LAMBDA_URL || "";
|
|
8
|
-
|
|
9
|
-
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
async getAll(): Promise<any> {
|
|
13
|
-
const url = `${this.baseUrl}all`;
|
|
14
|
-
return await this.httpRequest.get(url);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
async getList(params: CountriesGetListRequest): Promise<any> {
|
|
18
|
-
const queryParams = Object.entries(params)
|
|
19
|
-
.filter(([, value]) => value !== undefined && value !== null)
|
|
20
|
-
.map(([key, value]) => `${key}=${encodeURIComponent(String(value))}`)
|
|
21
|
-
.join('&');
|
|
22
|
-
|
|
23
|
-
const url = queryParams ? `${this.baseUrl}?${queryParams}` : this.baseUrl;
|
|
24
|
-
return await this.httpRequest.get(url);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
1
|
+
import { CountriesGetListRequest, ICountriesBusinessApi } from "./interfaces/ICountriesBusinessApi";
|
|
2
|
+
import { inject, injectable } from "inversify";
|
|
3
|
+
import { IHttpRequest } from "@fiado/http-client";
|
|
4
|
+
|
|
5
|
+
@injectable()
|
|
6
|
+
export default class CountriesBusinessApi implements ICountriesBusinessApi {
|
|
7
|
+
private readonly baseUrl = process.env.COUNTRIES_BUSINESS_LAMBDA_URL || "";
|
|
8
|
+
|
|
9
|
+
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
async getAll(): Promise<any> {
|
|
13
|
+
const url = `${this.baseUrl}all`;
|
|
14
|
+
return await this.httpRequest.get(url);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async getList(params: CountriesGetListRequest): Promise<any> {
|
|
18
|
+
const queryParams = Object.entries(params)
|
|
19
|
+
.filter(([, value]) => value !== undefined && value !== null)
|
|
20
|
+
.map(([key, value]) => `${key}=${encodeURIComponent(String(value))}`)
|
|
21
|
+
.join('&');
|
|
22
|
+
|
|
23
|
+
const url = queryParams ? `${this.baseUrl}?${queryParams}` : this.baseUrl;
|
|
24
|
+
return await this.httpRequest.get(url);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './interfaces/ICountriesBusinessApi';
|
|
2
|
-
export * from './CountriesBusinessApi';
|
|
1
|
+
export * from './interfaces/ICountriesBusinessApi';
|
|
2
|
+
export * from './CountriesBusinessApi';
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
export interface CountriesGetListRequest {
|
|
2
|
-
index?: string;
|
|
3
|
-
pageSize?: number;
|
|
4
|
-
filter1?: boolean;
|
|
5
|
-
filter2?: boolean;
|
|
6
|
-
filter3?: boolean;
|
|
7
|
-
filter4?: boolean;
|
|
8
|
-
filter5?: boolean;
|
|
9
|
-
filter6?: boolean;
|
|
10
|
-
filter7?: boolean;
|
|
11
|
-
filter8?: boolean;
|
|
12
|
-
filter9?: boolean;
|
|
13
|
-
filter10?: boolean;
|
|
14
|
-
isEnabled?: boolean;
|
|
15
|
-
iso2?: string;
|
|
16
|
-
iso3?: string;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export interface ICountriesBusinessApi {
|
|
20
|
-
getAll(): Promise<any>;
|
|
21
|
-
getList(params: CountriesGetListRequest): Promise<any>;
|
|
22
|
-
}
|
|
1
|
+
export interface CountriesGetListRequest {
|
|
2
|
+
index?: string;
|
|
3
|
+
pageSize?: number;
|
|
4
|
+
filter1?: boolean;
|
|
5
|
+
filter2?: boolean;
|
|
6
|
+
filter3?: boolean;
|
|
7
|
+
filter4?: boolean;
|
|
8
|
+
filter5?: boolean;
|
|
9
|
+
filter6?: boolean;
|
|
10
|
+
filter7?: boolean;
|
|
11
|
+
filter8?: boolean;
|
|
12
|
+
filter9?: boolean;
|
|
13
|
+
filter10?: boolean;
|
|
14
|
+
isEnabled?: boolean;
|
|
15
|
+
iso2?: string;
|
|
16
|
+
iso3?: string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export interface ICountriesBusinessApi {
|
|
20
|
+
getAll(): Promise<any>;
|
|
21
|
+
getList(params: CountriesGetListRequest): Promise<any>;
|
|
22
|
+
}
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
import dotenv from 'dotenv';
|
|
2
|
-
import { inject, injectable } from "inversify";
|
|
3
|
-
import { IHttpRequest } from "@fiado/http-client";
|
|
4
|
-
import { ICreditEngineApi } from "./interfaces/ICreditEngineApi";
|
|
5
|
-
import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
|
|
6
|
-
import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
|
|
7
|
-
dotenv.config();
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Cliente concreto para los endpoints privados del `credit-engine-business` Lambda.
|
|
11
|
-
* Todos los endpoints son GET. Base URL viene de `CREDIT_ENGINE_LAMBDA_URL`.
|
|
12
|
-
*/
|
|
13
|
-
@injectable()
|
|
14
|
-
export class CreditEngineApi implements ICreditEngineApi {
|
|
15
|
-
|
|
16
|
-
private readonly baseUrl = process.env.CREDIT_ENGINE_LAMBDA_URL || "";
|
|
17
|
-
|
|
18
|
-
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
|
|
19
|
-
|
|
20
|
-
public async healthcheck(): Promise<{ status: string; service: string }> {
|
|
21
|
-
const url = `${this.baseUrl}healthcheck`;
|
|
22
|
-
return await this.httpRequest.get(url, undefined, { operationName: "healthcheck" });
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
public async getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse> {
|
|
26
|
-
const url = `${this.baseUrl}credit/profile/${directoryId}`;
|
|
27
|
-
return await this.httpRequest.get(
|
|
28
|
-
url,
|
|
29
|
-
{ partnerId },
|
|
30
|
-
{ operationName: "getCreditProfile" },
|
|
31
|
-
);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
public async getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null> {
|
|
35
|
-
const url = `${this.baseUrl}credit/active/${directoryId}`;
|
|
36
|
-
return await this.httpRequest.get(
|
|
37
|
-
url,
|
|
38
|
-
undefined,
|
|
39
|
-
{ operationName: "getActiveCredit" },
|
|
40
|
-
);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
public async enrichDirectories(directoryIds: string[]): Promise<any> {
|
|
44
|
-
const url = `${this.baseUrl}credit/private/enrich-directories`;
|
|
45
|
-
const operationName = "privateEnrichDirectories";
|
|
46
|
-
return await this.httpRequest.post(url, { directoryIds }, { 'operationName': operationName });
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
public async getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any> {
|
|
50
|
-
const url = `${this.baseUrl}credit/private/credit-progress`;
|
|
51
|
-
const operationName = "privateGetCreditProgress";
|
|
52
|
-
return await this.httpRequest.post(url, { credits }, { 'operationName': operationName });
|
|
53
|
-
}
|
|
54
|
-
}
|
|
1
|
+
import dotenv from 'dotenv';
|
|
2
|
+
import { inject, injectable } from "inversify";
|
|
3
|
+
import { IHttpRequest } from "@fiado/http-client";
|
|
4
|
+
import { ICreditEngineApi } from "./interfaces/ICreditEngineApi";
|
|
5
|
+
import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
|
|
6
|
+
import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
|
|
7
|
+
dotenv.config();
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Cliente concreto para los endpoints privados del `credit-engine-business` Lambda.
|
|
11
|
+
* Todos los endpoints son GET. Base URL viene de `CREDIT_ENGINE_LAMBDA_URL`.
|
|
12
|
+
*/
|
|
13
|
+
@injectable()
|
|
14
|
+
export class CreditEngineApi implements ICreditEngineApi {
|
|
15
|
+
|
|
16
|
+
private readonly baseUrl = process.env.CREDIT_ENGINE_LAMBDA_URL || "";
|
|
17
|
+
|
|
18
|
+
constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
|
|
19
|
+
|
|
20
|
+
public async healthcheck(): Promise<{ status: string; service: string }> {
|
|
21
|
+
const url = `${this.baseUrl}healthcheck`;
|
|
22
|
+
return await this.httpRequest.get(url, undefined, { operationName: "healthcheck" });
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
public async getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse> {
|
|
26
|
+
const url = `${this.baseUrl}credit/profile/${directoryId}`;
|
|
27
|
+
return await this.httpRequest.get(
|
|
28
|
+
url,
|
|
29
|
+
{ partnerId },
|
|
30
|
+
{ operationName: "getCreditProfile" },
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
public async getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null> {
|
|
35
|
+
const url = `${this.baseUrl}credit/active/${directoryId}`;
|
|
36
|
+
return await this.httpRequest.get(
|
|
37
|
+
url,
|
|
38
|
+
undefined,
|
|
39
|
+
{ operationName: "getActiveCredit" },
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
public async enrichDirectories(directoryIds: string[]): Promise<any> {
|
|
44
|
+
const url = `${this.baseUrl}credit/private/enrich-directories`;
|
|
45
|
+
const operationName = "privateEnrichDirectories";
|
|
46
|
+
return await this.httpRequest.post(url, { directoryIds }, { 'operationName': operationName });
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
public async getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any> {
|
|
50
|
+
const url = `${this.baseUrl}credit/private/credit-progress`;
|
|
51
|
+
const operationName = "privateGetCreditProgress";
|
|
52
|
+
return await this.httpRequest.post(url, { credits }, { 'operationName': operationName });
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export * from './interfaces/ICreditEngineApi';
|
|
2
|
-
export * from './CreditEngineApi';
|
|
3
|
-
|
|
4
|
-
// SQS Publishers - interfaces
|
|
5
|
-
export * from './queue/interfaces/ICreditIncomeDetectionPublisher';
|
|
6
|
-
export * from './queue/interfaces/ICreditScoringPublisher';
|
|
7
|
-
export * from './queue/interfaces/ICreditOfferGenerationPublisher';
|
|
8
|
-
export * from './queue/interfaces/ICreditCollectionPublisher';
|
|
9
|
-
export * from './queue/interfaces/ICreditDelinquencyPublisher';
|
|
10
|
-
export * from './queue/interfaces/ICreditTransferPublisher';
|
|
11
|
-
export * from './queue/interfaces/ICreditNotificationPublisher';
|
|
12
|
-
export * from './queue/interfaces/ICreditStatementPublisher';
|
|
13
|
-
export * from './queue/interfaces/ICreditReconciliationPublisher';
|
|
14
|
-
export * from './queue/interfaces/ICreditLienCollectionPublisher';
|
|
15
|
-
|
|
16
|
-
// SQS Publishers - implementations (named re-exports of default exports)
|
|
17
|
-
export { default as CreditIncomeDetectionPublisher } from './queue/CreditIncomeDetectionPublisher';
|
|
1
|
+
export * from './interfaces/ICreditEngineApi';
|
|
2
|
+
export * from './CreditEngineApi';
|
|
3
|
+
|
|
4
|
+
// SQS Publishers - interfaces
|
|
5
|
+
export * from './queue/interfaces/ICreditIncomeDetectionPublisher';
|
|
6
|
+
export * from './queue/interfaces/ICreditScoringPublisher';
|
|
7
|
+
export * from './queue/interfaces/ICreditOfferGenerationPublisher';
|
|
8
|
+
export * from './queue/interfaces/ICreditCollectionPublisher';
|
|
9
|
+
export * from './queue/interfaces/ICreditDelinquencyPublisher';
|
|
10
|
+
export * from './queue/interfaces/ICreditTransferPublisher';
|
|
11
|
+
export * from './queue/interfaces/ICreditNotificationPublisher';
|
|
12
|
+
export * from './queue/interfaces/ICreditStatementPublisher';
|
|
13
|
+
export * from './queue/interfaces/ICreditReconciliationPublisher';
|
|
14
|
+
export * from './queue/interfaces/ICreditLienCollectionPublisher';
|
|
15
|
+
|
|
16
|
+
// SQS Publishers - implementations (named re-exports of default exports)
|
|
17
|
+
export { default as CreditIncomeDetectionPublisher } from './queue/CreditIncomeDetectionPublisher';
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
|
|
2
|
-
import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Cliente para invocar los endpoints privados del lambda `credit-engine-business`.
|
|
6
|
-
*
|
|
7
|
-
* Los endpoints viven bajo `CREDIT_ENGINE_LAMBDA_URL` (API Gateway privado / VPC).
|
|
8
|
-
*/
|
|
9
|
-
export interface ICreditEngineApi {
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Healthcheck del lambda. Devuelve `{ status: "OK", service: "credit-engine-business" }`.
|
|
13
|
-
* Útil para validar conectividad inter-service.
|
|
14
|
-
*/
|
|
15
|
-
healthcheck(): Promise<{ status: string; service: string }>;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Obtiene el perfil financiero del directorio para un partner específico.
|
|
19
|
-
* Endpoint: `GET /credit/profile/{directoryId}?partnerId={partnerId}`
|
|
20
|
-
*
|
|
21
|
-
* @param directoryId ID del directorio del usuario.
|
|
22
|
-
* @param partnerId ID del partner (tenant) del perfil a consultar.
|
|
23
|
-
*/
|
|
24
|
-
getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse>;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Obtiene el crédito activo del cliente, si existe.
|
|
28
|
-
* Endpoint: `GET /credit/active/{directoryId}`
|
|
29
|
-
*
|
|
30
|
-
* @param directoryId ID del directorio del usuario.
|
|
31
|
-
* @returns Detalle del crédito activo, o `null` si no hay crédito activo.
|
|
32
|
-
*/
|
|
33
|
-
getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null>;
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Resuelve full_name + phone_number para una lista de directoryIds.
|
|
37
|
-
* Endpoint: POST /credit/private/enrich-directories
|
|
38
|
-
*/
|
|
39
|
-
enrichDirectories(directoryIds: string[]): Promise<any>;
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Resuelve weeks_paid + weeks_total + next_due_date para una lista de creditos.
|
|
43
|
-
* Endpoint: POST /credit/private/credit-progress
|
|
44
|
-
*/
|
|
45
|
-
getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any>;
|
|
46
|
-
}
|
|
1
|
+
import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
|
|
2
|
+
import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Cliente para invocar los endpoints privados del lambda `credit-engine-business`.
|
|
6
|
+
*
|
|
7
|
+
* Los endpoints viven bajo `CREDIT_ENGINE_LAMBDA_URL` (API Gateway privado / VPC).
|
|
8
|
+
*/
|
|
9
|
+
export interface ICreditEngineApi {
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Healthcheck del lambda. Devuelve `{ status: "OK", service: "credit-engine-business" }`.
|
|
13
|
+
* Útil para validar conectividad inter-service.
|
|
14
|
+
*/
|
|
15
|
+
healthcheck(): Promise<{ status: string; service: string }>;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Obtiene el perfil financiero del directorio para un partner específico.
|
|
19
|
+
* Endpoint: `GET /credit/profile/{directoryId}?partnerId={partnerId}`
|
|
20
|
+
*
|
|
21
|
+
* @param directoryId ID del directorio del usuario.
|
|
22
|
+
* @param partnerId ID del partner (tenant) del perfil a consultar.
|
|
23
|
+
*/
|
|
24
|
+
getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse>;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Obtiene el crédito activo del cliente, si existe.
|
|
28
|
+
* Endpoint: `GET /credit/active/{directoryId}`
|
|
29
|
+
*
|
|
30
|
+
* @param directoryId ID del directorio del usuario.
|
|
31
|
+
* @returns Detalle del crédito activo, o `null` si no hay crédito activo.
|
|
32
|
+
*/
|
|
33
|
+
getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null>;
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Resuelve full_name + phone_number para una lista de directoryIds.
|
|
37
|
+
* Endpoint: POST /credit/private/enrich-directories
|
|
38
|
+
*/
|
|
39
|
+
enrichDirectories(directoryIds: string[]): Promise<any>;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Resuelve weeks_paid + weeks_total + next_due_date para una lista de creditos.
|
|
43
|
+
* Endpoint: POST /credit/private/credit-progress
|
|
44
|
+
*/
|
|
45
|
+
getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any>;
|
|
46
|
+
}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { ICreditCollectionPublisher } from "./interfaces/ICreditCollectionPublisher";
|
|
2
|
-
import { CreditQueueMessage } from "@fiado/type-kit/bin/credit/dtos/internal/CreditQueueMessage";
|
|
3
|
-
import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
|
|
4
|
-
import { injectable } from "inversify";
|
|
5
|
-
|
|
6
|
-
@injectable()
|
|
7
|
-
export default class CreditCollectionPublisher implements ICreditCollectionPublisher {
|
|
8
|
-
private readonly QUEUE_URL = process.env.CREDIT_COLLECTION_QUEUE;
|
|
9
|
-
|
|
10
|
-
async publish(message: CreditQueueMessage): Promise<void> {
|
|
11
|
-
try {
|
|
12
|
-
const client: SQSClient = new SQSClient();
|
|
13
|
-
const sendMessageRequest: SendMessageRequest = {
|
|
14
|
-
QueueUrl: this.QUEUE_URL,
|
|
15
|
-
MessageBody: JSON.stringify(message)
|
|
16
|
-
};
|
|
17
|
-
const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
|
|
18
|
-
await client.send(command);
|
|
19
|
-
} catch (error) {
|
|
20
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
21
|
-
throw new Error(`Error publishing message to CreditCollectionQueue${': ' + errorMessage}`);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
1
|
+
import { ICreditCollectionPublisher } from "./interfaces/ICreditCollectionPublisher";
|
|
2
|
+
import { CreditQueueMessage } from "@fiado/type-kit/bin/credit/dtos/internal/CreditQueueMessage";
|
|
3
|
+
import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
|
|
4
|
+
import { injectable } from "inversify";
|
|
5
|
+
|
|
6
|
+
@injectable()
|
|
7
|
+
export default class CreditCollectionPublisher implements ICreditCollectionPublisher {
|
|
8
|
+
private readonly QUEUE_URL = process.env.CREDIT_COLLECTION_QUEUE;
|
|
9
|
+
|
|
10
|
+
async publish(message: CreditQueueMessage): Promise<void> {
|
|
11
|
+
try {
|
|
12
|
+
const client: SQSClient = new SQSClient();
|
|
13
|
+
const sendMessageRequest: SendMessageRequest = {
|
|
14
|
+
QueueUrl: this.QUEUE_URL,
|
|
15
|
+
MessageBody: JSON.stringify(message)
|
|
16
|
+
};
|
|
17
|
+
const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
|
|
18
|
+
await client.send(command);
|
|
19
|
+
} catch (error) {
|
|
20
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
21
|
+
throw new Error(`Error publishing message to CreditCollectionQueue${': ' + errorMessage}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|