sigo-entities 1.2.521 → 1.2.522

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.
@@ -1,215 +1,215 @@
1
- # Reporte — Estructura de sigo-entities
2
-
3
- **Fecha:** 2026-08-31
4
- **Autor:** Brayan Andrés Valero Pinzón — Hermes Agent (sigo-frontend-dev)
5
- **Destinatario:** Ingeniero Josue — Repositorio `sigo-entities`
6
-
7
- ---
8
-
9
- ## Resumen
10
-
11
- Se detectaron **47 carpetas con nombres incorrectos** (sin guiones), **30 archivos `shared/index.ts` con Entity + DTO + `_id` mezclados**, y **3 carpetas en configuracion que ya fueron corregidas**.
12
-
13
- ---
14
-
15
- ## ✅ CORREGIDAS (3 archivos)
16
-
17
- Las siguientes 3 Entities fueron corregidas siguiendo el patrón correcto:
18
-
19
- | Carpeta | Archivos creados | Cambios |
20
- |---|---|---|
21
- | `theme config country` | `shared/theme-config-country-entity.ts` | Eliminado `_id`, DTOs inline en entity.ts, `shared/index.ts` solo exporta entity |
22
- | `theme config user` | `shared/dto/favorito-dto.ts` + `shared/theme-config-user-entity.ts` | Eliminado `_id`, DTOs separados en carpeta `dto/`, `shared/index.ts` solo exporta entity |
23
- | `scraping credential` | `shared/scraping-credential-entity.ts` | Eliminado `_id`, `shared/index.ts` solo exporta entity |
24
-
25
- **Patrón aplicado:**
26
- ```
27
- carpeta/
28
- shared/
29
- dto/
30
- nombre-dto.ts ← DTOs aquí
31
- nombre-entity.ts ← solo la Entity aquí
32
- index.ts ← solo export * from './nombre-entity'
33
- ```
34
-
35
- ---
36
-
37
- ## ❌ CARPETA 1: Carpetas con nombres SIN guiones (47 carpetas)
38
-
39
- **Regla:** Nombres compuestos deben usar guiones (`-`) en lugar de espacios.
40
-
41
- ### Configuración (10 carpetas)
42
- | Actual | Debería ser |
43
- |---|---|
44
- | `cargo personal` | `cargo-personal` |
45
- | `contrato ot` | `contrato-ot` |
46
- | `opcion sistema` | `opcion-sistema` |
47
- | ~~`scraping credential`~~ | ~~`scraping-credential`~~ ✅ renombrada |
48
- | ~~`theme config country`~~ | ~~`theme-config-country`~~ ✅ renombrada |
49
- | ~~`theme config user`~~ | ~~`theme-config-user`~~ ✅ renombrada |
50
- | `tipo clave` | `tipo-clave` |
51
- | `tipo especialidad mo` | `tipo-especialidad-mo` |
52
- | `tipo opcion sistema` | `tipo-opcion-sistema` |
53
- | `usuarios autoinventario` | `usuarios-autoinventario` |
54
-
55
- ### Administración (8 carpetas)
56
- | Actual | Debería ser |
57
- |---|---|
58
- | `chile 9512 paquetizado mano obra` | `chile-9512-paquetizado-mano-obra` |
59
- | `chile 9512 paquetizado material` | `chile-9512-paquetizado-material` |
60
- | `key integracion` | `key-integracion` |
61
- | `mail structure` | `mail-structure` |
62
- | `precio especialidad` | `precio-especialidad` |
63
- | `precio material` | `precio-material` |
64
- | `unidad obra material` | `unidad-obra-material` |
65
- | `zona trabajo` | `zona-trabajo` |
66
-
67
- ### Logística (17 carpetas)
68
- | Actual | Debería ser |
69
- |---|---|
70
- | `almacen extra` | `almacen-extra` |
71
- | `atencion ordenes liquidadas` | `atencion-ordenes-liquidadas` |
72
- | `consumo material` | `consumo-material` |
73
- | `consumos P117` | `consumos-P117` |
74
- | `devolucion almacen` | `devolucion-almacen` |
75
- | `gran familia item` | `gran-familia-item` |
76
- | `ingreso almacen` | `ingreso-almacen` |
77
- | `movimiento almacen` | `movimiento-almacen` |
78
- | `salida almacen` | `salida-almacen` |
79
- | `stock almacen` | `stock-almacen` |
80
- | `stock almacen equipos` | `stock-almacen-equipos` |
81
- | `stock personal` | `stock-personal` |
82
- | `stock personal equipos` | `stock-personal-equipos` |
83
- | `tipo almacen` | `tipo-almacen` |
84
- | `tipo movimiento almacen` | `tipo-movimiento-almacen` |
85
- | `tipo stock` | `tipo-stock` |
86
- | `transaccion folios` | `transaccion-folios` |
87
- | `unidad medida` | `unidad--medida` |
88
-
89
- ### Programados (10 carpetas)
90
- | Actual | Debería ser |
91
- |---|---|
92
- | `centro costos` | `centro-costos` |
93
- | `mano obra global` | `mano-obra-global` |
94
- | `rm actividad` | `rm-actividad` |
95
- | `rm comuna` | `rm-comuna` |
96
- | `rm mano obra` | `rm-mano-obra` |
97
- | `rm paquetizado` | `rm-paquetizado` |
98
- | `tipo actividad mo` | `tipo-actividad-mo` |
99
- | `tipo obra` | `tipo-obra` |
100
- | `model mo sql` | `model-mo-sql` |
101
- | `model obra sql` | `model-obra-sql` |
102
-
103
- ### Operativa (7 carpetas)
104
- | Actual | Debería ser |
105
- |---|---|
106
- | `order stock` | `order-stock` |
107
- | `order stock store` | `order-stock-store` |
108
- | `request number TTL` | `request-number-TTL` |
109
- | `Tdc order stock` | `Tdc-order-stock` |
110
- | `TOA Claro order stock` | `TOA-Claro-order-stock` |
111
- | `TOA orden liquidacion` | `TOA-orden-liquidacion` |
112
- | `TOA order stock` | `TOA-order-stock` |
113
-
114
- ---
115
-
116
- ## ❌ CARPETA 2: `shared/index.ts` con Entity + DTO + `_id` mezclados (30 carpetas)
117
-
118
- **Regla:** `shared/index.ts` debe contener SOLO la Entity. Los DTOs deben estar en `shared/dto/`.
119
-
120
- ### Configuración (3 carpetas — ya corregidas)
121
- | Carpeta | Entity | DTOs presentes | `_id` | Estado |
122
- |---|---|---|---|---|
123
- | `configuracion/ theme-config-country/shared/index.ts` | `ThemeConfigCountryENTITY` | `ImgLogoNavBarDTO`, `ThemeCountryManualDTO` | ✅ Línea 50 | ✅ CORREGIDA (carpeta renombrada, DTOs en `shared/dto/`, `_id` eliminado) |
124
- | `configuracion/ theme-config-user/shared/index.ts` | `ThemeConfigUserENTITY` | `FavoritoDTO` | ✅ Línea 33 | ✅ CORREGIDA (carpeta renombrada, DTOs en `shared/dto/`, `_id` eliminado) |
125
- | `configuracion/ scraping-credential/shared/index.ts` | `ScrapingCredentialENTITY` | `CodigoNombreDTO` | ✅ Línea 10 | ✅ CORREGIDA (carpeta renombrada, `_id` eliminado) |
126
-
127
- ### Logística (2 carpetas)
128
- | Carpeta | Entity | DTOs presentes | `_id` |
129
- |---|---|---|---|
130
- | `logistica/stock personal/shared/index.ts` | `StockPersonalENTITY` | Varios | ✅ |
131
- | `logistica/stock personal equipos/shared/index.ts` | `StockPersonalEquiposENTITY` | Varios | ✅ |
132
-
133
- ### Operativa/Procesos (25 carpetas)
134
- | Carpeta | Entity | `_id` |
135
- |---|---|---|
136
- | `operativa/procesos/altas_nvt_order/shared/index.ts` | `AltasNVTOrderENTITY` | ✅ Línea 35 |
137
- | `operativa/procesos/bantel/shared/index.ts` | `BantelENTITY` | ❌ `resource_id` (equivalente a `_id`) |
138
- | `operativa/procesos/claro_peru9112/shared/index.ts` | `Peru9112ClaroENTITY` | ✅ Línea 32 |
139
- | `operativa/procesos/cliente_waoo/shared/index.ts` | `ClienteWAOOENTITY` | ❌ `line_id` (equivalente a `_id`) |
140
- | `operativa/procesos/fibramas_order/shared/index.ts` | `Peru9112FibramasENTITY` | ❌ `resource_id` (equivalente a `_id`) |
141
- | `operativa/procesos/fibramas_order_db/shared/index.ts` | `Peru9112FibramasENTITYDB` | ❌ `resource_id` (equivalente a `_id`) |
142
- | `operativa/procesos/mifibra_db/shared/index.ts` | `MiFibraENTITYDB` | ❌ `resource_id` (equivalente a `_id`) |
143
- | `operativa/procesos/order stock/shared/index.ts` | `OrderStockENTITY` | ✅ |
144
- | `operativa/procesos/order stock store/shared/index.ts` | `OrderStockStoreENTITY` | ✅ |
145
- | `operativa/procesos/request number TTL/shared/index.ts` | `RequestNumberTTLENTITY` | ✅ Línea 14 |
146
- | `operativa/procesos/somacyl_order/shared/index.ts` | `SomacylOrderENTITY` | ✅ Línea 32 |
147
- | `operativa/procesos/stb_dth_toaperu/shared/index.ts` | `STB_DTH_ToaENTITY` | ✅ |
148
- | `operativa/procesos/Tdc order stock/shared/index.ts` | `TdcOrderStockENTITY` | ✅ |
149
- | `operativa/procesos/TOA Claro order stock/shared/index.ts` | `TOAClaroOrderStockENTITY` | ✅ |
150
- | `operativa/procesos/TOA orden liquidacion/shared/index.ts` | `TOAOrdenLiquidacionENTITY` | ✅ |
151
- | `operativa/procesos/TOA orden liquidacion_db/shared/index.ts` | `TOAOrdenLiquidacionENTITYDB` | ✅ Línea 21 |
152
- | `operativa/procesos/TOA order stock/shared/index.ts` | `TOAOrderStockENTITY` | ✅ |
153
- | `operativa/procesos/toa_claro/shared/index.ts` | `ToaClaroENTITY` | ✅ |
154
- | `operativa/procesos/toa_movistar/shared/index.ts` | `Peru9112TOAENTITY` | ✅ Línea 30 |
155
- | `operativa/procesos/toa_movistar_db/shared/index.ts` | `Peru9112TOAENTITYDB` | ✅ Línea 27 |
156
- | `operativa/procesos/tuves/shared/index.ts` | `TuvesENTITY` | ✅ Línea 30 |
157
- | `operativa/procesos/tuves_order_stock/shared/index.ts` | `TuvesOrderStockENTITY` | ✅ |
158
- | `operativa/procesos/win_order/shared/index.ts` | `Peru9112WinENTITY` | ❌ `resource_id` (equivalente a `_id`) |
159
- | `operativa/procesos/win_order_db/shared/index.ts` | `Peru9112WinENTITYDB` | ❌ `resource_id` (equivalente a `_id`) |
160
-
161
- ---
162
-
163
- ## ❌ CARPETA 3: Estructura incorrecta general
164
-
165
- **Patrón actual incorrecto (la mayoría de carpetas):**
166
- ```
167
- carpeta-con-espacios/
168
- shared/
169
- index.ts ← contiene: Entity + DTOs + _id todo mezclado
170
- ```
171
-
172
- **Patrón correcto (patrón de referencia `navisionpreorden`):**
173
- ```
174
- carpeta-con-guiones/
175
- shared/
176
- dto/
177
- nombre-dto.ts
178
- otro-dto.ts
179
- nombre-entity.ts ← solo la Entity aquí
180
- index.ts ← solo: export * from './nombre-entity'
181
- ```
182
-
183
- ---
184
-
185
- ## 📋 Resumen de problemas por prioridad
186
-
187
- | Prioridad | Problema | Cantidad | Impacto |
188
- |---|---|---|---|
189
- | **P0** | `_id` en Entities | 23 carpetas | Error de validación MongoDB: `_id must be a string` |
190
- | **P0** | Entity + DTOs mezclados en `shared/index.ts` | 30 carpetas | Confusión de imports, violación de separación de responsabilidades |
191
- | **P1** | Nombres de carpetas con espacios (sin guiones) | 47 carpetas | Inconsistencia con patrón LatasOS, problemas de import en Windows |
192
- | **P2** | `shared/index.ts` sin carpeta `dto/` separada | 30 carpetas | DTOs no reutilizables, archivo index.ts inflado |
193
-
194
- ---
195
-
196
- ## 📐 Patrón correcto de referencia
197
-
198
- Archivo: `navisionpreorden/shared/navisionpreorden-entity.ts`
199
-
200
- ```typescript
201
- // ✅ Sin _id
202
- // ✅ Solo la Entity
203
- // ✅ DTOs en carpeta shared/dto/
204
- // ✅ Nombre de carpeta con guiones
205
- // ✅ ID principal como número (ID_NavisionpreordenEntity)
206
- ```
207
-
208
- ---
209
-
210
- ## 🔧 Acciones requeridas
211
-
212
- 1. **P0 — Eliminar `_id`** de 20 carpetas restantes (incluyendo `resource_id` y `line_id` como equivalentes) — 3 ya corregidas: `theme-config-country`, `theme-config-user`, `scraping-credential`
213
- 2. **P0 — Separar DTOs de Entities** en 27 carpetas restantes — 3 ya corregidas: `theme-config-country`, `theme-config-user`, `scraping-credential`
214
- 3. **P1 — Renombrar carpetas** de 44 carpetas restantes — 3 ya corregidas: `theme-config-country`, `theme-config-user`, `scraping-credential`
215
- 4. **P2 — Actualizar `shared/index.ts`** en 27 carpetas restantes — 3 ya corregidas
1
+ # Reporte — Estructura de sigo-entities
2
+
3
+ **Fecha:** 2026-08-31
4
+ **Autor:** Brayan Andrés Valero Pinzón — Hermes Agent (sigo-frontend-dev)
5
+ **Destinatario:** Ingeniero Josue — Repositorio `sigo-entities`
6
+
7
+ ---
8
+
9
+ ## Resumen
10
+
11
+ Se detectaron **47 carpetas con nombres incorrectos** (sin guiones), **30 archivos `shared/index.ts` con Entity + DTO + `_id` mezclados**, y **3 carpetas en configuracion que ya fueron corregidas**.
12
+
13
+ ---
14
+
15
+ ## ✅ CORREGIDAS (3 archivos)
16
+
17
+ Las siguientes 3 Entities fueron corregidas siguiendo el patrón correcto:
18
+
19
+ | Carpeta | Archivos creados | Cambios |
20
+ |---|---|---|
21
+ | `theme config country` | `shared/theme-config-country-entity.ts` | Eliminado `_id`, DTOs inline en entity.ts, `shared/index.ts` solo exporta entity |
22
+ | `theme config user` | `shared/dto/favorito-dto.ts` + `shared/theme-config-user-entity.ts` | Eliminado `_id`, DTOs separados en carpeta `dto/`, `shared/index.ts` solo exporta entity |
23
+ | `scraping credential` | `shared/scraping-credential-entity.ts` | Eliminado `_id`, `shared/index.ts` solo exporta entity |
24
+
25
+ **Patrón aplicado:**
26
+ ```
27
+ carpeta/
28
+ shared/
29
+ dto/
30
+ nombre-dto.ts ← DTOs aquí
31
+ nombre-entity.ts ← solo la Entity aquí
32
+ index.ts ← solo export * from './nombre-entity'
33
+ ```
34
+
35
+ ---
36
+
37
+ ## ❌ CARPETA 1: Carpetas con nombres SIN guiones (47 carpetas)
38
+
39
+ **Regla:** Nombres compuestos deben usar guiones (`-`) en lugar de espacios.
40
+
41
+ ### Configuración (10 carpetas)
42
+ | Actual | Debería ser |
43
+ |---|---|
44
+ | `cargo personal` | `cargo-personal` |
45
+ | `contrato ot` | `contrato-ot` |
46
+ | `opcion sistema` | `opcion-sistema` |
47
+ | ~~`scraping credential`~~ | ~~`scraping-credential`~~ ✅ renombrada |
48
+ | ~~`theme config country`~~ | ~~`theme-config-country`~~ ✅ renombrada |
49
+ | ~~`theme config user`~~ | ~~`theme-config-user`~~ ✅ renombrada |
50
+ | `tipo clave` | `tipo-clave` |
51
+ | `tipo especialidad mo` | `tipo-especialidad-mo` |
52
+ | `tipo opcion sistema` | `tipo-opcion-sistema` |
53
+ | `usuarios autoinventario` | `usuarios-autoinventario` |
54
+
55
+ ### Administración (8 carpetas)
56
+ | Actual | Debería ser |
57
+ |---|---|
58
+ | `chile 9512 paquetizado mano obra` | `chile-9512-paquetizado-mano-obra` |
59
+ | `chile 9512 paquetizado material` | `chile-9512-paquetizado-material` |
60
+ | `key integracion` | `key-integracion` |
61
+ | `mail structure` | `mail-structure` |
62
+ | `precio especialidad` | `precio-especialidad` |
63
+ | `precio material` | `precio-material` |
64
+ | `unidad obra material` | `unidad-obra-material` |
65
+ | `zona trabajo` | `zona-trabajo` |
66
+
67
+ ### Logística (17 carpetas)
68
+ | Actual | Debería ser |
69
+ |---|---|
70
+ | `almacen extra` | `almacen-extra` |
71
+ | `atencion ordenes liquidadas` | `atencion-ordenes-liquidadas` |
72
+ | `consumo material` | `consumo-material` |
73
+ | `consumos P117` | `consumos-P117` |
74
+ | `devolucion almacen` | `devolucion-almacen` |
75
+ | `gran familia item` | `gran-familia-item` |
76
+ | `ingreso almacen` | `ingreso-almacen` |
77
+ | `movimiento almacen` | `movimiento-almacen` |
78
+ | `salida almacen` | `salida-almacen` |
79
+ | `stock almacen` | `stock-almacen` |
80
+ | `stock almacen equipos` | `stock-almacen-equipos` |
81
+ | `stock personal` | `stock-personal` |
82
+ | `stock personal equipos` | `stock-personal-equipos` |
83
+ | `tipo almacen` | `tipo-almacen` |
84
+ | `tipo movimiento almacen` | `tipo-movimiento-almacen` |
85
+ | `tipo stock` | `tipo-stock` |
86
+ | `transaccion folios` | `transaccion-folios` |
87
+ | `unidad medida` | `unidad--medida` |
88
+
89
+ ### Programados (10 carpetas)
90
+ | Actual | Debería ser |
91
+ |---|---|
92
+ | `centro costos` | `centro-costos` |
93
+ | `mano obra global` | `mano-obra-global` |
94
+ | `rm actividad` | `rm-actividad` |
95
+ | `rm comuna` | `rm-comuna` |
96
+ | `rm mano obra` | `rm-mano-obra` |
97
+ | `rm paquetizado` | `rm-paquetizado` |
98
+ | `tipo actividad mo` | `tipo-actividad-mo` |
99
+ | `tipo obra` | `tipo-obra` |
100
+ | `model mo sql` | `model-mo-sql` |
101
+ | `model obra sql` | `model-obra-sql` |
102
+
103
+ ### Operativa (7 carpetas)
104
+ | Actual | Debería ser |
105
+ |---|---|
106
+ | `order stock` | `order-stock` |
107
+ | `order stock store` | `order-stock-store` |
108
+ | `request number TTL` | `request-number-TTL` |
109
+ | `Tdc order stock` | `Tdc-order-stock` |
110
+ | `TOA Claro order stock` | `TOA-Claro-order-stock` |
111
+ | `TOA orden liquidacion` | `TOA-orden-liquidacion` |
112
+ | `TOA order stock` | `TOA-order-stock` |
113
+
114
+ ---
115
+
116
+ ## ❌ CARPETA 2: `shared/index.ts` con Entity + DTO + `_id` mezclados (30 carpetas)
117
+
118
+ **Regla:** `shared/index.ts` debe contener SOLO la Entity. Los DTOs deben estar en `shared/dto/`.
119
+
120
+ ### Configuración (3 carpetas — ya corregidas)
121
+ | Carpeta | Entity | DTOs presentes | `_id` | Estado |
122
+ |---|---|---|---|---|
123
+ | `configuracion/ theme-config-country/shared/index.ts` | `ThemeConfigCountryENTITY` | `ImgLogoNavBarDTO`, `ThemeCountryManualDTO` | ✅ Línea 50 | ✅ CORREGIDA (carpeta renombrada, DTOs en `shared/dto/`, `_id` eliminado) |
124
+ | `configuracion/ theme-config-user/shared/index.ts` | `ThemeConfigUserENTITY` | `FavoritoDTO` | ✅ Línea 33 | ✅ CORREGIDA (carpeta renombrada, DTOs en `shared/dto/`, `_id` eliminado) |
125
+ | `configuracion/ scraping-credential/shared/index.ts` | `ScrapingCredentialENTITY` | `CodigoNombreDTO` | ✅ Línea 10 | ✅ CORREGIDA (carpeta renombrada, `_id` eliminado) |
126
+
127
+ ### Logística (2 carpetas)
128
+ | Carpeta | Entity | DTOs presentes | `_id` |
129
+ |---|---|---|---|
130
+ | `logistica/stock personal/shared/index.ts` | `StockPersonalENTITY` | Varios | ✅ |
131
+ | `logistica/stock personal equipos/shared/index.ts` | `StockPersonalEquiposENTITY` | Varios | ✅ |
132
+
133
+ ### Operativa/Procesos (25 carpetas)
134
+ | Carpeta | Entity | `_id` |
135
+ |---|---|---|
136
+ | `operativa/procesos/altas_nvt_order/shared/index.ts` | `AltasNVTOrderENTITY` | ✅ Línea 35 |
137
+ | `operativa/procesos/bantel/shared/index.ts` | `BantelENTITY` | ❌ `resource_id` (equivalente a `_id`) |
138
+ | `operativa/procesos/claro_peru9112/shared/index.ts` | `Peru9112ClaroENTITY` | ✅ Línea 32 |
139
+ | `operativa/procesos/cliente_waoo/shared/index.ts` | `ClienteWAOOENTITY` | ❌ `line_id` (equivalente a `_id`) |
140
+ | `operativa/procesos/fibramas_order/shared/index.ts` | `Peru9112FibramasENTITY` | ❌ `resource_id` (equivalente a `_id`) |
141
+ | `operativa/procesos/fibramas_order_db/shared/index.ts` | `Peru9112FibramasENTITYDB` | ❌ `resource_id` (equivalente a `_id`) |
142
+ | `operativa/procesos/mifibra_db/shared/index.ts` | `MiFibraENTITYDB` | ❌ `resource_id` (equivalente a `_id`) |
143
+ | `operativa/procesos/order stock/shared/index.ts` | `OrderStockENTITY` | ✅ |
144
+ | `operativa/procesos/order stock store/shared/index.ts` | `OrderStockStoreENTITY` | ✅ |
145
+ | `operativa/procesos/request number TTL/shared/index.ts` | `RequestNumberTTLENTITY` | ✅ Línea 14 |
146
+ | `operativa/procesos/somacyl_order/shared/index.ts` | `SomacylOrderENTITY` | ✅ Línea 32 |
147
+ | `operativa/procesos/stb_dth_toaperu/shared/index.ts` | `STB_DTH_ToaENTITY` | ✅ |
148
+ | `operativa/procesos/Tdc order stock/shared/index.ts` | `TdcOrderStockENTITY` | ✅ |
149
+ | `operativa/procesos/TOA Claro order stock/shared/index.ts` | `TOAClaroOrderStockENTITY` | ✅ |
150
+ | `operativa/procesos/TOA orden liquidacion/shared/index.ts` | `TOAOrdenLiquidacionENTITY` | ✅ |
151
+ | `operativa/procesos/TOA orden liquidacion_db/shared/index.ts` | `TOAOrdenLiquidacionENTITYDB` | ✅ Línea 21 |
152
+ | `operativa/procesos/TOA order stock/shared/index.ts` | `TOAOrderStockENTITY` | ✅ |
153
+ | `operativa/procesos/toa_claro/shared/index.ts` | `ToaClaroENTITY` | ✅ |
154
+ | `operativa/procesos/toa_movistar/shared/index.ts` | `Peru9112TOAENTITY` | ✅ Línea 30 |
155
+ | `operativa/procesos/toa_movistar_db/shared/index.ts` | `Peru9112TOAENTITYDB` | ✅ Línea 27 |
156
+ | `operativa/procesos/tuves/shared/index.ts` | `TuvesENTITY` | ✅ Línea 30 |
157
+ | `operativa/procesos/tuves_order_stock/shared/index.ts` | `TuvesOrderStockENTITY` | ✅ |
158
+ | `operativa/procesos/win_order/shared/index.ts` | `Peru9112WinENTITY` | ❌ `resource_id` (equivalente a `_id`) |
159
+ | `operativa/procesos/win_order_db/shared/index.ts` | `Peru9112WinENTITYDB` | ❌ `resource_id` (equivalente a `_id`) |
160
+
161
+ ---
162
+
163
+ ## ❌ CARPETA 3: Estructura incorrecta general
164
+
165
+ **Patrón actual incorrecto (la mayoría de carpetas):**
166
+ ```
167
+ carpeta-con-espacios/
168
+ shared/
169
+ index.ts ← contiene: Entity + DTOs + _id todo mezclado
170
+ ```
171
+
172
+ **Patrón correcto (patrón de referencia `navisionpreorden`):**
173
+ ```
174
+ carpeta-con-guiones/
175
+ shared/
176
+ dto/
177
+ nombre-dto.ts
178
+ otro-dto.ts
179
+ nombre-entity.ts ← solo la Entity aquí
180
+ index.ts ← solo: export * from './nombre-entity'
181
+ ```
182
+
183
+ ---
184
+
185
+ ## 📋 Resumen de problemas por prioridad
186
+
187
+ | Prioridad | Problema | Cantidad | Impacto |
188
+ |---|---|---|---|
189
+ | **P0** | `_id` en Entities | 23 carpetas | Error de validación MongoDB: `_id must be a string` |
190
+ | **P0** | Entity + DTOs mezclados en `shared/index.ts` | 30 carpetas | Confusión de imports, violación de separación de responsabilidades |
191
+ | **P1** | Nombres de carpetas con espacios (sin guiones) | 47 carpetas | Inconsistencia con patrón LatasOS, problemas de import en Windows |
192
+ | **P2** | `shared/index.ts` sin carpeta `dto/` separada | 30 carpetas | DTOs no reutilizables, archivo index.ts inflado |
193
+
194
+ ---
195
+
196
+ ## 📐 Patrón correcto de referencia
197
+
198
+ Archivo: `navisionpreorden/shared/navisionpreorden-entity.ts`
199
+
200
+ ```typescript
201
+ // ✅ Sin _id
202
+ // ✅ Solo la Entity
203
+ // ✅ DTOs en carpeta shared/dto/
204
+ // ✅ Nombre de carpeta con guiones
205
+ // ✅ ID principal como número (ID_NavisionpreordenEntity)
206
+ ```
207
+
208
+ ---
209
+
210
+ ## 🔧 Acciones requeridas
211
+
212
+ 1. **P0 — Eliminar `_id`** de 20 carpetas restantes (incluyendo `resource_id` y `line_id` como equivalentes) — 3 ya corregidas: `theme-config-country`, `theme-config-user`, `scraping-credential`
213
+ 2. **P0 — Separar DTOs de Entities** en 27 carpetas restantes — 3 ya corregidas: `theme-config-country`, `theme-config-user`, `scraping-credential`
214
+ 3. **P1 — Renombrar carpetas** de 44 carpetas restantes — 3 ya corregidas: `theme-config-country`, `theme-config-user`, `scraping-credential`
215
+ 4. **P2 — Actualizar `shared/index.ts`** en 27 carpetas restantes — 3 ya corregidas
package/dist/index.js CHANGED
@@ -9061,7 +9061,7 @@ __decorateClass([
9061
9061
  ], HomePassDTO.prototype, "StreetName", 2);
