diff --git a/src/app.js b/src/app.js index 600c03a..9006641 100644 --- a/src/app.js +++ b/src/app.js @@ -4,7 +4,7 @@ const router = require('./routes.js') function createApp() { const app = express(); - app.use(express.json()); + app.use(express.json({ type: '*/*' })); app.use('/api', router); return app; diff --git a/src/controller/ticketController.js b/src/controller/ticketController.js index 6b220be..867117f 100644 --- a/src/controller/ticketController.js +++ b/src/controller/ticketController.js @@ -2,11 +2,30 @@ const ticketService = require('../services/ticketService.js'); const closeTicket = async (req, res) => { try { - const closingTicket = await ticketService.fechaTicket(req); - res.status(200).json(closingTicket); + let rawData = ''; + + req.on('data', chunk => { + rawData += chunk; + }); + + req.on('end', async () => { + let bodyRequest; + try { + bodyRequest = JSON.parse(rawData); + } catch (err) { + console.error('Erro ao parsear JSON:', err); + bodyRequest = {}; + } + + console.log('Fechando ticket com os dados:', bodyRequest); + const closingTicket = await ticketService.fechaTicket(bodyRequest); + res.status(200).json(closingTicket); + }); + } catch (error) { res.status(500).json({ error: error.message }); } } + module.exports = { closeTicket }; \ No newline at end of file diff --git a/src/services/ticketService.js b/src/services/ticketService.js index 283a1a4..b93add0 100644 --- a/src/services/ticketService.js +++ b/src/services/ticketService.js @@ -1,66 +1,7 @@ - - -const fechaTicket = async (req) => { - // Lógica para fechar o ticket no GLPI - // Exemplo fictício: - -// Exemplo JSON que vem na requisição: -// { -// "item": { -// "id": 27779, -// "itemtype": "Ticket", -// "items_id": 34213, -// "content": "
Closing Task<\/p>", -// "user": { -// "id": 917, -// "name": "rafael.lopes" -// }, -// "user_editor": null -// }, -// "event": "new", -// "parent_item": { -// "id": 34213, -// "name": "TESTE", -// "content": "
teste<\/p>", -// "is_deleted": false, -// "urgency": 3, -// "impact": 3, -// "priority": 3, -// "actiontime": 0, -// "date_creation": "2025-11-03T16:26:12-03:00", -// "date_mod": "2025-11-05T10:44:03-03:00", -// "date": "2025-11-03T16:26:12-03:00", -// "type": 1, -// "external_id": "", -// "status": { -// "id": 5, -// "name": "Solucionado" -// }, -// "category": { -// "id": 5814, -// "name": "HubSoft" -// }, -// "location": null, -// "request_type": { -// "id": 1, -// "name": "Helpdesk" -// }, -// "entity": { -// "id": 0, -// "name": "Contratos Ativos", -// "completename": "Contratos Ativos" -// }, -// "team": [] -// } -// } - - // armazenar o body numa const - - const bodyRequest = req.body; - - return {bodyRequest}; - - +// HUBXGLPI/src/services/ticketService.js +const fechaTicket = async (bodyRequest) => { + console.log('Ticket recebido no service:', bodyRequest); + return { bodyRequest }; } -module.exports = { fechaTicket }; \ No newline at end of file +module.exports = { fechaTicket };