54 lines
2.0 KiB
Markdown
54 lines
2.0 KiB
Markdown
# Panel de Gestión de Bases de Datos (SvelteKit Migration)
|
|
|
|
Este proyecto es una migración moderna del panel de control legacy `TransmitirAS`, reconstruido utilizando **SvelteKit 2.0** y **Svelte 5 (Runes)**.
|
|
|
|
## Características
|
|
|
|
- **Tech Stack**: SvelteKit, TypeScript, Node.js (MSSQL), Bootstrap 5.
|
|
- **Server-Side Rendering (SSR)**: Todos los datos se cargan en el servidor para una carga inicial rápida y SEO/Performance óptimo.
|
|
- **Base de Datos**: Conexión a múltiples instancias SQL Server (Local, Remota, Azure).
|
|
- **Diseño**: Interfaz "Glassmorphism" portada fielmente del original.
|
|
|
|
## Requisitos Previos
|
|
|
|
- **Node.js**: v18 o superior.
|
|
- **SQL Server**: Acceso a las instancias de base de datos definidas en `.env`.
|
|
|
|
## Configuración
|
|
|
|
1. **Instalar dependencias**:
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
2. **Variables de Entorno**:
|
|
El archivo `.env` ya ha sido configurado con las credenciales migradas. Asegúrese de que la máquina donde se ejecuta esto tenga acceso de red a las IPs:
|
|
- 192.168.1.200 (Primaria)
|
|
- 104.192.7.202 (Secundaria)
|
|
- aduanasoft.database.windows.net (Azure)
|
|
|
|
3. **Ejecutar en Desarrollo**:
|
|
```bash
|
|
npm run dev
|
|
```
|
|
Abrir [http://localhost:5173](http://localhost:5173) en el navegador.
|
|
|
|
4. **Construir para Producción**:
|
|
```bash
|
|
npm run build
|
|
npm run preview
|
|
```
|
|
|
|
## Estructura del Proyecto
|
|
|
|
- `src/lib/server/db.ts`: Lógica de conexión a base de datos (Pools).
|
|
- `src/routes/+page.server.ts`: Controlador principal. Realiza todas las consultas SQL y lectura de archivos antes de renderizar.
|
|
- `src/routes/+page.svelte`: Vista principal. Gestiona la navegación por pestañas y tablas.
|
|
- `src/lib/components/`: Componentes reutilizables (`Navbar`, `Sidebar`).
|
|
- `src/app.css`: Estilos globales y tema Glass.
|
|
|
|
## Notas de Migración
|
|
|
|
- **DataTables**: Se inicializan en el cliente dentro de `onMount` para mantener la compatibilidad con las tablas interactivas originales.
|
|
- **Sistema de Archivos**: La lectura de backups busca en `D:/BackupSFTP/` en el servidor donde corre Node.js.
|