https://github.com/metacodex/parhelion-logistics
Plataforma Unificada de Logística B2B (WMS + TMS) nivel Enterprise. Desarrollada con .NET 8, Angular y React bajo Clean Architecture. Gestiona inventarios, flotas tipificadas, redes Hub & Spoke y documentación legal (Carta Porte) en un entorno Multi-tenant con Docker y PostgreSQL
https://github.com/metacodex/parhelion-logistics
Last synced: 3 months ago
JSON representation
Plataforma Unificada de Logística B2B (WMS + TMS) nivel Enterprise. Desarrollada con .NET 8, Angular y React bajo Clean Architecture. Gestiona inventarios, flotas tipificadas, redes Hub & Spoke y documentación legal (Carta Porte) en un entorno Multi-tenant con Docker y PostgreSQL
- Host: GitHub
- URL: https://github.com/metacodex/parhelion-logistics
- Owner: MetaCodeX
- Created: 2025-12-09T00:08:11.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-12-29T07:42:06.000Z (6 months ago)
- Last Synced: 2025-12-31T11:03:38.013Z (6 months ago)
- Homepage: https://parhelion.macrostasis.lat/
- Size: 7.3 MB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Parhelion Logistics







Plataforma Unificada de Logística B2B (WMS + TMS) nivel Enterprise. Gestiona inventarios, flotas tipificadas, redes Hub & Spoke y documentación legal (Carta Porte) en un entorno Multi-tenant.
> **Estado del Proyecto:** Diseño Finalizado (v2.3) - Listo para Implementación
---
## Descripción
**Parhelion-Logistics** es una plataforma SaaS multi-tenant de nivel Enterprise que unifica las capacidades de un WMS (Warehouse Management System) y un TMS (Transportation Management System). Diseñada para empresas de transporte B2B que requieren gestión integral: inventarios estáticos en almacén, flotas tipificadas (refrigerado, HAZMAT, blindado), redes de distribución Hub & Spoke, trazabilidad por checkpoints y documentación legal mexicana (Carta Porte, POD).
**Objetivo Técnico:** Implementación de **Clean Architecture** y **Domain-Driven Design (DDD)** en un entorno de producción utilizando .NET 8, Angular, React, Docker y PostgreSQL.
---
## Características (MVP Final)
### Core
- [x] Documentación de requerimientos y esquema de base de datos
- [ ] **Arquitectura Base:** Configuración de Clean Architecture y estructura de proyecto
- [ ] **Multi-tenancy:** Aislamiento de datos por cliente/empresa
### Gestión de Flotilla
- [ ] **Camiones Tipificados:** DryBox, Refrigerado, HAZMAT, Plataforma, Blindado
- [ ] **Choferes:** Asignación fija (default_truck) y dinámica (current_truck)
- [ ] **Bitácora de Flotilla:** Historial de cambios de vehículo (FleetLog)
### Red Logística (Hub & Spoke)
- [ ] **Nodos de Red:** RegionalHub, CrossDock, Warehouse, Store, SupplierPlant
- [ ] **Códigos Aeroportuarios:** Identificadores únicos por ubicación (MTY, GDL, MM)
- [ ] **Enlaces de Red:** Conexiones FirstMile, LineHaul, LastMile
- [ ] **Rutas Predefinidas:** RouteBlueprint con paradas y tiempos de tránsito
### Envíos y Trazabilidad
- [ ] **Manifiesto de Carga:** Items con peso volumétrico y valor declarado
- [ ] **Restricciones de Compatibilidad:** Cadena de frío, HAZMAT, Alto valor
- [ ] **Checkpoints:** Bitácora de eventos (Loaded, QrScanned, ArrivedHub, Delivered)
- [ ] **QR Handshake:** Transferencia de custodia digital mediante escaneo
### Documentación B2B
- [ ] **Orden de Servicio:** Petición inicial del cliente
- [ ] **Carta Porte (Waybill):** Documento legal SAT para transporte
- [ ] **Manifiesto de Carga:** Checklist de estiba para almacenista
- [ ] **Hoja de Ruta:** Itinerario con ventanas de entrega
- [ ] **POD (Proof of Delivery):** Firma digital del receptor
### Operación
- [ ] **Seguridad:** Autenticación JWT con roles (Admin/Chofer/Almacenista)
- [ ] **Dashboard:** KPIs operativos en tiempo real
- [ ] **Modo Demo:** Acceso para reclutadores sin registro previo
---
## Stack Tecnológico
| Capa | Tecnología | Usuario |
| :----------------------- | :------------------------------------ | :------------- |
| **Backend** | C# / .NET 8 Web API | - |
| **Base de Datos** | PostgreSQL 16 | - |
| **ORM** | Entity Framework Core (Code First) | - |
| **Frontend (Admin)** | Angular 18+ (Material Design) | Admin |
| **Frontend (Operación)** | React (PWA) | Chofer/Almacén |
| **Infraestructura** | Docker Compose, Nginx (Reverse Proxy) | - |
| **Hosting** | Digital Ocean Droplet (Linux) | - |
---
## Arquitectura
El proyecto sigue estrictamente **Clean Architecture** para desacoplar la lógica de negocio de la infraestructura:
```mermaid
graph TD
User[Cliente / API Request] --> API
subgraph "Core"
Domain[Domain Layer
Entidades y Reglas de Negocio]
App[Application Layer
Interfaces y Casos de Uso]
end
subgraph "External"
Infra[Infrastructure Layer
EF Core, Servicios Externos]
end
API --> App
App --> Domain
API --> Infra
Infra --> App
Infra --> Domain
```
### Topología de Red (Hub & Spoke)
```mermaid
graph TD
subgraph "Proveedores"
A[EMP-A]
B[EMP-B]
end
subgraph "Red de Hubs"
MM((MM))
CC((CC))
end
subgraph "Clientes"
G[EMP-G]
end
B -->|FirstMile| MM
MM ==>|LineHaul| CC
CC -->|LastMile| G
```
---
## Estructura del Proyecto
```
src/
├── Parhelion.Domain/ # Núcleo: Entidades y Excepciones (Sin dependencias)
├── Parhelion.Application/ # Reglas: DTOs, Interfaces, Validaciones
├── Parhelion.Infrastructure/ # Persistencia: DbContext, Repositorios, Migraciones
└── Parhelion.API/ # Entrada: Controllers, JWT Config, DI
```
---
## Documentación
| Documento | Descripción |
| :----------------------------------------------- | :-------------------------------------------- |
| [Requerimientos (MVP)](./requirments.md) | Especificación funcional completa del sistema |
| [Esquema de Base de Datos](./database-schema.md) | Diagrama ER, entidades y reglas de negocio |
---
## Entidades Principales
| Entidad | Descripción |
| :------------------- | :--------------------------------------------- |
| `Tenant` | Cliente/Empresa (Multi-tenancy) |
| `Location` | Nodo de red con código único (Hub, Store, etc) |
| `Truck` | Vehículo tipificado con capacidad |
| `Driver` | Chofer con camión fijo y actual |
| `Shipment` | Envío con ruta asignada y documentos |
| `ShipmentItem` | Partida del manifiesto con peso volumétrico |
| `ShipmentCheckpoint` | Evento de trazabilidad |
| `RouteBlueprint` | Ruta predefinida con paradas |
| `NetworkLink` | Conexión entre nodos (adyacencia) |
---
## Despliegue
| Servicio | URL |
| :-------------- | :-------------------- |
| **API Backend** | `api.macrostasis.lat` |
| **Frontend** | `macrostasis.lat` |
---
## Autor
**MetaCodeX** | 2025
_Proyecto desarrollado como portafolio profesional de Arquitectura de Software y Sistemas Logísticos B2B._