56 lines
1.1 KiB
JavaScript
56 lines
1.1 KiB
JavaScript
|
|
// src/infra/db/repositories/glpi/tickets.repository.js
|
||
|
|
|
||
|
|
const db = require('../../connections/glpi.mysql.js')
|
||
|
|
const { logError } = require('../../../../shared/utils/logger.js')
|
||
|
|
|
||
|
|
async function insertTicket(ticketData) {
|
||
|
|
const query = `
|
||
|
|
INSERT INTO glpi_tickets (
|
||
|
|
entities_id,
|
||
|
|
name,
|
||
|
|
date,
|
||
|
|
date_mod,
|
||
|
|
status,
|
||
|
|
users_id_recipient,
|
||
|
|
content,
|
||
|
|
urgency,
|
||
|
|
impact,
|
||
|
|
priority,
|
||
|
|
type,
|
||
|
|
itilcategories_id,
|
||
|
|
date_creation,
|
||
|
|
slas_id_ttr
|
||
|
|
)
|
||
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||
|
|
`
|
||
|
|
|
||
|
|
const values = [
|
||
|
|
ticketData.entities_id,
|
||
|
|
ticketData.name,
|
||
|
|
ticketData.date_creation,
|
||
|
|
ticketData.date_mod,
|
||
|
|
ticketData.status,
|
||
|
|
ticketData.users_id_recipient,
|
||
|
|
ticketData.content,
|
||
|
|
ticketData.urgency,
|
||
|
|
ticketData.impact,
|
||
|
|
ticketData.priority,
|
||
|
|
2,
|
||
|
|
ticketData.itilcategories_id,
|
||
|
|
ticketData.date_creation,
|
||
|
|
37
|
||
|
|
]
|
||
|
|
|
||
|
|
try {
|
||
|
|
const [result] = await db.query(query, values)
|
||
|
|
return result.insertId
|
||
|
|
} catch (err) {
|
||
|
|
logError('Erro ao inserir ticket no GLPI', err)
|
||
|
|
throw err
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
module.exports = {
|
||
|
|
insertTicket
|
||
|
|
}
|