const axios = require('axios'); const apiConfig = require('../../config/apiConfig'); const fs = require('fs'); const TicketSnModel = require('../models/databaseModel'); const { Console } = require('console'); const fetchTicketsFromServiceNow = async () => { try { const ticketsResponse = await axios.get(apiConfig.snIncidentConfig.baseUrl, { auth: apiConfig.servicenowAuthentication.auth }); // gerar um JSON das respostas da API //Mantive o json enquanto testo a integração com o banco fs.writeFileSync('servicenow_tickets.json', JSON.stringify(ticketsResponse.data, null, 2)); // Salvar os tickets no banco de dados console.log('Iniciando salvamento dos tickets no banco de dados...'); for (const ticket of ticketsResponse.data.result) { await TicketSnModel.saveTickets(ticket, 'incidente'); } } catch (error) { console.log('SERVICE NOW Tickets error: ', error.message); } } const fetchRequestsFromServiceNow = async () => { try { const requestsResponse = await axios.get(apiConfig.snRequestConfig.baseUrl, { auth: apiConfig.servicenowAuthentication.auth }); // gerar um JSON das respostas da API //Mantive o json enquanto testo a integração com o banco fs.writeFileSync('servicenow_requests.json', JSON.stringify(requestsResponse.data, null, 2)); // Salvar os tickets no banco de dados console.log('Iniciando salvamento das requisições no banco de dados...'); for (const request of requestsResponse.data.result) { await TicketSnModel.saveTickets(request, 'requisicao'); } } catch (error) { console.log('SERVICE NOW Requests error: ', error.message); } } module.exports = { fetchTicketsFromServiceNow, fetchRequestsFromServiceNow }