71 lines
2.1 KiB
TypeScript
71 lines
2.1 KiB
TypeScript
|
|
import { pgPool } from "./config/postgreConfig.js"
|
|
import { PgClient } from "sim-shared/infrastructure/PgClient.js"
|
|
import { httpInstance } from "./config/httpClient.config.js"
|
|
import { CheckObjeniousRequests } from "./tasks/check_objenious_request.js"
|
|
import { ObjeniousOperationsRepository } from "sim-shared/infrastructure/ObjeniousOperationRepository.js"
|
|
import { OrderRepository } from "sim-shared/infrastructure/OrderRepository.js"
|
|
import { TaskVolcadoLineas } from "./tasks/volcado_lineas.js"
|
|
import { ObjeniousLinesRepository } from "./infranstructure/ObjeniousLinesRepository.js"
|
|
import { postgresClientIntranet } from "./config/intranetPostgresConfig.js"
|
|
|
|
async function startCron() {
|
|
const commonSettings = {
|
|
maxRandomDelay: 1000,
|
|
noOverlap: true
|
|
}
|
|
|
|
const httpClient = httpInstance
|
|
const pgClient = new PgClient({ pool: pgPool })
|
|
|
|
console.log("[i] Comprobando conexion con la BDD ")
|
|
await pgClient.checkDatabaseConnection()
|
|
|
|
const operationRepository = new ObjeniousOperationsRepository(
|
|
httpClient,
|
|
pgClient,
|
|
)
|
|
const orderRepository = new OrderRepository(pgClient)
|
|
const objeniousLineRepository = new ObjeniousLinesRepository(postgresClientIntranet)
|
|
|
|
const objTask = new CheckObjeniousRequests(
|
|
operationRepository,
|
|
orderRepository,
|
|
httpClient,
|
|
)
|
|
|
|
const objeniosRepo = new ObjeniousOperationsRepository(
|
|
httpClient,
|
|
pgClient
|
|
)
|
|
|
|
const volcadoLineasTask = new TaskVolcadoLineas(
|
|
objeniousLineRepository,
|
|
objeniosRepo
|
|
)
|
|
|
|
const PERIODO_PETICIONES = 10 * 60 * 1000
|
|
const interval = setInterval(async () => {
|
|
try {
|
|
await objTask.getPendingOperations()
|
|
} catch (e) {
|
|
console.error("[x] Error de actualizacion de las lineas ")
|
|
}
|
|
}, PERIODO_PETICIONES)
|
|
|
|
const PERIODO_VOLCADO = 60 * 60 * 1000
|
|
const volcadoInterval = setInterval(async () => {
|
|
try {
|
|
await volcadoLineasTask.loadLines()
|
|
} catch (e) {
|
|
console.error("[x] Volcado de lineas de Objenious Fallido", e)
|
|
}
|
|
}, PERIODO_VOLCADO)
|
|
|
|
await volcadoLineasTask.loadLines()
|
|
|
|
|
|
}
|
|
|
|
startCron().then(e => console.log).catch(e => console.error)
|