sigo-package 1.1.21 → 1.1.22

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.
Files changed (179) hide show
  1. package/dist/Programados/{dtos → Dtos}/ItemDto.d.ts +2 -2
  2. package/dist/Programados/{dtos → Dtos}/MaterialesUtiRetDto.d.ts +2 -1
  3. package/dist/sigo-package.cjs.development.js +1 -1
  4. package/dist/sigo-package.cjs.development.js.map +1 -1
  5. package/dist/sigo-package.cjs.production.min.js +1 -1
  6. package/dist/sigo-package.cjs.production.min.js.map +1 -1
  7. package/dist/sigo-package.esm.js +1 -1
  8. package/dist/sigo-package.esm.js.map +1 -1
  9. package/package.json +19 -18
  10. package/readme.md +32 -32
  11. package/src/Programados/ActualizarDataManoObra.ts +36 -36
  12. package/src/Programados/ActualizarDataReserva.ts +8 -8
  13. package/src/Programados/ActualizarDataResumenLiquidaciones.ts +51 -51
  14. package/src/Programados/ActualizarDataTrabajos.ts +38 -38
  15. package/src/Programados/Alemania/ActualizarDataResumenLiquidacionesAlemania.ts +52 -52
  16. package/src/Programados/Alemania/CalcularResumenHPMOLiquidado/index.ts +45 -45
  17. package/src/Programados/Alemania/CalcularResumenValorizacionesAlemania.ts +147 -147
  18. package/src/Programados/Alemania/CodigosMaterialSoplado.ts +8 -8
  19. package/src/Programados/Alemania/CodsMapeoMOMaterial.ts +40 -40
  20. package/src/Programados/Alemania/Models/DataFlujosHomePass.ts +37 -37
  21. package/src/Programados/Alemania/Models/DocumentacionHPBussines.ts +379 -379
  22. package/src/Programados/Alemania/Models/DocumentacionHPResidential.ts +456 -456
  23. package/src/Programados/Alemania/Models/index.ts +8 -8
  24. package/src/Programados/Alemania/ObtenerMONoReservada/filtrarMONoReservada.ts +15 -15
  25. package/src/Programados/Alemania/ObtenerMONoReservada/generarModeloAmap.md +6 -6
  26. package/src/Programados/Alemania/ObtenerMONoReservada/generarModeloAmap.ts +89 -89
  27. package/src/Programados/Alemania/ObtenerMONoReservada/index.ts +76 -76
  28. package/src/Programados/Alemania/UpdateNodosDocDP/index.ts +45 -45
  29. package/src/Programados/Alemania/UpdateNodosDocDP/updateNodoAsfaltoRecursivo.ts +42 -42
  30. package/src/Programados/Alemania/UpdateNodosDocDP/updateNodoZanjaRecursivo.ts +42 -42
  31. package/src/Programados/Alemania/UpdateNodosDocDP/updateNodosPorEspecialidad.ts +4 -4
  32. package/src/Programados/Alemania/codMOTroncal_ReglaLiquidacion1.ts +73 -70
  33. package/src/Programados/Alemania/codigosMOHP.ts +33 -33
  34. package/src/Programados/Alemania/codigosMaterialDuctos.ts +17 -17
  35. package/src/Programados/Alemania/codigosMaterialUGG.ts +25 -25
  36. package/src/Programados/Alemania/index.ts +40 -40
  37. package/src/Programados/BuscarZonaContratista.ts +27 -27
  38. package/src/Programados/CalcularResumenLiquidaciones.ts +115 -115
  39. package/src/Programados/ObtenerZonaAsignada.ts +19 -19
  40. package/src/Programados/PaisMapping.ts +10 -10
  41. package/src/Programados/Procesos/Modelos/DocumentacionReplanteo.ts +53 -53
  42. package/src/Programados/Procesos/Modelos/ModelDataFlujosDocumentacionReplanteo.ts +51 -51
  43. package/src/Programados/Procesos/Modelos/index.ts +6 -6
  44. package/src/Programados/Procesos/Preliquidar/ObtenerPrecioContratistaVigente.ts +24 -24
  45. package/src/Programados/Procesos/Preliquidar/index.ts +4 -4
  46. package/src/Programados/Procesos/index.ts +10 -10
  47. package/src/Programados/Procesos/parteDiario/CompararFechas.ts +7 -7
  48. package/src/Programados/Procesos/parteDiario/GetCodigoFechaActual.ts +10 -10
  49. package/src/Programados/Procesos/parteDiario/index.ts +6 -6
  50. package/src/Programados/dtos/AmapCantidadesDto.ts +5 -5
  51. package/src/Programados/dtos/AmapDto.ts +30 -30
  52. package/src/Programados/dtos/AsignacionValorizacionDto.ts +17 -17
  53. package/src/Programados/dtos/CentroCostosDto.ts +9 -9
  54. package/src/Programados/dtos/CertificacionDto.ts +10 -10
  55. package/src/Programados/dtos/ContrataDto.ts +6 -6
  56. package/src/Programados/dtos/ContratoOTDto.ts +8 -8
  57. package/src/Programados/dtos/DatosCatalogoItemDto.ts +6 -6
  58. package/src/Programados/dtos/DatosCatalogoMODto.ts +8 -8
  59. package/src/Programados/dtos/DatosItemDto.ts +5 -5
  60. package/src/Programados/dtos/DatosManoObraGlobalDto.ts +8 -8
  61. package/src/Programados/dtos/DatosPrecioEspecialidadDto.ts +9 -9
  62. package/src/Programados/dtos/DatosPrecioMaterialDto.ts +10 -10
  63. package/src/Programados/dtos/DatosUnidadObraMaterialDto.ts +6 -6
  64. package/src/Programados/dtos/DetalleChileReservaMODto.ts +29 -29
  65. package/src/Programados/dtos/DetalleManoObraChileDto.ts +4 -4
  66. package/src/Programados/dtos/FlujoDocDto.ts +12 -12
  67. package/src/Programados/dtos/HomePassDto.ts +13 -13
  68. package/src/Programados/dtos/ItemCantidadesDto.ts +4 -4
  69. package/src/Programados/dtos/ItemDto.ts +30 -30
  70. package/src/Programados/dtos/ManoObraBaremoDto.ts +7 -7
  71. package/src/Programados/dtos/MaterialAmapDto.ts +15 -15
  72. package/src/Programados/dtos/MaterialLogisticaDto.ts +9 -9
  73. package/src/Programados/dtos/MaterialesUtiRetDto.ts +19 -19
  74. package/src/Programados/dtos/OTGlobalDto.ts +5 -5
  75. package/src/Programados/dtos/PeriodoDto.ts +8 -8
  76. package/src/Programados/dtos/PrecioActividadDto.ts +11 -11
  77. package/src/Programados/dtos/PreciosAgenciaDto.ts +10 -10
  78. package/src/Programados/dtos/PreciosContrataDto.ts +8 -8
  79. package/src/Programados/dtos/PreciosVigentesDto.ts +8 -8
  80. package/src/Programados/dtos/PreciosZonasDto.ts +9 -9
  81. package/src/Programados/dtos/ProduccionDto.ts +12 -12
  82. package/src/Programados/dtos/ValorizacionDto.ts +44 -44
  83. package/src/Programados/dtos/VarianteDto.ts +3 -3
  84. package/src/Programados/dtos/VigenciaDto.ts +3 -3
  85. package/src/Programados/dtos/WBEDto.ts +4 -4
  86. package/src/Programados/dtos/index.ts +10 -10
  87. package/src/Programados/entitys/DocumentacionPEXEntity.ts +20 -20
  88. package/src/Programados/entitys/EstadoInternoEntity.ts +22 -22
  89. package/src/Programados/entitys/ManoDeObraEntity.ts +20 -20
  90. package/src/Programados/entitys/ManoObraGlobalEntity.ts +19 -19
  91. package/src/Programados/entitys/ObraEntity.ts +4 -4
  92. package/src/Programados/entitys/ReservaEntity.ts +20 -20
  93. package/src/Programados/entitys/TrabajoEntity.ts +76 -76
  94. package/src/Programados/index.ts +74 -74
  95. package/src/index.ts +78 -78
  96. package/src/shared/Utils/CurrencyFormat.ts +79 -79
  97. package/src/shared/Utils/IsValidDate.ts +2 -2
  98. package/src/shared/Utils/index.ts +6 -6
  99. package/src/shared/dtos/AnexoDto.ts +9 -9
  100. package/src/shared/dtos/BitacoraDto.ts +7 -7
  101. package/src/shared/dtos/CodigoDescripcionDto.ts +3 -3
  102. package/src/shared/dtos/CoordenadasDto.ts +3 -3
  103. package/src/shared/dtos/DelegacionDto.ts +3 -3
  104. package/src/shared/dtos/EmpresaDto.ts +3 -3
  105. package/src/shared/dtos/EmpresaUsuarioDto.ts +6 -6
  106. package/src/shared/dtos/EstadoDto.ts +3 -3
  107. package/src/shared/dtos/EstadoInternoDto.ts +15 -15
  108. package/src/shared/dtos/FilesDocDto.ts +19 -19
  109. package/src/shared/dtos/GeneralCodigoNombreDto.ts +3 -3
  110. package/src/shared/dtos/GeneralCodigoNombreUnidadDto.ts +4 -4
  111. package/src/shared/dtos/NodoDocDto.ts +18 -18
  112. package/src/shared/dtos/PaisDto.ts +3 -3
  113. package/src/shared/dtos/PersonalDto.ts +7 -7
  114. package/src/shared/dtos/SizeDto.ts +3 -3
  115. package/src/shared/dtos/UnidadMedidaDto.ts +3 -3
  116. package/src/shared/dtos/UsuarioDto.ts +5 -5
  117. package/src/shared/dtos/UsuarioEdicionDto.ts +4 -4
  118. package/src/shared/dtos/index.ts +20 -20
  119. package/src/shared/index.ts +26 -26
  120. package/tsconfig.json +18 -18
  121. /package/dist/Programados/{dtos → Dtos}/AmapCantidadesDto.d.ts +0 -0
  122. /package/dist/Programados/{dtos → Dtos}/AmapDto.d.ts +0 -0
  123. /package/dist/Programados/{dtos → Dtos}/AsignacionValorizacionDto.d.ts +0 -0
  124. /package/dist/Programados/{dtos → Dtos}/CentroCostosDto.d.ts +0 -0
  125. /package/dist/Programados/{dtos → Dtos}/CertificacionDto.d.ts +0 -0
  126. /package/dist/Programados/{dtos → Dtos}/ContrataDto.d.ts +0 -0
  127. /package/dist/Programados/{dtos → Dtos}/ContratoOTDto.d.ts +0 -0
  128. /package/dist/Programados/{dtos → Dtos}/DatosCatalogoItemDto.d.ts +0 -0
  129. /package/dist/Programados/{dtos → Dtos}/DatosCatalogoMODto.d.ts +0 -0
  130. /package/dist/Programados/{dtos → Dtos}/DatosItemDto.d.ts +0 -0
  131. /package/dist/Programados/{dtos → Dtos}/DatosManoObraGlobalDto.d.ts +0 -0
  132. /package/dist/Programados/{dtos → Dtos}/DatosPrecioEspecialidadDto.d.ts +0 -0
  133. /package/dist/Programados/{dtos → Dtos}/DatosPrecioMaterialDto.d.ts +0 -0
  134. /package/dist/Programados/{dtos → Dtos}/DatosUnidadObraMaterialDto.d.ts +0 -0
  135. /package/dist/Programados/{dtos → Dtos}/DetalleChileReservaMODto.d.ts +0 -0
  136. /package/dist/Programados/{dtos → Dtos}/DetalleManoObraChileDto.d.ts +0 -0
  137. /package/dist/Programados/{dtos → Dtos}/FlujoDocDto.d.ts +0 -0
  138. /package/dist/Programados/{dtos → Dtos}/HomePassDto.d.ts +0 -0
  139. /package/dist/Programados/{dtos → Dtos}/ItemCantidadesDto.d.ts +0 -0
  140. /package/dist/Programados/{dtos → Dtos}/ManoObraBaremoDto.d.ts +0 -0
  141. /package/dist/Programados/{dtos → Dtos}/MaterialAmapDto.d.ts +0 -0
  142. /package/dist/Programados/{dtos → Dtos}/MaterialLogisticaDto.d.ts +0 -0
  143. /package/dist/Programados/{dtos → Dtos}/OTGlobalDto.d.ts +0 -0
  144. /package/dist/Programados/{dtos → Dtos}/PeriodoDto.d.ts +0 -0
  145. /package/dist/Programados/{dtos → Dtos}/PrecioActividadDto.d.ts +0 -0
  146. /package/dist/Programados/{dtos → Dtos}/PreciosAgenciaDto.d.ts +0 -0
  147. /package/dist/Programados/{dtos → Dtos}/PreciosContrataDto.d.ts +0 -0
  148. /package/dist/Programados/{dtos → Dtos}/PreciosVigentesDto.d.ts +0 -0
  149. /package/dist/Programados/{dtos → Dtos}/PreciosZonasDto.d.ts +0 -0
  150. /package/dist/Programados/{dtos → Dtos}/ProduccionDto.d.ts +0 -0
  151. /package/dist/Programados/{dtos → Dtos}/ValorizacionDto.d.ts +0 -0
  152. /package/dist/Programados/{dtos → Dtos}/VarianteDto.d.ts +0 -0
  153. /package/dist/Programados/{dtos → Dtos}/VigenciaDto.d.ts +0 -0
  154. /package/dist/Programados/{dtos → Dtos}/WBEDto.d.ts +0 -0
  155. /package/dist/Programados/{dtos → Dtos}/index.d.ts +0 -0
  156. /package/dist/{shared → Shared}/Utils/CurrencyFormat.d.ts +0 -0
  157. /package/dist/{shared → Shared}/Utils/IsValidDate.d.ts +0 -0
  158. /package/dist/{shared → Shared}/Utils/index.d.ts +0 -0
  159. /package/dist/{shared → Shared}/dtos/AnexoDto.d.ts +0 -0
  160. /package/dist/{shared → Shared}/dtos/BitacoraDto.d.ts +0 -0
  161. /package/dist/{shared → Shared}/dtos/CodigoDescripcionDto.d.ts +0 -0
  162. /package/dist/{shared → Shared}/dtos/CoordenadasDto.d.ts +0 -0
  163. /package/dist/{shared → Shared}/dtos/DelegacionDto.d.ts +0 -0
  164. /package/dist/{shared → Shared}/dtos/EmpresaDto.d.ts +0 -0
  165. /package/dist/{shared → Shared}/dtos/EmpresaUsuarioDto.d.ts +0 -0
  166. /package/dist/{shared → Shared}/dtos/EstadoDto.d.ts +0 -0
  167. /package/dist/{shared → Shared}/dtos/EstadoInternoDto.d.ts +0 -0
  168. /package/dist/{shared → Shared}/dtos/FilesDocDto.d.ts +0 -0
  169. /package/dist/{shared → Shared}/dtos/GeneralCodigoNombreDto.d.ts +0 -0
  170. /package/dist/{shared → Shared}/dtos/GeneralCodigoNombreUnidadDto.d.ts +0 -0
  171. /package/dist/{shared → Shared}/dtos/NodoDocDto.d.ts +0 -0
  172. /package/dist/{shared → Shared}/dtos/PaisDto.d.ts +0 -0
  173. /package/dist/{shared → Shared}/dtos/PersonalDto.d.ts +0 -0
  174. /package/dist/{shared → Shared}/dtos/SizeDto.d.ts +0 -0
  175. /package/dist/{shared → Shared}/dtos/UnidadMedidaDto.d.ts +0 -0
  176. /package/dist/{shared → Shared}/dtos/UsuarioDto.d.ts +0 -0
  177. /package/dist/{shared → Shared}/dtos/UsuarioEdicionDto.d.ts +0 -0
  178. /package/dist/{shared → Shared}/dtos/index.d.ts +0 -0
  179. /package/dist/{shared → Shared}/index.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"sigo-package.cjs.production.min.js","sources":["../src/shared/Utils/CurrencyFormat.ts","../src/Programados/Procesos/Modelos/ModelDataFlujosDocumentacionReplanteo.ts","../src/shared/dtos/EstadoDto.ts","../src/shared/dtos/GeneralCodigoNombreDto.ts","../src/shared/dtos/GeneralCodigoNombreUnidadDto.ts","../src/shared/dtos/UsuarioDto.ts","../src/shared/Utils/IsValidDate.ts","../src/Programados/dtos/DetalleChileReservaMODto.ts","../src/Programados/dtos/WBEDto.ts","../src/Programados/dtos/DetalleManoObraChileDto.ts","../src/Programados/dtos/DatosManoObraGlobalDto.ts","../src/Programados/dtos/DatosPrecioEspecialidadDto.ts","../src/Programados/dtos/DatosUnidadObraMaterialDto.ts","../src/Programados/dtos/DatosCatalogoMODto.ts","../src/Programados/dtos/AmapDto.ts","../src/Programados/Alemania/ObtenerMONoReservada/generarModeloAmap.ts","../src/Programados/Alemania/Models/DocumentacionHPBussines.ts","../src/Programados/Alemania/Models/DocumentacionHPResidential.ts","../src/Programados/Alemania/Models/DataFlujosHomePass.ts","../src/Programados/Alemania/UpdateNodosDocDP/updateNodoAsfaltoRecursivo.ts","../src/Programados/Alemania/UpdateNodosDocDP/updateNodoZanjaRecursivo.ts","../src/Programados/ActualizarDataManoObra.ts","../src/Programados/ActualizarDataReserva.ts","../src/Programados/ActualizarDataResumenLiquidaciones.ts","../src/Programados/Alemania/ActualizarDataResumenLiquidacionesAlemania.ts","../src/Programados/ActualizarDataTrabajos.ts","../src/Programados/BuscarZonaContratista.ts","../src/Programados/Alemania/CalcularResumenHPMOLiquidado/index.ts","../src/Programados/CalcularResumenLiquidaciones.ts","../src/Programados/Alemania/CalcularResumenValorizacionesAlemania.ts","../src/Programados/Alemania/CodigosMaterialSoplado.ts","../src/Programados/Alemania/CodsMapeoMOMaterial.ts","../src/Programados/Procesos/parteDiario/CompararFechas.ts","../src/Programados/Procesos/Modelos/DocumentacionReplanteo.ts","../src/Programados/Procesos/parteDiario/GetCodigoFechaActual.ts","../src/Programados/Alemania/ObtenerMONoReservada/index.ts","../src/Programados/Alemania/ObtenerMONoReservada/filtrarMONoReservada.ts","../src/Programados/Procesos/Preliquidar/ObtenerPrecioContratistaVigente.ts","../src/Programados/ObtenerZonaAsignada.ts","../src/Programados/Alemania/UpdateNodosDocDP/index.ts","../src/Programados/Alemania/UpdateNodosDocDP/updateNodosPorEspecialidad.ts","../src/Programados/Alemania/codigosMOHP.ts","../src/Programados/Alemania/codMOTroncal_ReglaLiquidacion1.ts","../src/Programados/Alemania/codigosMaterialDuctos.ts","../src/Programados/Alemania/codigosMaterialUGG.ts","../src/Programados/PaisMapping.ts"],"sourcesContent":["enum Position { \n left ='left', \n right = 'right' \n}\n\ntype CoinPosition = keyof typeof Position;\nclass Params {\n symbolCoin?: string = \"\";\n symbolCoinPosition?: CoinPosition = Position.left;\n isPorcent?: Boolean = false;\n decimal?: Number = 2;\n codeCountry?: string = \"\";\n currency?: string = \"\";\n}\n/**\n * Formatea un valor numérico o una cadena que contiene un número en un formato de moneda.\n * @param value Valor numérico o cadena que contiene un número. Ejemplo: 123445.89 o '$ 123445.89'.\n * @param options Opciones de formato (opcional). Un objeto que puede tener las siguientes propiedades:\n * - `symbolCoin`: Símbolo de la moneda. Por defecto, vacío.\n * - `symbolCoinPosition`: Posición del símbolo de la moneda. Por defecto, vacío.\n * - `isPorcent`: Indicador de porcentaje. Por defecto, false.\n * - `decimal`: Indicador de numero de decimales. Por defecto, 2.\n * - `codeCountry`: Indicador en leguaje y codigo del Pais. Ejemplo 'es-PE(Perú), es-CO(Colombia), es-CL(Chile)'. Por defecto, vacío.\n * - `currency`: Indicador de la moneda del Pais. Ejemplo 'SOL, USD'. Por defecto, vacío.\n * @returns La cadena formateada por miles en el formato de moneda especificado.\n */\nexport function CurrencyFormat(value: any = 0, options: Params = new Params()): string {\n try {\n let _value = structuredClone(value);\n _value = ParserValue(_value);\n _value = ValidateValue(_value);\n _value = formaterMiles(_value, options);\n return _value;\n } catch (error) {\n throw error;\n }\n}\nfunction isValidFormatCodeCountry(codeCountry: string = \"\") {\n const expresion = /^[a-z]{2}-[A-Z]{2}$/ // formato de codigo Pais\n codeCountry = codeCountry?.toString();\n if(!codeCountry || codeCountry == null) return false\n if(!expresion.test(codeCountry)) throw Error(`Formato ${codeCountry} de Codigo Pais no es válido!.`)\n return true;\n}\nfunction ParserValue(value: any = 0) {\n const expresionNoSimbol = /^[^-?\\d,. ]+|\\.00$/g; // /^[^\\d,. ]+|\\.00$/g; // Quita cualquier digito en la cadena que no sea numerico\n value = ParserDiffFormatValue(value);\n value = value?.toString().replaceAll(\",\", \"\").replaceAll(expresionNoSimbol, \"\");\n return parseFloat(value);\n}\n// Parsea un formato 1.345.789,06 a 1,345,789.06 que es el estandar\nfunction ParserDiffFormatValue(value: any = \"\") {\n const reparatorReverse = value.toString().split(\"\").reverse().find((n: any = \"\") => { \n if(n === \",\" || n === \".\") { return n }\n });\n if(reparatorReverse === \",\") {\n value = value?.toString()?.replace(/,/g, '|')?.replace(/\\./g, ',')?.replace(/\\|/g, '.');\n }\n return value;\n}\nfunction ValidateValue(value: any = 0) {\n if(!isFinite(value)) value = 0;\n if(isNaN(value)) value = 0;\n if(value === undefined || value === null) value = 0;\n return value;\n}\nfunction formaterMiles(value = 0, {symbolCoin = \"\", symbolCoinPosition = \"left\", isPorcent = false, decimal = 2, codeCountry = \"\", currency = \"\" }: Params = new Params()) {\n const _isValidFormatCodeCountry = isValidFormatCodeCountry(codeCountry);\n const _decimal = !!decimal.toString() ? Number(decimal) : 2;\n if(!!_isValidFormatCodeCountry){\n const optionsCurrency = { style: 'currency', currency: currency }\n return new Intl.NumberFormat(codeCountry, optionsCurrency).format(Number(Number(value)?.toFixed(_decimal))).toString();\n }\n let valueFormated = new Intl.NumberFormat().format(Number(Number(value)?.toFixed(_decimal))).toString();\n // valueFormated = ParserDiffFormatValue(valueFormated); // se colocó por que ayudar a jqgrid solo reconoce los formatos ###,###,###.##, y no ###.###.###,##\n if(!!isPorcent) { return `${valueFormated} %`; }\n if(!!symbolCoin && symbolCoinPosition.toString() === \"left\") { valueFormated = `${symbolCoin} ${valueFormated}`; }\n if(!!symbolCoin && symbolCoinPosition.toString() === \"right\") { valueFormated = `${valueFormated} ${symbolCoin} `; }\n return valueFormated;\n}","export const ModelDataFlujosDocumentacionReplanteo = [\n {\n Action: 'Registrar',\n Fecha: new Date(),\n Usuario: '',\n Description: 'Registrar',\n Posicion: '1',\n Icono: 'fa fa-registered',\n ColorIcono: '#1d9d74',\n TagPagina: ['tagGestionMacroObrasNuevo'],\n },\n {\n Action: 'Aprobar',\n Fecha: new Date(),\n Usuario: '',\n Description: 'Aprobar',\n Posicion: '2',\n Icono: 'fa fa-check-circle',\n ColorIcono: '#31ce36',\n TagPagina: ['tagGestionMacroObrasNuevo'],\n },\n {\n Action: 'Rechazar',\n Fecha: new Date(),\n Usuario: '',\n Description: 'Rechazar',\n Posicion: '3',\n Icono: 'fa fa-minus-circle',\n ColorIcono: '#ffad46',\n TagPagina: ['tagGestionMacroObrasNuevo'],\n },\n {\n Action: 'Eliminar',\n Fecha: new Date(),\n Usuario: '',\n Description: 'Eliminar',\n Posicion: '4',\n Icono: 'fa fa-times-circle',\n ColorIcono: '#f25961',\n TagPagina: ['tagGestionMacroObrasNuevo'],\n },\n {\n Action: 'Descargar',\n Fecha: new Date(),\n Usuario: '',\n Description: 'Descargar',\n Posicion: '5',\n Icono: 'fa fa-arrow-circle-down',\n ColorIcono: '#084594',\n TagPagina: ['tagGestionMacroObrasNuevo'],\n }\n]","export class EstadoDto {\n ID_Estado: number = 1\n Nombre: string = 'ACTIVO'\n}","export class GeneralCodigoNombreDto {\n Codigo: string = ''\n Nombre: string = ''\n}","export class GeneralCodigoNombreUnidadDto {\n Codigo: string = ''\n Nombre: string = ''\n UnidadMedida: string = ''\n}","export class UsuarioDto {\n Identificacion: string = ''\n Apellidos: string = ''\n Nombres: string = ''\n Fecha: Date = new Date()\n}","export function IsValidDate(date: any): boolean {\n return date instanceof Date\n}","import { GeneralCodigoNombreDto, GeneralCodigoNombreUnidadDto } from '../../shared/index'\n\nexport class DetalleChileReservaMODto {\n Codigo: string = ''\n Linea: string = ''\n DirDesde: string = ''\n AltDesde: string = ''\n DirHasta: string = ''\n AltHasta: string = ''\n Plano: string = ''\n Especialidad: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\n Actividad: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\n Clave: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\n Tarea: string = ''\n ManoObra: GeneralCodigoNombreUnidadDto = new GeneralCodigoNombreUnidadDto()\n UnidadObra: GeneralCodigoNombreUnidadDto = new GeneralCodigoNombreUnidadDto()\n HomePass: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\n LineaCodigoCub: string = ''\n CodigoCub: string = ''\n CanMOCub: number = 0\n CanMOInf: number = 0\n CanMOApr: number = 0\n CanUOCub: number = 0\n CanUOInf: number = 0\n TotalUO: number = 0\n CanUOApr: number = 0\n Origen: string = ''\n CodigoBarra: string = ''\n PuntoBaremo: number = 0\n}","export class WBEDto {\n ID_WBE: number = 0\n CodigoWBE: string = ''\n DescripcionWBE: string = ''\n}","import { ManoObraBaremoDto } from './ManoObraBaremoDto'\n\nexport class DetalleManoObraChileDto {\n ManoObraBaremo: ManoObraBaremoDto[] = []\n}","import { DetalleManoObraChileDto } from \"./DetalleManoObraChileDto\";\nimport { MaterialAmapDto } from \"./MaterialAmapDto\";\n\nexport class DatosManoObraGlobalDto {\n Actividad: string = ''\n Alcance: string = ''\n Material: MaterialAmapDto[] = []\n DetalleChile: DetalleManoObraChileDto = new DetalleManoObraChileDto()\n}","import { PreciosAgenciaDto } from './PreciosAgenciaDto'\nimport { PreciosContrataDto } from './PreciosContrataDto'\n\nexport class DatosPrecioEspecialidadDto {\n Moneda: string = ''\n Simbolo: string = ''\n Decimales: number = 2\n Agencias: PreciosAgenciaDto[] = []\n Contratistas: PreciosContrataDto[] = []\n}","import { MaterialAmapDto } from './MaterialAmapDto'\n\nexport class DatosUnidadObraMaterialDto {\n Codigo: string = ''\n Descripcion: string = ''\n Materiales: MaterialAmapDto[] = []\n}","import { DatosManoObraGlobalDto } from './DatosManoObraGlobalDto'\nimport { DatosPrecioEspecialidadDto } from './DatosPrecioEspecialidadDto'\nimport { DatosUnidadObraMaterialDto } from './DatosUnidadObraMaterialDto'\n\nexport class DatosCatalogoMODto{\n DatosManoObraGlobal = new DatosManoObraGlobalDto()\n DatosPrecioEspecialidad = new DatosPrecioEspecialidadDto() \n DatosUnidadObraMaterial = new DatosUnidadObraMaterialDto()\n}","import { EstadoDto } from '../../shared/index'\nimport { WBEDto } from './WBEDto'\nimport { DetalleChileReservaMODto } from './DetalleChileReservaMODto'\nimport { DatosCatalogoMODto } from './DatosCatalogoMODto'\nimport { AmapCantidadesDto } from './AmapCantidadesDto'\n\nexport class AmapDto {\n ID_Amap: number = 0\n Amap: number = 0\n Cantidad: number = 0\n CantidadUsado: number = 0\n CantidadTransito: number = 0\n CantidadAprobada: number = 0\n Codigo: string = ''\n Descripcion: string = ''\n Estado: EstadoDto = new EstadoDto()\n Precio: number = 0\n Total: number = 0\n Unidad: string = ''\n Moneda: string = ''\n Simbolo: string = ''\n Decimales: number = 0\n WBE: WBEDto = new WBEDto()\n DetalleChile: DetalleChileReservaMODto = new DetalleChileReservaMODto()\n CantidadUO: number = 0\n CantidadUOUsado: number = 0\n CantidadUOTransito: number = 0\n CantidadUOAprobada: number = 0\n Cantidades:AmapCantidadesDto[] = []\n DatosCatalogoMO: DatosCatalogoMODto = new DatosCatalogoMODto()\n}","import { DetalleChileReservaMODto } from '../../dtos/DetalleChileReservaMODto'\nimport { AmapDto } from '../../dtos/AmapDto'\nimport { ManoObraGlobal, Obra, PrecioEspecialidad } from './index'\nimport { ManoObraBaremoDto } from '../../dtos/ManoObraBaremoDto'\n\ninterface params {\n ManoObraGlobal: ManoObraGlobal\n PrecioEspecialidad: PrecioEspecialidad\n Precio: number\n Obra: Obra\n MOB: ManoObraBaremoDto\n}\n\nexport function generarModeloAmap(params: params) {\n\n const { ManoObraGlobal, Precio, PrecioEspecialidad } = params\n\n const DetalleChile = generarModeloDetalleChile(params)\n\n const newAmap = new AmapDto()\n newAmap.DetalleChile = DetalleChile\n newAmap.Amap = ManoObraGlobal.Amap\n newAmap.Codigo = ManoObraGlobal.Codigo\n newAmap.Descripcion = ManoObraGlobal.Actividad\n newAmap.Precio = Precio\n newAmap.Total = newAmap.Precio * newAmap.Cantidad * newAmap.DetalleChile.PuntoBaremo\n newAmap.Unidad = ManoObraGlobal.Unidad.Nombre\n newAmap.Moneda = PrecioEspecialidad.Moneda\n newAmap.Simbolo = PrecioEspecialidad.Simbolo\n newAmap.Decimales = PrecioEspecialidad.Decimales\n newAmap.WBE.CodigoWBE = 'SIGPE'\n newAmap.CantidadUOAprobada = 0.000001; // LEER archivo Regla `generarModeloAmap.readme`\n newAmap.DatosCatalogoMO = {\n DatosManoObraGlobal: {\n Actividad: ManoObraGlobal.Actividad,\n Alcance: ManoObraGlobal.Alcance,\n Material: ManoObraGlobal.Material,\n DetalleChile: ManoObraGlobal.DetalleChile\n },\n DatosPrecioEspecialidad: {\n Moneda: PrecioEspecialidad.Moneda,\n Simbolo: PrecioEspecialidad.Simbolo,\n Decimales: PrecioEspecialidad.Decimales,\n Agencias: PrecioEspecialidad.Agencias,\n Contratistas: PrecioEspecialidad.Contratistas\n },\n DatosUnidadObraMaterial: {\n Codigo: '0',\n Descripcion: 'SIN UO',\n Materiales: []\n }\n }\n return newAmap\n}\n\nfunction generarModeloDetalleChile(params: params) {\n const { Obra, ManoObraGlobal, MOB } = params\n let codigoVal = '00000';\n if(!!Obra?.DetalleChile?.codigo) {\n codigoVal = Obra?.DetalleChile?.codigo; \n }\n const newDto = new DetalleChileReservaMODto()\n newDto.Codigo = codigoVal;\n newDto.CodigoCub = \"\"\n newDto.Linea = hashCode(ManoObraGlobal.Codigo),\n newDto.Especialidad = MOB.Especialidad\n newDto.Actividad.Codigo = 'CH0001'\n newDto.Actividad.Nombre = 'ACTIVIDAD GENERAL'\n newDto.Clave.Codigo = 'CH0001'\n newDto.Clave.Nombre = 'CLAVE GENERAL'\n newDto.Tarea = '0000'\n newDto.ManoObra.Codigo = ManoObraGlobal.Codigo\n newDto.ManoObra.Nombre = ManoObraGlobal.Actividad\n newDto.ManoObra.UnidadMedida = ManoObraGlobal.Unidad.Nombre\n newDto.UnidadObra.Codigo = '0'\n newDto.UnidadObra.Nombre = 'SIN UO'\n newDto.UnidadObra.UnidadMedida = 'UN'\n newDto.LineaCodigoCub = hashCode(ManoObraGlobal.Codigo) + \"\" + codigoVal;\n newDto.PuntoBaremo = MOB.PuntoBaremo\n return newDto\n}\n\nfunction hashCode(str: String = \"\") {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n const char = str.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n }\n return Math.abs(hash).toString();\n}","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\n\nconst DocumentacionHPBussines: NodoDocDto = {\n \"id\": 9999998877,\n \"label\": \"BALIZA\",\n \"Children\": [\n // {\n // \"id\": 99999988776,\n // \"label\": \"BoQ obra civil\",\n // \"Children\": [],\n // \"Titulo\": `BoQ obra civil`,\n // \"Codigo\": \"Cod99999988776\",\n // \"Descripcion\": \"BoQ obra civil\",\n // \"Files\": [],\n // \"Extension\": ['ALL'],\n // \"Size\": {\n // \"Size\": 50,\n // \"UM\": \"mb\"\n // },\n // \"Requerido\": false,\n // \"CantidadMin\": 1,\n // \"CantidadMax\": 0,\n // \"Estado\": {\n // \"ID_Estado\": 10,\n // \"Nombre\": \"INACTIVO\"\n // }\n // },\n {\n \"id\": 99999988775,\n \"label\": \"Foto baliza con zanja abierta\",\n \"Children\": [],\n \"Titulo\": `Foto baliza con zanja abierta`,\n \"Codigo\": \"Cod99999988775\",\n \"Descripcion\": \"Foto baliza con zanja abierta\",\n \"Files\": [\n {\n \"Posicion\": \"4b88feeb-e004-44c4-9efe-9909912dfc3c\",\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193012.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988775\",\n \"NameOriginal\": \"CW-04.jpg\",\n \"Size\": {\n \"Size\": 0.4627561569213867,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:19:43.458Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n },\n }\n ],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 99999988774,\n \"label\": \"Foto baliza-fachada dirección\",\n \"Children\": [],\n \"Titulo\": `Foto baliza-fachada dirección`,\n \"Codigo\": \"Cod99999988774\",\n \"Descripcion\": \"Foto baliza-fachada dirección\",\n \"Files\": [\n {\n \"Posicion\": \"5225d6b1-10be-41ec-8d25-175c80d319dd\",\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193285.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988774\",\n \"NameOriginal\": \"CW-05.jpg\",\n \"Size\": {\n \"Size\": 0.11749267578125,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:18:16.202Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n }\n }\n ],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 99999988773,\n \"label\": \"Foto CRUCE - baliza\",\n \"Children\": [],\n \"Titulo\": `Foto CRUCE - baliza`,\n \"Codigo\": \"Cod99999988773\",\n \"Descripcion\": \"Foto CRUCE - baliza\",\n \"Files\": [\n {\n \"Posicion\": \"cf5fbc36-88ad-444f-af71-84461f9c87c2\",\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193370.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988773\",\n \"NameOriginal\": \"CW-06.jpg\",\n \"Size\": {\n \"Size\": 0.45999622344970703,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:48:07.583Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n }\n }\n ],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 99999988772,\n \"label\": \"Foto sangrado\",\n \"Children\": [],\n \"Titulo\": `Foto sangrado`,\n \"Codigo\": \"Cod99999988772\",\n \"Descripcion\": \"Foto sangrado\",\n \"Files\": [{\n \"Posicion\": \"94ef2d86-b811-4cda-82ac-ec9627071521\",\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193446.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988772\",\n \"NameOriginal\": \"CW-07.jpg\",\n \"Size\": {\n \"Size\": 0.10319232940673828,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T15:44:16.185Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n }\n }],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n }\n ],\n \"Titulo\": `BALIZA`,\n \"Codigo\": \"Cod9999998877\",\n \"Descripcion\": \"BALIZA\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 0,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n}\n\nexport function obtenerDocumentacionNoClientes({ codEspecialidades }: { codEspecialidades?: string[] }): NodoDocDto[] {\n const documentacion = structuredClone(DocumentacionHPBussines)\n if (!codEspecialidades) {\n return [documentacion]\n }\n if (codEspecialidades.includes('01.1-OBRA CIVIL')) return [documentacion]\n return []\n}","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto';\nimport { DocumentacionPEXEntity } from '../../../Programados/entitys/DocumentacionPEXEntity';\n\nconst modelDROP: NodoDocDto = {\n \"id\": 9999998877,\n \"label\": \"DROP\",\n \"Children\": [\n {\n \"id\": 99999988776,\n \"label\": \"Foto recorrido acometida calle-fachada\",\n \"Children\": [],\n \"Titulo\": `Foto recorrido acometida calle-fachada`,\n \"Codigo\": \"Cod99999988776\",\n \"Descripcion\": \"Foto recorrido acometida calle-fachada\",\n \"Files\": [\n {\n \"Posicion\": \"ed93673f-7c3a-4c9f-aabb-850242f3cf65\",\n \"Filename\": \"AddressList_183_Residential_ARP000101518001_0III1713193559.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988776\",\n \"NameOriginal\": \"CW-08.jpg\",\n \"Size\": {\n \"Size\": 0.24944210052490234,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_183_Residential_ARP000101518001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:45:00.828Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n }\n }\n ],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 99999988775,\n \"label\": \"Foto recorrido acometida jardin-balona-fachada\",\n \"Children\": [],\n \"Titulo\": `Foto recorrido acometida jardin-balona-fachada`,\n \"Codigo\": \"Cod99999988775\",\n \"Descripcion\": \"Foto recorrido acometida jardin-balona-fachada\",\n \"Files\": [\n {\n \"Posicion\": \"bea79b4e-7fba-4bcf-b1d1-b8fea66c226f\",\n \"Filename\": \"AddressList_183_Residential_ARP000101518001_0III1713193644.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988775\",\n \"NameOriginal\": \"CW-09.jpg\",\n \"Size\": {\n \"Size\": 0.4330024719238281,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_183_Residential_ARP000101518001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:46:04.220Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n }\n }\n ],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 99999988774,\n \"label\": \"Foto sangrado\",\n \"Children\": [],\n \"Titulo\": `Foto sangrado`,\n \"Codigo\": \"Cod99999988774\",\n \"Descripcion\": \"Foto sangrado\",\n \"Files\": [{\n \"Posicion\": \"f7e9b0ea-8345-4e43-95fb-86da53c9bdb9\",\n \"Filename\": \"AddressList_183_Residential_ARP000101518001_0III1713193697.JPG\",\n \"Extension\": \"jpg\",\n \"CodigoNodo\": \"Cod99999988774\",\n \"NameOriginal\": \"CW-10.jpg\",\n \"Size\": {\n \"Size\": 0.4016141891479492,\n \"UM\": \"MB\"\n },\n \"Ruta\": \"AddressList_183_Residential_ARP000101518001_\",\n \"Observacion\": \"Cargado desde PWA\",\n \"Coordenadas\": {\n \"X\": \"-77.0334179\",\n \"Y\": \"-12.0632484\"\n },\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:46:39.794Z\"),\n \"Ultimo_Flujo\": {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n },\n \"Flujos\": [\n {\n \"Action\": \"Registrar\",\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\"),\n \"Usuario\": {\n \"Identificacion\": \"\",\n \"Apellidos\": \"\",\n \"Nombres\": \"\",\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\")\n },\n \"Description\": \"Registrar\",\n \"Posicion\": \"1\",\n \"Icono\": \"fa fa-registered\",\n \"ColorIcono\": \"#1d9d74\",\n \"TagPagina\": [\n \"tagGestionMacroObrasNuevo\"\n ],\n \"Visible\": false\n }\n ],\n \"Estado\": {\n \"ID_Estado\": 2024,\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\n }\n }],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n }\n ],\n \"Titulo\": `DROP`,\n \"Codigo\": \"Cod9999998877\",\n \"Descripcion\": \"DROP\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 0,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n}\nconst modelCABLE: NodoDocDto = {\n \"id\": 9999998878,\n \"label\": \"CABLE\",\n \"Children\": [\n {\n \"id\": 999999887766,\n \"label\": \"Medidas OTDR\",\n \"Children\": [],\n \"Titulo\": `Medidas OTDR`,\n \"Codigo\": \"Cod999999887766\",\n \"Descripcion\": \"Medidas OTDR\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 999999887755,\n \"label\": \"Protocolo de soplado\",\n \"Children\": [],\n \"Titulo\": `Protocolo de soplado`,\n \"Codigo\": \"Cod999999887755\",\n \"Descripcion\": \"Protocolo de soplado\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n }\n ],\n \"Titulo\": `CABLE`,\n \"Codigo\": \"Cod9999998878\",\n \"Descripcion\": \"CABLE\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 0,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n}\nconst modelARMARIO: NodoDocDto = {\n \"id\": 9999998879,\n \"label\": \"ARMARIO\",\n \"Children\": [\n {\n \"id\": 9999998877666,\n \"label\": \"Photos of labelled ducts of the installed HPs\",\n \"Children\": [],\n \"Titulo\": `Photos of labelled ducts of the installed HPs`,\n \"Codigo\": \"Cod9999998877666\",\n \"Descripcion\": \"Photos of labelled ducts of the installed HPs\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 9999998877555,\n \"label\": \"Photos of splice cassettes with Feeder\",\n \"Children\": [],\n \"Titulo\": `Photos of splice cassettes with Feeder`,\n \"Codigo\": \"Cod9999998877555\",\n \"Descripcion\": \"Photos of splice cassettes with Feeder\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n },\n {\n \"id\": 9999998877444,\n \"label\": \"Photos of splices from the installed HPs\",\n \"Children\": [],\n \"Titulo\": `Photos of splices from the installed HPs`,\n \"Codigo\": \"Cod9999998877444\",\n \"Descripcion\": \"Photos of splices from the installed HPs\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 1,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n }\n ],\n \"Titulo\": `ARMARIO`,\n \"Codigo\": \"Cod9999998879\",\n \"Descripcion\": \"ARMARIO\",\n \"Files\": [],\n \"Extension\": ['ALL'],\n \"Size\": {\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"CantidadMin\": 0,\n \"CantidadMax\": 0,\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n }\n}\n\nconst DocumentacionHPResidential: DocumentacionPEXEntity = {\n \"ID_DocumentacionPEX\": 0,\n \"TipoObra\": \"Construccion\",\n \"Sistema\": \"GERMAN\",\n \"Codigo\": \"cod001\",\n \"Nombre\": \"Documentacion Alemania\",\n \"Pais\": {\n \"Codigo\": \"004\",\n \"Nombre\": \"ALEMANIA\"\n },\n \"Delegacion\": {\n \"Codigo\": \"AL02\",\n \"Nombre\": \"COMUNICACIONES ALEMANIA\"\n },\n \"Nodos\": [],\n \"Estado\": {\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n },\n \"Bitacora\": []\n}\n\nexport function obtenerDocumentacionClientes({ codEspecialidades }: { codEspecialidades?: string[] }) {\n const documentacion = structuredClone(DocumentacionHPResidential)\n const modelDROPAux = structuredClone(modelDROP)\n const modelCABLEAux = structuredClone(modelCABLE)\n const modelARMARIOAux = structuredClone(modelARMARIO)\n if (!codEspecialidades) {\n documentacion.Nodos = [modelDROPAux, modelCABLEAux, modelARMARIOAux]\n return documentacion\n }\n if (codEspecialidades.includes('01.2-OBRA CIVIL/DROPS')) documentacion.Nodos.push(modelDROPAux)\n if (codEspecialidades.includes('03-SOPLADO RA')) {\n documentacion.Nodos.push(modelCABLEAux)\n documentacion.Nodos.push(modelARMARIOAux)\n }\n return documentacion\n}","import { UsuarioDto } from '../../../shared/dtos/UsuarioDto'\nimport { FlujoDocDto } from '../../dtos/FlujoDocDto'\n\nexport const dataFlujosHomePass: FlujoDocDto[] = [\n {\n Action: 'Registrar',\n Fecha: new Date(),\n Usuario: new UsuarioDto,\n Description: 'Registrar',\n Posicion: '1',\n Icono: 'fa fa-registered',\n ColorIcono: '#1d9d74',\n TagPagina: ['tagGestionDP'],\n Visible: false\n },\n {\n Action: 'Aprobar',\n Fecha: new Date(),\n Usuario: new UsuarioDto,\n Description: 'Aprobar',\n Posicion: '2',\n Icono: 'fa fa-check-square-o',\n ColorIcono: '#31ce36',\n TagPagina: ['tagGestionDP'],\n Visible: false\n },\n {\n Action: 'Eliminar',\n Fecha: new Date(),\n Usuario: new UsuarioDto,\n Description: 'Eliminar',\n Posicion: '4',\n Icono: 'fa fa-times-circle',\n ColorIcono: '#f25961',\n TagPagina: ['tagGestionDP'],\n Visible: false\n }\n]","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\n\nexport const updateNodoAsfaltoRecursivo = (nodos: NodoDocDto[], metros: number) => {\n for (const nodo of nodos) {\n\n if (nodo.Codigo.trim() !== 'Cod100') updateNodoAsfaltoRecursivo(nodo.Children, metros)\n\n const nodoCod100 = nodo.Children.find(e => e.Codigo.trim() === 'Cod119')\n\n if (!nodoCod100) continue\n\n const childrenAux = nodo.Children.filter(e => !['Cod119'].includes(e.Codigo))\n const mtsCod119 = 50 //CAMBIAR SEGUN LO PEDIDO\n const numCod110 = Math.ceil(metros / mtsCod119)\n const newNodosCod110 = []\n\n for (let index = 0; index < numCod110; index++) {\n const inicial = index * mtsCod119\n const final = inicial + mtsCod119\n const textAdd = `${inicial}m - ${final}m`\n const numAdd = `${inicial}${final}`\n const newNodo = structuredClone(nodoCod100)\n newNodo.Codigo = `${newNodo.Codigo}${numAdd}`\n newNodo.Descripcion = textAdd\n newNodo.Titulo = textAdd\n newNodo.id = Number(`${newNodo.id}${numAdd}`)\n newNodo.label = textAdd\n updateChildren(newNodo.Children, numAdd)\n newNodosCod110.push(newNodo)\n }\n\n nodo.Children = [...childrenAux, ...newNodosCod110]\n\n }\n}\n\nfunction updateChildren(Children: NodoDocDto[], numAdd: string) {\n for (const nodo of Children) {\n nodo.Codigo = `${nodo.Codigo}${numAdd}`\n nodo.id = Number(`${nodo.id}${numAdd}`)\n updateChildren(nodo.Children, numAdd)\n }\n}","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\n\nexport const updateNodoZanjaRecursivo = (nodos: NodoDocDto[], metros: number) => {\n for (const nodo of nodos) {\n\n if (nodo.Codigo.trim() !== 'Cod61') updateNodoZanjaRecursivo(nodo.Children, metros)\n\n const nodoCod110 = nodo.Children.find(e => e.Codigo.trim() === 'Cod110')\n\n if (!nodoCod110) continue\n\n const childrenAux = nodo.Children.filter(e => !['Cod110'].includes(e.Codigo))\n const mtsCod110 = 50 //CAMBIAR SEGUN LO PEDIDO\n const numCod110 = Math.ceil(metros / mtsCod110)\n const newNodosCod110 = []\n\n for (let index = 0; index < numCod110; index++) {\n const inicial = index * mtsCod110\n const final = inicial + mtsCod110\n const textAdd = `${inicial}m - ${final}m`\n const numAdd = `${inicial}${final}`\n const newNodo = structuredClone(nodoCod110)\n newNodo.Codigo = `${newNodo.Codigo}${numAdd}`\n newNodo.Descripcion = textAdd\n newNodo.Titulo = textAdd\n newNodo.id = Number(`${newNodo.id}${numAdd}`)\n newNodo.label = textAdd\n updateChildren(newNodo.Children, numAdd)\n newNodosCod110.push(newNodo)\n }\n\n nodo.Children = [...childrenAux, ...newNodosCod110]\n\n }\n}\n\nfunction updateChildren(Children: NodoDocDto[], numAdd: string) {\n for (const nodo of Children) {\n nodo.Codigo = `${nodo.Codigo}${numAdd}`\n nodo.id = Number(`${nodo.id}${numAdd}`)\n updateChildren(nodo.Children, numAdd)\n }\n}","import { ManoDeObraEntity } from './entitys/ManoDeObraEntity'\n\ninterface IenvSIGO {\n SISTEMAS_VALORIZACION_MANO_OBRA: string[]\n}\n\ninterface IProps {\n manoObra: ManoDeObraEntity\n ContratoOT: any\n envSIGO: IenvSIGO\n obra: { ContratoOT: { Sistema: string } }\n}\n\nexport const ActualizarDataManoObra = ({ manoObra, ContratoOT, envSIGO, obra }: IProps): void => {\n\n let Sistema: string = envSIGO.SISTEMAS_VALORIZACION_MANO_OBRA.includes(obra.ContratoOT.Sistema) ? 'onNet' : 'default'\n\n if (Sistema == 'default') Sistema = !ContratoOT.CheckPrecioMO ? 'default' : 'onNet'\n\n for (const valorizacion of manoObra.Valorizacion) {\n const { DatosManoObraGlobal: { DetalleChile: { ManoObraBaremo } }, DatosPrecioEspecialidad: { Agencias } } = valorizacion.DatosCatalogoMO\n if (!!!Agencias.length) throw Error(`¡No se pudo obtener Precio! Comunícate con Soporte`)\n const agencia = Agencias.find((e: any) => e.Estado.ID_Estado === 1)\n if (!!!agencia) throw Error(`¡No se pudo obtener Precio! Comunícate con Soporte`)\n valorizacion.Precio = Number(agencia.Ultimo_Precio.Precio)\n if (!!!ManoObraBaremo.length) throw Error(`¡No se pudo obtener Punto Baremo! Comunícate con Soporte`)\n valorizacion.DetalleChile.PuntoBaremo = ManoObraBaremo[0].PuntoBaremo\n\n const sistema: any = {\n onNet: { PuntoBaremo: valorizacion.Precio, Precio: valorizacion.DetalleChile.PuntoBaremo },\n default: { PuntoBaremo: valorizacion.DetalleChile.PuntoBaremo, Precio: valorizacion.Precio }\n }\n valorizacion.DetalleChile.PuntoBaremo = sistema[Sistema].PuntoBaremo\n valorizacion.Precio = sistema[Sistema].Precio\n }\n\n}","import { ReservaEntity } from './entitys/ReservaEntity'\n\nexport const ActualizarDataReserva = (reserva: ReservaEntity): void => {\n for (const item of reserva.Item) {\n const tipo = item?.DatosCatalogoItem?.DatosItem?.Tipo || ''\n const precio = Number(item?.DatosCatalogoItem?.DatosPrecioMaterial?.Precio) || 0\n item.Valor = tipo.trim() === 'AP Valorado' ? precio : 0\n }\n}","import { ResumenLiquidacionesType } from \"./CalcularResumenLiquidaciones\";\n\nexport const ActualizarDataResumenLiquidaciones: Funcion = (ManoObra, Reserva, StockPersonal, ResumenPreLiquidado) => {\n\n if (ManoObra && ManoObra.Valorizacion && Array.isArray(ManoObra.Valorizacion)) {\n\n for (const valorizacion of ManoObra.Valorizacion) {\n valorizacion.CantidadUsado = 0;\n const val = ResumenPreLiquidado.MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\n if (val) valorizacion.CantidadUsado = val.Cantidad;\n }\n\n }\n\n if (Reserva && Reserva.Item && Array.isArray(Reserva.Item)) {\n\n for (const item of Reserva.Item) {\n item.CantidadUsados = 0;\n const itemAUX = ResumenPreLiquidado.MatUtilizados.find(e => e.Codigo === item.Codigo);\n if (itemAUX) item.CantidadUsados = itemAUX.Cantidad;\n }\n\n }\n\n if (StockPersonal && Array.isArray(StockPersonal)) {\n\n for (const stockPersonal of StockPersonal) {\n\n stockPersonal.Liquidacion = 0\n\n const stock = ResumenPreLiquidado.MatStockPersonal.find(e => e.ID_Trabajo === stockPersonal.ID_Trabajo\n && e.Identificacion === stockPersonal.Personal.Identificacion\n && e.Codigo === stockPersonal.Reserva)\n\n if (stock) {\n if (stock.Cantidad > stockPersonal.Despacho) {\n stockPersonal.Liquidacion = stockPersonal.Despacho\n stock.Cantidad = stock.Cantidad - stockPersonal.Despacho\n } else {\n stockPersonal.Liquidacion = stock.Cantidad\n stock.Cantidad = 0\n }\n }\n\n }\n }\n\n}\n\ninterface Funcion {\n (ManoObra: any, Reserva: any, StockPersonal: any[], ResumenPreLiquidado: ResumenLiquidacionesType): void;\n}","import { ResumenLiquidacionesType } from \"./CalcularResumenValorizacionesAlemania\"\n\nexport const ActualizarDataResumenValorizacionesAlemania: Funcion = (ManoObra, Reserva, StockPersonal, ResumenPreLiquidado) => {\n\n if (ManoObra && ManoObra.Valorizacion && Array.isArray(ManoObra.Valorizacion)) {\n\n for (const valorizacion of ManoObra.Valorizacion) {\n valorizacion.CantidadUsado = 0;\n const val = ResumenPreLiquidado.MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\n if (val) valorizacion.CantidadUsado = val.Cantidad;\n }\n\n }\n\n if (Reserva && Reserva.Item && Array.isArray(Reserva.Item)) {\n\n for (const item of Reserva.Item) {\n item.CantidadUsados = 0;\n const itemAUX = ResumenPreLiquidado.MatUtilizados.find(e => e.Codigo === item.Codigo);\n if (itemAUX) item.CantidadUsados = itemAUX.Cantidad;\n }\n\n }\n\n if (StockPersonal && Array.isArray(StockPersonal)) {\n\n for (const stockPersonal of StockPersonal) {\n\n stockPersonal.Liquidacion = 0\n\n const stock = ResumenPreLiquidado.MatStockPersonal.find(e => e.ID_Trabajo === stockPersonal.ID_Trabajo\n && e.Identificacion === stockPersonal.Personal.Identificacion\n && e.Codigo === stockPersonal.Reserva\n && e.CodigoLlave === stockPersonal.CodigoLlave)\n\n if (stock) {\n if (stock.Cantidad > stockPersonal.Despacho) {\n stockPersonal.Liquidacion = stockPersonal.Despacho\n stock.Cantidad = stock.Cantidad - stockPersonal.Despacho\n } else {\n stockPersonal.Liquidacion = stock.Cantidad\n stock.Cantidad = 0\n }\n }\n\n }\n }\n\n}\n\ninterface Funcion {\n (ManoObra: any, Reserva: any, StockPersonal: any[], ResumenPreLiquidado: ResumenLiquidacionesType): void;\n}","import { ManoDeObraEntity } from './entitys/ManoDeObraEntity'\nimport { ObraEntity } from './entitys/ObraEntity'\nimport { TrabajoEntity } from './entitys/TrabajoEntity'\n\ninterface IParams {\n manoObra: ManoDeObraEntity\n trabajos: TrabajoEntity[]\n obra: ObraEntity\n ContratoOT: any\n envSIGO: IenvSIGO\n}\n\ninterface IenvSIGO {\n SISTEMAS_VALORIZACION_MANO_OBRA: string[]\n}\n\nexport const ActualizarDataTrabajos = ({ manoObra, trabajos, obra, ContratoOT, envSIGO }: IParams): void => {\n let Sistema: string = envSIGO.SISTEMAS_VALORIZACION_MANO_OBRA.includes(obra.ContratoOT.Sistema) ? 'onNet' : 'default'\n if (Sistema === 'default') {\n const CheckPrecioMO = ContratoOT.CheckPrecioMO\n Sistema = !CheckPrecioMO ? 'default' : 'onNet'\n }\n for (const trabajo of trabajos) {\n for (const valorizacion of trabajo.Ultima_PreLiquidacion.Valorizacion) {\n const valorizacionMO = manoObra.Valorizacion.find(e => e.DetalleChile.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub)\n if (valorizacionMO) {\n const { DatosManoObraGlobal: { DetalleChile: { ManoObraBaremo } }, DatosPrecioEspecialidad: { Agencias } } = valorizacionMO.DatosCatalogoMO\n const sistema: any = {\n onNet: { PuntoBaremo: Agencias[0].Ultimo_Precio.Precio, Precio: ManoObraBaremo[0].PuntoBaremo },\n default: { PuntoBaremo: ManoObraBaremo[0].PuntoBaremo, Precio: Agencias[0].Ultimo_Precio.Precio }\n }\n valorizacion.DetalleChile.PuntoBaremo = sistema[Sistema].PuntoBaremo\n valorizacion.Precio = sistema[Sistema].Precio\n } else {\n console.error(`¡No se encontró Valorizacion con LineaCodigoCub: ${valorizacion.DetalleChile.LineaCodigoCub} en la Mano de Obra!`)\n }\n }\n }\n}","interface Zona {\n Descripcion: string\n Codigo: string\n Estado: {\n ID_Estado: number\n }\n}\n\ninterface EmpresaContratistaEnPrecioEspecialidad {\n Zonas: Zona[]\n}\n\ninterface Obra {\n Pais: {\n Codigo: string\n }\n}\n\nexport function BuscarZonaContratista(EmpresaContratistaEnPrecioEspecialidad: EmpresaContratistaEnPrecioEspecialidad, Obra: Obra, ZonaAsignada: string): Zona | undefined {\n const zonaSearchMapping: Record<string, () => Zona | undefined> = {\n '512': () => EmpresaContratistaEnPrecioEspecialidad.Zonas.find((e) => e.Descripcion.toUpperCase() === ZonaAsignada.toUpperCase() && e.Estado.ID_Estado === 1),\n '004': () => EmpresaContratistaEnPrecioEspecialidad.Zonas.find((e) => e.Descripcion.toUpperCase() === ZonaAsignada.toUpperCase() && e.Estado.ID_Estado === 1),\n '480': () => EmpresaContratistaEnPrecioEspecialidad.Zonas.find((e) => e.Codigo.toUpperCase() === ZonaAsignada.toUpperCase() && e.Estado.ID_Estado === 1)\n };\n\n return zonaSearchMapping[Obra.Pais.Codigo]()\n}\n","import { HomePassDto } from '../../dtos/HomePassDto'\n\ninterface typeHPMOUtilizado {\n ID_HPListMO: number\n CantidadUtilizado: number\n}\n\ninterface typeTrabajo {\n Ultima_PreLiquidacion: PreLiquidacion\n}\n\ninterface PreLiquidacion {\n Valorizacion: ValorizacionDto[]\n}\n\ninterface ValorizacionDto {\n Ultimo_Estado_Interno: EstadoInternoDto\n HomePass: HomePassDto[]\n}\n\ninterface EstadoInternoDto {\n Descripcion: string\n}\n\nexport const CalcularResumenHPMOLiquidado = (trabajo: typeTrabajo): typeHPMOUtilizado[] => {\n return trabajo.Ultima_PreLiquidacion.Valorizacion.reduce((acc: typeHPMOUtilizado[], valorizacion) => {\n if (['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA'].includes(valorizacion.Ultimo_Estado_Interno.Descripcion.trim())) {\n for (const hpmo of valorizacion.HomePass) {\n const hpmoAux = acc.find(e => e.ID_HPListMO === hpmo.ID_HPListMO)\n if (hpmoAux) {\n hpmoAux.CantidadUtilizado += hpmo.Cantidad\n return acc\n }\n return [\n ...acc\n ,\n {\n ID_HPListMO: hpmo.ID_HPListMO,\n CantidadUtilizado: hpmo.Cantidad\n }\n ]\n }\n }\n return acc\n }, [])\n}","\nexport const CalcularResumenLiquidaciones: Funcion = (trabajo, trabajos) => {\n let MoUo: MoUoType[] = [];\n let MatUtilizados: MatUtilizadosType[] = [];\n let MatRetirados: MatRetiradosType[] = [];\n let MatStockPersonal: MatStockPersonalType[] = [];\n let MatStockAlmacen: MatStockPersonalType[] = [];\n for (const trabajoDB of trabajos) {\n\n if (trabajoDB.ID_Trabajo === trabajo.ID_Trabajo) {\n trabajoDB.Ultima_PreLiquidacion.Valorizacion = trabajo.Ultima_PreLiquidacion.Valorizacion;\n }\n\n for (const valorizacion of trabajoDB.Ultima_PreLiquidacion.Valorizacion) {\n if (['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA'].includes(valorizacion.Ultimo_Estado_Interno.Descripcion.trim())) {\n\n const val = MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\n if (val) {\n val.Cantidad += valorizacion.Cantidad;\n val.CantidadUO += valorizacion.CantidadUO;\n } else MoUo.push({\n LineaCodigoCub: valorizacion.DetalleChile.LineaCodigoCub,\n Cantidad: valorizacion.Cantidad,\n CantidadUO: valorizacion.CantidadUO,\n });\n\n for (const mu of valorizacion.MaterialesUtilizados) {\n if (mu.Estado.ID_Estado === 1) {\n\n const muAux = MatUtilizados.find((e: any) => e.Codigo === mu.Codigo);\n if (muAux) muAux.Cantidad += mu.Cantidad;\n else MatUtilizados.push({\n Codigo: mu.Codigo,\n Cantidad: mu.Cantidad,\n });\n\n const matStockPersonal = MatStockPersonal.find(e => e.ID_Trabajo === trabajoDB.ID_Trabajo\n && e.Codigo === mu.Codigo\n && e.Identificacion === trabajoDB.Ultima_asignacion.Personal[0].Identificacion\n )\n if (matStockPersonal) matStockPersonal.Cantidad += mu.Cantidad;\n else MatStockPersonal.push({\n ID_Trabajo: trabajoDB.ID_Trabajo,\n Identificacion: trabajoDB.Ultima_asignacion.Personal[0].Identificacion,\n Codigo: mu.Codigo,\n Cantidad: mu.Cantidad,\n })\n }\n }\n\n for (const mr of valorizacion.MaterialesRetirados) {\n if (mr.Estado.ID_Estado === 1) {\n const muAux = MatRetirados.find(e => e.Codigo === mr.Codigo);\n if (muAux) muAux.Cantidad += mr.Cantidad;\n else MatRetirados.push({\n Codigo: mr.Codigo,\n Cantidad: mr.Cantidad,\n });\n }\n }\n }\n }\n }\n return { MoUo, MatUtilizados, MatRetirados, MatStockPersonal, MatStockAlmacen };\n}\n\ninterface Funcion {\n (trabajo: TrabajoType, trabajos: any[]): ResumenLiquidacionesType;\n}\n\nexport interface ResumenLiquidacionesType {\n MoUo: MoUoType[];\n MatUtilizados: MatUtilizadosType[];\n MatRetirados: MatRetiradosType[];\n MatStockPersonal: MatStockPersonalType[];\n MatStockAlmacen: MatStockPersonalType[];\n};\n\nexport interface MatStockPersonalType {\n ID_Trabajo: number;\n Identificacion: string;\n Codigo: string;\n Cantidad: number;\n}\n\nexport interface MatRetiradosType {\n Codigo: string;\n Cantidad: number;\n}\n\nexport interface MatUtilizadosType {\n Codigo: string;\n Cantidad: number;\n}\n\nexport interface MoUoType {\n LineaCodigoCub: string;\n Cantidad: number;\n CantidadUO: number;\n}\n\ninterface TrabajoType {\n ID_Trabajo: number;\n Ultima_PreLiquidacion: PreLiquidacionType;\n // Otras propiedades y tipos correspondientes a 'Trabajo'\n}\n\ninterface PreLiquidacionType {\n Valorizacion: ValorizacionType[];\n // Otras propiedades y tipos correspondientes a 'PreLiquidacion'\n}\n\ninterface ValorizacionType {\n // Propiedades y tipos correspondientes a 'Valorizacion'\n}\n","\nexport const CalcularResumenValorizacionesAlemania: Funcion = (trabajo, trabajos) => {\n let MoUo: MoUoType[] = [];\n let MatUtilizados: MatUtilizadosType[] = [];\n let MatRetirados: MatRetiradosType[] = [];\n let MatStockPersonal: MatStockPersonalType[] = [];\n let MatStockAlmacen: MatStockAlmacenType[] = [];\n for (const trabajoDB of trabajos) {\n\n if (trabajoDB.ID_Trabajo === trabajo.ID_Trabajo) {\n trabajoDB.Ultima_PreLiquidacion.Valorizacion = trabajo.Ultima_PreLiquidacion.Valorizacion;\n }\n\n for (const valorizacion of trabajoDB.Ultima_PreLiquidacion.Valorizacion) {\n if (['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA', 'RECHAZADA POR DOCUMENTACION'].includes(valorizacion.Ultimo_Estado_Interno.Descripcion.trim())) {\n\n const val = MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\n if (val) {\n val.Cantidad += valorizacion.Cantidad;\n val.CantidadUO += valorizacion.CantidadUO;\n } else MoUo.push({\n LineaCodigoCub: valorizacion.DetalleChile.LineaCodigoCub,\n Cantidad: valorizacion.Cantidad,\n CantidadUO: valorizacion.CantidadUO,\n });\n\n for (const mu of valorizacion.MaterialesUtilizados) {\n\n if (mu.Estado.ID_Estado !== 1) continue\n\n const muAux = MatUtilizados.find((e: any) => e.Codigo === mu.Codigo);\n if (muAux) muAux.Cantidad += mu.Cantidad;\n else MatUtilizados.push({\n Codigo: mu.Codigo,\n Cantidad: mu.Cantidad,\n })\n\n if (!mu.CodigoLlave) throw Error(`No se pudo calcular resumen`)\n\n //#endregion Resumen Stock Personal\n if (mu.Motivo.Descripcion !== 'CONSUMO_MATERIAL_AUTOMATICO_DUCTOS') {\n const matStockPersonal = MatStockPersonal.find(e => e.ID_Trabajo === trabajoDB.ID_Trabajo\n && e.CodigoLlave === mu.CodigoLlave\n && e.Identificacion === trabajoDB.Ultima_asignacion.Personal[0].Identificacion\n )\n if (matStockPersonal) matStockPersonal.Cantidad += mu.Cantidad\n else MatStockPersonal.push({\n ID_Trabajo: trabajoDB.ID_Trabajo,\n Identificacion: trabajoDB.Ultima_asignacion.Personal[0].Identificacion,\n Codigo: mu.Codigo,\n CodigoLlave: mu.CodigoLlave,\n Cantidad: mu.Cantidad,\n })\n }\n //#endregion\n\n //#region Mat Stock Almacen\n if (mu.Motivo.Descripcion === 'CONSUMO_MATERIAL_AUTOMATICO_DUCTOS') {\n const matStockAlmacen = MatStockAlmacen.find(e => e.ID_Trabajo === trabajoDB.ID_Trabajo\n && e.CodigoLlave === mu.CodigoLlave\n )\n if (matStockAlmacen) matStockAlmacen.Cantidad += mu.Cantidad;\n else MatStockAlmacen.push({\n ID_Trabajo: trabajoDB.ID_Trabajo,\n Empresa: trabajoDB.Ultima_asignacion.Empresa.Codigo,\n CodigoLlave: mu.CodigoLlave,\n Codigo: mu.Codigo,\n Cantidad: mu.Cantidad,\n })\n }\n //#endregion\n }\n\n for (const mr of valorizacion.MaterialesRetirados) {\n if (mr.Estado.ID_Estado === 1) {\n const muAux = MatRetirados.find(e => e.Codigo === mr.Codigo);\n if (muAux) muAux.Cantidad += mr.Cantidad;\n else MatRetirados.push({\n Codigo: mr.Codigo,\n Cantidad: mr.Cantidad,\n });\n }\n }\n }\n }\n }\n return { MoUo, MatUtilizados, MatRetirados, MatStockPersonal, MatStockAlmacen };\n}\n\ninterface Funcion {\n (trabajo: TrabajoType, trabajos: any[]): ResumenLiquidacionesType;\n}\n\nexport interface ResumenLiquidacionesType {\n MoUo: MoUoType[];\n MatUtilizados: MatUtilizadosType[];\n MatRetirados: MatRetiradosType[];\n MatStockPersonal: MatStockPersonalType[];\n MatStockAlmacen: MatStockAlmacenType[];\n};\n\nexport interface MatStockPersonalType {\n ID_Trabajo: number;\n Identificacion: string;\n Codigo: string;\n CodigoLlave: string;\n Cantidad: number;\n}\n\nexport interface MatStockAlmacenType {\n ID_Trabajo: number;\n CodigoLlave: string;\n Codigo: string;\n Cantidad: number;\n Empresa: string\n}\n\nexport interface MatRetiradosType {\n Codigo: string;\n Cantidad: number;\n}\n\nexport interface MatUtilizadosType {\n Codigo: string;\n Cantidad: number;\n}\n\nexport interface MoUoType {\n LineaCodigoCub: string;\n Cantidad: number;\n CantidadUO: number;\n}\n\ninterface TrabajoType {\n ID_Trabajo: number;\n Ultima_PreLiquidacion: PreLiquidacionType;\n // Otras propiedades y tipos correspondientes a 'Trabajo'\n}\n\ninterface PreLiquidacionType {\n Valorizacion: ValorizacionType[];\n // Otras propiedades y tipos correspondientes a 'PreLiquidacion'\n}\n\ninterface ValorizacionType {\n // Propiedades y tipos correspondientes a 'Valorizacion'\n}\n","export const CodigosMaterialSoplado = [\n { Codigo: '02CFO-108-205', Descripcion: '12FO-FIBER UNIT-DROP' },\n { Codigo: '02CFO-108-201', Descripcion: '2FO-FIBER UNIT-DROP' },\n { Codigo: '02CFO-108-204', Descripcion: '8FO-FIBER UNIT-DROP' },\n { Codigo: '02CFO-107-206', Descripcion: '96FO- OPTICAL CABLE' },\n { Codigo: '02CFO-107-204', Descripcion: '48FO-OPTICAL CABLE' },\n { Codigo: '02CFO-107-208', Descripcion: '192FO-OPTICAL CABLE' },\n { Codigo: '02CFO-107-209', Descripcion: '288FO-OPTICAL CABLE' },\n]","interface iMapeoMOMaterial {\n CodigoMO: string,\n CodigoMaterial: string,\n CodMatConector: string,\n CantidadPorDucto: number,\n Alcance: string,\n}\ninterface iMapeoMOMaterialSoplado {\n CodigoMO: string,\n CodigoMaterial: string,\n}\n\nexport const CodsMapeoMOMaterial: iMapeoMOMaterial[] = [\n { CodigoMO: '010103200', CodigoMaterial: '03DUC-109-204', CodMatConector: '03DUC-110-201', CantidadPorDucto: 2, Alcance: '2X16-12', },\n { CodigoMO: '010103300', CodigoMaterial: '03DUC-109-203', CodMatConector: '03DUC-110-201', CantidadPorDucto: 4, Alcance: '4X16-12', },\n { CodigoMO: '010103400', CodigoMaterial: '03DUC-109-202', CodMatConector: '03DUC-110-201', CantidadPorDucto: 7, Alcance: '7x16-12', },\n { CodigoMO: '010203900', CodigoMaterial: '03DUC-109-212', CodMatConector: '03DUC-110-210', CantidadPorDucto: 12, Alcance: '12x7-4', },\n { CodigoMO: '010204000', CodigoMaterial: '03DUC-109-211', CodMatConector: '03DUC-110-210', CantidadPorDucto: 24, Alcance: '24x7-4', },\n { CodigoMO: '010203800', CodigoMaterial: '03DUC-109-213', CodMatConector: '03DUC-110-210', CantidadPorDucto: 7, Alcance: '7X7-4', },\n { CodigoMO: '010303000', CodigoMaterial: '03DUC-109-201', CodMatConector: '03DUC-110-214', CantidadPorDucto: 2, Alcance: '1x50-40', },\n // { CodigoMO: '010303100', CodigoMaterial: '03DUC-109-210', CodMatConector: '03DUC-110-207', CantidadPorDucto: 1, Alcance: '1X12-10', },\n { CodigoMO: '', CodigoMaterial: '03DUC-109-210', CodMatConector: '03DUC-110-207', CantidadPorDucto: 1, Alcance: '', },\n { CodigoMO: '010403300', CodigoMaterial: '03DUC-109-209', CodMatConector: '03DUC-110-204', CantidadPorDucto: 1, Alcance: '1x14-10', },\n { CodigoMO: '010403500', CodigoMaterial: '03DUC-109-208', CodMatConector: '03DUC-110-204', CantidadPorDucto: 2, Alcance: '2x14-10', },\n { CodigoMO: '010403600', CodigoMaterial: '03DUC-109-207', CodMatConector: '03DUC-110-204', CantidadPorDucto: 4, Alcance: '4x14-10', },\n { CodigoMO: '010403700', CodigoMaterial: '03DUC-109-206', CodMatConector: '03DUC-110-204', CantidadPorDucto: 7, Alcance: '7x14-10', },\n { CodigoMO: '010206700', CodigoMaterial: '03DUC-109-214', CodMatConector: '03DUC-110-210', CantidadPorDucto: 1, Alcance: '1x7-4', },\n { CodigoMO: '', CodigoMaterial: '03DUC-109-205', CodMatConector: '03DUC-110-201', CantidadPorDucto: 1, Alcance: '', },\n]\n\nexport const CodsMapeoMOMaterialSopladoClientes: iMapeoMOMaterialSoplado[] = [\n { CodigoMO: 'T14', CodigoMaterial: '02CFO-108-205' },\n { CodigoMO: 'T15', CodigoMaterial: '02CFO-108-201' },\n { CodigoMO: 'T16', CodigoMaterial: '02CFO-108-204' },\n]\nexport const CodsMapeoMOMaterialSopladoTroncal: iMapeoMOMaterialSoplado[] = [\n { CodigoMO: '042004400', CodigoMaterial: '02CFO-107-206' },\n { CodigoMO: '041704500', CodigoMaterial: '02CFO-107-204' },\n { CodigoMO: '041704300', CodigoMaterial: '02CFO-107-208' },\n { CodigoMO: '041704200', CodigoMaterial: '02CFO-107-209' },\n]","export const CompararFechas = (Fecha1: Date, Fecha2?: Date): boolean => {\n const hoy = Fecha2 ? new Date(Fecha2) : new Date();\n hoy.setHours(0, 0, 0, 0);\n const fecParteDiario = new Date(Fecha1);\n fecParteDiario.setHours(0, 0, 0, 0);\n return fecParteDiario.getTime() === hoy.getTime();\n}\n","export const DocumentacionReplanteo: any[] = [\n {\n \"id\": 1,\n \"label\": \"REGISTRO FOTOGRAFICO\",\n \"Children\": [],\n \"IsDebug\": false,\n \"Titulo\": \"REGISTRO FOTOGRAFICO\",\n \"Codigo\": \"Cod1\",\n \"Descripcion\": \"REGISTRO FOTO GRAFICO\",\n \"Files\": [],\n \"Extension\": [\n \"ALL\"\n ],\n \"Size\": {\n \"IsDebug\": false,\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": false,\n \"Estado\": {\n \"IsDebug\": false,\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n },\n \"CantidadMin\": 0.0,\n \"CantidadMax\": 0.0\n },\n {\n \"id\": 2,\n \"label\": \"PLANO AUXILIAR\",\n \"Children\": [],\n \"IsDebug\": false,\n \"Titulo\": \"PLANO AUXILIAR\",\n \"Codigo\": \"Cod2\",\n \"Descripcion\": \"PLANO AUXILIAR\",\n \"Files\": [],\n \"Extension\": [\n \"ALL\"\n ],\n \"Size\": {\n \"IsDebug\": false,\n \"Size\": 50,\n \"UM\": \"mb\"\n },\n \"Requerido\": true,\n \"Estado\": {\n \"IsDebug\": false,\n \"ID_Estado\": 1,\n \"Nombre\": \"ACTIVO\"\n },\n \"CantidadMin\": 0.0,\n \"CantidadMax\": 0.0\n }\n]","export const GetCodigoFechaActual = (): string => {\n // const diaString = new Date().toLocaleString().split(\",\")[0]\n // const dia = diaString.split('/')[0].padStart(2, '0')\n // const mes = diaString.split('/')[1].padStart(2, '0')\n // const año = diaString.split('/')[2].padStart(2, '0')\n const diaString = new Date()\n const dia = diaString.getDate().toString().padStart(2, '0')\n const mes = (diaString.getMonth() + 1).toString().padStart(2, '0')\n const año = diaString.getFullYear().toString()\n return `${año}${mes}${dia}`\n}","import { MaterialAmapDto } from '../../dtos/MaterialAmapDto'\nimport { DetalleManoObraChileDto } from '../../dtos/DetalleManoObraChileDto'\nimport { PreciosAgenciaDto } from '../../dtos/PreciosAgenciaDto'\nimport { PreciosContrataDto } from '../../dtos/PreciosContrataDto'\nimport { generarModeloAmap } from './generarModeloAmap'\nimport { AmapDto } from '../../dtos/AmapDto'\nimport { filtrarMONoReservada } from './filtrarMONoReservada'\n\nexport interface PrecioEspecialidad {\n Simbolo: string\n Moneda: string\n Decimales: number\n Especialidad: { Codigo: string }\n ContratoOT: { Codigo: string }\n Agencias: PreciosAgenciaDto[]\n Contratistas: PreciosContrataDto[]\n}\n\nexport interface ManoObraGlobal {\n Amap: number\n Codigo: string\n Actividad: string\n Alcance: string\n Unidad: { Nombre: string }\n DetalleChile: DetalleManoObraChileDto\n ContratoOT: { Codigo: string }\n Material: MaterialAmapDto[]\n}\n\nexport interface Obra {\n DetalleChile: { numoe: string, codigo: string, agencia: string }\n Pais: { Codigo: string }\n Delegacion: { Codigo: string }\n}\n\nexport interface ManoObra {\n Valorizacion: AmapDto[]\n}\n\ninterface params {\n dataManoObraGlobal: ManoObraGlobal[]\n dataPrecioEspecialidad: PrecioEspecialidad[]\n Obra: Obra\n ManoObra: ManoObra\n}\n\nexport function ObtenerMONoReservada(params: params) {\n\n const { dataManoObraGlobal, dataPrecioEspecialidad, Obra, ManoObra } = params\n const ModelosAmap: AmapDto[] = []\n\n for (const ManoObraGlobal of dataManoObraGlobal) {\n for (const MOB of ManoObraGlobal.DetalleChile.ManoObraBaremo) {\n\n const matchPrecioEspecialidad = dataPrecioEspecialidad.filter(p =>\n p.Especialidad.Codigo === MOB.Especialidad.Codigo &&\n p.ContratoOT.Codigo === ManoObraGlobal.ContratoOT.Codigo\n )\n\n if (matchPrecioEspecialidad.length !== 1) {\n console.warn(`No se pudo obtener Precio Especialidad para ManoObraGlobal: ${ManoObraGlobal.Codigo}, Codigo Especialidad: ${MOB.Especialidad.Codigo}`)\n continue\n }\n\n const agencia = matchPrecioEspecialidad[0].Agencias.filter(e => e.Codigo === Obra.DetalleChile.agencia)\n if (agencia.length !== 1) {\n console.warn(`No se pudo Obtener Agencia`)\n continue\n }\n\n const newModelo = generarModeloAmap({ ManoObraGlobal, MOB, Obra, PrecioEspecialidad: matchPrecioEspecialidad[0], Precio: agencia[0].Ultimo_Precio.Precio })\n ModelosAmap.push(newModelo)\n }\n }\n return filtrarMONoReservada({ ModelosAmap, ManoObra })\n}\n","import { AmapDto } from '../../dtos/AmapDto'\nimport { ManoObra } from './index'\n\ninterface params {\n ModelosAmap: AmapDto[]\n ManoObra: ManoObra\n}\n\nexport function filtrarMONoReservada(params: params) {\n return params.ModelosAmap.reduce((acc: AmapDto[], amap) => {\n // const exist = params.ManoObra.Valorizacion.find(e => e.DetalleChile.LineaCodigoCub === amap.DetalleChile.LineaCodigoCub)\n const exist = params.ManoObra.Valorizacion.find(e => e.DetalleChile.ManoObra.Codigo === amap.DetalleChile.ManoObra.Codigo)\n if (exist) return acc\n return [...acc, amap]\n }, [])\n}","import { IsValidDate } from '../../../shared/index'\nimport { PreciosVigentesDto, PrecioActividadDto } from './../../dtos/index'\n\ntype params = {\n actividad: PrecioActividadDto,\n FechaVerificar: Date\n}\n\nexport function ObtenerPrecioContratistaVigente({ actividad, FechaVerificar }: params): PreciosVigentesDto | null {\n const fechaVerificar = new Date(FechaVerificar)\n if (!IsValidDate(fechaVerificar)) throw Error(`La fecha de asignación del Trabajo no es válida.`)\n const Precios: PreciosVigentesDto[] = []\n actividad.Precios.forEach(precio => {\n const fechaInicio = new Date(precio.Vigencia.FechaInicio);\n if (!IsValidDate(fechaInicio)) throw Error(`La fecha de asignación del Trabajo no es válida.`)\n const fechaFin = new Date(precio.Vigencia.FechaFin);\n if (!IsValidDate(fechaFin)) throw Error(`La fecha de asignación del Trabajo no es válida.`)\n if (fechaVerificar.getTime() >= fechaInicio.getTime() && fechaVerificar.getTime() <= fechaFin.getTime()) {\n Precios.push(precio)\n }\n })\n if (Precios.length > 1) throw Error(`¡Se han identificado múltiples precios con fechas superpuestas!\\n${Precios.map(e => `Id_PrecioVigente: ${e.ID_PreciosVigentes}, Precio: ${e.Precio}, FechaInicio: ${e.Vigencia.FechaInicio}, FechaFin: ${e.Vigencia.FechaFin}\\n`).join('')}`)\n if (!Precios.length) return null\n return Precios[0]\n}","interface Obra {\n ZonaAsignada: string;\n Ubicacion: {\n Municipio: string;\n };\n Pais: {\n Codigo: string;\n };\n}\n\nexport function ObtenerZonaAsignada(Obra: Obra): string {\n const zonaMapping: Record<string, string> = {\n '512': Obra.ZonaAsignada,\n '004': Obra.ZonaAsignada,\n '480': Obra.Ubicacion.Municipio\n };\n\n return zonaMapping[Obra.Pais.Codigo] ? zonaMapping[Obra.Pais.Codigo] : Obra.ZonaAsignada\n}\n","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\nimport { updateNodoAsfaltoRecursivo } from './updateNodoAsfaltoRecursivo'\nimport { updateNodosPorEspecialidad } from './updateNodosPorEspecialidad'\nimport { updateNodoZanjaRecursivo } from './updateNodoZanjaRecursivo'\n\ninterface params<T> {\n documentacion: T\n obra: {\n TotalesGeneralObra: {\n PresupuestadoTotalObra: {\n TotMetros: number\n }\n }\n }\n trabajo?: {\n Ultima_asignacion: { Valorizaciones: { Especialidad: { Codigo: string } }[] },\n Ultima_PreLiquidacion: {\n Valorizacion: {\n DetalleChile: { CodigoBarra: string },\n Ultimo_Estado_Interno: { Descripcion: string }\n }[]\n }\n }\n}\n\nexport interface IDocumentacion {\n Nodos: NodoDocDto[]\n}\n\nexport const UpdateNodosDocDP = <T extends IDocumentacion>({ documentacion, obra, trabajo }: params<T>) => {\n const metros = obra.TotalesGeneralObra.PresupuestadoTotalObra.TotMetros\n updateNodoZanjaRecursivo(documentacion.Nodos, metros)\n updateNodoAsfaltoRecursivo(documentacion.Nodos, metros)\n if (trabajo) {\n const codEspecialidadesAux = trabajo.Ultima_asignacion.Valorizaciones.map(e => e.Especialidad.Codigo)\n // si informan asphalt poner nodo asfalto en tab calidad cada 50 m (Carlos armará el modelo)\n const estados = ['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA', 'RECHAZADA POR DOCUMENTACION']\n const asphalt = trabajo.Ultima_PreLiquidacion.Valorizacion.some(val =>\n val.DetalleChile.CodigoBarra === 'Asphalt' &&\n estados.includes(val.Ultimo_Estado_Interno.Descripcion)\n )\n if (asphalt) codEspecialidadesAux.push('05-ASFALTADO')\n updateNodosPorEspecialidad(documentacion, codEspecialidadesAux)\n }\n return documentacion\n}","import { IDocumentacion } from './index'\n\nexport function updateNodosPorEspecialidad<T extends IDocumentacion>(documentacion: T, codEspecialidades: string[]) {\n documentacion.Nodos = documentacion.Nodos.filter(e => codEspecialidades.includes(e.Titulo.trim()))\n}","export const codClientes = [ // Residential\n '031406300',\n '031406400',\n '031406500',\n '010602400',\n '010602500',\n '073100700',\n '073100800',\n '073100900',\n '073101000',\n '073101100',\n '073101200',\n '073101300',\n '073101400',\n '073101500',\n '073106600',\n '073102400',\n]\nexport const codNoCliente = [ //Business\n '010602400',\n '073100700',\n '073100800',\n '073100900',\n '073101000',\n '073101100',\n '073101200',\n '073101300',\n '073101400',\n '073101500',\n '073006000',\n '073106600',\n '073102400',\n]\nexport const codSopladoRD = ['T14', 'T15', 'T16'] // Residential (Clientes)","export const codMOTroncal_ReglaLiquidacion1 = [\n '011304100',\n '062605200',\n '062605201',\n '010600300',\n '010600400',\n '010600500',\n '010600600',\n '010600700',\n '010600800',\n '010600900',\n '010601000',\n '010601100',\n '010601200',\n '010601300',\n '010601400',\n '010601500',\n '010601600',\n '010601700',\n '010601800',\n '010601900',\n '010602000',\n '010602100',\n '010602200',\n '010602300',\n '010602400',\n // '010602500',\n '010602600',\n '062705701',\n '062705702',\n '062705703',\n '062705704',\n '062705805',\n '062705806',\n '062705807',\n '062705808',\n '062605300',\n '062605301',\n '062605302',\n 'T13',\n 'T12',\n 'T21',\n 'T22',\n 'T8',\n 'T2',\n 'T20'\n]\nexport const codMOClientes_ReglaLiquidacion1 = [\n '010602400',\n '031406300',\n '031406400',\n '031406500',\n 'T22',\n]\nexport const codMONoClientes_ReglaLiquidacion1 = [\n '073006000', // Codigo de baliza\n 'T22',\n]\n\nexport const codMOPublico = [ //Para regla de preliquidacion Clientes y No Clientes\n '010602500',\n '073100700',\n '073100800',\n '073100900',\n '073101000',\n '073101100',\n '073101200',\n '073101300',\n '073101400',\n '073101500',\n]","export const codigosMaterialDuctos = [\n '03DUC-110-209',\n '03DUC-110-211',\n '03DUC-110-201',\n '03DUC-110-207',\n '03DUC-110-213',\n '03DUC-110-202',\n '03DUC-110-208',\n '03DUC-110-214',\n '03DUC-110-205',\n '03DUC-110-215',\n '03DUC-110-204',\n '03DUC-110-203',\n '03DUC-110-210',\n '03DUC-118-202',\n '03DUC-118-201',\n '03DUC-118-204',\n]","export const codigosMaterialUGG = [\n '03DUC-110-209', '03DUC-110-211', '05PAO-113-201', '05PAO-113-203',\n '05PAO-113-208', '05PAO-114-202', '02CFO-108-204', '05PAO-112-205',\n '05PAO-113-206', '02CFO-108-201', '03DUC-110-201', '05PAO-113-204',\n '03DUC-110-207', '05PAO-112-204', '02CFO-107-208', '03DUC-110-213',\n '05PAO-112-202', '02CFO-108-202', '02CFO-108-203', '03DUC-110-202',\n '05PAO-112-201', '02CFO-107-206', '02CFO-107-207', '02CFO-107-209',\n '05PAO-113-207', '03DUC-110-208', '03DUC-110-214', '03DUC-110-205',\n '07CPE-116-201', '03DUC-110-215', '03DUC-110-206', '05PAO-113-202',\n '03DUC-110-204', '05PAO-114-201', '02CFO-108-205', '03DUC-110-203',\n '05PAO-113-205', '02CFO-107-204', '03DUC-110-210', '05PAO-112-203',\n '06ARQ-115-209', '06ARQ-115-207', '06ARQ-115-210', '06ARQ-115-206',\n '06ARQ-115-208', '05PAO-113-211', '02CFO-107-212', '02CFO-107-213',\n '03DUC-118-202', '05PAO-113-212', '03DUC-118-201', '06ARQ-115-213',\n '02CFO-107-211', '06ARQ-115-211', '02CFO-107-210', '05PAO-113-214',\n '05PAO-113-213', '06ARQ-115-212', '03DUC-117-201', '02CFO-107-202',\n '04DPO-111-204', '02CFO-107-203', '04DPO-111-207', '08POP-119-202',\n '02CFO-107-205', '08POP-119-201', '04DPO-111-203', '05PAO-112-206',\n '05PAO-113-209', '05PAO-112-207', '01ODF-103-201', '05PAO-114-205',\n '04DPO-111-206', '03DUC-117-210', '03DUC-117-206', '03DUC-117-203',\n '03DUC-117-207', '03DUC-117-211', '03DUC-117-208', '03DUC-117-202',\n '03DUC-117-204', '03DUC-117-205', '03DUC-117-209', '01ODF-105-201',\n '01ODF-102-204', '01ODF-105-205', '01ODF-102-205', '01ODF-101-201',\n '01ODF-102-202', '01ODF-102-203', '04DPO-111-202', '04DPO-111-201',\n '04DPO-111-205', '02CFO-107-201', '01ODF-102-201', '03DUC-118-204'\n]","interface PaisMap {\n [key: string]: {\n CantidadMin: number\n }\n}\n\nexport const paisMap: PaisMap = {\n '480': { CantidadMin: 2 },\n '512': { CantidadMin: 0 },\n '004': { CantidadMin: 0 },\n}"],"names":["Position","ModelDataFlujosDocumentacionReplanteo","Action","Fecha","Date","Usuario","Description","Posicion","Icono","ColorIcono","TagPagina","EstadoDto","this","GeneralCodigoNombreDto","GeneralCodigoNombreUnidadDto","UsuarioDto","IsValidDate","date","Params","left","DetalleChileReservaMODto","WBEDto","DetalleManoObraChileDto","DatosManoObraGlobalDto","DatosPrecioEspecialidadDto","DatosUnidadObraMaterialDto","DatosCatalogoMODto","AmapDto","hashCode","str","hash","i","length","charCodeAt","Math","abs","toString","DocumentacionHPBussines","id","label","Children","Titulo","Codigo","Descripcion","Files","Filename","Extension","CodigoNodo","NameOriginal","Size","UM","Ruta","Observacion","Coordenadas","X","Y","Fecha_Archivo","Ultimo_Flujo","Identificacion","Apellidos","Nombres","Visible","Flujos","Estado","ID_Estado","Nombre","Requerido","CantidadMin","CantidadMax","modelDROP","modelCABLE","modelARMARIO","DocumentacionHPResidential","ID_DocumentacionPEX","TipoObra","Sistema","Pais","Delegacion","Nodos","Bitacora","dataFlujosHomePass","updateChildren","numAdd","_step2","_iterator2","_createForOfIteratorHelperLoose","done","nodo","value","Number","_ref","manoObra","ContratoOT","envSIGO","SISTEMAS_VALORIZACION_MANO_OBRA","includes","obra","CheckPrecioMO","_step","_iterator","Valorizacion","valorizacion","_valorizacion$DatosCa","DatosCatalogoMO","ManoObraBaremo","DatosManoObraGlobal","DetalleChile","Agencias","DatosPrecioEspecialidad","Error","agencia","find","e","Precio","Ultimo_Precio","PuntoBaremo","sistema","onNet","default","reserva","Item","_item$DatosCatalogoIt","_item$DatosCatalogoIt2","item","tipo","DatosCatalogoItem","DatosItem","Tipo","precio","DatosPrecioMaterial","Valor","trim","ManoObra","Reserva","StockPersonal","ResumenPreLiquidado","Array","isArray","_loop","CantidadUsado","val","MoUo","LineaCodigoCub","Cantidad","_loop2","CantidadUsados","itemAUX","MatUtilizados","_step3","_loop3","stockPersonal","Liquidacion","stock","MatStockPersonal","ID_Trabajo","Personal","Despacho","_iterator3","CodigoLlave","trabajos","valorizacionMO","_valorizacionMO$Datos","console","error","Ultima_PreLiquidacion","EmpresaContratistaEnPrecioEspecialidad","Obra","ZonaAsignada","512","Zonas","toUpperCase","004","480","trabajo","reduce","acc","Ultimo_Estado_Interno","_ret","hpmo","hpmoAux","ID_HPListMO","CantidadUtilizado","v","concat","HomePass","MatRetirados","trabajoDB","CantidadUO","push","mu","muAux","matStockPersonal","Ultima_asignacion","MaterialesUtilizados","_step4","_loop4","mr","_iterator4","MaterialesRetirados","MatStockAlmacen","Motivo","matStockAlmacen","Empresa","CodigoMO","CodigoMaterial","CodMatConector","CantidadPorDucto","Alcance","Fecha1","Fecha2","hoy","setHours","fecParteDiario","getTime","options","_value","structuredClone","_temp","_Number","_ref$symbolCoin","symbolCoin","_ref$symbolCoinPositi","symbolCoinPosition","_ref$isPorcent","isPorcent","_ref$decimal","decimal","_ref$codeCountry","codeCountry","_ref$currency","currency","_isValidFormatCodeCountry","_codeCountry","test","isValidFormatCodeCountry","_decimal","Intl","NumberFormat","style","format","toFixed","valueFormated","_Number2","formaterMiles","isFinite","isNaN","ValidateValue","_value2","_value3","split","reverse","n","replace","ParserDiffFormatValue","replaceAll","parseFloat","ParserValue","IsDebug","diaString","dia","getDate","padStart","mes","getMonth","getFullYear","params","dataPrecioEspecialidad","ModelosAmap","ManoObraGlobal","MOB","matchPrecioEspecialidad","filter","p","Especialidad","warn","newModelo","PrecioEspecialidad","_Obra$DetalleChile2","codigoVal","_Obra$DetalleChile","codigo","newDto","CodigoCub","Linea","Actividad","Clave","Tarea","UnidadMedida","Unidad","UnidadObra","generarModeloDetalleChile","newAmap","Amap","Total","Moneda","Simbolo","Decimales","WBE","CodigoWBE","CantidadUOAprobada","Material","Contratistas","DatosUnidadObraMaterial","Materiales","generarModeloAmap","dataManoObraGlobal","amap","filtrarMONoReservada","actividad","fechaVerificar","FechaVerificar","Precios","forEach","fechaInicio","Vigencia","FechaInicio","fechaFin","FechaFin","map","ID_PreciosVigentes","join","zonaMapping","Ubicacion","Municipio","documentacion","metros","TotalesGeneralObra","PresupuestadoTotalObra","TotMetros","updateNodoZanjaRecursivo","nodos","nodoCod110","childrenAux","numCod110","ceil","newNodosCod110","index","inicial","final","textAdd","newNodo","updateNodoAsfaltoRecursivo","nodoCod100","codEspecialidadesAux","Valorizaciones","estados","some","CodigoBarra","codEspecialidades","updateNodosPorEspecialidad","modelDROPAux","modelCABLEAux","modelARMARIOAux"],"mappings":"w4BAAKA,ECAQC,EAAwC,CACjD,CACIC,OAAQ,YACRC,MAAO,IAAIC,KACXC,QAAS,GACTC,YAAa,YACbC,SAAU,IACVC,MAAO,mBACPC,WAAY,UACZC,UAAW,CAAC,8BAEhB,CACIR,OAAQ,UACRC,MAAO,IAAIC,KACXC,QAAS,GACTC,YAAa,UACbC,SAAU,IACVC,MAAO,qBACPC,WAAY,UACZC,UAAW,CAAC,8BAEhB,CACIR,OAAQ,WACRC,MAAO,IAAIC,KACXC,QAAS,GACTC,YAAa,WACbC,SAAU,IACVC,MAAO,qBACPC,WAAY,UACZC,UAAW,CAAC,8BAEhB,CACIR,OAAQ,WACRC,MAAO,IAAIC,KACXC,QAAS,GACTC,YAAa,WACbC,SAAU,IACVC,MAAO,qBACPC,WAAY,UACZC,UAAW,CAAC,8BAEhB,CACIR,OAAQ,YACRC,MAAO,IAAIC,KACXC,QAAS,GACTC,YAAa,YACbC,SAAU,IACVC,MAAO,0BACPC,WAAY,UACZC,UAAW,CAAC,+BCjDPC,EAAb,WACIC,eAAoB,EACpBA,YAAiB,UCFRC,EAAb,WACID,YAAiB,GACjBA,YAAiB,ICFRE,EAAb,WACIF,YAAiB,GACjBA,YAAiB,GACjBA,kBAAuB,ICHdG,EAAb,WACIH,oBAAyB,GACzBA,eAAoB,GACpBA,aAAkB,GAClBA,WAAc,IAAIR,eCJNY,EAAYC,GAC1B,OAAOA,aAAgBb,MNDzB,SAAKJ,GACHA,cACAA,gBAFF,CAAKA,IAAAA,OAGJ,IAGKkB,EAAN,WACIN,gBAAsB,GACtBA,wBAAoCZ,EAASmB,KAC7CP,gBAAsB,EACtBA,aAAmB,EACnBA,iBAAuB,GACvBA,cAAoB,IOVXQ,EAAb,WACIR,YAAiB,GACjBA,WAAgB,GAChBA,cAAmB,GACnBA,cAAmB,GACnBA,cAAmB,GACnBA,cAAmB,GACnBA,WAAgB,GAChBA,kBAAuC,IAAIC,EAC3CD,eAAoC,IAAIC,EACxCD,WAAgC,IAAIC,EACpCD,WAAgB,GAChBA,cAAyC,IAAIE,EAC7CF,gBAA2C,IAAIE,EAC/CF,cAAmC,IAAIC,EACvCD,oBAAyB,GACzBA,eAAoB,GACpBA,cAAmB,EACnBA,cAAmB,EACnBA,cAAmB,EACnBA,cAAmB,EACnBA,cAAmB,EACnBA,aAAkB,EAClBA,cAAmB,EACnBA,YAAiB,GACjBA,iBAAsB,GACtBA,iBAAsB,GC5BbS,EAAb,WACIT,YAAiB,EACjBA,eAAoB,GACpBA,oBAAyB,ICDhBU,EAAb,WACIV,oBAAsC,ICA7BW,EAAb,WACIX,eAAoB,GACpBA,aAAkB,GAClBA,cAA8B,GAC9BA,kBAAwC,IAAIU,GCJnCE,EAAb,WACEZ,YAAiB,GACjBA,aAAkB,GAClBA,eAAoB,EACpBA,cAAgC,GAChCA,kBAAqC,ICN1Ba,EAAb,WACIb,YAAiB,GACjBA,iBAAsB,GACtBA,gBAAgC,ICDvBc,EAAb,WACId,yBAAsB,IAAIW,EAC1BX,6BAA0B,IAAIY,EAC9BZ,6BAA0B,IAAIa,GCDrBE,EAAb,WACIf,aAAkB,EAClBA,UAAe,EACfA,cAAmB,EACnBA,mBAAwB,EACxBA,sBAA2B,EAC3BA,sBAA2B,EAC3BA,YAAiB,GACjBA,iBAAsB,GACtBA,YAAoB,IAAID,EACxBC,YAAiB,EACjBA,WAAgB,EAChBA,YAAiB,GACjBA,YAAiB,GACjBA,aAAkB,GAClBA,eAAoB,EACpBA,SAAc,IAAIS,EAClBT,kBAAyC,IAAIQ,EAC7CR,gBAAqB,EACrBA,qBAA0B,EAC1BA,wBAA6B,EAC7BA,wBAA6B,EAC7BA,gBAAiC,GACjCA,qBAAsC,IAAIc,GCqD9C,SAASE,EAASC,YAAAA,IAAAA,EAAc,IAE9B,IADA,IAAIC,EAAO,EACFC,EAAI,EAAGA,EAAIF,EAAIG,OAAQD,IAE5BD,GAAQA,GAAQ,GAAKA,EADRD,EAAII,WAAWF,GAGhC,OAAOG,KAAKC,IAAIL,GAAMM,WCtFxB,IAAMC,EAAsC,CAC1CC,GAAM,WACNC,MAAS,SACTC,SAAY,CAsBV,CACEF,GAAM,YACNC,MAAS,gCACTC,SAAY,GACZC,uCACAC,OAAU,iBACVC,YAAe,gCACfC,MAAS,CACP,CACErC,SAAY,uCACZsC,SAAY,8DACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,kBACRC,GAAM,MAERC,KAAQ,4CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAIhBnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,YACNC,MAAS,gCACTC,SAAY,GACZC,uCACAC,OAAU,iBACVC,YAAe,gCACfC,MAAS,CACP,CACErC,SAAY,uCACZsC,SAAY,8DACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,gBACRC,GAAM,MAERC,KAAQ,4CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAIhBnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,YACNC,MAAS,sBACTC,SAAY,GACZC,6BACAC,OAAU,iBACVC,YAAe,sBACfC,MAAS,CACP,CACErC,SAAY,uCACZsC,SAAY,8DACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,mBACRC,GAAM,MAERC,KAAQ,4CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAIhBnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,YACNC,MAAS,gBACTC,SAAY,GACZC,uBACAC,OAAU,iBACVC,YAAe,gBACfC,MAAS,CAAC,CACRrC,SAAY,uCACZsC,SAAY,8DACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,mBACRC,GAAM,MAERC,KAAQ,4CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAGdnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,YAIhBxB,gBACAC,OAAU,gBACVC,YAAe,SACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WC7WRI,EAAwB,CAC5B/B,GAAM,WACNC,MAAS,OACTC,SAAY,CACV,CACEF,GAAM,YACNC,MAAS,yCACTC,SAAY,GACZC,gDACAC,OAAU,iBACVC,YAAe,yCACfC,MAAS,CACP,CACErC,SAAY,uCACZsC,SAAY,iEACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,mBACRC,GAAM,MAERC,KAAQ,+CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAIhBnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,YACNC,MAAS,iDACTC,SAAY,GACZC,wDACAC,OAAU,iBACVC,YAAe,iDACfC,MAAS,CACP,CACErC,SAAY,uCACZsC,SAAY,iEACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,kBACRC,GAAM,MAERC,KAAQ,+CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAIhBnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,YACNC,MAAS,gBACTC,SAAY,GACZC,uBACAC,OAAU,iBACVC,YAAe,gBACfC,MAAS,CAAC,CACRrC,SAAY,uCACZsC,SAAY,iEACZC,UAAa,MACbC,WAAc,iBACdC,aAAgB,YAChBC,KAAQ,CACNA,KAAQ,kBACRC,GAAM,MAERC,KAAQ,+CACRC,YAAe,oBACfC,YAAe,CACbC,EAAK,cACLC,EAAK,eAEPC,cAAiB,IAAIpD,KAAK,4BAC1BqD,aAAgB,CACdvD,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,GAEbC,OAAU,CACR,CACE5D,OAAU,YACVC,MAAS,IAAIC,KAAK,4BAClBC,QAAW,CACTqD,eAAkB,GAClBC,UAAa,GACbC,QAAW,GACXzD,MAAS,IAAIC,KAAK,6BAEpBE,YAAe,YACfC,SAAY,IACZC,MAAS,mBACTC,WAAc,UACdC,UAAa,CACX,6BAEFmD,SAAW,IAGfE,OAAU,CACRC,UAAa,KACbC,OAAU,wCAGdnB,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,YAIhBxB,cACAC,OAAU,gBACVC,YAAe,OACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGRK,EAAyB,CAC7BhC,GAAM,WACNC,MAAS,QACTC,SAAY,CACV,CACEF,GAAM,aACNC,MAAS,eACTC,SAAY,GACZC,sBACAC,OAAU,kBACVC,YAAe,eACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,aACNC,MAAS,uBACTC,SAAY,GACZC,8BACAC,OAAU,kBACVC,YAAe,uBACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,YAIhBxB,eACAC,OAAU,gBACVC,YAAe,QACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGRM,EAA2B,CAC/BjC,GAAM,WACNC,MAAS,UACTC,SAAY,CACV,CACEF,GAAM,cACNC,MAAS,gDACTC,SAAY,GACZC,uDACAC,OAAU,mBACVC,YAAe,gDACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,cACNC,MAAS,yCACTC,SAAY,GACZC,gDACAC,OAAU,mBACVC,YAAe,yCACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAGd,CACE3B,GAAM,cACNC,MAAS,2CACTC,SAAY,GACZC,kDACAC,OAAU,mBACVC,YAAe,2CACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,YAIhBxB,iBACAC,OAAU,gBACVC,YAAe,UACfC,MAAS,GACTE,UAAa,CAAC,OACdG,KAAQ,CACNA,KAAQ,GACRC,GAAM,MAERgB,WAAa,EACbC,YAAe,EACfC,YAAe,EACfL,OAAU,CACRC,UAAa,EACbC,OAAU,WAIRO,EAAqD,CACzDC,oBAAuB,EACvBC,SAAY,eACZC,QAAW,SACXjC,OAAU,SACVuB,OAAU,yBACVW,KAAQ,CACNlC,OAAU,MACVuB,OAAU,YAEZY,WAAc,CACZnC,OAAU,OACVuB,OAAU,2BAEZa,MAAS,GACTf,OAAU,CACRC,UAAa,EACbC,OAAU,UAEZc,SAAY,ICnbDC,EAAoC,CAC/C,CACE9E,OAAQ,YACRC,MAAO,IAAIC,KACXC,QAAS,IAAIU,EACbT,YAAa,YACbC,SAAU,IACVC,MAAO,mBACPC,WAAY,UACZC,UAAW,CAAC,gBACZmD,SAAS,GAEX,CACE3D,OAAQ,UACRC,MAAO,IAAIC,KACXC,QAAS,IAAIU,EACbT,YAAa,UACbC,SAAU,IACVC,MAAO,uBACPC,WAAY,UACZC,UAAW,CAAC,gBACZmD,SAAS,GAEX,CACE3D,OAAQ,WACRC,MAAO,IAAIC,KACXC,QAAS,IAAIU,EACbT,YAAa,WACbC,SAAU,IACVC,MAAO,qBACPC,WAAY,UACZC,UAAW,CAAC,gBACZmD,SAAS,ICCb,SAASoB,EAAezC,EAAwB0C,GAC9C,QAA2BC,EAA3BC,EAAAC,EAAmB7C,KAAQ2C,EAAAC,KAAAE,MAAE,CAAA,IAAlBC,EAAIJ,EAAAK,MACbD,EAAK7C,UAAY6C,EAAK7C,OAASwC,EAC/BK,EAAKjD,GAAKmD,UAAUF,EAAKjD,GAAK4C,GAC9BD,EAAeM,EAAK/C,SAAU0C,ICJlC,SAASD,EAAezC,EAAwB0C,GAC9C,QAA2BC,EAA3BC,EAAAC,EAAmB7C,KAAQ2C,EAAAC,KAAAE,MAAE,CAAA,IAAlBC,EAAIJ,EAAAK,MACbD,EAAK7C,UAAY6C,EAAK7C,OAASwC,EAC/BK,EAAKjD,GAAKmD,UAAUF,EAAKjD,GAAK4C,GAC9BD,EAAeM,EAAK/C,SAAU0C,mCC3BI,SAAHQ,OAAMC,EAAQD,EAARC,SAAUC,EAAUF,EAAVE,WAE7CjB,EAFgEe,EAAPG,QAE/BC,gCAAgCC,SAFYL,EAAJM,KAEMJ,WAAWjB,SAAW,QAAU,UAE7F,WAAXA,IAAsBA,EAAWiB,EAAWK,cAA4B,QAAZ,WAEhE,QAAgDC,EAAhDC,EAAAd,EAA2BM,EAASS,gBAAYF,EAAAC,KAAAb,MAAE,CAAA,IAAvCe,EAAYH,EAAAV,MACrBc,EAA6GD,EAAaE,gBAA3EC,EAAcF,EAArDG,oBAAuBC,aAAgBF,eAA+CG,EAAQL,EAAnCM,wBAA2BD,SAC9F,IAAOA,EAAS3E,OAAQ,MAAM6E,4DAC9B,IAAMC,EAAUH,EAASI,MAAK,SAACC,GAAM,OAA4B,IAAvBA,EAAEjD,OAAOC,aACnD,IAAO8C,EAAS,MAAMD,4DAEtB,GADAR,EAAaY,OAASxB,OAAOqB,EAAQI,cAAcD,SAC5CT,EAAexE,OAAQ,MAAM6E,kEACpCR,EAAaK,aAAaS,YAAcX,EAAe,GAAGW,YAE1D,IAAMC,EAAe,CACnBC,MAAO,CAAEF,YAAad,EAAaY,OAAQA,OAAQZ,EAAaK,aAAaS,aAC7EG,QAAS,CAAEH,YAAad,EAAaK,aAAaS,YAAaF,OAAQZ,EAAaY,SAEtFZ,EAAaK,aAAaS,YAAcC,EAAQzC,GAASwC,YACzDd,EAAaY,OAASG,EAAQzC,GAASsC,uCC/BN,SAACM,GAClC,QAA+BrB,EAA/BC,EAAAd,EAAmBkC,EAAQC,QAAItB,EAAAC,KAAAb,MAAE,CAAA,IAAAmC,EAAAC,EAAtBC,EAAIzB,EAAAV,MACLoC,SAAOD,UAAIF,EAAJE,EAAME,2BAAiBJ,EAAvBA,EAAyBK,kBAAzBL,EAAoCM,OAAQ,GACnDC,EAASvC,aAAOkC,UAAID,EAAJC,EAAME,2BAAiBH,EAAvBA,EAAyBO,4BAAzBP,EAA8CT,SAAW,EAC/EU,EAAKO,MAAwB,gBAAhBN,EAAKO,OAA2BH,EAAS,+CCJH,SAACI,EAAUC,EAASC,EAAeC,GAE5F,GAAIH,GAAYA,EAAShC,cAAgBoC,MAAMC,QAAQL,EAAShC,cAE9D,IAF6E,IAE7BF,EAF6BwC,aAE3B,IAAvCrC,EAAYH,EAAAV,MACrBa,EAAasC,cAAgB,EAC7B,IAAMC,EAAML,EAAoBM,KAAK9B,MAAK,SAAAC,GAAC,OAAIA,EAAE8B,iBAAmBzC,EAAaK,aAAaoC,kBAC1FF,IAAKvC,EAAasC,cAAgBC,EAAIG,WAH5C5C,EAAAd,EAA2B+C,EAAShC,gBAAYF,EAAAC,KAAAb,MAAAoD,IAQlD,GAAIL,GAAWA,EAAQb,MAAQgB,MAAMC,QAAQJ,EAAQb,MAEnD,IAF0D,IAE3BrC,EAF2B6D,aAEzB,IAAtBrB,EAAIxC,EAAAK,MACbmC,EAAKsB,eAAiB,EACtB,IAAMC,EAAUX,EAAoBY,cAAcpC,MAAK,SAAAC,GAAC,OAAIA,EAAEtE,SAAWiF,EAAKjF,UAC1EwG,IAASvB,EAAKsB,eAAiBC,EAAQH,WAH7C3D,EAAAC,EAAmBgD,EAAQb,QAAIrC,EAAAC,KAAAE,MAAA0D,IAQjC,GAAIV,GAAiBE,MAAMC,QAAQH,GAEjC,IAFiD,IAERc,EAFQC,aAEN,IAAhCC,EAAaF,EAAA5D,MAEtB8D,EAAcC,YAAc,EAE5B,IAAMC,EAAQjB,EAAoBkB,iBAAiB1C,MAAK,SAAAC,GAAC,OAAIA,EAAE0C,aAAeJ,EAAcI,YACvF1C,EAAEtD,iBAAmB4F,EAAcK,SAASjG,gBAC5CsD,EAAEtE,SAAW4G,EAAcjB,WAE5BmB,IACEA,EAAMT,SAAWO,EAAcM,UACjCN,EAAcC,YAAcD,EAAcM,SAC1CJ,EAAMT,SAAWS,EAAMT,SAAWO,EAAcM,WAEhDN,EAAcC,YAAcC,EAAMT,SAClCS,EAAMT,SAAW,KAdvBc,EAAAxE,EAA4BiD,KAAac,EAAAS,KAAAvE,MAAA+D,yDCxBuB,SAACjB,EAAUC,EAASC,EAAeC,GAErG,GAAIH,GAAYA,EAAShC,cAAgBoC,MAAMC,QAAQL,EAAShC,cAE9D,IAF6E,IAE7BF,EAF6BwC,aAE3B,IAAvCrC,EAAYH,EAAAV,MACrBa,EAAasC,cAAgB,EAC7B,IAAMC,EAAML,EAAoBM,KAAK9B,MAAK,SAAAC,GAAC,OAAIA,EAAE8B,iBAAmBzC,EAAaK,aAAaoC,kBAC1FF,IAAKvC,EAAasC,cAAgBC,EAAIG,WAH5C5C,EAAAd,EAA2B+C,EAAShC,gBAAYF,EAAAC,KAAAb,MAAAoD,IAQlD,GAAIL,GAAWA,EAAQb,MAAQgB,MAAMC,QAAQJ,EAAQb,MAEnD,IAF0D,IAE3BrC,EAF2B6D,aAEzB,IAAtBrB,EAAIxC,EAAAK,MACbmC,EAAKsB,eAAiB,EACtB,IAAMC,EAAUX,EAAoBY,cAAcpC,MAAK,SAAAC,GAAC,OAAIA,EAAEtE,SAAWiF,EAAKjF,UAC1EwG,IAASvB,EAAKsB,eAAiBC,EAAQH,WAH7C3D,EAAAC,EAAmBgD,EAAQb,QAAIrC,EAAAC,KAAAE,MAAA0D,IAQjC,GAAIV,GAAiBE,MAAMC,QAAQH,GAEjC,IAFiD,IAERc,EAFQC,aAEN,IAAhCC,EAAaF,EAAA5D,MAEtB8D,EAAcC,YAAc,EAE5B,IAAMC,EAAQjB,EAAoBkB,iBAAiB1C,MAAK,SAAAC,GAAC,OAAIA,EAAE0C,aAAeJ,EAAcI,YACvF1C,EAAEtD,iBAAmB4F,EAAcK,SAASjG,gBAC5CsD,EAAEtE,SAAW4G,EAAcjB,SAC3BrB,EAAE8C,cAAgBR,EAAcQ,eAEjCN,IACEA,EAAMT,SAAWO,EAAcM,UACjCN,EAAcC,YAAcD,EAAcM,SAC1CJ,EAAMT,SAAWS,EAAMT,SAAWO,EAAcM,WAEhDN,EAAcC,YAAcC,EAAMT,SAClCS,EAAMT,SAAW,KAfvBc,EAAAxE,EAA4BiD,KAAac,EAAAS,KAAAvE,MAAA+D,oCCVP,SAAH3D,OAAMC,EAAQD,EAARC,SAAUoE,EAAQrE,EAARqE,SAAgBnE,EAAUF,EAAVE,WAC7DjB,EADgFe,EAAPG,QAC/CC,gCAAgCC,SADCL,EAAJM,KACiBJ,WAAWjB,SAAW,QAAU,UAC5F,YAAZA,IAEFA,EADsBiB,EAAWK,cACM,QAAZ,WAE7B,QAA8BC,EAA9BC,EAAAd,EAAsB0E,KAAQ7D,EAAAC,KAAAb,MAC5B,IAD8B,IACuCH,EADrDuD,aACuD,IAA5DrC,EAAYlB,EAAAK,MACfwE,EAAiBrE,EAASS,aAAaW,MAAK,SAAAC,GAAC,OAAIA,EAAEN,aAAaoC,iBAAmBzC,EAAaK,aAAaoC,kBACnH,GAAIkB,EAAgB,CAClB,IAAAC,EAA6GD,EAAezD,gBAA7EC,EAAcyD,EAArDxD,oBAAuBC,aAAgBF,eAA+CG,EAAQsD,EAAnCrD,wBAA2BD,SACxFS,EAAe,CACnBC,MAAO,CAAEF,YAAaR,EAAS,GAAGO,cAAcD,OAAQA,OAAQT,EAAe,GAAGW,aAClFG,QAAS,CAAEH,YAAaX,EAAe,GAAGW,YAAaF,OAAQN,EAAS,GAAGO,cAAcD,SAE3FZ,EAAaK,aAAaS,YAAcC,EAAQzC,GAASwC,YACzDd,EAAaY,OAASG,EAAQzC,GAASsC,YAEvCiD,QAAQC,0DAA0D9D,EAAaK,aAAaoC,wCAXhG1D,EAAAC,EADgBa,EAAAV,MACmB4E,sBAAsBhE,gBAAYjB,EAAAC,KAAAE,MAAAoD,4CCLnC2B,EAAgFC,EAAYC,GAOhI,MANkE,CAChEC,IAAO,WAAA,OAAMH,EAAuCI,MAAM1D,MAAK,SAACC,GAAC,OAAKA,EAAErE,YAAY+H,gBAAkBH,EAAaG,eAAwC,IAAvB1D,EAAEjD,OAAOC,cAC7I2G,MAAO,WAAA,OAAMN,EAAuCI,MAAM1D,MAAK,SAACC,GAAC,OAAKA,EAAErE,YAAY+H,gBAAkBH,EAAaG,eAAwC,IAAvB1D,EAAEjD,OAAOC,cAC7I4G,IAAO,WAAA,OAAMP,EAAuCI,MAAM1D,MAAK,SAACC,GAAC,OAAKA,EAAEtE,OAAOgI,gBAAkBH,EAAaG,eAAwC,IAAvB1D,EAAEjD,OAAOC,eAGjHsG,EAAK1F,KAAKlC,gDCDO,SAACmI,GAC3C,OAAOA,EAAQT,sBAAsBhE,aAAa0E,QAAO,SAACC,EAA0B1E,GAClF,GAAI,CAAC,aAAc,cAAe,eAAgB,aAAaN,SAASM,EAAa2E,sBAAsBrI,YAAYwF,QACrH,IAD8H,IAe7H8C,EAduC/E,EADsFwC,aACpF,IAA/BwC,EAAIhF,EAAAV,MACP2F,EAAUJ,EAAIhE,MAAK,SAAAC,GAAC,OAAIA,EAAEoE,cAAgBF,EAAKE,eACrD,OAAID,GACFA,EAAQE,mBAAqBH,EAAKnC,UAAQuC,EACnCP,KACRO,KAAAC,OAEIR,GAEH,CACEK,YAAaF,EAAKE,YAClBC,kBAAmBH,EAAKnC,cAX9B5C,EAAAd,EAAmBgB,EAAamF,YAAQtF,EAAAC,KAAAb,MAAA,GAAA2F,EAAAvC,WAAAuC,EAAAK,EAgB1C,OAAOP,IACN,0CC3CgD,SAACF,EAASd,GAM3D,IALA,IAKgC7D,EAL5B2C,EAAmB,GACnBM,EAAqC,GACrCsC,EAAmC,GACnChC,EAA2C,GACEf,aACf,IAAvBgD,EAASxF,EAAAV,MAEZkG,EAAUhC,aAAemB,EAAQnB,aACjCgC,EAAUtB,sBAAsBhE,aAAeyE,EAAQT,sBAAsBhE,cAGjF,IAFC,IAEsEjB,EAFtE6D,aAEwE,IAA9D3C,EAAYlB,EAAAK,MACnB,GAAI,CAAC,aAAc,cAAe,eAAgB,aAAaO,SAASM,EAAa2E,sBAAsBrI,YAAYwF,QAAS,CAE5H,IAAMS,EAAMC,EAAK9B,MAAK,SAAAC,GAAC,OAAIA,EAAE8B,iBAAmBzC,EAAaK,aAAaoC,kBACtEF,GACAA,EAAIG,UAAY1C,EAAa0C,SAC7BH,EAAI+C,YAActF,EAAasF,YAC5B9C,EAAK+C,KAAK,CACb9C,eAAgBzC,EAAaK,aAAaoC,eAC1CC,SAAU1C,EAAa0C,SACvB4C,WAAYtF,EAAasF,aAG7B,IAFG,IAE+CvC,EAF/CC,aAEiD,IAAzCwC,EAAEzC,EAAA5D,MACT,GAA4B,IAAxBqG,EAAG9H,OAAOC,UAAiB,CAE3B,IAAM8H,EAAQ3C,EAAcpC,MAAK,SAACC,GAAM,OAAKA,EAAEtE,SAAWmJ,EAAGnJ,UACzDoJ,EAAOA,EAAM/C,UAAY8C,EAAG9C,SAC3BI,EAAcyC,KAAK,CACpBlJ,OAAQmJ,EAAGnJ,OACXqG,SAAU8C,EAAG9C,WAGjB,IAAMgD,EAAmBtC,EAAiB1C,MAAK,SAAAC,GAAC,OAAIA,EAAE0C,aAAegC,EAAUhC,YACxE1C,EAAEtE,SAAWmJ,EAAGnJ,QAChBsE,EAAEtD,iBAAmBgI,EAAUM,kBAAkBrC,SAAS,GAAGjG,kBAEhEqI,EAAkBA,EAAiBhD,UAAY8C,EAAG9C,SACjDU,EAAiBmC,KAAK,CACvBlC,WAAYgC,EAAUhC,WACtBhG,eAAgBgI,EAAUM,kBAAkBrC,SAAS,GAAGjG,eACxDhB,OAAQmJ,EAAGnJ,OACXqG,SAAU8C,EAAG9C,aAnBzBc,EAAAxE,EAAiBgB,EAAa4F,wBAAoB7C,EAAAS,KAAAvE,MAAA+D,IAwBlD,IAFC,IAEgD6C,EAFhDC,aAEkD,IAAxCC,EAAEF,EAAA1G,MACT,GAA4B,IAAxB4G,EAAGrI,OAAOC,UAAiB,CAC3B,IAAM8H,EAAQL,EAAa1E,MAAK,SAAAC,GAAC,OAAIA,EAAEtE,SAAW0J,EAAG1J,UACjDoJ,EAAOA,EAAM/C,UAAYqD,EAAGrD,SAC3B0C,EAAaG,KAAK,CACnBlJ,OAAQ0J,EAAG1J,OACXqG,SAAUqD,EAAGrD,aANzBsD,EAAAhH,EAAiBgB,EAAaiG,uBAAmBJ,EAAAG,KAAA/G,MAAA6G,MArCzD/G,EAAAC,EAA2BqG,EAAUtB,sBAAsBhE,gBAAYjB,EAAAC,KAAAE,MAAA0D,KAN3E7C,EAAAd,EAAwB0E,KAAQ7D,EAAAC,KAAAb,MAAAoD,IAwDhC,MAAO,CAAEG,KAAAA,EAAMM,cAAAA,EAAesC,aAAAA,EAAchC,iBAAAA,EAAkB8C,gBAzDhB,mDCLY,SAAC1B,EAASd,GAMpE,IALA,IAKgC7D,EAL5B2C,EAAmB,GACnBM,EAAqC,GACrCsC,EAAmC,GACnChC,EAA2C,GAC3C8C,EAAyC,GAAG7D,aACd,IAAvBgD,EAASxF,EAAAV,MAEZkG,EAAUhC,aAAemB,EAAQnB,aACjCgC,EAAUtB,sBAAsBhE,aAAeyE,EAAQT,sBAAsBhE,cAGjF,IAFC,IAEsEjB,EAFtE6D,aAEwE,IAA9D3C,EAAYlB,EAAAK,MACnB,GAAI,CAAC,aAAc,cAAe,eAAgB,YAAa,+BAA+BO,SAASM,EAAa2E,sBAAsBrI,YAAYwF,QAAS,CAE3J,IAAMS,EAAMC,EAAK9B,MAAK,SAAAC,GAAC,OAAIA,EAAE8B,iBAAmBzC,EAAaK,aAAaoC,kBACtEF,GACAA,EAAIG,UAAY1C,EAAa0C,SAC7BH,EAAI+C,YAActF,EAAasF,YAC5B9C,EAAK+C,KAAK,CACb9C,eAAgBzC,EAAaK,aAAaoC,eAC1CC,SAAU1C,EAAa0C,SACvB4C,WAAYtF,EAAasF,aAG7B,IAFG,IAE+CvC,EAF/CC,aAEiD,IAAzCwC,EAAEzC,EAAA5D,MAET,GAA4B,IAAxBqG,EAAG9H,OAAOC,mBAEd,IAAM8H,EAAQ3C,EAAcpC,MAAK,SAACC,GAAM,OAAKA,EAAEtE,SAAWmJ,EAAGnJ,UAO7D,GANIoJ,EAAOA,EAAM/C,UAAY8C,EAAG9C,SAC3BI,EAAcyC,KAAK,CACpBlJ,OAAQmJ,EAAGnJ,OACXqG,SAAU8C,EAAG9C,YAGZ8C,EAAG/B,YAAa,MAAMjD,qCAG3B,GAA8B,uCAA1BgF,EAAGW,OAAO7J,YAAsD,CAChE,IAAMoJ,EAAmBtC,EAAiB1C,MAAK,SAAAC,GAAC,OAAIA,EAAE0C,aAAegC,EAAUhC,YACxE1C,EAAE8C,cAAgB+B,EAAG/B,aACrB9C,EAAEtD,iBAAmBgI,EAAUM,kBAAkBrC,SAAS,GAAGjG,kBAEhEqI,EAAkBA,EAAiBhD,UAAY8C,EAAG9C,SACjDU,EAAiBmC,KAAK,CACvBlC,WAAYgC,EAAUhC,WACtBhG,eAAgBgI,EAAUM,kBAAkBrC,SAAS,GAAGjG,eACxDhB,OAAQmJ,EAAGnJ,OACXoH,YAAa+B,EAAG/B,YAChBf,SAAU8C,EAAG9C,WAMrB,GAA8B,uCAA1B8C,EAAGW,OAAO7J,YAAsD,CAChE,IAAM8J,EAAkBF,EAAgBxF,MAAK,SAAAC,GAAC,OAAIA,EAAE0C,aAAegC,EAAUhC,YACtE1C,EAAE8C,cAAgB+B,EAAG/B,eAExB2C,EAAiBA,EAAgB1D,UAAY8C,EAAG9C,SAC/CwD,EAAgBX,KAAK,CACtBlC,WAAYgC,EAAUhC,WACtBgD,QAAShB,EAAUM,kBAAkBU,QAAQhK,OAC7CoH,YAAa+B,EAAG/B,YAChBpH,OAAQmJ,EAAGnJ,OACXqG,SAAU8C,EAAG9C,aAzCzBc,EAAAxE,EAAiBgB,EAAa4F,wBAAoB7C,EAAAS,KAAAvE,MAAA+D,IA+ClD,IAFC,IAEgD6C,EAFhDC,aAEkD,IAAxCC,EAAEF,EAAA1G,MACT,GAA4B,IAAxB4G,EAAGrI,OAAOC,UAAiB,CAC3B,IAAM8H,EAAQL,EAAa1E,MAAK,SAAAC,GAAC,OAAIA,EAAEtE,SAAW0J,EAAG1J,UACjDoJ,EAAOA,EAAM/C,UAAYqD,EAAGrD,SAC3B0C,EAAaG,KAAK,CACnBlJ,OAAQ0J,EAAG1J,OACXqG,SAAUqD,EAAGrD,aANzBsD,EAAAhH,EAAiBgB,EAAaiG,uBAAmBJ,EAAAG,KAAA/G,MAAA6G,MA5DzD/G,EAAAC,EAA2BqG,EAAUtB,sBAAsBhE,gBAAYjB,EAAAC,KAAAE,MAAA0D,KAN3E7C,EAAAd,EAAwB0E,KAAQ7D,EAAAC,KAAAb,MAAAoD,IA+EhC,MAAO,CAAEG,KAAAA,EAAMM,cAAAA,EAAesC,aAAAA,EAAchC,iBAAAA,EAAkB8C,gBAAAA,mCCtF5B,CACpC,CAAE7J,OAAQ,gBAAiBC,YAAa,wBACxC,CAAED,OAAQ,gBAAiBC,YAAa,uBACxC,CAAED,OAAQ,gBAAiBC,YAAa,uBACxC,CAAED,OAAQ,gBAAiBC,YAAa,uBACxC,CAAED,OAAQ,gBAAiBC,YAAa,sBACxC,CAAED,OAAQ,gBAAiBC,YAAa,uBACxC,CAAED,OAAQ,gBAAiBC,YAAa,oDCKa,CACrD,CAAEgK,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,GAAIC,QAAS,UAC1H,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,GAAIC,QAAS,UAC1H,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,SACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WAEzH,CAAEJ,SAAU,GAAIC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,IAChH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,WACzH,CAAEJ,SAAU,YAAaC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,SACzH,CAAEJ,SAAU,GAAIC,eAAgB,gBAAiBC,eAAgB,gBAAiBC,iBAAkB,EAAGC,QAAS,gDAGrC,CAC3E,CAAEJ,SAAU,MAAOC,eAAgB,iBACnC,CAAED,SAAU,MAAOC,eAAgB,iBACnC,CAAED,SAAU,MAAOC,eAAgB,4DAEuC,CAC1E,CAAED,SAAU,YAAaC,eAAgB,iBACzC,CAAED,SAAU,YAAaC,eAAgB,iBACzC,CAAED,SAAU,YAAaC,eAAgB,iBACzC,CAAED,SAAU,YAAaC,eAAgB,yCCvCb,SAACI,EAAcC,GACzC,IAAMC,EAAMD,EAAS,IAAI7M,KAAK6M,GAAU,IAAI7M,KAC5C8M,EAAIC,SAAS,EAAG,EAAG,EAAG,GACtB,IAAMC,EAAiB,IAAIhN,KAAK4M,GAEhC,OADAI,EAAeD,SAAS,EAAG,EAAG,EAAG,GAC1BC,EAAeC,YAAcH,EAAIG,2ChCqBb7H,EAAgB8H,YAAhB9H,IAAAA,EAAa,YAAG8H,IAAAA,EAAkB,IAAIpM,GACnE,IACI,IAAIqM,EAASC,gBAAgBhI,GAI7B,OAkCN,SAAuBA,EAAKiI,kBAALjI,IAAAA,EAAQ,GAAC,IAGCkI,EAHDhI,WAAA+H,EAA6H,IAAIvM,EAAQuM,EAAAE,EAAAjI,EAAtIkI,WAAAA,WAAUD,EAAG,GAAEA,EAAAE,EAAAnI,EAAEoI,mBAAAA,WAAkBD,EAAG,OAAMA,EAAAE,EAAArI,EAAEsI,UAAAA,WAASD,GAAQA,EAAAE,EAAAvI,EAAEwI,QAAAA,WAAOD,EAAG,EAACA,EAAAE,EAAAzI,EAAE0I,YAAAA,WAAWD,EAAG,GAAEA,EAAAE,EAAA3I,EAAE4I,SAAAA,WAAQD,EAAG,GAAEA,EACxIE,EA9BR,SAAkCH,SAG9B,YAH8BA,IAAAA,EAAsB,MAEpDA,SAAWI,EAAGJ,UAAAI,EAAapM,aACO,MAAfgM,EAAqB,OAAO,EAC/C,IAHkB,sBAGJK,KAAKL,GAAc,MAAMvH,iBAAiBuH,oCACxD,OAAO,EAyByBM,CAAyBN,GACrDO,EAAaT,EAAQ9L,WAAaqD,OAAOyI,GAAW,EAC1D,GAAKK,EAEH,OAAO,IAAIK,KAAKC,aAAaT,EADL,CAAEU,MAAO,WAAYR,SAAUA,IACIS,OAAOtJ,cAAMiI,EAACjI,OAAOD,WAAPkI,EAAesB,QAAQL,KAAYvM,WAE9G,IAAI6M,GAAgB,IAAIL,KAAKC,cAAeE,OAAOtJ,cAAMyJ,EAACzJ,OAAOD,WAAP0J,EAAeF,QAAQL,KAAYvM,WAE7F,OAAK4L,EAAuBiB,QACvBrB,GAAgD,SAAlCE,EAAmB1L,aAAyB6M,EAAmBrB,MAAcqB,GAC3FrB,GAAgD,UAAlCE,EAAmB1L,aAA0B6M,EAAmBA,MAAiBrB,OAC7FqB,GA/CME,CADT5B,EA8BN,SAAuB/H,GAIrB,gBAJqBA,IAAAA,EAAa,GAC9B4J,SAAS5J,KAAQA,EAAQ,GAC1B6J,MAAM7J,KAAQA,EAAQ,GACtBA,MAAAA,IAAuCA,EAAQ,GAC3CA,EAlCM8J,CADT/B,EAeN,SAAqB/H,SAInB,gBAJmBA,IAAAA,EAAa,GAGhCA,SAAK+J,EADL/J,EAKF,SAA+BA,GAC7B,IAG6BgK,EAG7B,gBAP6BhK,IAAAA,EAAa,IAIlB,MAHCA,EAAMpD,WAAWqN,MAAM,IAAIC,UAAU3I,MAAK,SAAC4I,GAClE,YADkEA,IAAAA,EAAU,IACnE,MAANA,GAAmB,MAANA,EAAa,OAAOA,OAGpCnK,SAAKgK,EAAGhK,WAAKgK,EAALA,EAAOpN,oBAAUoN,EAAjBA,EAAmBI,QAAQ,KAAM,cAAIJ,EAArCA,EAAuCI,QAAQ,MAAO,aAAtDJ,EAA4DI,QAAQ,MAAO,MAE9EpK,EAZCqK,CAAsBrK,WACtB+J,EAAOnN,WAAW0N,WAAW,IAAK,IAAIA,WAFpB,sBAEkD,IACrEC,WAAWvK,GAnBLwK,CAAYzC,IAEUD,GAEjC,MAAOnD,GACL,MAAMA,mCiClCiC,CACzC,CACI7H,GAAM,EACNC,MAAS,uBACTC,SAAY,GACZyN,SAAW,EACXxN,OAAU,uBACVC,OAAU,OACVC,YAAe,wBACfC,MAAS,GACTE,UAAa,CACT,OAEJG,KAAQ,CACJgN,SAAW,EACXhN,KAAQ,GACRC,GAAM,MAEVgB,WAAa,EACbH,OAAU,CACNkM,SAAW,EACXjM,UAAa,EACbC,OAAU,UAEdE,YAAe,EACfC,YAAe,GAEnB,CACI9B,GAAM,EACNC,MAAS,iBACTC,SAAY,GACZyN,SAAW,EACXxN,OAAU,iBACVC,OAAU,OACVC,YAAe,iBACfC,MAAS,GACTE,UAAa,CACT,OAEJG,KAAQ,CACJgN,SAAW,EACXhN,KAAQ,GACRC,GAAM,MAEVgB,WAAa,EACbH,OAAU,CACNkM,SAAW,EACXjM,UAAa,EACbC,OAAU,UAEdE,YAAe,EACfC,YAAe,iCCnDa,WAKlC,IAAM8L,EAAY,IAAI9P,KAChB+P,EAAMD,EAAUE,UAAUhO,WAAWiO,SAAS,EAAG,KACjDC,GAAOJ,EAAUK,WAAa,GAAGnO,WAAWiO,SAAS,EAAG,KAE9D,SADYH,EAAUM,cAAcpO,WACpBkO,EAAMH,+GCqCaM,GAKnC,IAHA,IAG+CvK,EAHnBwK,EAA2CD,EAA3CC,uBAAwBpG,EAAmBmG,EAAnBnG,KAAMlC,EAAaqI,EAAbrI,SACpDuI,EAAyB,GAAEjI,aAG/B,IAD+C,IACavD,EADnDyL,EAAc1K,EAAAV,MAAAwD,aACuC,IAAnD6H,EAAG1L,EAAAK,MAENsL,EAA0BJ,EAAuBK,QAAO,SAAAC,GAAC,OAC7DA,EAAEC,aAAavO,SAAWmO,EAAII,aAAavO,QAC3CsO,EAAEpL,WAAWlD,SAAWkO,EAAehL,WAAWlD,UAGpD,GAAuC,IAAnCoO,EAAwB9O,OAC2H,OAArJkI,QAAQgH,oEAAoEN,EAAelO,iCAAgCmO,EAAII,aAAavO,UAI9I,IAAMoE,EAAUgK,EAAwB,GAAGnK,SAASoK,QAAO,SAAA/J,GAAC,OAAIA,EAAEtE,SAAW4H,EAAK5D,aAAaI,WAC/F,GAAuB,IAAnBA,EAAQ9E,OACgC,OAA1CkI,QAAQgH,qCAIV,IAAMC,WpBzDsBV,GAEhC,IAAQG,EAA+CH,EAA/CG,eAAgB3J,EAA+BwJ,EAA/BxJ,OAAQmK,EAAuBX,EAAvBW,mBAE1B1K,EAsCR,SAAmC+J,SAGAY,EAFzB/G,EAA8BmG,EAA9BnG,KAAMsG,EAAwBH,EAAxBG,eAAgBC,EAAQJ,EAARI,IAC1BS,EAAY,cACXhH,UAAIiH,EAAJjH,EAAM5D,eAAN6K,EAAoBC,SACrBF,QAAYhH,UAAI+G,EAAJ/G,EAAM5D,qBAAN2K,EAAoBG,QAEpC,IAAMC,EAAS,IAAIrQ,EAkBnB,OAjBAqQ,EAAO/O,OAAS4O,EAChBG,EAAOC,UAAY,GACnBD,EAAOE,MAAQ/P,EAASgP,EAAelO,QACvC+O,EAAOR,aAAeJ,EAAII,aAC1BQ,EAAOG,UAAUlP,OAAS,SAC1B+O,EAAOG,UAAU3N,OAAS,oBAC1BwN,EAAOI,MAAMnP,OAAS,SACtB+O,EAAOI,MAAM5N,OAAS,gBACtBwN,EAAOK,MAAQ,OACfL,EAAOrJ,SAAS1F,OAASkO,EAAelO,OACxC+O,EAAOrJ,SAASnE,OAAS2M,EAAegB,UACxCH,EAAOrJ,SAAS2J,aAAenB,EAAeoB,OAAO/N,OACrDwN,EAAOQ,WAAWvP,OAAS,IAC3B+O,EAAOQ,WAAWhO,OAAS,SAC3BwN,EAAOQ,WAAWF,aAAe,KACjCN,EAAO3I,eAAiBlH,EAASgP,EAAelO,QAAU,GAAK4O,EAC/DG,EAAOtK,YAAc0J,EAAI1J,YAClBsK,EA9DcS,CAA0BzB,GAEzC0B,EAAU,IAAIxQ,EAiCpB,OAhCAwQ,EAAQzL,aAAeA,EACvByL,EAAQC,KAAOxB,EAAewB,KAC9BD,EAAQzP,OAASkO,EAAelO,OAChCyP,EAAQxP,YAAciO,EAAegB,UACrCO,EAAQlL,OAASA,EACjBkL,EAAQE,MAAQF,EAAQlL,OAASkL,EAAQpJ,SAAWoJ,EAAQzL,aAAaS,YACzEgL,EAAQH,OAASpB,EAAeoB,OAAO/N,OACvCkO,EAAQG,OAASlB,EAAmBkB,OACpCH,EAAQI,QAAUnB,EAAmBmB,QACrCJ,EAAQK,UAAYpB,EAAmBoB,UACvCL,EAAQM,IAAIC,UAAY,QACxBP,EAAQQ,mBAAqB,KAC7BR,EAAQ5L,gBAAkB,CACxBE,oBAAqB,CACnBmL,UAAWhB,EAAegB,UAC1B7E,QAAS6D,EAAe7D,QACxB6F,SAAUhC,EAAegC,SACzBlM,aAAckK,EAAelK,cAE/BE,wBAAyB,CACvB0L,OAAQlB,EAAmBkB,OAC3BC,QAASnB,EAAmBmB,QAC5BC,UAAWpB,EAAmBoB,UAC9B7L,SAAUyK,EAAmBzK,SAC7BkM,aAAczB,EAAmByB,cAEnCC,wBAAyB,CACvBpQ,OAAQ,IACRC,YAAa,SACboQ,WAAY,KAGTZ,EoBkBea,CAAkB,CAAEpC,eAAAA,EAAgBC,IAAAA,EAAKvG,KAAAA,EAAM8G,mBAAoBN,EAAwB,GAAI7J,OAAQH,EAAQ,GAAGI,cAAcD,SAClJ0J,EAAY/E,KAAKuF,IAnBnB/L,EAAAC,EAAkBuL,EAAelK,aAAaF,kBAAcrB,EAAAC,KAAAE,MAAA0D,KAD9D7C,EAAAd,EAHuEoL,EAA/DwC,sBAGuC/M,EAAAC,KAAAb,MAAAoD,IAuB/C,gBClEmC+H,GACnC,OAAOA,EAAOE,YAAY7F,QAAO,SAACC,EAAgBmI,GAGhD,OADczC,EAAOrI,SAAShC,aAAaW,MAAK,SAAAC,GAAC,OAAIA,EAAEN,aAAa0B,SAAS1F,SAAWwQ,EAAKxM,aAAa0B,SAAS1F,UACjGqI,KAClBQ,OAAWR,GAAKmI,MACf,ID4DIC,CAAqB,CAAExC,YAAAA,EAAavI,SAAAA,sDElEE1C,OAAG0N,EAAS1N,EAAT0N,UAC1CC,EAAiB,IAAIjT,KAD8CsF,EAAd4N,gBAE3D,IAAKtS,EAAYqS,GAAiB,MAAMxM,0DACxC,IAAM0M,EAAgC,GAUtC,GATAH,EAAUG,QAAQC,SAAQ,SAAAxL,GACxB,IAAMyL,EAAc,IAAIrT,KAAK4H,EAAO0L,SAASC,aAC7C,IAAK3S,EAAYyS,GAAc,MAAM5M,0DACrC,IAAM+M,EAAW,IAAIxT,KAAK4H,EAAO0L,SAASG,UAC1C,IAAK7S,EAAY4S,GAAW,MAAM/M,0DAC9BwM,EAAehG,WAAaoG,EAAYpG,WAAagG,EAAehG,WAAauG,EAASvG,WAC5FkG,EAAQ3H,KAAK5D,MAGbuL,EAAQvR,OAAS,EAAG,MAAM6E,0EAA0E0M,EAAQO,KAAI,SAAA9M,GAAC,2BAAyBA,EAAE+M,gCAA+B/M,EAAEC,yBAAwBD,EAAE0M,SAASC,2BAA0B3M,EAAE0M,SAASG,iBAAcG,KAAK,KAC5Q,OAAKT,EAAQvR,OACNuR,EAAQ,GADa,2CCZMjJ,GAClC,IAAM2J,EAAsC,CAC1CzJ,IAAOF,EAAKC,aACZI,MAAOL,EAAKC,aACZK,IAAON,EAAK4J,UAAUC,WAGxB,OAAOF,EAAY3J,EAAK1F,KAAKlC,QAAUuR,EAAY3J,EAAK1F,KAAKlC,QAAU4H,EAAKC,uCCY9C,SAAH7E,OAAgC0O,EAAa1O,EAAb0O,cAAqBvJ,EAAOnF,EAAPmF,QAC1EwJ,EADwE3O,EAAJM,KACtDsO,mBAAmBC,uBAAuBC,UAG9D,GnB/BsC,SAA3BC,EAA4BC,EAAqBL,GAC5D,QAAwBnO,EAAxBC,EAAAd,EAAmBqP,KAAKxO,EAAAC,KAAAb,MAAE,CAAA,IAAfC,EAAIW,EAAAV,MAEc,UAAvBD,EAAK7C,OAAOyF,QAAoBsM,EAAyBlP,EAAK/C,SAAU6R,GAE5E,IAAMM,EAAapP,EAAK/C,SAASuE,MAAK,SAAAC,GAAC,MAAwB,WAApBA,EAAEtE,OAAOyF,UAEpD,GAAKwM,EAAL,CAOA,IALA,IAAMC,EAAcrP,EAAK/C,SAASuO,QAAO,SAAA/J,GAAC,OAAK,CAAC,UAAUjB,SAASiB,EAAEtE,WAE/DmS,EAAY3S,KAAK4S,KAAKT,EADV,IAEZU,EAAiB,GAEdC,EAAQ,EAAGA,EAAQH,EAAWG,IAAS,CAC9C,IAAMC,EALU,GAKAD,EACVE,EAAQD,EANE,GAOVE,EAAaF,SAAcC,MAC3BhQ,KAAY+P,EAAUC,EACtBE,EAAU5H,gBAAgBmH,GAChCS,EAAQ1S,UAAY0S,EAAQ1S,OAASwC,EACrCkQ,EAAQzS,YAAcwS,EACtBC,EAAQ3S,OAAS0S,EACjBC,EAAQ9S,GAAKmD,UAAU2P,EAAQ9S,GAAK4C,GACpCkQ,EAAQ7S,MAAQ4S,EAChBlQ,EAAemQ,EAAQ5S,SAAU0C,GACjC6P,EAAenJ,KAAKwJ,GAGtB7P,EAAK/C,YAAQ+I,OAAOqJ,EAAgBG,KmBAtCN,CAAyBL,EAActP,MAAOuP,GpB7BN,SAA7BgB,EAA8BX,EAAqBL,GAC9D,QAAwBnO,EAAxBC,EAAAd,EAAmBqP,KAAKxO,EAAAC,KAAAb,MAAE,CAAA,IAAfC,EAAIW,EAAAV,MAEc,WAAvBD,EAAK7C,OAAOyF,QAAqBkN,EAA2B9P,EAAK/C,SAAU6R,GAE/E,IAAMiB,EAAa/P,EAAK/C,SAASuE,MAAK,SAAAC,GAAC,MAAwB,WAApBA,EAAEtE,OAAOyF,UAEpD,GAAKmN,EAAL,CAOA,IALA,IAAMV,EAAcrP,EAAK/C,SAASuO,QAAO,SAAA/J,GAAC,OAAK,CAAC,UAAUjB,SAASiB,EAAEtE,WAE/DmS,EAAY3S,KAAK4S,KAAKT,EADV,IAEZU,EAAiB,GAEdC,EAAQ,EAAGA,EAAQH,EAAWG,IAAS,CAC9C,IAAMC,EALU,GAKAD,EACVE,EAAQD,EANE,GAOVE,EAAaF,SAAcC,MAC3BhQ,KAAY+P,EAAUC,EACtBE,EAAU5H,gBAAgB8H,GAChCF,EAAQ1S,UAAY0S,EAAQ1S,OAASwC,EACrCkQ,EAAQzS,YAAcwS,EACtBC,EAAQ3S,OAAS0S,EACjBC,EAAQ9S,GAAKmD,UAAU2P,EAAQ9S,GAAK4C,GACpCkQ,EAAQ7S,MAAQ4S,EAChBlQ,EAAemQ,EAAQ5S,SAAU0C,GACjC6P,EAAenJ,KAAKwJ,GAGtB7P,EAAK/C,YAAQ+I,OAAOqJ,EAAgBG,KoBCtCM,CAA2BjB,EAActP,MAAOuP,GAC5CxJ,EAAS,CACX,IAAM0K,EAAuB1K,EAAQmB,kBAAkBwJ,eAAe1B,KAAI,SAAA9M,GAAC,OAAIA,EAAEiK,aAAavO,UAExF+S,EAAU,CAAC,aAAc,cAAe,eAAgB,YAAa,+BAC3D5K,EAAQT,sBAAsBhE,aAAasP,MAAK,SAAA9M,GAAG,MAChC,YAAjCA,EAAIlC,aAAaiP,aACjBF,EAAQ1P,SAAS6C,EAAIoC,sBAAsBrI,iBAEhC4S,EAAqB3J,KAAK,yBCvC0BwI,EAAkBwB,GACrFxB,EAActP,MAAQsP,EAActP,MAAMiM,QAAO,SAAA/J,GAAC,OAAI4O,EAAkB7P,SAASiB,EAAEvE,OAAO0F,WDuCxF0N,CAA2BzB,EAAemB,GAE5C,OAAOnB,uBE5CkB,CACzB,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,qDC+B6C,CAC7C,YACA,YACA,YACA,YACA,iDAE+C,CAC/C,YACA,4BAG0B,CAC1B,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,oDArE4C,CAC5C,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YAEA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,MACA,MACA,MACA,MACA,KACA,KACA,4BD3B0B,CAC1B,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,kCAE0B,CAAC,MAAO,MAAO,qCEjCN,CACnC,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,gBACA,4CChBgC,CAChC,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,gBACnD,gBAAiB,gBAAiB,gBAAiB,4F3BiaT1O,OAAGkQ,EAAiBlQ,EAAjBkQ,kBACvCxB,EAAgB5G,gBAAgBhJ,GAChCsR,EAAetI,gBAAgBnJ,GAC/B0R,EAAgBvI,gBAAgBlJ,GAChC0R,EAAkBxI,gBAAgBjJ,GACxC,OAAKqR,GAIDA,EAAkB7P,SAAS,0BAA0BqO,EAActP,MAAM8G,KAAKkK,GAC9EF,EAAkB7P,SAAS,mBAC7BqO,EAActP,MAAM8G,KAAKmK,GACzB3B,EAActP,MAAM8G,KAAKoK,IAEpB5B,IARLA,EAActP,MAAQ,CAACgR,EAAcC,EAAeC,GAC7C5B,oDD5EmC1O,OAAGkQ,EAAiBlQ,EAAjBkQ,kBACzCxB,EAAgB5G,gBAAgBnL,GACtC,OAAKuT,EAGDA,EAAkB7P,SAAS,mBAA2B,CAACqO,GACpD,GAHE,CAACA,oB6BjXoB,CAC5BxJ,IAAO,CAAEzG,YAAa,GACtBqG,IAAO,CAAErG,YAAa,GACtBwG,MAAO,CAAExG,YAAa"}
