-- Migration V42: Ambiente de simulação TISS
-- Data: 2026-03-28
-- Objetivo: Permitir testes offline sem credenciais reais das operadoras

-- ============================================================
-- 1. ADICIONA 'simulacao' AO ENUM ambiente_tiss
-- ============================================================
ALTER TABLE `master_convenios`
  MODIFY COLUMN `ambiente_tiss`
    ENUM('homologacao','producao','simulacao') NOT NULL DEFAULT 'homologacao';

-- ============================================================
-- 2. GARANTE QUE O INCLUDE DO MOCK SEJA CARREGADO
--    (via include.php — ver instrução no código)
-- ============================================================

-- ============================================================
-- 3. INSERE CONVÊNIOS DE SIMULAÇÃO (um por operadora)
--    Só insere se ainda não existir nenhum convênio cadastrado
-- ============================================================
INSERT INTO `master_convenios`
  (`nome_fantasia`, `razao_social`, `registro_ans`, `driver_tiss`, `ambiente_tiss`,
   `url_ws_homolog`, `usuario_ws`, `senha_ws_enc`, `codigo_prestador`, `ativo`)
SELECT 'Bradesco Saúde [SIMULAÇÃO]', 'Bradesco Saúde S.A.', '005932',
       'bradesco', 'simulacao',
       'http://mock.local/tiss', 'mock_user', 'bW9jaw==', '000001', 1
WHERE NOT EXISTS (
  SELECT 1 FROM `master_convenios` WHERE `driver_tiss` = 'bradesco' AND `ambiente_tiss` = 'simulacao'
);

INSERT INTO `master_convenios`
  (`nome_fantasia`, `razao_social`, `registro_ans`, `driver_tiss`, `ambiente_tiss`,
   `url_ws_homolog`, `usuario_ws`, `senha_ws_enc`, `codigo_prestador`, `ativo`)
SELECT 'Unimed [SIMULAÇÃO]', 'Unimed do Brasil', '335690',
       'unimed', 'simulacao',
       'http://mock.local/tiss', 'mock_user', 'bW9jaw==', '000001', 1
WHERE NOT EXISTS (
  SELECT 1 FROM `master_convenios` WHERE `driver_tiss` = 'unimed' AND `ambiente_tiss` = 'simulacao'
);

INSERT INTO `master_convenios`
  (`nome_fantasia`, `razao_social`, `registro_ans`, `driver_tiss`, `ambiente_tiss`,
   `url_ws_homolog`, `usuario_ws`, `senha_ws_enc`, `codigo_prestador`, `ativo`)
SELECT 'Planserve [SIMULAÇÃO]', 'Planserve Saúde', '302872',
       'planserve', 'simulacao',
       'http://mock.local/tiss', 'mock_user', 'bW9jaw==', '000001', 1
WHERE NOT EXISTS (
  SELECT 1 FROM `master_convenios` WHERE `driver_tiss` = 'planserve' AND `ambiente_tiss` = 'simulacao'
);

INSERT INTO `master_convenios`
  (`nome_fantasia`, `razao_social`, `registro_ans`, `driver_tiss`, `ambiente_tiss`,
   `url_ws_homolog`, `usuario_ws`, `senha_ws_enc`, `codigo_prestador`, `ativo`)
SELECT 'CASSI [SIMULAÇÃO]', 'CASSI - Caixa de Assistência', '326305',
       'cassi', 'simulacao',
       'http://mock.local/tiss', 'mock_user', 'bW9jaw==', '000001', 1
WHERE NOT EXISTS (
  SELECT 1 FROM `master_convenios` WHERE `driver_tiss` = 'cassi' AND `ambiente_tiss` = 'simulacao'
);