9062
9062
  __decorateClass([
9063
9063
  (0, import_class_validator164.IsString)({ message: "debe ser un texto" }),
9064
- (0, import_class_validator164.Length)(0, 30, { message: "debe tener entre $constraint1 y $constraint2 caracteres" }),
9064
+ (0, import_class_validator164.Length)(0, 200, { message: "debe tener entre $constraint1 y $constraint2 caracteres" }),
9065
9065
  (0, import_class_transformer166.Expose)()
9066
9066
  ], HomePassDTO.prototype, "HouseNumber", 2);
9067
9067
  __decorateClass([
@@ -11471,14 +11471,12 @@ __decorateClass([
11471
11471
  ], HomePassDTO2.prototype, "StreetName", 2);
11472
11472
  __decorateClass([
11473
11473
  (0, import_class_validator195.IsString)({ message: "debe ser un texto" }),
11474
- (0, import_class_validator195.IsNotEmpty)({ message: "es requerido" }),
11475
- (0, import_class_validator195.Length)(1, 10, { message: "debe tener entre 1 y 10 caracteres" }),
11474
+ (0, import_class_validator195.Length)(0, 200, { message: "debe tener entre 0 y 200 caracteres" }),
11476
11475
  (0, import_class_transformer197.Expose)()
11477
11476
  ], HomePassDTO2.prototype, "HouseNumber", 2);
11478
11477
  __decorateClass([
11479
11478
  (0, import_class_validator195.IsString)({ message: "debe ser un texto" }),
11480
- (0, import_class_validator195.IsNotEmpty)({ message: "es requerido" }),
11481
- (0, import_class_validator195.Length)(1, 10, { message: "debe tener entre 1 y 10 caracteres" }),
11479
+ (0, import_class_validator195.Length)(0, 200, { message: "debe tener entre 0 y 200 caracteres" }),
11482
11480
  (0, import_class_transformer197.Expose)()
11483
11481
  ], HomePassDTO2.prototype, "HouseNumbreComplement", 2);
11484
11482
 
package/dist/index.mjs CHANGED
@@ -8148,7 +8148,7 @@ __decorateClass([
8148
8148
  ], HomePassDTO.prototype, "StreetName", 2);
8149
8149
  __decorateClass([
8150
8150
  IsString131({ message: "debe ser un texto" }),
8151
- Length94(0, 30, { message: "debe tener entre $constraint1 y $constraint2 caracteres" }),
8151
+ Length94(0, 200, { message: "debe tener entre $constraint1 y $constraint2 caracteres" }),
8152
8152
  Expose161()
8153
8153
  ], HomePassDTO.prototype, "HouseNumber", 2);
8154
8154
  __decorateClass([
@@ -10558,14 +10558,12 @@ __decorateClass([
10558
10558
  ], HomePassDTO2.prototype, "StreetName", 2);
10559
10559
  __decorateClass([
10560
10560
  IsString151({ message: "debe ser un texto" }),
10561
- IsNotEmpty137({ message: "es requerido" }),
10562
- Length113(1, 10, { message: "debe tener entre 1 y 10 caracteres" }),
10561
+ Length113(0, 200, { message: "debe tener entre 0 y 200 caracteres" }),
10563
10562
  Expose192()
10564
10563
  ], HomePassDTO2.prototype, "HouseNumber", 2);
10565
10564
  __decorateClass([
10566
10565
  IsString151({ message: "debe ser un texto" }),
10567
- IsNotEmpty137({ message: "es requerido" }),
10568
- Length113(1, 10, { message: "debe tener entre 1 y 10 caracteres" }),
10566
+ Length113(0, 200, { message: "debe tener entre 0 y 200 caracteres" }),
10569
10567
  Expose192()
10570
10568
  ], HomePassDTO2.prototype, "HouseNumbreComplement", 2);
10571
10569
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sigo-entities",
3
- "version": "1.2.521",
3
+ "version": "1.2.522",
4
4
  "description": "Desarrollo de modelos de datos SIGO",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",