-- ============================================================ -- seed.sql — Instrumento "Mapeo de Cuidadores" v3.0.0 -- 10 secciones · 40 preguntas (2 consentimiento + 38 encuesta) -- -- Fuente autoritativa: -- Textos de preguntas y opciones: Formulario_Mapeo_Corregido.xlsx (versión corregida) -- Estructura de secciones y flujo: wizard_formulario_mapeo_v3.html + -- confirmación directora: recorrido soloNino = 5.3 → 8.4 → 9.1 → 9.4 -- -- Requiere migración aplicada: 20260620000002_form_schema_v3.sql -- (agrega columns hint, instance_generator, instance_of a questions) -- -- ⚠ SOLO ENTORNOS DE DESARROLLO — nunca ejecutar en producción. -- En producción: aplicar migraciones manualmente vía CLI del VPS. -- El seed SOLO reemplaza catálogo (questions de las 3 encuestas vía -- DELETE+INSERT). NUNCA toca answers/consent_records/responses — son -- evidencia permanente (ADR-003); el trigger de inmutabilidad lo -- impide y no se debe forzar. Reset de datos de prueba: TRUNCATE aparte. -- -- Flujo declarativo (ADR-005 — lógica en datos, renderer es puro): -- 3.1 = 'No' → oculta 3.2–3.5 (discapacidad propia no aplica) -- 4.1 ∋ 'Ninguna...' → oculta S5–S9 (salta a S10) -- 4.1 = sole 'Hijo menor sin discapacidad' (soloNino): -- → oculta 5.1, 5.2, 5.4, S6, S7, 8.1–8.3, 9.2, 9.3 -- → muestra 5.3, 8.4, 9.1, 9.4 -- -- UUIDs: -- orgs: 10000000-0000-0000-0000-00000000000{1,2,3} -- cv-v1: 20000000-0000-0000-0000-000000000001 (preservado) -- cv-v2: 20000000-0000-0000-0000-000000000002 (instrumento v3) -- surveys: 30000000-0000-0000-0000-00000000000{1,2,3} -- preguntas: gen_random_uuid() — v3 es seed limpio -- ============================================================ -- ── Organizaciones ──────────────────────────────────────────── INSERT INTO public.organizations (id, name, sector, size_bucket) VALUES ('10000000-0000-0000-0000-000000000001', 'Empresa Demo S.A.', 'Servicios', '100-500'), ('10000000-0000-0000-0000-000000000002', 'InQuality', 'Consultoría/Tecnología', '1-50'), ('10000000-0000-0000-0000-000000000003', 'Fundación Solidaridad', 'Sociedad Civil/ONG', '1-50') ON CONFLICT (id) DO UPDATE SET name = EXCLUDED.name, sector = EXCLUDED.sector, size_bucket = EXCLUDED.size_bucket; -- ── Consent versions ────────────────────────────────────────── -- v1: texto original (preservar — lo referencian consent_records existentes) INSERT INTO public.consent_versions (id, version, body, scopes) VALUES ( '20000000-0000-0000-0000-000000000001', 'v1', 'Esta encuesta es completamente anónima: no registramos tu nombre ni ningún dato que permita ' 'identificarte. Tus respuestas se usan para (1) ayudar a tu empresa con apoyos sobre cuidado y ' 'discapacidad, y (2) un estudio nacional anonimizado. Al ser anónima, no es posible retirar ' 'ni modificar tu respuesta una vez enviada.', '["operativo","macro_n1"]'::jsonb ) ON CONFLICT (id) DO NOTHING; -- v2: texto revisado para instrumento v3.0.0 (Formulario_Mapeo_Corregido.xlsx — S1 intro) INSERT INTO public.consent_versions (id, version, body, scopes) VALUES ( '20000000-0000-0000-0000-000000000002', 'v2', 'Esta es una encuesta sobre el cuidado de familiares con discapacidad o adultos mayores en ' 'situación de dependencia, y cómo este cuidado impacta en el trabajo. ' 'Tu participación es voluntaria y anónima, y no afecta de ninguna manera tu situación laboral. ' 'No hay respuestas correctas ni incorrectas: solo nos interesa tu experiencia. ' 'Te va a llevar entre 3 y 10 minutos, según tu situación. ' 'Tu privacidad es muy importante. No te pedimos datos que te identifiquen (nombre, documento, ' 'correo). Los resultados se reportan siempre de forma agregada, nunca como respuestas ' 'individuales, y solo cuando hay suficientes respuestas para que nadie pueda ser identificado. ' 'Justamente por ser anónima, una vez enviada no es posible ubicar ni eliminar tu respuesta.', '["operativo","macro_n1"]'::jsonb ) ON CONFLICT (id) DO NOTHING; -- ── Encuestas ───────────────────────────────────────────────── INSERT INTO public.surveys ( id, org_id, title, status, is_anonymous, data_sensitivity, security_class, controller_role, consent_version_id, brand_config, k_threshold ) VALUES ( '30000000-0000-0000-0000-000000000001', '10000000-0000-0000-0000-000000000001', 'Mapeo de Cuidadores — 2026', 'draft', true, 'sensible', 'confidencial', 'A', '20000000-0000-0000-0000-000000000002', '{"org_name":"Empresa Demo","branch_name":"Oficina Central","branch_city":"Asunción"}', 5 ), ( '30000000-0000-0000-0000-000000000002', '10000000-0000-0000-0000-000000000002', 'Mapeo de Cuidadores — 2026', 'live', true, 'sensible', 'confidencial', 'A', '20000000-0000-0000-0000-000000000002', '{"org_name":"InQuality","branch_name":"Equipo InQuality","branch_city":"Asunción"}', 5 ), ( '30000000-0000-0000-0000-000000000003', '10000000-0000-0000-0000-000000000003', 'Mapeo de Cuidadores — 2026', 'live', true, 'sensible', 'confidencial', 'A', '20000000-0000-0000-0000-000000000002', '{"org_name":"Fundación Solidaridad","branch_name":"Equipo Fundación","branch_city":"Asunción"}', 5 ) ON CONFLICT (id) DO UPDATE SET consent_version_id = EXCLUDED.consent_version_id, brand_config = EXCLUDED.brand_config, status = EXCLUDED.status; -- ══════════════════════════════════════════════════════════════ -- Instrumento v3.0.0 — 50 filas por encuesta (10 secciones + 40 preguntas) -- DO block: itera las 3 encuestas; opciones largas se declaran como variables -- ══════════════════════════════════════════════════════════════ DO $seed$ DECLARE survey_ids uuid[]; sid uuid; -- Geo opts_depts jsonb; opts_cities jsonb; -- Opciones compartidas entre secciones opts_tipo_disc jsonb; -- 3.2 y 4.2 opts_disp_propia jsonb; -- 3.3: "No utilizo" opts_disp_familiar jsonb; -- 4.3: "No utiliza" opts_vinculos jsonb; -- 4.1 -- Reglas de flujo condicional (ver vocabulario en migración 20260620000002) r_show_si_s3_1 jsonb; -- mostrar cuando 3.1 = 'Sí' r_hide_ning jsonb; -- ocultar cuando 4.1 contiene "Ninguna..." r_hide_ning_sn jsonb; -- ocultar cuando Ninguna O soloNino (5.1,5.2,5.4,S6,S7,8.1-3,9.2,9.3) r_hide_instance jsonb; -- ocultar 4.2/4.3 cuando soloNino O Ninguna BEGIN survey_ids := ARRAY[ '30000000-0000-0000-0000-000000000001', '30000000-0000-0000-0000-000000000002', '30000000-0000-0000-0000-000000000003' ]::uuid[]; -- ── Departamentos (18 — todos los de Paraguay + Capital) ─── opts_depts := '[ {"value":"Asunción (Capital)","label":"Asunción (Capital)"}, {"value":"Alto Paraguay","label":"Alto Paraguay"}, {"value":"Alto Paraná","label":"Alto Paraná"}, {"value":"Amambay","label":"Amambay"}, {"value":"Boquerón","label":"Boquerón"}, {"value":"Caaguazú","label":"Caaguazú"}, {"value":"Caazapá","label":"Caazapá"}, {"value":"Canindeyú","label":"Canindeyú"}, {"value":"Central","label":"Central"}, {"value":"Concepción","label":"Concepción"}, {"value":"Cordillera","label":"Cordillera"}, {"value":"Guairá","label":"Guairá"}, {"value":"Itapúa","label":"Itapúa"}, {"value":"Misiones","label":"Misiones"}, {"value":"Ñeembucú","label":"Ñeembucú"}, {"value":"Paraguarí","label":"Paraguarí"}, {"value":"Presidente Hayes","label":"Presidente Hayes"}, {"value":"San Pedro","label":"San Pedro"} ]'::jsonb; -- ── Ciudades (219 — fuente: lib/paraguay-geo.ts; filtrado por depto en el renderer) ── opts_cities := '[ {"value":"Asunción","label":"Asunción"}, {"value":"Fuerte Olimpo","label":"Fuerte Olimpo"},{"value":"Bahía Negra","label":"Bahía Negra"},{"value":"Carmelo Peralta","label":"Carmelo Peralta"},{"value":"La Victoria","label":"La Victoria"}, {"value":"Ciudad del Este","label":"Ciudad del Este"},{"value":"Hernandarias","label":"Hernandarias"},{"value":"Minga Guazú","label":"Minga Guazú"},{"value":"Presidente Franco","label":"Presidente Franco"},{"value":"Minga Porã","label":"Minga Porã"},{"value":"Naranjal","label":"Naranjal"},{"value":"Ñacunday","label":"Ñacunday"},{"value":"San Alberto","label":"San Alberto"},{"value":"Santa Rita","label":"Santa Rita"},{"value":"Tavapy","label":"Tavapy"},{"value":"Yguazú","label":"Yguazú"},{"value":"Juan E. O''Leary","label":"Juan E. O''Leary"},{"value":"San Cristóbal","label":"San Cristóbal"},{"value":"Santa Fe del Paraná","label":"Santa Fe del Paraná"},{"value":"Dr. Juan León Mallorquín","label":"Dr. Juan León Mallorquín"},{"value":"Itakyry","label":"Itakyry"},{"value":"Domingo Martínez de Irala","label":"Domingo Martínez de Irala"}, {"value":"Pedro Juan Caballero","label":"Pedro Juan Caballero"},{"value":"Bella Vista Norte","label":"Bella Vista Norte"},{"value":"Capitán Bado","label":"Capitán Bado"},{"value":"Zanja Pytã","label":"Zanja Pytã"}, {"value":"Filadelfia","label":"Filadelfia"},{"value":"Loma Plata","label":"Loma Plata"},{"value":"Mariscal Estigarribia","label":"Mariscal Estigarribia"},{"value":"Neuland","label":"Neuland"}, {"value":"Coronel Oviedo","label":"Coronel Oviedo"},{"value":"Caaguazú","label":"Caaguazú"},{"value":"Carayaó","label":"Carayaó"},{"value":"Dr. Juan Manuel Frutos","label":"Dr. Juan Manuel Frutos"},{"value":"Mbutuy","label":"Mbutuy"},{"value":"Nueva Londres","label":"Nueva Londres"},{"value":"Raúl Arsenio Oviedo","label":"Raúl Arsenio Oviedo"},{"value":"Repatriación","label":"Repatriación"},{"value":"San Joaquín","label":"San Joaquín"},{"value":"San José de los Arroyos","label":"San José de los Arroyos"},{"value":"Simón Bolívar","label":"Simón Bolívar"},{"value":"Vaquería","label":"Vaquería"},{"value":"Yhú","label":"Yhú"},{"value":"José Domingo Ocampos","label":"José Domingo Ocampos"},{"value":"3 de Febrero","label":"3 de Febrero"},{"value":"Mcal. Francisco Solano López","label":"Mcal. Francisco Solano López"},{"value":"Los Cedrales","label":"Los Cedrales"}, {"value":"Caazapá","label":"Caazapá"},{"value":"Abai","label":"Abai"},{"value":"Buena Vista","label":"Buena Vista"},{"value":"General Higinio Morínigo","label":"General Higinio Morínigo"},{"value":"Huber Duré","label":"Huber Duré"},{"value":"Maciel","label":"Maciel"},{"value":"San Juan Nepomuceno","label":"San Juan Nepomuceno"},{"value":"Tavaí","label":"Tavaí"},{"value":"Yegros","label":"Yegros"},{"value":"Yuty","label":"Yuty"}, {"value":"Salto del Guairá","label":"Salto del Guairá"},{"value":"Corpus Christi","label":"Corpus Christi"},{"value":"Curuguaty","label":"Curuguaty"},{"value":"General Francisco Caballero Álvarez","label":"General Francisco Caballero Álvarez"},{"value":"Itanará","label":"Itanará"},{"value":"Katueté","label":"Katueté"},{"value":"La Paloma","label":"La Paloma"},{"value":"Nueva Esperanza","label":"Nueva Esperanza"},{"value":"Yasy Kañy","label":"Yasy Kañy"},{"value":"Ypejhú","label":"Ypejhú"}, {"value":"Areguá","label":"Areguá"},{"value":"Capiatá","label":"Capiatá"},{"value":"Fernando de la Mora","label":"Fernando de la Mora"},{"value":"Guarambaré","label":"Guarambaré"},{"value":"Itá","label":"Itá"},{"value":"Itauguá","label":"Itauguá"},{"value":"Juan Augusto Saldívar","label":"Juan Augusto Saldívar"},{"value":"Lambaré","label":"Lambaré"},{"value":"Limpio","label":"Limpio"},{"value":"Luque","label":"Luque"},{"value":"Mariano Roque Alonso","label":"Mariano Roque Alonso"},{"value":"Nueva Italia","label":"Nueva Italia"},{"value":"Ñemby","label":"Ñemby"},{"value":"San Antonio","label":"San Antonio"},{"value":"San Lorenzo","label":"San Lorenzo"},{"value":"Villa Elisa","label":"Villa Elisa"},{"value":"Villeta","label":"Villeta"},{"value":"Ypané","label":"Ypané"},{"value":"Ypacaraí","label":"Ypacaraí"}, {"value":"Concepción","label":"Concepción"},{"value":"Belén","label":"Belén"},{"value":"Horqueta","label":"Horqueta"},{"value":"Loreto","label":"Loreto"},{"value":"San Lázaro","label":"San Lázaro"},{"value":"San Carlos del Apa","label":"San Carlos del Apa"},{"value":"Yby Yaú","label":"Yby Yaú"},{"value":"Azote''y","label":"Azote''y"},{"value":"Sgto. José Félix López","label":"Sgto. José Félix López"}, {"value":"Caacupé","label":"Caacupé"},{"value":"Altos","label":"Altos"},{"value":"Arroyos y Esteros","label":"Arroyos y Esteros"},{"value":"Caraguatay","label":"Caraguatay"},{"value":"Emboscada","label":"Emboscada"},{"value":"Eusebio Ayala","label":"Eusebio Ayala"},{"value":"Isla Pucú","label":"Isla Pucú"},{"value":"Itacurubí de la Cordillera","label":"Itacurubí de la Cordillera"},{"value":"Juan de Mena","label":"Juan de Mena"},{"value":"Loma Grande","label":"Loma Grande"},{"value":"Mbocayaty del Yhaguy","label":"Mbocayaty del Yhaguy"},{"value":"Nueva Colombia","label":"Nueva Colombia"},{"value":"Pirayú","label":"Pirayú"},{"value":"Primero de Marzo","label":"Primero de Marzo"},{"value":"Tobatí","label":"Tobatí"},{"value":"Valenzuela","label":"Valenzuela"}, {"value":"Villarrica","label":"Villarrica"},{"value":"Borja","label":"Borja"},{"value":"Capitán Mauricio José Troche","label":"Capitán Mauricio José Troche"},{"value":"Coronel Martínez","label":"Coronel Martínez"},{"value":"Félix Pérez Cardozo","label":"Félix Pérez Cardozo"},{"value":"General Eugenio A. Garay","label":"General Eugenio A. Garay"},{"value":"Independencia","label":"Independencia"},{"value":"Itapé","label":"Itapé"},{"value":"Iturbe","label":"Iturbe"},{"value":"José Fassardi","label":"José Fassardi"},{"value":"Mbocayaty","label":"Mbocayaty"},{"value":"Natalicio Talavera","label":"Natalicio Talavera"},{"value":"Ñumí","label":"Ñumí"},{"value":"San Salvador","label":"San Salvador"},{"value":"Yataity","label":"Yataity"}, {"value":"Encarnación","label":"Encarnación"},{"value":"Alto Verá","label":"Alto Verá"},{"value":"Bella Vista","label":"Bella Vista"},{"value":"Cambyretá","label":"Cambyretá"},{"value":"Capitán Meza","label":"Capitán Meza"},{"value":"Capitán Miranda","label":"Capitán Miranda"},{"value":"Carlos A. López","label":"Carlos A. López"},{"value":"Carmen del Paraná","label":"Carmen del Paraná"},{"value":"Coronel Bogado","label":"Coronel Bogado"},{"value":"Cosme","label":"Cosme"},{"value":"Edelira","label":"Edelira"},{"value":"Fram","label":"Fram"},{"value":"General Artigas","label":"General Artigas"},{"value":"Hohenau","label":"Hohenau"},{"value":"Itapúa Poty","label":"Itapúa Poty"},{"value":"Jesús","label":"Jesús"},{"value":"La Paz","label":"La Paz"},{"value":"Leandro Oviedo","label":"Leandro Oviedo"},{"value":"Mayor Otaño","label":"Mayor Otaño"},{"value":"Natalio","label":"Natalio"},{"value":"Nueva Alborada","label":"Nueva Alborada"},{"value":"Obligado","label":"Obligado"},{"value":"Pirapó","label":"Pirapó"},{"value":"San Cosme y Damián","label":"San Cosme y Damián"},{"value":"San Juan del Paraná","label":"San Juan del Paraná"},{"value":"San Pedro del Paraná","label":"San Pedro del Paraná"},{"value":"San Rafael del Paraná","label":"San Rafael del Paraná"},{"value":"Trinidad","label":"Trinidad"},{"value":"Tomás Romero Pereira","label":"Tomás Romero Pereira"}, {"value":"San Juan Bautista","label":"San Juan Bautista"},{"value":"Ayolas","label":"Ayolas"},{"value":"San Ignacio","label":"San Ignacio"},{"value":"San Miguel","label":"San Miguel"},{"value":"San Patricio","label":"San Patricio"},{"value":"Santa María","label":"Santa María"},{"value":"Santa Rosa","label":"Santa Rosa"},{"value":"Santiago","label":"Santiago"},{"value":"Villa Florida","label":"Villa Florida"},{"value":"Yabebyry","label":"Yabebyry"}, {"value":"Pilar","label":"Pilar"},{"value":"Alberdi","label":"Alberdi"},{"value":"Cerrito","label":"Cerrito"},{"value":"Desmochados","label":"Desmochados"},{"value":"General José Eduvigis Díaz","label":"General José Eduvigis Díaz"},{"value":"Guazú Cuá","label":"Guazú Cuá"},{"value":"Humaitá","label":"Humaitá"},{"value":"Isla Umbú","label":"Isla Umbú"},{"value":"Laureles","label":"Laureles"},{"value":"Mayor José de J. Martínez","label":"Mayor José de J. Martínez"},{"value":"Paso de Patria","label":"Paso de Patria"},{"value":"San Juan Bautista del Ñeembucú","label":"San Juan Bautista del Ñeembucú"},{"value":"Tacuaras","label":"Tacuaras"},{"value":"Villa Franca","label":"Villa Franca"},{"value":"Villa Oliva","label":"Villa Oliva"},{"value":"Villalba","label":"Villalba"}, {"value":"Paraguarí","label":"Paraguarí"},{"value":"Acahay","label":"Acahay"},{"value":"Carapeguá","label":"Carapeguá"},{"value":"Escobar","label":"Escobar"},{"value":"General Bernardino Caballero","label":"General Bernardino Caballero"},{"value":"La Colmena","label":"La Colmena"},{"value":"Mbuyapey","label":"Mbuyapey"},{"value":"Quiindy","label":"Quiindy"},{"value":"Quyquyhó","label":"Quyquyhó"},{"value":"San Roque González de Santa Cruz","label":"San Roque González de Santa Cruz"},{"value":"Sapucaí","label":"Sapucaí"},{"value":"Tebicuarymí","label":"Tebicuarymí"},{"value":"Ybycuí","label":"Ybycuí"},{"value":"Ybytymí","label":"Ybytymí"},{"value":"Yaguarón","label":"Yaguarón"}, {"value":"Villa Hayes","label":"Villa Hayes"},{"value":"Benjamín Aceval","label":"Benjamín Aceval"},{"value":"José Falcón","label":"José Falcón"},{"value":"Nanawa","label":"Nanawa"},{"value":"Nueva Asunción","label":"Nueva Asunción"},{"value":"Pozo Colorado","label":"Pozo Colorado"},{"value":"Puerto Pinasco","label":"Puerto Pinasco"},{"value":"Teniente Primero Manuel Irala Fernández","label":"Teniente Primero Manuel Irala Fernández"},{"value":"Villa del Río","label":"Villa del Río"}, {"value":"San Pedro del Ycuamandiyú","label":"San Pedro del Ycuamandiyú"},{"value":"Antequera","label":"Antequera"},{"value":"Choré","label":"Choré"},{"value":"General Elizardo Aquino","label":"General Elizardo Aquino"},{"value":"Guayaibí","label":"Guayaibí"},{"value":"Itacurubí del Rosario","label":"Itacurubí del Rosario"},{"value":"Lima","label":"Lima"},{"value":"Nueva Germania","label":"Nueva Germania"},{"value":"Río Verde","label":"Río Verde"},{"value":"San Estanislao (Santaní)","label":"San Estanislao (Santaní)"},{"value":"Tacuatí","label":"Tacuatí"},{"value":"Unión","label":"Unión"},{"value":"Villa del Rosario","label":"Villa del Rosario"},{"value":"Yataity del Norte","label":"Yataity del Norte"} ]'::jsonb; -- ── Tipo de discapacidad (compartido 3.2 y 4.2) ───────────── opts_tipo_disc := '[ {"value":"Física / motora","label":"Física / motora"}, {"value":"Visual","label":"Visual"}, {"value":"Auditiva","label":"Auditiva"}, {"value":"Intelectual","label":"Intelectual"}, {"value":"Mental / psicosocial","label":"Mental / psicosocial"}, {"value":"Del habla y la comunicación","label":"Del habla y la comunicación"}, {"value":"Múltiple","label":"Múltiple"}, {"value":"Vejez, osteoporosis, artrosis, otras limitaciones de la edad","label":"Vejez, osteoporosis, artrosis, otras limitaciones de la edad"}, {"value":"Amputación","label":"Amputación"}, {"value":"Otra / Especificar","label":"Otra / Especificar"} ]'::jsonb; -- ── Dispositivos de apoyo ──────────────────────────────────── opts_disp_propia := '[ {"value":"Silla de ruedas","label":"Silla de ruedas"}, {"value":"Bastón de apoyo","label":"Bastón de apoyo"}, {"value":"Bastón blanco","label":"Bastón blanco"}, {"value":"Andador","label":"Andador"}, {"value":"Muletas","label":"Muletas"}, {"value":"Prótesis","label":"Prótesis"}, {"value":"Tecnología asistiva","label":"Tecnología asistiva"}, {"value":"Audífonos","label":"Audífonos"}, {"value":"No utilizo","label":"No utilizo"} ]'::jsonb; opts_disp_familiar := '[ {"value":"Silla de ruedas","label":"Silla de ruedas"}, {"value":"Bastón de apoyo","label":"Bastón de apoyo"}, {"value":"Bastón blanco","label":"Bastón blanco"}, {"value":"Andador","label":"Andador"}, {"value":"Muletas","label":"Muletas"}, {"value":"Prótesis","label":"Prótesis"}, {"value":"Tecnología asistiva","label":"Tecnología asistiva"}, {"value":"Audífonos","label":"Audífonos"}, {"value":"No utiliza","label":"No utiliza"} ]'::jsonb; -- ── Vínculos familiares (4.1) ──────────────────────────────── opts_vinculos := '[ {"value":"Hijo menor sin discapacidad","label":"Hijo menor sin discapacidad"}, {"value":"Hijo menor con discapacidad","label":"Hijo menor con discapacidad"}, {"value":"Hijo adulto con discapacidad","label":"Hijo adulto con discapacidad"}, {"value":"Familiar menor con discapacidad","label":"Familiar menor con discapacidad"}, {"value":"Familiar mayor con discapacidad","label":"Familiar mayor con discapacidad"}, {"value":"Padre/madre con movilidad reducida o 100% dependiente","label":"Padre/madre con movilidad reducida o 100% dependiente"}, {"value":"Otro / Especificar","label":"Otro / Especificar"}, {"value":"Ninguna de las anteriores / No tengo vinculación de cuidado","label":"Ninguna de las anteriores / No tengo vinculación de cuidado"} ]'::jsonb; -- ── Reglas de flujo ────────────────────────────────────────── -- Mostrar 3.2–3.5 solo cuando 3.1 = 'Sí' r_show_si_s3_1 := '[{"if_question":"3.1","op":"eq","value":"Sí","action":"show"}]'::jsonb; -- Ocultar cuando 4.1 contiene "Ninguna de las anteriores..." r_hide_ning := '[{"if_question":"4.1","op":"contains","value":"Ninguna de las anteriores / No tengo vinculación de cuidado","action":"hide"}]'::jsonb; -- Ocultar cuando Ninguna O soloNino (4.1 sole = 'Hijo menor sin discapacidad') r_hide_ning_sn := '[ {"if_question":"4.1","op":"contains","value":"Ninguna de las anteriores / No tengo vinculación de cuidado","action":"hide"}, {"if_question":"4.1","op":"eq_sole","value":"Hijo menor sin discapacidad","action":"hide"} ]'::jsonb; -- Ocultar 4.2/4.3 cuando soloNino O Ninguna r_hide_instance := '[ {"if_question":"4.1","op":"contains","value":"Ninguna de las anteriores / No tengo vinculación de cuidado","action":"hide"}, {"if_question":"4.1","op":"eq_sole","value":"Hijo menor sin discapacidad","action":"hide"} ]'::jsonb; -- ════════════════════════════════════════════════════════════ FOREACH sid IN ARRAY survey_ids LOOP -- ════════════════════════════════════════════════════════════ -- Catálogo: DELETE + INSERT para idempotencia (patrón original del seed v2.1). -- Nunca toca answers/consent_records/responses — son evidencia permanente (ADR-003). -- El reset de datos de prueba se hace por separado vía TRUNCATE, fuera de este seed. DELETE FROM public.questions WHERE survey_id = sid; -- ════════════════════════════════════════════════════════ -- SECCIÓN 1 — Consentimiento -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required) VALUES(gen_random_uuid(),sid,'S1','section','Consentimiento',10,false,false); -- 1.1: casilla requerida para participar INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required) VALUES(gen_random_uuid(),sid,'1.1','yes_no', 'Declaro que fui informado/a sobre el propósito de esta encuesta y el tratamiento de mis ' 'respuestas, y acepto participar de forma voluntaria en el diagnóstico interno de [Empresa].', 11,false,true); -- 1.2: casilla opcional (estudio país) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required) VALUES(gen_random_uuid(),sid,'1.2','yes_no', 'Autorizo que mis respuestas anonimizadas se utilicen para el estudio país sobre la ' 'economía del cuidado en Paraguay.', 12,false,false); -- ════════════════════════════════════════════════════════ -- SECCIÓN 2 — Datos generales -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint) VALUES(gen_random_uuid(),sid,'S2','section','Datos generales',20,false,false, 'Esta sección releva información demográfica básica, general y anónima.'); -- 2.1: Departamento — cuasi-identificador (18 opciones, lib/paraguay-geo.ts) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'2.1','single_choice','Departamento',21,false,false,opts_depts); -- 2.2: Ciudad — cuasi-identificador (219 ciudades, filtro por depto en renderer) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'2.2','single_choice','Ciudad',22,false,false,opts_cities); -- 2.3: Barrio — texto libre, opcional (barrios completos se agregan en Etapa 4F) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint) VALUES(gen_random_uuid(),sid,'2.3','text_short','¿En qué barrio vivís?',23,false,false,'Opcional.'); -- 2.4: Rango de edad — cuasi-identificador INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'2.4','single_choice','¿Cuál es tu rango de edad?',24,false,false, '[{"value":"Menos de 25 años","label":"Menos de 25 años"}, {"value":"25 a 34 años","label":"25 a 34 años"}, {"value":"35 a 44 años","label":"35 a 44 años"}, {"value":"45 a 54 años","label":"45 a 54 años"}, {"value":"55 años o más","label":"55 años o más"}]'::jsonb); -- 2.5: Género — cuasi-identificador INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'2.5','single_choice','¿Con qué género te identificás?',25,false,false, '[{"value":"Femenino","label":"Femenino"}, {"value":"Masculino","label":"Masculino"}, {"value":"No binario / Otro","label":"No binario / Otro"}]'::jsonb); -- 2.6: Nivel organizacional — cuasi-identificador INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'2.6','single_choice','¿En qué nivel organizacional estás?',26,false,false, '[{"value":"Directivo","label":"Directivo"}, {"value":"Gerencial","label":"Gerencial"}, {"value":"Jefatura","label":"Jefatura"}, {"value":"Operativo","label":"Operativo"}, {"value":"Auxiliar","label":"Auxiliar"}, {"value":"Otro / Especificar","label":"Otro / Especificar"}]'::jsonb); -- 2.7: Modalidad de trabajo — cuasi-identificador INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'2.7','single_choice','¿Cuál es tu modalidad de trabajo actual?',27,false,false, '[{"value":"Presencial","label":"Presencial"}, {"value":"Remoto (home office)","label":"Remoto (home office)"}, {"value":"Híbrido","label":"Híbrido"}]'::jsonb); -- ════════════════════════════════════════════════════════ -- SECCIÓN 3 — Prevalencia de discapacidad (sensible) -- Flujo: 3.1='No' → oculta 3.2–3.5 (regla: show cuando 3.1='Sí') -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint) VALUES(gen_random_uuid(),sid,'S3','section','Prevalencia de discapacidad',30,false,false, 'En esta sección queremos conocer si vos tenés alguna condición discapacitante y cómo ' 'influye en tu independencia y desempeño laboral.'); -- 3.1: trigger de discapacidad propia (is_sensitive — salud) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options) VALUES(gen_random_uuid(),sid,'3.1','single_choice', '¿Vos mismo/a tenés alguna discapacidad o condición de salud que pudiera afectar tu ' 'independencia o desempeño laboral?', 31,true,false, '[{"value":"No","label":"No"},{"value":"Sí","label":"Sí"}]'::jsonb); -- 3.2: tipo de discapacidad — solo si 3.1='Sí' INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'3.2','multiple_choice', '¿Qué tipo de discapacidad o condición tenés?', 32,true,false,'Podés marcar más de una opción',opts_tipo_disc,r_show_si_s3_1); -- 3.3: dispositivos de apoyo propios ("No utilizo") — solo si 3.1='Sí' INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'3.3','multiple_choice', '¿Usás algún elemento de apoyo para la movilidad o autonomía?', 33,true,false,'Podés marcar más de una opción',opts_disp_propia,r_show_si_s3_1); -- 3.4: certificado de discapacidad — solo si 3.1='Sí' INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'3.4','single_choice', '¿Contás con certificado oficial de discapacidad?', 34,true,false, '[{"value":"Sí","label":"Sí"}, {"value":"No, pero estoy en trámite","label":"No, pero estoy en trámite"}, {"value":"No","label":"No"}]'::jsonb, r_show_si_s3_1); -- 3.5: impacto en el trabajo — solo si 3.1='Sí' INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'3.5','multiple_choice', '¿Cómo afecta tu discapacidad y/o condición limitante en tu trabajo?', 35,true,false,'Podés marcar más de una opción', '[{"value":"No afecta mi rendimiento en absoluto","label":"No afecta mi rendimiento en absoluto"}, {"value":"Mi desempeño está más afectado por la falta de adecuaciones que por mi discapacidad (herramientas, accesibilidad)","label":"Mi desempeño está más afectado por la falta de adecuaciones que por mi discapacidad (herramientas, accesibilidad)"}, {"value":"Llegar al trabajo me lleva mucho tiempo por la falta de transporte","label":"Llegar al trabajo me lleva mucho tiempo por la falta de transporte"}, {"value":"Me cuesta participar de todas las actividades por temas de accesibilidad (física, lenguaje)","label":"Me cuesta participar de todas las actividades por temas de accesibilidad (física, lenguaje)"}]'::jsonb, r_show_si_s3_1); -- ════════════════════════════════════════════════════════ -- SECCIÓN 4 — Vinculación familiar (sensible) -- Flujo: -- 4.1 ∋ 'Ninguna...' → salta a S10 (oculta S5–S9) -- 4.1 = sole 'Hijo menor...' → soloNino: oculta 4.2, 4.3 -- 4.1 ∋ opciones 2–7 → muestra 4.2, 4.3 (instancias por vínculo) -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint) VALUES(gen_random_uuid(),sid,'S4','section','Vinculación familiar',40,false,false, 'Queremos conocer si estás vinculado/a con algún niño/a (con o sin discapacidad), ' 'adulto con discapacidad y/o adulto mayor dependiente.'); -- 4.1: generator de instancias — cada vínculo (2–7) genera un par 4.2/4.3 INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,instance_generator) VALUES(gen_random_uuid(),sid,'4.1','multiple_choice', '¿Cuál de las siguientes vinculaciones familiares tenés?', 41,true,false,'Marca todas las que correspondan',opts_vinculos,true); -- 4.2: tipo de disc. del familiar — instancia por cada vínculo 2–7 INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules,instance_of) VALUES(gen_random_uuid(),sid,'4.2','multiple_choice', '¿Qué tipo de discapacidades o limitaciones tienen tus familiares vinculados?', 42,true,false,'Podés marcar más de una opción',opts_tipo_disc,r_hide_instance,'4.1'); -- 4.3: dispositivos del familiar — instancia por cada vínculo 2–7 INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules,instance_of) VALUES(gen_random_uuid(),sid,'4.3','multiple_choice', '¿Qué tipo de dispositivos de apoyo utilizan tus familiares vinculados?', 43,true,false,'Podés marcar más de una opción',opts_disp_familiar,r_hide_instance,'4.1'); -- ════════════════════════════════════════════════════════ -- SECCIÓN 5 — Responsabilidad y cuidado -- soloNino: muestra solo 5.3; oculta 5.1, 5.2, 5.4 -- Ninguna: oculta toda la sección -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,conditional_rules) VALUES(gen_random_uuid(),sid,'S5','section','Responsabilidad y cuidado',50,false,false, 'Queremos conocer quién tiene la responsabilidad del cuidado desde lo económico, ' 'lo logístico y el cuidado activo.', r_hide_ning); -- 5.1: oculta cuando Ninguna O soloNino INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'5.1','multiple_choice', '¿Cuál es tu rol en el cuidado de los niños y/o personas con discapacidad o dependientes?', 51,false,false,'Podés marcar más de una opción', '[{"value":"Proveo financieramente los recursos para su cuidado","label":"Proveo financieramente los recursos para su cuidado"}, {"value":"Comparto los gastos del cuidado con otros familiares","label":"Comparto los gastos del cuidado con otros familiares"}, {"value":"Administro los recursos y organizo los servicios necesarios","label":"Administro los recursos y organizo los servicios necesarios"}, {"value":"Cuando salgo del trabajo me ocupo de su cuidado unas horas","label":"Cuando salgo del trabajo me ocupo de su cuidado unas horas"}, {"value":"Me ocupo de todas las gestiones relacionadas a la persona","label":"Me ocupo de todas las gestiones relacionadas a la persona"}]'::jsonb, r_hide_ning_sn); -- 5.2: oculta cuando Ninguna O soloNino INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'5.2','multiple_choice', '¿En qué momento del día te ocupás de gestionar/organizar el cuidado de las personas a tu cargo?', 52,false,false,'Podés marcar más de una opción', '[{"value":"Antes del trabajo","label":"Antes del trabajo"}, {"value":"Después del trabajo","label":"Después del trabajo"}, {"value":"Durante el trabajo (llamadas y emergencias)","label":"Durante el trabajo (llamadas y emergencias)"}, {"value":"En cualquier momento","label":"En cualquier momento"}, {"value":"Los fines de semana","label":"Los fines de semana"}]'::jsonb, r_hide_ning_sn); -- 5.3: visible también en soloNino (oculta solo cuando Ninguna) -- soloNino: después de 5.3 el renderer salta a 8.4 (regla de flujo) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'5.3','multiple_choice', 'Durante el tiempo que estás en el trabajo, ¿quién se ocupa del cuidado de las personas a tu cargo?', 53,false,false,'Podés marcar más de una opción', '[{"value":"Mi cónyuge","label":"Mi cónyuge"}, {"value":"Otro familiar","label":"Otro familiar"}, {"value":"Un(a) cuidador/a contratado/a","label":"Un(a) cuidador/a contratado/a"}, {"value":"Un centro de estudios o de cuidado","label":"Un centro de estudios o de cuidado"}, {"value":"Un/a vecino/a","label":"Un/a vecino/a"}, {"value":"Otro (especificar)","label":"Otro (especificar)"}]'::jsonb, r_hide_ning); -- 5.4: oculta cuando Ninguna O soloNino INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'5.4','single_choice', '¿Desde hace cuánto cumplís este rol de responsable o cuidador/a?', 54,false,false, '[{"value":"Menos de 1 año","label":"Menos de 1 año"}, {"value":"1 a 3 años","label":"1 a 3 años"}, {"value":"3 a 5 años","label":"3 a 5 años"}, {"value":"Más de 5 años","label":"Más de 5 años"}]'::jsonb, r_hide_ning_sn); -- ════════════════════════════════════════════════════════ -- SECCIÓN 6 — Intensidad del cuidado -- Toda la sección oculta cuando Ninguna O soloNino -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,conditional_rules) VALUES(gen_random_uuid(),sid,'S6','section','Intensidad del cuidado',60,false,false, 'Queremos conocer cuánto tiempo y con qué intensidad cuidás.',r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'6.1','single_choice', '¿Cuántos días por semana estás a cargo del cuidado directo, en promedio?', 61,false,false, 'Tiempo directo de acompañar o cuidar a la persona vinculada', '[{"value":"1–2","label":"1–2"},{"value":"3–4","label":"3–4"}, {"value":"5–6","label":"5–6"},{"value":"Todos los días","label":"Todos los días"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'6.2','single_choice', 'Cuando estás a cargo del cuidado, ¿cuántas horas por día dedicás, en promedio?', 62,false,false, '[{"value":"1–2","label":"1–2"},{"value":"3–4","label":"3–4"}, {"value":"5–6","label":"5–6"},{"value":"Más de 6 horas","label":"Más de 6 horas"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'6.3','multiple_choice', '¿En qué momentos del día cuidás principalmente?', 63,false,false,'Podés marcar más de una opción', '[{"value":"Antes del trabajo","label":"Antes del trabajo"}, {"value":"Al llegar del trabajo","label":"Al llegar del trabajo"}, {"value":"Durante la noche","label":"Durante la noche"}, {"value":"Los fines de semana","label":"Los fines de semana"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'6.4','single_choice', 'Además del cuidado directo, ¿cuántas horas al día necesitás estar disponible o de ' 'guardia (aunque no estés cuidando activamente)?', 64,false,false, '[{"value":"1–2","label":"1–2"},{"value":"3–4","label":"3–4"}, {"value":"5–6","label":"5–6"},{"value":"Más de 6 horas","label":"Más de 6 horas"}, {"value":"De forma permanente / sin horario","label":"De forma permanente / sin horario"}]'::jsonb, r_hide_ning_sn); -- ════════════════════════════════════════════════════════ -- SECCIÓN 7 — Impacto en el trabajo -- Toda la sección oculta cuando Ninguna O soloNino -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,conditional_rules) VALUES(gen_random_uuid(),sid,'S7','section','Impacto en el trabajo',70,false,false, 'Queremos conocer cómo impacta o ha impactado en tu desempeño laboral el rol de cuidador/a.', r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'7.1','single_choice', '¿Cómo describirías tu nivel de descanso cuando te ocupás del cuidado y cómo impacta en tu desempeño?', 71,false,false, '[{"value":"Descanso bien, me siento recuperado/a","label":"Descanso bien, me siento recuperado/a"}, {"value":"Descanso de forma irregular, pero lo manejo","label":"Descanso de forma irregular, pero lo manejo"}, {"value":"Me cuesta descansar y mi desempeño se ve afectado con frecuencia","label":"Me cuesta descansar y mi desempeño se ve afectado con frecuencia"}, {"value":"Descanso muy poco, el agotamiento afecta mi desempeño","label":"Descanso muy poco, el agotamiento afecta mi desempeño"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'7.2','single_choice', 'En los últimos 3 meses, ¿con qué frecuencia sentiste que el cuidado afectó tu concentración o rendimiento?', 72,false,false, '[{"value":"Nunca o casi nunca","label":"Nunca o casi nunca"}, {"value":"Algunas veces al mes","label":"Algunas veces al mes"}, {"value":"Varias veces por semana","label":"Varias veces por semana"}, {"value":"Casi todos los días","label":"Casi todos los días"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'7.3','single_choice', 'En el último año, ¿faltaste al trabajo por situaciones relacionadas al cuidado?', 73,false,false, '[{"value":"Nunca","label":"Nunca"}, {"value":"Pocas veces (1–3 al año)","label":"Pocas veces (1–3 al año)"}, {"value":"Varias veces (4–10 al año)","label":"Varias veces (4–10 al año)"}, {"value":"Con frecuencia (más de 10 al año)","label":"Con frecuencia (más de 10 al año)"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'7.4','multiple_choice', '¿Qué aspectos de tu vida se ven más afectados por tu rol de cuidador/a?', 74,false,false,'Podés marcar más de una opción', '[{"value":"Tiempo libre y ocio","label":"Tiempo libre y ocio"}, {"value":"Sueño y descanso","label":"Sueño y descanso"}, {"value":"Vida social y amistades","label":"Vida social y amistades"}, {"value":"Vida en pareja/familiar","label":"Vida en pareja/familiar"}, {"value":"Salud física personal","label":"Salud física personal"}, {"value":"Salud emocional/mental","label":"Salud emocional/mental"}, {"value":"Desarrollo profesional","label":"Desarrollo profesional"}, {"value":"Situación económica","label":"Situación económica"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'7.5','multiple_choice', 'Por tu rol de cuidado, ¿alguna vez tuviste que…?', 75,false,false,'Podés marcar más de una opción', '[{"value":"Reducir tu jornada o pasar a medio tiempo","label":"Reducir tu jornada o pasar a medio tiempo"}, {"value":"Rechazar un ascenso o nueva responsabilidad","label":"Rechazar un ascenso o nueva responsabilidad"}, {"value":"Declinar viajes, horas extra o capacitaciones","label":"Declinar viajes, horas extra o capacitaciones"}, {"value":"Cambiar a un puesto menos exigente","label":"Cambiar a un puesto menos exigente"}, {"value":"Faltar o llegar tarde de forma reiterada","label":"Faltar o llegar tarde de forma reiterada"}, {"value":"Pensar seriamente en dejar el trabajo","label":"Pensar seriamente en dejar el trabajo"}, {"value":"Dejar un trabajo anterior","label":"Dejar un trabajo anterior"}, {"value":"Ninguna de las anteriores","label":"Ninguna de las anteriores"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'7.6','single_choice', 'Pensando en los próximos 12 meses, ¿qué tan probable es que dejes o reduzcas tu trabajo por razones de cuidado?', 76,false,false, '[{"value":"Nada probable","label":"Nada probable"}, {"value":"Poco probable","label":"Poco probable"}, {"value":"Algo probable","label":"Algo probable"}, {"value":"Muy probable","label":"Muy probable"}]'::jsonb, r_hide_ning_sn); -- ════════════════════════════════════════════════════════ -- SECCIÓN 8 — Impacto económico -- Ninguna: oculta toda la sección -- soloNino: oculta 8.1–8.3, muestra 8.4 (franja salarial) -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,conditional_rules) VALUES(gen_random_uuid(),sid,'S8','section','Impacto económico',80,false,false, 'Queremos conocer el impacto económico del cuidado de las personas a tu cargo.',r_hide_ning); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'8.1','single_choice', '¿Cuánto estimás que gastás por mes en el cuidado?', 81,false,false, '[{"value":"Menos de 1.000.000","label":"Menos de 1.000.000"}, {"value":"1.000.000 – 3.000.000","label":"1.000.000 – 3.000.000"}, {"value":"3.000.001 – 6.000.000","label":"3.000.001 – 6.000.000"}, {"value":"6.000.001 – 9.000.000","label":"6.000.001 – 9.000.000"}, {"value":"9.000.001 – 12.000.000","label":"9.000.001 – 12.000.000"}, {"value":"12.000.001 – 15.000.000","label":"12.000.001 – 15.000.000"}, {"value":"Más de 15.000.000","label":"Más de 15.000.000"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'8.2','multiple_choice', '¿En qué conceptos gastás principalmente el monto expresado?', 82,false,false,'Podés marcar más de una opción', '[{"value":"Cuidador/a particular","label":"Cuidador/a particular"}, {"value":"Centro de día / institución","label":"Centro de día / institución"}, {"value":"Traslados a centros especializados","label":"Traslados a centros especializados"}, {"value":"Equipamiento médico / tecnología asistiva","label":"Equipamiento médico / tecnología asistiva"}, {"value":"Servicios terapéuticos y/o rehabilitación","label":"Servicios terapéuticos y/o rehabilitación"}, {"value":"Medicamentos","label":"Medicamentos"}, {"value":"Insumos personales (sondas, pañales, otros)","label":"Insumos personales (sondas, pañales, otros)"}, {"value":"Otros (especificar)","label":"Otros (especificar)"}]'::jsonb, r_hide_ning_sn); INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules) VALUES(gen_random_uuid(),sid,'8.3','multiple_choice', '¿Cómo sostenés los gastos y responsabilidades del cuidado?', 83,false,false,'Podés marcar más de una opción', '[{"value":"Solo con mi empleo actual","label":"Solo con mi empleo actual"}, {"value":"Ingresos extraordinarios en horarios no laborales","label":"Ingresos extraordinarios en horarios no laborales"}, {"value":"Emprendimiento personal/familiar","label":"Emprendimiento personal/familiar"}, {"value":"Me ayudan mis familiares","label":"Me ayudan mis familiares"}, {"value":"Me ayudan organizaciones sociales (fundaciones)","label":"Me ayudan organizaciones sociales (fundaciones)"}, {"value":"Me ayudan vecinos y amigos","label":"Me ayudan vecinos y amigos"}, {"value":"Eventos de recaudación","label":"Eventos de recaudación"}, {"value":"Subsidios estatales de la persona cuidada","label":"Subsidios estatales de la persona cuidada"}]'::jsonb, r_hide_ning_sn); -- 8.4: franja salarial — CONFIDENCIAL (analyst-only, nunca en vistas de empresa) -- visible en soloNino (oculta solo cuando Ninguna) INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'8.4','single_choice', '¿En qué franja salarial mensual te ubicás con tu trabajo en esta empresa?', 84,true,false, '[{"value":"Hasta Gs 3.000.000","label":"Hasta Gs 3.000.000"}, {"value":"3.000.001 – 5.000.000","label":"3.000.001 – 5.000.000"}, {"value":"5.000.001 – 8.000.000","label":"5.000.001 – 8.000.000"}, {"value":"8.000.001 – 12.000.000","label":"8.000.001 – 12.000.000"}, {"value":"12.000.001 – 15.000.000","label":"12.000.001 – 15.000.000"}, {"value":"15.000.001 – 18.000.000","label":"15.000.001 – 18.000.000"}, {"value":"18.000.001 – 25.000.000","label":"18.000.001 – 25.000.000"}, {"value":"25.000.001 – 50.000.000","label":"25.000.001 – 50.000.000"}, {"value":"50.000.001 o más","label":"50.000.001 o más"}]'::jsonb, r_hide_ning); -- ════════════════════════════════════════════════════════ -- SECCIÓN 9 — Conciencia organizacional -- Ninguna: oculta toda la sección -- soloNino: muestra 9.1 y 9.4; oculta 9.2 y 9.3 -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,conditional_rules) VALUES(gen_random_uuid(),sid,'S9','section','Conciencia organizacional',90,false,false, 'Queremos conocer tu percepción sobre cuánta conciencia hay en la empresa respecto al ' 'cuidado y la discapacidad.',r_hide_ning); -- 9.1: visible también en soloNino INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'9.1','single_choice', '¿Sentís que tu empresa conoce o comprende la realidad del cuidado y la discapacidad de su gente?', 91,false,false, '[{"value":"Sí, me siento acompañado/a","label":"Sí, me siento acompañado/a"}, {"value":"Parcialmente, hay cierta comprensión","label":"Parcialmente, hay cierta comprensión"}, {"value":"No, es algo bastante invisible","label":"No, es algo bastante invisible"}, {"value":"Nunca hemos tocado el tema","label":"Nunca hemos tocado el tema"}]'::jsonb, r_hide_ning); -- 9.2: oculta cuando Ninguna O soloNino; max 3 selecciones INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint,options,conditional_rules,max_select) VALUES(gen_random_uuid(),sid,'9.2','multiple_choice', '¿Qué apoyos de la empresa te ayudarían más?', 92,false,false,'Marcá hasta 3 opciones', '[{"value":"Flexibilidad horaria o trabajo remoto","label":"Flexibilidad horaria o trabajo remoto"}, {"value":"Apoyo económico o convenios/descuentos","label":"Apoyo económico o convenios/descuentos"}, {"value":"Acceso a beneficios para terapias o salud","label":"Acceso a beneficios para terapias o salud"}, {"value":"Contención/apoyo emocional o psicológico","label":"Contención/apoyo emocional o psicológico"}, {"value":"Capacitación y autocuidado","label":"Capacitación y autocuidado"}, {"value":"Redes de apoyo / grupos de pares","label":"Redes de apoyo / grupos de pares"}, {"value":"Información sobre recursos y servicios","label":"Información sobre recursos y servicios"}]'::jsonb, r_hide_ning_sn,3); -- 9.3: oculta cuando Ninguna O soloNino INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'9.3','single_choice', '¿Estarías dispuesto/a a participar en un grupo de apoyo para cuidadores dentro de la empresa?', 93,false,false, '[{"value":"Sí, definitivamente","label":"Sí, definitivamente"}, {"value":"Tal vez, si hay más personas en la misma situación","label":"Tal vez, si hay más personas en la misma situación"}, {"value":"No por ahora","label":"No por ahora"}, {"value":"Prefiero mantenerlo en privado","label":"Prefiero mantenerlo en privado"}]'::jsonb, r_hide_ning_sn); -- 9.4: visible también en soloNino INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,options,conditional_rules) VALUES(gen_random_uuid(),sid,'9.4','single_choice', '¿Estarías dispuesto/a a ser voluntario/a en iniciativas y/o redes de apoyo?', 94,false,false, '[{"value":"Sí","label":"Sí"},{"value":"No","label":"No"}]'::jsonb, r_hide_ning); -- ════════════════════════════════════════════════════════ -- SECCIÓN 10 — Comentarios adicionales -- Siempre visible (es el destino del salto "Ninguna") -- ════════════════════════════════════════════════════════ INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint) VALUES(gen_random_uuid(),sid,'S10','section','Comentarios adicionales',100,false,false, 'Espacio para comentarios, sugerencias o tus datos (confidenciales) para seguir profundizando.'); -- 10.1: texto libre, opcional INSERT INTO public.questions(id,survey_id,code,type,prompt,position,is_sensitive,required,hint) VALUES(gen_random_uuid(),sid,'10.1','text_long', '¿Te gustaría dejar un comentario o sugerencia especial? (opcional)', 101,false,false,'Opcional.'); END LOOP; END $seed$;