Commit b2eac77025cfa04f0c3a3a676a972d3eeecf8953
1 parent
c5120d94
Hito: Optimización visual de interfaz completada y registro legal SIGEM (Manual v1.1)
Showing
2 changed files
with
36 additions
and
46 deletions
VERSION.txt
| 1 | -PROYECTO GIS-GEOSERVER - 2026.04.02.13.00.00 | |
| 1 | +PROYECTO GIS-GEOSERVER - 2026.04.02.13.00.00 | |
| 2 | 2 | PROYECTO GIS-GEOSERVER - 2026.04.03.11.58.33 |
| 3 | 3 | PROYECTO GIS-GEOSERVER - 2026.04.03.16.10.00 |
| 4 | 4 | PROYECTO GIS-GEOSERVER - 2026.04.04.20.43.27 ID DOCKER: 932819b9d2da |
| ... | ... | @@ -7,4 +7,5 @@ PROYECTO GIS-GEOSERVER - 2026.04.05.04.28.49 ID DOCKER: c68e229b6d94. Observacià |
| 7 | 7 | PROYECTO GIS-GEOSERVER - 2026.04.05.06.31.00 ID DOCKER: c68e229b6d94. Observación: Reestructuración pura de BaseMap y soporte Google auto-escalado satelital. |
| 8 | 8 | PROYECTO GIS-GEOSERVER - 2026.04.06.01.13.00 ID DOCKER: d983a409769d. Observación: Integración exitosa de Landing Page AdminLTE 3 con aislamiento de iFrame para Visor GIS. |
| 9 | 9 | PROYECTO GIS-GEOSERVER - 2026.04.06.12.44.00 ID DOCKER: d983a409769d. Observación: Backup completo preventivo de la versión con estructura de Git corregida y Landing Page AdminLTE. |
| 10 | -PROYECTO GIS-GEOSERVER - 2026.04.06.13.31.00 ID DOCKER: d983a409769d. Observación: Prueba de funcionamiento del Manual v1.1 tras estandarización de prefijos y manual de recuperación. | |
| 11 | 10 | \ No newline at end of file |
| 11 | +PROYECTO GIS-GEOSERVER - 2026.04.06.13.31.00 ID DOCKER: d983a409769d. Observación: Prueba de funcionamiento del Manual v1.1 tras estandarización de prefijos y manual de recuperación. | |
| 12 | +PROYECTO GIS-GEOSERVER - 2026.04.07.08.18.07 ID DOCKER: d983a409769d. Observación: Optimización visual de interfaz completada: unificación de anchos al 100%, limpieza de barra superior, traslado de controles al sidebar y registro legal SIGEM-MIC/DINAPI. | |
| 12 | 13 | \ No newline at end of file | ... | ... |
src/main/resources/static/mapas.html
| ... | ... | @@ -14,6 +14,9 @@ |
| 14 | 14 | <script src="https://unpkg.com/maplibre-gl@3.6.2/dist/maplibre-gl.js"></script> |
| 15 | 15 | <link href="https://unpkg.com/maplibre-gl@3.6.2/dist/maplibre-gl.css" rel="stylesheet" /> |
| 16 | 16 | <style> |
| 17 | + * { | |
| 18 | + box-sizing: border-box; | |
| 19 | + } | |
| 17 | 20 | body, |
| 18 | 21 | html { |
| 19 | 22 | height: 100%; |
| ... | ... | @@ -29,10 +32,10 @@ |
| 29 | 32 | background: #1e293b; |
| 30 | 33 | display: flex; |
| 31 | 34 | align-items: center; |
| 35 | + justify-content: center; | |
| 32 | 36 | padding: 0 20px; |
| 33 | 37 | box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); |
| 34 | 38 | font-weight: bold; |
| 35 | - justify-content: space-between; | |
| 36 | 39 | position: relative; |
| 37 | 40 | z-index: 1001; |
| 38 | 41 | } |
| ... | ... | @@ -58,7 +61,7 @@ |
| 58 | 61 | } |
| 59 | 62 | |
| 60 | 63 | .sidebar { |
| 61 | - width: 340px; | |
| 64 | + width: 170px; | |
| 62 | 65 | background: #0f172a; |
| 63 | 66 | border-right: 1px solid rgba(255, 255, 255, 0.1); |
| 64 | 67 | overflow-y: auto; |
| ... | ... | @@ -87,6 +90,7 @@ |
| 87 | 90 | margin-bottom: 4px; |
| 88 | 91 | border: 1px solid transparent; |
| 89 | 92 | text-decoration: none; |
| 93 | + font-size: 11px; | |
| 90 | 94 | } |
| 91 | 95 | |
| 92 | 96 | .menu-item:hover { |
| ... | ... | @@ -139,21 +143,11 @@ |
| 139 | 143 | margin-top: 5px; |
| 140 | 144 | } |
| 141 | 145 | |
| 142 | - /* Map Title Overlay */ | |
| 143 | - .map-title-overlay { | |
| 144 | - position: absolute; | |
| 145 | - top: 20px; | |
| 146 | - left: 50%; | |
| 147 | - transform: translateX(-50%); | |
| 148 | - background: rgba(15, 23, 42, 0.9); | |
| 149 | - padding: 8px 24px; | |
| 150 | - border-radius: 50px; | |
| 151 | - border: 1px solid rgba(255, 255, 255, 0.1); | |
| 146 | + /* Map Title in Header */ | |
| 147 | + .header-title { | |
| 152 | 148 | color: #fff; |
| 153 | 149 | font-weight: 700; |
| 154 | - font-size: 13px; | |
| 155 | - z-index: 1000; | |
| 156 | - backdrop-filter: blur(8px); | |
| 150 | + font-size: 14px; | |
| 157 | 151 | text-transform: uppercase; |
| 158 | 152 | letter-spacing: 1px; |
| 159 | 153 | } |
| ... | ... | @@ -314,28 +308,32 @@ |
| 314 | 308 | |
| 315 | 309 | <body> |
| 316 | 310 | <div class="header"> |
| 317 | - <div>SIGEM GIS <span id="user-greeting" | |
| 318 | - style="font-size: 13px; font-weight: normal; margin-left: 10px; opacity: 0.7;"></span></div> | |
| 319 | - <button class="logout-btn" onclick="logout()">Cerrar Sesión</button> | |
| 311 | + <div id="map-title" class="header-title">Vista Cartográfica General</div> | |
| 320 | 312 | </div> |
| 321 | 313 | <div class="app-container"> |
| 322 | 314 | <div class="sidebar"> |
| 323 | 315 | <div id="stats-dashboard"> |
| 324 | 316 | <div class="menu-title">Resumen Municipal</div> |
| 325 | - <div class="stats-grid"> | |
| 326 | - <div class="stat-card"> | |
| 327 | - <div class="stat-label">Total Lotes</div> | |
| 328 | - <div id="stat-lotes" class="stat-value">...</div> | |
| 329 | - </div> | |
| 330 | - <div class="stat-card" style="display: none;"> | |
| 331 | - <div class="stat-label">Morosidad</div> | |
| 332 | - <div id="stat-morosos" class="stat-value" style="color: #f87171;">...</div> | |
| 333 | - </div> | |
| 317 | + | |
| 318 | + <div class="stat-card" style="width: 100%; padding: 12px 16px; border-radius: 10px; margin-bottom: 20px;"> | |
| 319 | + <div class="stat-label">Total Lotes</div> | |
| 320 | + <div id="stat-lotes" class="stat-value" style="font-size: 14px;">...</div> | |
| 334 | 321 | </div> |
| 322 | + | |
| 323 | + | |
| 335 | 324 | </div> |
| 336 | 325 | |
| 337 | 326 | <div class="menu-title">Control de Gestión</div> |
| 338 | - <div id="menu-reset" class="menu-item active" onclick="resetMap()">Capas Base</div> | |
| 327 | + <div id="menu-reset" class="menu-item active" onclick="resetMap()" style="width: 100%;">Capas Base</div> | |
| 328 | + <div style="margin-top: 5px; width: 100%;"> | |
| 329 | + <select id="base-layer-select" | |
| 330 | + style="background: rgba(255, 255, 255, 0.05); color: #94a3b8; border: 1px solid rgba(255,255,255,0.1); padding: 8px 12px; border-radius: 6px; font-size: 10px; cursor: pointer; width: 100%; height: 35px;"> | |
| 331 | + <option value="dark">CartoDB Dark</option> | |
| 332 | + <option value="streets">OpenStreetMap</option> | |
| 333 | + <option value="satellite">Esri Satélite</option> | |
| 334 | + <option value="google">Google Satélite</option> | |
| 335 | + </select> | |
| 336 | + </div> | |
| 339 | 337 | |
| 340 | 338 | <div class="menu-title">Mapas Tributarios</div> |
| 341 | 339 | <div class="submenu"> |
| ... | ... | @@ -344,7 +342,7 @@ |
| 344 | 342 | <div id="menu-percentiles" class="menu-item" onclick="setHeatmap('percentiles')">Por Monto Adeudado</div> |
| 345 | 343 | <div id="menu-wms-test" class="menu-item" onclick="toggleWmsLayer()" |
| 346 | 344 | style="color: #fbbf24; border-top: 1px dashed #444; margin-top: 5px; font-weight: bold; display: none;"> |
| 347 | - Vista PNG (Full) <span id="wms-status" style="font-size: 9px; opacity: 0.6;">[OFF]</span> | |
| 345 | + Vista Lotes <span id="wms-status" style="font-size: 9px; opacity: 0.6;">[OFF]</span> | |
| 348 | 346 | </div> |
| 349 | 347 | </div> |
| 350 | 348 | |
| ... | ... | @@ -364,23 +362,13 @@ |
| 364 | 362 | Fuente: Sistema SIGEM</div> |
| 365 | 363 | </div> |
| 366 | 364 | |
| 367 | - <!-- Selector de Capas Base --> | |
| 368 | - <div class="layer-switcher" style="position: absolute; top: 15px; left: 15px; z-index: 1000;"> | |
| 369 | - <select id="base-layer-select" | |
| 370 | - style="background: rgba(15, 23, 42, 0.9); color: white; border: 1px solid rgba(255,255,255,0.2); padding: 5px 10px; border-radius: 8px; font-size: 11px; cursor: pointer; backdrop-filter: blur(8px);"> | |
| 371 | - <option value="dark">CartoDB Dark</option> | |
| 372 | - <option value="streets">OpenStreetMap</option> | |
| 373 | - <option value="satellite">Esri Satélite</option> | |
| 374 | - <option value="google">Google Satélite</option> | |
| 375 | - </select> | |
| 376 | - </div> | |
| 377 | - <div id="map-title" class="map-title-overlay">Vista Cartográfica General</div> | |
| 365 | + | |
| 366 | + | |
| 378 | 367 | </div> |
| 379 | 368 | </div> |
| 380 | 369 | |
| 381 | 370 | <script> |
| 382 | - const userName = localStorage.getItem('user_name'); | |
| 383 | - if (userName) document.getElementById('user-greeting').innerText = `| Bienvenido, ${userName}`; | |
| 371 | + | |
| 384 | 372 | |
| 385 | 373 | const entidad = localStorage.getItem('entidad') || '505'; |
| 386 | 374 | const token = localStorage.getItem('jwt'); |
| ... | ... | @@ -405,7 +393,7 @@ |
| 405 | 393 | type: 'raster', |
| 406 | 394 | tiles: ['https://a.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png'], |
| 407 | 395 | tileSize: 256, |
| 408 | - attribution: '© CartoDB' | |
| 396 | + attribution: '© CartoDB - SIGEM-REGISTRO MIC/DINAPI 593-7/Julio/2016' | |
| 409 | 397 | } |
| 410 | 398 | }, |
| 411 | 399 | layers: [{ |
| ... | ... | @@ -524,7 +512,8 @@ |
| 524 | 512 | type: 'raster', |
| 525 | 513 | tiles: [config.url], |
| 526 | 514 | tileSize: 256, |
| 527 | - maxzoom: config.sourceMax // Limite del satélite, a partir de acá MapLibre estirará la foto | |
| 515 | + maxzoom: config.sourceMax, | |
| 516 | + attribution: 'SIGEM-REGISTRO MIC/DINAPI 593-7/Julio/2016' | |
| 528 | 517 | }); |
| 529 | 518 | |
| 530 | 519 | // Empujar el fondo debajo de todas las capas existentes (cero interferencia visual) | ... | ... |