n8n-nodes-efibank
Version:
Nó personalizado para integração com as APIs Cobranças e Pix do Efibank, permitindo operações de pagamentos, recebimentos e gerenciamento de transações financeiras.
106 lines • 7.07 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.assinaturaService = void 0;
const alterarDadosAssinatura_1 = require("../endpoints/Assinatura/alterarDadosAssinatura");
const associarPlanoLink_1 = require("../endpoints/Assinatura/associarPlanoLink");
const cancelarAssinatura_1 = require("../endpoints/Assinatura/cancelarAssinatura");
const criarInscricoesOneStep_1 = require("../endpoints/Assinatura/criarInscricoesOneStep");
const criarInscricoesTwoSteps_1 = require("../endpoints/Assinatura/criarInscricoesTwoSteps");
const definirFormaPagamento_1 = require("../endpoints/Assinatura/definirFormaPagamento");
const retentativaCartao_1 = require("../endpoints/Assinatura/retentativaCartao");
const historicoAssinatura_1 = require("../endpoints/Assinatura/historicoAssinatura");
const incluirMetadataAssinatura_1 = require("../endpoints/Assinatura/incluirMetadataAssinatura");
const reenvioEmailAssinatura_1 = require("../endpoints/Assinatura/reenvioEmailAssinatura");
const retornarAssinaturaVinculada_1 = require("../endpoints/Assinatura/retornarAssinaturaVinculada");
const criarPlanoAssinatura_1 = require("../endpoints/Assinatura/criarPlanoAssinatura");
const retornarInformacoesPlano_1 = require("../endpoints/Assinatura/retornarInformacoesPlano");
const editarNomePlano_1 = require("../endpoints/Assinatura/editarNomePlano");
const cancelarPlanoAssinatura_1 = require("../endpoints/Assinatura/cancelarPlanoAssinatura");
const retornarListaCobrancas_1 = require("../endpoints/Assinatura/retornarListaCobrancas");
async function assinaturaService(endpoint, i, baseURL, access_token) {
let requestOptions;
try {
switch (endpoint) {
case 'criarPlanoAssinatura':
requestOptions = await (0, criarPlanoAssinatura_1.criarPlanoAssinatura)(this, i, baseURL, access_token);
break;
case 'retornarInformacoesPlano':
requestOptions = await (0, retornarInformacoesPlano_1.retornarInformacoesPlano)(baseURL, access_token);
break;
case 'editarNomePlano':
const permitirEdicaoId = this.getNodeParameter('planId', i);
const nome_plano = this.getNodeParameter('nome_plano', i);
requestOptions = await (0, editarNomePlano_1.editarNomePlano)(baseURL, access_token, permitirEdicaoId, nome_plano);
break;
case 'cancelarPlanoAssinatura':
const cancelarPlanoId = this.getNodeParameter('planId', i);
requestOptions = await (0, cancelarPlanoAssinatura_1.cancelarPlanoAssinatura)(baseURL, access_token, cancelarPlanoId);
break;
case 'criarInscricoesOneStep':
const criarInscricoesOneStepId = this.getNodeParameter('planId', i);
requestOptions = await (0, criarInscricoesOneStep_1.criarInscricoesOneStep)(this, i, baseURL, access_token, criarInscricoesOneStepId);
break;
case 'criarInscricoesTwoSteps':
const criarInscricoesTwoStepsId = this.getNodeParameter('planId', i);
requestOptions = await (0, criarInscricoesTwoSteps_1.criarInscricoesTwoSteps)(this, i, baseURL, access_token, criarInscricoesTwoStepsId);
break;
case 'definirFormaPagamento':
const definirFormaPagamentoId = this.getNodeParameter('subscriptionId', i);
requestOptions = await (0, definirFormaPagamento_1.definirFormaPagamento)(this, i, baseURL, access_token, definirFormaPagamentoId);
break;
case 'retentativaCartao':
const retentativaId = this.getNodeParameter('chargeId', i);
requestOptions = await (0, retentativaCartao_1.retentativaCartao)(baseURL, access_token, retentativaId);
break;
case 'retornarAssinaturaVinculada':
const retornarAssinaturaVinculadaId = this.getNodeParameter('subscriptionId', i);
requestOptions = await (0, retornarAssinaturaVinculada_1.retornarAssinaturaVinculada)(baseURL, access_token, retornarAssinaturaVinculadaId);
break;
case 'retornarListaCobrancas':
const begin_date = this.getNodeParameter('begin_date', i);
const end_date = this.getNodeParameter('end_date', i);
requestOptions = await (0, retornarListaCobrancas_1.retornarListaCobrancas)(baseURL, access_token, begin_date, end_date);
break;
case 'associarPlanoLink':
const associarLinkId = this.getNodeParameter('planId', i);
requestOptions = await (0, associarPlanoLink_1.associarPlanoLink)(this, i, baseURL, access_token, associarLinkId);
break;
case 'incluirMetadataAssinatura':
const incluirMetadataAssinaturaId = this.getNodeParameter('subscriptionId', i);
requestOptions = await (0, incluirMetadataAssinatura_1.incluirMetadataAssinatura)(this, i, baseURL, access_token, incluirMetadataAssinaturaId);
break;
case 'alterarDadosAssinatura':
const alterarDadosAssinaturaId = this.getNodeParameter('subscriptionId', i);
requestOptions = await (0, alterarDadosAssinatura_1.alterarDadosAssinatura)(this, i, baseURL, access_token, alterarDadosAssinaturaId);
break;
case 'cancelarAssinatura':
const cancelarAssinaturaId = this.getNodeParameter('subscriptionId', i);
requestOptions = await (0, cancelarAssinatura_1.cancelarAssinatura)(baseURL, access_token, cancelarAssinaturaId);
break;
case 'historicoAssinatura':
const historicoAssinaturaId = this.getNodeParameter('subscriptionId', i);
requestOptions = await (0, historicoAssinatura_1.historicoAssinatura)(this, i, baseURL, access_token, historicoAssinaturaId);
break;
case 'reenvioEmailAssinatura':
const emailClienteReenvio = this.getNodeParameter('chargeId', i);
const email = this.getNodeParameter('email', i);
requestOptions = await (0, reenvioEmailAssinatura_1.reenvioEmailAssinatura)(baseURL, access_token, emailClienteReenvio, email);
break;
default:
throw new Error('Endpoint de Assinatura não implementado');
}
}
catch (error) {
if (error.response && error.response.data) {
const errorMessage = `Erro: ${error.response.data.error_description || error.response.data.error || 'Erro desconhecido'}`;
const errorCode = `Código: ${error.response.data.code || 'Não fornecido'}`;
throw new Error(`${errorMessage}\n${errorCode}`);
}
else {
throw new Error(`Erro desconhecido: ${error.message}`);
}
}
return requestOptions;
}
exports.assinaturaService = assinaturaService;
//# sourceMappingURL=assinaturaService.js.map