-- Seed data for winelabel (admins, clientes, planos, subscricoes, marcas, categorias, vinhos)

INSERT INTO admins (username, password_hash)
VALUES ('admin', '$2y$12$RzXUT.VrxvFFTk596rXh6.IKeyApUsAHWmEBg3/5BhpvFIAnc2qH2')
ON DUPLICATE KEY UPDATE username = VALUES(username);

INSERT INTO clientes (username, tipo, password_hash, ativo)
VALUES
  ('cliente_produtor', 'produtor', '$2y$12$R4jjLSgo5PfYROM6OV.MxuX00e1rdVMJv.MdGRjDdkyISz4NAscai', 1),
  ('cliente_whitelabel', 'whitelabel', '$2y$12$eR.6iJnQ6VgdV7nQ0Of3ROq7YZjVtoGJM0fu22KrD9kDy22TU32Iy', 1)
ON DUPLICATE KEY UPDATE tipo = VALUES(tipo), ativo = VALUES(ativo);

-- Planos
INSERT INTO planos (codigo, nome, intervalo, preco, max_vinhos, ativo)
VALUES
  ('gratis-3', 'Gratuito (ate 3 vinhos)', 'anual', 0.00, 3, 1),
  ('pro-semestral', 'Pro Semestral', 'semestral', 99.00, 50, 1),
  ('pro-anual', 'Pro Anual', 'anual', 169.00, 120, 1)
ON DUPLICATE KEY UPDATE nome = VALUES(nome), preco = VALUES(preco), max_vinhos = VALUES(max_vinhos), ativo = VALUES(ativo);

-- Subscricao ativa para o produtor (gratis-3)
INSERT INTO subscricoes (cliente_id, plano_id, status, auto_renovar, inicio_em, fim_em)
SELECT c.id, p.id, 'ativa', 1, NOW(), DATE_ADD(NOW(), INTERVAL 12 MONTH)
FROM clientes c
JOIN planos p ON p.codigo = 'gratis-3'
WHERE c.username = 'cliente_produtor'
ON DUPLICATE KEY UPDATE status = 'ativa', auto_renovar = 1;

-- Marca e categoria do produtor
INSERT INTO marcas (cliente_id, nome)
SELECT c.id, 'Quinta de Vale Santo'
FROM clientes c
WHERE c.username = 'cliente_produtor'
ON DUPLICATE KEY UPDATE nome = VALUES(nome);

INSERT INTO categorias (cliente_id, nome)
SELECT c.id, 'Vinho Tinto'
FROM clientes c
WHERE c.username = 'cliente_produtor'
ON DUPLICATE KEY UPDATE nome = VALUES(nome);

-- Vinho de exemplo
INSERT INTO vinhos (cliente_id, marca_id, categoria_id, nome, colheita, regiao, castas, notas_vindima, notas_prova_color, aroma, palato, nivel_consumo)
SELECT c.id,
       (SELECT m.id FROM marcas m WHERE m.cliente_id = c.id AND m.nome = 'Quinta de Vale Santo' LIMIT 1),
       (SELECT cat.id FROM categorias cat WHERE cat.cliente_id = c.id AND cat.nome = 'Vinho Tinto' LIMIT 1),
       'Reserva 2022',
       2022,
       'Dao',
       'Touriga Nacional 35%, Tinta Roriz 25%, Alfrocheiro 20%, Jaen 20%',
       'Vindima manual com selecao rigorosa. Estagio de 27 meses em inox.',
       'Vermelho rubi',
       'Fruta vermelha e especiarias, notas de cereja e alcacuz.',
       'Taninos suaves, acidez equilibrada, final persistente.',
       'Pronto para consumo, com potencial de envelhecimento.'
FROM clientes c
WHERE c.username = 'cliente_produtor'
ON DUPLICATE KEY UPDATE nome = VALUES(nome);

-- Ficha tecnica
INSERT INTO vinho_ficha_tecnica (vinho_id, titulo_alcoolometrico, ph, acidez_total_g_l, acucar_residual_g_l, analises_analiticas)
SELECT v.id, 12.7, 3.76, 5.51, 0.7, 'Analises completas conforme ficha tecnica.'
FROM vinhos v
WHERE v.nome = 'Reserva 2022'
ON DUPLICATE KEY UPDATE titulo_alcoolometrico = VALUES(titulo_alcoolometrico);

-- Ficha nutricional (UE)
INSERT INTO vinho_ficha_nutricional (vinho_id, energia_kj, energia_kcal, gordura_g, gordura_saturada_g, hidratos_g, acucares_g, proteinas_g, sal_g, por_100ml)
SELECT v.id, 300.0, 72.0, 0.0, 0.0, 1.2, 0.6, 0.1, 0.02, 1
FROM vinhos v
WHERE v.nome = 'Reserva 2022'
ON DUPLICATE KEY UPDATE energia_kj = VALUES(energia_kj);