1
+ {"version":3,"file":"sigo-package.cjs.production.min.js","sources":["../src/shared/Utils/CurrencyFormat.ts","../src/Programados/Procesos/Modelos/ModelDataFlujosDocumentacionReplanteo.ts","../src/shared/dtos/EstadoDto.ts","../src/shared/dtos/GeneralCodigoNombreDto.ts","../src/shared/dtos/GeneralCodigoNombreUnidadDto.ts","../src/shared/dtos/UsuarioDto.ts","../src/shared/Utils/IsValidDate.ts","../src/Programados/dtos/DetalleChileReservaMODto.ts","../src/Programados/dtos/WBEDto.ts","../src/Programados/dtos/DetalleManoObraChileDto.ts","../src/Programados/dtos/DatosManoObraGlobalDto.ts","../src/Programados/dtos/DatosPrecioEspecialidadDto.ts","../src/Programados/dtos/DatosUnidadObraMaterialDto.ts","../src/Programados/dtos/DatosCatalogoMODto.ts","../src/Programados/dtos/AmapDto.ts","../src/Programados/Alemania/ObtenerMONoReservada/generarModeloAmap.ts","../src/Programados/Alemania/Models/DocumentacionHPBussines.ts","../src/Programados/Alemania/Models/DocumentacionHPResidential.ts","../src/Programados/Alemania/Models/DataFlujosHomePass.ts","../src/Programados/Alemania/UpdateNodosDocDP/updateNodoAsfaltoRecursivo.ts","../src/Programados/Alemania/UpdateNodosDocDP/updateNodoZanjaRecursivo.ts","../src/Programados/ActualizarDataManoObra.ts","../src/Programados/ActualizarDataReserva.ts","../src/Programados/ActualizarDataResumenLiquidaciones.ts","../src/Programados/Alemania/ActualizarDataResumenLiquidacionesAlemania.ts","../src/Programados/ActualizarDataTrabajos.ts","../src/Programados/BuscarZonaContratista.ts","../src/Programados/Alemania/CalcularResumenHPMOLiquidado/index.ts","../src/Programados/CalcularResumenLiquidaciones.ts","../src/Programados/Alemania/CalcularResumenValorizacionesAlemania.ts","../src/Programados/Alemania/CodigosMaterialSoplado.ts","../src/Programados/Alemania/CodsMapeoMOMaterial.ts","../src/Programados/Procesos/parteDiario/CompararFechas.ts","../src/Programados/Procesos/Modelos/DocumentacionReplanteo.ts","../src/Programados/Procesos/parteDiario/GetCodigoFechaActual.ts","../src/Programados/Alemania/ObtenerMONoReservada/index.ts","../src/Programados/Alemania/ObtenerMONoReservada/filtrarMONoReservada.ts","../src/Programados/Procesos/Preliquidar/ObtenerPrecioContratistaVigente.ts","../src/Programados/ObtenerZonaAsignada.ts","../src/Programados/Alemania/UpdateNodosDocDP/index.ts","../src/Programados/Alemania/UpdateNodosDocDP/updateNodosPorEspecialidad.ts","../src/Programados/Alemania/codigosMOHP.ts","../src/Programados/Alemania/codMOTroncal_ReglaLiquidacion1.ts","../src/Programados/Alemania/codigosMaterialDuctos.ts","../src/Programados/Alemania/codigosMaterialUGG.ts","../src/Programados/PaisMapping.ts"],"sourcesContent":["enum Position { \r\n left ='left', \r\n right = 'right' \r\n}\r\n\r\ntype CoinPosition = keyof typeof Position;\r\nclass Params {\r\n symbolCoin?: string = \"\";\r\n symbolCoinPosition?: CoinPosition = Position.left;\r\n isPorcent?: Boolean = false;\r\n decimal?: Number = 2;\r\n codeCountry?: string = \"\";\r\n currency?: string = \"\";\r\n}\r\n/**\r\n * Formatea un valor numérico o una cadena que contiene un número en un formato de moneda.\r\n * @param value Valor numérico o cadena que contiene un número. Ejemplo: 123445.89 o '$ 123445.89'.\r\n * @param options Opciones de formato (opcional). Un objeto que puede tener las siguientes propiedades:\r\n * - `symbolCoin`: Símbolo de la moneda. Por defecto, vacío.\r\n * - `symbolCoinPosition`: Posición del símbolo de la moneda. Por defecto, vacío.\r\n * - `isPorcent`: Indicador de porcentaje. Por defecto, false.\r\n * - `decimal`: Indicador de numero de decimales. Por defecto, 2.\r\n * - `codeCountry`: Indicador en leguaje y codigo del Pais. Ejemplo 'es-PE(Perú), es-CO(Colombia), es-CL(Chile)'. Por defecto, vacío.\r\n * - `currency`: Indicador de la moneda del Pais. Ejemplo 'SOL, USD'. Por defecto, vacío.\r\n * @returns La cadena formateada por miles en el formato de moneda especificado.\r\n */\r\nexport function CurrencyFormat(value: any = 0, options: Params = new Params()): string {\r\n try {\r\n let _value = structuredClone(value);\r\n _value = ParserValue(_value);\r\n _value = ValidateValue(_value);\r\n _value = formaterMiles(_value, options);\r\n return _value;\r\n } catch (error) {\r\n throw error;\r\n }\r\n}\r\nfunction isValidFormatCodeCountry(codeCountry: string = \"\") {\r\n const expresion = /^[a-z]{2}-[A-Z]{2}$/ // formato de codigo Pais\r\n codeCountry = codeCountry?.toString();\r\n if(!codeCountry || codeCountry == null) return false\r\n if(!expresion.test(codeCountry)) throw Error(`Formato ${codeCountry} de Codigo Pais no es válido!.`)\r\n return true;\r\n}\r\nfunction ParserValue(value: any = 0) {\r\n const expresionNoSimbol = /^[^-?\\d,. ]+|\\.00$/g; // /^[^\\d,. ]+|\\.00$/g; // Quita cualquier digito en la cadena que no sea numerico\r\n value = ParserDiffFormatValue(value);\r\n value = value?.toString().replaceAll(\",\", \"\").replaceAll(expresionNoSimbol, \"\");\r\n return parseFloat(value);\r\n}\r\n// Parsea un formato 1.345.789,06 a 1,345,789.06 que es el estandar\r\nfunction ParserDiffFormatValue(value: any = \"\") {\r\n const reparatorReverse = value.toString().split(\"\").reverse().find((n: any = \"\") => { \r\n if(n === \",\" || n === \".\") { return n }\r\n });\r\n if(reparatorReverse === \",\") {\r\n value = value?.toString()?.replace(/,/g, '|')?.replace(/\\./g, ',')?.replace(/\\|/g, '.');\r\n }\r\n return value;\r\n}\r\nfunction ValidateValue(value: any = 0) {\r\n if(!isFinite(value)) value = 0;\r\n if(isNaN(value)) value = 0;\r\n if(value === undefined || value === null) value = 0;\r\n return value;\r\n}\r\nfunction formaterMiles(value = 0, {symbolCoin = \"\", symbolCoinPosition = \"left\", isPorcent = false, decimal = 2, codeCountry = \"\", currency = \"\" }: Params = new Params()) {\r\n const _isValidFormatCodeCountry = isValidFormatCodeCountry(codeCountry);\r\n const _decimal = !!decimal.toString() ? Number(decimal) : 2;\r\n if(!!_isValidFormatCodeCountry){\r\n const optionsCurrency = { style: 'currency', currency: currency }\r\n return new Intl.NumberFormat(codeCountry, optionsCurrency).format(Number(Number(value)?.toFixed(_decimal))).toString();\r\n }\r\n let valueFormated = new Intl.NumberFormat().format(Number(Number(value)?.toFixed(_decimal))).toString();\r\n // valueFormated = ParserDiffFormatValue(valueFormated); // se colocó por que ayudar a jqgrid solo reconoce los formatos ###,###,###.##, y no ###.###.###,##\r\n if(!!isPorcent) { return `${valueFormated} %`; }\r\n if(!!symbolCoin && symbolCoinPosition.toString() === \"left\") { valueFormated = `${symbolCoin} ${valueFormated}`; }\r\n if(!!symbolCoin && symbolCoinPosition.toString() === \"right\") { valueFormated = `${valueFormated} ${symbolCoin} `; }\r\n return valueFormated;\r\n}","export const ModelDataFlujosDocumentacionReplanteo = [\r\n {\r\n Action: 'Registrar',\r\n Fecha: new Date(),\r\n Usuario: '',\r\n Description: 'Registrar',\r\n Posicion: '1',\r\n Icono: 'fa fa-registered',\r\n ColorIcono: '#1d9d74',\r\n TagPagina: ['tagGestionMacroObrasNuevo'],\r\n },\r\n {\r\n Action: 'Aprobar',\r\n Fecha: new Date(),\r\n Usuario: '',\r\n Description: 'Aprobar',\r\n Posicion: '2',\r\n Icono: 'fa fa-check-circle',\r\n ColorIcono: '#31ce36',\r\n TagPagina: ['tagGestionMacroObrasNuevo'],\r\n },\r\n {\r\n Action: 'Rechazar',\r\n Fecha: new Date(),\r\n Usuario: '',\r\n Description: 'Rechazar',\r\n Posicion: '3',\r\n Icono: 'fa fa-minus-circle',\r\n ColorIcono: '#ffad46',\r\n TagPagina: ['tagGestionMacroObrasNuevo'],\r\n },\r\n {\r\n Action: 'Eliminar',\r\n Fecha: new Date(),\r\n Usuario: '',\r\n Description: 'Eliminar',\r\n Posicion: '4',\r\n Icono: 'fa fa-times-circle',\r\n ColorIcono: '#f25961',\r\n TagPagina: ['tagGestionMacroObrasNuevo'],\r\n },\r\n {\r\n Action: 'Descargar',\r\n Fecha: new Date(),\r\n Usuario: '',\r\n Description: 'Descargar',\r\n Posicion: '5',\r\n Icono: 'fa fa-arrow-circle-down',\r\n ColorIcono: '#084594',\r\n TagPagina: ['tagGestionMacroObrasNuevo'],\r\n }\r\n]","export class EstadoDto {\r\n ID_Estado: number = 1\r\n Nombre: string = 'ACTIVO'\r\n}","export class GeneralCodigoNombreDto {\r\n Codigo: string = ''\r\n Nombre: string = ''\r\n}","export class GeneralCodigoNombreUnidadDto {\r\n Codigo: string = ''\r\n Nombre: string = ''\r\n UnidadMedida: string = ''\r\n}","export class UsuarioDto {\r\n Identificacion: string = ''\r\n Apellidos: string = ''\r\n Nombres: string = ''\r\n Fecha: Date = new Date()\r\n}","export function IsValidDate(date: any): boolean {\r\n return date instanceof Date\r\n}","import { GeneralCodigoNombreDto, GeneralCodigoNombreUnidadDto } from '../../shared/index'\r\n\r\nexport class DetalleChileReservaMODto {\r\n Codigo: string = ''\r\n Linea: string = ''\r\n DirDesde: string = ''\r\n AltDesde: string = ''\r\n DirHasta: string = ''\r\n AltHasta: string = ''\r\n Plano: string = ''\r\n Especialidad: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\r\n Actividad: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\r\n Clave: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\r\n Tarea: string = ''\r\n ManoObra: GeneralCodigoNombreUnidadDto = new GeneralCodigoNombreUnidadDto()\r\n UnidadObra: GeneralCodigoNombreUnidadDto = new GeneralCodigoNombreUnidadDto()\r\n HomePass: GeneralCodigoNombreDto = new GeneralCodigoNombreDto()\r\n LineaCodigoCub: string = ''\r\n CodigoCub: string = ''\r\n CanMOCub: number = 0\r\n CanMOInf: number = 0\r\n CanMOApr: number = 0\r\n CanUOCub: number = 0\r\n CanUOInf: number = 0\r\n TotalUO: number = 0\r\n CanUOApr: number = 0\r\n Origen: string = ''\r\n CodigoBarra: string = ''\r\n PuntoBaremo: number = 0\r\n}","export class WBEDto {\r\n ID_WBE: number = 0\r\n CodigoWBE: string = ''\r\n DescripcionWBE: string = ''\r\n}","import { ManoObraBaremoDto } from './ManoObraBaremoDto'\r\n\r\nexport class DetalleManoObraChileDto {\r\n ManoObraBaremo: ManoObraBaremoDto[] = []\r\n}","import { DetalleManoObraChileDto } from \"./DetalleManoObraChileDto\";\r\nimport { MaterialAmapDto } from \"./MaterialAmapDto\";\r\n\r\nexport class DatosManoObraGlobalDto {\r\n Actividad: string = ''\r\n Alcance: string = ''\r\n Material: MaterialAmapDto[] = []\r\n DetalleChile: DetalleManoObraChileDto = new DetalleManoObraChileDto()\r\n}","import { PreciosAgenciaDto } from './PreciosAgenciaDto'\r\nimport { PreciosContrataDto } from './PreciosContrataDto'\r\n\r\nexport class DatosPrecioEspecialidadDto {\r\n Moneda: string = ''\r\n Simbolo: string = ''\r\n Decimales: number = 2\r\n Agencias: PreciosAgenciaDto[] = []\r\n Contratistas: PreciosContrataDto[] = []\r\n}","import { MaterialAmapDto } from './MaterialAmapDto'\r\n\r\nexport class DatosUnidadObraMaterialDto {\r\n Codigo: string = ''\r\n Descripcion: string = ''\r\n Materiales: MaterialAmapDto[] = []\r\n}","import { DatosManoObraGlobalDto } from './DatosManoObraGlobalDto'\r\nimport { DatosPrecioEspecialidadDto } from './DatosPrecioEspecialidadDto'\r\nimport { DatosUnidadObraMaterialDto } from './DatosUnidadObraMaterialDto'\r\n\r\nexport class DatosCatalogoMODto{\r\n DatosManoObraGlobal = new DatosManoObraGlobalDto()\r\n DatosPrecioEspecialidad = new DatosPrecioEspecialidadDto() \r\n DatosUnidadObraMaterial = new DatosUnidadObraMaterialDto()\r\n}","import { EstadoDto } from '../../shared/index'\r\nimport { WBEDto } from './WBEDto'\r\nimport { DetalleChileReservaMODto } from './DetalleChileReservaMODto'\r\nimport { DatosCatalogoMODto } from './DatosCatalogoMODto'\r\nimport { AmapCantidadesDto } from './AmapCantidadesDto'\r\n\r\nexport class AmapDto {\r\n ID_Amap: number = 0\r\n Amap: number = 0\r\n Cantidad: number = 0\r\n CantidadUsado: number = 0\r\n CantidadTransito: number = 0\r\n CantidadAprobada: number = 0\r\n Codigo: string = ''\r\n Descripcion: string = ''\r\n Estado: EstadoDto = new EstadoDto()\r\n Precio: number = 0\r\n Total: number = 0\r\n Unidad: string = ''\r\n Moneda: string = ''\r\n Simbolo: string = ''\r\n Decimales: number = 0\r\n WBE: WBEDto = new WBEDto()\r\n DetalleChile: DetalleChileReservaMODto = new DetalleChileReservaMODto()\r\n CantidadUO: number = 0\r\n CantidadUOUsado: number = 0\r\n CantidadUOTransito: number = 0\r\n CantidadUOAprobada: number = 0\r\n Cantidades:AmapCantidadesDto[] = []\r\n DatosCatalogoMO: DatosCatalogoMODto = new DatosCatalogoMODto()\r\n}","import { DetalleChileReservaMODto } from '../../dtos/DetalleChileReservaMODto'\r\nimport { AmapDto } from '../../dtos/AmapDto'\r\nimport { ManoObraGlobal, Obra, PrecioEspecialidad } from './index'\r\nimport { ManoObraBaremoDto } from '../../dtos/ManoObraBaremoDto'\r\n\r\ninterface params {\r\n ManoObraGlobal: ManoObraGlobal\r\n PrecioEspecialidad: PrecioEspecialidad\r\n Precio: number\r\n Obra: Obra\r\n MOB: ManoObraBaremoDto\r\n}\r\n\r\nexport function generarModeloAmap(params: params) {\r\n\r\n const { ManoObraGlobal, Precio, PrecioEspecialidad } = params\r\n\r\n const DetalleChile = generarModeloDetalleChile(params)\r\n\r\n const newAmap = new AmapDto()\r\n newAmap.DetalleChile = DetalleChile\r\n newAmap.Amap = ManoObraGlobal.Amap\r\n newAmap.Codigo = ManoObraGlobal.Codigo\r\n newAmap.Descripcion = ManoObraGlobal.Actividad\r\n newAmap.Precio = Precio\r\n newAmap.Total = newAmap.Precio * newAmap.Cantidad * newAmap.DetalleChile.PuntoBaremo\r\n newAmap.Unidad = ManoObraGlobal.Unidad.Nombre\r\n newAmap.Moneda = PrecioEspecialidad.Moneda\r\n newAmap.Simbolo = PrecioEspecialidad.Simbolo\r\n newAmap.Decimales = PrecioEspecialidad.Decimales\r\n newAmap.WBE.CodigoWBE = 'SIGPE'\r\n newAmap.CantidadUOAprobada = 0.000001; // LEER archivo Regla `generarModeloAmap.readme`\r\n newAmap.DatosCatalogoMO = {\r\n DatosManoObraGlobal: {\r\n Actividad: ManoObraGlobal.Actividad,\r\n Alcance: ManoObraGlobal.Alcance,\r\n Material: ManoObraGlobal.Material,\r\n DetalleChile: ManoObraGlobal.DetalleChile\r\n },\r\n DatosPrecioEspecialidad: {\r\n Moneda: PrecioEspecialidad.Moneda,\r\n Simbolo: PrecioEspecialidad.Simbolo,\r\n Decimales: PrecioEspecialidad.Decimales,\r\n Agencias: PrecioEspecialidad.Agencias,\r\n Contratistas: PrecioEspecialidad.Contratistas\r\n },\r\n DatosUnidadObraMaterial: {\r\n Codigo: '0',\r\n Descripcion: 'SIN UO',\r\n Materiales: []\r\n }\r\n }\r\n return newAmap\r\n}\r\n\r\nfunction generarModeloDetalleChile(params: params) {\r\n const { Obra, ManoObraGlobal, MOB } = params\r\n let codigoVal = '00000';\r\n if(!!Obra?.DetalleChile?.codigo) {\r\n codigoVal = Obra?.DetalleChile?.codigo; \r\n }\r\n const newDto = new DetalleChileReservaMODto()\r\n newDto.Codigo = codigoVal;\r\n newDto.CodigoCub = \"\"\r\n newDto.Linea = hashCode(ManoObraGlobal.Codigo),\r\n newDto.Especialidad = MOB.Especialidad\r\n newDto.Actividad.Codigo = 'CH0001'\r\n newDto.Actividad.Nombre = 'ACTIVIDAD GENERAL'\r\n newDto.Clave.Codigo = 'CH0001'\r\n newDto.Clave.Nombre = 'CLAVE GENERAL'\r\n newDto.Tarea = '0000'\r\n newDto.ManoObra.Codigo = ManoObraGlobal.Codigo\r\n newDto.ManoObra.Nombre = ManoObraGlobal.Actividad\r\n newDto.ManoObra.UnidadMedida = ManoObraGlobal.Unidad.Nombre\r\n newDto.UnidadObra.Codigo = '0'\r\n newDto.UnidadObra.Nombre = 'SIN UO'\r\n newDto.UnidadObra.UnidadMedida = 'UN'\r\n newDto.LineaCodigoCub = hashCode(ManoObraGlobal.Codigo) + \"\" + codigoVal;\r\n newDto.PuntoBaremo = MOB.PuntoBaremo\r\n return newDto\r\n}\r\n\r\nfunction hashCode(str: String = \"\") {\r\n let hash = 0;\r\n for (let i = 0; i < str.length; i++) {\r\n const char = str.charCodeAt(i);\r\n hash = (hash << 5) - hash + char;\r\n }\r\n return Math.abs(hash).toString();\r\n}","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\r\n\r\nconst DocumentacionHPBussines: NodoDocDto = {\r\n \"id\": 9999998877,\r\n \"label\": \"BALIZA\",\r\n \"Children\": [\r\n // {\r\n // \"id\": 99999988776,\r\n // \"label\": \"BoQ obra civil\",\r\n // \"Children\": [],\r\n // \"Titulo\": `BoQ obra civil`,\r\n // \"Codigo\": \"Cod99999988776\",\r\n // \"Descripcion\": \"BoQ obra civil\",\r\n // \"Files\": [],\r\n // \"Extension\": ['ALL'],\r\n // \"Size\": {\r\n // \"Size\": 50,\r\n // \"UM\": \"mb\"\r\n // },\r\n // \"Requerido\": false,\r\n // \"CantidadMin\": 1,\r\n // \"CantidadMax\": 0,\r\n // \"Estado\": {\r\n // \"ID_Estado\": 10,\r\n // \"Nombre\": \"INACTIVO\"\r\n // }\r\n // },\r\n {\r\n \"id\": 99999988775,\r\n \"label\": \"Foto baliza con zanja abierta\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto baliza con zanja abierta`,\r\n \"Codigo\": \"Cod99999988775\",\r\n \"Descripcion\": \"Foto baliza con zanja abierta\",\r\n \"Files\": [\r\n {\r\n \"Posicion\": \"4b88feeb-e004-44c4-9efe-9909912dfc3c\",\r\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193012.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988775\",\r\n \"NameOriginal\": \"CW-04.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.4627561569213867,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:19:43.458Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T14:56:52.500Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n },\r\n }\r\n ],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 99999988774,\r\n \"label\": \"Foto baliza-fachada dirección\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto baliza-fachada dirección`,\r\n \"Codigo\": \"Cod99999988774\",\r\n \"Descripcion\": \"Foto baliza-fachada dirección\",\r\n \"Files\": [\r\n {\r\n \"Posicion\": \"5225d6b1-10be-41ec-8d25-175c80d319dd\",\r\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193285.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988774\",\r\n \"NameOriginal\": \"CW-05.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.11749267578125,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:18:16.202Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:01:25.882Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n }\r\n }\r\n ],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 99999988773,\r\n \"label\": \"Foto CRUCE - baliza\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto CRUCE - baliza`,\r\n \"Codigo\": \"Cod99999988773\",\r\n \"Descripcion\": \"Foto CRUCE - baliza\",\r\n \"Files\": [\r\n {\r\n \"Posicion\": \"cf5fbc36-88ad-444f-af71-84461f9c87c2\",\r\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193370.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988773\",\r\n \"NameOriginal\": \"CW-06.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.45999622344970703,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:48:07.583Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:02:50.151Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n }\r\n }\r\n ],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 99999988772,\r\n \"label\": \"Foto sangrado\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto sangrado`,\r\n \"Codigo\": \"Cod99999988772\",\r\n \"Descripcion\": \"Foto sangrado\",\r\n \"Files\": [{\r\n \"Posicion\": \"94ef2d86-b811-4cda-82ac-ec9627071521\",\r\n \"Filename\": \"AddressList_184_Business_ARP000101519001_0III1713193446.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988772\",\r\n \"NameOriginal\": \"CW-07.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.10319232940673828,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_184_Business_ARP000101519001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T15:44:16.185Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:04:06.812Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n }\r\n }],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n }\r\n ],\r\n \"Titulo\": `BALIZA`,\r\n \"Codigo\": \"Cod9999998877\",\r\n \"Descripcion\": \"BALIZA\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 0,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n}\r\n\r\nexport function obtenerDocumentacionNoClientes({ codEspecialidades }: { codEspecialidades?: string[] }): NodoDocDto[] {\r\n const documentacion = structuredClone(DocumentacionHPBussines)\r\n if (!codEspecialidades) {\r\n return [documentacion]\r\n }\r\n if (codEspecialidades.includes('01.1-OBRA CIVIL')) return [documentacion]\r\n return []\r\n}","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto';\r\nimport { DocumentacionPEXEntity } from '../../../Programados/entitys/DocumentacionPEXEntity';\r\n\r\nconst modelDROP: NodoDocDto = {\r\n \"id\": 9999998877,\r\n \"label\": \"DROP\",\r\n \"Children\": [\r\n {\r\n \"id\": 99999988776,\r\n \"label\": \"Foto recorrido acometida calle-fachada\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto recorrido acometida calle-fachada`,\r\n \"Codigo\": \"Cod99999988776\",\r\n \"Descripcion\": \"Foto recorrido acometida calle-fachada\",\r\n \"Files\": [\r\n {\r\n \"Posicion\": \"ed93673f-7c3a-4c9f-aabb-850242f3cf65\",\r\n \"Filename\": \"AddressList_183_Residential_ARP000101518001_0III1713193559.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988776\",\r\n \"NameOriginal\": \"CW-08.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.24944210052490234,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_183_Residential_ARP000101518001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:45:00.828Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:05:59.907Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n }\r\n }\r\n ],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 99999988775,\r\n \"label\": \"Foto recorrido acometida jardin-balona-fachada\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto recorrido acometida jardin-balona-fachada`,\r\n \"Codigo\": \"Cod99999988775\",\r\n \"Descripcion\": \"Foto recorrido acometida jardin-balona-fachada\",\r\n \"Files\": [\r\n {\r\n \"Posicion\": \"bea79b4e-7fba-4bcf-b1d1-b8fea66c226f\",\r\n \"Filename\": \"AddressList_183_Residential_ARP000101518001_0III1713193644.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988775\",\r\n \"NameOriginal\": \"CW-09.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.4330024719238281,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_183_Residential_ARP000101518001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:46:04.220Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:07:24.085Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n }\r\n }\r\n ],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 99999988774,\r\n \"label\": \"Foto sangrado\",\r\n \"Children\": [],\r\n \"Titulo\": `Foto sangrado`,\r\n \"Codigo\": \"Cod99999988774\",\r\n \"Descripcion\": \"Foto sangrado\",\r\n \"Files\": [{\r\n \"Posicion\": \"f7e9b0ea-8345-4e43-95fb-86da53c9bdb9\",\r\n \"Filename\": \"AddressList_183_Residential_ARP000101518001_0III1713193697.JPG\",\r\n \"Extension\": \"jpg\",\r\n \"CodigoNodo\": \"Cod99999988774\",\r\n \"NameOriginal\": \"CW-10.jpg\",\r\n \"Size\": {\r\n \"Size\": 0.4016141891479492,\r\n \"UM\": \"MB\"\r\n },\r\n \"Ruta\": \"AddressList_183_Residential_ARP000101518001_\",\r\n \"Observacion\": \"Cargado desde PWA\",\r\n \"Coordenadas\": {\r\n \"X\": \"-77.0334179\",\r\n \"Y\": \"-12.0632484\"\r\n },\r\n \"Fecha_Archivo\": new Date(\"2024-04-12T17:46:39.794Z\"),\r\n \"Ultimo_Flujo\": {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n },\r\n \"Flujos\": [\r\n {\r\n \"Action\": \"Registrar\",\r\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\"),\r\n \"Usuario\": {\r\n \"Identificacion\": \"\",\r\n \"Apellidos\": \"\",\r\n \"Nombres\": \"\",\r\n \"Fecha\": new Date(\"2024-04-15T15:08:17.625Z\")\r\n },\r\n \"Description\": \"Registrar\",\r\n \"Posicion\": \"1\",\r\n \"Icono\": \"fa fa-registered\",\r\n \"ColorIcono\": \"#1d9d74\",\r\n \"TagPagina\": [\r\n \"tagGestionMacroObrasNuevo\"\r\n ],\r\n \"Visible\": false\r\n }\r\n ],\r\n \"Estado\": {\r\n \"ID_Estado\": 2024,\r\n \"Nombre\": \"ALEMANIA_CLIENTES_NOCLIENTES_DOCDP\"\r\n }\r\n }],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n }\r\n ],\r\n \"Titulo\": `DROP`,\r\n \"Codigo\": \"Cod9999998877\",\r\n \"Descripcion\": \"DROP\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 0,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n}\r\nconst modelCABLE: NodoDocDto = {\r\n \"id\": 9999998878,\r\n \"label\": \"CABLE\",\r\n \"Children\": [\r\n {\r\n \"id\": 999999887766,\r\n \"label\": \"Medidas OTDR\",\r\n \"Children\": [],\r\n \"Titulo\": `Medidas OTDR`,\r\n \"Codigo\": \"Cod999999887766\",\r\n \"Descripcion\": \"Medidas OTDR\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 999999887755,\r\n \"label\": \"Protocolo de soplado\",\r\n \"Children\": [],\r\n \"Titulo\": `Protocolo de soplado`,\r\n \"Codigo\": \"Cod999999887755\",\r\n \"Descripcion\": \"Protocolo de soplado\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n }\r\n ],\r\n \"Titulo\": `CABLE`,\r\n \"Codigo\": \"Cod9999998878\",\r\n \"Descripcion\": \"CABLE\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 0,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n}\r\nconst modelARMARIO: NodoDocDto = {\r\n \"id\": 9999998879,\r\n \"label\": \"ARMARIO\",\r\n \"Children\": [\r\n {\r\n \"id\": 9999998877666,\r\n \"label\": \"Photos of labelled ducts of the installed HPs\",\r\n \"Children\": [],\r\n \"Titulo\": `Photos of labelled ducts of the installed HPs`,\r\n \"Codigo\": \"Cod9999998877666\",\r\n \"Descripcion\": \"Photos of labelled ducts of the installed HPs\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 9999998877555,\r\n \"label\": \"Photos of splice cassettes with Feeder\",\r\n \"Children\": [],\r\n \"Titulo\": `Photos of splice cassettes with Feeder`,\r\n \"Codigo\": \"Cod9999998877555\",\r\n \"Descripcion\": \"Photos of splice cassettes with Feeder\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n },\r\n {\r\n \"id\": 9999998877444,\r\n \"label\": \"Photos of splices from the installed HPs\",\r\n \"Children\": [],\r\n \"Titulo\": `Photos of splices from the installed HPs`,\r\n \"Codigo\": \"Cod9999998877444\",\r\n \"Descripcion\": \"Photos of splices from the installed HPs\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 1,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n }\r\n ],\r\n \"Titulo\": `ARMARIO`,\r\n \"Codigo\": \"Cod9999998879\",\r\n \"Descripcion\": \"ARMARIO\",\r\n \"Files\": [],\r\n \"Extension\": ['ALL'],\r\n \"Size\": {\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"CantidadMin\": 0,\r\n \"CantidadMax\": 0,\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n }\r\n}\r\n\r\nconst DocumentacionHPResidential: DocumentacionPEXEntity = {\r\n \"ID_DocumentacionPEX\": 0,\r\n \"TipoObra\": \"Construccion\",\r\n \"Sistema\": \"GERMAN\",\r\n \"Codigo\": \"cod001\",\r\n \"Nombre\": \"Documentacion Alemania\",\r\n \"Pais\": {\r\n \"Codigo\": \"004\",\r\n \"Nombre\": \"ALEMANIA\"\r\n },\r\n \"Delegacion\": {\r\n \"Codigo\": \"AL02\",\r\n \"Nombre\": \"COMUNICACIONES ALEMANIA\"\r\n },\r\n \"Nodos\": [],\r\n \"Estado\": {\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n },\r\n \"Bitacora\": []\r\n}\r\n\r\nexport function obtenerDocumentacionClientes({ codEspecialidades }: { codEspecialidades?: string[] }) {\r\n const documentacion = structuredClone(DocumentacionHPResidential)\r\n const modelDROPAux = structuredClone(modelDROP)\r\n const modelCABLEAux = structuredClone(modelCABLE)\r\n const modelARMARIOAux = structuredClone(modelARMARIO)\r\n if (!codEspecialidades) {\r\n documentacion.Nodos = [modelDROPAux, modelCABLEAux, modelARMARIOAux]\r\n return documentacion\r\n }\r\n if (codEspecialidades.includes('01.2-OBRA CIVIL/DROPS')) documentacion.Nodos.push(modelDROPAux)\r\n if (codEspecialidades.includes('03-SOPLADO RA')) {\r\n documentacion.Nodos.push(modelCABLEAux)\r\n documentacion.Nodos.push(modelARMARIOAux)\r\n }\r\n return documentacion\r\n}","import { UsuarioDto } from '../../../shared/dtos/UsuarioDto'\r\nimport { FlujoDocDto } from '../../dtos/FlujoDocDto'\r\n\r\nexport const dataFlujosHomePass: FlujoDocDto[] = [\r\n {\r\n Action: 'Registrar',\r\n Fecha: new Date(),\r\n Usuario: new UsuarioDto,\r\n Description: 'Registrar',\r\n Posicion: '1',\r\n Icono: 'fa fa-registered',\r\n ColorIcono: '#1d9d74',\r\n TagPagina: ['tagGestionDP'],\r\n Visible: false\r\n },\r\n {\r\n Action: 'Aprobar',\r\n Fecha: new Date(),\r\n Usuario: new UsuarioDto,\r\n Description: 'Aprobar',\r\n Posicion: '2',\r\n Icono: 'fa fa-check-square-o',\r\n ColorIcono: '#31ce36',\r\n TagPagina: ['tagGestionDP'],\r\n Visible: false\r\n },\r\n {\r\n Action: 'Eliminar',\r\n Fecha: new Date(),\r\n Usuario: new UsuarioDto,\r\n Description: 'Eliminar',\r\n Posicion: '4',\r\n Icono: 'fa fa-times-circle',\r\n ColorIcono: '#f25961',\r\n TagPagina: ['tagGestionDP'],\r\n Visible: false\r\n }\r\n]","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\r\n\r\nexport const updateNodoAsfaltoRecursivo = (nodos: NodoDocDto[], metros: number) => {\r\n for (const nodo of nodos) {\r\n\r\n if (nodo.Codigo.trim() !== 'Cod100') updateNodoAsfaltoRecursivo(nodo.Children, metros)\r\n\r\n const nodoCod100 = nodo.Children.find(e => e.Codigo.trim() === 'Cod119')\r\n\r\n if (!nodoCod100) continue\r\n\r\n const childrenAux = nodo.Children.filter(e => !['Cod119'].includes(e.Codigo))\r\n const mtsCod119 = 50 //CAMBIAR SEGUN LO PEDIDO\r\n const numCod110 = Math.ceil(metros / mtsCod119)\r\n const newNodosCod110 = []\r\n\r\n for (let index = 0; index < numCod110; index++) {\r\n const inicial = index * mtsCod119\r\n const final = inicial + mtsCod119\r\n const textAdd = `${inicial}m - ${final}m`\r\n const numAdd = `${inicial}${final}`\r\n const newNodo = structuredClone(nodoCod100)\r\n newNodo.Codigo = `${newNodo.Codigo}${numAdd}`\r\n newNodo.Descripcion = textAdd\r\n newNodo.Titulo = textAdd\r\n newNodo.id = Number(`${newNodo.id}${numAdd}`)\r\n newNodo.label = textAdd\r\n updateChildren(newNodo.Children, numAdd)\r\n newNodosCod110.push(newNodo)\r\n }\r\n\r\n nodo.Children = [...childrenAux, ...newNodosCod110]\r\n\r\n }\r\n}\r\n\r\nfunction updateChildren(Children: NodoDocDto[], numAdd: string) {\r\n for (const nodo of Children) {\r\n nodo.Codigo = `${nodo.Codigo}${numAdd}`\r\n nodo.id = Number(`${nodo.id}${numAdd}`)\r\n updateChildren(nodo.Children, numAdd)\r\n }\r\n}","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\r\n\r\nexport const updateNodoZanjaRecursivo = (nodos: NodoDocDto[], metros: number) => {\r\n for (const nodo of nodos) {\r\n\r\n if (nodo.Codigo.trim() !== 'Cod61') updateNodoZanjaRecursivo(nodo.Children, metros)\r\n\r\n const nodoCod110 = nodo.Children.find(e => e.Codigo.trim() === 'Cod110')\r\n\r\n if (!nodoCod110) continue\r\n\r\n const childrenAux = nodo.Children.filter(e => !['Cod110'].includes(e.Codigo))\r\n const mtsCod110 = 50 //CAMBIAR SEGUN LO PEDIDO\r\n const numCod110 = Math.ceil(metros / mtsCod110)\r\n const newNodosCod110 = []\r\n\r\n for (let index = 0; index < numCod110; index++) {\r\n const inicial = index * mtsCod110\r\n const final = inicial + mtsCod110\r\n const textAdd = `${inicial}m - ${final}m`\r\n const numAdd = `${inicial}${final}`\r\n const newNodo = structuredClone(nodoCod110)\r\n newNodo.Codigo = `${newNodo.Codigo}${numAdd}`\r\n newNodo.Descripcion = textAdd\r\n newNodo.Titulo = textAdd\r\n newNodo.id = Number(`${newNodo.id}${numAdd}`)\r\n newNodo.label = textAdd\r\n updateChildren(newNodo.Children, numAdd)\r\n newNodosCod110.push(newNodo)\r\n }\r\n\r\n nodo.Children = [...childrenAux, ...newNodosCod110]\r\n\r\n }\r\n}\r\n\r\nfunction updateChildren(Children: NodoDocDto[], numAdd: string) {\r\n for (const nodo of Children) {\r\n nodo.Codigo = `${nodo.Codigo}${numAdd}`\r\n nodo.id = Number(`${nodo.id}${numAdd}`)\r\n updateChildren(nodo.Children, numAdd)\r\n }\r\n}","import { ManoDeObraEntity } from './entitys/ManoDeObraEntity'\r\n\r\ninterface IenvSIGO {\r\n SISTEMAS_VALORIZACION_MANO_OBRA: string[]\r\n}\r\n\r\ninterface IProps {\r\n manoObra: ManoDeObraEntity\r\n ContratoOT: any\r\n envSIGO: IenvSIGO\r\n obra: { ContratoOT: { Sistema: string } }\r\n}\r\n\r\nexport const ActualizarDataManoObra = ({ manoObra, ContratoOT, envSIGO, obra }: IProps): void => {\r\n\r\n let Sistema: string = envSIGO.SISTEMAS_VALORIZACION_MANO_OBRA.includes(obra.ContratoOT.Sistema) ? 'onNet' : 'default'\r\n\r\n if (Sistema == 'default') Sistema = !ContratoOT.CheckPrecioMO ? 'default' : 'onNet'\r\n\r\n for (const valorizacion of manoObra.Valorizacion) {\r\n const { DatosManoObraGlobal: { DetalleChile: { ManoObraBaremo } }, DatosPrecioEspecialidad: { Agencias } } = valorizacion.DatosCatalogoMO\r\n if (!!!Agencias.length) throw Error(`¡No se pudo obtener Precio! Comunícate con Soporte`)\r\n const agencia = Agencias.find((e: any) => e.Estado.ID_Estado === 1)\r\n if (!!!agencia) throw Error(`¡No se pudo obtener Precio! Comunícate con Soporte`)\r\n valorizacion.Precio = Number(agencia.Ultimo_Precio.Precio)\r\n if (!!!ManoObraBaremo.length) throw Error(`¡No se pudo obtener Punto Baremo! Comunícate con Soporte`)\r\n valorizacion.DetalleChile.PuntoBaremo = ManoObraBaremo[0].PuntoBaremo\r\n\r\n const sistema: any = {\r\n onNet: { PuntoBaremo: valorizacion.Precio, Precio: valorizacion.DetalleChile.PuntoBaremo },\r\n default: { PuntoBaremo: valorizacion.DetalleChile.PuntoBaremo, Precio: valorizacion.Precio }\r\n }\r\n valorizacion.DetalleChile.PuntoBaremo = sistema[Sistema].PuntoBaremo\r\n valorizacion.Precio = sistema[Sistema].Precio\r\n }\r\n\r\n}","import { ReservaEntity } from './entitys/ReservaEntity'\r\n\r\nexport const ActualizarDataReserva = (reserva: ReservaEntity): void => {\r\n for (const item of reserva.Item) {\r\n const tipo = item?.DatosCatalogoItem?.DatosItem?.Tipo || ''\r\n const precio = Number(item?.DatosCatalogoItem?.DatosPrecioMaterial?.Precio) || 0\r\n item.Valor = tipo.trim() === 'AP Valorado' ? precio : 0\r\n }\r\n}","import { ResumenLiquidacionesType } from \"./CalcularResumenLiquidaciones\";\r\n\r\nexport const ActualizarDataResumenLiquidaciones: Funcion = (ManoObra, Reserva, StockPersonal, ResumenPreLiquidado) => {\r\n\r\n if (ManoObra && ManoObra.Valorizacion && Array.isArray(ManoObra.Valorizacion)) {\r\n\r\n for (const valorizacion of ManoObra.Valorizacion) {\r\n valorizacion.CantidadUsado = 0;\r\n const val = ResumenPreLiquidado.MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\r\n if (val) valorizacion.CantidadUsado = val.Cantidad;\r\n }\r\n\r\n }\r\n\r\n if (Reserva && Reserva.Item && Array.isArray(Reserva.Item)) {\r\n\r\n for (const item of Reserva.Item) {\r\n item.CantidadUsados = 0;\r\n const itemAUX = ResumenPreLiquidado.MatUtilizados.find(e => e.Codigo === item.Codigo);\r\n if (itemAUX) item.CantidadUsados = itemAUX.Cantidad;\r\n }\r\n\r\n }\r\n\r\n if (StockPersonal && Array.isArray(StockPersonal)) {\r\n\r\n for (const stockPersonal of StockPersonal) {\r\n\r\n stockPersonal.Liquidacion = 0\r\n\r\n const stock = ResumenPreLiquidado.MatStockPersonal.find(e => e.ID_Trabajo === stockPersonal.ID_Trabajo\r\n && e.Identificacion === stockPersonal.Personal.Identificacion\r\n && e.Codigo === stockPersonal.Reserva)\r\n\r\n if (stock) {\r\n if (stock.Cantidad > stockPersonal.Despacho) {\r\n stockPersonal.Liquidacion = stockPersonal.Despacho\r\n stock.Cantidad = stock.Cantidad - stockPersonal.Despacho\r\n } else {\r\n stockPersonal.Liquidacion = stock.Cantidad\r\n stock.Cantidad = 0\r\n }\r\n }\r\n\r\n }\r\n }\r\n\r\n}\r\n\r\ninterface Funcion {\r\n (ManoObra: any, Reserva: any, StockPersonal: any[], ResumenPreLiquidado: ResumenLiquidacionesType): void;\r\n}","import { ResumenLiquidacionesType } from \"./CalcularResumenValorizacionesAlemania\"\r\n\r\nexport const ActualizarDataResumenValorizacionesAlemania: Funcion = (ManoObra, Reserva, StockPersonal, ResumenPreLiquidado) => {\r\n\r\n if (ManoObra && ManoObra.Valorizacion && Array.isArray(ManoObra.Valorizacion)) {\r\n\r\n for (const valorizacion of ManoObra.Valorizacion) {\r\n valorizacion.CantidadUsado = 0;\r\n const val = ResumenPreLiquidado.MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\r\n if (val) valorizacion.CantidadUsado = val.Cantidad;\r\n }\r\n\r\n }\r\n\r\n if (Reserva && Reserva.Item && Array.isArray(Reserva.Item)) {\r\n\r\n for (const item of Reserva.Item) {\r\n item.CantidadUsados = 0;\r\n const itemAUX = ResumenPreLiquidado.MatUtilizados.find(e => e.Codigo === item.Codigo);\r\n if (itemAUX) item.CantidadUsados = itemAUX.Cantidad;\r\n }\r\n\r\n }\r\n\r\n if (StockPersonal && Array.isArray(StockPersonal)) {\r\n\r\n for (const stockPersonal of StockPersonal) {\r\n\r\n stockPersonal.Liquidacion = 0\r\n\r\n const stock = ResumenPreLiquidado.MatStockPersonal.find(e => e.ID_Trabajo === stockPersonal.ID_Trabajo\r\n && e.Identificacion === stockPersonal.Personal.Identificacion\r\n && e.Codigo === stockPersonal.Reserva\r\n && e.CodigoLlave === stockPersonal.CodigoLlave)\r\n\r\n if (stock) {\r\n if (stock.Cantidad > stockPersonal.Despacho) {\r\n stockPersonal.Liquidacion = stockPersonal.Despacho\r\n stock.Cantidad = stock.Cantidad - stockPersonal.Despacho\r\n } else {\r\n stockPersonal.Liquidacion = stock.Cantidad\r\n stock.Cantidad = 0\r\n }\r\n }\r\n\r\n }\r\n }\r\n\r\n}\r\n\r\ninterface Funcion {\r\n (ManoObra: any, Reserva: any, StockPersonal: any[], ResumenPreLiquidado: ResumenLiquidacionesType): void;\r\n}","import { ManoDeObraEntity } from './entitys/ManoDeObraEntity'\r\nimport { ObraEntity } from './entitys/ObraEntity'\r\nimport { TrabajoEntity } from './entitys/TrabajoEntity'\r\n\r\ninterface IParams {\r\n manoObra: ManoDeObraEntity\r\n trabajos: TrabajoEntity[]\r\n obra: ObraEntity\r\n ContratoOT: any\r\n envSIGO: IenvSIGO\r\n}\r\n\r\ninterface IenvSIGO {\r\n SISTEMAS_VALORIZACION_MANO_OBRA: string[]\r\n}\r\n\r\nexport const ActualizarDataTrabajos = ({ manoObra, trabajos, obra, ContratoOT, envSIGO }: IParams): void => {\r\n let Sistema: string = envSIGO.SISTEMAS_VALORIZACION_MANO_OBRA.includes(obra.ContratoOT.Sistema) ? 'onNet' : 'default'\r\n if (Sistema === 'default') {\r\n const CheckPrecioMO = ContratoOT.CheckPrecioMO\r\n Sistema = !CheckPrecioMO ? 'default' : 'onNet'\r\n }\r\n for (const trabajo of trabajos) {\r\n for (const valorizacion of trabajo.Ultima_PreLiquidacion.Valorizacion) {\r\n const valorizacionMO = manoObra.Valorizacion.find(e => e.DetalleChile.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub)\r\n if (valorizacionMO) {\r\n const { DatosManoObraGlobal: { DetalleChile: { ManoObraBaremo } }, DatosPrecioEspecialidad: { Agencias } } = valorizacionMO.DatosCatalogoMO\r\n const sistema: any = {\r\n onNet: { PuntoBaremo: Agencias[0].Ultimo_Precio.Precio, Precio: ManoObraBaremo[0].PuntoBaremo },\r\n default: { PuntoBaremo: ManoObraBaremo[0].PuntoBaremo, Precio: Agencias[0].Ultimo_Precio.Precio }\r\n }\r\n valorizacion.DetalleChile.PuntoBaremo = sistema[Sistema].PuntoBaremo\r\n valorizacion.Precio = sistema[Sistema].Precio\r\n } else {\r\n console.error(`¡No se encontró Valorizacion con LineaCodigoCub: ${valorizacion.DetalleChile.LineaCodigoCub} en la Mano de Obra!`)\r\n }\r\n }\r\n }\r\n}","interface Zona {\r\n Descripcion: string\r\n Codigo: string\r\n Estado: {\r\n ID_Estado: number\r\n }\r\n}\r\n\r\ninterface EmpresaContratistaEnPrecioEspecialidad {\r\n Zonas: Zona[]\r\n}\r\n\r\ninterface Obra {\r\n Pais: {\r\n Codigo: string\r\n }\r\n}\r\n\r\nexport function BuscarZonaContratista(EmpresaContratistaEnPrecioEspecialidad: EmpresaContratistaEnPrecioEspecialidad, Obra: Obra, ZonaAsignada: string): Zona | undefined {\r\n const zonaSearchMapping: Record<string, () => Zona | undefined> = {\r\n '512': () => EmpresaContratistaEnPrecioEspecialidad.Zonas.find((e) => e.Descripcion.toUpperCase() === ZonaAsignada.toUpperCase() && e.Estado.ID_Estado === 1),\r\n '004': () => EmpresaContratistaEnPrecioEspecialidad.Zonas.find((e) => e.Descripcion.toUpperCase() === ZonaAsignada.toUpperCase() && e.Estado.ID_Estado === 1),\r\n '480': () => EmpresaContratistaEnPrecioEspecialidad.Zonas.find((e) => e.Codigo.toUpperCase() === ZonaAsignada.toUpperCase() && e.Estado.ID_Estado === 1)\r\n };\r\n\r\n return zonaSearchMapping[Obra.Pais.Codigo]()\r\n}\r\n","import { HomePassDto } from '../../dtos/HomePassDto'\r\n\r\ninterface typeHPMOUtilizado {\r\n ID_HPListMO: number\r\n CantidadUtilizado: number\r\n}\r\n\r\ninterface typeTrabajo {\r\n Ultima_PreLiquidacion: PreLiquidacion\r\n}\r\n\r\ninterface PreLiquidacion {\r\n Valorizacion: ValorizacionDto[]\r\n}\r\n\r\ninterface ValorizacionDto {\r\n Ultimo_Estado_Interno: EstadoInternoDto\r\n HomePass: HomePassDto[]\r\n}\r\n\r\ninterface EstadoInternoDto {\r\n Descripcion: string\r\n}\r\n\r\nexport const CalcularResumenHPMOLiquidado = (trabajo: typeTrabajo): typeHPMOUtilizado[] => {\r\n return trabajo.Ultima_PreLiquidacion.Valorizacion.reduce((acc: typeHPMOUtilizado[], valorizacion) => {\r\n if (['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA'].includes(valorizacion.Ultimo_Estado_Interno.Descripcion.trim())) {\r\n for (const hpmo of valorizacion.HomePass) {\r\n const hpmoAux = acc.find(e => e.ID_HPListMO === hpmo.ID_HPListMO)\r\n if (hpmoAux) {\r\n hpmoAux.CantidadUtilizado += hpmo.Cantidad\r\n return acc\r\n }\r\n return [\r\n ...acc\r\n ,\r\n {\r\n ID_HPListMO: hpmo.ID_HPListMO,\r\n CantidadUtilizado: hpmo.Cantidad\r\n }\r\n ]\r\n }\r\n }\r\n return acc\r\n }, [])\r\n}","\r\nexport const CalcularResumenLiquidaciones: Funcion = (trabajo, trabajos) => {\r\n let MoUo: MoUoType[] = [];\r\n let MatUtilizados: MatUtilizadosType[] = [];\r\n let MatRetirados: MatRetiradosType[] = [];\r\n let MatStockPersonal: MatStockPersonalType[] = [];\r\n let MatStockAlmacen: MatStockPersonalType[] = [];\r\n for (const trabajoDB of trabajos) {\r\n\r\n if (trabajoDB.ID_Trabajo === trabajo.ID_Trabajo) {\r\n trabajoDB.Ultima_PreLiquidacion.Valorizacion = trabajo.Ultima_PreLiquidacion.Valorizacion;\r\n }\r\n\r\n for (const valorizacion of trabajoDB.Ultima_PreLiquidacion.Valorizacion) {\r\n if (['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA'].includes(valorizacion.Ultimo_Estado_Interno.Descripcion.trim())) {\r\n\r\n const val = MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\r\n if (val) {\r\n val.Cantidad += valorizacion.Cantidad;\r\n val.CantidadUO += valorizacion.CantidadUO;\r\n } else MoUo.push({\r\n LineaCodigoCub: valorizacion.DetalleChile.LineaCodigoCub,\r\n Cantidad: valorizacion.Cantidad,\r\n CantidadUO: valorizacion.CantidadUO,\r\n });\r\n\r\n for (const mu of valorizacion.MaterialesUtilizados) {\r\n if (mu.Estado.ID_Estado === 1) {\r\n\r\n const muAux = MatUtilizados.find((e: any) => e.Codigo === mu.Codigo);\r\n if (muAux) muAux.Cantidad += mu.Cantidad;\r\n else MatUtilizados.push({\r\n Codigo: mu.Codigo,\r\n Cantidad: mu.Cantidad,\r\n });\r\n\r\n const matStockPersonal = MatStockPersonal.find(e => e.ID_Trabajo === trabajoDB.ID_Trabajo\r\n && e.Codigo === mu.Codigo\r\n && e.Identificacion === trabajoDB.Ultima_asignacion.Personal[0].Identificacion\r\n )\r\n if (matStockPersonal) matStockPersonal.Cantidad += mu.Cantidad;\r\n else MatStockPersonal.push({\r\n ID_Trabajo: trabajoDB.ID_Trabajo,\r\n Identificacion: trabajoDB.Ultima_asignacion.Personal[0].Identificacion,\r\n Codigo: mu.Codigo,\r\n Cantidad: mu.Cantidad,\r\n })\r\n }\r\n }\r\n\r\n for (const mr of valorizacion.MaterialesRetirados) {\r\n if (mr.Estado.ID_Estado === 1) {\r\n const muAux = MatRetirados.find(e => e.Codigo === mr.Codigo);\r\n if (muAux) muAux.Cantidad += mr.Cantidad;\r\n else MatRetirados.push({\r\n Codigo: mr.Codigo,\r\n Cantidad: mr.Cantidad,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return { MoUo, MatUtilizados, MatRetirados, MatStockPersonal, MatStockAlmacen };\r\n}\r\n\r\ninterface Funcion {\r\n (trabajo: TrabajoType, trabajos: any[]): ResumenLiquidacionesType;\r\n}\r\n\r\nexport interface ResumenLiquidacionesType {\r\n MoUo: MoUoType[];\r\n MatUtilizados: MatUtilizadosType[];\r\n MatRetirados: MatRetiradosType[];\r\n MatStockPersonal: MatStockPersonalType[];\r\n MatStockAlmacen: MatStockPersonalType[];\r\n};\r\n\r\nexport interface MatStockPersonalType {\r\n ID_Trabajo: number;\r\n Identificacion: string;\r\n Codigo: string;\r\n Cantidad: number;\r\n}\r\n\r\nexport interface MatRetiradosType {\r\n Codigo: string;\r\n Cantidad: number;\r\n}\r\n\r\nexport interface MatUtilizadosType {\r\n Codigo: string;\r\n Cantidad: number;\r\n}\r\n\r\nexport interface MoUoType {\r\n LineaCodigoCub: string;\r\n Cantidad: number;\r\n CantidadUO: number;\r\n}\r\n\r\ninterface TrabajoType {\r\n ID_Trabajo: number;\r\n Ultima_PreLiquidacion: PreLiquidacionType;\r\n // Otras propiedades y tipos correspondientes a 'Trabajo'\r\n}\r\n\r\ninterface PreLiquidacionType {\r\n Valorizacion: ValorizacionType[];\r\n // Otras propiedades y tipos correspondientes a 'PreLiquidacion'\r\n}\r\n\r\ninterface ValorizacionType {\r\n // Propiedades y tipos correspondientes a 'Valorizacion'\r\n}\r\n","\r\nexport const CalcularResumenValorizacionesAlemania: Funcion = (trabajo, trabajos) => {\r\n let MoUo: MoUoType[] = [];\r\n let MatUtilizados: MatUtilizadosType[] = [];\r\n let MatRetirados: MatRetiradosType[] = [];\r\n let MatStockPersonal: MatStockPersonalType[] = [];\r\n let MatStockAlmacen: MatStockAlmacenType[] = [];\r\n for (const trabajoDB of trabajos) {\r\n\r\n if (trabajoDB.ID_Trabajo === trabajo.ID_Trabajo) {\r\n trabajoDB.Ultima_PreLiquidacion.Valorizacion = trabajo.Ultima_PreLiquidacion.Valorizacion;\r\n }\r\n\r\n for (const valorizacion of trabajoDB.Ultima_PreLiquidacion.Valorizacion) {\r\n if (['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA', 'RECHAZADA POR DOCUMENTACION'].includes(valorizacion.Ultimo_Estado_Interno.Descripcion.trim())) {\r\n\r\n const val = MoUo.find(e => e.LineaCodigoCub === valorizacion.DetalleChile.LineaCodigoCub);\r\n if (val) {\r\n val.Cantidad += valorizacion.Cantidad;\r\n val.CantidadUO += valorizacion.CantidadUO;\r\n } else MoUo.push({\r\n LineaCodigoCub: valorizacion.DetalleChile.LineaCodigoCub,\r\n Cantidad: valorizacion.Cantidad,\r\n CantidadUO: valorizacion.CantidadUO,\r\n });\r\n\r\n for (const mu of valorizacion.MaterialesUtilizados) {\r\n\r\n if (mu.Estado.ID_Estado !== 1) continue\r\n\r\n const muAux = MatUtilizados.find((e: any) => e.Codigo === mu.Codigo);\r\n if (muAux) muAux.Cantidad += mu.Cantidad;\r\n else MatUtilizados.push({\r\n Codigo: mu.Codigo,\r\n Cantidad: mu.Cantidad,\r\n })\r\n\r\n if (!mu.CodigoLlave) throw Error(`No se pudo calcular resumen`)\r\n\r\n //#endregion Resumen Stock Personal\r\n if (mu.Motivo.Descripcion !== 'CONSUMO_MATERIAL_AUTOMATICO_DUCTOS') {\r\n const matStockPersonal = MatStockPersonal.find(e => e.ID_Trabajo === trabajoDB.ID_Trabajo\r\n && e.CodigoLlave === mu.CodigoLlave\r\n && e.Identificacion === trabajoDB.Ultima_asignacion.Personal[0].Identificacion\r\n )\r\n if (matStockPersonal) matStockPersonal.Cantidad += mu.Cantidad\r\n else MatStockPersonal.push({\r\n ID_Trabajo: trabajoDB.ID_Trabajo,\r\n Identificacion: trabajoDB.Ultima_asignacion.Personal[0].Identificacion,\r\n Codigo: mu.Codigo,\r\n CodigoLlave: mu.CodigoLlave,\r\n Cantidad: mu.Cantidad,\r\n })\r\n }\r\n //#endregion\r\n\r\n //#region Mat Stock Almacen\r\n if (mu.Motivo.Descripcion === 'CONSUMO_MATERIAL_AUTOMATICO_DUCTOS') {\r\n const matStockAlmacen = MatStockAlmacen.find(e => e.ID_Trabajo === trabajoDB.ID_Trabajo\r\n && e.CodigoLlave === mu.CodigoLlave\r\n )\r\n if (matStockAlmacen) matStockAlmacen.Cantidad += mu.Cantidad;\r\n else MatStockAlmacen.push({\r\n ID_Trabajo: trabajoDB.ID_Trabajo,\r\n Empresa: trabajoDB.Ultima_asignacion.Empresa.Codigo,\r\n CodigoLlave: mu.CodigoLlave,\r\n Codigo: mu.Codigo,\r\n Cantidad: mu.Cantidad,\r\n })\r\n }\r\n //#endregion\r\n }\r\n\r\n for (const mr of valorizacion.MaterialesRetirados) {\r\n if (mr.Estado.ID_Estado === 1) {\r\n const muAux = MatRetirados.find(e => e.Codigo === mr.Codigo);\r\n if (muAux) muAux.Cantidad += mr.Cantidad;\r\n else MatRetirados.push({\r\n Codigo: mr.Codigo,\r\n Cantidad: mr.Cantidad,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return { MoUo, MatUtilizados, MatRetirados, MatStockPersonal, MatStockAlmacen };\r\n}\r\n\r\ninterface Funcion {\r\n (trabajo: TrabajoType, trabajos: any[]): ResumenLiquidacionesType;\r\n}\r\n\r\nexport interface ResumenLiquidacionesType {\r\n MoUo: MoUoType[];\r\n MatUtilizados: MatUtilizadosType[];\r\n MatRetirados: MatRetiradosType[];\r\n MatStockPersonal: MatStockPersonalType[];\r\n MatStockAlmacen: MatStockAlmacenType[];\r\n};\r\n\r\nexport interface MatStockPersonalType {\r\n ID_Trabajo: number;\r\n Identificacion: string;\r\n Codigo: string;\r\n CodigoLlave: string;\r\n Cantidad: number;\r\n}\r\n\r\nexport interface MatStockAlmacenType {\r\n ID_Trabajo: number;\r\n CodigoLlave: string;\r\n Codigo: string;\r\n Cantidad: number;\r\n Empresa: string\r\n}\r\n\r\nexport interface MatRetiradosType {\r\n Codigo: string;\r\n Cantidad: number;\r\n}\r\n\r\nexport interface MatUtilizadosType {\r\n Codigo: string;\r\n Cantidad: number;\r\n}\r\n\r\nexport interface MoUoType {\r\n LineaCodigoCub: string;\r\n Cantidad: number;\r\n CantidadUO: number;\r\n}\r\n\r\ninterface TrabajoType {\r\n ID_Trabajo: number;\r\n Ultima_PreLiquidacion: PreLiquidacionType;\r\n // Otras propiedades y tipos correspondientes a 'Trabajo'\r\n}\r\n\r\ninterface PreLiquidacionType {\r\n Valorizacion: ValorizacionType[];\r\n // Otras propiedades y tipos correspondientes a 'PreLiquidacion'\r\n}\r\n\r\ninterface ValorizacionType {\r\n // Propiedades y tipos correspondientes a 'Valorizacion'\r\n}\r\n","export const CodigosMaterialSoplado = [\r\n { Codigo: '02CFO-108-205', Descripcion: '12FO-FIBER UNIT-DROP' },\r\n { Codigo: '02CFO-108-201', Descripcion: '2FO-FIBER UNIT-DROP' },\r\n { Codigo: '02CFO-108-204', Descripcion: '8FO-FIBER UNIT-DROP' },\r\n { Codigo: '02CFO-107-206', Descripcion: '96FO- OPTICAL CABLE' },\r\n { Codigo: '02CFO-107-204', Descripcion: '48FO-OPTICAL CABLE' },\r\n { Codigo: '02CFO-107-208', Descripcion: '192FO-OPTICAL CABLE' },\r\n { Codigo: '02CFO-107-209', Descripcion: '288FO-OPTICAL CABLE' },\r\n]","interface iMapeoMOMaterial {\r\n CodigoMO: string,\r\n CodigoMaterial: string,\r\n CodMatConector: string,\r\n CantidadPorDucto: number,\r\n Alcance: string,\r\n}\r\ninterface iMapeoMOMaterialSoplado {\r\n CodigoMO: string,\r\n CodigoMaterial: string,\r\n}\r\n\r\nexport const CodsMapeoMOMaterial: iMapeoMOMaterial[] = [\r\n { CodigoMO: '010103200', CodigoMaterial: '03DUC-109-204', CodMatConector: '03DUC-110-201', CantidadPorDucto: 2, Alcance: '2X16-12', },\r\n { CodigoMO: '010103300', CodigoMaterial: '03DUC-109-203', CodMatConector: '03DUC-110-201', CantidadPorDucto: 4, Alcance: '4X16-12', },\r\n { CodigoMO: '010103400', CodigoMaterial: '03DUC-109-202', CodMatConector: '03DUC-110-201', CantidadPorDucto: 7, Alcance: '7x16-12', },\r\n { CodigoMO: '010203900', CodigoMaterial: '03DUC-109-212', CodMatConector: '03DUC-110-210', CantidadPorDucto: 12, Alcance: '12x7-4', },\r\n { CodigoMO: '010204000', CodigoMaterial: '03DUC-109-211', CodMatConector: '03DUC-110-210', CantidadPorDucto: 24, Alcance: '24x7-4', },\r\n { CodigoMO: '010203800', CodigoMaterial: '03DUC-109-213', CodMatConector: '03DUC-110-210', CantidadPorDucto: 7, Alcance: '7X7-4', },\r\n { CodigoMO: '010303000', CodigoMaterial: '03DUC-109-201', CodMatConector: '03DUC-110-214', CantidadPorDucto: 2, Alcance: '1x50-40', },\r\n // { CodigoMO: '010303100', CodigoMaterial: '03DUC-109-210', CodMatConector: '03DUC-110-207', CantidadPorDucto: 1, Alcance: '1X12-10', },\r\n { CodigoMO: '', CodigoMaterial: '03DUC-109-210', CodMatConector: '03DUC-110-207', CantidadPorDucto: 1, Alcance: '', },\r\n { CodigoMO: '010403300', CodigoMaterial: '03DUC-109-209', CodMatConector: '03DUC-110-204', CantidadPorDucto: 1, Alcance: '1x14-10', },\r\n { CodigoMO: '010403500', CodigoMaterial: '03DUC-109-208', CodMatConector: '03DUC-110-204', CantidadPorDucto: 2, Alcance: '2x14-10', },\r\n { CodigoMO: '010403600', CodigoMaterial: '03DUC-109-207', CodMatConector: '03DUC-110-204', CantidadPorDucto: 4, Alcance: '4x14-10', },\r\n { CodigoMO: '010403700', CodigoMaterial: '03DUC-109-206', CodMatConector: '03DUC-110-204', CantidadPorDucto: 7, Alcance: '7x14-10', },\r\n { CodigoMO: '010206700', CodigoMaterial: '03DUC-109-214', CodMatConector: '03DUC-110-210', CantidadPorDucto: 1, Alcance: '1x7-4', },\r\n { CodigoMO: '', CodigoMaterial: '03DUC-109-205', CodMatConector: '03DUC-110-201', CantidadPorDucto: 1, Alcance: '', },\r\n]\r\n\r\nexport const CodsMapeoMOMaterialSopladoClientes: iMapeoMOMaterialSoplado[] = [\r\n { CodigoMO: 'T14', CodigoMaterial: '02CFO-108-205' },\r\n { CodigoMO: 'T15', CodigoMaterial: '02CFO-108-201' },\r\n { CodigoMO: 'T16', CodigoMaterial: '02CFO-108-204' },\r\n]\r\nexport const CodsMapeoMOMaterialSopladoTroncal: iMapeoMOMaterialSoplado[] = [\r\n { CodigoMO: '042004400', CodigoMaterial: '02CFO-107-206' },\r\n { CodigoMO: '041704500', CodigoMaterial: '02CFO-107-204' },\r\n { CodigoMO: '041704300', CodigoMaterial: '02CFO-107-208' },\r\n { CodigoMO: '041704200', CodigoMaterial: '02CFO-107-209' },\r\n]","export const CompararFechas = (Fecha1: Date, Fecha2?: Date): boolean => {\r\n const hoy = Fecha2 ? new Date(Fecha2) : new Date();\r\n hoy.setHours(0, 0, 0, 0);\r\n const fecParteDiario = new Date(Fecha1);\r\n fecParteDiario.setHours(0, 0, 0, 0);\r\n return fecParteDiario.getTime() === hoy.getTime();\r\n}\r\n","export const DocumentacionReplanteo: any[] = [\r\n {\r\n \"id\": 1,\r\n \"label\": \"REGISTRO FOTOGRAFICO\",\r\n \"Children\": [],\r\n \"IsDebug\": false,\r\n \"Titulo\": \"REGISTRO FOTOGRAFICO\",\r\n \"Codigo\": \"Cod1\",\r\n \"Descripcion\": \"REGISTRO FOTO GRAFICO\",\r\n \"Files\": [],\r\n \"Extension\": [\r\n \"ALL\"\r\n ],\r\n \"Size\": {\r\n \"IsDebug\": false,\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": false,\r\n \"Estado\": {\r\n \"IsDebug\": false,\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n },\r\n \"CantidadMin\": 0.0,\r\n \"CantidadMax\": 0.0\r\n },\r\n {\r\n \"id\": 2,\r\n \"label\": \"PLANO AUXILIAR\",\r\n \"Children\": [],\r\n \"IsDebug\": false,\r\n \"Titulo\": \"PLANO AUXILIAR\",\r\n \"Codigo\": \"Cod2\",\r\n \"Descripcion\": \"PLANO AUXILIAR\",\r\n \"Files\": [],\r\n \"Extension\": [\r\n \"ALL\"\r\n ],\r\n \"Size\": {\r\n \"IsDebug\": false,\r\n \"Size\": 50,\r\n \"UM\": \"mb\"\r\n },\r\n \"Requerido\": true,\r\n \"Estado\": {\r\n \"IsDebug\": false,\r\n \"ID_Estado\": 1,\r\n \"Nombre\": \"ACTIVO\"\r\n },\r\n \"CantidadMin\": 0.0,\r\n \"CantidadMax\": 0.0\r\n }\r\n]","export const GetCodigoFechaActual = (): string => {\r\n // const diaString = new Date().toLocaleString().split(\",\")[0]\r\n // const dia = diaString.split('/')[0].padStart(2, '0')\r\n // const mes = diaString.split('/')[1].padStart(2, '0')\r\n // const año = diaString.split('/')[2].padStart(2, '0')\r\n const diaString = new Date()\r\n const dia = diaString.getDate().toString().padStart(2, '0')\r\n const mes = (diaString.getMonth() + 1).toString().padStart(2, '0')\r\n const año = diaString.getFullYear().toString()\r\n return `${año}${mes}${dia}`\r\n}","import { MaterialAmapDto } from '../../dtos/MaterialAmapDto'\r\nimport { DetalleManoObraChileDto } from '../../dtos/DetalleManoObraChileDto'\r\nimport { PreciosAgenciaDto } from '../../dtos/PreciosAgenciaDto'\r\nimport { PreciosContrataDto } from '../../dtos/PreciosContrataDto'\r\nimport { generarModeloAmap } from './generarModeloAmap'\r\nimport { AmapDto } from '../../dtos/AmapDto'\r\nimport { filtrarMONoReservada } from './filtrarMONoReservada'\r\n\r\nexport interface PrecioEspecialidad {\r\n Simbolo: string\r\n Moneda: string\r\n Decimales: number\r\n Especialidad: { Codigo: string }\r\n ContratoOT: { Codigo: string }\r\n Agencias: PreciosAgenciaDto[]\r\n Contratistas: PreciosContrataDto[]\r\n}\r\n\r\nexport interface ManoObraGlobal {\r\n Amap: number\r\n Codigo: string\r\n Actividad: string\r\n Alcance: string\r\n Unidad: { Nombre: string }\r\n DetalleChile: DetalleManoObraChileDto\r\n ContratoOT: { Codigo: string }\r\n Material: MaterialAmapDto[]\r\n}\r\n\r\nexport interface Obra {\r\n DetalleChile: { numoe: string, codigo: string, agencia: string }\r\n Pais: { Codigo: string }\r\n Delegacion: { Codigo: string }\r\n}\r\n\r\nexport interface ManoObra {\r\n Valorizacion: AmapDto[]\r\n}\r\n\r\ninterface params {\r\n dataManoObraGlobal: ManoObraGlobal[]\r\n dataPrecioEspecialidad: PrecioEspecialidad[]\r\n Obra: Obra\r\n ManoObra: ManoObra\r\n}\r\n\r\nexport function ObtenerMONoReservada(params: params) {\r\n\r\n const { dataManoObraGlobal, dataPrecioEspecialidad, Obra, ManoObra } = params\r\n const ModelosAmap: AmapDto[] = []\r\n\r\n for (const ManoObraGlobal of dataManoObraGlobal) {\r\n for (const MOB of ManoObraGlobal.DetalleChile.ManoObraBaremo) {\r\n\r\n const matchPrecioEspecialidad = dataPrecioEspecialidad.filter(p =>\r\n p.Especialidad.Codigo === MOB.Especialidad.Codigo &&\r\n p.ContratoOT.Codigo === ManoObraGlobal.ContratoOT.Codigo\r\n )\r\n\r\n if (matchPrecioEspecialidad.length !== 1) {\r\n console.warn(`No se pudo obtener Precio Especialidad para ManoObraGlobal: ${ManoObraGlobal.Codigo}, Codigo Especialidad: ${MOB.Especialidad.Codigo}`)\r\n continue\r\n }\r\n\r\n const agencia = matchPrecioEspecialidad[0].Agencias.filter(e => e.Codigo === Obra.DetalleChile.agencia)\r\n if (agencia.length !== 1) {\r\n console.warn(`No se pudo Obtener Agencia`)\r\n continue\r\n }\r\n\r\n const newModelo = generarModeloAmap({ ManoObraGlobal, MOB, Obra, PrecioEspecialidad: matchPrecioEspecialidad[0], Precio: agencia[0].Ultimo_Precio.Precio })\r\n ModelosAmap.push(newModelo)\r\n }\r\n }\r\n return filtrarMONoReservada({ ModelosAmap, ManoObra })\r\n}\r\n","import { AmapDto } from '../../dtos/AmapDto'\r\nimport { ManoObra } from './index'\r\n\r\ninterface params {\r\n ModelosAmap: AmapDto[]\r\n ManoObra: ManoObra\r\n}\r\n\r\nexport function filtrarMONoReservada(params: params) {\r\n return params.ModelosAmap.reduce((acc: AmapDto[], amap) => {\r\n // const exist = params.ManoObra.Valorizacion.find(e => e.DetalleChile.LineaCodigoCub === amap.DetalleChile.LineaCodigoCub)\r\n const exist = params.ManoObra.Valorizacion.find(e => e.DetalleChile.ManoObra.Codigo === amap.DetalleChile.ManoObra.Codigo)\r\n if (exist) return acc\r\n return [...acc, amap]\r\n }, [])\r\n}","import { IsValidDate } from '../../../shared/index'\r\nimport { PreciosVigentesDto, PrecioActividadDto } from './../../dtos/index'\r\n\r\ntype params = {\r\n actividad: PrecioActividadDto,\r\n FechaVerificar: Date\r\n}\r\n\r\nexport function ObtenerPrecioContratistaVigente({ actividad, FechaVerificar }: params): PreciosVigentesDto | null {\r\n const fechaVerificar = new Date(FechaVerificar)\r\n if (!IsValidDate(fechaVerificar)) throw Error(`La fecha de asignación del Trabajo no es válida.`)\r\n const Precios: PreciosVigentesDto[] = []\r\n actividad.Precios.forEach(precio => {\r\n const fechaInicio = new Date(precio.Vigencia.FechaInicio);\r\n if (!IsValidDate(fechaInicio)) throw Error(`La fecha de asignación del Trabajo no es válida.`)\r\n const fechaFin = new Date(precio.Vigencia.FechaFin);\r\n if (!IsValidDate(fechaFin)) throw Error(`La fecha de asignación del Trabajo no es válida.`)\r\n if (fechaVerificar.getTime() >= fechaInicio.getTime() && fechaVerificar.getTime() <= fechaFin.getTime()) {\r\n Precios.push(precio)\r\n }\r\n })\r\n if (Precios.length > 1) throw Error(`¡Se han identificado múltiples precios con fechas superpuestas!\\n${Precios.map(e => `Id_PrecioVigente: ${e.ID_PreciosVigentes}, Precio: ${e.Precio}, FechaInicio: ${e.Vigencia.FechaInicio}, FechaFin: ${e.Vigencia.FechaFin}\\n`).join('')}`)\r\n if (!Precios.length) return null\r\n return Precios[0]\r\n}","interface Obra {\r\n ZonaAsignada: string;\r\n Ubicacion: {\r\n Municipio: string;\r\n };\r\n Pais: {\r\n Codigo: string;\r\n };\r\n}\r\n\r\nexport function ObtenerZonaAsignada(Obra: Obra): string {\r\n const zonaMapping: Record<string, string> = {\r\n '512': Obra.ZonaAsignada,\r\n '004': Obra.ZonaAsignada,\r\n '480': Obra.Ubicacion.Municipio\r\n };\r\n\r\n return zonaMapping[Obra.Pais.Codigo] ? zonaMapping[Obra.Pais.Codigo] : Obra.ZonaAsignada\r\n}\r\n","import { NodoDocDto } from '../../../shared/dtos/NodoDocDto'\r\nimport { updateNodoAsfaltoRecursivo } from './updateNodoAsfaltoRecursivo'\r\nimport { updateNodosPorEspecialidad } from './updateNodosPorEspecialidad'\r\nimport { updateNodoZanjaRecursivo } from './updateNodoZanjaRecursivo'\r\n\r\ninterface params<T> {\r\n documentacion: T\r\n obra: {\r\n TotalesGeneralObra: {\r\n PresupuestadoTotalObra: {\r\n TotMetros: number\r\n }\r\n }\r\n }\r\n trabajo?: {\r\n Ultima_asignacion: { Valorizaciones: { Especialidad: { Codigo: string } }[] },\r\n Ultima_PreLiquidacion: {\r\n Valorizacion: {\r\n DetalleChile: { CodigoBarra: string },\r\n Ultimo_Estado_Interno: { Descripcion: string }\r\n }[]\r\n }\r\n }\r\n}\r\n\r\nexport interface IDocumentacion {\r\n Nodos: NodoDocDto[]\r\n}\r\n\r\nexport const UpdateNodosDocDP = <T extends IDocumentacion>({ documentacion, obra, trabajo }: params<T>) => {\r\n const metros = obra.TotalesGeneralObra.PresupuestadoTotalObra.TotMetros\r\n updateNodoZanjaRecursivo(documentacion.Nodos, metros)\r\n updateNodoAsfaltoRecursivo(documentacion.Nodos, metros)\r\n if (trabajo) {\r\n const codEspecialidadesAux = trabajo.Ultima_asignacion.Valorizaciones.map(e => e.Especialidad.Codigo)\r\n // si informan asphalt poner nodo asfalto en tab calidad cada 50 m (Carlos armará el modelo)\r\n const estados = ['PRODUCCION', 'CERTIFICADA', 'PRELIQUIDADA', 'LIQUIDADA', 'RECHAZADA POR DOCUMENTACION']\r\n const asphalt = trabajo.Ultima_PreLiquidacion.Valorizacion.some(val =>\r\n val.DetalleChile.CodigoBarra === 'Asphalt' &&\r\n estados.includes(val.Ultimo_Estado_Interno.Descripcion)\r\n )\r\n if (asphalt) codEspecialidadesAux.push('05-ASFALTADO')\r\n updateNodosPorEspecialidad(documentacion, codEspecialidadesAux)\r\n }\r\n return documentacion\r\n}","import { IDocumentacion } from './index'\r\n\r\nexport function updateNodosPorEspecialidad<T extends IDocumentacion>(documentacion: T, codEspecialidades: string[]) {\r\n documentacion.Nodos = documentacion.Nodos.filter(e => codEspecialidades.includes(e.Titulo.trim()))\r\n}","export const codClientes = [ // Residential\r\n '031406300',\r\n '031406400',\r\n '031406500',\r\n '010602400',\r\n '010602500',\r\n '073100700',\r\n '073100800',\r\n '073100900',\r\n '073101000',\r\n '073101100',\r\n '073101200',\r\n '073101300',\r\n '073101400',\r\n '073101500',\r\n '073106600',\r\n '073102400',\r\n]\r\nexport const codNoCliente = [ //Business\r\n '010602400',\r\n '073100700',\r\n '073100800',\r\n '073100900',\r\n '073101000',\r\n '073101100',\r\n '073101200',\r\n '073101300',\r\n '073101400',\r\n '073101500',\r\n '073006000',\r\n '073106600',\r\n '073102400',\r\n]\r\nexport const codSopladoRD = ['T14', 'T15', 'T16'] // Residential (Clientes)","export const codMOTroncal_ReglaLiquidacion1 = [\r\n '011304100',\r\n '062605200',\r\n '062605201',\r\n '010600300',\r\n '010600400',\r\n '010600500',\r\n '010600600',\r\n '010600700',\r\n '010600800',\r\n '010600900',\r\n '010601000',\r\n '010601100',\r\n '010601200',\r\n '010601300',\r\n '010601400',\r\n '010601500',\r\n '010601600',\r\n '010601700',\r\n '010601800',\r\n '010601900',\r\n '010602000',\r\n '010602100',\r\n '010602200',\r\n '010602300',\r\n '010602400',\r\n // '010602500',\r\n '010602600',\r\n '062705701',\r\n '062705702',\r\n '062705703',\r\n '062705704',\r\n '062705805',\r\n '062705806',\r\n '062705807',\r\n '062705808',\r\n '062605300',\r\n '062605301',\r\n '062605302',\r\n 'T13',\r\n 'T12',\r\n 'T21',\r\n 'T22',\r\n 'T8',\r\n 'T2',\r\n 'T20',\r\n 'T23',\r\n 'T24',\r\n 'T25',\r\n]\r\nexport const codMOClientes_ReglaLiquidacion1 = [\r\n '010602400',\r\n '031406300',\r\n '031406400',\r\n '031406500',\r\n 'T22',\r\n]\r\nexport const codMONoClientes_ReglaLiquidacion1 = [\r\n '073006000', // Codigo de baliza\r\n 'T22',\r\n]\r\n\r\nexport const codMOPublico = [ //Para regla de preliquidacion Clientes y No Clientes\r\n '010602500',\r\n '073100700',\r\n '073100800',\r\n '073100900',\r\n '073101000',\r\n '073101100',\r\n '073101200',\r\n '073101300',\r\n '073101400',\r\n '073101500',\r\n]","export const codigosMaterialDuctos = [\r\n '03DUC-110-209',\r\n '03DUC-110-211',\r\n '03DUC-110-201',\r\n '03DUC-110-207',\r\n '03DUC-110-213',\r\n '03DUC-110-202',\r\n '03DUC-110-208',\r\n '03DUC-110-214',\r\n '03DUC-110-205',\r\n '03DUC-110-215',\r\n '03DUC-110-204',\r\n '03DUC-110-203',\r\n '03DUC-110-210',\r\n '03DUC-118-202',\r\n '03DUC-118-201',\r\n '03DUC-118-204',\r\n]","export const codigosMaterialUGG = [\r\n '03DUC-110-209', '03DUC-110-211', '05PAO-113-201', '05PAO-113-203',\r\n '05PAO-113-208', '05PAO-114-202', '02CFO-108-204', '05PAO-112-205',\r\n '05PAO-113-206', '02CFO-108-201', '03DUC-110-201', '05PAO-113-204',\r\n '03DUC-110-207', '05PAO-112-204', '02CFO-107-208', '03DUC-110-213',\r\n '05PAO-112-202', '02CFO-108-202', '02CFO-108-203', '03DUC-110-202',\r\n '05PAO-112-201', '02CFO-107-206', '02CFO-107-207', '02CFO-107-209',\r\n '05PAO-113-207', '03DUC-110-208', '03DUC-110-214', '03DUC-110-205',\r\n '07CPE-116-201', '03DUC-110-215', '03DUC-110-206', '05PAO-113-202',\r\n '03DUC-110-204', '05PAO-114-201', '02CFO-108-205', '03DUC-110-203',\r\n '05PAO-113-205', '02CFO-107-204', '03DUC-110-210', '05PAO-112-203',\r\n '06ARQ-115-209', '06ARQ-115-207', '06ARQ-115-210', '06ARQ-115-206',\r\n '06ARQ-115-208', '05PAO-113-211', '02CFO-107-212', '02CFO-107-213',\r\n '03DUC-118-202', '05PAO-113-212', '03DUC-118-201', '06ARQ-115-213',\r\n '02CFO-107-211', '06ARQ-115-211', '02CFO-107-210', '05PAO-113-214',\r\n '05PAO-113-213', '06ARQ-115-212', '03DUC-117-201', '02CFO-107-202',\r\n '04DPO-111-204', '02CFO-107-203', '04DPO-111-207', '08POP-119-202',\r\n '02CFO-107-205', '08POP-119-201', '04DPO-111-203', '05PAO-112-206',\r\n '05PAO-113-209', '05PAO-112-207', '01ODF-103-201', '05PAO-114-205',\r\n '04DPO-111-206', '03DUC-117-210', '03DUC-117-206', '03DUC-117-203',\r\n '03DUC-117-207', '03DUC-117-211', '03DUC-117-208', '03DUC-117-202',\r\n '03DUC-117-204', '03DUC-117-205', '03DUC-117-209', '01ODF-105-201',\r\n '01ODF-102-204', '01ODF-105-205', '01ODF-102-205', '01ODF-101-201',\r\n '01ODF-102-202', '01ODF-102-203', '04DPO-111-202', '04DPO-111-201',\r\n '04DPO-111-205', '02CFO-107-201', '01ODF-102-201', '03DUC-118-204'\r\n]","interface PaisMap {\r\n [key: string]: {\r\n CantidadMin: number\r\n }\r\n}\r\n\r\nexport const paisMap: PaisMap = {\r\n '480': { CantidadMin: 2 },\r\n '512': { CantidadMin: 0 },\r\n '004': { CantidadMin: 0 },\r\n}"],"names":["Position","ModelDataFlujosDocumentacionReplanteo","Action","Fecha","Date","Usuario","Description","Posicion","Icono","ColorIcono","TagPagina","EstadoDto","this","GeneralCodigoNombreDto","GeneralCodigoNombreUnidadDto","UsuarioDto","IsValidDate","date","Params","left","DetalleChileReservaMODto","WBEDto","DetalleManoObraChileDto","DatosManoObraGlobalDto","DatosPrecioEspecialidadDto","DatosUnidadObraMaterialDto","DatosCatalogoMODto","AmapDto","hashCode","str","hash","i","length","charCodeAt","Math","abs","toString","DocumentacionHPBussines","id","label","Children","Titulo","Codigo","Descripcion","Files","Filename","Extension","CodigoNodo","NameOriginal","Size","UM","Ruta","Observacion","Coordenadas","X","Y","Fecha_Archivo","Ultimo_Flujo","Identificacion","Apellidos","Nombres","Visible","Flujos","Estado","ID_Estado","Nombre","Requerido","CantidadMin","CantidadMax","modelDROP","modelCABLE","modelARMARIO","DocumentacionHPResidential","ID_DocumentacionPEX","TipoObra","Sistema","Pais","Delegacion","Nodos","Bitacora","dataFlujosHomePass","updateChildren","numAdd","_step2","_iterator2","_createForOfIteratorHelperLoose","done","nodo","value","Number","_ref","manoObra","ContratoOT","envSIGO","SISTEMAS_VALORIZACION_MANO_OBRA","includes","obra","CheckPrecioMO","_step","_iterator","Valorizacion","valorizacion","_valorizacion$DatosCa","DatosCatalogoMO","ManoObraBaremo","DatosManoObraGlobal","DetalleChile","Agencias","DatosPrecioEspecialidad","Error","agencia","find","e","Precio","Ultimo_Precio","PuntoBaremo","sistema","onNet","default","reserva","Item","_item$DatosCatalogoIt","_item$DatosCatalogoIt2","item","tipo","DatosCatalogoItem","DatosItem","Tipo","precio","DatosPrecioMaterial","Valor","trim","ManoObra","Reserva","StockPersonal","ResumenPreLiquidado","Array","isArray","_loop","CantidadUsado","val","MoUo","LineaCodigoCub","Cantidad","_loop2","CantidadUsados","itemAUX","MatUtilizados","_step3","_loop3","stockPersonal","Liquidacion","stock","MatStockPersonal","ID_Trabajo","Personal","Despacho","_iterator3","CodigoLlave","trabajos","valorizacionMO","_valorizacionMO$Datos","console","error","Ultima_PreLiquidacion","EmpresaContratistaEnPrecioEspecialidad","Obra","ZonaAsignada","512","Zonas","toUpperCase","004","480","trabajo","reduce","acc","Ultimo_Estado_Interno","_ret","hpmo","hpmoAux","ID_HPListMO","CantidadUtilizado","v","concat","HomePass","MatRetirados","trabajoDB","CantidadUO","push","mu","muAux","matStockPersonal","Ultima_asignacion","MaterialesUtilizados","_step4","_loop4","mr","_iterator4","MaterialesRetirados","MatStockAlmacen","Motivo","matStockAlmacen","Empresa","CodigoMO","CodigoMaterial","CodMatConector","CantidadPorDucto","Alcance","Fecha1","Fecha2","hoy","setHours","fecParteDiario","getTime","options","_value","structuredClone","_temp","_Number","_ref$symbolCoin","symbolCoin","_ref$symbolCoinPositi","symbolCoinPosition","_ref$isPorcent","isPorcent","_ref$decimal","decimal","_ref$codeCountry","codeCountry","_ref$currency","currency","_isValidFormatCodeCountry","_codeCountry","test","isValidFormatCodeCountry","_decimal","Intl","NumberFormat","style","format","toFixed","valueFormated","_Number2","formaterMiles","isFinite","isNaN","ValidateValue","_value2","_value3","split","reverse","n","replace","ParserDiffFormatValue","replaceAll","parseFloat","ParserValue","IsDebug","diaString","dia","getDate","padStart","mes","getMonth","getFullYear","params","dataPrecioEspecialidad","ModelosAmap","ManoObraGlobal","MOB","matchPrecioEspecialidad","filter","p","Especialidad","warn","newModelo","PrecioEspecialidad","_Obra$DetalleChile2","codigoVal","_Obra$DetalleChile","codigo","newDto","CodigoCub","Linea","Actividad","Clave","Tarea","UnidadMedida","Unidad","UnidadObra","generarModeloDetalleChile","newAmap","Amap","Total","Moneda","Simbolo","Decimales","WBE","CodigoWBE","CantidadUOAprobada","Material","Contratistas","DatosUnidadObraMaterial","Materiales","generarModeloAmap","dataManoObraGlobal","amap","filtrarMONoReservada","actividad","fechaVerificar","FechaVerificar","Precios","forEach","fechaInicio","Vigencia","FechaInicio","fechaFin","FechaFin","map","ID_PreciosVigentes","join","zonaMapping","Ubicacion","Municipio","documentacion","metros","TotalesGeneralObra","PresupuestadoTotalObra","TotMetros","updateNodoZanjaRecursivo","nodos","nodoCod110","childrenAux","numCod110","ceil","newNodosCod110","index","inicial","final","textAdd","newNodo","updateNodoAsfaltoRecursivo","nodoCod100","codEspecialidadesAux","Valorizaciones","estados","some","CodigoBarra","codEspecialidades","updateNodosPorEspecialidad","modelDROPAux","modelCABLEAux","modelARMARIOAux"],"mappings":"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"}