SET NAMES utf8mb4;

INSERT INTO roles (id, name, label) VALUES
    (1, 'admin', 'Администратор'),
    (2, 'moderator', 'Модератор'),
    (3, 'citizen', 'Гражданин')
ON DUPLICATE KEY UPDATE label = VALUES(label);

INSERT INTO permissions (name, label) VALUES
    ('manage_users', 'Управление на потребители'),
    ('manage_institutions', 'Управление на институции'),
    ('manage_reports', 'Управление на сигнали'),
    ('manage_cms', 'Управление на CMS'),
    ('view_admin', 'Достъп до админ панел')
ON DUPLICATE KEY UPDATE label = VALUES(label);

INSERT INTO users (id, role_id, name, email, password_hash, email_verified_at, citizen_score) VALUES
    (1, 3, 'Иван Иванов', 'ivan@example.com', '$2y$12$examplehashplaceholder', NOW(), 84),
    (2, 1, 'Администратор', 'admin@civigo.eu', '$2y$12$examplehashplaceholder', NOW(), 100)
ON DUPLICATE KEY UPDATE name = VALUES(name), citizen_score = VALUES(citizen_score);

INSERT INTO municipalities (id, name, district, ekatte, website) VALUES
    (1, 'Пловдив', 'Пловдив', '56784', 'https://plovdiv.bg'),
    (2, 'София', 'София-град', '68134', 'https://sofia.bg'),
    (3, 'Варна', 'Варна', '10135', 'https://varna.bg'),
    (4, 'Бургас', 'Бургас', '07079', 'https://burgas.bg'),
    (5, 'Русе', 'Русе', '63427', 'https://ruse-bg.eu')
ON DUPLICATE KEY UPDATE website = VALUES(website);

INSERT INTO institutions
    (id, municipality_id, name, type, email, phone, working_hours, portal, address, website, responsibilities, deadline_days, lat, lng)
VALUES
    (1, 1, 'Община Пловдив', 'Община', 'info@plovdiv.bg', '032 123 456', 'Понеделник - петък, 09:00 - 17:30', 'https://plovdiv.bg/signals', 'пл. Стефан Стамболов 1, Пловдив', 'https://plovdiv.bg', 'Пътища, тротоари, осветление, чистота, зелени площи, общински услуги.', 30, 42.1410000, 24.7490000),
    (2, 1, 'РИОСВ Пловдив', 'Контролен орган', 'riosv@plovdiv.bg', '032 643 245', 'Понеделник - петък, 09:00 - 17:00', 'https://riosv-plovdiv.org', 'бул. Марица 122, Пловдив', 'https://riosv-plovdiv.org', 'Замърсяване, отпадъци, защитени територии, екологични нарушения.', 30, 42.1510000, 24.7550000),
    (3, NULL, 'Комисия за защита на потребителите', 'Национална институция', 'info@kzp.bg', '0700 111 22', 'Понеделник - петък, 09:00 - 17:30', 'https://kzp.bg', 'гр. София', 'https://kzp.bg', 'Потребителски жалби, нелоялни практики, гаранции и онлайн покупки.', 30, 42.6970000, 23.3210000),
    (4, NULL, 'Агенция Пътна инфраструктура', 'Национална агенция', 'api@api.bg', '0700 130 20', 'Понеделник - петък, 09:00 - 17:30', 'https://api.bg', 'бул. Македония 3, София', 'https://api.bg', 'Републиканска пътна мрежа, магистрали, пътна инфраструктура.', 30, 42.6920000, 23.3190000),
    (5, NULL, 'МВР', 'Министерство', 'press@mvr.bg', '112', 'Денонощно за спешни случаи', 'https://mvr.bg', 'ул. 6-ти септември 29, София', 'https://mvr.bg', 'Обществен ред, спешни сигнали, полиция, нарушения на закона.', 30, 42.6970000, 23.3270000)
ON DUPLICATE KEY UPDATE email = VALUES(email), responsibilities = VALUES(responsibilities);

INSERT INTO reports
    (id, user_id, institution_id, tracking_number, category, title, description, address, municipality, lat, lng, status, submitted_at, deadline_at, public_token)
VALUES
    (1258, 1, 1, 'CG-2026-1258', 'Дупка на пътя', 'Дупка на улица', 'Голяма дупка на пътното платно, която създава опасност.', 'ул. Иван Вазов 15, Пловдив', 'Пловдив', 42.1420000, 24.7490000, 'in_progress', '2026-07-01 10:20:00', '2026-07-17 17:00:00', 'pub_1258'),
    (1257, 1, 1, 'CG-2026-1257', 'Улично осветление', 'Неработещо осветление', 'Лампите не работят от седмица.', 'ул. Цар Борис III, Пловдив', 'Пловдив', 42.1490000, 24.7310000, 'solved', '2026-06-26 11:00:00', '2026-07-11 17:00:00', 'pub_1257'),
    (1256, 1, 1, 'CG-2026-1256', 'Боклук', 'Боклук до контейнер', 'Контейнерите не са обслужени.', 'ж.к. Тракия, до контейнер', 'Пловдив', 42.1350000, 24.7900000, 'in_progress', '2026-06-25 12:00:00', '2026-07-14 17:00:00', 'pub_1256'),
    (1255, 1, 1, 'CG-2026-1255', 'Незаконно строителство', 'Незаконно строителство', 'Строеж без видима информационна табела.', 'ул. Родопи 10, Пловдив', 'Пловдив', 42.1270000, 24.7150000, 'unresolved', '2026-06-22 09:30:00', '2026-07-07 17:00:00', 'pub_1255')
ON DUPLICATE KEY UPDATE status = VALUES(status), deadline_at = VALUES(deadline_at);

INSERT INTO ai_prompts (name, purpose, system_prompt, model, temperature) VALUES
    ('report_assistant_bg', 'Генериране на официални сигнали', 'Ти си административен помощник за български граждани. Не измисляй факти. Питай уточняващо, когато липсва адрес, дата или риск.', 'gpt-4.1-mini', 0.20),
    ('zdoi_generator_bg', 'ЗДОИ заявления', 'Създавай ясни заявления по ЗДОИ с конкретен предмет, предпочитан канал и срокове.', 'gpt-4.1-mini', 0.10)
ON DUPLICATE KEY UPDATE system_prompt = VALUES(system_prompt), model = VALUES(model);

INSERT INTO settings (setting_key, setting_value) VALUES
    ('platform.modules', JSON_OBJECT('reports', true, 'assistant', true, 'zdoi', true, 'petitions', true, 'map', true, 'transparency', true)),
    ('seo.defaults', JSON_OBJECT('title', 'CiviGO.eu', 'description', 'Познавай правата си. Действай.'))
ON DUPLICATE KEY UPDATE setting_value = VALUES(setting_value);
