giganet_conecta
Version:
Aplicação com o fim de facilitar conexões com APi's e Banco de Dados (MySql, Mongo e Elasticsearch).
78 lines (71 loc) • 2.7 kB
JavaScript
const ConnectMongo = require("../../Connect Mongo");
const DiversasTickets = require("./Models/diversas_tickets");
const FrotasTicketsDespesas = require("./Models/frotas_tickets_despesas");
const FrotasTicketsDespesasVeloeGo = require("./Models/frotas_tickets_despesas_veloe_go");
const FrotasTicketsDespesasVeloeGoRotinas = require("./Models/frotas_tickets_despesas_veloe_go_rotinas");
const FrotasTicketsAPrazo = require("./Models/frotas_tickets_a_prazo");
const FrotasTicketsManutencoes = require("./Models/frotas_tickets_manutencoes");
const Reports = require("./Models/repots");
const Logs = require("./Models/logs");
module.exports = async () => {
const name_database = "despesas";
try {
const mongo_connection = await ConnectMongo({
user: process.env.DB_MONGO_32_USER,
pass: process.env.DB_MONGO_32_PASS,
host: process.env.DB_MONGO_32_HOST,
port: process.env.DB_MONGO_32_PORT,
db: name_database,
authSource: process.env.DB_MONGO_32_AUTH_SOURCE,
});
const [
diversas_tickets,
frotas_tickets_despesas,
frotas_tickets_despesas_veloe_go,
frotas_tickets_despesas_veloe_go_rotinas,
frotas_tickets_a_prazo,
frotas_tickets_manutencoes,
reports,
frotas_logs,
diversas_logs,
] = await Promise.all([
mongo_connection.model("diversas_tickets", DiversasTickets),
mongo_connection.model("frotas_tickets_despesas", FrotasTicketsDespesas),
mongo_connection.model(
"frotas_tickets_despesas_veloe_go",
FrotasTicketsDespesasVeloeGo
),
mongo_connection.model(
"frotas_tickets_despesas_veloe_go_rotinas",
FrotasTicketsDespesasVeloeGoRotinas
),
mongo_connection.model("frotas_tickets_a_prazo", FrotasTicketsAPrazo),
mongo_connection.model(
"frotas_tickets_manutencoes",
FrotasTicketsManutencoes
),
mongo_connection.model("reports", Reports),
mongo_connection.model("frotas_logs", Logs),
mongo_connection.model("diversas_logs", Logs),
]);
const DB_MONGO_32_DESPESAS = {
diversas_tickets,
frotas_tickets_despesas,
frotas_tickets_despesas_veloe_go,
frotas_tickets_despesas_veloe_go_rotinas,
frotas_tickets_a_prazo,
frotas_tickets_manutencoes,
reports,
frotas_logs,
diversas_logs,
mongo_connection,
};
module.exports = DB_MONGO_32_DESPESAS;
} catch (error) {
throw new Error(
`Erro ao conectar ao banco de dados (Mongo) ${name_database}: ${
error instanceof Error ? error.message : error
}`
);
}
};