-- =====================================================================
-- Migration 015: Pay-per-use APENAS BVDR2
--
-- Decisao: BVDR1 e MTCO1390 NAO entram no sistema de creditos.
--   - BVDR1 workshop_credentials: nao debita (revertido em workshop_credentials.php)
--   - seedkey so' debita quando model = BVDR2 (revertido em seedkey.php)
--
-- Esta migration limpa o seed inicial (que tinha entradas pra BVDR1/etc) e
-- substitui pelas operacoes BVDR2 reais.
-- =====================================================================

-- Remove o pricing antigo nao-BVDR2 do seed (idempotente)
DELETE FROM operation_pricing
WHERE (op_code = 'workshop_login')
   OR (op_code = 'seedkey'        AND tco_model = '*')
   OR (op_code = 'param_prog'     AND tco_model = '*')
   OR (op_code = 'calibration'    AND tco_model = '*')
   OR (op_code = 'data_download'  AND tco_model = '*')
   OR (op_code = 'other'          AND tco_model = '*');

-- Pricing BVDR2 (idempotente via UNIQUE op_code+tco_model)
--
-- Cada programacao (placa, chassi, fator K, hodometro, etc) e' UMA cobranca
-- pq cada uma exige uma seedkey nova via SecurityAccess 0x27/0x28.
--
-- 'seedkey' = fallback padrao quando o operation_type especifico nao tem
-- preco cadastrado. Mantenha sempre cadastrado.
INSERT INTO operation_pricing (op_code, tco_model, credit_cost, description, active) VALUES
  ('seedkey',       'BVDR2', 2, 'Programacao individual no BVDR2 (fallback)', 1),
  ('param_prog',    'BVDR2', 2, 'Gravacao de parametro (placa, chassi, fator K, etc)', 1),
  ('library',       'BVDR2', 5, 'Aplicacao de biblioteca OEM completa', 1),
  ('fw_update',     'BVDR2', 10, 'Atualizacao de firmware BVDR2', 1),
  ('calibration',   'BVDR2', 3, 'Calibracao legal BVDR2', 1),
  ('data_download', 'BVDR2', 2, 'Download de dados motorista/veiculo', 1),
  ('seal_change',   'BVDR2', 2, 'Troca de selo', 1)
ON DUPLICATE KEY UPDATE
  credit_cost = VALUES(credit_cost),
  description = VALUES(description),
  active = VALUES(active);
