2025-05-17 11:36:26 -04:00

37 lines
1.4 KiB
SQL

CREATE TABLE IF NOT EXISTS parameters (
id SERIAL PRIMARY KEY,
key VARCHAR(100) NOT NULL UNIQUE,
value TEXT NOT NULL,
description TEXT,
active BOOLEAN DEFAULT TRUE,
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);
-- Tabla para registro de solicitudes SOAP
CREATE TABLE IF NOT EXISTS soap_requests (
id SERIAL PRIMARY KEY,
request_id VARCHAR(36) NOT NULL,
api_id VARCHAR(50) NOT NULL,
operation_name VARCHAR(100) NOT NULL,
request_body TEXT NOT NULL,
response_body TEXT,
status_code INT,
error TEXT,
request_time TIMESTAMP WITH TIME ZONE NOT NULL,
response_time TIMESTAMP WITH TIME ZONE,
processing_time BIGINT,
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);
-- Índices
CREATE INDEX IF NOT EXISTS idx_soap_requests_request_id ON soap_requests(request_id);
CREATE INDEX IF NOT EXISTS idx_soap_requests_api_id ON soap_requests(api_id);
CREATE INDEX IF NOT EXISTS idx_soap_requests_operation_name ON soap_requests(operation_name);
CREATE INDEX IF NOT EXISTS idx_soap_requests_request_time ON soap_requests(request_time);
-- Insertar parámetros iniciales
INSERT INTO parameters (key, value, description)
VALUES('soap.api1.endpoint', 'https://api1.example.com/soap', 'Endpoint for API 1'),
('soap.api2.endpoint', 'https://api2.example.com/soap', 'Endpoint for API 2')
ON CONFLICT (key) DO NOTHING;