-- ═══════════════════════════════════════════════════════════════════════════════ -- SEED 11: INFONAVIT Y DERECHOHABIENTES -- ═══════════════════════════════════════════════════════════════════════════════ -- Proyecto: ERP Construcción -- Autor: Claude Opus 4.5 -- Fecha: 2026-02-03 -- Descripción: Registro INFONAVIT, ofertas, derechohabientes, asignaciones -- Dependencias: 03-empresa-tenant.sql, 04-proyectos-obras.sql -- Cobertura: 4/8 tablas (50%) - registro, oferta, derechohabientes, asignaciones -- ═══════════════════════════════════════════════════════════════════════════════ -- UUIDs: 00000000-0000-0000-000b-XXXXXXXXXXXX BEGIN; -- ───────────────────────────────────────────────────────────────────────────────── -- 1. REGISTRO INFONAVIT (Registro del constructor) -- ───────────────────────────────────────────────────────────────────────────────── INSERT INTO infonavit.registro_infonavit ( id, tenant_id, company_id, registro_number, registro_date, status, vigencia_start, vigencia_end, responsable_tecnico, cedula_profesional, metadata, created_at, created_by ) VALUES ('00000000-0000-0000-000b-000000000001', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-0003-000000000001', 'REG-INFONAVIT-2024-001', '2024-01-15', 'active', '2024-01-15', '2029-01-14', 'Ing. Roberto García López', '1234567', '{"tipo_registro": "constructor_vivienda", "zona": "centro_norte"}'::JSONB, NOW(), '00000000-0000-0000-0002-000000000102') ON CONFLICT (id) DO NOTHING; -- ───────────────────────────────────────────────────────────────────────────────── -- 2. OFERTA DE VIVIENDAS -- ───────────────────────────────────────────────────────────────────────────────── INSERT INTO infonavit.oferta_vivienda ( id, tenant_id, registro_id, fraccionamiento_id, oferta_number, submission_date, approval_date, total_units, approved_units, price_range_min, price_range_max, status, metadata, created_at, created_by ) VALUES -- Oferta Las Palmas Etapa 1 ('00000000-0000-0000-000b-000000000101', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000001', '00000000-0000-0000-0004-000000000101', 'OFE-2024-PALMAS-001', '2024-02-15', '2024-03-01', 40, 38, 1850000.00, 3300000.00, 'approved', '{"etapa": 1, "tipos_vivienda": ["CASA-90", "CASA-120", "CASA-150"]}'::JSONB, NOW(), '00000000-0000-0000-0002-000000000103'), -- Oferta Torre Diamante ('00000000-0000-0000-000b-000000000102', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000001', '00000000-0000-0000-0004-000000000102', 'OFE-2024-DIAMANTE-001', '2024-05-10', '2024-05-25', 48, 48, 1250000.00, 2250000.00, 'approved', '{"torre": "A", "tipos_vivienda": ["DEPTO-65", "DEPTO-85", "DEPTO-110"]}'::JSONB, NOW(), '00000000-0000-0000-0002-000000000103') ON CONFLICT (id) DO NOTHING; -- ───────────────────────────────────────────────────────────────────────────────── -- 3. DERECHOHABIENTES (Compradores con crédito INFONAVIT) -- ───────────────────────────────────────────────────────────────────────────────── INSERT INTO infonavit.derechohabientes ( id, tenant_id, nss, curp, rfc, full_name, first_name, last_name, second_last_name, birth_date, gender, marital_status, email, phone, mobile, address, city, state, zip_code, employer_name, employer_rfc, employment_start_date, salary, cotization_weeks, credit_type, credit_number, credit_amount, puntos_infonavit, subcuenta_vivienda, precalificacion_date, precalificacion_amount, status, created_at, created_by ) VALUES -- Derechohabiente 1 - Comprador Lote A-01 (entregado) ('00000000-0000-0000-000b-000000000201', '00000000-0000-0000-0003-000000000001', '12345678901', 'GARM800515HASRRL01', 'GARM800515ABC', 'Manuel García Rodríguez', 'Manuel', 'García', 'Rodríguez', '1980-05-15', 'Masculino', 'Casado', 'manuel.garcia@email.com', '+52 449 111 1111', '+52 449 211 1111', 'Av. Las Torres 123', 'Aguascalientes', 'Aguascalientes', '20010', 'Nissan Mexicana S.A.', 'NME850101XXX', '2005-03-01', 25000.00, 936, 'infonavit_tradicional', 'CRED-INF-2024-001', 850000.00, 145.5, 185000.00, '2024-01-10', 900000.00, 'owner', NOW(), '00000000-0000-0000-0002-000000000103'), -- Derechohabiente 2 - Comprador Lote A-02 (entregado) ('00000000-0000-0000-000b-000000000202', '00000000-0000-0000-0003-000000000001', '12345678902', 'LOPH850320MASPRL02', 'LOPH850320ABC', 'Patricia López Hernández', 'Patricia', 'López', 'Hernández', '1985-03-20', 'Femenino', 'Soltera', 'patricia.lopez@email.com', '+52 449 111 2222', '+52 449 211 2222', 'Calle Morelos 456', 'Aguascalientes', 'Aguascalientes', '20020', 'Continental AG México', 'CAM900101XXX', '2010-06-15', 22000.00, 720, 'infonavit_tradicional', 'CRED-INF-2024-002', 800000.00, 138.2, 165000.00, '2024-01-15', 850000.00, 'owner', NOW(), '00000000-0000-0000-0002-000000000103'), -- Derechohabiente 3 - En proceso de escrituración ('00000000-0000-0000-000b-000000000203', '00000000-0000-0000-0003-000000000001', '12345678903', 'SAMJ900810HASNTL03', 'SAMJ900810ABC', 'José Luis Sánchez Martínez', 'José Luis', 'Sánchez', 'Martínez', '1990-08-10', 'Masculino', 'Casado', 'joseluis.sanchez@email.com', '+52 449 111 3333', '+52 449 211 3333', 'Blvd. Norte 789', 'Aguascalientes', 'Aguascalientes', '20030', 'Jatco México S.A.', 'JME880101XXX', '2012-01-20', 28000.00, 624, 'cofinavit', 'CRED-INF-2024-003', 1200000.00, 155.8, 210000.00, '2024-02-01', 1250000.00, 'in_process', NOW(), '00000000-0000-0000-0002-000000000103'), -- Derechohabiente 4 - Asignado pero pendiente de firma ('00000000-0000-0000-000b-000000000204', '00000000-0000-0000-0003-000000000001', '12345678904', 'RORM880125MASPXR04', 'RORM880125ABC', 'María del Rosario Ramírez Ortiz', 'María del Rosario', 'Ramírez', 'Ortiz', '1988-01-25', 'Femenino', 'Casada', 'rosario.ramirez@email.com', '+52 449 111 4444', '+52 449 211 4444', 'Av. Tecnológico 234', 'Aguascalientes', 'Aguascalientes', '20290', 'Texas Instruments', 'TIM950101XXX', '2015-07-01', 35000.00, 520, 'infonavit_total', 'CRED-INF-2024-004', 1500000.00, 168.3, 280000.00, '2024-02-15', 1550000.00, 'assigned', NOW(), '00000000-0000-0000-0002-000000000103'), -- Derechohabiente 5 - Precalificado, buscando vivienda ('00000000-0000-0000-000b-000000000205', '00000000-0000-0000-0003-000000000001', '12345678905', 'HECR920605HASPSS05', 'HECR920605ABC', 'Ricardo Hernández Castro', 'Ricardo', 'Hernández', 'Castro', '1992-06-05', 'Masculino', 'Soltero', 'ricardo.hernandez@email.com', '+52 449 111 5555', '+52 449 211 5555', 'Calle Independencia 567', 'Aguascalientes', 'Aguascalientes', '20040', 'Flextronics Manufacturing', 'FME920101XXX', '2018-02-15', 18000.00, 312, 'infonavit_tradicional', NULL, NULL, 120.5, 95000.00, '2024-03-01', 680000.00, 'qualified', NOW(), '00000000-0000-0000-0002-000000000103'), -- Derechohabientes para Torre Diamante ('00000000-0000-0000-000b-000000000206', '00000000-0000-0000-0003-000000000001', '12345678906', 'MOVP850715HASRRL06', 'MOVP850715ABC', 'Pedro Morales Vargas', 'Pedro', 'Morales', 'Vargas', '1985-07-15', 'Masculino', 'Casado', 'pedro.morales@email.com', '+52 449 111 6666', '+52 449 211 6666', 'Av. Universidad 890', 'Aguascalientes', 'Aguascalientes', '20131', 'Bosch México', 'BME870101XXX', '2008-09-01', 32000.00, 780, 'cofinavit', 'CRED-INF-2024-006', 1100000.00, 152.4, 220000.00, '2024-04-10', 1150000.00, 'owner', NOW(), '00000000-0000-0000-0002-000000000103'), ('00000000-0000-0000-000b-000000000207', '00000000-0000-0000-0003-000000000001', '12345678907', 'GUAL900422MASTRX07', 'GUAL900422ABC', 'Lucía Gutiérrez Alvarado', 'Lucía', 'Gutiérrez', 'Alvarado', '1990-04-22', 'Femenino', 'Soltera', 'lucia.gutierrez@email.com', '+52 449 111 7777', '+52 449 211 7777', 'Calle Madero 123', 'Aguascalientes', 'Aguascalientes', '20000', 'Sensata Technologies', 'STE960101XXX', '2016-11-15', 24000.00, 416, 'infonavit_tradicional', 'CRED-INF-2024-007', 720000.00, 132.8, 145000.00, '2024-04-20', 750000.00, 'owner', NOW(), '00000000-0000-0000-0002-000000000103') ON CONFLICT (id) DO NOTHING; -- ───────────────────────────────────────────────────────────────────────────────── -- 4. ASIGNACIÓN DE VIVIENDAS -- ───────────────────────────────────────────────────────────────────────────────── INSERT INTO infonavit.asignacion_vivienda ( id, tenant_id, derechohabiente_id, lote_id, departamento_id, oferta_id, assignment_date, assignment_number, status, sale_price, credit_amount, down_payment, subsidy_amount, notary_name, notary_number, deed_date, deed_number, public_registry_number, public_registry_date, scheduled_delivery_date, actual_delivery_date, notes, created_at, created_by ) VALUES -- Lote A-01 - Entregado ('00000000-0000-0000-000b-000000000301', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000201', '00000000-0000-0000-0004-000000000601', NULL, '00000000-0000-0000-000b-000000000101', '2024-02-20', 'ASIG-2024-001', 'delivered', 1900000.00, 850000.00, 190000.00, 60000.00, 'Lic. Juan Notario Público', 'NOT-AGS-123', '2024-04-15', 'ESC-2024-001', 'RPP-AGS-2024-001', '2024-04-20', '2024-05-01', '2024-05-01', 'Entrega en tiempo y forma', NOW(), '00000000-0000-0000-0002-000000000103'), -- Lote A-02 - Entregado ('00000000-0000-0000-000b-000000000302', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000202', '00000000-0000-0000-0004-000000000602', NULL, '00000000-0000-0000-000b-000000000101', '2024-02-25', 'ASIG-2024-002', 'delivered', 1900000.00, 800000.00, 195000.00, 55000.00, 'Lic. Juan Notario Público', 'NOT-AGS-123', '2024-04-18', 'ESC-2024-002', 'RPP-AGS-2024-002', '2024-04-22', '2024-05-10', '2024-05-08', 'Entrega anticipada', NOW(), '00000000-0000-0000-0002-000000000103'), -- Lote A-05 - En proceso de escrituración ('00000000-0000-0000-000b-000000000303', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000203', '00000000-0000-0000-0004-000000000605', NULL, '00000000-0000-0000-000b-000000000101', '2024-03-15', 'ASIG-2024-003', 'in_process', 1880000.00, 1200000.00, 150000.00, 50000.00, 'Lic. María Notaria Pública', 'NOT-AGS-456', NULL, NULL, NULL, NULL, '2024-07-01', NULL, 'En trámite de escrituración', NOW(), '00000000-0000-0000-0002-000000000103'), -- Departamento 101 - Entregado ('00000000-0000-0000-000b-000000000304', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000206', NULL, '00000000-0000-0000-0004-000000000701', '00000000-0000-0000-000b-000000000102', '2024-05-20', 'ASIG-2024-004', 'delivered', 1300000.00, 1100000.00, 130000.00, 70000.00, 'Lic. Juan Notario Público', 'NOT-AGS-123', '2024-07-10', 'ESC-2024-004', 'RPP-AGS-2024-004', '2024-07-15', '2024-08-01', '2024-08-01', NULL, NOW(), '00000000-0000-0000-0002-000000000103'), -- Departamento 102 - Entregado ('00000000-0000-0000-000b-000000000305', '00000000-0000-0000-0003-000000000001', '00000000-0000-0000-000b-000000000207', NULL, '00000000-0000-0000-0004-000000000702', '00000000-0000-0000-000b-000000000102', '2024-05-25', 'ASIG-2024-005', 'delivered', 1700000.00, 720000.00, 170000.00, 60000.00, 'Lic. María Notaria Pública', 'NOT-AGS-456', '2024-07-12', 'ESC-2024-005', 'RPP-AGS-2024-005', '2024-07-18', '2024-08-15', '2024-08-10', NULL, NOW(), '00000000-0000-0000-0002-000000000103') ON CONFLICT (id) DO NOTHING; -- ───────────────────────────────────────────────────────────────────────────────── -- VERIFICACIÓN -- ───────────────────────────────────────────────────────────────────────────────── DO $$ DECLARE v_registros INTEGER; v_ofertas INTEGER; v_derechohabientes INTEGER; v_asignaciones INTEGER; BEGIN SELECT COUNT(*) INTO v_registros FROM infonavit.registro_infonavit; SELECT COUNT(*) INTO v_ofertas FROM infonavit.oferta_vivienda; SELECT COUNT(*) INTO v_derechohabientes FROM infonavit.derechohabientes; SELECT COUNT(*) INTO v_asignaciones FROM infonavit.asignacion_vivienda; RAISE NOTICE '══════════════════════════════════════════════════════════════'; RAISE NOTICE 'SEED 11 - INFONAVIT - COMPLETADO'; RAISE NOTICE '══════════════════════════════════════════════════════════════'; RAISE NOTICE 'Registros INFONAVIT: %', v_registros; RAISE NOTICE 'Ofertas de vivienda: %', v_ofertas; RAISE NOTICE 'Derechohabientes: %', v_derechohabientes; RAISE NOTICE 'Asignaciones: %', v_asignaciones; RAISE NOTICE '══════════════════════════════════════════════════════════════'; RAISE NOTICE 'Cobertura INFONAVIT: 4/8 tablas (50%%)'; RAISE NOTICE '══════════════════════════════════════════════════════════════'; END $$; COMMIT; -- ═══════════════════════════════════════════════════════════════════════════════ -- FIN SEED 11 -- ═══════════════════════════════════════════════════════════════════════════════