sigo-package 1.2.177 → 1.2.179

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/dist/index.js CHANGED
@@ -73,11 +73,18 @@ __export(index_exports, {
73
73
  buildReservaMOJobMajorProjectsAlemaniaAL04: () => buildReservaMOJobMajorProjectsAlemaniaAL04,
74
74
  buildTenantCollectionName: () => buildTenantCollectionName,
75
75
  calcularTotalMaterialValorizacionPeru9112: () => calcularTotalMaterialValorizacionPeru9112,
76
+ cantidadFijaMOAL04: () => cantidadFijaMOAL04,
77
+ cantidadMaterialAL04: () => cantidadMaterialAL04,
76
78
  checkAndBuildMaterialsFromStock: () => checkAndBuildMaterialsFromStock,
77
79
  checkMaterialAvailability: () => checkMaterialAvailability,
80
+ codBalizaAL02: () => codBalizaAL02,
78
81
  codBalizaAL04: () => codBalizaAL04,
82
+ codBalizaPreliquidarAL04: () => codBalizaPreliquidarAL04,
83
+ codBaremoUnicoDPAL04: () => codBaremoUnicoDPAL04,
79
84
  codClientes: () => codClientes,
80
85
  codIssueByPeriodoAL02: () => codIssueByPeriodoAL02,
86
+ codMOAsfaltoHijasAL04: () => codMOAsfaltoHijasAL04,
87
+ codMOAsfaltoMadreAL04: () => codMOAsfaltoMadreAL04,
81
88
  codMOClientesAL02: () => codMOClientesAL02,
82
89
  codMOClientesAL02Asfaltado: () => codMOClientesAL02Asfaltado,
83
90
  codMOClientesAL02OC: () => codMOClientesAL02OC,
@@ -86,13 +93,17 @@ __export(index_exports, {
86
93
  codMODROPAL04: () => codMODROPAL04,
87
94
  codMODROPAL04OC: () => codMODROPAL04OC,
88
95
  codMODROPAL04Soplado: () => codMODROPAL04Soplado,
96
+ codMOExcluidos: () => codMOExcluidos,
89
97
  codMOFTTFAL04: () => codMOFTTFAL04,
90
98
  codMONoClientesAL02: () => codMONoClientesAL02,
91
99
  codMONoClientesAL02Asfaltado: () => codMONoClientesAL02Asfaltado,
92
100
  codMONoClientesAL02OC: () => codMONoClientesAL02OC,
93
101
  codMONoClientesAL02Soplado: () => codMONoClientesAL02Soplado,
94
102
  codMONoClientes_ReglaLiquidacion1: () => codMONoClientes_ReglaLiquidacion1,
103
+ codMONoPreliquidablesAL04: () => codMONoPreliquidablesAL04,
95
104
  codMOOcultosAL04: () => codMOOcultosAL04,
105
+ codMOPreliquidarTroncalAL02: () => codMOPreliquidarTroncalAL02,
106
+ codMOPreliquidarTroncalAL04: () => codMOPreliquidarTroncalAL04,
96
107
  codMOPublico: () => codMOPublico,
97
108
  codMOTroncalAL02: () => codMOTroncalAL02,
98
109
  codMOTroncalAL02Asfaltado: () => codMOTroncalAL02Asfaltado,
@@ -105,11 +116,14 @@ __export(index_exports, {
105
116
  codMOTroncalAL04Soplado: () => codMOTroncalAL04Soplado,
106
117
  codMOTroncalHistoricoAL02: () => codMOTroncalHistoricoAL02,
107
118
  codMOTroncal_ReglaLiquidacion1: () => codMOTroncal_ReglaLiquidacion1,
119
+ codMaterialesOcultosAL04: () => codMaterialesOcultosAL04,
108
120
  codNoCliente: () => codNoCliente,
109
121
  codSopladoRD: () => codSopladoRD,
122
+ codigosBaremosSubcontrataAL02: () => codigosBaremosSubcontrataAL02,
110
123
  codigosMOT1_F2: () => codigosMOT1_F2,
111
124
  codigosMaterialDuctos: () => codigosMaterialDuctos,
112
125
  codigosMaterialUGG: () => codigosMaterialUGG,
126
+ codigosSopladoHP: () => codigosSopladoHP,
113
127
  collections: () => collections,
114
128
  consumirStockPersonal: () => consumirStockPersonal,
115
129
  convertDates: () => convertDates,
@@ -118,8 +132,13 @@ __export(index_exports, {
118
132
  db_root: () => db_root,
119
133
  documentRequirementAltasNVT: () => documentRequirementAltasNVT,
120
134
  empresas: () => empresas,
135
+ esAsignacionPreliquidableAL02: () => esAsignacionPreliquidableAL02,
136
+ esAsignacionPreliquidableAL04: () => esAsignacionPreliquidableAL04,
121
137
  esCadenaFechaISOValida: () => esCadenaFechaISOValida,
138
+ esMaterialDuctoAL04: () => esMaterialDuctoAL04,
122
139
  esObjetoFecha: () => esObjetoFecha,
140
+ estadoRechazadaPorMetraje: () => estadoRechazadaPorMetraje,
141
+ estadoRechazadaPorMetrajeAL04: () => estadoRechazadaPorMetrajeAL04,
123
142
  formatCurrencyV1: () => formatCurrencyV1,
124
143
  formatNumberSmart: () => formatNumberSmart,
125
144
  formatNumberV1: () => formatNumberV1,
@@ -153,19 +172,30 @@ __export(index_exports, {
153
172
  mapaReglaSopladoClientes: () => mapaReglaSopladoClientes,
154
173
  mapaReglaSopladoTroncal: () => mapaReglaSopladoTroncal,
155
174
  mapeoZonasSimilares: () => mapeoZonasSimilares,
175
+ materialesAutomaticosAL04: () => materialesAutomaticosAL04,
176
+ materialesSeleccionablesAL04: () => materialesSeleccionablesAL04,
177
+ modoMaterialesAL04: () => modoMaterialesAL04,
178
+ motivoConsumoAlmacenAL04: () => motivoConsumoAlmacenAL04,
179
+ motivoConsumoMaterialAutomaticoDuctos: () => motivoConsumoMaterialAutomaticoDuctos,
156
180
  newCodMOTroncalReglaLiquidacion1: () => newCodMOTroncalReglaLiquidacion1,
181
+ obtenerCodMOHomePass: () => obtenerCodMOHomePass,
182
+ obtenerCodMOHomePassAL04: () => obtenerCodMOHomePassAL04,
157
183
  obtenerDocumentacionClientes: () => obtenerDocumentacionClientes,
158
184
  obtenerDocumentacionNoClientes: () => obtenerDocumentacionNoClientes,
185
+ obtenerEspecialidadesCerradas: () => obtenerEspecialidadesCerradas,
186
+ obtenerEspecialidadesCerradasAL04: () => obtenerEspecialidadesCerradasAL04,
159
187
  obtenerPrecioContratistaMaterial: () => obtenerPrecioContratistaMaterial,
160
188
  obtenerPrecioManoObraAL02: () => obtenerPrecioManoObraAL02,
161
189
  obtenerPrecioManoObraAL04: () => obtenerPrecioManoObraAL04,
162
190
  obtenerTipoYCodigoMO: () => obtenerTipoYCodigoMO,
163
191
  paisMap: () => paisMap,
164
192
  parseDuplicateKeyError: () => parseDuplicateKeyError,
193
+ prorratearMaterialesAL04: () => prorratearMaterialesAL04,
165
194
  roundNumber: () => roundNumber,
166
195
  searchCurrentContractorSpecialtyPrice: () => searchCurrentContractorSpecialtyPrice,
167
196
  setColModels: () => setColModels,
168
197
  setContext: () => setContext,
198
+ subMaterialesAL04: () => subMaterialesAL04,
169
199
  throwSomacylError: () => throwSomacylError,
170
200
  updatePriceContractorMOAL02: () => updatePriceContractorMOAL02,
171
201
  updatePriceContractorMOAL04: () => updatePriceContractorMOAL04,
@@ -174,6 +204,7 @@ __export(index_exports, {
174
204
  updatePricePBBudgetAlemaniaAL02: () => updatePricePBBudgetAlemaniaAL02,
175
205
  updatePricePBBudgetAlemaniaAL04: () => updatePricePBBudgetAlemaniaAL04,
176
206
  uuidRegex: () => uuidRegex,
207
+ validarAsfaltoAL04: () => validarAsfaltoAL04,
177
208
  validateNoLookup: () => validateNoLookup,
178
209
  validateUUIDv4Param: () => validateUUIDv4Param,
179
210
  verifyDetailsFinalizeSomacyl: () => verifyDetailsFinalizeSomacyl,
@@ -4116,6 +4147,196 @@ Debe preliquidar primero al menos ${v.DiferenciaExcedida.toFixed(2)} de ${v.Codi
4116
4147
  }
4117
4148
  __name(FormatearErrorValidacionMOHijas, "FormatearErrorValidacionMOHijas");
4118
4149
 
4150
+ // src/Programados/Alemania/AL02/codigosMOT1_F2.ts
4151
+ var codigosMOT1_F2 = [
4152
+ "010601600",
4153
+ "010600500",
4154
+ "031406300",
4155
+ "T13",
4156
+ "052208800",
4157
+ "010601300",
4158
+ "010600700",
4159
+ "073100600",
4160
+ "073101000",
4161
+ "073101300",
4162
+ "073101600",
4163
+ "010600600",
4164
+ "073100500",
4165
+ "010601000",
4166
+ "073100700"
4167
+ ];
4168
+
4169
+ // src/Programados/Alemania/AL04/reglasPreliquidarAL04.ts
4170
+ var motivoConsumoAlmacenAL04 = "CONSUMO_MATERIAL_AUTOMATICO_DUCTOS";
4171
+ var estadoRechazadaPorMetrajeAL04 = "RECHAZADA POR METRAJE";
4172
+ var codMONoPreliquidablesAL04 = codigosMOT1_F2;
4173
+ var codBalizaPreliquidarAL04 = codBalizaAL04;
4174
+ var codBaremoUnicoDPAL04 = [
4175
+ "NVT01"
4176
+ ];
4177
+ var codMOAsfaltoMadreAL04 = "AP01";
4178
+ var codMOAsfaltoHijasAL04 = codMOTroncalAL04Asfaltado;
4179
+ var codMOPreliquidarTroncalAL04 = codMOTroncalAL04;
4180
+ function obtenerCodMOHomePassAL04(tipo) {
4181
+ return tipo === "Business" ? codMOFTTFAL04 : codMODROPAL04;
4182
+ }
4183
+ __name(obtenerCodMOHomePassAL04, "obtenerCodMOHomePassAL04");
4184
+ function obtenerEspecialidadesCerradasAL04(cierres) {
4185
+ return [
4186
+ cierres.Asfaltado,
4187
+ cierres.OC,
4188
+ cierres.Soplado
4189
+ ].filter((e, _i, arr) => arr[1]?.Estado && e?.Estado).map((e) => e?.Especialidad ?? "");
4190
+ }
4191
+ __name(obtenerEspecialidadesCerradasAL04, "obtenerEspecialidadesCerradasAL04");
4192
+ function esAsignacionPreliquidableAL04(asignacion, tipo, especialidadesCerradas) {
4193
+ const codMO = asignacion.ManoObra.Codigo;
4194
+ const permitida = tipo === "Troncal" ? codMOPreliquidarTroncalAL04.includes(codMO.trim()) : obtenerCodMOHomePassAL04(tipo).includes(codMO);
4195
+ return permitida && !especialidadesCerradas.includes(asignacion.Especialidad.Codigo);
4196
+ }
4197
+ __name(esAsignacionPreliquidableAL04, "esAsignacionPreliquidableAL04");
4198
+ var esMaterialDuctoAL04 = /* @__PURE__ */ __name((codigo) => CodigosMaterialDuctosAL04.includes(codigo), "esMaterialDuctoAL04");
4199
+ var codMaterialesOcultosAL04 = codMOOcultosAL04;
4200
+ function modoMaterialesAL04(codMO) {
4201
+ const regla = mapaMOMaterialAL04.get(codMO);
4202
+ if (!regla) return "libre";
4203
+ if (regla.Materiales instanceof Map) return "elegir";
4204
+ return regla.Materiales.length ? "automatico" : "sinMaterial";
4205
+ }
4206
+ __name(modoMaterialesAL04, "modoMaterialesAL04");
4207
+ function cantidadFijaMOAL04(codMO) {
4208
+ const regla = mapaMOMaterialAL04.get(codMO);
4209
+ return regla?.CantidadFija ? regla.Cantidad : void 0;
4210
+ }
4211
+ __name(cantidadFijaMOAL04, "cantidadFijaMOAL04");
4212
+ function materialesAutomaticosAL04(codMO, cantidadMO) {
4213
+ const regla = mapaMOMaterialAL04.get(codMO);
4214
+ if (!regla || !Array.isArray(regla.Materiales)) return [];
4215
+ return regla.Materiales.map((material) => ({
4216
+ Codigo: material.Codigo,
4217
+ Cantidad: (material.CantidadFija ? material.Cantidad : cantidadMO) * material.Factor,
4218
+ StockPersonal: esMaterialDuctoAL04(material.Codigo)
4219
+ }));
4220
+ }
4221
+ __name(materialesAutomaticosAL04, "materialesAutomaticosAL04");
4222
+ function materialesSeleccionablesAL04(codMO) {
4223
+ const regla = mapaMOMaterialAL04.get(codMO);
4224
+ if (!regla) return void 0;
4225
+ return regla.Materiales instanceof Map ? [
4226
+ ...regla.Materiales.keys()
4227
+ ] : regla.Materiales.map((e) => e.Codigo);
4228
+ }
4229
+ __name(materialesSeleccionablesAL04, "materialesSeleccionablesAL04");
4230
+ var reglaMaterialAL04 = /* @__PURE__ */ __name((codMO, codMaterial) => {
4231
+ const regla = mapaMOMaterialAL04.get(codMO);
4232
+ return regla && regla.Materiales instanceof Map ? regla.Materiales.get(codMaterial) : void 0;
4233
+ }, "reglaMaterialAL04");
4234
+ function cantidadMaterialAL04(codMO, codMaterial, cantidadMO) {
4235
+ const regla = reglaMaterialAL04(codMO, codMaterial);
4236
+ if (!regla || !Array.isArray(regla.Materiales)) return {
4237
+ Bloqueada: false,
4238
+ PideEmpalmes: false
4239
+ };
4240
+ const PideEmpalmes = regla.Materiales.some((e) => !e.CantidadFija);
4241
+ if (regla.CantidadPadre) return {
4242
+ Cantidad: cantidadMO * regla.Factor,
4243
+ Bloqueada: true,
4244
+ PideEmpalmes
4245
+ };
4246
+ if (regla.CantidadFija) return {
4247
+ Cantidad: regla.Cantidad * regla.Factor,
4248
+ Bloqueada: true,
4249
+ PideEmpalmes
4250
+ };
4251
+ return {
4252
+ Bloqueada: false,
4253
+ PideEmpalmes
4254
+ };
4255
+ }
4256
+ __name(cantidadMaterialAL04, "cantidadMaterialAL04");
4257
+ function subMaterialesAL04(codMO, codMaterial, cantidadMaterial, empalmes) {
4258
+ const regla = reglaMaterialAL04(codMO, codMaterial);
4259
+ if (!regla || !Array.isArray(regla.Materiales)) return [];
4260
+ const pideEmpalmes = regla.Materiales.some((e) => !e.CantidadFija);
4261
+ const result = [];
4262
+ for (const material of regla.Materiales) {
4263
+ const cantidad = (material.CantidadFija ? material.Cantidad : material.CantidadPadre ? cantidadMaterial : pideEmpalmes ? empalmes : 0) * material.Factor;
4264
+ if (cantidad === 0 && pideEmpalmes) continue;
4265
+ if (cantidad === 0) throw new Error("Error al obtener cantidad");
4266
+ result.push({
4267
+ Codigo: material.Codigo,
4268
+ Cantidad: cantidad,
4269
+ StockPersonal: esMaterialDuctoAL04(material.Codigo)
4270
+ });
4271
+ }
4272
+ return result;
4273
+ }
4274
+ __name(subMaterialesAL04, "subMaterialesAL04");
4275
+ function prorratearMaterialesAL04(materiales, cantidadPadre, cantidadTotal) {
4276
+ const porcentaje = cantidadPadre / cantidadTotal;
4277
+ const padre = [];
4278
+ const hija = [];
4279
+ for (const material of materiales) {
4280
+ if (!esMaterialDuctoAL04(material.Codigo)) {
4281
+ padre.push(material);
4282
+ continue;
4283
+ }
4284
+ const cantidad = round2(material.Cantidad * porcentaje);
4285
+ const informada = round2(material.CantidadInformada * porcentaje);
4286
+ padre.push({
4287
+ ...material,
4288
+ Cantidad: cantidad,
4289
+ CantidadInformada: informada
4290
+ });
4291
+ hija.push({
4292
+ ...material,
4293
+ Cantidad: resta(material.Cantidad, cantidad),
4294
+ CantidadInformada: resta(material.CantidadInformada, informada)
4295
+ });
4296
+ }
4297
+ return {
4298
+ padre,
4299
+ hija
4300
+ };
4301
+ }
4302
+ __name(prorratearMaterialesAL04, "prorratearMaterialesAL04");
4303
+ var round2 = /* @__PURE__ */ __name((value) => Number(value.toFixed(2)), "round2");
4304
+ var resta = /* @__PURE__ */ __name((total, parte) => Math.round((total - parte) * 1e6) / 1e6, "resta");
4305
+ function validarAsfaltoAL04(moUo, manoObra, codigosNuevos) {
4306
+ const codigos = [
4307
+ codMOAsfaltoMadreAL04,
4308
+ ...codMOAsfaltoHijasAL04
4309
+ ];
4310
+ if (!codigosNuevos.some((e) => codigos.includes(e))) return null;
4311
+ const lineas = /* @__PURE__ */ new Map();
4312
+ for (const val of manoObra.Valorizacion ?? []) {
4313
+ const lcc = val.DetalleChile?.LineaCodigoCub;
4314
+ if (lcc) lineas.set(lcc, {
4315
+ codigo: val.Codigo,
4316
+ descripcion: val.Descripcion || ""
4317
+ });
4318
+ }
4319
+ let totalMadre = 0;
4320
+ let totalHija = 0;
4321
+ let descMadre = "";
4322
+ for (const item of moUo) {
4323
+ const info = lineas.get(item.LineaCodigoCub);
4324
+ if (!info) continue;
4325
+ if (info.codigo === codMOAsfaltoMadreAL04) {
4326
+ totalMadre += item.Cantidad;
4327
+ descMadre ||= info.descripcion;
4328
+ }
4329
+ if (codMOAsfaltoHijasAL04.includes(info.codigo)) totalHija += item.Cantidad;
4330
+ }
4331
+ if (totalHija - totalMadre <= 1e-3) return null;
4332
+ const grupo = "Asfalto (AP02 / ExtraWide)";
4333
+ const excedente = (totalHija - totalMadre).toFixed(2);
4334
+ return `No se puede preliquidar porque la cantidad total de ${grupo} (${totalHija.toFixed(2)} m) supera la cantidad de ${descMadre || codMOAsfaltoMadreAL04} (${codMOAsfaltoMadreAL04}: ${totalMadre.toFixed(2)} m) preliquidada en esta obra.
4335
+ Excedente: ${excedente} m.
4336
+ Debe preliquidar primero al menos ${excedente} m de ${codMOAsfaltoMadreAL04} antes de agregar m\xE1s ${grupo}.`;
4337
+ }
4338
+ __name(validarAsfaltoAL04, "validarAsfaltoAL04");
4339
+
4119
4340
  // src/Programados/Alemania/codMOTroncal_ReglaLiquidacion1.ts
4120
4341
  var codMOTroncal_ReglaLiquidacion1 = [
4121
4342
  "011304100",
@@ -4262,33 +4483,305 @@ var codMOPublico = [
4262
4483
  "073101500"
4263
4484
  ];
4264
4485
 
4265
- // src/Programados/Alemania/AL02/codigosMOT1_F2.ts
4266
- var codigosMOT1_F2 = [
4267
- "010601600",
4268
- "010600500",
4486
+ // src/Programados/Alemania/codigosMOHP.ts
4487
+ var codClientes = [
4269
4488
  "031406300",
4270
- "T13",
4271
- "052208800",
4272
- "010601300",
4273
- "010600700",
4274
- "073100600",
4489
+ "T1_031406300",
4490
+ "F2_031406300",
4491
+ "031406400",
4492
+ "031406500",
4493
+ "010602500",
4494
+ "073100700",
4495
+ "T1_073100700",
4496
+ "F2_073100700",
4497
+ "073100800",
4498
+ "073100900",
4275
4499
  "073101000",
4500
+ "T1_073101000",
4501
+ "F2_073101000",
4502
+ "073101100",
4503
+ "073101200",
4276
4504
  "073101300",
4277
- "073101600",
4278
- "010600600",
4279
- "073100500",
4505
+ "T1_073101300",
4506
+ "F2_073101300",
4507
+ "073101400",
4508
+ "073101500",
4509
+ "073106600",
4510
+ "073102400",
4511
+ //#region Cambios solicitados por arturo 14-07-2025 Ticket (69876)
4512
+ "042904600",
4513
+ "042904700",
4514
+ "042904800"
4515
+ ];
4516
+ var codNoCliente = [
4517
+ "073100700",
4518
+ "T1_073100700",
4519
+ "F2_073100700",
4520
+ "073100800",
4521
+ "073100900",
4522
+ "073101000",
4523
+ "T1_073101000",
4524
+ "F2_073101000",
4525
+ "073101100",
4526
+ "073101200",
4527
+ "073101300",
4528
+ "T1_073101300",
4529
+ "F2_073101300",
4530
+ "073101400",
4531
+ "073101500",
4532
+ "073006000",
4533
+ "073106600",
4534
+ "073102400"
4535
+ ];
4536
+ var codSopladoRD = [
4537
+ "T14",
4538
+ "T15",
4539
+ "T16"
4540
+ ];
4541
+
4542
+ // src/Programados/Alemania/CodsMapeoMOMaterial.ts
4543
+ var CodsMapeoMOMaterial = [
4544
+ {
4545
+ CodigoMO: "010103200",
4546
+ CodigoMaterial: "03DUC-109-204",
4547
+ CodMatConector: "03DUC-110-201",
4548
+ CantidadPorDucto: 2,
4549
+ Alcance: "2X16-12"
4550
+ },
4551
+ {
4552
+ CodigoMO: "010103300",
4553
+ CodigoMaterial: "03DUC-109-203",
4554
+ CodMatConector: "03DUC-110-201",
4555
+ CantidadPorDucto: 4,
4556
+ Alcance: "4X16-12"
4557
+ },
4558
+ {
4559
+ CodigoMO: "010103400",
4560
+ CodigoMaterial: "03DUC-109-202",
4561
+ CodMatConector: "03DUC-110-201",
4562
+ CantidadPorDucto: 7,
4563
+ Alcance: "7x16-12"
4564
+ },
4565
+ {
4566
+ CodigoMO: "010203900",
4567
+ CodigoMaterial: "03DUC-109-212",
4568
+ CodMatConector: "03DUC-110-210",
4569
+ CantidadPorDucto: 12,
4570
+ Alcance: "12x7-4"
4571
+ },
4572
+ {
4573
+ CodigoMO: "010204000",
4574
+ CodigoMaterial: "03DUC-109-211",
4575
+ CodMatConector: "03DUC-110-210",
4576
+ CantidadPorDucto: 24,
4577
+ Alcance: "24x7-4"
4578
+ },
4579
+ {
4580
+ CodigoMO: "010203800",
4581
+ CodigoMaterial: "03DUC-109-213",
4582
+ CodMatConector: "03DUC-110-210",
4583
+ CantidadPorDucto: 7,
4584
+ Alcance: "7X7-4"
4585
+ },
4586
+ {
4587
+ CodigoMO: "010303000",
4588
+ CodigoMaterial: "03DUC-109-201",
4589
+ CodMatConector: "03DUC-110-214",
4590
+ CantidadPorDucto: 2,
4591
+ Alcance: "1x50-40"
4592
+ },
4593
+ {
4594
+ CodigoMO: "",
4595
+ CodigoMaterial: "03DUC-109-210",
4596
+ CodMatConector: "03DUC-110-207",
4597
+ CantidadPorDucto: 1,
4598
+ Alcance: ""
4599
+ },
4600
+ {
4601
+ CodigoMO: "010403300",
4602
+ CodigoMaterial: "03DUC-109-209",
4603
+ CodMatConector: "03DUC-110-204",
4604
+ CantidadPorDucto: 1,
4605
+ Alcance: "1x14-10"
4606
+ },
4607
+ {
4608
+ CodigoMO: "010403500",
4609
+ CodigoMaterial: "03DUC-109-208",
4610
+ CodMatConector: "03DUC-110-204",
4611
+ CantidadPorDucto: 2,
4612
+ Alcance: "2x14-10"
4613
+ },
4614
+ {
4615
+ CodigoMO: "010403600",
4616
+ CodigoMaterial: "03DUC-109-207",
4617
+ CodMatConector: "03DUC-110-204",
4618
+ CantidadPorDucto: 4,
4619
+ Alcance: "4x14-10"
4620
+ },
4621
+ {
4622
+ CodigoMO: "010403700",
4623
+ CodigoMaterial: "03DUC-109-206",
4624
+ CodMatConector: "03DUC-110-204",
4625
+ CantidadPorDucto: 7,
4626
+ Alcance: "7x14-10"
4627
+ },
4628
+ {
4629
+ CodigoMO: "010206700",
4630
+ CodigoMaterial: "03DUC-109-214",
4631
+ CodMatConector: "03DUC-110-210",
4632
+ CantidadPorDucto: 1,
4633
+ Alcance: "1x7-4"
4634
+ },
4635
+ {
4636
+ CodigoMO: "",
4637
+ CodigoMaterial: "03DUC-109-205",
4638
+ CodMatConector: "03DUC-110-201",
4639
+ CantidadPorDucto: 1,
4640
+ Alcance: ""
4641
+ }
4642
+ ];
4643
+ var CodsMapeoMOMaterialSopladoClientes = [
4644
+ {
4645
+ CodigoMO: "T14",
4646
+ CodigoMaterial: [
4647
+ "02CFO-108-205"
4648
+ ]
4649
+ },
4650
+ {
4651
+ CodigoMO: "T15",
4652
+ CodigoMaterial: [
4653
+ "02CFO-108-201"
4654
+ ]
4655
+ },
4656
+ {
4657
+ CodigoMO: "T16",
4658
+ CodigoMaterial: [
4659
+ "02CFO-108-204"
4660
+ ]
4661
+ }
4662
+ ];
4663
+ var CodsMapeoMOMaterialSopladoTroncal = [
4664
+ {
4665
+ CodigoMO: "042004400",
4666
+ CodigoMaterial: [
4667
+ "02CFO-107-206"
4668
+ ]
4669
+ },
4670
+ {
4671
+ CodigoMO: "041704500",
4672
+ CodigoMaterial: [
4673
+ "02CFO-107-204"
4674
+ ]
4675
+ },
4676
+ {
4677
+ CodigoMO: "041704300",
4678
+ CodigoMaterial: [
4679
+ "02CFO-107-208"
4680
+ ]
4681
+ },
4682
+ {
4683
+ CodigoMO: "041704200",
4684
+ CodigoMaterial: [
4685
+ "02CFO-107-209"
4686
+ ]
4687
+ },
4688
+ {
4689
+ CodigoMO: "062505900",
4690
+ CodigoMaterial: [
4691
+ "05PAO-114-201",
4692
+ "05PAO-114-202"
4693
+ ],
4694
+ ConsumoManual: true
4695
+ }
4696
+ ];
4697
+ var CodsMapeoMO_Material_Arquertas = [
4698
+ {
4699
+ CodigoMO: "062705807",
4700
+ CodigoMaterial: "06ARQ-115-212"
4701
+ },
4702
+ {
4703
+ CodigoMO: "062705806",
4704
+ CodigoMaterial: "06ARQ-115-211"
4705
+ },
4706
+ {
4707
+ CodigoMO: "062705805",
4708
+ CodigoMaterial: "06ARQ-115-210"
4709
+ },
4710
+ {
4711
+ CodigoMO: "062705701",
4712
+ CodigoMaterial: "06ARQ-115-206"
4713
+ },
4714
+ {
4715
+ CodigoMO: "062705702",
4716
+ CodigoMaterial: "06ARQ-115-207"
4717
+ },
4718
+ {
4719
+ CodigoMO: "062705704",
4720
+ CodigoMaterial: "06ARQ-115-209"
4721
+ },
4722
+ {
4723
+ CodigoMO: "062705703",
4724
+ CodigoMaterial: "06ARQ-115-208"
4725
+ },
4726
+ {
4727
+ CodigoMO: "062705808",
4728
+ CodigoMaterial: "06ARQ-115-213"
4729
+ }
4730
+ ];
4731
+
4732
+ // src/Programados/Alemania/AL02/reglasPreliquidarAL02.ts
4733
+ var codMOExcluidos = [
4734
+ "T21",
4735
+ "T22",
4736
+ "T23",
4737
+ "T24",
4738
+ "T25"
4739
+ ];
4740
+ var codBalizaAL02 = "073006000";
4741
+ var codigosBaremosSubcontrataAL02 = [
4280
4742
  "010601000",
4281
- "073100700"
4743
+ "010600600",
4744
+ "010600700",
4745
+ "010600500",
4746
+ "010601300",
4747
+ "010601600"
4748
+ ];
4749
+ var motivoConsumoMaterialAutomaticoDuctos = "CONSUMO_MATERIAL_AUTOMATICO_DUCTOS";
4750
+ var estadoRechazadaPorMetraje = "RECHAZADA POR METRAJE";
4751
+ var codigosSopladoHP = [
4752
+ .../* @__PURE__ */ new Set([
4753
+ ...codClientes,
4754
+ ...codNoCliente,
4755
+ ...codSopladoRD
4756
+ ])
4282
4757
  ];
4758
+ var codMOPreliquidarTroncalAL02 = [
4759
+ ...codMOTroncal_ReglaLiquidacion1,
4760
+ ...CodsMapeoMOMaterialSopladoTroncal.map((e) => e.CodigoMO)
4761
+ ];
4762
+ function obtenerCodMOHomePass(tipo) {
4763
+ return tipo === "Business" ? codNoCliente : [
4764
+ ...codClientes,
4765
+ ...codSopladoRD
4766
+ ];
4767
+ }
4768
+ __name(obtenerCodMOHomePass, "obtenerCodMOHomePass");
4769
+ function obtenerEspecialidadesCerradas(cierres) {
4770
+ return [
4771
+ cierres.Asfaltado,
4772
+ cierres.OC,
4773
+ cierres.Soplado
4774
+ ].filter((e, _i, arr) => arr[1]?.Estado && e?.Estado).map((e) => e?.Especialidad ?? "");
4775
+ }
4776
+ __name(obtenerEspecialidadesCerradas, "obtenerEspecialidadesCerradas");
4777
+ function esAsignacionPreliquidableAL02(asignacion, tipo, especialidadesCerradas) {
4778
+ const codMO = asignacion.ManoObra.Codigo;
4779
+ const permitida = tipo === "Troncal" ? codMOPreliquidarTroncalAL02.includes(codMO.trim()) : obtenerCodMOHomePass(tipo).includes(codMO);
4780
+ return permitida && !codMOExcluidos.includes(codMO.trim()) && !especialidadesCerradas.includes(asignacion.Especialidad.Codigo);
4781
+ }
4782
+ __name(esAsignacionPreliquidableAL02, "esAsignacionPreliquidableAL02");
4283
4783
 
4284
4784
  // src/Programados/Alemania/AL02/codMOTroncalAL02.ts
4285
- var codMOExcluidos = [
4286
- "T21",
4287
- "T22",
4288
- "T23",
4289
- "T24",
4290
- "T25"
4291
- ];
4292
4785
  var codMOTroncalAL02OC = [];
4293
4786
  var codMOTroncalAL02Soplado = [];
4294
4787
  var codMOTroncalAL02Asfaltado = [];
@@ -4327,62 +4820,6 @@ var codMOTroncalHistoricoAL02 = [
4327
4820
  "T78"
4328
4821
  ];
4329
4822
 
4330
- // src/Programados/Alemania/codigosMOHP.ts
4331
- var codClientes = [
4332
- "031406300",
4333
- "T1_031406300",
4334
- "F2_031406300",
4335
- "031406400",
4336
- "031406500",
4337
- "010602500",
4338
- "073100700",
4339
- "T1_073100700",
4340
- "F2_073100700",
4341
- "073100800",
4342
- "073100900",
4343
- "073101000",
4344
- "T1_073101000",
4345
- "F2_073101000",
4346
- "073101100",
4347
- "073101200",
4348
- "073101300",
4349
- "T1_073101300",
4350
- "F2_073101300",
4351
- "073101400",
4352
- "073101500",
4353
- "073106600",
4354
- "073102400",
4355
- //#region Cambios solicitados por arturo 14-07-2025 Ticket (69876)
4356
- "042904600",
4357
- "042904700",
4358
- "042904800"
4359
- ];
4360
- var codNoCliente = [
4361
- "073100700",
4362
- "T1_073100700",
4363
- "F2_073100700",
4364
- "073100800",
4365
- "073100900",
4366
- "073101000",
4367
- "T1_073101000",
4368
- "F2_073101000",
4369
- "073101100",
4370
- "073101200",
4371
- "073101300",
4372
- "T1_073101300",
4373
- "F2_073101300",
4374
- "073101400",
4375
- "073101500",
4376
- "073006000",
4377
- "073106600",
4378
- "073102400"
4379
- ];
4380
- var codSopladoRD = [
4381
- "T14",
4382
- "T15",
4383
- "T16"
4384
- ];
4385
-
4386
4823
  // src/Programados/Alemania/AL02/codMOClientesAL02.ts
4387
4824
  var codClientes2 = [
4388
4825
  "T1_031406300",
@@ -4613,196 +5050,6 @@ var mapaEstadoObraFaseAL02 = /* @__PURE__ */ new Map([
4613
5050
  ]
4614
5051
  ]);
4615
5052
 
4616
- // src/Programados/Alemania/CodsMapeoMOMaterial.ts
4617
- var CodsMapeoMOMaterial = [
4618
- {
4619
- CodigoMO: "010103200",
4620
- CodigoMaterial: "03DUC-109-204",
4621
- CodMatConector: "03DUC-110-201",
4622
- CantidadPorDucto: 2,
4623
- Alcance: "2X16-12"
4624
- },
4625
- {
4626
- CodigoMO: "010103300",
4627
- CodigoMaterial: "03DUC-109-203",
4628
- CodMatConector: "03DUC-110-201",
4629
- CantidadPorDucto: 4,
4630
- Alcance: "4X16-12"
4631
- },
4632
- {
4633
- CodigoMO: "010103400",
4634
- CodigoMaterial: "03DUC-109-202",
4635
- CodMatConector: "03DUC-110-201",
4636
- CantidadPorDucto: 7,
4637
- Alcance: "7x16-12"
4638
- },
4639
- {
4640
- CodigoMO: "010203900",
4641
- CodigoMaterial: "03DUC-109-212",
4642
- CodMatConector: "03DUC-110-210",
4643
- CantidadPorDucto: 12,
4644
- Alcance: "12x7-4"
4645
- },
4646
- {
4647
- CodigoMO: "010204000",
4648
- CodigoMaterial: "03DUC-109-211",
4649
- CodMatConector: "03DUC-110-210",
4650
- CantidadPorDucto: 24,
4651
- Alcance: "24x7-4"
4652
- },
4653
- {
4654
- CodigoMO: "010203800",
4655
- CodigoMaterial: "03DUC-109-213",
4656
- CodMatConector: "03DUC-110-210",
4657
- CantidadPorDucto: 7,
4658
- Alcance: "7X7-4"
4659
- },
4660
- {
4661
- CodigoMO: "010303000",
4662
- CodigoMaterial: "03DUC-109-201",
4663
- CodMatConector: "03DUC-110-214",
4664
- CantidadPorDucto: 2,
4665
- Alcance: "1x50-40"
4666
- },
4667
- {
4668
- CodigoMO: "",
4669
- CodigoMaterial: "03DUC-109-210",
4670
- CodMatConector: "03DUC-110-207",
4671
- CantidadPorDucto: 1,
4672
- Alcance: ""
4673
- },
4674
- {
4675
- CodigoMO: "010403300",
4676
- CodigoMaterial: "03DUC-109-209",
4677
- CodMatConector: "03DUC-110-204",
4678
- CantidadPorDucto: 1,
4679
- Alcance: "1x14-10"
4680
- },
4681
- {
4682
- CodigoMO: "010403500",
4683
- CodigoMaterial: "03DUC-109-208",
4684
- CodMatConector: "03DUC-110-204",
4685
- CantidadPorDucto: 2,
4686
- Alcance: "2x14-10"
4687
- },
4688
- {
4689
- CodigoMO: "010403600",
4690
- CodigoMaterial: "03DUC-109-207",
4691
- CodMatConector: "03DUC-110-204",
4692
- CantidadPorDucto: 4,
4693
- Alcance: "4x14-10"
4694
- },
4695
- {
4696
- CodigoMO: "010403700",
4697
- CodigoMaterial: "03DUC-109-206",
4698
- CodMatConector: "03DUC-110-204",
4699
- CantidadPorDucto: 7,
4700
- Alcance: "7x14-10"
4701
- },
4702
- {
4703
- CodigoMO: "010206700",
4704
- CodigoMaterial: "03DUC-109-214",
4705
- CodMatConector: "03DUC-110-210",
4706
- CantidadPorDucto: 1,
4707
- Alcance: "1x7-4"
4708
- },
4709
- {
4710
- CodigoMO: "",
4711
- CodigoMaterial: "03DUC-109-205",
4712
- CodMatConector: "03DUC-110-201",
4713
- CantidadPorDucto: 1,
4714
- Alcance: ""
4715
- }
4716
- ];
4717
- var CodsMapeoMOMaterialSopladoClientes = [
4718
- {
4719
- CodigoMO: "T14",
4720
- CodigoMaterial: [
4721
- "02CFO-108-205"
4722
- ]
4723
- },
4724
- {
4725
- CodigoMO: "T15",
4726
- CodigoMaterial: [
4727
- "02CFO-108-201"
4728
- ]
4729
- },
4730
- {
4731
- CodigoMO: "T16",
4732
- CodigoMaterial: [
4733
- "02CFO-108-204"
4734
- ]
4735
- }
4736
- ];
4737
- var CodsMapeoMOMaterialSopladoTroncal = [
4738
- {
4739
- CodigoMO: "042004400",
4740
- CodigoMaterial: [
4741
- "02CFO-107-206"
4742
- ]
4743
- },
4744
- {
4745
- CodigoMO: "041704500",
4746
- CodigoMaterial: [
4747
- "02CFO-107-204"
4748
- ]
4749
- },
4750
- {
4751
- CodigoMO: "041704300",
4752
- CodigoMaterial: [
4753
- "02CFO-107-208"
4754
- ]
4755
- },
4756
- {
4757
- CodigoMO: "041704200",
4758
- CodigoMaterial: [
4759
- "02CFO-107-209"
4760
- ]
4761
- },
4762
- {
4763
- CodigoMO: "062505900",
4764
- CodigoMaterial: [
4765
- "05PAO-114-201",
4766
- "05PAO-114-202"
4767
- ],
4768
- ConsumoManual: true
4769
- }
4770
- ];
4771
- var CodsMapeoMO_Material_Arquertas = [
4772
- {
4773
- CodigoMO: "062705807",
4774
- CodigoMaterial: "06ARQ-115-212"
4775
- },
4776
- {
4777
- CodigoMO: "062705806",
4778
- CodigoMaterial: "06ARQ-115-211"
4779
- },
4780
- {
4781
- CodigoMO: "062705805",
4782
- CodigoMaterial: "06ARQ-115-210"
4783
- },
4784
- {
4785
- CodigoMO: "062705701",
4786
- CodigoMaterial: "06ARQ-115-206"
4787
- },
4788
- {
4789
- CodigoMO: "062705702",
4790
- CodigoMaterial: "06ARQ-115-207"
4791
- },
4792
- {
4793
- CodigoMO: "062705704",
4794
- CodigoMaterial: "06ARQ-115-209"
4795
- },
4796
- {
4797
- CodigoMO: "062705703",
4798
- CodigoMaterial: "06ARQ-115-208"
4799
- },
4800
- {
4801
- CodigoMO: "062705808",
4802
- CodigoMaterial: "06ARQ-115-213"
4803
- }
4804
- ];
4805
-
4806
5053
  // src/Programados/Alemania/AL02/buildPreliquidacionRules1.ts
4807
5054
  var newCodMOTroncalReglaLiquidacion1 = [
4808
5055
  "011304100",
@@ -17524,11 +17771,18 @@ __name(validateUUIDv4Param, "validateUUIDv4Param");
17524
17771
  buildReservaMOJobMajorProjectsAlemaniaAL04,
17525
17772
  buildTenantCollectionName,
17526
17773
  calcularTotalMaterialValorizacionPeru9112,
17774
+ cantidadFijaMOAL04,
17775
+ cantidadMaterialAL04,
17527
17776
  checkAndBuildMaterialsFromStock,
17528
17777
  checkMaterialAvailability,
17778
+ codBalizaAL02,
17529
17779
  codBalizaAL04,
17780
+ codBalizaPreliquidarAL04,
17781
+ codBaremoUnicoDPAL04,
17530
17782
  codClientes,
17531
17783
  codIssueByPeriodoAL02,
17784
+ codMOAsfaltoHijasAL04,
17785
+ codMOAsfaltoMadreAL04,
17532
17786
  codMOClientesAL02,
17533
17787
  codMOClientesAL02Asfaltado,
17534
17788
  codMOClientesAL02OC,
@@ -17537,13 +17791,17 @@ __name(validateUUIDv4Param, "validateUUIDv4Param");
17537
17791
  codMODROPAL04,
17538
17792
  codMODROPAL04OC,
17539
17793
  codMODROPAL04Soplado,
17794
+ codMOExcluidos,
17540
17795
  codMOFTTFAL04,
17541
17796
  codMONoClientesAL02,
17542
17797
  codMONoClientesAL02Asfaltado,
17543
17798
  codMONoClientesAL02OC,
17544
17799
  codMONoClientesAL02Soplado,
17545
17800
  codMONoClientes_ReglaLiquidacion1,
17801
+ codMONoPreliquidablesAL04,
17546
17802
  codMOOcultosAL04,
17803
+ codMOPreliquidarTroncalAL02,
17804
+ codMOPreliquidarTroncalAL04,
17547
17805
  codMOPublico,
17548
17806
  codMOTroncalAL02,
17549
17807
  codMOTroncalAL02Asfaltado,
@@ -17556,11 +17814,14 @@ __name(validateUUIDv4Param, "validateUUIDv4Param");
17556
17814
  codMOTroncalAL04Soplado,
17557
17815
  codMOTroncalHistoricoAL02,
17558
17816
  codMOTroncal_ReglaLiquidacion1,
17817
+ codMaterialesOcultosAL04,
17559
17818
  codNoCliente,
17560
17819
  codSopladoRD,
17820
+ codigosBaremosSubcontrataAL02,
17561
17821
  codigosMOT1_F2,
17562
17822
  codigosMaterialDuctos,
17563
17823
  codigosMaterialUGG,
17824
+ codigosSopladoHP,
17564
17825
  collections,
17565
17826
  consumirStockPersonal,
17566
17827
  convertDates,
@@ -17569,8 +17830,13 @@ __name(validateUUIDv4Param, "validateUUIDv4Param");
17569
17830
  db_root,
17570
17831
  documentRequirementAltasNVT,
17571
17832
  empresas,
17833
+ esAsignacionPreliquidableAL02,
17834
+ esAsignacionPreliquidableAL04,
17572
17835
  esCadenaFechaISOValida,
17836
+ esMaterialDuctoAL04,
17573
17837
  esObjetoFecha,
17838
+ estadoRechazadaPorMetraje,
17839
+ estadoRechazadaPorMetrajeAL04,
17574
17840
  formatCurrencyV1,
17575
17841
  formatNumberSmart,
17576
17842
  formatNumberV1,
@@ -17604,19 +17870,30 @@ __name(validateUUIDv4Param, "validateUUIDv4Param");
17604
17870
  mapaReglaSopladoClientes,
17605
17871
  mapaReglaSopladoTroncal,
17606
17872
  mapeoZonasSimilares,
17873
+ materialesAutomaticosAL04,
17874
+ materialesSeleccionablesAL04,
17875
+ modoMaterialesAL04,
17876
+ motivoConsumoAlmacenAL04,
17877
+ motivoConsumoMaterialAutomaticoDuctos,
17607
17878
  newCodMOTroncalReglaLiquidacion1,
17879
+ obtenerCodMOHomePass,
17880
+ obtenerCodMOHomePassAL04,
17608
17881
  obtenerDocumentacionClientes,
17609
17882
  obtenerDocumentacionNoClientes,
17883
+ obtenerEspecialidadesCerradas,
17884
+ obtenerEspecialidadesCerradasAL04,
17610
17885
  obtenerPrecioContratistaMaterial,
17611
17886
  obtenerPrecioManoObraAL02,
17612
17887
  obtenerPrecioManoObraAL04,
17613
17888
  obtenerTipoYCodigoMO,
17614
17889
  paisMap,
17615
17890
  parseDuplicateKeyError,
17891
+ prorratearMaterialesAL04,
17616
17892
  roundNumber,
17617
17893
  searchCurrentContractorSpecialtyPrice,
17618
17894
  setColModels,
17619
17895
  setContext,
17896
+ subMaterialesAL04,
17620
17897
  throwSomacylError,
17621
17898
  updatePriceContractorMOAL02,
17622
17899
  updatePriceContractorMOAL04,
@@ -17625,6 +17902,7 @@ __name(validateUUIDv4Param, "validateUUIDv4Param");
17625
17902
  updatePricePBBudgetAlemaniaAL02,
17626
17903
  updatePricePBBudgetAlemaniaAL04,
17627
17904
  uuidRegex,
17905
+ validarAsfaltoAL04,
17628
17906
  validateNoLookup,
17629
17907
  validateUUIDv4Param,
17630
17908
  verifyDetailsFinalizeSomacyl,