CREATE TABLE consultas (
  id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  paciente_id BIGINT UNSIGNED NOT NULL,
  odontologo_autor_id BIGINT UNSIGNED NOT NULL,
  fecha_atencion DATETIME NOT NULL,
  motivo_atencion TEXT NOT NULL,
  diagnostico TEXT NOT NULL,
  tratamiento TEXT NOT NULL,
  observaciones TEXT NULL,
  creado_en DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  CONSTRAINT fk_consultas_paciente FOREIGN KEY (paciente_id) REFERENCES pacientes(id),
  CONSTRAINT fk_consultas_odontologo FOREIGN KEY (odontologo_autor_id) REFERENCES odontologos(id),
  KEY idx_consultas_paciente_fecha (paciente_id, fecha_atencion),
  KEY idx_consultas_odontologo_fecha (odontologo_autor_id, fecha_atencion)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

CREATE TABLE revisiones_consulta (
  id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  consulta_id BIGINT UNSIGNED NOT NULL,
  odontologo_autor_id BIGINT UNSIGNED NOT NULL,
  motivo_correccion VARCHAR(500) NOT NULL,
  observaciones_correccion TEXT NOT NULL,
  creado_en DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  CONSTRAINT fk_revisiones_consulta FOREIGN KEY (consulta_id) REFERENCES consultas(id),
  CONSTRAINT fk_revisiones_odontologo FOREIGN KEY (odontologo_autor_id) REFERENCES odontologos(id),
  KEY idx_revisiones_consulta_fecha (consulta_id, creado_en)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
