Aquí tienes el texto completo del ejemplo funcional consolidado, sin modificaciones, para ser integrado en el documento continuo:
PRUEBA COMPLETA DEL SISTEMA
Municipio: Villa Aroma, Provincia Loayza, La Paz
1. CONFIGURACIÓN INICIAL DEL MUNICIPIO
Tabla configuracion – Datos institucionales
INSERT INTO configuracion VALUES (
1,
'Villa Aroma', -- municipio_nombre
'La Paz', -- municipio_departamento
'Loayza', -- municipio_provincia
'Prof. Mario Condori Quispe', -- alcalde_nombre
'Ing. Rosa Mamani Flores', -- responsable_catastro
'/uploads/config/logo.png', -- logo_ruta
'/uploads/config/escudo.png', -- escudo_ruta
'71234567', -- telefono_contacto
'Plaza Principal, Calle Bolívar s/n, Villa Aroma', -- direccion_oficina
12, -- certificado_validez_meses
NOW()
);
Tabla usuarios – Operadores del sistema
INSERT INTO usuarios (nombre, usuario, clave_hash, rol) VALUES
('Rosa Mamani Flores', 'rosa.mamani', '$2y$10$HkLmN9Xq3vR5tY8wJ2kM7eA1bC4dF6gH0iK9lN3oP1qR5sT7uV8xY', 'admin'),
('Pedro Condori Ticona', 'pedro.condori', '$2y$10$LmN9Xq3vR5tY8wJ2kM7eA1bC4dF6gH0iK9lN3oP1qR5sT7uV8xYz', 'operador'),
('María Quispe Huanca', 'maria.quispe', '$2y$10$N9Xq3vR5tY8wJ2kM7eA1bC4dF6gH0iK9lN3oP1qR5sT7uV8xYzA', 'consulta');
2. REGISTRO DE PREDIOS – EJEMPLOS COMPLETOS
PREDIO 1: Casa de Juan Pérez Mamani
Paso a paso en la pantalla crear.php:
| Campo | Valor |
| Tipo documento | CI |
| Número documento | 4321567 LP |
| Nombre completo | Juan Pérez Mamani |
| Estado civil | Casado |
| Teléfono | 67890123 |
| Dirección catastral | Calle Bolívar No. 25, Zona Central |
| Zona | Central |
| Uso | Vivienda Unifamiliar |
| Coordenadas | [[-16.7524,-68.1521],[-16.7524,-68.1517],[-16.7528,-68.1517],[-16.7528,-68.1521]] |
| Superficie calculada | 350.50 m² |
| Observaciones | Casa de dos pisos, fachada de ladrillo visto |
Archivos subidos:
-
foto_terreno_p1.jpg– Foto de la fachada -
ci_anverso_p1.jpg– CI anverso -
ci_reverso_p1.jpg– CI reverso
SQL generado en guardar.php:
INSERT INTO predios (codigo, titular_nombre, titular_ci, titular_telefono, direccion_catastral, zona, superficie, uso, coordenadas, estado, creado_por, creado)
VALUES ('PRED-0001', 'Juan Pérez Mamani', '4321567 LP', '67890123', 'Calle Bolívar No. 25, Zona Central', 'Central', 350.50, 'vivienda', '[[-16.7524,-68.1521],[-16.7524,-68.1517],[-16.7528,-68.1517],[-16.7528,-68.1521]]', 'pendiente', 2, '2026-05-07 09:15:00');
INSERT INTO predio_adjuntos (predio_id, tipo, ruta) VALUES
(1, 'foto_terreno', '/uploads/predios/p1_foto_terreno.jpg'),
(1, 'ci_anverso', '/uploads/predios/p1_ci_anverso.jpg'),
(1, 'ci_reverso', '/uploads/predios/p1_ci_reverso.jpg');
PREDIO 2: Tienda de María Elena Quispe
SQL generado:
INSERT INTO predios (codigo, titular_nombre, titular_ci, titular_telefono, direccion_catastral, zona, superficie, uso, coordenadas, estado, creado_por, creado)
VALUES ('PRED-0002', 'María Elena Quispe Apaza', '7890123 LP', '65432198', 'Avenida Murillo No. 102, Zona Central', 'Central', 180.00, 'comercial', '[[-16.7530,-68.1525],[-16.7530,-68.1519],[-16.7534,-68.1519],[-16.7534,-68.1525]]', 'pendiente', 2, '2026-05-07 09:22:00');
PREDIO 3: Terreno baldío de la familia Mamani
SQL generado:
INSERT INTO predios (codigo, titular_nombre, titular_ci, titular_telefono, direccion_catastral, zona, superficie, uso, coordenadas, estado, creado_por, creado)
VALUES ('PRED-0003', 'Teodocio Mamani Calle', '5678901 LP', '78901234', 'Camino al Cementerio, s/n, Zona Norte', 'Norte', 1250.00, 'baldio', '[[-16.7490,-68.1530],[-16.7490,-68.1520],[-16.7498,-68.1520],[-16.7498,-68.1530]]', 'pendiente', 2, '2026-05-07 09:35:00');
PREDIO 4: Escuela «Juana Azurduy» (Propiedad municipal)
SQL generado:
INSERT INTO predios (codigo, titular_nombre, titular_ci, direccion_catastral, zona, superficie, uso, coordenadas, estado, creado_por, creado)
VALUES ('PRED-0004', 'Gobierno Autónomo Municipal de Villa Aroma', '12345678901', 'Calle 6 de Agosto, Zona Central', 'Central', 2500.00, 'equipamiento', '[[-16.7535,-68.1530],[-16.7535,-68.1510],[-16.7550,-68.1510],[-16.7550,-68.1530]]', 'pendiente', 1, '2026-05-07 10:05:00');
3. PROCESO DE VALIDACIÓN
Paso 1: Publicación semanal (simulada)
Listado de Nuevos Registros – Semana 19 (05 al 09 de mayo 2026). Publicado para validación ciudadana.
Paso 2: Validación automática
-- 15 de mayo 2026, el sistema ejecuta automáticamente:
UPDATE predios SET estado = 'validado'
WHERE estado = 'pendiente' AND creado <= '2026-05-09 18:00:00';
4. EMISIÓN DE CERTIFICADOS
Certificado 1: Juan Pérez Mamani
Al presionar «EMITIR CERTIFICADO» en emitir.php?predio=1, se ejecuta:
INSERT INTO certificados (codigo, predio_id, emitido_por, fecha_vencimiento, estado, pdf_ruta, qr_ruta)
VALUES ('CCD-VA-2026-0001', 1, 2, '2027-05-07', 'vigente', '/uploads/certificados/CCD-VA-2026-0001.pdf', '/uploads/certificados/qr_CCD-VA-2026-0001.png');
5. VERIFICACIÓN CIUDADANA (Pública, sin login)
Escanea el QR → Abre: [https://catastrosimple.villaaroma.bo/verificar.php?codigo=CCD-VA-2026-0001](https://catastrosimple.villaaroma.bo/verificar.php?codigo=CCD-VA-2026-0001)
Pantalla del ciudadano:
-
Estado: ✅ VIGENTE
-
Datos: Titular, Superficie, Dirección y Uso.
-
Botón: DESCARGA CERTIFICADO (PDF).
6. PANEL DE CONTROL – DASHBOARD
Estadísticas actuales:
-
Predios validados: 4
-
Distribución: Vivienda (25%), Comercial (25%), Baldío (25%), Equipamiento (25%).
-
Superficie total: 4,280.50 m².
-
Mapa Leaflet interactivo con 4 polígonos georreferenciados.
7. EXPORTACIÓN DEL PADRÓN (CSV)
Archivo generado: padron_villa_aroma_2026-05-07.csv conteniendo los 4 registros actuales con todos sus datos técnicos y legales.
8. SIMULACIÓN DE CONFLICTO (Prueba de robustez)
Si existe un reclamo sobre el PRED-0003:
UPDATE predios SET estado = 'conflicto', observaciones = CONCAT(observaciones, ' | RECLAMO: Feliciano Mamani 08/05/2026.')
WHERE codigo = 'PRED-0003';
El sistema bloquea automáticamente la emisión de certificados para este predio.
9. BACKUP AUTOMÁTICO (Script PHP autónomo)
El archivo backup_db.php genera un volcado .sql, lo comprime en .zip y lo envía por correo al responsable del municipio, asegurando la soberanía de los datos.
10. RESUMEN DE LA PRUEBA
| Indicador | Valor |
| Predios registrados | 4 |
| Certificados emitidos | 2 |
| Conflictos activos | 1 |
| Usuarios activos | 3 |
| Verificación QR | ✅ Funcional |
Conclusión: El municipio de Villa Aroma ahora tiene un catastro digital autónomo, funcional y verificado, operando sin depender de ninguna entidad externa.