sigo-entities 1.2.309 → 1.2.310
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/CLAUDE.md +70 -0
- package/.claude/settings.json +21 -0
- package/.claude/skills/mdl-administracion/SKILL.md +60 -0
- package/.claude/skills/mdl-configuracion/SKILL.md +49 -0
- package/.claude/skills/ope-im/SKILL.md +71 -0
- package/.claude/skills/ope-logistica/SKILL.md +60 -0
- package/.claude/skills/ope-pex/SKILL.md +106 -0
- package/.claude/skills/shared-dtos/SKILL.md +76 -0
- package/dist/index.d.mts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +17 -12
- package/dist/index.mjs +15 -10
- package/package.json +1 -1
- package/.ai_context.md +0 -50
- package/build.log +0 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
Frontend: C:\Users\USER\Desktop\Michael\5_cobra\1_workspace\1_projects\SIGO\Frontend\sigo-frontend-2
|
|
4
|
+
Backend: C:\Users\USER\Desktop\Michael\5_cobra\1_workspace\1_projects\SIGO\Backend\sigo-backend
|
|
5
|
+
Sigo-entities: C:\Users\USER\Desktop\Michael\5_cobra\1_workspace\1_projects\SIGO\npm\sigo-entities
|
|
6
|
+
|
|
7
|
+
## Descripción
|
|
8
|
+
Paquete NPM interno — contrato compartido de tipos, validación y transformación entre `sigo-frontend` y `sigo-backend`.
|
|
9
|
+
|
|
10
|
+
## Comandos
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm run build # Compila con tsup (CJS + ESM) y resuelve path aliases con tsc-alias
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Arquitectura
|
|
17
|
+
|
|
18
|
+
El paquete exporta todo desde `src/index.ts`, que re-exporta por dominio:
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
src/
|
|
22
|
+
administracion/ — asistencia, personal, etc.
|
|
23
|
+
configuracion/ — usuarios, perfiles
|
|
24
|
+
logistica/ — bodega, items, almacen
|
|
25
|
+
operativa/ — mantenimientos, procesos
|
|
26
|
+
programados/ — tareas programadas
|
|
27
|
+
shared/ — DTOs, enums, types y utils reutilizables
|
|
28
|
+
v2/ — versión 2 de entidades/DTOs
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Cada dominio tiene su propio `index.ts` que agrega exports de sus submódulos. El entry point es `dist/index.js` (CJS) / `dist/index.mjs` (ESM) con tipos en `dist/index.d.ts`.
|
|
32
|
+
|
|
33
|
+
## Patrón de entidades y DTOs
|
|
34
|
+
|
|
35
|
+
**ENTITY**: Representa un documento completo de una colección MongoDB.
|
|
36
|
+
**DTO**: Representa una sub-estructura reutilizable o forma de datos anidados.
|
|
37
|
+
|
|
38
|
+
Ejemplo de propiedad con el patrón completo:
|
|
39
|
+
|
|
40
|
+
```ts
|
|
41
|
+
@Expose()
|
|
42
|
+
@IsDefined({ message: "El campo X es obligatorio" })
|
|
43
|
+
@IsString()
|
|
44
|
+
@Length(0, 75)
|
|
45
|
+
@Transform(({ value }) => value?.toUpperCase().trim())
|
|
46
|
+
Codigo: string = ''
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Patrones clave:
|
|
50
|
+
|
|
51
|
+
- Todas las propiedades se inicializan con valores por defecto (strings vacíos, `0`, `new Class()`)
|
|
52
|
+
- Objetos anidados usan `@Type(() => DtoClass)` + `@ValidateNested()`
|
|
53
|
+
- Arrays usan `@IsArray()` + `@ValidateNested({ each: true })`
|
|
54
|
+
- Texto normalmente se transforma con `.toUpperCase().trim()`
|
|
55
|
+
|
|
56
|
+
## Path aliases (tsconfig)
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
"@shared-dto/*" → "src/shared/dto/*"
|
|
60
|
+
"@shared-types/*" → "src/shared/types/*"
|
|
61
|
+
"@shared-enums/*" → "src/shared/enums/*"
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Convenciones importantes
|
|
65
|
+
|
|
66
|
+
- Cada colección MongoDB tiene exactamente una `ENTITY`
|
|
67
|
+
- Naming: `[Nombre]ENTITY` y `[Nombre]DTO`
|
|
68
|
+
- Este paquete es la única fuente de verdad para los tipos — no duplicar en front ni back
|
|
69
|
+
- Cualquier cambio en una entidad impacta ambos proyectos — cuidado con breaking changes
|
|
70
|
+
- `reflect-metadata` se importa en el `src/index.ts` raíz (requerido por class-validator/transformer)
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"allow": [
|
|
3
|
+
"Read(//c/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/Frontend/sigo-frontend-2/**)",
|
|
4
|
+
"Read(//c/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/Backend/sigo-backend/**)",
|
|
5
|
+
"Read(//c/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/npm/sigo-entities/**)",
|
|
6
|
+
"Read(//c/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/npm/sigo-package/**)",
|
|
7
|
+
"Read(.env)",
|
|
8
|
+
"Read(.env.*)"
|
|
9
|
+
],
|
|
10
|
+
"env": {
|
|
11
|
+
"SIGO_FRONTEND": "C:/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/Frontend/sigo-frontend-2",
|
|
12
|
+
"SIGO_BACKEND": "C:/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/Backend/sigo-backend",
|
|
13
|
+
"SIGO_ENTITIES": "C:/Users/USER/Desktop/Michael/5_cobra/1_workspace/1_projects/SIGO/npm/sigo-entities"
|
|
14
|
+
},
|
|
15
|
+
"permissions": {
|
|
16
|
+
"deny": [
|
|
17
|
+
"Read(node_modules/**)",
|
|
18
|
+
"Read(dist/**)"
|
|
19
|
+
]
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mdl-administracion
|
|
3
|
+
description: >
|
|
4
|
+
Dominio administracion/ — base de datos MDL_ADMINISTRACION. Usar cuando se trabaje con
|
|
5
|
+
órdenes de trabajo (OT), asistencia, mano de obra, precios, baremos, documentación PEX,
|
|
6
|
+
zonas de trabajo, o cualquier entidad/DTO dentro de src/administracion/.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Skill: MDL_ADMINISTRACION
|
|
10
|
+
|
|
11
|
+
Carpeta: `src/administracion/`
|
|
12
|
+
Base de datos MongoDB: **MDL_ADMINISTRACION**
|
|
13
|
+
|
|
14
|
+
También contiene parte de **MDL_CATALOGO** — datos de referencia como precios, tipos y unidades.
|
|
15
|
+
|
|
16
|
+
## Sub-dominios principales
|
|
17
|
+
|
|
18
|
+
| Carpeta | Contenido |
|
|
19
|
+
|---|---|
|
|
20
|
+
| `ot/` | Órdenes de Trabajo — vigencia, estado |
|
|
21
|
+
| `otglobal/` | OT globales |
|
|
22
|
+
| `asistencia/` | Registro de asistencia y resumen |
|
|
23
|
+
| `mano-obra-unidad-obra/` | Relación mano de obra ↔ unidad de obra |
|
|
24
|
+
| `mano_obra_mtto/` | Mano de obra en mantenimiento |
|
|
25
|
+
| `precio-mano-obra/` | Precios de MO (global, empresa, precio actual) — **MDL_CATALOGO** |
|
|
26
|
+
| `precio material/` | Precios de materiales — **MDL_CATALOGO** |
|
|
27
|
+
| `precio especialidad/` | Precios por especialidad y agencia — **MDL_CATALOGO** |
|
|
28
|
+
| `unidad_obra/` | Catálogo de unidades de obra — **MDL_CATALOGO** |
|
|
29
|
+
| `unidad obra material/` | Materiales por unidad de obra — **MDL_CATALOGO** |
|
|
30
|
+
| `zona trabajo/` | Zonas de trabajo y contratos OT |
|
|
31
|
+
| `documentacion-pex/` | Documentación de procesos PEX |
|
|
32
|
+
| `documentacion-baremo-pex/` | Baremos para documentación PEX |
|
|
33
|
+
| `tipo movil/` | Tipos de vehículo/móvil — **MDL_CATALOGO** |
|
|
34
|
+
| `tipo_clave/` | Tipos de clave — **MDL_CATALOGO** |
|
|
35
|
+
| `rm_zona_actividad/` | Relación RM zona-actividad |
|
|
36
|
+
| `ItemExtra/` | Ítems extra (SKU, proveedor) |
|
|
37
|
+
| `EstadoInterno/` | Estados internos de OT |
|
|
38
|
+
| `permisos-app/` | Permisos de la app |
|
|
39
|
+
| `mail structure/` | Estructura de destinatarios de mail |
|
|
40
|
+
| `key integracion/` | Claves de integración externa |
|
|
41
|
+
| `PrecioAgencia_mam_onnet/` | Precios de agencia MAM/Onnet |
|
|
42
|
+
| `chile 9512 paquetizado mano obra/` | Chile: MO paquetizada contrato 9512 |
|
|
43
|
+
| `chile 9512 paquetizado material/` | Chile: material paquetizado contrato 9512 |
|
|
44
|
+
|
|
45
|
+
## Naming
|
|
46
|
+
|
|
47
|
+
- Entidades: `[Nombre]ENTITY` — representan una colección MongoDB completa
|
|
48
|
+
- DTOs: `[Nombre]DTO` — sub-estructuras anidadas o reutilizables
|
|
49
|
+
- Ejemplo: `OtENTITY`, `VigenciaOtDTO`, `PrecioManoObraENTITY`, `PrecioEmpresaDTO`
|
|
50
|
+
|
|
51
|
+
## Ubicación de archivos
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
src/administracion/
|
|
55
|
+
└── [nombre-modulo]/
|
|
56
|
+
└── shared/
|
|
57
|
+
├── [nombre].entity.ts ← ENTITY principal
|
|
58
|
+
└── dto/
|
|
59
|
+
└── [nombre]-dto.ts ← DTOs anidados
|
|
60
|
+
```
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mdl-configuracion
|
|
3
|
+
description: >
|
|
4
|
+
Dominio configuracion/ — base de datos MDL_CONFIGURACION. Usar cuando se trabaje con
|
|
5
|
+
usuarios, perfiles, empresas, sistema, notificaciones, cargos, contratos OT,
|
|
6
|
+
o cualquier entidad/DTO dentro de src/configuracion/.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Skill: MDL_CONFIGURACION
|
|
10
|
+
|
|
11
|
+
Carpeta: `src/configuracion/`
|
|
12
|
+
Base de datos MongoDB: **MDL_CONFIGURACION**
|
|
13
|
+
|
|
14
|
+
## Sub-dominios principales
|
|
15
|
+
|
|
16
|
+
| Carpeta | Contenido |
|
|
17
|
+
|---|---|
|
|
18
|
+
| `usuarios/` | Usuarios del sistema |
|
|
19
|
+
| `usuarios autoinventario/` | Usuarios del módulo autoinventario |
|
|
20
|
+
| `perfiles/` | Perfiles de acceso y sistemas asociados |
|
|
21
|
+
| `personal/` | Datos del personal |
|
|
22
|
+
| `cargo personal/` | Cargos/roles del personal |
|
|
23
|
+
| `empresa/` | Empresas (datos generales, GIA, grupo empresa, representante legal, tipo) |
|
|
24
|
+
| `sistema/` | Configuración general del sistema |
|
|
25
|
+
| `opcion sistema/` | Opciones del sistema |
|
|
26
|
+
| `tipo opcion sistema/` | Tipos de opciones del sistema |
|
|
27
|
+
| `tipo especialidad mo/` | Tipos de especialidad de mano de obra |
|
|
28
|
+
| `tipo clave/` | Tipos de clave de configuración |
|
|
29
|
+
| `contrato ot/` | Contratos de órdenes de trabajo |
|
|
30
|
+
| `notificaciones/` | Notificaciones (data adicional) |
|
|
31
|
+
| `scraping credential/` | Credenciales para scraping |
|
|
32
|
+
| `theme config country/` | Configuración de tema por país |
|
|
33
|
+
|
|
34
|
+
## Naming
|
|
35
|
+
|
|
36
|
+
- Entidades: `[Nombre]ENTITY`
|
|
37
|
+
- DTOs: `[Nombre]DTO`
|
|
38
|
+
- Ejemplo: `UsuarioENTITY`, `EmpresaENTITY`, `DatosGeneralesDTO`, `SistemaDTO`, `PerfilENTITY`
|
|
39
|
+
|
|
40
|
+
## Ubicación de archivos
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
src/configuracion/
|
|
44
|
+
└── [nombre-modulo]/
|
|
45
|
+
└── shared/
|
|
46
|
+
├── [nombre].entity.ts
|
|
47
|
+
└── dto/
|
|
48
|
+
└── [nombre]-dto.ts
|
|
49
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ope-im
|
|
3
|
+
description: >
|
|
4
|
+
Dominio operativa/ — base de datos OPE_IM. Usar cuando se trabaje con
|
|
5
|
+
mantenimientos, procesos de integración externa (TOA, WAOO, WIN, Fibramas, Onnet,
|
|
6
|
+
Movistar, Somacyl, Tuves, TDC), órdenes de liquidación, order stock,
|
|
7
|
+
o cualquier entidad/DTO dentro de src/operativa/.
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Skill: OPE_IM
|
|
11
|
+
|
|
12
|
+
Carpeta: `src/operativa/`
|
|
13
|
+
Base de datos MongoDB: **OPE_IM**
|
|
14
|
+
|
|
15
|
+
Contiene integraciones con sistemas externos de operadores de telecomunicaciones y procesos de mantenimiento.
|
|
16
|
+
|
|
17
|
+
## Sub-dominios principales
|
|
18
|
+
|
|
19
|
+
### `mantenimientos/`
|
|
20
|
+
Entidades de mantenimiento operativo.
|
|
21
|
+
|
|
22
|
+
### `procesos/`
|
|
23
|
+
Integraciones con sistemas externos por operador:
|
|
24
|
+
|
|
25
|
+
| Carpeta | Operador / Sistema |
|
|
26
|
+
|---|---|
|
|
27
|
+
| `TOA orden liquidacion/` | TOA — órdenes de liquidación |
|
|
28
|
+
| `TOA orden liquidacion_db/` | TOA — órdenes de liquidación (versión BD) |
|
|
29
|
+
| `TOA Claro order stock/` | TOA Claro — order stock |
|
|
30
|
+
| `TOA order stock/` | TOA — order stock genérico |
|
|
31
|
+
| `toa_claro/` | TOA Claro (scraper + shared) |
|
|
32
|
+
| `toa_movistar/` | TOA Movistar |
|
|
33
|
+
| `toa_movistar_db/` | TOA Movistar (versión BD) |
|
|
34
|
+
| `baremos_toa/` | Baremos TOA (Chile + shared) |
|
|
35
|
+
| `liquidadas_toa/` | Órdenes TOA liquidadas |
|
|
36
|
+
| `valorizadas_toa/` | Órdenes TOA valorizadas |
|
|
37
|
+
| `onnet_fibra/` | Onnet Fibra (DTOs + utils) |
|
|
38
|
+
| `fibramas_order/` | Fibramas — órdenes |
|
|
39
|
+
| `fibramas_order_db/` | Fibramas — órdenes (versión BD) |
|
|
40
|
+
| `win_order/` | WIN — órdenes |
|
|
41
|
+
| `win_order_db/` | WIN — órdenes (versión BD) |
|
|
42
|
+
| `waoo_order_stock/` | WAOO — order stock |
|
|
43
|
+
| `cliente_waoo/` | WAOO — clientes |
|
|
44
|
+
| `somacyl_order/` | Somacyl — órdenes |
|
|
45
|
+
| `tuves/` | Tuves |
|
|
46
|
+
| `tuves_order_stock/` | Tuves — order stock |
|
|
47
|
+
| `tdc/` | TDC (Chile — DTOs + interfaces) |
|
|
48
|
+
| `stb_dth_toaperu/` | STB DTH TOA Perú |
|
|
49
|
+
| `order stock/` | Order stock genérico |
|
|
50
|
+
| `request number TTL/` | Request number TTL |
|
|
51
|
+
|
|
52
|
+
## Naming
|
|
53
|
+
|
|
54
|
+
- Entidades: `[Nombre]ENTITY`
|
|
55
|
+
- DTOs: `[Nombre]DTO`
|
|
56
|
+
- Ejemplo: `ToaOrdenLiquidacionENTITY`, `BaremoToaENTITY`, `OnnetFibraENTITY`
|
|
57
|
+
|
|
58
|
+
## Ubicación de archivos
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
src/operativa/
|
|
62
|
+
├── mantenimientos/
|
|
63
|
+
│ └── shared/
|
|
64
|
+
│ └── [nombre].entity.ts
|
|
65
|
+
└── procesos/
|
|
66
|
+
└── [nombre-operador]/
|
|
67
|
+
└── shared/
|
|
68
|
+
├── [nombre].entity.ts
|
|
69
|
+
└── dto/
|
|
70
|
+
└── [nombre]-dto.ts
|
|
71
|
+
```
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ope-logistica
|
|
3
|
+
description: >
|
|
4
|
+
Dominio logistica/ — base de datos OPE_LOGISTICA. Usar cuando se trabaje con
|
|
5
|
+
almacenes, bodega, stock, inventario, movimientos de almacén, consumo de material,
|
|
6
|
+
devoluciones, ítems, kits, o cualquier entidad/DTO dentro de src/logistica/.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Skill: OPE_LOGISTICA
|
|
10
|
+
|
|
11
|
+
Carpeta: `src/logistica/`
|
|
12
|
+
Base de datos MongoDB: **OPE_LOGISTICA**
|
|
13
|
+
|
|
14
|
+
También contiene parte de **MDL_CATALOGO** — catálogo de ítems, tipos de almacén, unidades de medida.
|
|
15
|
+
|
|
16
|
+
## Sub-dominios principales
|
|
17
|
+
|
|
18
|
+
| Carpeta | Contenido |
|
|
19
|
+
|---|---|
|
|
20
|
+
| `almacen/` | Almacenes |
|
|
21
|
+
| `almacen extra/` | Almacenes extra |
|
|
22
|
+
| `bodega/` | Bodegas |
|
|
23
|
+
| `stock almacen/` | Stock en almacén |
|
|
24
|
+
| `stock almacen equipos/` | Stock de equipos en almacén |
|
|
25
|
+
| `stock personal/` | Stock asignado a personal |
|
|
26
|
+
| `stock personal equipos/` | Stock de equipos del personal |
|
|
27
|
+
| `movimiento almacen/` | Movimientos de almacén |
|
|
28
|
+
| `ingreso almacen/` | Ingresos a almacén |
|
|
29
|
+
| `salida almacen/` | Salidas de almacén |
|
|
30
|
+
| `devolucion almacen/` | Devoluciones de almacén |
|
|
31
|
+
| `consumo material/` | Consumo de material (incluye variante Alemania) |
|
|
32
|
+
| `consumos P117/` | Consumos protocolo P117 |
|
|
33
|
+
| `kitconsumo/` | Kits de consumo |
|
|
34
|
+
| `autoinventario/` | Autoinventario |
|
|
35
|
+
| `transaccion folios/` | Transacciones con folios |
|
|
36
|
+
| `atencion ordenes liquidadas/` | Atención de órdenes liquidadas |
|
|
37
|
+
| `items/` | Catálogo de ítems (incluye variante Alemania) — **MDL_CATALOGO** |
|
|
38
|
+
| `gran familia item/` | Gran familia de ítems — **MDL_CATALOGO** |
|
|
39
|
+
| `tipo almacen/` | Tipos de almacén — **MDL_CATALOGO** |
|
|
40
|
+
| `tipo movimiento almacen/` | Tipos de movimiento de almacén — **MDL_CATALOGO** |
|
|
41
|
+
| `tipo stock/` | Tipos de stock — **MDL_CATALOGO** |
|
|
42
|
+
| `unidad medida/` | Unidades de medida — **MDL_CATALOGO** |
|
|
43
|
+
| `procesos/navisionpreorden/` | Pre-órdenes Navision (DTOs, enums, requestDtos) |
|
|
44
|
+
|
|
45
|
+
## Naming
|
|
46
|
+
|
|
47
|
+
- Entidades: `[Nombre]ENTITY`
|
|
48
|
+
- DTOs: `[Nombre]DTO`
|
|
49
|
+
- Ejemplo: `AlmacenENTITY`, `AlmacenDTO`, `StockAlmacenENTITY`, `MovimientoAlmacenENTITY`
|
|
50
|
+
|
|
51
|
+
## Ubicación de archivos
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
src/logistica/
|
|
55
|
+
└── [nombre-modulo]/
|
|
56
|
+
└── shared/
|
|
57
|
+
├── [nombre].entity.ts
|
|
58
|
+
└── dto/
|
|
59
|
+
└── [nombre]-dto.ts
|
|
60
|
+
```
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ope-pex
|
|
3
|
+
description: >
|
|
4
|
+
Dominio programados/ — base de datos OPE_PEX. Usar cuando se trabaje con
|
|
5
|
+
procesos programados de ejecución: obra, trabajo, cubicación, macroobra,
|
|
6
|
+
reservas (MO y material), reportes de producción, liberación de pagos,
|
|
7
|
+
mantenimientos de catálogos (agencia, cuadrilla, periodo, presupuesto),
|
|
8
|
+
o cualquier entidad/DTO dentro de src/programados/.
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Skill: OPE_PEX
|
|
12
|
+
|
|
13
|
+
Carpeta: `src/programados/`
|
|
14
|
+
Base de datos MongoDB: **OPE_PEX**
|
|
15
|
+
|
|
16
|
+
Procesos programados de ejecución — el dominio más grande del paquete.
|
|
17
|
+
|
|
18
|
+
## Sub-dominios principales
|
|
19
|
+
|
|
20
|
+
### `Reportes/`
|
|
21
|
+
|
|
22
|
+
| Carpeta | Contenido |
|
|
23
|
+
|---|---|
|
|
24
|
+
| `LiberacionDePagos/` | Reporte de liberación de pagos (DTOs + requestDtos) |
|
|
25
|
+
| `ReporteProduccion/` | Reporte de producción (Alemania, Chile, Colombia — baremos y resumen) |
|
|
26
|
+
| `RptProduccionCurso_Baremos_Fases/` | Reporte producción en curso con baremos y fases |
|
|
27
|
+
|
|
28
|
+
### `mantenimientos/`
|
|
29
|
+
Catálogos y configuraciones base de OPE_PEX:
|
|
30
|
+
|
|
31
|
+
| Carpeta | Contenido |
|
|
32
|
+
|---|---|
|
|
33
|
+
| `agencia/` | Agencias |
|
|
34
|
+
| `area_gom/` | Áreas GOM |
|
|
35
|
+
| `centro costos/` | Centros de costo |
|
|
36
|
+
| `contrato-pagos/` | Contratos de pago (Alemania) |
|
|
37
|
+
| `cuadrilla/` | Cuadrillas de trabajo |
|
|
38
|
+
| `mano obra global/` | Mano de obra global |
|
|
39
|
+
| `mano-obra-baremo/` | Mano de obra × baremo |
|
|
40
|
+
| `periodo/` | Períodos |
|
|
41
|
+
| `presupuesto-ot/` | Presupuesto de OT |
|
|
42
|
+
| `rm actividad/` | RM actividad |
|
|
43
|
+
| `rm comuna/` | RM comuna |
|
|
44
|
+
| `rm mano obra/` | RM mano de obra |
|
|
45
|
+
| `rm paquetizado/` | RM paquetizado |
|
|
46
|
+
| `rm-material/` | RM material |
|
|
47
|
+
| `rm-zonas-actividad/` | RM zonas de actividad |
|
|
48
|
+
| `tipo actividad mo/` | Tipos de actividad MO |
|
|
49
|
+
| `tipo obra/` | Tipos de obra |
|
|
50
|
+
|
|
51
|
+
### `procesos/`
|
|
52
|
+
Procesos de ejecución programada:
|
|
53
|
+
|
|
54
|
+
| Carpeta | Contenido |
|
|
55
|
+
|---|---|
|
|
56
|
+
| `obra/` | Obra (Alemania AL02/AL04, Chile 9512, Colombia 9612, Perú 9112, shared) |
|
|
57
|
+
| `trabajo/` | Trabajo (Alemania + shared) |
|
|
58
|
+
| `macroobra/` | Macro-obra (Chile, Perú, shared) |
|
|
59
|
+
| `trabajoMacroObra/` | Trabajo en macro-obra (Alemania + shared) |
|
|
60
|
+
| `cubicacion/` | Cubicación (Alemania, Chile, Colombia, Perú, shared) |
|
|
61
|
+
| `reservaManoObra/` | Reserva de mano de obra (Alemania + shared) |
|
|
62
|
+
| `reservaManoObraRegularizacion/` | Regularización de reserva MO |
|
|
63
|
+
| `reservaMaterial/` | Reserva de material |
|
|
64
|
+
| `precioContratistaIssue/` | Precio contratista — issues (Alemania AL02 + shared) |
|
|
65
|
+
| `precioContratistaMO/` | Precio contratista MO (Alemania AL02/AL04 + shared) |
|
|
66
|
+
| `precioContratistaMaterial/` | Precio contratista material |
|
|
67
|
+
| `gom/` | GOM (Colombia + shared) |
|
|
68
|
+
| `Issue/` | Issues generales |
|
|
69
|
+
| `addressList_AL04/` | Lista de direcciones AL04 (Alemania) |
|
|
70
|
+
| `data-migrations/` | Migraciones de datos |
|
|
71
|
+
| `model mo sql/` | Modelo MO SQL (Perú) |
|
|
72
|
+
| `model obra sql/` | Modelo obra SQL (Perú) |
|
|
73
|
+
|
|
74
|
+
## Naming
|
|
75
|
+
|
|
76
|
+
- Entidades: `[Nombre]ENTITY`
|
|
77
|
+
- DTOs: `[Nombre]DTO`
|
|
78
|
+
- Ejemplo: `ObraENTITY`, `TrabajoENTITY`, `CubicacionENTITY`, `ReservaManoObraENTITY`
|
|
79
|
+
|
|
80
|
+
## Patrón por país
|
|
81
|
+
|
|
82
|
+
Muchos módulos tienen variantes por país dentro del mismo proceso:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
procesos/obra/
|
|
86
|
+
├── alemania/AL02/ ← contrato alemán AL02
|
|
87
|
+
├── alemania/AL04/ ← contrato alemán AL04
|
|
88
|
+
├── chile/9512/ ← contrato chileno 9512
|
|
89
|
+
├── colombia/9612/ ← contrato colombiano 9612
|
|
90
|
+
├── peru/9112/ ← contrato peruano 9112
|
|
91
|
+
└── shared/ ← estructura base compartida
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Ubicación de archivos
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
src/programados/
|
|
98
|
+
├── Reportes/[nombre]/shared/(dto|request_dto)/
|
|
99
|
+
├── mantenimientos/[nombre]/shared/(entity|dto)/
|
|
100
|
+
└── procesos/[nombre]/
|
|
101
|
+
├── shared/
|
|
102
|
+
│ ├── [nombre].entity.ts
|
|
103
|
+
│ ├── dto/
|
|
104
|
+
│ └── requestDto/
|
|
105
|
+
└── [pais]/dto/
|
|
106
|
+
```
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: shared-dtos
|
|
3
|
+
description: >
|
|
4
|
+
Dominio shared/ — DTOs, enums, types y utils reutilizables en todos los dominios.
|
|
5
|
+
Usar cuando se necesite un DTO transversal como CodigoNombre, UsuarioDTO, o cualquier
|
|
6
|
+
estructura que se repite en múltiples colecciones/módulos. También contiene enums
|
|
7
|
+
globales, tipos TypeScript y utilidades de transformación.
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Skill: Shared DTOs
|
|
11
|
+
|
|
12
|
+
Carpeta: `src/shared/`
|
|
13
|
+
**No tiene base de datos propia** — es código reutilizado por todos los dominios.
|
|
14
|
+
|
|
15
|
+
## Sub-carpetas
|
|
16
|
+
|
|
17
|
+
### `dto/`
|
|
18
|
+
DTOs transversales usados en múltiples entidades y dominios.
|
|
19
|
+
|
|
20
|
+
Ejemplos clave:
|
|
21
|
+
|
|
22
|
+
| DTO | Forma | Uso |
|
|
23
|
+
|---|---|---|
|
|
24
|
+
| `CodigoNombre` | `{ Codigo: string, Nombre: string }` | Referencia genérica a catálogos |
|
|
25
|
+
| `UsuarioDTO` | datos del usuario | Auditoría, asignaciones |
|
|
26
|
+
| `AlmacenDTO` | datos de almacén | Referencia a almacenes en otros módulos |
|
|
27
|
+
| `AutoinventarioDTO` | — | Inventario en múltiples dominios |
|
|
28
|
+
| `ZonasDTO` | — | Zonas de trabajo transversales |
|
|
29
|
+
|
|
30
|
+
> Si una estructura `{ Codigo, Nombre }` aparece en varios módulos, usar `CodigoNombre` de shared en vez de redefinirla.
|
|
31
|
+
|
|
32
|
+
### `enums/`
|
|
33
|
+
Enums globales del sistema:
|
|
34
|
+
|
|
35
|
+
| Archivo | Contenido |
|
|
36
|
+
|---|---|
|
|
37
|
+
| `RequeridoEnum.ts` | Enum de campos requeridos |
|
|
38
|
+
| `StateInternalOrder.ts` | Estados de órdenes internas |
|
|
39
|
+
| `StateInternalOrderTOA.ts` | Estados de órdenes TOA |
|
|
40
|
+
|
|
41
|
+
### `types/`
|
|
42
|
+
Tipos TypeScript globales:
|
|
43
|
+
|
|
44
|
+
| Archivo | Contenido |
|
|
45
|
+
|---|---|
|
|
46
|
+
| `sistema-recurso.ts` | Tipo de recurso del sistema |
|
|
47
|
+
| `state-inventory.ts` | Tipo de estado de inventario |
|
|
48
|
+
|
|
49
|
+
### `utils/`
|
|
50
|
+
Utilidades de transformación usadas en decoradores `@Transform`:
|
|
51
|
+
|
|
52
|
+
| Utilidad | Función |
|
|
53
|
+
|---|---|
|
|
54
|
+
| `trimAndUpperCaseString` | `.trim().toUpperCase()` — la más usada |
|
|
55
|
+
| `smartDateTransformer` | Transforma strings a Date de forma segura |
|
|
56
|
+
| `convertStringsToDates` | Convierte strings ISO a Date en objetos |
|
|
57
|
+
| `convertTypeNumber` | Fuerza conversión a número |
|
|
58
|
+
| `forceString` | Fuerza conversión a string |
|
|
59
|
+
| `transformToDateIfEmpty` | Date con fallback si vacío |
|
|
60
|
+
| `enumToArray` | Convierte enum a array |
|
|
61
|
+
| `entity_generator` | Genera instancias de entidad con defaults |
|
|
62
|
+
| `entity_generator_under_hyphen` | Variante con naming hyphen |
|
|
63
|
+
| `validarYFormatearDatos` | Valida y formatea datos |
|
|
64
|
+
| `validateArrayBody` | Valida arrays en body |
|
|
65
|
+
|
|
66
|
+
## Path aliases
|
|
67
|
+
|
|
68
|
+
```ts
|
|
69
|
+
import { ... } from '@shared-dto/nombre-dto' // src/shared/dto/
|
|
70
|
+
import { ... } from '@shared-types/nombre-type' // src/shared/types/
|
|
71
|
+
import { ... } from '@shared-enums/nombre-enum' // src/shared/enums/
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Regla
|
|
75
|
+
|
|
76
|
+
Antes de crear un DTO nuevo, revisar si ya existe en `shared/dto/`. Si la misma forma de datos aparece en ≥2 módulos distintos, pertenece a `shared/`.
|
package/dist/index.d.mts
CHANGED
|
@@ -8442,11 +8442,12 @@ declare class UbicacionMifibraDBDTO {
|
|
|
8442
8442
|
ubicacion: string;
|
|
8443
8443
|
}
|
|
8444
8444
|
declare class MaterialesMifibraDBDTO {
|
|
8445
|
-
key: string;
|
|
8446
8445
|
codigo: string;
|
|
8447
8446
|
descripcion: string;
|
|
8447
|
+
lote: string;
|
|
8448
8448
|
cantidad: number;
|
|
8449
8449
|
invsn: string;
|
|
8450
|
+
invtype: string;
|
|
8450
8451
|
invpool: string;
|
|
8451
8452
|
ID_StockPersonal: number;
|
|
8452
8453
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -8442,11 +8442,12 @@ declare class UbicacionMifibraDBDTO {
|
|
|
8442
8442
|
ubicacion: string;
|
|
8443
8443
|
}
|
|
8444
8444
|
declare class MaterialesMifibraDBDTO {
|
|
8445
|
-
key: string;
|
|
8446
8445
|
codigo: string;
|
|
8447
8446
|
descripcion: string;
|
|
8447
|
+
lote: string;
|
|
8448
8448
|
cantidad: number;
|
|
8449
8449
|
invsn: string;
|
|
8450
|
+
invtype: string;
|
|
8450
8451
|
invpool: string;
|
|
8451
8452
|
ID_StockPersonal: number;
|
|
8452
8453
|
}
|
package/dist/index.js
CHANGED
|
@@ -26,8 +26,8 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
// src/index.ts
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var index_exports = {};
|
|
30
|
+
__export(index_exports, {
|
|
31
31
|
ADM_RM_ZonasActividadENTITY: () => ADM_RM_ZonasActividadENTITY,
|
|
32
32
|
AcceptedDto: () => AcceptedDto,
|
|
33
33
|
ActaFinalCubicacionDTO: () => ActaFinalCubicacionDTO,
|
|
@@ -750,7 +750,7 @@ __export(src_exports, {
|
|
|
750
750
|
validateAndFormatData: () => validateAndFormatData,
|
|
751
751
|
validateArrayBody: () => validateArrayBody
|
|
752
752
|
});
|
|
753
|
-
module.exports = __toCommonJS(
|
|
753
|
+
module.exports = __toCommonJS(index_exports);
|
|
754
754
|
var import_reflect_metadata42 = require("reflect-metadata");
|
|
755
755
|
|
|
756
756
|
// src/administracion/mail structure/shared/dto/destinatario-dto.ts
|
|
@@ -44968,33 +44968,33 @@ __decorateClass([
|
|
|
44968
44968
|
(0, import_class_validator700.IsString)()
|
|
44969
44969
|
], UbicacionMifibraDBDTO.prototype, "ubicacion", 2);
|
|
44970
44970
|
var MaterialesMifibraDBDTO = class {
|
|
44971
|
-
key = "";
|
|
44972
44971
|
codigo = "";
|
|
44973
44972
|
descripcion = "";
|
|
44973
|
+
lote = "";
|
|
44974
44974
|
cantidad = 0;
|
|
44975
44975
|
invsn = "";
|
|
44976
|
+
invtype = "";
|
|
44976
44977
|
invpool = "";
|
|
44977
44978
|
ID_StockPersonal = 0;
|
|
44978
44979
|
};
|
|
44979
44980
|
__decorateClass([
|
|
44980
44981
|
(0, import_class_transformer723.Expose)(),
|
|
44981
|
-
(0, import_class_validator700.IsDefined)({ message: "El campo
|
|
44982
|
-
(0, import_class_transformer723.Transform)(({ obj }) => `${obj.codigo}${obj.invpool}${obj.invsn}`),
|
|
44982
|
+
(0, import_class_validator700.IsDefined)({ message: "El campo code es obligatorio." }),
|
|
44983
44983
|
(0, import_class_validator700.IsString)()
|
|
44984
|
-
], MaterialesMifibraDBDTO.prototype, "
|
|
44984
|
+
], MaterialesMifibraDBDTO.prototype, "codigo", 2);
|
|
44985
44985
|
__decorateClass([
|
|
44986
44986
|
(0, import_class_transformer723.Expose)(),
|
|
44987
|
-
(0, import_class_validator700.IsDefined)({ message: "El campo
|
|
44987
|
+
(0, import_class_validator700.IsDefined)({ message: "El campo description es obligatorio." }),
|
|
44988
44988
|
(0, import_class_validator700.IsString)()
|
|
44989
|
-
], MaterialesMifibraDBDTO.prototype, "
|
|
44989
|
+
], MaterialesMifibraDBDTO.prototype, "descripcion", 2);
|
|
44990
44990
|
__decorateClass([
|
|
44991
44991
|
(0, import_class_transformer723.Expose)(),
|
|
44992
|
-
(0, import_class_validator700.IsDefined)({ message: "El campo
|
|
44992
|
+
(0, import_class_validator700.IsDefined)({ message: "El campo lot es obligatorio." }),
|
|
44993
44993
|
(0, import_class_validator700.IsString)()
|
|
44994
|
-
], MaterialesMifibraDBDTO.prototype, "
|
|
44994
|
+
], MaterialesMifibraDBDTO.prototype, "lote", 2);
|
|
44995
44995
|
__decorateClass([
|
|
44996
44996
|
(0, import_class_transformer723.Expose)(),
|
|
44997
|
-
(0, import_class_validator700.IsDefined)({ message: "El campo
|
|
44997
|
+
(0, import_class_validator700.IsDefined)({ message: "El campo quantity es obligatorio." }),
|
|
44998
44998
|
(0, import_class_validator700.IsNumber)()
|
|
44999
44999
|
], MaterialesMifibraDBDTO.prototype, "cantidad", 2);
|
|
45000
45000
|
__decorateClass([
|
|
@@ -45002,6 +45002,11 @@ __decorateClass([
|
|
|
45002
45002
|
(0, import_class_validator700.IsDefined)({ message: "El campo invsn es obligatorio." }),
|
|
45003
45003
|
(0, import_class_validator700.IsString)()
|
|
45004
45004
|
], MaterialesMifibraDBDTO.prototype, "invsn", 2);
|
|
45005
|
+
__decorateClass([
|
|
45006
|
+
(0, import_class_transformer723.Expose)(),
|
|
45007
|
+
(0, import_class_validator700.IsDefined)({ message: "El campo invtype es obligatorio." }),
|
|
45008
|
+
(0, import_class_validator700.IsString)()
|
|
45009
|
+
], MaterialesMifibraDBDTO.prototype, "invtype", 2);
|
|
45005
45010
|
__decorateClass([
|
|
45006
45011
|
(0, import_class_transformer723.Expose)(),
|
|
45007
45012
|
(0, import_class_validator700.IsDefined)({ message: "El campo invpool es obligatorio." }),
|
package/dist/index.mjs
CHANGED
|
@@ -44441,7 +44441,7 @@ import {
|
|
|
44441
44441
|
import "reflect-metadata";
|
|
44442
44442
|
|
|
44443
44443
|
// src/operativa/procesos/mifibra_db/shared/dto/ubicacion-mifibra-dto.ts
|
|
44444
|
-
import { Expose as Expose696
|
|
44444
|
+
import { Expose as Expose696 } from "class-transformer";
|
|
44445
44445
|
import {
|
|
44446
44446
|
IsDefined as IsDefined220,
|
|
44447
44447
|
IsString as IsString578,
|
|
@@ -44524,33 +44524,33 @@ __decorateClass([
|
|
|
44524
44524
|
IsString578()
|
|
44525
44525
|
], UbicacionMifibraDBDTO.prototype, "ubicacion", 2);
|
|
44526
44526
|
var MaterialesMifibraDBDTO = class {
|
|
44527
|
-
key = "";
|
|
44528
44527
|
codigo = "";
|
|
44529
44528
|
descripcion = "";
|
|
44529
|
+
lote = "";
|
|
44530
44530
|
cantidad = 0;
|
|
44531
44531
|
invsn = "";
|
|
44532
|
+
invtype = "";
|
|
44532
44533
|
invpool = "";
|
|
44533
44534
|
ID_StockPersonal = 0;
|
|
44534
44535
|
};
|
|
44535
44536
|
__decorateClass([
|
|
44536
44537
|
Expose696(),
|
|
44537
|
-
IsDefined220({ message: "El campo
|
|
44538
|
-
Transform104(({ obj }) => `${obj.codigo}${obj.invpool}${obj.invsn}`),
|
|
44538
|
+
IsDefined220({ message: "El campo code es obligatorio." }),
|
|
44539
44539
|
IsString578()
|
|
44540
|
-
], MaterialesMifibraDBDTO.prototype, "
|
|
44540
|
+
], MaterialesMifibraDBDTO.prototype, "codigo", 2);
|
|
44541
44541
|
__decorateClass([
|
|
44542
44542
|
Expose696(),
|
|
44543
|
-
IsDefined220({ message: "El campo
|
|
44543
|
+
IsDefined220({ message: "El campo description es obligatorio." }),
|
|
44544
44544
|
IsString578()
|
|
44545
|
-
], MaterialesMifibraDBDTO.prototype, "
|
|
44545
|
+
], MaterialesMifibraDBDTO.prototype, "descripcion", 2);
|
|
44546
44546
|
__decorateClass([
|
|
44547
44547
|
Expose696(),
|
|
44548
|
-
IsDefined220({ message: "El campo
|
|
44548
|
+
IsDefined220({ message: "El campo lot es obligatorio." }),
|
|
44549
44549
|
IsString578()
|
|
44550
|
-
], MaterialesMifibraDBDTO.prototype, "
|
|
44550
|
+
], MaterialesMifibraDBDTO.prototype, "lote", 2);
|
|
44551
44551
|
__decorateClass([
|
|
44552
44552
|
Expose696(),
|
|
44553
|
-
IsDefined220({ message: "El campo
|
|
44553
|
+
IsDefined220({ message: "El campo quantity es obligatorio." }),
|
|
44554
44554
|
IsNumber453()
|
|
44555
44555
|
], MaterialesMifibraDBDTO.prototype, "cantidad", 2);
|
|
44556
44556
|
__decorateClass([
|
|
@@ -44558,6 +44558,11 @@ __decorateClass([
|
|
|
44558
44558
|
IsDefined220({ message: "El campo invsn es obligatorio." }),
|
|
44559
44559
|
IsString578()
|
|
44560
44560
|
], MaterialesMifibraDBDTO.prototype, "invsn", 2);
|
|
44561
|
+
__decorateClass([
|
|
44562
|
+
Expose696(),
|
|
44563
|
+
IsDefined220({ message: "El campo invtype es obligatorio." }),
|
|
44564
|
+
IsString578()
|
|
44565
|
+
], MaterialesMifibraDBDTO.prototype, "invtype", 2);
|
|
44561
44566
|
__decorateClass([
|
|
44562
44567
|
Expose696(),
|
|
44563
44568
|
IsDefined220({ message: "El campo invpool es obligatorio." }),
|
package/package.json
CHANGED
package/.ai_context.md
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
# Contexto del Proyecto
|
|
2
|
-
|
|
3
|
-
**Nombre:** Ingeniero Brayan Valero
|
|
4
|
-
**Preferencias de idioma:** Español (Indispensable)
|
|
5
|
-
**Formato de Planes y Tareas:** Siempre en Español
|
|
6
|
-
**Contexto del proyecto:** Librería transversal para entidades compartidas (Front y Back)
|
|
7
|
-
**Nombre del Asistente:** Latas
|
|
8
|
-
|
|
9
|
-
**Tipo de Proyecto:** Shared Library
|
|
10
|
-
**Ubicación Raíz:** `d:\16_SIGO_ENTITYS\sigo-entities`
|
|
11
|
-
|
|
12
|
-
Este archivo contiene la visión general del proyecto `sigo-entities`.
|
|
13
|
-
|
|
14
|
-
## Descripción
|
|
15
|
-
`sigo-entities` es la librería donde se alojan las entidades compartidas por front y back. En ambos hay un archivo de contexto llamado `.ai_context.md`, donde almacenamos la configuración del proyecto, estructura del mismo y contexto de workflows para tareas futuras.
|
|
16
|
-
|
|
17
|
-
## Normas Generales
|
|
18
|
-
1. **Archivos de Contexto**: Mantener actualizados los `.ai_context.md` locales.
|
|
19
|
-
2. **Git Ignore**: Asegurarse de que `**/.ai_context.md` esté ignorado.
|
|
20
|
-
3. **sigo-entities**: Librería transversal para tipos compartidos.
|
|
21
|
-
|
|
22
|
-
## Guía de Desarrollo de Entidades y DTOs
|
|
23
|
-
|
|
24
|
-
### Estructura de Carpetas
|
|
25
|
-
- **DTOs compartidos**: `src/programados/procesos/[Entidad]/shared`
|
|
26
|
-
- **Request DTOs**: `src/programados/procesos/[Entidad]/shared/requestDto`
|
|
27
|
-
|
|
28
|
-
### Convenciones de Nombres
|
|
29
|
-
- **Archivos**: `kebab-case` con sufijo `-dto.ts` (ej. `job-macro-request-dto.ts`).
|
|
30
|
-
- **Clases**: `PascalCase` con sufijo `DTO` (ej. `JobMacroRequestDTO`).
|
|
31
|
-
|
|
32
|
-
### Reglas de Implementación
|
|
33
|
-
1. **Librerías**: Usar `class-transformer` (@Expose, @Type) y `class-validator` (IsString, IsNumber, etc.).
|
|
34
|
-
2. **Mensajes de Validación**: Deben ser en español (ej. "debe ser un texto", "es requerido").
|
|
35
|
-
3. **Inicialización**: Todas las propiedades deben tener valor inicial (ej. `string = ''`, `number = 0`).
|
|
36
|
-
4. **Exposición**: Decorar todas las propiedades con `@Expose()`.
|
|
37
|
-
|
|
38
|
-
## Proceso de Despliegue (sigo-entities)
|
|
39
|
-
|
|
40
|
-
1. **Validación**: Confirmar que la nueva entidad o DTO es correcto y cumple con las normas (preguntar al usuario).
|
|
41
|
-
- *Aprendizaje*: No incluir campos como `UsuarioEdicion` si el backend puede obtenerlos del token. Los DTOs de actualización deben ser lo más minimalistas posible (ID, nuevos valores, observaciones).
|
|
42
|
-
2. **Sincronización Inicial**: Bajar cambios (`git pull`) y subir cambios de la nueva entidad (`git push`).
|
|
43
|
-
3. **Versionamiento**: Incrementar la versión en el `package.json` (ej: `1.2.205` -> `1.2.206`).
|
|
44
|
-
4. **Sincronización de Versión**: Bajar y subir cambios nuevamente para asegurar la versión en el repositorio.
|
|
45
|
-
5. **Publicación**: Ejecutar `npm publish`.
|
|
46
|
-
6. **Actualización en Servicios**:
|
|
47
|
-
- Posicionarse en el servicio (Back/Front) objetivo mediante el comando `cd`.
|
|
48
|
-
- Ejecutar `npm i sigo-entities@latest`.
|
|
49
|
-
- Verificar importaciones.
|
|
50
|
-
- *Aprendizaje*: Los DTOs de procesos deben exportarse desde el `index.ts` principal de la entidad (ej. `obra/index.ts`) y no solo desde el `shared/index.ts`.
|
package/build.log
DELETED
|
Binary file
|