PHPackages                             laymont/container-repair-cedex - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PSR &amp; Standards](/categories/psr-standards)
4. /
5. laymont/container-repair-cedex

ActiveLibrary[PSR &amp; Standards](/categories/psr-standards)

laymont/container-repair-cedex
==============================

Laravel package for ISO 9897 (CEDEX) container repair management with DDD architecture

v0.1.0(1mo ago)00[1 PRs](https://github.com/laymont/container-repair-cedex/pulls)MITPHPPHP ^8.3CI passing

Since May 28Pushed 1mo agoCompare

[ Source](https://github.com/laymont/container-repair-cedex)[ Packagist](https://packagist.org/packages/laymont/container-repair-cedex)[ Docs](https://github.com/laymont/container-repair-cedex)[ RSS](/packages/laymont-container-repair-cedex/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (1)Dependencies (4)Versions (3)Used By (0)

laymont/container-repair-cedex
==============================

[](#laymontcontainer-repair-cedex)

Laravel package for ISO 9897 (CEDEX) container repair management with DDD architecture.

Objetivo
--------

[](#objetivo)

Este paquete proporciona una capa de lógica de negocio que estandariza las reparaciones de contenedores marítimos bajo la norma **ISO 9897 (CEDEX)**, funcionando de forma sinérgica con el paquete base `shicontstand`.

Características
---------------

[](#características)

- **DDD-Lite Architecture**: Dominio CEDEX independiente de Laravel
- **Value Objects**: Clases inmutables para códigos de la norma ISO 9897
- **Domain Services**: Validación de combinaciones Daño-Reparación según la norma
- **Actions**: Procesos multi-paso (ValidateRepairEstimate, FormatCedexMessage)
- **DTOs**: Transferencia de datos tipada
- **Bridge Pattern**: Integración con shicontstand sin modificar su código
- **PHP 8.3+ Strict Typing**: Tipado estricto en todo el código
- **Laravel 11/12/13 Compatible**: Compatible con múltiples versiones de Laravel

Fundamentos del Dominio: ISO 9897 (CEDEX)
-----------------------------------------

[](#fundamentos-del-dominio-iso-9897-cedex)

El paquete se basa en los pilares del **Container Equipment Data Exchange**:

- **Anexo C (Localización)**: Sistema de coordenadas para identificar el punto exacto del daño
- **Anexo D (Tipos de Daño)**: Códigos de dos caracteres (ej. `BR` - Broken)
- **Anexo F (Tipos de Reparación)**: Acciones estandarizadas (ej. `RP` - Replace)
- **Anexo I (Componentes)**: Catálogo de partes físicas con validación cruzada

Instalación
-----------

[](#instalación)

```
composer require laymont/container-repair-cedex
```

Configuración
-------------

[](#configuración)

El paquete se registra automáticamente en Laravel. No requiere configuración adicional.

Uso
---

[](#uso)

### Value Objects

[](#value-objects)

```
use Laymont\Cedex\Domain\ValueObjects\DamageCode;
use Laymont\Cedex\Domain\ValueObjects\ComponentCode;
use Laymont\Cedex\Domain\ValueObjects\LocationCode;

$damageCode = new DamageCode('BR'); // Broken
$componentCode = new ComponentCode('FP'); // Front Panel
$locationCode = new LocationCode('L'); // Left side
```

### Domain Services

[](#domain-services)

```
use Laymont\Cedex\Domain\Services\RepairValidator;

$validator = new RepairValidator();
$isValid = $validator->validateCombination($damageCode, $componentCode, $repairCode);
```

### Actions

[](#actions)

```
use Laymont\Cedex\Actions\ValidateRepairEstimate;

$action = new ValidateRepairEstimate();
$result = $action->execute($repairData);
```

### Bridge con shicontstand

[](#bridge-con-shicontstand)

```
use Laymont\Cedex\Infrastructure\Bridge\ShicontstandBridge;

$bridge = new ShicontstandBridge();
$validRepairs = $bridge->getValidRepairsForContainer($containerType);
```

Arquitectura
------------

[](#arquitectura)

### Capa de Dominio (Pure PHP)

[](#capa-de-dominio-pure-php)

- **Value Objects**: `DamageCode`, `ComponentCode`, `LocationCode`, `RepairCode`
- **Domain Services**: `RepairValidator`, `CedexFormatter`
- **Exceptions**: `CedexValidationException`, `InvalidCodeException`

### Capa de Aplicación

[](#capa-de-aplicación)

- **Actions**: `ValidateRepairEstimate`, `FormatCedexMessage`
- **DTOs**: `RepairEstimateDTO`, `CedexMessageDTO`

### Capa de Infraestructura (Laravel)

[](#capa-de-infraestructura-laravel)

- **Service Providers**: `CedexServiceProvider`
- **Repositories**: `DamageCodeRepository`, `ComponentCodeRepository`
- **Bridge**: `ShicontstandBridge`

Compatibilidad
--------------

[](#compatibilidad)

- PHP: `^8.3`
- Laravel: `^11.0|^12.0|^13.0`

Testing
-------

[](#testing)

```
./vendor/bin/pest
```

Contribución
------------

[](#contribución)

1. Haz un fork del repositorio.
2. Crea una rama: `git checkout -b feature/nueva-funcionalidad`.
3. Realiza cambios y hace commit: `git commit -m "Agregando..."`.
4. Sube: `git push origin feature/nueva-funcionalidad`.
5. Abre un Pull Request.

Donaciones
----------

[](#donaciones)

Si encuentras útil este paquete y deseas apoyar su desarrollo y mantenimiento, puedes considerar hacer una donación.

### Zinli

[](#zinli)

- **ID de usuario:** 3-002-58546608-36
- **Recargar:**

### Visa Prepagada Zinli

[](#visa-prepagada-zinli)

- **Número:** 4850460061276928

### Binance Pay

[](#binance-pay)

- **Binance Pay ID:** 206414132

¡Gracias por tu apoyo!

Licencia
--------

[](#licencia)

MIT.

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance92

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

57d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/13275422?v=4)[Laymont Arratia](/maintainers/laymont)[@laymont](https://github.com/laymont)

---

Top Contributors

[![laymont](https://avatars.githubusercontent.com/u/13275422?v=4)](https://github.com/laymont "laymont (1 commits)")

---

Tags

containerlaraveldddshippingrepaircedexiso-9897

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/laymont-container-repair-cedex/health.svg)

```
[![Health](https://phpackages.com/badges/laymont-container-repair-cedex/health.svg)](https://phpackages.com/packages/laymont-container-repair-cedex)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.3M347](/packages/psalm-plugin-laravel)[api-platform/laravel

API Platform support for Laravel

58174.6k17](/packages/api-platform-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
