sigo-package 1.2.36 → 1.2.38
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.d.mts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +56 -1
- package/dist/index.mjs +55 -1
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as sigo_entities from 'sigo-entities';
|
|
2
|
-
import { ManoObraENTITY, ReservaENTITY, ItemDetalleLogisticaDTO, HomePassDTO, FlujoDocDTO, NodoDocDTO, DocumentacionPEXENTITY, ManoObraGlobalENTITY, PrecioEspecialidadENTITY, ObraChile9512ENTITY, ValorizacionManoObraDTO, ValorizacionDTO, PrecioContratistaMOAL02ENTITY, StockPersonalENTITY, StockAlmacenENTITY, TrabajoENTITY, ActividadesDTO, PreciosVigentesDTO, ContratoOTENTITY } from 'sigo-entities';
|
|
2
|
+
import { ManoObraENTITY, ReservaENTITY, ItemDetalleLogisticaDTO, HomePassDTO, FlujoDocDTO, NodoDocDTO, DocumentacionPEXENTITY, ManoObraGlobalENTITY, PrecioEspecialidadENTITY, ObraChile9512ENTITY, ValorizacionManoObraDTO, ValorizacionDTO, PrecioContratistaMOAL02ENTITY, StockPersonalENTITY, StockAlmacenENTITY, ConsumoMaterialAlemaniaENTITY, TrabajoENTITY, ActividadesDTO, PreciosVigentesDTO, ContratoOTENTITY } from 'sigo-entities';
|
|
3
3
|
|
|
4
4
|
interface IenvSIGO$1 {
|
|
5
5
|
SISTEMAS_VALORIZACION_MANO_OBRA: string[];
|
|
@@ -335,6 +335,8 @@ declare function buildDataMaterialsRule(Materiales: Map<string, IMOAndMaterialsR
|
|
|
335
335
|
|
|
336
336
|
declare function consumirStockPersonal(codDelegacion: string, codigoMaterial: string): boolean;
|
|
337
337
|
|
|
338
|
+
declare function checkMaterialAvailability(materials: IMateriales[], dataMaterialesUtilizados: IMateriales[], dataStockPersonal: StockPersonalENTITY[], dataStockAlmacen: StockAlmacenENTITY[], dataConsumoMaterial: ConsumoMaterialAlemaniaENTITY[], Controller: any): void;
|
|
339
|
+
|
|
338
340
|
declare const CalcularResumenLiquidaciones: Funcion$1;
|
|
339
341
|
interface Funcion$1 {
|
|
340
342
|
(trabajo: TrabajoType, trabajos: any[]): ResumenLiquidacionesTypeChile;
|
|
@@ -527,4 +529,4 @@ declare function getContainerName(dirname: string): string;
|
|
|
527
529
|
|
|
528
530
|
declare function buildTenantCollectionName(countryName: string, delegation: string, collection: string): string;
|
|
529
531
|
|
|
530
|
-
export { ActualizarDataManoObra, ActualizarDataReserva, ActualizarDataResumenLiquidaciones, ActualizarDataResumenValorizacionesAlemania, ActualizarDataTrabajos, BuscarZonaContratista, CalcularResumenHPMOLiquidado, CalcularResumenLiquidaciones, CalcularResumenValorizacionesAlemania, CodigosMaterialDuctosAL02, CodigosMaterialDuctosAL04, CodigosMaterialSoplado, CodsMapeoMOMaterial, CodsMapeoMOMaterialNVT01, CodsMapeoMOMaterialSopladoClientes, CodsMapeoMOMaterialSopladoTroncal, CodsMapeoMO_Material_Arquertas, CompararFechas, CurrencyFormat, DocumentacionReplanteo, EstadoEspecialidad9612, GemeindeChangeNomenclatura, GetCodigoFechaActual, type IDocumentacion, type IMOAndMaterialsRules, type IMateriales, MOCantidadNVT01, MOHijasAL04, MOHijasDEPTH, MapeoEspecialidades9612, MapeoMOBOMAL04, MapeoMatBOMAL04, type MatRetiradosType, type MatStockAlmacenType, type MatStockPersonalType$1 as MatStockPersonalType, type MatUtilizadosType$1 as MatUtilizadosType, type MoUoType$1 as MoUoType, ModelDataFlujosDocumentacionReplanteo, ObtenerMONoReservada, ObtenerPrecioContratistaVigente, ObtenerZonaAsignada, type ResumenLiquidacionesType, type ResumenLiquidacionesTypeChile, SEGMENT_TY, type TARGET, UpdateNodosDocDP, buildDataMaterialsRule, buildTenantCollectionName, checkAndBuildMaterialsFromStock, codBalizaAL04, codClientes, codMOClientesAL02, codMOClientesAL02Asfaltado, codMOClientesAL02OC, codMOClientesAL02Soplado, codMOClientes_ReglaLiquidacion1, codMODROPAL04, codMODROPAL04OC, codMODROPAL04Soplado, codMOFTTFAL04, codMONoClientesAL02, codMONoClientesAL02Asfaltado, codMONoClientesAL02OC, codMONoClientesAL02Soplado, codMONoClientes_ReglaLiquidacion1, codMOOcultosAL04, codMOPublico, codMOTroncalAL02, codMOTroncalAL02Asfaltado, codMOTroncalAL02OC, codMOTroncalAL02Soplado, codMOTroncalAL04, codMOTroncalAL04Asfaltado, codMOTroncalAL04OC, codMOTroncalAL04Soplado, codMOTroncal_ReglaLiquidacion1, codNoCliente, codSopladoRD, codigosMOT1_F2, codigosMaterialDuctos, codigosMaterialUGG, consumirStockPersonal, convertDates, dataFlujosHomePass, esCadenaFechaISOValida, esObjetoFecha, generateUniqueNumber, generateUniqueNumberArray, getChannelName, getContainerName, getDateInTimeZone, getKeyRedisSortedSet, getModelDataAdicional, getNextID_Valorizacion, getQueueName, getQueueNameSaveOneNotification, isValidDate, isValidPartialEntity, logTiempoProceso, mapaEstadoObraFaseAL02, mapaMOMaterialAL02, mapaMOMaterialAL04, mapaReglaSopladoClientes, mapaReglaSopladoTroncal, obtenerDocumentacionClientes, obtenerDocumentacionNoClientes, obtenerPrecioManoObraAL02, obtenerPrecioManoObraAL04, obtenerTipoYCodigoMO, paisMap, searchCurrentContractorSpecialtyPrice, setContext, updatePriceContractorMOAL02, updatePriceContractorMOAL04, updatePriceMOAL02, updatePriceMOAL04, validateNoLookup };
|
|
532
|
+
export { ActualizarDataManoObra, ActualizarDataReserva, ActualizarDataResumenLiquidaciones, ActualizarDataResumenValorizacionesAlemania, ActualizarDataTrabajos, BuscarZonaContratista, CalcularResumenHPMOLiquidado, CalcularResumenLiquidaciones, CalcularResumenValorizacionesAlemania, CodigosMaterialDuctosAL02, CodigosMaterialDuctosAL04, CodigosMaterialSoplado, CodsMapeoMOMaterial, CodsMapeoMOMaterialNVT01, CodsMapeoMOMaterialSopladoClientes, CodsMapeoMOMaterialSopladoTroncal, CodsMapeoMO_Material_Arquertas, CompararFechas, CurrencyFormat, DocumentacionReplanteo, EstadoEspecialidad9612, GemeindeChangeNomenclatura, GetCodigoFechaActual, type IDocumentacion, type IMOAndMaterialsRules, type IMateriales, MOCantidadNVT01, MOHijasAL04, MOHijasDEPTH, MapeoEspecialidades9612, MapeoMOBOMAL04, MapeoMatBOMAL04, type MatRetiradosType, type MatStockAlmacenType, type MatStockPersonalType$1 as MatStockPersonalType, type MatUtilizadosType$1 as MatUtilizadosType, type MoUoType$1 as MoUoType, ModelDataFlujosDocumentacionReplanteo, ObtenerMONoReservada, ObtenerPrecioContratistaVigente, ObtenerZonaAsignada, type ResumenLiquidacionesType, type ResumenLiquidacionesTypeChile, SEGMENT_TY, type TARGET, UpdateNodosDocDP, buildDataMaterialsRule, buildTenantCollectionName, checkAndBuildMaterialsFromStock, checkMaterialAvailability, codBalizaAL04, codClientes, codMOClientesAL02, codMOClientesAL02Asfaltado, codMOClientesAL02OC, codMOClientesAL02Soplado, codMOClientes_ReglaLiquidacion1, codMODROPAL04, codMODROPAL04OC, codMODROPAL04Soplado, codMOFTTFAL04, codMONoClientesAL02, codMONoClientesAL02Asfaltado, codMONoClientesAL02OC, codMONoClientesAL02Soplado, codMONoClientes_ReglaLiquidacion1, codMOOcultosAL04, codMOPublico, codMOTroncalAL02, codMOTroncalAL02Asfaltado, codMOTroncalAL02OC, codMOTroncalAL02Soplado, codMOTroncalAL04, codMOTroncalAL04Asfaltado, codMOTroncalAL04OC, codMOTroncalAL04Soplado, codMOTroncal_ReglaLiquidacion1, codNoCliente, codSopladoRD, codigosMOT1_F2, codigosMaterialDuctos, codigosMaterialUGG, consumirStockPersonal, convertDates, dataFlujosHomePass, esCadenaFechaISOValida, esObjetoFecha, generateUniqueNumber, generateUniqueNumberArray, getChannelName, getContainerName, getDateInTimeZone, getKeyRedisSortedSet, getModelDataAdicional, getNextID_Valorizacion, getQueueName, getQueueNameSaveOneNotification, isValidDate, isValidPartialEntity, logTiempoProceso, mapaEstadoObraFaseAL02, mapaMOMaterialAL02, mapaMOMaterialAL04, mapaReglaSopladoClientes, mapaReglaSopladoTroncal, obtenerDocumentacionClientes, obtenerDocumentacionNoClientes, obtenerPrecioManoObraAL02, obtenerPrecioManoObraAL04, obtenerTipoYCodigoMO, paisMap, searchCurrentContractorSpecialtyPrice, setContext, updatePriceContractorMOAL02, updatePriceContractorMOAL04, updatePriceMOAL02, updatePriceMOAL04, validateNoLookup };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as sigo_entities from 'sigo-entities';
|
|
2
|
-
import { ManoObraENTITY, ReservaENTITY, ItemDetalleLogisticaDTO, HomePassDTO, FlujoDocDTO, NodoDocDTO, DocumentacionPEXENTITY, ManoObraGlobalENTITY, PrecioEspecialidadENTITY, ObraChile9512ENTITY, ValorizacionManoObraDTO, ValorizacionDTO, PrecioContratistaMOAL02ENTITY, StockPersonalENTITY, StockAlmacenENTITY, TrabajoENTITY, ActividadesDTO, PreciosVigentesDTO, ContratoOTENTITY } from 'sigo-entities';
|
|
2
|
+
import { ManoObraENTITY, ReservaENTITY, ItemDetalleLogisticaDTO, HomePassDTO, FlujoDocDTO, NodoDocDTO, DocumentacionPEXENTITY, ManoObraGlobalENTITY, PrecioEspecialidadENTITY, ObraChile9512ENTITY, ValorizacionManoObraDTO, ValorizacionDTO, PrecioContratistaMOAL02ENTITY, StockPersonalENTITY, StockAlmacenENTITY, ConsumoMaterialAlemaniaENTITY, TrabajoENTITY, ActividadesDTO, PreciosVigentesDTO, ContratoOTENTITY } from 'sigo-entities';
|
|
3
3
|
|
|
4
4
|
interface IenvSIGO$1 {
|
|
5
5
|
SISTEMAS_VALORIZACION_MANO_OBRA: string[];
|
|
@@ -335,6 +335,8 @@ declare function buildDataMaterialsRule(Materiales: Map<string, IMOAndMaterialsR
|
|
|
335
335
|
|
|
336
336
|
declare function consumirStockPersonal(codDelegacion: string, codigoMaterial: string): boolean;
|
|
337
337
|
|
|
338
|
+
declare function checkMaterialAvailability(materials: IMateriales[], dataMaterialesUtilizados: IMateriales[], dataStockPersonal: StockPersonalENTITY[], dataStockAlmacen: StockAlmacenENTITY[], dataConsumoMaterial: ConsumoMaterialAlemaniaENTITY[], Controller: any): void;
|
|
339
|
+
|
|
338
340
|
declare const CalcularResumenLiquidaciones: Funcion$1;
|
|
339
341
|
interface Funcion$1 {
|
|
340
342
|
(trabajo: TrabajoType, trabajos: any[]): ResumenLiquidacionesTypeChile;
|
|
@@ -527,4 +529,4 @@ declare function getContainerName(dirname: string): string;
|
|
|
527
529
|
|
|
528
530
|
declare function buildTenantCollectionName(countryName: string, delegation: string, collection: string): string;
|
|
529
531
|
|
|
530
|
-
export { ActualizarDataManoObra, ActualizarDataReserva, ActualizarDataResumenLiquidaciones, ActualizarDataResumenValorizacionesAlemania, ActualizarDataTrabajos, BuscarZonaContratista, CalcularResumenHPMOLiquidado, CalcularResumenLiquidaciones, CalcularResumenValorizacionesAlemania, CodigosMaterialDuctosAL02, CodigosMaterialDuctosAL04, CodigosMaterialSoplado, CodsMapeoMOMaterial, CodsMapeoMOMaterialNVT01, CodsMapeoMOMaterialSopladoClientes, CodsMapeoMOMaterialSopladoTroncal, CodsMapeoMO_Material_Arquertas, CompararFechas, CurrencyFormat, DocumentacionReplanteo, EstadoEspecialidad9612, GemeindeChangeNomenclatura, GetCodigoFechaActual, type IDocumentacion, type IMOAndMaterialsRules, type IMateriales, MOCantidadNVT01, MOHijasAL04, MOHijasDEPTH, MapeoEspecialidades9612, MapeoMOBOMAL04, MapeoMatBOMAL04, type MatRetiradosType, type MatStockAlmacenType, type MatStockPersonalType$1 as MatStockPersonalType, type MatUtilizadosType$1 as MatUtilizadosType, type MoUoType$1 as MoUoType, ModelDataFlujosDocumentacionReplanteo, ObtenerMONoReservada, ObtenerPrecioContratistaVigente, ObtenerZonaAsignada, type ResumenLiquidacionesType, type ResumenLiquidacionesTypeChile, SEGMENT_TY, type TARGET, UpdateNodosDocDP, buildDataMaterialsRule, buildTenantCollectionName, checkAndBuildMaterialsFromStock, codBalizaAL04, codClientes, codMOClientesAL02, codMOClientesAL02Asfaltado, codMOClientesAL02OC, codMOClientesAL02Soplado, codMOClientes_ReglaLiquidacion1, codMODROPAL04, codMODROPAL04OC, codMODROPAL04Soplado, codMOFTTFAL04, codMONoClientesAL02, codMONoClientesAL02Asfaltado, codMONoClientesAL02OC, codMONoClientesAL02Soplado, codMONoClientes_ReglaLiquidacion1, codMOOcultosAL04, codMOPublico, codMOTroncalAL02, codMOTroncalAL02Asfaltado, codMOTroncalAL02OC, codMOTroncalAL02Soplado, codMOTroncalAL04, codMOTroncalAL04Asfaltado, codMOTroncalAL04OC, codMOTroncalAL04Soplado, codMOTroncal_ReglaLiquidacion1, codNoCliente, codSopladoRD, codigosMOT1_F2, codigosMaterialDuctos, codigosMaterialUGG, consumirStockPersonal, convertDates, dataFlujosHomePass, esCadenaFechaISOValida, esObjetoFecha, generateUniqueNumber, generateUniqueNumberArray, getChannelName, getContainerName, getDateInTimeZone, getKeyRedisSortedSet, getModelDataAdicional, getNextID_Valorizacion, getQueueName, getQueueNameSaveOneNotification, isValidDate, isValidPartialEntity, logTiempoProceso, mapaEstadoObraFaseAL02, mapaMOMaterialAL02, mapaMOMaterialAL04, mapaReglaSopladoClientes, mapaReglaSopladoTroncal, obtenerDocumentacionClientes, obtenerDocumentacionNoClientes, obtenerPrecioManoObraAL02, obtenerPrecioManoObraAL04, obtenerTipoYCodigoMO, paisMap, searchCurrentContractorSpecialtyPrice, setContext, updatePriceContractorMOAL02, updatePriceContractorMOAL04, updatePriceMOAL02, updatePriceMOAL04, validateNoLookup };
|
|
532
|
+
export { ActualizarDataManoObra, ActualizarDataReserva, ActualizarDataResumenLiquidaciones, ActualizarDataResumenValorizacionesAlemania, ActualizarDataTrabajos, BuscarZonaContratista, CalcularResumenHPMOLiquidado, CalcularResumenLiquidaciones, CalcularResumenValorizacionesAlemania, CodigosMaterialDuctosAL02, CodigosMaterialDuctosAL04, CodigosMaterialSoplado, CodsMapeoMOMaterial, CodsMapeoMOMaterialNVT01, CodsMapeoMOMaterialSopladoClientes, CodsMapeoMOMaterialSopladoTroncal, CodsMapeoMO_Material_Arquertas, CompararFechas, CurrencyFormat, DocumentacionReplanteo, EstadoEspecialidad9612, GemeindeChangeNomenclatura, GetCodigoFechaActual, type IDocumentacion, type IMOAndMaterialsRules, type IMateriales, MOCantidadNVT01, MOHijasAL04, MOHijasDEPTH, MapeoEspecialidades9612, MapeoMOBOMAL04, MapeoMatBOMAL04, type MatRetiradosType, type MatStockAlmacenType, type MatStockPersonalType$1 as MatStockPersonalType, type MatUtilizadosType$1 as MatUtilizadosType, type MoUoType$1 as MoUoType, ModelDataFlujosDocumentacionReplanteo, ObtenerMONoReservada, ObtenerPrecioContratistaVigente, ObtenerZonaAsignada, type ResumenLiquidacionesType, type ResumenLiquidacionesTypeChile, SEGMENT_TY, type TARGET, UpdateNodosDocDP, buildDataMaterialsRule, buildTenantCollectionName, checkAndBuildMaterialsFromStock, checkMaterialAvailability, codBalizaAL04, codClientes, codMOClientesAL02, codMOClientesAL02Asfaltado, codMOClientesAL02OC, codMOClientesAL02Soplado, codMOClientes_ReglaLiquidacion1, codMODROPAL04, codMODROPAL04OC, codMODROPAL04Soplado, codMOFTTFAL04, codMONoClientesAL02, codMONoClientesAL02Asfaltado, codMONoClientesAL02OC, codMONoClientesAL02Soplado, codMONoClientes_ReglaLiquidacion1, codMOOcultosAL04, codMOPublico, codMOTroncalAL02, codMOTroncalAL02Asfaltado, codMOTroncalAL02OC, codMOTroncalAL02Soplado, codMOTroncalAL04, codMOTroncalAL04Asfaltado, codMOTroncalAL04OC, codMOTroncalAL04Soplado, codMOTroncal_ReglaLiquidacion1, codNoCliente, codSopladoRD, codigosMOT1_F2, codigosMaterialDuctos, codigosMaterialUGG, consumirStockPersonal, convertDates, dataFlujosHomePass, esCadenaFechaISOValida, esObjetoFecha, generateUniqueNumber, generateUniqueNumberArray, getChannelName, getContainerName, getDateInTimeZone, getKeyRedisSortedSet, getModelDataAdicional, getNextID_Valorizacion, getQueueName, getQueueNameSaveOneNotification, isValidDate, isValidPartialEntity, logTiempoProceso, mapaEstadoObraFaseAL02, mapaMOMaterialAL02, mapaMOMaterialAL04, mapaReglaSopladoClientes, mapaReglaSopladoTroncal, obtenerDocumentacionClientes, obtenerDocumentacionNoClientes, obtenerPrecioManoObraAL02, obtenerPrecioManoObraAL04, obtenerTipoYCodigoMO, paisMap, searchCurrentContractorSpecialtyPrice, setContext, updatePriceContractorMOAL02, updatePriceContractorMOAL04, updatePriceMOAL02, updatePriceMOAL04, validateNoLookup };
|
package/dist/index.js
CHANGED
|
@@ -61,6 +61,7 @@ __export(index_exports, {
|
|
|
61
61
|
buildDataMaterialsRule: () => buildDataMaterialsRule,
|
|
62
62
|
buildTenantCollectionName: () => buildTenantCollectionName,
|
|
63
63
|
checkAndBuildMaterialsFromStock: () => checkAndBuildMaterialsFromStock,
|
|
64
|
+
checkMaterialAvailability: () => checkMaterialAvailability,
|
|
64
65
|
codBalizaAL04: () => codBalizaAL04,
|
|
65
66
|
codClientes: () => codClientes,
|
|
66
67
|
codMOClientesAL02: () => codMOClientesAL02,
|
|
@@ -4410,7 +4411,19 @@ __name(buildPreliquidacionRules1, "buildPreliquidacionRules1");
|
|
|
4410
4411
|
|
|
4411
4412
|
// src/Programados/Alemania/AL02/mapaMOMaterialAL02.ts
|
|
4412
4413
|
var mapaMOMaterialAL02 = new Map([
|
|
4413
|
-
...buildPreliquidacionRules1()
|
|
4414
|
+
...buildPreliquidacionRules1(),
|
|
4415
|
+
[
|
|
4416
|
+
"073006000",
|
|
4417
|
+
{
|
|
4418
|
+
Codigo: "073006000",
|
|
4419
|
+
ManoObra: [],
|
|
4420
|
+
Materiales: [],
|
|
4421
|
+
CantidadFija: true,
|
|
4422
|
+
CantidadPadre: false,
|
|
4423
|
+
Cantidad: 1,
|
|
4424
|
+
Factor: 1
|
|
4425
|
+
}
|
|
4426
|
+
]
|
|
4414
4427
|
]);
|
|
4415
4428
|
|
|
4416
4429
|
// src/Programados/Alemania/CalcularResumenHPMOLiquidado/index.ts
|
|
@@ -6000,6 +6013,47 @@ function buildDataMaterialsRule(Materiales, dataStockPersonal, dataStockAlmacen,
|
|
|
6000
6013
|
}
|
|
6001
6014
|
__name(buildDataMaterialsRule, "buildDataMaterialsRule");
|
|
6002
6015
|
|
|
6016
|
+
// src/Programados/Alemania/checkMaterialAvailability.ts
|
|
6017
|
+
function checkMaterialAvailability(materials, dataMaterialesUtilizados, dataStockPersonal, dataStockAlmacen, dataConsumoMaterial, Controller) {
|
|
6018
|
+
const dataMUStockPersonal = dataMaterialesUtilizados.filter((e) => e.stock === "Personal");
|
|
6019
|
+
const dataMUStockAlmacen = dataMaterialesUtilizados.filter((e) => e.stock === "Almacen");
|
|
6020
|
+
for (const material of materials) {
|
|
6021
|
+
if (material.stock === "Personal") {
|
|
6022
|
+
const stockPersonal = dataStockPersonal.find((e) => e.ID_StockPersonal === material.ID);
|
|
6023
|
+
if (!stockPersonal) {
|
|
6024
|
+
throw new Controller.SigoError(`No se encontr\xF3 el material ID_StockPersonal "${material.ID}" en data stock personal.`);
|
|
6025
|
+
}
|
|
6026
|
+
const utilizadoLocal = dataMUStockPersonal.filter((e) => e.ID === material.ID).reduce((acc, el) => acc += el.cantidad, 0);
|
|
6027
|
+
const { Despacho, Devolucion, Liquidacion, DespachoTR, DevolucionTR } = stockPersonal;
|
|
6028
|
+
const disponible = Despacho - Devolucion - Liquidacion + DespachoTR - DevolucionTR - utilizadoLocal;
|
|
6029
|
+
if (disponible < material.cantidad) {
|
|
6030
|
+
throw new Controller.SigoError(`No tiene stock personal suficiente para el material '${material.item.Codigo}${material.lote ? ` (lote: ${material.lote})` : ""}' para este trabajo. (Disponible: ${disponible})`);
|
|
6031
|
+
}
|
|
6032
|
+
} else if (material.stock === "Almacen") {
|
|
6033
|
+
const stockAlmacen = dataStockAlmacen.find((e) => e.ID_StockAlmacen === material.ID);
|
|
6034
|
+
if (!stockAlmacen) {
|
|
6035
|
+
throw new Controller.SigoError(`No se encontr\xF3 el material ID_StockAlmacen "${material.ID}" en data stock alamc\xE9n.`);
|
|
6036
|
+
}
|
|
6037
|
+
const utilizadoLocal = dataMUStockAlmacen.filter((e) => e.ID === material.ID).reduce((acc, el) => acc += el.cantidad, 0);
|
|
6038
|
+
const utilizadoCM = dataConsumoMaterial.reduce((ac, e) => {
|
|
6039
|
+
const exist = e.CosumoMaterial.filter((cm) => cm.CodigoLlave === stockAlmacen.CodigoLlave);
|
|
6040
|
+
if (exist.length > 1) {
|
|
6041
|
+
throw new Controller.SigoError(`No se pudo calcular utilizado consumo material.`);
|
|
6042
|
+
}
|
|
6043
|
+
return ac += exist.length ? exist[0].Cantidad : 0;
|
|
6044
|
+
}, 0);
|
|
6045
|
+
const { Ingreso, Despacho, Devolucion } = stockAlmacen;
|
|
6046
|
+
const disponible = Ingreso - Despacho + Devolucion - utilizadoLocal - utilizadoCM;
|
|
6047
|
+
if (disponible < material.cantidad) {
|
|
6048
|
+
throw new Controller.SigoError(`No tiene stock almac\xE9n suficiente para el material '${material.item.Codigo}${material.lote ? ` (lote: ${material.lote})` : ""}' para este trabajo. (Disponible: ${disponible})`);
|
|
6049
|
+
}
|
|
6050
|
+
} else {
|
|
6051
|
+
throw new Controller.SigoError(`No se encontraron casos para el tipo de stock ${material.stock}`);
|
|
6052
|
+
}
|
|
6053
|
+
}
|
|
6054
|
+
}
|
|
6055
|
+
__name(checkMaterialAvailability, "checkMaterialAvailability");
|
|
6056
|
+
|
|
6003
6057
|
// src/Programados/Colombia/9612/MapaEspecialidadesColombia.ts
|
|
6004
6058
|
var EstadoEspecialidad9612 = /* @__PURE__ */ function(EstadoEspecialidad96122) {
|
|
6005
6059
|
EstadoEspecialidad96122["ACTIVO"] = "ACTIVO";
|
|
@@ -6688,6 +6742,7 @@ var getNextID_Valorizacion = /* @__PURE__ */ __name((valorizaciones) => {
|
|
|
6688
6742
|
buildDataMaterialsRule,
|
|
6689
6743
|
buildTenantCollectionName,
|
|
6690
6744
|
checkAndBuildMaterialsFromStock,
|
|
6745
|
+
checkMaterialAvailability,
|
|
6691
6746
|
codBalizaAL04,
|
|
6692
6747
|
codClientes,
|
|
6693
6748
|
codMOClientesAL02,
|
package/dist/index.mjs
CHANGED
|
@@ -4281,7 +4281,19 @@ __name(buildPreliquidacionRules1, "buildPreliquidacionRules1");
|
|
|
4281
4281
|
|
|
4282
4282
|
// src/Programados/Alemania/AL02/mapaMOMaterialAL02.ts
|
|
4283
4283
|
var mapaMOMaterialAL02 = new Map([
|
|
4284
|
-
...buildPreliquidacionRules1()
|
|
4284
|
+
...buildPreliquidacionRules1(),
|
|
4285
|
+
[
|
|
4286
|
+
"073006000",
|
|
4287
|
+
{
|
|
4288
|
+
Codigo: "073006000",
|
|
4289
|
+
ManoObra: [],
|
|
4290
|
+
Materiales: [],
|
|
4291
|
+
CantidadFija: true,
|
|
4292
|
+
CantidadPadre: false,
|
|
4293
|
+
Cantidad: 1,
|
|
4294
|
+
Factor: 1
|
|
4295
|
+
}
|
|
4296
|
+
]
|
|
4285
4297
|
]);
|
|
4286
4298
|
|
|
4287
4299
|
// src/Programados/Alemania/CalcularResumenHPMOLiquidado/index.ts
|
|
@@ -5871,6 +5883,47 @@ function buildDataMaterialsRule(Materiales, dataStockPersonal, dataStockAlmacen,
|
|
|
5871
5883
|
}
|
|
5872
5884
|
__name(buildDataMaterialsRule, "buildDataMaterialsRule");
|
|
5873
5885
|
|
|
5886
|
+
// src/Programados/Alemania/checkMaterialAvailability.ts
|
|
5887
|
+
function checkMaterialAvailability(materials, dataMaterialesUtilizados, dataStockPersonal, dataStockAlmacen, dataConsumoMaterial, Controller) {
|
|
5888
|
+
const dataMUStockPersonal = dataMaterialesUtilizados.filter((e) => e.stock === "Personal");
|
|
5889
|
+
const dataMUStockAlmacen = dataMaterialesUtilizados.filter((e) => e.stock === "Almacen");
|
|
5890
|
+
for (const material of materials) {
|
|
5891
|
+
if (material.stock === "Personal") {
|
|
5892
|
+
const stockPersonal = dataStockPersonal.find((e) => e.ID_StockPersonal === material.ID);
|
|
5893
|
+
if (!stockPersonal) {
|
|
5894
|
+
throw new Controller.SigoError(`No se encontr\xF3 el material ID_StockPersonal "${material.ID}" en data stock personal.`);
|
|
5895
|
+
}
|
|
5896
|
+
const utilizadoLocal = dataMUStockPersonal.filter((e) => e.ID === material.ID).reduce((acc, el) => acc += el.cantidad, 0);
|
|
5897
|
+
const { Despacho, Devolucion, Liquidacion, DespachoTR, DevolucionTR } = stockPersonal;
|
|
5898
|
+
const disponible = Despacho - Devolucion - Liquidacion + DespachoTR - DevolucionTR - utilizadoLocal;
|
|
5899
|
+
if (disponible < material.cantidad) {
|
|
5900
|
+
throw new Controller.SigoError(`No tiene stock personal suficiente para el material '${material.item.Codigo}${material.lote ? ` (lote: ${material.lote})` : ""}' para este trabajo. (Disponible: ${disponible})`);
|
|
5901
|
+
}
|
|
5902
|
+
} else if (material.stock === "Almacen") {
|
|
5903
|
+
const stockAlmacen = dataStockAlmacen.find((e) => e.ID_StockAlmacen === material.ID);
|
|
5904
|
+
if (!stockAlmacen) {
|
|
5905
|
+
throw new Controller.SigoError(`No se encontr\xF3 el material ID_StockAlmacen "${material.ID}" en data stock alamc\xE9n.`);
|
|
5906
|
+
}
|
|
5907
|
+
const utilizadoLocal = dataMUStockAlmacen.filter((e) => e.ID === material.ID).reduce((acc, el) => acc += el.cantidad, 0);
|
|
5908
|
+
const utilizadoCM = dataConsumoMaterial.reduce((ac, e) => {
|
|
5909
|
+
const exist = e.CosumoMaterial.filter((cm) => cm.CodigoLlave === stockAlmacen.CodigoLlave);
|
|
5910
|
+
if (exist.length > 1) {
|
|
5911
|
+
throw new Controller.SigoError(`No se pudo calcular utilizado consumo material.`);
|
|
5912
|
+
}
|
|
5913
|
+
return ac += exist.length ? exist[0].Cantidad : 0;
|
|
5914
|
+
}, 0);
|
|
5915
|
+
const { Ingreso, Despacho, Devolucion } = stockAlmacen;
|
|
5916
|
+
const disponible = Ingreso - Despacho + Devolucion - utilizadoLocal - utilizadoCM;
|
|
5917
|
+
if (disponible < material.cantidad) {
|
|
5918
|
+
throw new Controller.SigoError(`No tiene stock almac\xE9n suficiente para el material '${material.item.Codigo}${material.lote ? ` (lote: ${material.lote})` : ""}' para este trabajo. (Disponible: ${disponible})`);
|
|
5919
|
+
}
|
|
5920
|
+
} else {
|
|
5921
|
+
throw new Controller.SigoError(`No se encontraron casos para el tipo de stock ${material.stock}`);
|
|
5922
|
+
}
|
|
5923
|
+
}
|
|
5924
|
+
}
|
|
5925
|
+
__name(checkMaterialAvailability, "checkMaterialAvailability");
|
|
5926
|
+
|
|
5874
5927
|
// src/Programados/Colombia/9612/MapaEspecialidadesColombia.ts
|
|
5875
5928
|
var EstadoEspecialidad9612 = /* @__PURE__ */ function(EstadoEspecialidad96122) {
|
|
5876
5929
|
EstadoEspecialidad96122["ACTIVO"] = "ACTIVO";
|
|
@@ -6558,6 +6611,7 @@ export {
|
|
|
6558
6611
|
buildDataMaterialsRule,
|
|
6559
6612
|
buildTenantCollectionName,
|
|
6560
6613
|
checkAndBuildMaterialsFromStock,
|
|
6614
|
+
checkMaterialAvailability,
|
|
6561
6615
|
codBalizaAL04,
|
|
6562
6616
|
codClientes,
|
|
6563
6617
|
codMOClientesAL02,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sigo-package",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.38",
|
|
4
4
|
"description": "Funciones compartidas sigo",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
@@ -21,6 +21,6 @@
|
|
|
21
21
|
"typescript": "^5.7.3"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
|
-
"sigo-entities": "^1.0.
|
|
24
|
+
"sigo-entities": "^1.0.76"
|
|
25
25
|
}
|
|
26
26
|
}
|