@restforgejs/platform 5.3.6 → 5.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/cli/designer.js +1 -1
- package/generators/cli/fast-track.js +272 -53
- package/generators/cli/init.js +37 -3
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x4293(_0x3dbc5e,_0x284e13){_0x3dbc5e=_0x3dbc5e-0x81;const _0x22fb14=a0_0x22fb();let _0x4293b1=_0x22fb14[_0x3dbc5e];if(a0_0x4293['qKJHeY']===undefined){var _0x144916=function(_0xaa06e2){const _0x32f128='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3bcff6='',_0x3f2622='';for(let _0x136c64=0x0,_0x20b7f9,_0x1c2115,_0x10e96a=0x0;_0x1c2115=_0xaa06e2['charAt'](_0x10e96a++);~_0x1c2115&&(_0x20b7f9=_0x136c64%0x4?_0x20b7f9*0x40+_0x1c2115:_0x1c2115,_0x136c64++%0x4)?_0x3bcff6+=String['fromCharCode'](0xff&_0x20b7f9>>(-0x2*_0x136c64&0x6)):0x0){_0x1c2115=_0x32f128['indexOf'](_0x1c2115);}for(let _0x2dd33f=0x0,_0x4d3d49=_0x3bcff6['length'];_0x2dd33f<_0x4d3d49;_0x2dd33f++){_0x3f2622+='%'+('00'+_0x3bcff6['charCodeAt'](_0x2dd33f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3f2622);};a0_0x4293['NeOhyW']=_0x144916,a0_0x4293['IYwbJH']={},a0_0x4293['qKJHeY']=!![];}const _0x1169ea=_0x22fb14[0x0],_0x1601eb=_0x3dbc5e+_0x1169ea,_0x4ddec0=a0_0x4293['IYwbJH'][_0x1601eb];return!_0x4ddec0?(_0x4293b1=a0_0x4293['NeOhyW'](_0x4293b1),a0_0x4293['IYwbJH'][_0x1601eb]=_0x4293b1):_0x4293b1=_0x4ddec0,_0x4293b1;}const a0_0x7ddcf5=a0_0x4293;(function(_0xc31e54,_0x1b1ed7){const _0x4e72d1=a0_0x4293,_0x3a14a7=_0xc31e54();while(!![]){try{const _0x49df37=-parseInt(_0x4e72d1(0x91))/0x1*(parseInt(_0x4e72d1(0xcc))/0x2)+parseInt(_0x4e72d1(0xd6))/0x3*(-parseInt(_0x4e72d1(0x89))/0x4)+-parseInt(_0x4e72d1(0x9f))/0x5*(parseInt(_0x4e72d1(0x8c))/0x6)+-parseInt(_0x4e72d1(0xd1))/0x7+parseInt(_0x4e72d1(0xc2))/0x8+-parseInt(_0x4e72d1(0xa4))/0x9+parseInt(_0x4e72d1(0xd3))/0xa;if(_0x49df37===_0x1b1ed7)break;else _0x3a14a7['push'](_0x3a14a7['shift']());}catch(_0x41d37c){_0x3a14a7['push'](_0x3a14a7['shift']());}}}(a0_0x22fb,0x3f51f));const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');function a0_0x22fb(){const _0x3667aa=['y29UBMvJDgLVBNnpCgvU','BgvUz3rO','rejFue9ptf9nqvG','Dezmwu8','zxHWB3j0CW','EwXUyLO','rejFueftu1DpuKq','B3jHy2XL','tuHVqvK','zxHLy3v0zvf1zxj5','zMv0y2HbC0j1zMzLCG','Bg9JywXOB3n0','mJHuALLqsvu','y2XVC2vqB29S','CeLdA00','mJu2mJa2t1z0uwDM','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','z2v0q29UBMvJDgLVBG','A3LfAue','zw52','mtiYmJDXwhLwvLO','sMnZCMe','rejFse9tva','zgvIDwC','CKDlrLu','Aw5MBW','t3jHy2XLienVBM5Ly3rPB24Gu3rYAw5NoIa','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','zxHLy3v0zq','qKXpqG','t3jHy2XLifnrtcbfCNjVCJOG','rejFvvnfuG','r2HYAw8','y2XVC2u','ntbQuhD4A0G','Cg9VBe1PBG','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','u0Lhsu5u','mte5nZe1m0z0CM5twa','B3jHy2XLx3bVB2XFy3jLyxrPBMC','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','Cg9VBa','DhjHBNnHy3rPB25Fy29TCgXLDgu','mtuYmq','B3jHy2XLx3bVB2XFy2XVC2vFzxjYB3i','uKHqrMK','C3fSx2vYCM9Y','rwT5zuy','y3jLyxrLug9VBa','t1vux0zpuK1bvf9pqKPfq1q','zxHPDa','BxmSia','Aw5PDgLHBgL6zvbVB2W','C3fS','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','Cg9VBeLUy3jLBwvUDa','x25SC1jLywr5','ChvZAa','Cg9VBefSAwfZ','y29TBwL0','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','zxHLy3v0zvrYyw5Zywn0Aw9U','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','rejFue9ptf9jtKnsru1ftLq','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','mtmZnZeYBhfuzwXv','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','u0Lhvevstq','CM9SBgjHy2S','DgvZDenVBM5Ly3rPB24','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','rxjYB3iGy2XVC2LUzYb0zxn0ignVBM5Ly3rPB246ia','D2vvu04','wuLYCvy','ugXOuLC','nZzerfnrq2K','CM93CW','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','B3jHy2XLx3bVB2XFy2XVC2vK','q0XpqG','mtKYnde2me91Efv2vq','rxHcwKG','mtu1mdu1mdbqqwPOAeK','C3rHCNq','BwvZC2fNzq','mZu4ogHhu05psW','A21csg8','CM93C0fMzMvJDgvK','Bw94shC','y29UzMLN','zMv0y2HbC1n0CMLUzW','CgfYyw1Z'];a0_0x22fb=function(){return _0x3667aa;};return a0_0x22fb();}oracledb[a0_0x7ddcf5(0xdb)]=[oracledb['CLOB'],oracledb['NCLOB']],oracledb[a0_0x7ddcf5(0x87)]=[oracledb[a0_0x7ddcf5(0x9a)]];async function ensureNlsReady(_0x12c64c){const _0x5ed16b=a0_0x7ddcf5,_0x365580='3|2|0|4|1'['split']('|');let _0x8e91b7=0x0;while(!![]){switch(_0x365580[_0x8e91b7++]){case'0':await _0x12c64c[_0x5ed16b(0x99)](_0x5ed16b(0x8d));continue;case'1':_0x12c64c[_0x5ed16b(0xb6)]=!![];continue;case'2':await _0x12c64c[_0x5ed16b(0x99)]('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;case'3':if(_0x12c64c['_nlsReady'])return;continue;case'4':await _0x12c64c['execute'](_0x5ed16b(0xbf));continue;}break;}}class OracleDatabase{constructor(){const _0x1bf111=a0_0x7ddcf5,_0x1a4ab9={'zVUGn':function(_0x5f30fb,_0x32a020){return _0x5f30fb(_0x32a020);},'vMYfG':function(_0x1da40d,_0x52f411){return _0x1da40d(_0x52f411);},'Veqrq':_0x1bf111(0x88),'DVTHY':_0x1bf111(0xa9)};this[_0x1bf111(0xa7)]=null,this['config']={'user':process[_0x1bf111(0x90)][_0x1bf111(0x9c)]||'hr','password':process[_0x1bf111(0x90)][_0x1bf111(0x83)]||'hr','connectString':this[_0x1bf111(0xa2)](),'poolMin':_0x1a4ab9['zVUGn'](parseInt,process[_0x1bf111(0x90)]['DB_POOL_MIN'])||0x2,'poolMax':parseInt(process[_0x1bf111(0x90)][_0x1bf111(0xdf)])||0xa,'poolIncrement':parseInt(process[_0x1bf111(0x90)][_0x1bf111(0xc0)])||0x1,'poolTimeout':_0x1a4ab9['vMYfG'](parseInt,process['env']['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x1bf111(0xd0)],oracledb['NCLOB']],'fetchAsBuffer':[oracledb[_0x1bf111(0x9a)]]},logDatabaseConfig({'host':process[_0x1bf111(0x90)]['DB_HOST']||_0x1a4ab9['Veqrq'],'port':process['env']['DB_PORT']||_0x1a4ab9['DVTHY'],'database':process['env']['DB_NAME']||'XE','type':_0x1bf111(0x84),'user':this[_0x1bf111(0xda)]['user'],'poolMin':this['config']['poolMin'],'poolMax':this[_0x1bf111(0xda)]['poolMax']});}[a0_0x7ddcf5(0xa2)](){const _0xadbeb5=a0_0x7ddcf5,_0x12cf9f={'XveHl':'localhost','wtxNu':_0xadbeb5(0xc7)},_0x2ac427=process['env'][_0xadbeb5(0x93)]||_0x12cf9f['XveHl'],_0x4ebdcb=process[_0xadbeb5(0x90)]['DB_PORT']||'1521',_0x4dbc3f=process['env']['DB_NAME']||'XE',_0x2af8c3='//'+_0x2ac427+':'+_0x4ebdcb+'/'+_0x4dbc3f;return logger[_0xadbeb5(0x94)]({'event':_0x12cf9f['wtxNu'],'connectionString':_0x2af8c3},_0xadbeb5(0x97)+_0x2af8c3),_0x2af8c3;}async[a0_0x7ddcf5(0xb2)](){const _0x3a6ecd=a0_0x7ddcf5,_0x467a35={'edaIo':'oracle_pool_created','weUSN':'Oracle\x20connection\x20pool\x20created\x20successfully','NnAZK':'oracle_pool_exists','FGErx':_0x3a6ecd(0xa5),'pyAoR':function(_0x4c0396,_0x385dd4,_0x43f98b,_0x5d4a72){return _0x4c0396(_0x385dd4,_0x43f98b,_0x5d4a72);}};try{const _0x5df6d2='2|3|1|0|4'['split']('|');let _0x1d8fad=0x0;while(!![]){switch(_0x5df6d2[_0x1d8fad++]){case'0':logger['info']({'event':_0x467a35['edaIo']},_0x467a35[_0x3a6ecd(0xc9)]);continue;case'1':this['pool']=await oracledb[_0x3a6ecd(0xae)](this[_0x3a6ecd(0xda)]);continue;case'2':if(this[_0x3a6ecd(0xa7)]){logger['debug']({'event':_0x467a35['NnAZK']},'Oracle\x20connection\x20pool\x20sudah\x20ada');return;}continue;case'3':logger['info']({'event':_0x467a35['FGErx']},'Creating\x20Oracle\x20connection\x20pool...');continue;case'4':await this[_0x3a6ecd(0xc6)]();continue;}break;}}catch(_0x4b13b9){_0x467a35['pyAoR'](logError,_0x4b13b9,{'event':'oracle_pool_error'},'Error\x20saat\x20membuat\x20Oracle\x20connection\x20pool:\x20'+_0x4b13b9['message']);throw _0x4b13b9;}}async[a0_0x7ddcf5(0xc6)](){const _0x558edb=a0_0x7ddcf5,_0x39dcc9={'kmBHo':_0x558edb(0xbb),'ldVtG':_0x558edb(0xc1)};let _0x51430f;try{logger['debug']({'event':'oracle_connection_test_start'},_0x558edb(0xb4)),_0x51430f=await this['pool'][_0x558edb(0x8e)](),await ensureNlsReady(_0x51430f);const _0x1ffb41=await _0x51430f['execute']('SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL');logger[_0x558edb(0x96)]({'event':'oracle_connection_test_success','currentDate':_0x1ffb41[_0x558edb(0xcd)][0x0][0x0],'currentUser':_0x1ffb41['rows'][0x0][0x1]},'Oracle\x20connection\x20test\x20berhasil\x20-\x20User:\x20'+_0x1ffb41[_0x558edb(0xcd)][0x0][0x1]);}catch(_0xde101e){logError(_0xde101e,{'event':_0x39dcc9[_0x558edb(0xd7)]},_0x558edb(0xc3)+_0xde101e['message']);throw _0xde101e;}finally{if(_0x51430f)try{await _0x51430f['close']();}catch(_0x40af04){logError(_0x40af04,{'event':_0x39dcc9['ldVtG']},_0x558edb(0xc8)+_0x40af04[_0x558edb(0xd5)]);}}}async[a0_0x7ddcf5(0x86)](_0x846066,_0x82965c=[],_0x1e9b46={}){const _0x1c7fc2=a0_0x7ddcf5,_0x4c5033={'kyEiA':function(_0x16436f,_0x1bc64d){return _0x16436f(_0x1bc64d);},'trJZL':function(_0x4c569b){return _0x4c569b();},'ylnbZ':function(_0x40280b,_0x1debbf,_0x280c0f,_0x4c3df5){return _0x40280b(_0x1debbf,_0x280c0f,_0x4c3df5);},'OpbpM':function(_0x325d67){return _0x325d67();}};let _0x5befab;const _0x55b7e1=startQueryTimer();try{!this['pool']&&await this['initializePool']();_0x5befab=await this['pool'][_0x1c7fc2(0x8e)](),await _0x4c5033[_0x1c7fc2(0x8f)](ensureNlsReady,_0x5befab);const _0xaf2dc={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x1e9b46['autoCommit']!==undefined?_0x1e9b46['autoCommit']:!![],..._0x1e9b46},_0x2c5c0b=await _0x5befab[_0x1c7fc2(0x99)](_0x846066,_0x82965c,_0xaf2dc),_0x1b65f7=_0x4c5033['trJZL'](_0x55b7e1),_0x3fe033=_0x2c5c0b['rows']?_0x2c5c0b[_0x1c7fc2(0xcd)][_0x1c7fc2(0xde)]:_0x2c5c0b['rowsAffected'];return _0x4c5033[_0x1c7fc2(0x82)](logQuery,_0x846066,_0x82965c,{'duration':_0x1b65f7,'rowsAffected':_0x3fe033,'dbType':'oracle'}),_0x2c5c0b['rows']?_0x2c5c0b[_0x1c7fc2(0xcd)]:{'rowsAffected':_0x2c5c0b[_0x1c7fc2(0xd8)],'lastRowid':_0x2c5c0b['lastRowid']};}catch(_0x2508b0){const _0x1b18d5=_0x4c5033['OpbpM'](_0x55b7e1);_0x4c5033['ylnbZ'](logError,_0x2508b0,{'event':_0x1c7fc2(0xac),'query':_0x846066['substring'](0x0,0x1f4),'paramCount':_0x82965c[_0x1c7fc2(0xde)],'durationMs':_0x1b18d5,'code':_0x2508b0['errorNum'],'dbType':'oracle'},_0x1c7fc2(0x9b)+_0x2508b0['message']);throw _0x2508b0;}finally{if(_0x5befab)try{await _0x5befab[_0x1c7fc2(0x9e)]();}catch(_0x3ec3d7){logError(_0x3ec3d7,{'event':'oracle_connection_close_error'},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x3ec3d7['message']);}}}async[a0_0x7ddcf5(0xbe)](_0x40efa4){const _0x147be8=a0_0x7ddcf5,_0x31fcdb={'SqDyo':function(_0x13ed7c,_0x56a578){return _0x13ed7c(_0x56a578);},'MHoAY':function(_0x11e828,_0x2ddfce,_0x3b617a){return _0x11e828(_0x2ddfce,_0x3b617a);},'ExBZH':function(_0xd6282a){return _0xd6282a();},'RHPFi':_0x147be8(0xb9),'Ghrio':_0x147be8(0xa8),'YIrqV':function(_0x3b2ab2){return _0x3b2ab2();},'VjsoM':'transaction_error','PlhRW':function(_0x45bf58,_0x2bf4a1,_0x2ca20b,_0x5931e8){return _0x45bf58(_0x2bf4a1,_0x2ca20b,_0x5931e8);},'rGKFU':'rollback_error','tFLYO':function(_0x1b43c5,_0xce1f05,_0x449f8d,_0x27f0a3){return _0x1b43c5(_0xce1f05,_0x449f8d,_0x27f0a3);}};let _0x4cd617;const _0x1b18b8=startQueryTimer();try{!this['pool']&&await this['initializePool']();_0x4cd617=await this[_0x147be8(0xa7)][_0x147be8(0x8e)](),await _0x31fcdb['SqDyo'](ensureNlsReady,_0x4cd617),_0x31fcdb['MHoAY'](logTransaction,_0x147be8(0xd4),_0x40efa4[_0x147be8(0xde)]);const _0x23586f=[];for(const _0x18e93d of _0x40efa4){const _0x18550b=_0x31fcdb[_0x147be8(0xd2)](startQueryTimer),_0x3fef48=await _0x4cd617[_0x147be8(0x99)](_0x18e93d[_0x147be8(0xb3)],_0x18e93d[_0x147be8(0xdc)]||[],{'autoCommit':![],'outFormat':oracledb[_0x147be8(0xaf)]}),_0x5a68b7=_0x18550b(),_0x133052=_0x3fef48[_0x147be8(0xcd)]?_0x3fef48['rows']['length']:_0x3fef48['rowsAffected'];logQuery(_0x18e93d['sql'],_0x18e93d[_0x147be8(0xdc)]||[],{'duration':_0x5a68b7,'rowsAffected':_0x133052,'dbType':'oracle'}),_0x23586f[_0x147be8(0xb7)](_0x3fef48);}await _0x4cd617['commit']();const _0x49210a=_0x1b18b8();return _0x31fcdb[_0x147be8(0x85)](logTransaction,_0x31fcdb[_0x147be8(0xab)],_0x40efa4[_0x147be8(0xde)]),logger[_0x147be8(0x96)]({'event':_0x31fcdb[_0x147be8(0x9d)],'queryCount':_0x40efa4[_0x147be8(0xde)],'totalDurationMs':_0x49210a,'dbType':'oracle'},'Oracle\x20transaction\x20committed\x20('+_0x49210a+_0x147be8(0xb1)+_0x40efa4['length']+'\x20queries)'),_0x23586f;}catch(_0xbc1cae){const _0x7fcb39=_0x31fcdb[_0x147be8(0xca)](_0x1b18b8);logError(_0xbc1cae,{'event':_0x31fcdb['VjsoM'],'queryCount':_0x40efa4['length'],'totalDurationMs':_0x7fcb39,'code':_0xbc1cae['errorNum'],'dbType':'oracle'},_0x147be8(0xce)+_0xbc1cae['message']);if(_0x4cd617)try{await _0x4cd617['rollback'](),logTransaction(_0x147be8(0xc5),_0x40efa4[_0x147be8(0xde)]);}catch(_0x5ae6ce){_0x31fcdb[_0x147be8(0xcb)](logError,_0x5ae6ce,{'event':_0x31fcdb[_0x147be8(0x95)],'dbType':'oracle'},_0x147be8(0xba)+_0x5ae6ce['message']);}throw _0xbc1cae;}finally{if(_0x4cd617)try{await _0x4cd617[_0x147be8(0x9e)]();}catch(_0x2c2bd4){_0x31fcdb[_0x147be8(0xe0)](logError,_0x2c2bd4,{'event':'oracle_transaction_connection_close_error'},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x2c2bd4['message']);}}}async['closePool'](){const _0x54f04f=a0_0x7ddcf5,_0x279097={'EkyeF':'Closing\x20Oracle\x20connection\x20pool...','EaihW':_0x54f04f(0xcf),'mnZVH':_0x54f04f(0xbc),'pICkM':function(_0x4ae69e,_0x4a8119,_0x54eaca,_0xa95145){return _0x4ae69e(_0x4a8119,_0x54eaca,_0xa95145);},'moxHw':_0x54f04f(0xaa)};try{this[_0x54f04f(0xa7)]&&(logger['info']({'event':'oracle_pool_closing'},_0x279097[_0x54f04f(0xad)]),await this['pool']['close'](0xa),this[_0x54f04f(0xa7)]=null,logger[_0x54f04f(0x96)]({'event':_0x279097['EaihW']},_0x279097['mnZVH']));}catch(_0x4e1588){_0x279097[_0x54f04f(0x8b)](logError,_0x4e1588,{'event':_0x279097[_0x54f04f(0xd9)]},_0x54f04f(0xa6)+_0x4e1588[_0x54f04f(0xd5)]);throw _0x4e1588;}}['getPoolStatistics'](){const _0xd0aaa4=a0_0x7ddcf5,_0x5f5d37={'RXLXq':'Pool\x20not\x20initialized'};if(!this['pool'])return{'status':_0x5f5d37['RXLXq']};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this[_0xd0aaa4(0xa7)][_0xd0aaa4(0xdd)],'poolAlias':this[_0xd0aaa4(0xa7)][_0xd0aaa4(0xb8)],'poolMin':this[_0xd0aaa4(0xa7)][_0xd0aaa4(0xa0)],'poolMax':this['pool']['poolMax'],'poolIncrement':this['pool'][_0xd0aaa4(0xb5)],'poolTimeout':this[_0xd0aaa4(0xa7)]['poolTimeout'],'status':'Active'};}}const oracleDb=new OracleDatabase();process['on']('SIGINT',async()=>{const _0x59654b=a0_0x7ddcf5,_0x5237b0={'Jcsra':_0x59654b(0xa3),'OaIou':_0x59654b(0xbd)};logger['info']({'event':'oracle_shutdown','signal':_0x5237b0['Jcsra']},_0x5237b0['OaIou']);try{await oracleDb[_0x59654b(0x8a)](),process[_0x59654b(0xb0)](0x0);}catch(_0x54ac69){logError(_0x54ac69,{'event':_0x59654b(0xa1),'signal':_0x5237b0[_0x59654b(0x92)]},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x54ac69[_0x59654b(0xd5)]),process['exit'](0x1);}}),process['on'](a0_0x7ddcf5(0xc4),async()=>{const _0x3ace2b=a0_0x7ddcf5,_0x38c5d1={'tCfiy':function(_0x25781e,_0x1cd7d4,_0x67e8f8,_0x49bc56){return _0x25781e(_0x1cd7d4,_0x67e8f8,_0x49bc56);},'rEMOE':'oracle_shutdown_error'};logger['info']({'event':'oracle_shutdown','signal':'SIGTERM'},_0x3ace2b(0x98));try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x2ba5cd){_0x38c5d1['tCfiy'](logError,_0x2ba5cd,{'event':_0x38c5d1['rEMOE'],'signal':_0x3ace2b(0xc4)},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x2ba5cd['message']),process['exit'](0x1);}}),module[a0_0x7ddcf5(0x81)]=oracleDb;
|
|
1
|
+
const a0_0xe4839e=a0_0xe45b;(function(_0x5e2956,_0x2ee5ec){const _0x5732e2=a0_0xe45b,_0x32837b=_0x5e2956();while(!![]){try{const _0x2ac898=parseInt(_0x5732e2(0xc6))/0x1*(parseInt(_0x5732e2(0xab))/0x2)+-parseInt(_0x5732e2(0xca))/0x3+parseInt(_0x5732e2(0xb4))/0x4+parseInt(_0x5732e2(0x96))/0x5+-parseInt(_0x5732e2(0x7d))/0x6+-parseInt(_0x5732e2(0x8a))/0x7+parseInt(_0x5732e2(0xa6))/0x8*(parseInt(_0x5732e2(0xc5))/0x9);if(_0x2ac898===_0x2ee5ec)break;else _0x32837b['push'](_0x32837b['shift']());}catch(_0x572dd8){_0x32837b['push'](_0x32837b['shift']());}}}(a0_0x211c,0x7c0a5));function a0_0x211c(){const _0x3b4375=['B3jHy2XLx3bVB2XFzxjYB3i','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','tfjcrwe','B3jHy2XLx3bVB2XFy2XVC2vK','mZq5mgDwCNvRvW','zxHLy3v0zq','C3fS','rejFue9ptf9nsu4','Aw5MBW','y2XVC2u','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','BLLdywK','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','oda5nJaWzxboA1vs','qM5zrwS','rejFvvnfuG','x25SC1jLywr5','y29UzMLN','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','s05mAgS','CM93C0fMzMvJDgvK','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','t1vux0zpuK1bvf9pqKPfq1q','rejFue9ptf9nqvG','CgfYyw1Z','rejFse9tva','rejFue9ptf9jtKnsru1ftLq','Cg9VBe1PBG','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','nJy4nJm3ruDpBvjO','mZq3DKjoDMnZ','zw52','ChvZAa','wvzpu3K','mtyYnZi0og9gqLn5AW','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','vefNzMq','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','Bg9JywXOB3n0','DhjHBNnHy3rPB25FzxjYB3i','z2v0q29UBMvJDgLVBG','A1DnvLC','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','vwXRCxO','B3jHy2XLx3bVB2XFzxHPC3rZ','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','u0Lhsu5u','mJK3nJyZnNf5vMTcAW','z2v0ug9VBfn0yxrPC3rPy3m','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','B3jHy2XLx3bVB2XFy2XVC2vFzxjYB3i','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','Cg9VBe1HEa','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','y2XVC2vqB29S','uhnxzvO','zxjYB3joDw0','zxHWB3j0CW','y29TBwL0','CM93CW','oteXnZm2sMzPz0Xc','q0XpqG','Cg9VBa','yxv0B0nVBw1PDa','Aw5PDgLHBgL6zvbVB2W','sfzdB2i','t3jHy2XLifnrtcbfCNjVCJOG','rejFue9sva','B3jHy2XL','tg54rMW','zxHPDa','ywzdC08','mZK3mZe1nwXIzfPMva','uxDprNK','Eg9qAvy','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','zxHLy3v0zvf1zxj5','zgvIDwC','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','BwvZC2fNzq','BgvUz3rO','shLNzKq','rejFueftu1DpuKq','DgvZDenVBM5Ly3rPB24','u0Lhvevstq','B3jHy2XLx3bVB2XFy3jLyxrPBMC','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','tKnmt0i','oenuEKHWva'];a0_0x211c=function(){return _0x3b4375;};return a0_0x211c();}const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb['fetchAsString']=[oracledb[a0_0xe4839e(0x8b)],oracledb[a0_0xe4839e(0xa5)]],oracledb['fetchAsBuffer']=[oracledb['BLOB']];async function ensureNlsReady(_0x234c29){const _0x4199de=a0_0xe4839e;if(_0x234c29['_nlsReady'])return;await _0x234c29[_0x4199de(0xac)]('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27'),await _0x234c29['execute'](_0x4199de(0x9c)),await _0x234c29['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_TZ_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3TZH:TZM\x27'),_0x234c29[_0x4199de(0xb7)]=!![];}class OracleDatabase{constructor(){const _0x48b8f9=a0_0xe4839e,_0x339195={'EGgRR':function(_0x505886,_0x11d641){return _0x505886(_0x11d641);},'KNLhk':'oracle'};this[_0x48b8f9(0x8c)]=null,this['config']={'user':process[_0x48b8f9(0xc7)][_0x48b8f9(0xb6)]||'hr','password':process['env'][_0x48b8f9(0xa0)]||'hr','connectString':this['buildConnectionString'](),'poolMin':_0x339195['EGgRR'](parseInt,process[_0x48b8f9(0xc7)][_0x48b8f9(0xae)])||0x2,'poolMax':_0x339195['EGgRR'](parseInt,process[_0x48b8f9(0xc7)][_0x48b8f9(0xbf)])||0xa,'poolIncrement':parseInt(process[_0x48b8f9(0xc7)][_0x48b8f9(0xc2)])||0x1,'poolTimeout':parseInt(process[_0x48b8f9(0xc7)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x48b8f9(0x8b)],oracledb[_0x48b8f9(0xa5)]],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process['env'][_0x48b8f9(0xc1)]||'localhost','port':process['env'][_0x48b8f9(0x91)]||'1521','database':process['env']['DB_NAME']||'XE','type':_0x339195[_0x48b8f9(0xba)],'user':this[_0x48b8f9(0xb8)]['user'],'poolMin':this[_0x48b8f9(0xb8)]['poolMin'],'poolMax':this['config'][_0x48b8f9(0x82)]});}[a0_0xe4839e(0x83)](){const _0x29fff9=a0_0xe4839e,_0x55e45f={'LnJbb':_0x29fff9(0x74),'FVcdR':'oracle_connection_string'},_0xf42a43=process['env']['DB_HOST']||_0x55e45f['LnJbb'],_0x91dc72=process[_0x29fff9(0xc7)][_0x29fff9(0x91)]||'1521',_0xf8c860=process['env']['DB_NAME']||'XE',_0x2aff2='//'+_0xf42a43+':'+_0x91dc72+'/'+_0xf8c860;return logger[_0x29fff9(0x9b)]({'event':_0x55e45f['FVcdR'],'connectionString':_0x2aff2},'Oracle\x20Connection\x20String:\x20'+_0x2aff2),_0x2aff2;}async[a0_0xe4839e(0x8e)](){const _0x1111de=a0_0xe4839e,_0x3c5f57={'CArhK':_0x1111de(0xa3),'SmnsS':'oracle_pool_created','HVCob':'Oracle\x20connection\x20pool\x20created\x20successfully'};try{if(this[_0x1111de(0x8c)]){logger['debug']({'event':_0x1111de(0x7a)},_0x1111de(0xbc));return;}logger[_0x1111de(0xaf)]({'event':_0x3c5f57['CArhK']},_0x1111de(0x7b)),this[_0x1111de(0x8c)]=await oracledb['createPool'](this[_0x1111de(0xb8)]),logger[_0x1111de(0xaf)]({'event':_0x3c5f57['SmnsS']},_0x3c5f57[_0x1111de(0x8f)]),await this[_0x1111de(0xa1)]();}catch(_0x2f689f){logError(_0x2f689f,{'event':_0x1111de(0xa7)},_0x1111de(0xa8)+_0x2f689f[_0x1111de(0x9d)]);throw _0x2f689f;}}async[a0_0xe4839e(0xa1)](){const _0xb23c89=a0_0xe4839e,_0x4976c4={'dkwBd':_0xb23c89(0xbd),'AWODM':_0xb23c89(0xa4),'LnxFl':'SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL','HygfD':function(_0x114201,_0x12f027,_0x3e6ff0,_0x15c272){return _0x114201(_0x12f027,_0x3e6ff0,_0x15c272);},'hgzkh':_0xb23c89(0x73),'kWMVW':'oracle_test_connection_close_error'};let _0x202c5f;try{logger[_0xb23c89(0x9b)]({'event':_0x4976c4['dkwBd']},_0x4976c4['AWODM']),_0x202c5f=await this['pool']['getConnection'](),await ensureNlsReady(_0x202c5f);const _0x30d261=await _0x202c5f['execute'](_0x4976c4[_0xb23c89(0x93)]);logger['info']({'event':'oracle_connection_test_success','currentDate':_0x30d261[_0xb23c89(0x89)][0x0][0x0],'currentUser':_0x30d261[_0xb23c89(0x89)][0x0][0x1]},_0xb23c89(0xb9)+_0x30d261['rows'][0x0][0x1]);}catch(_0x1cae24){_0x4976c4[_0xb23c89(0x9f)](logError,_0x1cae24,{'event':_0x4976c4['hgzkh']},'Oracle\x20connection\x20test\x20gagal:\x20'+_0x1cae24[_0xb23c89(0x9d)]);throw _0x1cae24;}finally{if(_0x202c5f)try{await _0x202c5f[_0xb23c89(0xb0)]();}catch(_0x470cad){logError(_0x470cad,{'event':_0x4976c4[_0xb23c89(0x77)]},'Error\x20closing\x20test\x20connection:\x20'+_0x470cad['message']);}}}async[a0_0xe4839e(0x9a)](_0x48e9d8,_0x4af387=[],_0x3cb017={}){const _0x151c6b=a0_0xe4839e,_0x12e608={'LRBEa':function(_0x4176b7){return _0x4176b7();},'xoPiV':'oracle','SOogN':function(_0x3b86ea,_0x2943cd,_0x31aa0e,_0x2c659c){return _0x3b86ea(_0x2943cd,_0x31aa0e,_0x2c659c);},'Ulkqz':_0x151c6b(0xb3)};let _0x87e5d6;const _0x2ce891=_0x12e608[_0x151c6b(0xa9)](startQueryTimer);try{!this[_0x151c6b(0x8c)]&&await this['initializePool']();_0x87e5d6=await this['pool'][_0x151c6b(0x76)](),await ensureNlsReady(_0x87e5d6);const _0x165647={'outFormat':oracledb[_0x151c6b(0xbe)],'autoCommit':_0x3cb017[_0x151c6b(0x8d)]!==undefined?_0x3cb017['autoCommit']:!![],..._0x3cb017},_0x3397a1=await _0x87e5d6[_0x151c6b(0xac)](_0x48e9d8,_0x4af387,_0x165647),_0x4503d4=_0x2ce891(),_0x14558a=_0x3397a1['rows']?_0x3397a1[_0x151c6b(0x89)]['length']:_0x3397a1[_0x151c6b(0xbb)];return logQuery(_0x48e9d8,_0x4af387,{'duration':_0x4503d4,'rowsAffected':_0x14558a,'dbType':_0x12e608[_0x151c6b(0x98)]}),_0x3397a1[_0x151c6b(0x89)]?_0x3397a1[_0x151c6b(0x89)]:{'rowsAffected':_0x3397a1['rowsAffected'],'lastRowid':_0x3397a1['lastRowid']};}catch(_0x358796){const _0x9f7efe=_0x2ce891();logError(_0x358796,{'event':'sql_error','query':_0x48e9d8['substring'](0x0,0x1f4),'paramCount':_0x4af387['length'],'durationMs':_0x9f7efe,'code':_0x358796[_0x151c6b(0x86)],'dbType':_0x12e608['xoPiV']},_0x151c6b(0x90)+_0x358796['message']);throw _0x358796;}finally{if(_0x87e5d6)try{await _0x87e5d6[_0x151c6b(0xb0)]();}catch(_0x2612d3){_0x12e608['SOogN'](logError,_0x2612d3,{'event':_0x12e608[_0x151c6b(0x79)]},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x2612d3['message']);}}}async['executeTransaction'](_0x42e8f5){const _0x5c506d=a0_0xe4839e,_0x5eb08c={'PsWeZ':'start','afCsO':function(_0x401afc){return _0x401afc();},'TAgfd':_0x5c506d(0x92),'OIuLj':'commit','YVOSy':function(_0x5abd40){return _0x5abd40();},'pIuoy':function(_0x181c59,_0x2c0368,_0x199f29,_0x210e6c){return _0x181c59(_0x2c0368,_0x199f29,_0x210e6c);},'mBUvV':_0x5c506d(0x75),'rwHBR':_0x5c506d(0xc4)};let _0x44d67f;const _0x56726c=startQueryTimer();try{!this[_0x5c506d(0x8c)]&&await this['initializePool']();_0x44d67f=await this['pool']['getConnection'](),await ensureNlsReady(_0x44d67f),logTransaction(_0x5eb08c[_0x5c506d(0x85)],_0x42e8f5[_0x5c506d(0x9e)]);const _0x2dd32c=[];for(const _0x3f7842 of _0x42e8f5){const _0x2565f8=_0x5eb08c['afCsO'](startQueryTimer),_0x39f7af=await _0x44d67f['execute'](_0x3f7842[_0x5c506d(0xad)],_0x3f7842[_0x5c506d(0xc0)]||[],{'autoCommit':![],'outFormat':oracledb[_0x5c506d(0xbe)]}),_0x318a92=_0x5eb08c[_0x5c506d(0x95)](_0x2565f8),_0x4ba373=_0x39f7af['rows']?_0x39f7af['rows']['length']:_0x39f7af['rowsAffected'];logQuery(_0x3f7842['sql'],_0x3f7842[_0x5c506d(0xc0)]||[],{'duration':_0x318a92,'rowsAffected':_0x4ba373,'dbType':_0x5eb08c['TAgfd']}),_0x2dd32c[_0x5c506d(0xc8)](_0x39f7af);}await _0x44d67f[_0x5c506d(0x88)]();const _0x25aa9d=_0x56726c();return logTransaction(_0x5eb08c['OIuLj'],_0x42e8f5[_0x5c506d(0x9e)]),logger['info']({'event':'transaction_complete','queryCount':_0x42e8f5[_0x5c506d(0x9e)],'totalDurationMs':_0x25aa9d,'dbType':_0x5c506d(0x92)},'Oracle\x20transaction\x20committed\x20('+_0x25aa9d+'ms,\x20'+_0x42e8f5[_0x5c506d(0x9e)]+'\x20queries)'),_0x2dd32c;}catch(_0x1e2816){const _0x3d21af=_0x5eb08c[_0x5c506d(0xc9)](_0x56726c);_0x5eb08c['pIuoy'](logError,_0x1e2816,{'event':_0x5eb08c['mBUvV'],'queryCount':_0x42e8f5[_0x5c506d(0x9e)],'totalDurationMs':_0x3d21af,'code':_0x1e2816['errorNum'],'dbType':_0x5eb08c[_0x5c506d(0x72)]},'Oracle\x20transaction\x20failed:\x20'+_0x1e2816[_0x5c506d(0x9d)]);if(_0x44d67f)try{await _0x44d67f['rollback'](),logTransaction('rollback',_0x42e8f5[_0x5c506d(0x9e)]);}catch(_0x1f8373){logError(_0x1f8373,{'event':'rollback_error','dbType':'oracle'},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x1f8373['message']);}throw _0x1e2816;}finally{if(_0x44d67f)try{await _0x44d67f['close']();}catch(_0x14a226){logError(_0x14a226,{'event':_0x5eb08c['rwHBR']},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x14a226[_0x5c506d(0x9d)]);}}}async[a0_0xe4839e(0x84)](){const _0x59c903=a0_0xe4839e,_0x41b688={'lNGqH':_0x59c903(0x81),'BnYEk':function(_0x3a8679,_0x7dafa7,_0x5ba1e0,_0x7aab0d){return _0x3a8679(_0x7dafa7,_0x5ba1e0,_0x7aab0d);},'QwOFy':_0x59c903(0x80)};try{this['pool']&&(logger[_0x59c903(0xaf)]({'event':'oracle_pool_closing'},_0x41b688['lNGqH']),await this['pool']['close'](0xa),this[_0x59c903(0x8c)]=null,logger[_0x59c903(0xaf)]({'event':_0x59c903(0xaa)},_0x59c903(0xb1)));}catch(_0x47a388){_0x41b688[_0x59c903(0xb5)](logError,_0x47a388,{'event':_0x41b688[_0x59c903(0x97)]},_0x59c903(0x7f)+_0x47a388['message']);throw _0x47a388;}}[a0_0xe4839e(0x7e)](){const _0x1a86ec=a0_0xe4839e;if(!this[_0x1a86ec(0x8c)])return{'status':'Pool\x20not\x20initialized'};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this[_0x1a86ec(0x8c)][_0x1a86ec(0xc3)],'poolMax':this['pool'][_0x1a86ec(0x82)],'poolIncrement':this['pool']['poolIncrement'],'poolTimeout':this['pool']['poolTimeout'],'status':'Active'};}}const oracleDb=new OracleDatabase();function a0_0xe45b(_0x2c6072,_0x17cce1){_0x2c6072=_0x2c6072-0x71;const _0x211ce8=a0_0x211c();let _0xe45b38=_0x211ce8[_0x2c6072];if(a0_0xe45b['yAmLhg']===undefined){var _0x342968=function(_0x48d622){const _0xfe3550='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c5e9c='',_0x1a4af4='';for(let _0x58a36c=0x0,_0x51dca2,_0x11a671,_0x3bd0e5=0x0;_0x11a671=_0x48d622['charAt'](_0x3bd0e5++);~_0x11a671&&(_0x51dca2=_0x58a36c%0x4?_0x51dca2*0x40+_0x11a671:_0x11a671,_0x58a36c++%0x4)?_0x5c5e9c+=String['fromCharCode'](0xff&_0x51dca2>>(-0x2*_0x58a36c&0x6)):0x0){_0x11a671=_0xfe3550['indexOf'](_0x11a671);}for(let _0x57198e=0x0,_0x1455e6=_0x5c5e9c['length'];_0x57198e<_0x1455e6;_0x57198e++){_0x1a4af4+='%'+('00'+_0x5c5e9c['charCodeAt'](_0x57198e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a4af4);};a0_0xe45b['xiPFdH']=_0x342968,a0_0xe45b['nvGYAv']={},a0_0xe45b['yAmLhg']=!![];}const _0x12eb8a=_0x211ce8[0x0],_0x2bd87f=_0x2c6072+_0x12eb8a,_0x18578e=a0_0xe45b['nvGYAv'][_0x2bd87f];return!_0x18578e?(_0xe45b38=a0_0xe45b['xiPFdH'](_0xe45b38),a0_0xe45b['nvGYAv'][_0x2bd87f]=_0xe45b38):_0xe45b38=_0x18578e,_0xe45b38;}process['on'](a0_0xe4839e(0x7c),async()=>{const _0x35ce0a=a0_0xe4839e,_0x5bfb5b={'DMEID':'oracle_shutdown','ofduC':_0x35ce0a(0x7c)};logger[_0x35ce0a(0xaf)]({'event':_0x5bfb5b['DMEID'],'signal':_0x35ce0a(0x7c)},'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...');try{await oracleDb['closePool'](),process[_0x35ce0a(0x94)](0x0);}catch(_0x1897bf){logError(_0x1897bf,{'event':_0x35ce0a(0x71),'signal':_0x5bfb5b['ofduC']},_0x35ce0a(0x99)+_0x1897bf['message']),process[_0x35ce0a(0x94)](0x1);}}),process['on']('SIGTERM',async()=>{const _0x3034e9=a0_0xe4839e,_0x36dfbb={'nYCai':function(_0x2ba62d,_0x5e3b65,_0x351784,_0x417dc1){return _0x2ba62d(_0x5e3b65,_0x351784,_0x417dc1);}};logger[_0x3034e9(0xaf)]({'event':'oracle_shutdown','signal':_0x3034e9(0xa2)},_0x3034e9(0x78));try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x1a0ac5){_0x36dfbb[_0x3034e9(0xb2)](logError,_0x1a0ac5,{'event':'oracle_shutdown_error','signal':_0x3034e9(0xa2)},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x1a0ac5[_0x3034e9(0x9d)]),process[_0x3034e9(0x94)](0x1);}}),module[a0_0xe4839e(0x87)]=oracleDb;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x106131=a0_0x3b85;function a0_0x4355(){const _0x52887f=['rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','y29Kzq','zgjqyxrO','mtGZndm5men3EMjJEG','u0Lhvevstq','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','CgfYyw1Z','vhf4qw8','nM9qAuvhva','zgvIDwC','odmXnZi0uKnIEhvZ','C3fSAxrLx2nSB3nPBMC','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','sNvXB08','Effqzge','mtG2nZy4y05Hr2HX','BxmSia','ywXS','sgnss1a','mJyWmJaWy1zzv1zS','DLDbs3a','C3fSAxrLx2nSB3nLza','z0P0zuS','u0Lhsu5u','zM9YzwLNBL9RzxLZid0Gt04','zxHPDa','y29TBwL0','BgfZDeLUC2vYDfjVD2LK','yNvZEvrPBwvVDxq','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','ChjLCgfYzq','z2v0ug9VBa','mtqYntG4oeHnEgrtyG','BgvUz3rO','zNP2EuK','y2XVC2vqB29S','vNDezg4','mZK3nJuYDMHczenK','zg1uvwK','Aw5PDgLHBgL6zurHDgfIyxnL','mJfQzfP5Auu','ChjHz21H','DgvZDenVBM5Ly3rPB24','Aw5MBW','C3fSAxrLx3nODxrKB3DU','BwvZC2fNzq','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','C3rHCNq','C3fSAxrL','BhLhv3q','C3fS','zw52','DhjHBNnHy3rPB25FzxjYB3i','DgvZDa','z2v0','DhjHBNnHy3rPB25Fy29TCgXLDgu','zfPrt1a','zxHWB3j0CW','y2XVC2u','rxjYB3iGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2u6ia','CNvU','mZK3nty2uhfhuMvi','ELvmq1y','EuzYtKm','uufnCg8','lI9KyxrHl3jLC3rMB3jNzs5KyG'];a0_0x4355=function(){return _0x52887f;};return a0_0x4355();}(function(_0x22eb94,_0x3e6fb6){const _0x124901=a0_0x3b85,_0x5717ab=_0x22eb94();while(!![]){try{const _0x278b45=parseInt(_0x124901(0x216))/0x1+parseInt(_0x124901(0x210))/0x2+parseInt(_0x124901(0x20e))/0x3*(-parseInt(_0x124901(0x1e6))/0x4)+-parseInt(_0x124901(0x207))/0x5+parseInt(_0x124901(0x1e1))/0x6+-parseInt(_0x124901(0x1e9))/0x7*(parseInt(_0x124901(0x21a))/0x8)+parseInt(_0x124901(0x1ff))/0x9;if(_0x278b45===_0x3e6fb6)break;else _0x5717ab['push'](_0x5717ab['shift']());}catch(_0x3ff0a3){_0x5717ab['push'](_0x5717ab['shift']());}}}(a0_0x4355,0x35ff5));const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');class SqliteDatabase{constructor(){const _0xe8ca8d=a0_0x3b85,_0x5eccc0={'gZnGl':function(_0x11c3d7,_0x4b5087){return _0x11c3d7(_0x4b5087);},'yFrNC':'5000','JuqoO':'sqlite'};this['db']=null,this[_0xe8ca8d(0x206)]=process[_0xe8ca8d(0x1f5)]['DB_NAME']||_0xe8ca8d(0x203),this[_0xe8ca8d(0x1dd)]=_0x5eccc0['gZnGl'](parseInt,process[_0xe8ca8d(0x1f5)]['DB_BUSY_TIMEOUT']||_0x5eccc0[_0xe8ca8d(0x201)]),logDatabaseConfig({'database':this[_0xe8ca8d(0x206)],'type':_0x5eccc0[_0xe8ca8d(0x214)],'busyTimeout':this['busyTimeout']});}['initializeDatabase'](){const _0x5b73d4=a0_0x3b85,_0x1cf1ae={'HcRKP':'sqlite_db_exists','zULCV':_0x5b73d4(0x21f),'heqyV':'sqlite_init_error'};try{const _0x276eeb='2|1|4|3|0'['split']('|');let _0x527e3f=0x0;while(!![]){switch(_0x276eeb[_0x527e3f++]){case'0':this[_0x5b73d4(0x1eb)]();continue;case'1':this['db']=new Database(this[_0x5b73d4(0x206)],{'timeout':this[_0x5b73d4(0x1dd)]});continue;case'2':if(this['db']){logger['debug']({'event':_0x1cf1ae[_0x5b73d4(0x219)]},'SQLite\x20database\x20connection\x20sudah\x20ada');return;}continue;case'3':this['db'][_0x5b73d4(0x1ea)](_0x1cf1ae[_0x5b73d4(0x200)]);continue;case'4':this['db']['pragma']('journal_mode\x20=\x20WAL');continue;}break;}}catch(_0x332b85){logError(_0x332b85,{'event':_0x1cf1ae['heqyV']},_0x5b73d4(0x204)+_0x332b85[_0x5b73d4(0x1ee)]);throw _0x332b85;}}[a0_0x106131(0x1eb)](){const _0xcacf7d=a0_0x106131,_0x3d3508={'hljSE':'Testing\x20SQLite\x20database\x20connection...','dmTUi':_0xcacf7d(0x209),'gJteK':function(_0x4d16d1,_0x3560e1,_0x36d68f,_0x50639b){return _0x4d16d1(_0x3560e1,_0x36d68f,_0x50639b);}};try{logger[_0xcacf7d(0x20f)]({'event':'sqlite_connection_test_start'},_0x3d3508['hljSE']),this['db']['prepare'](_0x3d3508[_0xcacf7d(0x1e7)])[_0xcacf7d(0x1f8)]();}catch(_0x2e76c2){_0x3d3508[_0xcacf7d(0x21d)](logError,_0x2e76c2,{'event':_0xcacf7d(0x212)},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x2e76c2['message']);throw _0x2e76c2;}}async['executeQuery'](_0x27eb89,_0x5a90a1=[]){const _0x5a7b2f=a0_0x106131,_0x406267={'uRKhW':function(_0x2f849b,_0x479d0b,_0x292e2c,_0x583b8b){return _0x2f849b(_0x479d0b,_0x292e2c,_0x583b8b);},'dugjC':function(_0x4476d5){return _0x4476d5();},'dZQOP':'sqlite','xQPda':'sql_error'},_0x555d85=startQueryTimer();try{!this['db']&&this[_0x5a7b2f(0x1e8)]();const _0x24937b=this['db']['prepare'](_0x27eb89),_0x3bb0de=/\bRETURNING\b/i[_0x5a7b2f(0x1f7)](_0x27eb89),_0x20ac0e=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x27eb89);let _0x43c08e,_0x15ea41;if(_0x20ac0e||_0x3bb0de){const _0x4a7edf=_0x24937b['all'](..._0x5a90a1),_0x598f61=_0x555d85();return _0x406267['uRKhW'](logQuery,_0x27eb89,_0x5a90a1,{'duration':_0x598f61,'rowsAffected':_0x4a7edf['length'],'dbType':_0x5a7b2f(0x1f2)}),_0x4a7edf;}else{const _0x3e8290=_0x24937b[_0x5a7b2f(0x1fe)](..._0x5a90a1),_0x223cc1=_0x406267['dugjC'](_0x555d85);return _0x43c08e={'rowsAffected':_0x3e8290['changes'],'insertId':_0x3e8290[_0x5a7b2f(0x222)]},logQuery(_0x27eb89,_0x5a90a1,{'duration':_0x223cc1,'rowsAffected':_0x3e8290['changes'],'dbType':_0x406267[_0x5a7b2f(0x1fa)]}),_0x43c08e;}}catch(_0x115b5c){const _0x46aac5=_0x555d85();logError(_0x115b5c,{'event':_0x406267[_0x5a7b2f(0x215)],'query':_0x27eb89['substring'](0x0,0x1f4),'paramCount':_0x5a90a1['length'],'durationMs':_0x46aac5,'code':_0x115b5c[_0x5a7b2f(0x205)],'dbType':_0x406267['dZQOP']},'SQLite\x20SQL\x20Error:\x20'+_0x115b5c['message']);throw _0x115b5c;}}async['executeTransaction'](_0x19aa4e){const _0x5eaa06=a0_0x106131,_0x44fa6d={'TqxAo':function(_0xb52436){return _0xb52436();},'vWAKp':function(_0x1cf20b){return _0x1cf20b();},'zNfFE':_0x5eaa06(0x1f9),'lTqUK':'sqlite','ckXGJ':function(_0x5db11b,_0x59c3d1,_0xbe2f56){return _0x5db11b(_0x59c3d1,_0xbe2f56);},'djBay':_0x5eaa06(0x1f6)},_0x3ea7bf=_0x44fa6d[_0x5eaa06(0x21b)](startQueryTimer);try{!this['db']&&this[_0x5eaa06(0x1e8)]();logTransaction(_0x5eaa06(0x1f1),_0x19aa4e['length']);const _0x597a6e=this['db']['transaction'](_0x5b74ff=>{const _0x3d9ad6=_0x5eaa06,_0x51bc49=[];for(const _0x113ba9 of _0x5b74ff){const _0x15429e=startQueryTimer(),_0x436bc8=_0x113ba9[_0x3d9ad6(0x20c)]||[],_0x2c9621=this['db'][_0x3d9ad6(0x1df)](_0x113ba9['sql']),_0xadf88e=/\bRETURNING\b/i[_0x3d9ad6(0x1f7)](_0x113ba9[_0x3d9ad6(0x1f4)]),_0x4f40fa=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x3d9ad6(0x1f7)](_0x113ba9['sql']);if(_0x4f40fa||_0xadf88e){const _0x241a70=_0x2c9621[_0x3d9ad6(0x218)](..._0x436bc8),_0x4800b7=_0x44fa6d[_0x3d9ad6(0x20d)](_0x15429e);logQuery(_0x113ba9['sql'],_0x436bc8,{'duration':_0x4800b7,'rowsAffected':_0x241a70[_0x3d9ad6(0x1e2)],'dbType':_0x3d9ad6(0x1f2)}),_0x51bc49['push'](_0x241a70);}else{const _0x40d2df=_0x2c9621[_0x3d9ad6(0x1fe)](..._0x436bc8),_0x233f32=_0x44fa6d['TqxAo'](_0x15429e);logQuery(_0x113ba9['sql'],_0x436bc8,{'duration':_0x233f32,'rowsAffected':_0x40d2df['changes'],'dbType':'sqlite'}),_0x51bc49['push']({'rowsAffected':_0x40d2df['changes'],'insertId':_0x40d2df['lastInsertRowid']});}}return _0x51bc49;}),_0x2ce231=_0x597a6e(_0x19aa4e),_0x4f0460=_0x3ea7bf();return logTransaction(_0x5eaa06(0x221),_0x19aa4e['length']),logger['info']({'event':_0x44fa6d['zNfFE'],'queryCount':_0x19aa4e['length'],'totalDurationMs':_0x4f0460,'dbType':_0x44fa6d['lTqUK']},_0x5eaa06(0x1de)+_0x4f0460+_0x5eaa06(0x217)+_0x19aa4e['length']+'\x20queries)'),_0x2ce231;}catch(_0x1a74dd){const _0x406a22=_0x44fa6d['TqxAo'](_0x3ea7bf);_0x44fa6d['ckXGJ'](logTransaction,'rollback',_0x19aa4e['length']),logError(_0x1a74dd,{'event':_0x44fa6d['djBay'],'queryCount':_0x19aa4e['length'],'totalDurationMs':_0x406a22,'code':_0x1a74dd[_0x5eaa06(0x205)],'dbType':_0x5eaa06(0x1f2)},'Transaction\x20failed:\x20'+_0x1a74dd[_0x5eaa06(0x1ee)]);throw _0x1a74dd;}}[a0_0x106131(0x1e0)](){return!this['db']&&this['initializeDatabase'](),this['db'];}[a0_0x106131(0x1e4)](){const _0x2dbde4=a0_0x106131,_0x5a6612={'lyGWt':_0x2dbde4(0x21c),'QAMpo':function(_0x424388,_0x1aba3f,_0x5b8d16,_0x5a0212){return _0x424388(_0x1aba3f,_0x5b8d16,_0x5a0212);}};try{this['db']&&(logger['info']({'event':_0x2dbde4(0x211)},'Closing\x20SQLite\x20database\x20connection...'),this['db'][_0x2dbde4(0x1fc)](),this['db']=null,logger['info']({'event':_0x5a6612[_0x2dbde4(0x1f3)]},'SQLite\x20database\x20connection\x20closed'));}catch(_0x26febf){_0x5a6612[_0x2dbde4(0x202)](logError,_0x26febf,{'event':'sqlite_close_error'},_0x2dbde4(0x1fd)+_0x26febf['message']);throw _0x26febf;}}async['checkConnection'](){const _0x39c056=a0_0x106131,_0x4e46b9={'fdLqb':function(_0x309158,_0x139d71,_0x266fa3,_0x4fec42){return _0x309158(_0x139d71,_0x266fa3,_0x4fec42);},'QYJGi':_0x39c056(0x1f0)};try{return!this['db']&&this['initializeDatabase'](),this['db'][_0x39c056(0x1df)]('SELECT\x201')['get'](),!![];}catch(_0x500377){return _0x4e46b9['fdLqb'](logError,_0x500377,{'event':_0x4e46b9['QYJGi']},_0x39c056(0x20b)+_0x500377['message']),![];}}}function a0_0x3b85(_0x25c132,_0x56ebdc){_0x25c132=_0x25c132-0x1dd;const _0x43554c=a0_0x4355();let _0x3b858a=_0x43554c[_0x25c132];if(a0_0x3b85['FkYTIs']===undefined){var _0x4b149c=function(_0x40aff0){const _0x1d1639='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x185e45='',_0x39484d='';for(let _0x51461a=0x0,_0x2d7566,_0x5981be,_0x218f7d=0x0;_0x5981be=_0x40aff0['charAt'](_0x218f7d++);~_0x5981be&&(_0x2d7566=_0x51461a%0x4?_0x2d7566*0x40+_0x5981be:_0x5981be,_0x51461a++%0x4)?_0x185e45+=String['fromCharCode'](0xff&_0x2d7566>>(-0x2*_0x51461a&0x6)):0x0){_0x5981be=_0x1d1639['indexOf'](_0x5981be);}for(let _0x5dc60f=0x0,_0x224b62=_0x185e45['length'];_0x5dc60f<_0x224b62;_0x5dc60f++){_0x39484d+='%'+('00'+_0x185e45['charCodeAt'](_0x5dc60f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x39484d);};a0_0x3b85['XMBqWt']=_0x4b149c,a0_0x3b85['ITJojJ']={},a0_0x3b85['FkYTIs']=!![];}const _0x3c336a=_0x43554c[0x0],_0x40546a=_0x25c132+_0x3c336a,_0x4aeefe=a0_0x3b85['ITJojJ'][_0x40546a];return!_0x4aeefe?(_0x3b858a=a0_0x3b85['XMBqWt'](_0x3b858a),a0_0x3b85['ITJojJ'][_0x40546a]=_0x3b858a):_0x3b858a=_0x4aeefe,_0x3b858a;}const sqliteDb=new SqliteDatabase();process['on']('SIGINT',()=>{const _0xed195d=a0_0x106131,_0x173b70={'wmAVz':'sqlite_shutdown','VwDdn':_0xed195d(0x21e)};logger['info']({'event':_0x173b70['wmAVz'],'signal':_0x173b70[_0xed195d(0x1e5)]},_0xed195d(0x213));try{sqliteDb[_0xed195d(0x1e4)](),process['exit'](0x0);}catch(_0x168ff1){logError(_0x168ff1,{'event':_0xed195d(0x1ef),'signal':_0x173b70[_0xed195d(0x1e5)]},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x168ff1['message']),process['exit'](0x1);}}),process['on'](a0_0x106131(0x208),()=>{const _0x303811=a0_0x106131,_0x5c2c11={'yppYu':_0x303811(0x1ed),'fzvyI':_0x303811(0x208)};logger[_0x303811(0x1ec)]({'event':_0x5c2c11['yppYu'],'signal':_0x5c2c11[_0x303811(0x1e3)]},_0x303811(0x20a));try{sqliteDb['closePool'](),process[_0x303811(0x220)](0x0);}catch(_0x208205){logError(_0x208205,{'event':'sqlite_shutdown_error','signal':_0x303811(0x208)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x208205[_0x303811(0x1ee)]),process['exit'](0x1);}}),module[a0_0x106131(0x1fb)]=sqliteDb;
|
|
1
|
+
const a0_0x508722=a0_0x36ba;function a0_0x36ba(_0x470b3c,_0x78ce26){_0x470b3c=_0x470b3c-0x9a;const _0x243ed8=a0_0x243e();let _0x36ba17=_0x243ed8[_0x470b3c];if(a0_0x36ba['aTZCXh']===undefined){var _0xb4c0af=function(_0x46e865){const _0x535fb8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3736a2='',_0x9be39b='';for(let _0x4f4a4f=0x0,_0x32cf59,_0x417266,_0x1be5a5=0x0;_0x417266=_0x46e865['charAt'](_0x1be5a5++);~_0x417266&&(_0x32cf59=_0x4f4a4f%0x4?_0x32cf59*0x40+_0x417266:_0x417266,_0x4f4a4f++%0x4)?_0x3736a2+=String['fromCharCode'](0xff&_0x32cf59>>(-0x2*_0x4f4a4f&0x6)):0x0){_0x417266=_0x535fb8['indexOf'](_0x417266);}for(let _0x5ea3c2=0x0,_0x139733=_0x3736a2['length'];_0x5ea3c2<_0x139733;_0x5ea3c2++){_0x9be39b+='%'+('00'+_0x3736a2['charCodeAt'](_0x5ea3c2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x9be39b);};a0_0x36ba['axldWG']=_0xb4c0af,a0_0x36ba['plNYbx']={},a0_0x36ba['aTZCXh']=!![];}const _0x34afe4=_0x243ed8[0x0],_0x22274a=_0x470b3c+_0x34afe4,_0x48842c=a0_0x36ba['plNYbx'][_0x22274a];return!_0x48842c?(_0x36ba17=a0_0x36ba['axldWG'](_0x36ba17),a0_0x36ba['plNYbx'][_0x22274a]=_0x36ba17):_0x36ba17=_0x48842c,_0x36ba17;}(function(_0x5e26e2,_0x1c7fc5){const _0x5b159f=a0_0x36ba,_0x4b3743=_0x5e26e2();while(!![]){try{const _0x590c9a=-parseInt(_0x5b159f(0xd5))/0x1*(-parseInt(_0x5b159f(0xbd))/0x2)+parseInt(_0x5b159f(0xb4))/0x3+-parseInt(_0x5b159f(0x9c))/0x4*(-parseInt(_0x5b159f(0xd1))/0x5)+-parseInt(_0x5b159f(0xe1))/0x6+-parseInt(_0x5b159f(0x9d))/0x7+-parseInt(_0x5b159f(0xa0))/0x8+parseInt(_0x5b159f(0x9b))/0x9;if(_0x590c9a===_0x1c7fc5)break;else _0x4b3743['push'](_0x4b3743['shift']());}catch(_0x5bfd41){_0x4b3743['push'](_0x4b3743['shift']());}}}(a0_0x243e,0xb00b5));const Database=require(a0_0x508722(0xba)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');function a0_0x243e(){const _0x5bcedc=['ihf1zxjPzxmP','zw52','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','rgfezgO','zgvIDwC','tMHnqMK','ChvZAa','nde5ndq5ohr5BuTKta','s2LmBM8','BgvUz3rO','BeHSBg0','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','BwvZC2fNzq','mtmXmde1mZr2q2j4B3q','mJmXodG0EhvbCKfj','ndK0mJuXog9kr0XzEq','C3vIC3rYAw5N','t1POBgS','ntiZotuZnLbRt3Pmta','vgLXzhy','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','y2XVC2vqB29S','y1DRueC','C3bSAxq','y29TBwL0','ChjHz21H','z3r3sfi','C3fSAxrLx2rIx2v4Axn0CW','EK5mv2S','C1j6AK4','y0z3wNe','DgvZDa','zgjqyxrO','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','Aw5PDgLHBgL6zurHDgfIyxnL','BNHqvNC','C3fSx2vYCM9Y','BwXTEfm','ode0ntG3wKrJqMjs','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','u1P0s20','CLvHqKy','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','u0Lhsu5u','yMv0DgvYlxnXBgL0ztm','C3fSAxrLx2nSB3nLza','C3fS','mJy3otK0rM5jtfvw','C3fSAxrLx3nODxrKB3DU','mhWZFdr8mxWY','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','BgfZDeLUC2vYDfjVD2LK','tMD5C3C','DgvZDenVBM5Ly3rPB24','vhnIvgK','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','u0Lhvevstq','y2zrsui','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','y2HHBMDLCW','yNvZEvrPBwvVDxq','ChjLCgfYzq','DhjHBNnHy3rPB25FzxjYB3i','y29Kzq','t0HIz1q','EMvMB2C','C3rHCNq','mtbICvriuNK','q2XVC2LUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','zxHWB3j0CW','zxHPDa','n2P4vxzHra','Aw5MBW','C3fSAxrL','CM9SBgjHy2S','r3bAuhq'];a0_0x243e=function(){return _0x5bcedc;};return a0_0x243e();}class SqliteDatabase{constructor(){const _0x5ac353=a0_0x508722,_0xe6b948={'sRzjN':'./data/restforge.db','QJhZE':function(_0x2b9e8a,_0x294696){return _0x2b9e8a(_0x294696);},'TxkGx':'5000'};this['db']=null,this['dbPath']=process[_0x5ac353(0xdb)]['DB_NAME']||_0xe6b948[_0x5ac353(0xab)],this['busyTimeout']=_0xe6b948['QJhZE'](parseInt,process[_0x5ac353(0xdb)]['DB_BUSY_TIMEOUT']||_0xe6b948['TxkGx']),_0xe6b948['QJhZE'](logDatabaseConfig,{'database':this[_0x5ac353(0xae)],'type':_0x5ac353(0xd7),'busyTimeout':this['busyTimeout']});}[a0_0x508722(0xb0)](){const _0xf86a07=a0_0x508722,_0x45f167={'EkJYP':_0xf86a07(0xa9),'nxPVw':'foreign_keys\x20=\x20ON','cFwZq':'sqlite_init_error'};try{const _0x1fe08d=_0xf86a07(0xbf)[_0xf86a07(0xa5)]('|');let _0xa36d6b=0x0;while(!![]){switch(_0x1fe08d[_0xa36d6b++]){case'0':if(this['db']){logger[_0xf86a07(0xde)]({'event':_0x45f167['EkJYP']},'SQLite\x20database\x20connection\x20sudah\x20ada');return;}continue;case'1':this['db'][_0xf86a07(0xa7)](_0x45f167[_0xf86a07(0xb1)]);continue;case'2':this['testConnection']();continue;case'3':this['db']=new Database(this['dbPath'],{'timeout':this[_0xf86a07(0xca)]});continue;case'4':this['db']['pragma']('journal_mode\x20=\x20WAL');continue;}break;}}catch(_0xc81231){logError(_0xc81231,{'event':_0x45f167[_0xf86a07(0xac)]},_0xf86a07(0xc8)+_0xc81231[_0xf86a07(0x9a)]);throw _0xc81231;}}[a0_0x508722(0xc3)](){const _0x1edba8=a0_0x508722,_0x203449={'cfQIB':function(_0xfa2541,_0x492828,_0x252e07,_0x476cde){return _0xfa2541(_0x492828,_0x252e07,_0x476cde);},'xwquW':_0x1edba8(0xc5)};try{logger['debug']({'event':_0x1edba8(0xc0)},_0x1edba8(0xaf)),this['db']['prepare'](_0x1edba8(0xdc))['get']();}catch(_0x48a333){_0x203449[_0x1edba8(0xc7)](logError,_0x48a333,{'event':_0x203449['xwquW']},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x48a333['message']);throw _0x48a333;}}async['executeQuery'](_0x54dafd,_0xe12b4a=[]){const _0x55af54=a0_0x508722,_0x9ab27e={'zNLWk':function(_0x3a2db3,_0x2a8d06){return _0x3a2db3||_0x2a8d06;},'lHllm':'sqlite','IPsyG':function(_0x3928cb,_0x2ac0ef,_0x40567b,_0x584c5d){return _0x3928cb(_0x2ac0ef,_0x40567b,_0x584c5d);},'KiLno':_0x55af54(0xb2)},_0x54406e=startQueryTimer();try{!this['db']&&this[_0x55af54(0xb0)]();const _0x1e47a6=this['db'][_0x55af54(0xcb)](_0x54dafd),_0x4adf2c=/\bRETURNING\b/i['test'](_0x54dafd),_0x3efbb8=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x55af54(0xad)](_0x54dafd);let _0x6e3337,_0x4d5741;if(_0x9ab27e[_0x55af54(0xaa)](_0x3efbb8,_0x4adf2c)){const _0x2acd8a=_0x1e47a6['all'](..._0xe12b4a),_0x2d8c74=_0x54406e();return logQuery(_0x54dafd,_0xe12b4a,{'duration':_0x2d8c74,'rowsAffected':_0x2acd8a[_0x55af54(0xe3)],'dbType':_0x9ab27e[_0x55af54(0xe4)]}),_0x2acd8a;}else{const _0x358d52=_0x1e47a6['run'](..._0xe12b4a),_0x51161e=_0x54406e();return _0x6e3337={'rowsAffected':_0x358d52[_0x55af54(0xc9)],'insertId':_0x358d52[_0x55af54(0xc1)]},logQuery(_0x54dafd,_0xe12b4a,{'duration':_0x51161e,'rowsAffected':_0x358d52['changes'],'dbType':'sqlite'}),_0x6e3337;}}catch(_0x19fc21){const _0x1f2afb=_0x54406e();_0x9ab27e['IPsyG'](logError,_0x19fc21,{'event':_0x9ab27e[_0x55af54(0xe2)],'query':_0x54dafd[_0x55af54(0x9e)](0x0,0x1f4),'paramCount':_0xe12b4a[_0x55af54(0xe3)],'durationMs':_0x1f2afb,'code':_0x19fc21[_0x55af54(0xcd)],'dbType':_0x9ab27e['lHllm']},'SQLite\x20SQL\x20Error:\x20'+_0x19fc21[_0x55af54(0x9a)]);throw _0x19fc21;}}async['executeTransaction'](_0x5d4aa5){const _0x52f3de=a0_0x508722,_0x29f8f8={'TsbTi':function(_0x37bdbc){return _0x37bdbc();},'XXUjs':function(_0x5e9ace,_0x4b11e3){return _0x5e9ace||_0x4b11e3;},'OHbgT':function(_0x246c49){return _0x246c49();},'Ngysw':function(_0x39ed3e,_0x2f8e55,_0x517b14,_0x2661ac){return _0x39ed3e(_0x2f8e55,_0x517b14,_0x2661ac);},'Tiqdv':'sqlite','YIEqf':function(_0x274d9a){return _0x274d9a();},'DaDdj':_0x52f3de(0xd0),'ZVNTq':function(_0x2c5ac1){return _0x2c5ac1();},'czQcm':_0x52f3de(0xa6),'mlmxS':'transaction_complete','rmKgi':_0x52f3de(0xd8)},_0x1abad5=_0x29f8f8['YIEqf'](startQueryTimer);try{!this['db']&&this[_0x52f3de(0xb0)]();logTransaction(_0x29f8f8[_0x52f3de(0xdd)],_0x5d4aa5[_0x52f3de(0xe3)]);const _0x1bffb1=this['db']['transaction'](_0x598088=>{const _0x1177b9=_0x52f3de,_0xf0a122=[];for(const _0x5dddb7 of _0x598088){const _0x521d8c=_0x29f8f8[_0x1177b9(0xc4)](startQueryTimer),_0x8088=_0x5dddb7['params']||[],_0x51bf02=this['db'][_0x1177b9(0xcb)](_0x5dddb7['sql']),_0x336ac5=/\bRETURNING\b/i[_0x1177b9(0xad)](_0x5dddb7[_0x1177b9(0xbc)]),_0x3aee36=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x5dddb7[_0x1177b9(0xbc)]);if(_0x29f8f8['XXUjs'](_0x3aee36,_0x336ac5)){const _0x585036=_0x51bf02['all'](..._0x8088),_0xe87114=_0x29f8f8[_0x1177b9(0xce)](_0x521d8c);_0x29f8f8['Ngysw'](logQuery,_0x5dddb7['sql'],_0x8088,{'duration':_0xe87114,'rowsAffected':_0x585036['length'],'dbType':'sqlite'}),_0xf0a122['push'](_0x585036);}else{const _0xfc78d2=_0x51bf02['run'](..._0x8088),_0x5fc4e=_0x29f8f8[_0x1177b9(0xce)](_0x521d8c);_0x29f8f8[_0x1177b9(0xc2)](logQuery,_0x5dddb7[_0x1177b9(0xbc)],_0x8088,{'duration':_0x5fc4e,'rowsAffected':_0xfc78d2[_0x1177b9(0xc9)],'dbType':_0x29f8f8[_0x1177b9(0xa1)]}),_0xf0a122[_0x1177b9(0xe0)]({'rowsAffected':_0xfc78d2[_0x1177b9(0xc9)],'insertId':_0xfc78d2[_0x1177b9(0xc1)]});}}return _0xf0a122;}),_0x1a17e9=_0x1bffb1(_0x5d4aa5),_0x48b00a=_0x29f8f8['ZVNTq'](_0x1abad5);return logTransaction(_0x29f8f8['czQcm'],_0x5d4aa5[_0x52f3de(0xe3)]),logger[_0x52f3de(0xd6)]({'event':_0x29f8f8[_0x52f3de(0xb3)],'queryCount':_0x5d4aa5['length'],'totalDurationMs':_0x48b00a,'dbType':'sqlite'},'Transaction\x20committed\x20('+_0x48b00a+'ms,\x20'+_0x5d4aa5['length']+_0x52f3de(0xda)),_0x1a17e9;}catch(_0x36d3e6){const _0x20bffc=_0x1abad5();logTransaction(_0x29f8f8['rmKgi'],_0x5d4aa5['length']),logError(_0x36d3e6,{'event':_0x52f3de(0xcc),'queryCount':_0x5d4aa5['length'],'totalDurationMs':_0x20bffc,'code':_0x36d3e6['code'],'dbType':'sqlite'},'Transaction\x20failed:\x20'+_0x36d3e6[_0x52f3de(0x9a)]);throw _0x36d3e6;}}['getPool'](){const _0x1246f3=a0_0x508722;return!this['db']&&this[_0x1246f3(0xb0)](),this['db'];}[a0_0x508722(0xa3)](){const _0x43ff87=a0_0x508722,_0x5b2c0a={'JxDKY':_0x43ff87(0xd2),'rUaBF':_0x43ff87(0xb5),'cWkPG':function(_0x121377,_0x4e21dc,_0x1cd732,_0x3a86ec){return _0x121377(_0x4e21dc,_0x1cd732,_0x3a86ec);},'SZtKm':'sqlite_close_error'};try{this['db']&&(logger['info']({'event':'sqlite_closing'},_0x5b2c0a['JxDKY']),this['db']['close'](),this['db']=null,logger['info']({'event':_0x43ff87(0xbb)},_0x5b2c0a[_0x43ff87(0xb7)]));}catch(_0x312bd2){_0x5b2c0a[_0x43ff87(0xa4)](logError,_0x312bd2,{'event':_0x5b2c0a[_0x43ff87(0xb6)]},'Error\x20closing\x20SQLite\x20database:\x20'+_0x312bd2[_0x43ff87(0x9a)]);throw _0x312bd2;}}async['checkConnection'](){const _0x1ae882=a0_0x508722,_0x32218d={'OZhlk':'SELECT\x201','NhMBi':_0x1ae882(0xe5)};try{return!this['db']&&this[_0x1ae882(0xb0)](),this['db']['prepare'](_0x32218d[_0x1ae882(0x9f)])['get'](),!![];}catch(_0x42fa09){return logError(_0x42fa09,{'event':_0x32218d[_0x1ae882(0xdf)]},_0x1ae882(0xa2)+_0x42fa09[_0x1ae882(0x9a)]),![];}}}const sqliteDb=new SqliteDatabase();process['on'](a0_0x508722(0xb9),()=>{const _0x3a1e36=a0_0x508722,_0x3bed60={'gtwHR':'Received\x20SIGINT,\x20closing\x20SQLite\x20database...','BDYqE':function(_0xc0520,_0xbd6142,_0x261db2,_0x1054be){return _0xc0520(_0xbd6142,_0x261db2,_0x1054be);},'zefog':_0x3a1e36(0xb8)};logger['info']({'event':_0x3a1e36(0xbe),'signal':_0x3a1e36(0xb9)},_0x3bed60[_0x3a1e36(0xa8)]);try{sqliteDb[_0x3a1e36(0xa3)](),process[_0x3a1e36(0xd4)](0x0);}catch(_0x4ee588){_0x3bed60['BDYqE'](logError,_0x4ee588,{'event':_0x3bed60[_0x3a1e36(0xcf)],'signal':'SIGINT'},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x4ee588[_0x3a1e36(0x9a)]),process[_0x3a1e36(0xd4)](0x1);}}),process['on']('SIGTERM',()=>{const _0x44b258=a0_0x508722,_0x559f87={'qySel':_0x44b258(0xbe),'Izhzm':'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...','GpZPt':function(_0x47a4c2,_0x292870,_0x32568d,_0x239d67){return _0x47a4c2(_0x292870,_0x32568d,_0x239d67);}};logger['info']({'event':_0x559f87['qySel'],'signal':'SIGTERM'},_0x559f87['Izhzm']);try{sqliteDb[_0x44b258(0xa3)](),process['exit'](0x0);}catch(_0x3b1afa){_0x559f87[_0x44b258(0xd9)](logError,_0x3b1afa,{'event':'sqlite_shutdown_error','signal':_0x44b258(0xc6)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x3b1afa[_0x44b258(0x9a)]),process[_0x44b258(0xd4)](0x1);}}),module[a0_0x508722(0xd3)]=sqliteDb;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x189140=a0_0x2072;(function(_0xfdd300,_0x342b15){const _0x1179be=a0_0x2072,_0x17cd7d=_0xfdd300();while(!![]){try{const _0x253c75=-parseInt(_0x1179be(0x182))/0x1*(parseInt(_0x1179be(0x19a))/0x2)+-parseInt(_0x1179be(0x1c4))/0x3*(-parseInt(_0x1179be(0x1d2))/0x4)+parseInt(_0x1179be(0x1a1))/0x5+-parseInt(_0x1179be(0x17b))/0x6*(parseInt(_0x1179be(0x1cf))/0x7)+parseInt(_0x1179be(0x1a6))/0x8*(parseInt(_0x1179be(0x1cc))/0x9)+-parseInt(_0x1179be(0x1c3))/0xa+-parseInt(_0x1179be(0x1ca))/0xb;if(_0x253c75===_0x342b15)break;else _0x17cd7d['push'](_0x17cd7d['shift']());}catch(_0x482187){_0x17cd7d['push'](_0x17cd7d['shift']());}}}(a0_0x34c1,0xb2519));function a0_0x34c1(){const _0x357cb1=['Dgv4Da','zMLSBa','odeZmZbyCLHurMu','Bwf0y2G','zLDwtNK','EMP2Cu4','u2fMvK0','CgfKu3rHCNq','y29SDw1UCW','nJmXnZCWnu5LrMTNCW','tKLwuxi','C3r5Bgu','y29TBwL0','z2v0vvrdrNvSBfLLyxi','ohfsvwHiBq','EuXwBwS','uNPvqKm','ExL5Es9TBs9Kza','zM9YrwfJAa','z2v0uM93','ywXPz25Tzw50','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','ywrKv29YA3nOzwv0','q2rZveq','yxbWBhLdzwXSrM9YBwf0DgLUzW','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','CMzKzwS','CKDnExu','shDXvee','yLb0vu8','CgzprhO','zM9YBwf0q2vSBa','z2v0vvrdtw9UDgG','ENbIuMO','yxv0BW','DMfSAwrHDgvdB2X1Bw5Z','C3rYzwfT','zxHJzwXFy2H1BMTFChjVy2vZC2vK','BwfW','AM9PBG','v21NBgO','CgvYy2vUDgfNzq','DgXizMq','mJqZmJCWmfbxsMD3za','m1zPvxbyvW','zNjVEMvU','AhH0wNe','rgf0yq','Bw0VzgqVExL5Eq','zw52','ntyYnty5n29tCfHHAG','z2v0vgLTzq','nZa5mJGWmvzsshr3Ea','zxHJzwXQCW','lI9SB2DNzxi','ntC3mdfmuxzAuxu','zM9UDa','A2v5CW','mtGXntC2ohfiBNDKEq','q3fNyum','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','ihjVD3m','CMfpAvC','Dg9mB3DLCKnHC2u','yu5sDgG','CfHTugG','rKzgrKzgrKy','zM9YBwf0rgf0zvn0CMLUzW','Dg9vChbLCKnHC2u','yxbWBhLsB3DgB3jTyxr0Aw5N','v29YA2jVB2TxCML0zxi','Chjyz1G','z2vUzxjHDgvtDhjLyw1PBMC','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','zgf0zq','vLvxC1m','wNbqD3G','qNr3uxC','DMfSDwu','C3rYAw5N','zgqVBw0VExL5Eq','rMDABfa','twrdugy','nJu0B0rPD0vO','zM9YBwf0sgvHzgvY','Cgf0DgvYBG','u2reELi','zgvIDwC','C29SAwq','Cg5HvKy','m0ruterHBG','rKy0ndCYqZq','wML2t3u','y3vYCMvUy3K','Aw5MBW','rvHqt1jux0nivu5lx1njwKu','sKTjD1u','wMHxAKq','y2H1BMTtAxPL','DhLWzq','rxDgzuC','CgfYC2voDw1Izxi','BgvUz3rO','BNvTyMvY','z2vUzxjHDgvtAw1WBgu','BwLKzgXL','uhfwBvu','z2v0vvrdrgf0zq','EgXZEa','v2HywMC','z0Tsyxu','Dxb6EKW'];a0_0x34c1=function(){return _0x357cb1;};return a0_0x34c1();}function a0_0x2072(_0x1f71b1,_0x236f3e){_0x1f71b1=_0x1f71b1-0x176;const _0x34c13b=a0_0x34c1();let _0x207202=_0x34c13b[_0x1f71b1];if(a0_0x2072['OGkOJn']===undefined){var _0x1d9c6b=function(_0x1ea4e8){const _0x2d26bf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47cac7='',_0x5182bf='';for(let _0x1a8da7=0x0,_0x1cb2dc,_0x20385e,_0x5cc117=0x0;_0x20385e=_0x1ea4e8['charAt'](_0x5cc117++);~_0x20385e&&(_0x1cb2dc=_0x1a8da7%0x4?_0x1cb2dc*0x40+_0x20385e:_0x20385e,_0x1a8da7++%0x4)?_0x47cac7+=String['fromCharCode'](0xff&_0x1cb2dc>>(-0x2*_0x1a8da7&0x6)):0x0){_0x20385e=_0x2d26bf['indexOf'](_0x20385e);}for(let _0x2d595c=0x0,_0xef966c=_0x47cac7['length'];_0x2d595c<_0xef966c;_0x2d595c++){_0x5182bf+='%'+('00'+_0x47cac7['charCodeAt'](_0x2d595c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5182bf);};a0_0x2072['OTWqJz']=_0x1d9c6b,a0_0x2072['SymXUP']={},a0_0x2072['OGkOJn']=!![];}const _0x372922=_0x34c13b[0x0],_0x402f2d=_0x1f71b1+_0x372922,_0x19a1d0=a0_0x2072['SymXUP'][_0x402f2d];return!_0x19a1d0?(_0x207202=a0_0x2072['OTWqJz'](_0x207202),a0_0x2072['SymXUP'][_0x402f2d]=_0x207202):_0x207202=_0x19a1d0,_0x207202;}const ExcelJS=require(a0_0x189140(0x1cd)),{logger}=require(a0_0x189140(0x1ce));class ExcelGenerator{constructor(){const _0x5f49dc=a0_0x189140,_0x40edb1={'rGMyu':function(_0x28905d,_0x372cfc,_0x36bca5){return _0x28905d(_0x372cfc,_0x36bca5);}};this['chunkSize']=_0x40edb1[_0x5f49dc(0x1b3)](parseInt,process[_0x5f49dc(0x1c9)][_0x5f49dc(0x187)],0xa)||0x3e8;}async['generate'](_0x3a56c6){const _0x26381c=a0_0x189140,_0x2b6148={'NIVQr':'excel_generation_start','uhVZU':_0x26381c(0x1ba),'SdDzR':function(_0x39bf07,_0x4bcf86){return _0x39bf07>_0x4bcf86;},'ShSNO':function(_0x4504be,_0x4962c7){return _0x4504be<=_0x4962c7;}},{data:_0xf5bdd5,columns:_0xdcf5cc,columnFormats:_0x1e7660,fieldLabels:_0x26d479,filePath:_0x1db60b,onProgress:_0x4f05f4}=_0x3a56c6;logger[_0x26381c(0x186)]({'event':_0x2b6148[_0x26381c(0x1a2)],'rows':_0xf5bdd5[_0x26381c(0x18e)],'columns':_0xdcf5cc?.[_0x26381c(0x18e)]||_0x2b6148['uhVZU'],'columnFormats':_0x1e7660?Object[_0x26381c(0x1d1)](_0x1e7660):null,'fieldLabels':_0x26d479?Object[_0x26381c(0x1d1)](_0x26d479):null,'streaming':_0x2b6148[_0x26381c(0x17e)](_0xf5bdd5[_0x26381c(0x18e)],this[_0x26381c(0x18a)])},'Excel\x20generation\x20started');if(_0x2b6148['ShSNO'](_0xf5bdd5[_0x26381c(0x18e)],this['chunkSize']))return await this['generateSimple'](_0xf5bdd5,_0xdcf5cc,_0x1e7660,_0x26d479,_0x1db60b,_0x4f05f4);return await this[_0x26381c(0x1e0)](_0xf5bdd5,_0xdcf5cc,_0x1e7660,_0x26d479,_0x1db60b,_0x4f05f4);}async[a0_0x189140(0x190)](_0x9dbc55,_0x3e29c3,_0x2bd2ea,_0x570816,_0x40da1f,_0x157958){const _0x2c57bf=a0_0x189140,_0x54ec47={'QJdpY':function(_0x1e7599,_0x1193a7){return _0x1e7599!==_0x1193a7;},'aNRth':_0x2c57bf(0x1e2),'CqgaC':_0x2c57bf(0x1da),'zjvqN':_0x2c57bf(0x17d),'Teqes':_0x2c57bf(0x180),'FdLVg':_0x2c57bf(0x191),'KcSoh':'center','SkaXG':_0x2c57bf(0x1d4)},_0x213102=new ExcelJS['Workbook'](),_0x24a65e=_0x213102[_0x2c57bf(0x1ae)](_0x2c57bf(0x1c7)),_0x1b9977=_0x3e29c3||(_0x9dbc55[_0x2c57bf(0x18e)]>0x0?Object[_0x2c57bf(0x1d1)](_0x9dbc55[0x0]):[]);_0x24a65e[_0x2c57bf(0x1a0)]=_0x1b9977[_0x2c57bf(0x1be)](_0x26c1dc=>{const _0x45dee9=_0x2c57bf,_0x1a13b1={'header':this['formatHeader'](_0x26c1dc,_0x570816),'key':_0x26c1dc,'width':0x14};if(_0x2bd2ea&&_0x2bd2ea[_0x26c1dc]){const _0x31f893=_0x2bd2ea[_0x26c1dc];if(_0x31f893['type']&&_0x54ec47['QJdpY'](_0x31f893['type'][_0x45dee9(0x1d7)](),_0x54ec47[_0x45dee9(0x1d8)])){const _0x172b46=this['getExcelFormat'](_0x31f893);_0x172b46&&(_0x1a13b1[_0x45dee9(0x1a3)]={'numFmt':_0x172b46});}}return _0x1a13b1;}),_0x24a65e[_0x2c57bf(0x1ab)](0x1)[_0x2c57bf(0x1d0)]={'bold':!![],'color':{'argb':_0x54ec47[_0x2c57bf(0x1d3)]}},_0x24a65e[_0x2c57bf(0x1ab)](0x1)[_0x2c57bf(0x199)]={'type':_0x54ec47[_0x2c57bf(0x19d)],'pattern':_0x54ec47['Teqes'],'fgColor':{'argb':_0x2c57bf(0x183)}},_0x24a65e['getRow'](0x1)[_0x2c57bf(0x1ac)]={'vertical':_0x54ec47['FdLVg'],'horizontal':_0x54ec47['KcSoh']};const _0xc475b4=_0x2bd2ea?this['preprocessTextColumns'](_0x9dbc55,_0x1b9977,_0x2bd2ea):_0x9dbc55;return _0x24a65e['addRows'](_0xc475b4),_0x2bd2ea&&this[_0x2c57bf(0x1b0)](_0x24a65e,_0x1b9977,_0x2bd2ea,_0x9dbc55['length']),_0x157958&&await _0x157958(0x32),_0x24a65e['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x1b9977['length']}},_0x24a65e['views']=[{'state':_0x2c57bf(0x1c5),'xSplit':0x0,'ySplit':0x1}],await _0x213102[_0x2c57bf(0x194)]['writeFile'](_0x40da1f),_0x157958&&await _0x157958(0x64),logger['info']({'event':_0x2c57bf(0x1b1),'method':'simple','rows':_0x9dbc55[_0x2c57bf(0x18e)]},_0x54ec47['SkaXG']),_0x40da1f;}async[a0_0x189140(0x1e0)](_0x3bb4bf,_0x1b9761,_0x5691f8,_0x8b5d4b,_0x357e10,_0x1ad3c4){const _0xff78f3=a0_0x189140,_0x1d2c0e={'BXMwO':function(_0x1c2dc3,_0x19c7b5){return _0x1c2dc3!==_0x19c7b5;},'kyQNx':'Data','pfODz':'pattern','rfdek':_0xff78f3(0x180),'FgZlP':function(_0x265c5b,_0x553217){return _0x265c5b+_0x553217;},'xymQs':'streaming','VUWsS':function(_0x14eea9,_0x370c40){return _0x14eea9/_0x370c40;},'ObavA':_0xff78f3(0x1e1)},_0x1edb8d=new ExcelJS[(_0xff78f3(0x1bc))]['xlsx'][(_0xff78f3(0x1de))]({'filename':_0x357e10,'useStyles':!![],'useSharedStrings':!![]}),_0x5d7f0a=_0x1edb8d[_0xff78f3(0x1ae)](_0x1d2c0e['kyQNx']),_0x320a45=_0x1b9761||(_0x3bb4bf['length']>0x0?Object['keys'](_0x3bb4bf[0x0]):[]),_0x13bf6d={};_0x320a45[_0xff78f3(0x1aa)]((_0x2b2d57,_0x1d5ca8)=>{_0x13bf6d[_0x2b2d57]=_0x1d5ca8+0x1;}),_0x5d7f0a[_0xff78f3(0x1a0)]=_0x320a45[_0xff78f3(0x1be)](_0x245187=>{const _0x2b23bc=_0xff78f3,_0x330436={'header':this['formatHeader'](_0x245187,_0x8b5d4b),'key':_0x245187,'width':0x14};if(_0x5691f8&&_0x5691f8[_0x245187]){const _0x13beed=_0x5691f8[_0x245187];if(_0x13beed[_0x2b23bc(0x18b)]&&_0x1d2c0e['BXMwO'](_0x13beed['type'][_0x2b23bc(0x1d7)](),'date')){const _0x19e0e3=this['getExcelFormat'](_0x13beed);_0x19e0e3&&(_0x330436['style']={'numFmt':_0x19e0e3});}}return _0x330436;});const _0x752e91=_0x5d7f0a[_0xff78f3(0x1ab)](0x1);_0x752e91['font']={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x752e91[_0xff78f3(0x199)]={'type':_0x1d2c0e[_0xff78f3(0x1b6)],'pattern':_0x1d2c0e[_0xff78f3(0x1b2)],'fgColor':{'argb':'FF4472C4'}},_0x752e91['alignment']={'vertical':'middle','horizontal':'center'},_0x752e91[_0xff78f3(0x1a4)]();const _0x5f0fd8=_0x3bb4bf['length'];let _0x57b577=0x0;for(let _0x13c46e=0x0;_0x13c46e<_0x5f0fd8;_0x13c46e+=this[_0xff78f3(0x18a)]){const _0x5306ac=_0x3bb4bf['slice'](_0x13c46e,_0x1d2c0e[_0xff78f3(0x179)](_0x13c46e,this[_0xff78f3(0x18a)]));for(const _0x19c78b of _0x5306ac){const _0x15d410=_0x5691f8?this['preprocessTextRow'](_0x19c78b,_0x320a45,_0x5691f8):_0x19c78b,_0xd26aa0=_0x5d7f0a['addRow'](_0x15d410);_0x5691f8&&this['applyRowFormatting'](_0xd26aa0,_0x15d410,_0x320a45,_0x5691f8),_0xd26aa0['commit'](),_0x57b577++;}if(_0x1ad3c4){const _0x1a78cb=Math['round'](_0x57b577/_0x5f0fd8*0x64);await _0x1ad3c4(_0x1a78cb);}logger[_0xff78f3(0x17f)]({'event':_0xff78f3(0x1bd),'processed':_0x57b577,'total':_0x5f0fd8},'Processed\x20'+_0x57b577+'/'+_0x5f0fd8+_0xff78f3(0x1d5));}return _0x5d7f0a['commit'](),await _0x1edb8d['commit'](),logger[_0xff78f3(0x186)]({'event':'excel_generation_complete','method':_0x1d2c0e['xymQs'],'rows':_0x5f0fd8,'chunks':Math['ceil'](_0x1d2c0e[_0xff78f3(0x1e3)](_0x5f0fd8,this['chunkSize']))},_0x1d2c0e['ObavA']),_0x357e10;}[a0_0x189140(0x17c)](_0x47eb43,_0xe9fad3){const _0x4c449c=a0_0x189140;if(_0xe9fad3&&_0xe9fad3[_0x47eb43])return _0xe9fad3[_0x47eb43];return String(_0x47eb43)[_0x4c449c(0x1dc)]();}[a0_0x189140(0x1bb)](_0x31d036,_0x119c0c){const _0x5d5ab2=a0_0x189140,_0x715534={'EwFeG':function(_0x3cd6fc,_0x512de9){return _0x3cd6fc===_0x512de9;},'ZpPwx':function(_0x103305,_0x77d4aa){return _0x103305>_0x77d4aa;}};if(!_0x119c0c||_0x119c0c[_0x5d5ab2(0x18e)]===0x0)return!![];if(_0x715534[_0x5d5ab2(0x18c)](_0x31d036['length'],0x0))return!![];const _0x4b9ba6=Object[_0x5d5ab2(0x1d1)](_0x31d036[0x0]),_0x38f076=_0x119c0c['filter'](_0x37501d=>!_0x4b9ba6['includes'](_0x37501d));if(_0x715534[_0x5d5ab2(0x1e4)](_0x38f076['length'],0x0))throw new Error('Invalid\x20columns:\x20'+_0x38f076[_0x5d5ab2(0x1bf)](',\x20'));return!![];}['getExcelFormat'](_0x11088d){const _0x4455b7=a0_0x189140,_0x518988={'GGDjh':_0x4455b7(0x1e2),'yLVmk':_0x4455b7(0x178),'ZivOu':function(_0x31fa14,_0x495671){return _0x31fa14||_0x495671;},'nRiWY':'#,##0.00','cjCYS':function(_0x38de28,_0xc7ba2f){return _0x38de28||_0xc7ba2f;},'WhXZg':'\x22Rp\x20\x22#,##0','gKRau':_0x4455b7(0x1c1),'NYYBG':function(_0x19db2c,_0x3ff212){return _0x19db2c||_0x3ff212;},'SxuYX':'0.00%'};if(!_0x11088d||!_0x11088d[_0x4455b7(0x18b)])return null;const {type:_0x5e10a8,format:_0x46a2bd}=_0x11088d;switch(_0x5e10a8[_0x4455b7(0x1d7)]()){case _0x518988['GGDjh']:return _0x46a2bd?_0x46a2bd[_0x4455b7(0x1d7)]():_0x518988[_0x4455b7(0x1a7)];case'number':return _0x518988[_0x4455b7(0x184)](_0x46a2bd,_0x518988['nRiWY']);case'currency':return _0x518988['cjCYS'](_0x46a2bd,_0x518988[_0x4455b7(0x195)]);case _0x518988[_0x4455b7(0x196)]:return _0x518988['NYYBG'](_0x46a2bd,_0x518988['SxuYX']);case _0x4455b7(0x198):return'@';default:return null;}}['applyCellFormatting'](_0x41ac25,_0x5bc252,_0x388b07,_0xb83fb6){const _0x209d86={'pnaVF':function(_0x2c91e3,_0x486ba3){return _0x2c91e3+_0x486ba3;}};if(!_0x388b07)return;_0x5bc252['forEach']((_0x47bda8,_0x1f7b6d)=>{const _0xe2010e=a0_0x2072,_0x3b4b30=_0x388b07[_0x47bda8];if(!_0x3b4b30)return;const _0x1047cf=_0x1f7b6d+0x1;for(let _0x53a188=0x2;_0x53a188<=_0x209d86[_0xe2010e(0x181)](_0xb83fb6,0x1);_0x53a188++){const _0xb1b6f1=_0x41ac25['getCell'](_0x53a188,_0x1047cf);this[_0xe2010e(0x1b7)](_0xb1b6f1,_0x3b4b30);}});}[a0_0x189140(0x1dd)](_0x15102d,_0x225a64,_0x3d9913,_0x41ec2c){const _0x53812a=a0_0x189140;if(!_0x41ec2c)return;_0x3d9913[_0x53812a(0x1aa)]((_0x5da2ba,_0x5e0949)=>{const _0x5078fd=_0x41ec2c[_0x5da2ba];if(!_0x5078fd)return;const _0x2465df=_0x15102d['getCell'](_0x5e0949+0x1);this['formatCell'](_0x2465df,_0x5078fd);});}['formatCell'](_0x3a1f53,_0x4cda5f){const _0x6d73e3=a0_0x189140,_0x19f0dc={'tlHfd':function(_0x214075,_0x42ed82){return _0x214075===_0x42ed82;},'raOiW':'percentage','zpbRj':function(_0xed136d,_0x279f50){return _0xed136d===_0x279f50;},'QxpLF':function(_0x473d81,_0x1c340f){return _0x473d81(_0x1c340f);}};if(!_0x4cda5f||!_0x4cda5f[_0x6d73e3(0x18b)])return;const {type:_0x7f0eb4,format:_0xc27d79}=_0x4cda5f;if(_0x7f0eb4[_0x6d73e3(0x1d7)]()==='date'&&_0x3a1f53[_0x6d73e3(0x176)]){const _0x2411a0=this['formatDateString'](_0x3a1f53[_0x6d73e3(0x176)],_0xc27d79);_0x2411a0&&(_0x3a1f53['value']=_0x2411a0);return;}if((_0x7f0eb4['toLowerCase']()===_0x6d73e3(0x18f)||_0x19f0dc[_0x6d73e3(0x1c2)](_0x7f0eb4['toLowerCase'](),_0x6d73e3(0x185))||_0x7f0eb4['toLowerCase']()===_0x19f0dc[_0x6d73e3(0x1d6)])&&_0x3a1f53['value']){const _0x2f9df6=this[_0x6d73e3(0x18d)](_0x3a1f53[_0x6d73e3(0x176)]);if(_0x2f9df6!==null){_0x3a1f53['value']=_0x2f9df6;const _0x1269f2=this['getExcelFormat'](_0x4cda5f);_0x1269f2&&(_0x3a1f53['numFmt']=_0x1269f2);}}_0x19f0dc[_0x6d73e3(0x1b9)](_0x7f0eb4['toLowerCase'](),'text')&&_0x3a1f53['value']&&(_0x3a1f53['numFmt']='@',typeof _0x3a1f53[_0x6d73e3(0x176)]!=='string'&&(_0x3a1f53['value']=_0x19f0dc['QxpLF'](String,_0x3a1f53[_0x6d73e3(0x176)])),_0x3a1f53[_0x6d73e3(0x1ac)]={'horizontal':'left','vertical':'middle'});}[a0_0x189140(0x1db)](_0x49cfc2,_0x3417ca){const _0x53ec94=a0_0x189140,_0x39cc7d={'CdsTD':function(_0x434373,_0x3ee216){return _0x434373 instanceof _0x3ee216;},'oSlHk':function(_0x3fc85a,_0xf0044d){return _0x3fc85a===_0xf0044d;},'upzzL':'string','Wmglj':function(_0x28b907,_0x3eac64,_0x29722c){return _0x28b907(_0x3eac64,_0x29722c);},'mmNks':function(_0x532e68,_0x20883e,_0x2d142a){return _0x532e68(_0x20883e,_0x2d142a);},'bPtUO':function(_0x246577,_0x3ad8dc,_0x590c9c){return _0x246577(_0x3ad8dc,_0x590c9c);},'PqVmU':function(_0x553c3d,_0x37ddf7,_0x474d06){return _0x553c3d(_0x37ddf7,_0x474d06);},'JUWYL':function(_0x4dd7ec,_0x873bf5,_0x2ca71a){return _0x4dd7ec(_0x873bf5,_0x2ca71a);},'RzUBC':function(_0x2059c0,_0x3513a2,_0x473526){return _0x2059c0(_0x3513a2,_0x473526);},'MdCPf':function(_0x3929a2,_0x5a25e1){return _0x3929a2===_0x5a25e1;},'bYFlF':function(_0x2fe70a,_0x23ad76){return _0x2fe70a(_0x23ad76);},'prXgX':'DD/MM/YYYY','uljXn':'dd/mm/yyyy','ZhWjD':function(_0x528b26,_0x532c08){return _0x528b26===_0x532c08;},'JKIwU':'yyyy-mm-dd','fWVNy':function(_0xa05123,_0x52f595){return _0xa05123===_0x52f595;},'hxtZq':'dd-mm-yyyy'};if(!_0x49cfc2)return null;let _0x3e1fa0,_0x53a7b3,_0x1e0bcb;if(_0x39cc7d[_0x53ec94(0x1af)](_0x49cfc2,Date))_0x3e1fa0=_0x49cfc2[_0x53ec94(0x1a5)](),_0x53a7b3=_0x49cfc2['getUTCMonth']()+0x1,_0x1e0bcb=_0x49cfc2['getUTCDate']();else{if(_0x39cc7d['oSlHk'](typeof _0x49cfc2,_0x39cc7d[_0x53ec94(0x197)])){const _0x4ece2c=_0x49cfc2['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x4ece2c)_0x3e1fa0=_0x39cc7d[_0x53ec94(0x1c0)](parseInt,_0x4ece2c[0x1],0xa),_0x53a7b3=_0x39cc7d['mmNks'](parseInt,_0x4ece2c[0x2],0xa),_0x1e0bcb=_0x39cc7d['bPtUO'](parseInt,_0x4ece2c[0x3],0xa);else{const _0x3c3507=_0x49cfc2[_0x53ec94(0x19b)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x3c3507)_0x1e0bcb=parseInt(_0x3c3507[0x1],0xa),_0x53a7b3=_0x39cc7d[_0x53ec94(0x192)](parseInt,_0x3c3507[0x2],0xa),_0x3e1fa0=_0x39cc7d[_0x53ec94(0x1b5)](parseInt,_0x3c3507[0x3],0xa);else{const _0x1df7eb=_0x49cfc2['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x1df7eb&&(_0x3e1fa0=parseInt(_0x1df7eb[0x1],0xa),_0x53a7b3=_0x39cc7d['JUWYL'](parseInt,_0x1df7eb[0x2],0xa),_0x1e0bcb=_0x39cc7d[_0x53ec94(0x1a8)](parseInt,_0x1df7eb[0x3],0xa));}}}else{if(_0x39cc7d[_0x53ec94(0x17a)](typeof _0x49cfc2,'number')){const _0x316596=new Date(_0x49cfc2);!isNaN(_0x316596[_0x53ec94(0x1cb)]())&&(_0x3e1fa0=_0x316596[_0x53ec94(0x1a5)](),_0x53a7b3=_0x316596[_0x53ec94(0x1b8)]()+0x1,_0x1e0bcb=_0x316596[_0x53ec94(0x193)]());}}}if(!_0x3e1fa0||!_0x53a7b3||!_0x1e0bcb)return null;const _0xec9668=_0x39cc7d['bYFlF'](String,_0x1e0bcb)[_0x53ec94(0x19f)](0x2,'0'),_0x3db2ee=String(_0x53a7b3)[_0x53ec94(0x19f)](0x2,'0'),_0x7c6478=String(_0x3e1fa0),_0x50598c=(_0x3417ca||_0x39cc7d[_0x53ec94(0x1df)])[_0x53ec94(0x1d7)]();if(_0x50598c===_0x39cc7d['uljXn'])return _0xec9668+'/'+_0x3db2ee+'/'+_0x7c6478;else{if(_0x50598c===_0x53ec94(0x1c8))return _0x3db2ee+'/'+_0xec9668+'/'+_0x7c6478;else{if(_0x39cc7d[_0x53ec94(0x189)](_0x50598c,_0x39cc7d[_0x53ec94(0x188)]))return _0x7c6478+'-'+_0x3db2ee+'-'+_0xec9668;else{if(_0x39cc7d[_0x53ec94(0x19c)](_0x50598c,_0x39cc7d[_0x53ec94(0x1c6)]))return _0xec9668+'-'+_0x3db2ee+'-'+_0x7c6478;else return _0x50598c===_0x53ec94(0x1a9)?_0x7c6478+'/'+_0x3db2ee+'/'+_0xec9668:_0xec9668+'/'+_0x3db2ee+'/'+_0x7c6478;}}}}[a0_0x189140(0x18d)](_0x2af7c7){const _0xb47f90=a0_0x189140,_0x578279={'qYyBx':'number'};if(typeof _0x2af7c7===_0x578279['qYyBx'])return _0x2af7c7;if(typeof _0x2af7c7===_0xb47f90(0x177)){const _0x56ff83=_0x2af7c7['replace'](/[^\d.-]/g,''),_0xfa4068=parseFloat(_0x56ff83);if(!isNaN(_0xfa4068))return _0xfa4068;}return null;}[a0_0x189140(0x1ad)](_0x314e90,_0x262af7,_0x590c25){const _0x5bcbc9=a0_0x189140,_0x32ccbe={'BtwQw':_0x5bcbc9(0x198),'QBYiG':function(_0x5d6a58,_0x9b17e){return _0x5d6a58!==_0x9b17e;},'xrHti':function(_0x399e6f,_0x2d0d89){return _0x399e6f===_0x2d0d89;}};if(!_0x590c25)return _0x314e90;const _0x41a401=[];_0x262af7[_0x5bcbc9(0x1aa)](_0x3ee7e3=>{const _0x34b51c=_0x5bcbc9,_0x4bef2a=_0x590c25[_0x3ee7e3];_0x4bef2a&&_0x4bef2a['type']&&_0x4bef2a['type'][_0x34b51c(0x1d7)]()===_0x32ccbe[_0x34b51c(0x1e5)]&&_0x41a401['push'](_0x3ee7e3);});if(_0x32ccbe['xrHti'](_0x41a401['length'],0x0))return _0x314e90;return _0x314e90[_0x5bcbc9(0x1be)](_0x20f929=>{const _0x433c83=_0x5bcbc9,_0x56a050={'HwqTA':function(_0x5c77ca,_0xf78551){return _0x32ccbe['QBYiG'](_0x5c77ca,_0xf78551);}},_0x49f71f={..._0x20f929};return _0x41a401[_0x433c83(0x1aa)](_0x4af0f0=>{const _0x212391=_0x433c83;_0x49f71f[_0x4af0f0]!==null&&_0x56a050[_0x212391(0x1b4)](_0x49f71f[_0x4af0f0],undefined)&&(_0x49f71f[_0x4af0f0]='\x27'+String(_0x49f71f[_0x4af0f0]));}),_0x49f71f;});}['preprocessTextRow'](_0x1bdb68,_0x257f4b,_0x5f0db7){const _0x2e6d8e=a0_0x189140,_0x1a44c1={'fJHWl':function(_0x4aad8a,_0x4a07a6){return _0x4aad8a===_0x4a07a6;},'SafVM':_0x2e6d8e(0x198),'wXaHd':function(_0x56df78,_0x5ab9a0){return _0x56df78!==_0x5ab9a0;},'XsHjf':function(_0x12b7da,_0x43954b){return _0x12b7da+_0x43954b;},'pXmPh':function(_0x364180,_0x40b8f9){return _0x364180(_0x40b8f9);}};if(!_0x5f0db7)return _0x1bdb68;const _0x3a7d2f=[];_0x257f4b['forEach'](_0x1ca958=>{const _0x278cd8=_0x2e6d8e,_0xbf554d=_0x5f0db7[_0x1ca958];_0xbf554d&&_0xbf554d['type']&&_0x1a44c1['fJHWl'](_0xbf554d[_0x278cd8(0x18b)][_0x278cd8(0x1d7)](),_0x1a44c1[_0x278cd8(0x19e)])&&_0x3a7d2f['push'](_0x1ca958);});if(_0x3a7d2f['length']===0x0)return _0x1bdb68;const _0x340f7e={..._0x1bdb68};return _0x3a7d2f[_0x2e6d8e(0x1aa)](_0x508241=>{const _0x59f4e7=_0x2e6d8e;_0x1a44c1['wXaHd'](_0x340f7e[_0x508241],null)&&_0x340f7e[_0x508241]!==undefined&&(_0x340f7e[_0x508241]=_0x1a44c1['XsHjf']('\x27',_0x1a44c1[_0x59f4e7(0x1d9)](String,_0x340f7e[_0x508241])));}),_0x340f7e;}}module['exports']=ExcelGenerator;
|
|
1
|
+
const a0_0x3f4818=a0_0x2727;function a0_0x2727(_0x28e9b2,_0x39ef20){_0x28e9b2=_0x28e9b2-0x189;const _0x3533e1=a0_0x3533();let _0x2727ad=_0x3533e1[_0x28e9b2];if(a0_0x2727['xPbtXM']===undefined){var _0x272914=function(_0x2e30fe){const _0x499133='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20da0c='',_0x13c0a4='';for(let _0x54a3cc=0x0,_0x275fb8,_0x307c83,_0xc5ee6=0x0;_0x307c83=_0x2e30fe['charAt'](_0xc5ee6++);~_0x307c83&&(_0x275fb8=_0x54a3cc%0x4?_0x275fb8*0x40+_0x307c83:_0x307c83,_0x54a3cc++%0x4)?_0x20da0c+=String['fromCharCode'](0xff&_0x275fb8>>(-0x2*_0x54a3cc&0x6)):0x0){_0x307c83=_0x499133['indexOf'](_0x307c83);}for(let _0x294ddb=0x0,_0x5b97e4=_0x20da0c['length'];_0x294ddb<_0x5b97e4;_0x294ddb++){_0x13c0a4+='%'+('00'+_0x20da0c['charCodeAt'](_0x294ddb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13c0a4);};a0_0x2727['UClUfO']=_0x272914,a0_0x2727['oMCTuo']={},a0_0x2727['xPbtXM']=!![];}const _0x30b428=_0x3533e1[0x0],_0x53df08=_0x28e9b2+_0x30b428,_0x2b0fc1=a0_0x2727['oMCTuo'][_0x53df08];return!_0x2b0fc1?(_0x2727ad=a0_0x2727['UClUfO'](_0x2727ad),a0_0x2727['oMCTuo'][_0x53df08]=_0x2727ad):_0x2727ad=_0x2b0fc1,_0x2727ad;}(function(_0x5e7ac8,_0x4b3902){const _0x10902c=a0_0x2727,_0x1382ca=_0x5e7ac8();while(!![]){try{const _0xb347d7=-parseInt(_0x10902c(0x1d4))/0x1*(parseInt(_0x10902c(0x1a0))/0x2)+parseInt(_0x10902c(0x1d5))/0x3*(parseInt(_0x10902c(0x1bf))/0x4)+parseInt(_0x10902c(0x1bb))/0x5*(parseInt(_0x10902c(0x1e2))/0x6)+-parseInt(_0x10902c(0x18e))/0x7+-parseInt(_0x10902c(0x1e9))/0x8*(parseInt(_0x10902c(0x1d2))/0x9)+-parseInt(_0x10902c(0x1df))/0xa+-parseInt(_0x10902c(0x1ae))/0xb*(-parseInt(_0x10902c(0x1b6))/0xc);if(_0xb347d7===_0x4b3902)break;else _0x1382ca['push'](_0x1382ca['shift']());}catch(_0x2f1f60){_0x1382ca['push'](_0x1382ca['shift']());}}}(a0_0x3533,0x326c8));const ExcelJS=require('exceljs'),{logger}=require('./logger');class ExcelGenerator{constructor(){this['chunkSize']=parseInt(process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async[a0_0x3f4818(0x1cb)](_0x3fa83a){const _0x3fd153=a0_0x3f4818,_0x1087b5={'hEZvq':_0x3fd153(0x19d),'aGLWz':_0x3fd153(0x1c2)},{data:_0x26184c,columns:_0x449bfc,columnFormats:_0x26ab31,fieldLabels:_0x239260,filePath:_0x5ba966,onProgress:_0x6d936c}=_0x3fa83a;logger['info']({'event':_0x1087b5[_0x3fd153(0x1b0)],'rows':_0x26184c[_0x3fd153(0x19e)],'columns':_0x449bfc?.['length']||'auto','columnFormats':_0x26ab31?Object['keys'](_0x26ab31):null,'fieldLabels':_0x239260?Object['keys'](_0x239260):null,'streaming':_0x26184c['length']>this['chunkSize']},_0x1087b5['aGLWz']);if(_0x26184c[_0x3fd153(0x19e)]<=this['chunkSize'])return await this['generateSimple'](_0x26184c,_0x449bfc,_0x26ab31,_0x239260,_0x5ba966,_0x6d936c);return await this['generateStreaming'](_0x26184c,_0x449bfc,_0x26ab31,_0x239260,_0x5ba966,_0x6d936c);}async[a0_0x3f4818(0x1ce)](_0x3519c1,_0xd09add,_0x5d78f0,_0x52e4d6,_0x1c85e2,_0x13612b){const _0x14f0fd=a0_0x3f4818,_0x1c9464={'NkNDz':_0x14f0fd(0x1dd),'cQNII':function(_0xb61aef,_0x4e9de4){return _0xb61aef>_0x4e9de4;},'WsLUM':'FF4472C4','ANhfG':_0x14f0fd(0x19a),'PPwcn':_0x14f0fd(0x1cc),'GeTqw':function(_0x245267,_0x485266){return _0x245267(_0x485266);},'zPeBZ':_0x14f0fd(0x1c8),'DtkNs':_0x14f0fd(0x195),'cdpYx':'Excel\x20generated\x20(simple\x20method)'},_0x210fc1=new ExcelJS['Workbook'](),_0x5c25b8=_0x210fc1['addWorksheet'](_0x1c9464[_0x14f0fd(0x1c4)]),_0x25e81d=_0xd09add||(_0x1c9464['cQNII'](_0x3519c1['length'],0x0)?Object['keys'](_0x3519c1[0x0]):[]);_0x5c25b8['columns']=_0x25e81d[_0x14f0fd(0x1dc)](_0xbe550b=>{const _0x410bb5=_0x14f0fd,_0x15a027={'header':this['formatHeader'](_0xbe550b,_0x52e4d6),'key':_0xbe550b,'width':0x14};if(_0x5d78f0&&_0x5d78f0[_0xbe550b]){const _0x5192ec=_0x5d78f0[_0xbe550b];if(_0x5192ec['type']&&_0x5192ec['type'][_0x410bb5(0x1c7)]()!==_0x410bb5(0x1a2)){const _0x356188=this[_0x410bb5(0x1eb)](_0x5192ec);_0x356188&&(_0x15a027[_0x410bb5(0x1b3)]={'numFmt':_0x356188});}}return _0x15a027;}),_0x5c25b8[_0x14f0fd(0x1a4)](0x1)[_0x14f0fd(0x1ea)]={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x5c25b8[_0x14f0fd(0x1a4)](0x1)[_0x14f0fd(0x1c5)]={'type':'pattern','pattern':_0x14f0fd(0x1f9),'fgColor':{'argb':_0x1c9464['WsLUM']}},_0x5c25b8[_0x14f0fd(0x1a4)](0x1)[_0x14f0fd(0x1ac)]={'vertical':_0x1c9464[_0x14f0fd(0x1db)],'horizontal':_0x1c9464['PPwcn']};const _0x1cb24f=_0x5d78f0?this[_0x14f0fd(0x1c0)](_0x3519c1,_0x25e81d,_0x5d78f0):_0x3519c1;return _0x5c25b8[_0x14f0fd(0x18d)](_0x1cb24f),_0x5d78f0&&this['applyCellFormatting'](_0x5c25b8,_0x25e81d,_0x5d78f0,_0x3519c1[_0x14f0fd(0x19e)]),_0x13612b&&await _0x1c9464['GeTqw'](_0x13612b,0x32),_0x5c25b8['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x25e81d['length']}},_0x5c25b8['views']=[{'state':_0x1c9464['zPeBZ'],'xSplit':0x0,'ySplit':0x1}],await _0x210fc1['xlsx']['writeFile'](_0x1c85e2),_0x13612b&&await _0x1c9464[_0x14f0fd(0x18f)](_0x13612b,0x64),logger[_0x14f0fd(0x190)]({'event':_0x1c9464['DtkNs'],'method':_0x14f0fd(0x1e6),'rows':_0x3519c1['length']},_0x1c9464[_0x14f0fd(0x19f)]),_0x1c85e2;}async['generateStreaming'](_0x10201e,_0x5555ea,_0x490354,_0x5e5460,_0x2bd05d,_0x5025f7){const _0x26bef6=a0_0x3f4818,_0xd13fd0={'AoKCK':'date','KiveY':'Data','VUeOM':_0x26bef6(0x1e0),'IvRYV':function(_0x4c7c08,_0x1fe2ef){return _0x4c7c08+_0x1fe2ef;},'NQDlE':function(_0x139319,_0x3fddfd){return _0x139319*_0x3fddfd;},'zXQsC':function(_0x79dc3a,_0x2c3513){return _0x79dc3a/_0x2c3513;},'fJAKH':'excel_chunk_processed','OpTPG':_0x26bef6(0x195)},_0x96de5=new ExcelJS[(_0x26bef6(0x1d9))][(_0x26bef6(0x1f0))]['WorkbookWriter']({'filename':_0x2bd05d,'useStyles':!![],'useSharedStrings':!![]}),_0x266689=_0x96de5[_0x26bef6(0x1e1)](_0xd13fd0['KiveY']),_0x209324=_0x5555ea||(_0x10201e['length']>0x0?Object[_0x26bef6(0x19b)](_0x10201e[0x0]):[]),_0x48015f={};_0x209324['forEach']((_0x3ba5ad,_0x12f432)=>{_0x48015f[_0x3ba5ad]=_0x12f432+0x1;}),_0x266689['columns']=_0x209324['map'](_0x5b635c=>{const _0x25647a=_0x26bef6,_0xe95f8d={'header':this[_0x25647a(0x1c3)](_0x5b635c,_0x5e5460),'key':_0x5b635c,'width':0x14};if(_0x490354&&_0x490354[_0x5b635c]){const _0x1f0fb2=_0x490354[_0x5b635c];if(_0x1f0fb2['type']&&_0x1f0fb2[_0x25647a(0x1af)]['toLowerCase']()!==_0xd13fd0['AoKCK']){const _0x170932=this['getExcelFormat'](_0x1f0fb2);_0x170932&&(_0xe95f8d[_0x25647a(0x1b3)]={'numFmt':_0x170932});}}return _0xe95f8d;});const _0x1b318a=_0x266689[_0x26bef6(0x1a4)](0x1);_0x1b318a[_0x26bef6(0x1ea)]={'bold':!![],'color':{'argb':_0x26bef6(0x1a3)}},_0x1b318a['fill']={'type':_0xd13fd0[_0x26bef6(0x191)],'pattern':'solid','fgColor':{'argb':_0x26bef6(0x1f6)}},_0x1b318a[_0x26bef6(0x1ac)]={'vertical':_0x26bef6(0x19a),'horizontal':'center'},_0x1b318a[_0x26bef6(0x1f7)]();const _0x5453b1=_0x10201e['length'];let _0x3c272a=0x0;for(let _0x3fd2d9=0x0;_0x3fd2d9<_0x5453b1;_0x3fd2d9+=this['chunkSize']){const _0x124e36=_0x10201e[_0x26bef6(0x1bd)](_0x3fd2d9,_0xd13fd0[_0x26bef6(0x1ad)](_0x3fd2d9,this['chunkSize']));for(const _0x48f7d6 of _0x124e36){const _0x256f9c=_0x490354?this['preprocessTextRow'](_0x48f7d6,_0x209324,_0x490354):_0x48f7d6,_0xc0cade=_0x266689[_0x26bef6(0x1ef)](_0x256f9c);_0x490354&&this['applyRowFormatting'](_0xc0cade,_0x256f9c,_0x209324,_0x490354),_0xc0cade['commit'](),_0x3c272a++;}if(_0x5025f7){const _0x360c75=Math['round'](_0xd13fd0[_0x26bef6(0x1b7)](_0xd13fd0['zXQsC'](_0x3c272a,_0x5453b1),0x64));await _0x5025f7(_0x360c75);}logger[_0x26bef6(0x1ec)]({'event':_0xd13fd0[_0x26bef6(0x18b)],'processed':_0x3c272a,'total':_0x5453b1},_0x26bef6(0x1ca)+_0x3c272a+'/'+_0x5453b1+_0x26bef6(0x1ee));}return _0x266689['commit'](),await _0x96de5[_0x26bef6(0x1f7)](),logger['info']({'event':_0xd13fd0[_0x26bef6(0x196)],'method':'streaming','rows':_0x5453b1,'chunks':Math[_0x26bef6(0x1d1)](_0xd13fd0['zXQsC'](_0x5453b1,this[_0x26bef6(0x1b4)]))},_0x26bef6(0x193)),_0x2bd05d;}['formatHeader'](_0x618e1,_0x24d972){const _0x3cbdfb=a0_0x3f4818,_0x538ceb={'duIqO':function(_0x8c87e4,_0x8d7fed){return _0x8c87e4(_0x8d7fed);}};if(_0x24d972&&_0x24d972[_0x618e1])return _0x24d972[_0x618e1];return _0x538ceb[_0x3cbdfb(0x1c6)](String,_0x618e1)['toUpperCase']();}['validateColumns'](_0x11b65a,_0x2f691b){const _0x205d3f=a0_0x3f4818,_0x46b31e={'Nbjzd':function(_0x21cab9,_0x2af497){return _0x21cab9===_0x2af497;}};if(!_0x2f691b||_0x46b31e['Nbjzd'](_0x2f691b['length'],0x0))return!![];if(_0x11b65a[_0x205d3f(0x19e)]===0x0)return!![];const _0xffad17=Object['keys'](_0x11b65a[0x0]),_0x4a95ac=_0x2f691b[_0x205d3f(0x1a8)](_0x3f56e6=>!_0xffad17['includes'](_0x3f56e6));if(_0x4a95ac[_0x205d3f(0x19e)]>0x0)throw new Error(_0x205d3f(0x1e3)+_0x4a95ac['join'](',\x20'));return!![];}['getExcelFormat'](_0x507ec8){const _0x3bdcbf=a0_0x3f4818,_0x3162a4={'oNksk':'date','FQrUW':'\x22Rp\x20\x22#,##0','mtSeC':'percentage','oWeTg':'0.00%'};if(!_0x507ec8||!_0x507ec8[_0x3bdcbf(0x1af)])return null;const {type:_0x407b06,format:_0x283966}=_0x507ec8;switch(_0x407b06[_0x3bdcbf(0x1c7)]()){case _0x3162a4['oNksk']:return _0x283966?_0x283966[_0x3bdcbf(0x1c7)]():'dd/mm/yyyy';case'number':return _0x283966||'#,##0.00';case'currency':return _0x283966||_0x3162a4['FQrUW'];case _0x3162a4['mtSeC']:return _0x283966||_0x3162a4['oWeTg'];case _0x3bdcbf(0x1f3):return'@';default:return null;}}['applyCellFormatting'](_0x333359,_0x463623,_0x1b2e66,_0x112709){const _0x1501d7={'yOINU':function(_0x52771a,_0x190e0e){return _0x52771a+_0x190e0e;},'BfyCj':function(_0x66e9c3,_0x30edaa){return _0x66e9c3<=_0x30edaa;}};if(!_0x1b2e66)return;_0x463623['forEach']((_0x3a2c2f,_0x428d3a)=>{const _0x583aeb=a0_0x2727,_0x642edb=_0x1b2e66[_0x3a2c2f];if(!_0x642edb)return;const _0x4f2389=_0x1501d7['yOINU'](_0x428d3a,0x1);for(let _0x1027b3=0x2;_0x1501d7[_0x583aeb(0x1e8)](_0x1027b3,_0x112709+0x1);_0x1027b3++){const _0x49663c=_0x333359['getCell'](_0x1027b3,_0x4f2389);this[_0x583aeb(0x192)](_0x49663c,_0x642edb);}});}['applyRowFormatting'](_0x561f6f,_0x4d059b,_0x1f2818,_0x436443){const _0x171a25={'Duxpc':function(_0x2dc0f1,_0x495b02){return _0x2dc0f1+_0x495b02;}};if(!_0x436443)return;_0x1f2818['forEach']((_0x4e48b6,_0xe4eec9)=>{const _0x532cde=a0_0x2727,_0x52adc7=_0x436443[_0x4e48b6];if(!_0x52adc7)return;const _0x2466b0=_0x561f6f[_0x532cde(0x1b5)](_0x171a25[_0x532cde(0x1cf)](_0xe4eec9,0x1));this['formatCell'](_0x2466b0,_0x52adc7);});}[a0_0x3f4818(0x192)](_0x2e806f,_0x5e1cf0){const _0x41c9a1=a0_0x3f4818,_0x3f8826={'nkMlg':function(_0xd2f42a,_0x163424){return _0xd2f42a===_0x163424;},'mWgmm':_0x41c9a1(0x1f5),'SxjNy':_0x41c9a1(0x19c),'jgLge':'percentage','uowgR':function(_0x168b9a,_0x563b89){return _0x168b9a!==_0x563b89;},'PJWkD':'text','OzCoT':_0x41c9a1(0x19a)};if(!_0x5e1cf0||!_0x5e1cf0[_0x41c9a1(0x1af)])return;const {type:_0x5c05d8,format:_0x1ce869}=_0x5e1cf0;if(_0x5c05d8[_0x41c9a1(0x1c7)]()==='date'&&_0x2e806f['value']){const _0x3eff4a=this['formatDateString'](_0x2e806f[_0x41c9a1(0x18c)],_0x1ce869);_0x3eff4a&&(_0x2e806f[_0x41c9a1(0x18c)]=_0x3eff4a);return;}if((_0x3f8826[_0x41c9a1(0x1e7)](_0x5c05d8[_0x41c9a1(0x1c7)](),_0x3f8826[_0x41c9a1(0x1de)])||_0x5c05d8['toLowerCase']()===_0x3f8826['SxjNy']||_0x5c05d8[_0x41c9a1(0x1c7)]()===_0x3f8826[_0x41c9a1(0x1ba)])&&_0x2e806f['value']){const _0x185bec=this['parseNumber'](_0x2e806f[_0x41c9a1(0x18c)]);if(_0x3f8826['uowgR'](_0x185bec,null)){_0x2e806f['value']=_0x185bec;const _0x2dc2aa=this['getExcelFormat'](_0x5e1cf0);_0x2dc2aa&&(_0x2e806f[_0x41c9a1(0x1a1)]=_0x2dc2aa);}}_0x5c05d8[_0x41c9a1(0x1c7)]()===_0x3f8826[_0x41c9a1(0x1d3)]&&_0x2e806f[_0x41c9a1(0x18c)]&&(_0x2e806f[_0x41c9a1(0x1a1)]='@',_0x3f8826['uowgR'](typeof _0x2e806f['value'],_0x41c9a1(0x198))&&(_0x2e806f[_0x41c9a1(0x18c)]=String(_0x2e806f[_0x41c9a1(0x18c)])),_0x2e806f[_0x41c9a1(0x1ac)]={'horizontal':_0x41c9a1(0x1a9),'vertical':_0x3f8826['OzCoT']});}[a0_0x3f4818(0x194)](_0x1562bf,_0x41b988){const _0x2b4252=a0_0x3f4818,_0x353cd6={'AsJiZ':function(_0x38e340,_0x328ab0){return _0x38e340 instanceof _0x328ab0;},'rLsZa':function(_0x4aac6c,_0xd0c2eb){return _0x4aac6c+_0xd0c2eb;},'qCRYz':function(_0x89d78a,_0x22cc4b){return _0x89d78a===_0x22cc4b;},'SkkTo':'string','hSzOf':function(_0x5a6ff9,_0x359a90,_0x23a92e){return _0x5a6ff9(_0x359a90,_0x23a92e);},'rlQoW':function(_0x51dec4,_0xa52e4e,_0x56ff90){return _0x51dec4(_0xa52e4e,_0x56ff90);},'ZyDKw':function(_0x29aa6a,_0x307ea3,_0x3215e){return _0x29aa6a(_0x307ea3,_0x3215e);},'BPRjq':function(_0x3e42af,_0x5cd7d1,_0x51d091){return _0x3e42af(_0x5cd7d1,_0x51d091);},'cTXXS':function(_0x171584,_0x6cbaa0,_0xaf6ee9){return _0x171584(_0x6cbaa0,_0xaf6ee9);},'yWiHA':'number','bylKf':function(_0x2cd7ac,_0x5c457f){return _0x2cd7ac(_0x5c457f);},'TEkFG':function(_0x573530,_0x2c3691){return _0x573530+_0x2c3691;},'JBERu':function(_0x4dd899,_0x321a00){return _0x4dd899||_0x321a00;},'pbYFZ':_0x2b4252(0x1ab),'anLSO':_0x2b4252(0x1d8),'TzcQn':_0x2b4252(0x1b9),'aTVHy':function(_0x7bef4d,_0x14dd4c){return _0x7bef4d===_0x14dd4c;},'ZRkUr':_0x2b4252(0x1b1),'elwbL':function(_0xb15353,_0x56c599){return _0xb15353===_0x56c599;}};if(!_0x1562bf)return null;let _0x4866ee,_0x1ce958,_0x781b17;if(_0x353cd6['AsJiZ'](_0x1562bf,Date))_0x4866ee=_0x1562bf['getUTCFullYear'](),_0x1ce958=_0x353cd6[_0x2b4252(0x1f2)](_0x1562bf[_0x2b4252(0x1c9)](),0x1),_0x781b17=_0x1562bf[_0x2b4252(0x199)]();else{if(_0x353cd6[_0x2b4252(0x1e5)](typeof _0x1562bf,_0x353cd6[_0x2b4252(0x1d0)])){const _0x54cbc4=_0x1562bf[_0x2b4252(0x1a5)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x54cbc4)_0x4866ee=_0x353cd6['hSzOf'](parseInt,_0x54cbc4[0x1],0xa),_0x1ce958=parseInt(_0x54cbc4[0x2],0xa),_0x781b17=_0x353cd6[_0x2b4252(0x1ed)](parseInt,_0x54cbc4[0x3],0xa);else{const _0x9184e8=_0x1562bf[_0x2b4252(0x1a5)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x9184e8)_0x781b17=_0x353cd6[_0x2b4252(0x1aa)](parseInt,_0x9184e8[0x1],0xa),_0x1ce958=_0x353cd6['ZyDKw'](parseInt,_0x9184e8[0x2],0xa),_0x4866ee=_0x353cd6[_0x2b4252(0x1c1)](parseInt,_0x9184e8[0x3],0xa);else{const _0x579ffc=_0x1562bf[_0x2b4252(0x1a5)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x579ffc&&(_0x4866ee=_0x353cd6['cTXXS'](parseInt,_0x579ffc[0x1],0xa),_0x1ce958=parseInt(_0x579ffc[0x2],0xa),_0x781b17=parseInt(_0x579ffc[0x3],0xa));}}}else{if(typeof _0x1562bf===_0x353cd6[_0x2b4252(0x1f1)]){const _0x3a3ffe=new Date(_0x1562bf);!_0x353cd6[_0x2b4252(0x1b2)](isNaN,_0x3a3ffe['getTime']())&&(_0x4866ee=_0x3a3ffe[_0x2b4252(0x1bc)](),_0x1ce958=_0x353cd6['TEkFG'](_0x3a3ffe[_0x2b4252(0x1c9)](),0x1),_0x781b17=_0x3a3ffe['getUTCDate']());}}}if(!_0x4866ee||!_0x1ce958||!_0x781b17)return null;const _0x1550b1=String(_0x781b17)[_0x2b4252(0x1d6)](0x2,'0'),_0x6d7463=String(_0x1ce958)['padStart'](0x2,'0'),_0x2476f8=String(_0x4866ee),_0x3b862c=_0x353cd6['JBERu'](_0x41b988,_0x353cd6[_0x2b4252(0x1e4)])[_0x2b4252(0x1c7)]();if(_0x3b862c===_0x353cd6[_0x2b4252(0x18a)])return _0x1550b1+'/'+_0x6d7463+'/'+_0x2476f8;else{if(_0x3b862c==='mm/dd/yyyy')return _0x6d7463+'/'+_0x1550b1+'/'+_0x2476f8;else{if(_0x3b862c===_0x353cd6[_0x2b4252(0x1b8)])return _0x2476f8+'-'+_0x6d7463+'-'+_0x1550b1;else{if(_0x353cd6['aTVHy'](_0x3b862c,_0x353cd6['ZRkUr']))return _0x1550b1+'-'+_0x6d7463+'-'+_0x2476f8;else return _0x353cd6[_0x2b4252(0x1a6)](_0x3b862c,'yyyy/mm/dd')?_0x2476f8+'/'+_0x6d7463+'/'+_0x1550b1:_0x1550b1+'/'+_0x6d7463+'/'+_0x2476f8;}}}}['parseNumber'](_0x461fda){const _0x8ba993=a0_0x3f4818,_0xd50bb8={'pwYbE':function(_0xef0267,_0x3ad4ed){return _0xef0267===_0x3ad4ed;},'UJzWg':_0x8ba993(0x198)};if(_0xd50bb8[_0x8ba993(0x1a7)](typeof _0x461fda,_0x8ba993(0x1f5)))return _0x461fda;if(typeof _0x461fda===_0xd50bb8[_0x8ba993(0x1d7)]){const _0x238e9c=_0x461fda['replace'](/[^\d.-]/g,''),_0x915ca0=parseFloat(_0x238e9c);if(!isNaN(_0x915ca0))return _0x915ca0;}return null;}[a0_0x3f4818(0x1c0)](_0xaca73,_0x2a23ae,_0x5728bd){const _0x14d033=a0_0x3f4818,_0x492e8c={'WwaIM':function(_0x24996a,_0x319b87){return _0x24996a===_0x319b87;},'EVsUA':function(_0x15927d,_0x5df17e){return _0x15927d!==_0x5df17e;},'UhReV':function(_0x312a1c,_0x1e8791){return _0x312a1c+_0x1e8791;},'KboAe':function(_0x3f5d5a,_0x51dfc9){return _0x3f5d5a(_0x51dfc9);}};if(!_0x5728bd)return _0xaca73;const _0xc2078a=[];_0x2a23ae[_0x14d033(0x197)](_0x209f8f=>{const _0x1f3eb0=_0x14d033,_0x419075=_0x5728bd[_0x209f8f];_0x419075&&_0x419075['type']&&_0x492e8c['WwaIM'](_0x419075[_0x1f3eb0(0x1af)][_0x1f3eb0(0x1c7)](),_0x1f3eb0(0x1f3))&&_0xc2078a[_0x1f3eb0(0x1f8)](_0x209f8f);});if(_0xc2078a[_0x14d033(0x19e)]===0x0)return _0xaca73;return _0xaca73['map'](_0x47b58f=>{const _0x49ddb4={..._0x47b58f};return _0xc2078a['forEach'](_0x982491=>{const _0x39b77a=a0_0x2727;_0x492e8c['EVsUA'](_0x49ddb4[_0x982491],null)&&_0x49ddb4[_0x982491]!==undefined&&(_0x49ddb4[_0x982491]=_0x492e8c[_0x39b77a(0x1cd)]('\x27',_0x492e8c[_0x39b77a(0x1da)](String,_0x49ddb4[_0x982491])));}),_0x49ddb4;});}[a0_0x3f4818(0x1be)](_0x1dc2e5,_0x42b295,_0x12d82b){const _0x450f5a=a0_0x3f4818,_0x5ebfc4={'qVSiw':function(_0x28ebfb,_0x420022){return _0x28ebfb===_0x420022;}};if(!_0x12d82b)return _0x1dc2e5;const _0x98d102=[];_0x42b295[_0x450f5a(0x197)](_0x32d1fa=>{const _0x46f168=_0x450f5a,_0x3735db=_0x12d82b[_0x32d1fa];_0x3735db&&_0x3735db[_0x46f168(0x1af)]&&_0x5ebfc4[_0x46f168(0x1f4)](_0x3735db['type']['toLowerCase'](),'text')&&_0x98d102['push'](_0x32d1fa);});if(_0x98d102[_0x450f5a(0x19e)]===0x0)return _0x1dc2e5;const _0x354716={..._0x1dc2e5};return _0x98d102['forEach'](_0x5bc6c2=>{_0x354716[_0x5bc6c2]!==null&&_0x354716[_0x5bc6c2]!==undefined&&(_0x354716[_0x5bc6c2]='\x27'+String(_0x354716[_0x5bc6c2]));}),_0x354716;}}module[a0_0x3f4818(0x189)]=ExcelGenerator;function a0_0x3533(){const _0x4d5400=['DMfSDwu','ywrKuM93CW','mtu1nJeYofvLt2z6Ba','r2vuCxC','Aw5MBW','vLvLt00','zM9YBwf0q2vSBa','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','zM9YBwf0rgf0zvn0CMLUzW','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','t3buueC','zM9YrwfJAa','C3rYAw5N','z2v0vvrdrgf0zq','BwLKzgXL','A2v5CW','y3vYCMvUy3K','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','BgvUz3rO','y2rWwxG','mZyYq3jtqMDS','BNvTrM10','zgf0zq','rKzgrKzgrKy','z2v0uM93','Bwf0y2G','zwX3yKW','ChDzyKu','zMLSDgvY','BgvMDa','CMXrB1C','reqVtu0VwvLzwq','ywXPz25Tzw50','sxzswvy','mZnyBuXSA2K','DhLWzq','AevADNe','zgqTBw0TExL5Eq','yNLSs2y','C3r5Bgu','y2H1BMTtAxPL','z2v0q2vSBa','nJC2otmYsezVDLzy','tLfeBeu','vhPJuw4','ExL5Es1TBs1Kza','AMDmz2u','mZvsrMfNugW','z2v0vvrdrNvSBfLLyxi','C2XPy2u','ChjLChjVy2vZC1rLEhrsB3C','mJuXotK2rgPvBvf5','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','qLbsANe','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','zM9YBwf0sgvHzgvY','tMTorhO','zMLSBa','zhvjCu8','Dg9mB3DLCKnHC2u','zNjVEMvU','z2v0vvrdtw9UDgG','uhjVy2vZC2vKia','z2vUzxjHDgu','y2vUDgvY','vwHszvy','z2vUzxjHDgvtAw1WBgu','rhv4Cgm','u2TRvg8','y2vPBa','mJq1mZrNEff5zei','uePxA0q','mti0murxDvPxCa','mtjhsuLuthG','CgfKu3rHCNq','vuP6v2C','zgqVBw0VExL5Eq','C3rYzwfT','s2jVqwu','qu5OzKC','BwfW','rgf0yq','BvDNBw0','mtqXmJmXmgvAqLvjwq','Cgf0DgvYBG','ywrKv29YA3nOzwv0','mZmXnZK0zhjVwNLU','sw52ywXPzcbJB2X1Bw5ZoIa','CgjzrLO','CunswxO','C2LTCgXL','BMTnBgC','qMz5q2O','ndbWqLrirLu','zM9UDa','z2v0rxHJzwXgB3jTyxq','zgvIDwC','Afn6t2y','ihjVD3m','ywrKuM93','EgXZEa','EvDPsee','CKXZwMe','Dgv4Da','CvztAxC','BNvTyMvY','rKy0ndCYqZq','y29TBwL0','ChvZAa','C29SAwq','zxHWB3j0CW','yw5mu08','zKPbs0G'];a0_0x3533=function(){return _0x4d5400;};return a0_0x3533();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x4cd9b1=a0_0x401c;function a0_0x40b1(){const _0xcd8056=['z2v0rNvSBfLLyxi','mtm2mLbcywDXsG','B2jQzwn0','CMvZDwX0','D29YA3nOzwv0CW','zM9YrwfJAa','DKnWsva','C2XPy2u','mJa5mtyYngHhAhjZuW','mNfZAvfqua','AgfZ','BM9YBwfSAxPLsgvHzgvY','BwfW','zxHWB3j0CW','Aw5MBW','wKnrzK0','CxzMALe','zMLSDgvY','sfjxDNC','z2v0rgf0zq','BM9YBwfSAxPLq2vSBfzHBhvL','nJGWoeXAB2zvqW','otC3ndKWCvD0y1bS','CMvWBgfJzq','BgvUz3rO','mtaXntqWmZrZsxflrfu','CgfKu3rHCNq','mZqZnteXzgPVBffe','EfLKCgm','CMLJAfrLEhq','mZuXoxrqr2zlEq','jdfFjdi','zwfJAfjVDW','BwvZC2fNzq','mtqZotvQreXvAvq','mtb2ruXdr3i','mJCWntmZmK5pqKDUAW'];a0_0x40b1=function(){return _0xcd8056;};return a0_0x40b1();}(function(_0x5e5cfa,_0x47b2cb){const _0xa00bac=a0_0x401c,_0x38b69d=_0x5e5cfa();while(!![]){try{const _0x266677=-parseInt(_0xa00bac(0x184))/0x1*(parseInt(_0xa00bac(0x172))/0x2)+-parseInt(_0xa00bac(0x17f))/0x3+-parseInt(_0xa00bac(0x171))/0x4+parseInt(_0xa00bac(0x18b))/0x5*(parseInt(_0xa00bac(0x18f))/0x6)+-parseInt(_0xa00bac(0x18d))/0x7+parseInt(_0xa00bac(0x17e))/0x8*(parseInt(_0xa00bac(0x187))/0x9)+parseInt(_0xa00bac(0x18c))/0xa*(parseInt(_0xa00bac(0x182))/0xb);if(_0x266677===_0x47b2cb)break;else _0x38b69d['push'](_0x38b69d['shift']());}catch(_0x132dac){_0x38b69d['push'](_0x38b69d['shift']());}}}(a0_0x40b1,0x50b95));const ExcelJS=require('exceljs'),{logger}=require('./logger');class ExcelParser{async['parseExcelFile'](_0x10fceb){const _0x547cfa=a0_0x401c,_0x1502bb={'ZCQfM':function(_0x3acc95,_0x3d4f4e){return _0x3acc95+_0x3d4f4e;},'HRWvw':'excel_parsed'};try{const _0x22564a=new ExcelJS['Workbook']();await _0x22564a['xlsx']['readFile'](_0x10fceb);const _0xc1d0b7=_0x22564a[_0x547cfa(0x16d)][0x0];if(!_0xc1d0b7)throw new Error('No\x20worksheet\x20found\x20in\x20Excel\x20file');const _0x7f5435=[];let _0x352ebe=[];return _0xc1d0b7[_0x547cfa(0x189)]((_0x41c00d,_0x3b9183)=>{const _0x3603eb=_0x547cfa,_0x403a96={'IIBet':function(_0x465332,_0x33f875){const _0x2833e9=a0_0x401c;return _0x1502bb[_0x2833e9(0x178)](_0x465332,_0x33f875);}},_0x11b54a=_0x41c00d['values'];if(_0x3b9183===0x1)_0x352ebe=_0x11b54a[_0x3603eb(0x170)](0x1)[_0x3603eb(0x175)](_0x2b5c16=>this['normalizeHeader'](_0x2b5c16));else{const _0x578812={};_0x352ebe[_0x3603eb(0x16e)]((_0x480e0c,_0x1228b2)=>{const _0x362e28=_0x3603eb,_0x2a9fb7=_0x11b54a[_0x403a96['IIBet'](_0x1228b2,0x1)];_0x578812[_0x480e0c]=this[_0x362e28(0x17d)](_0x2a9fb7);}),_0x7f5435['push'](_0x578812);}}),logger[_0x547cfa(0x177)]({'event':_0x1502bb[_0x547cfa(0x17b)],'filePath':_0x10fceb,'totalRows':_0x7f5435['length'],'headers':_0x352ebe['length']},'Excel\x20file\x20parsed\x20successfully'),{'headers':_0x352ebe,'rows':_0x7f5435,'totalRows':_0x7f5435[_0x547cfa(0x181)]};}catch(_0x59445e){logger['error']({'event':'excel_parse_error','filePath':_0x10fceb,'error':_0x59445e[_0x547cfa(0x18a)]},'Failed\x20to\x20parse\x20Excel\x20file');throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x59445e['message']);}}[a0_0x4cd9b1(0x174)](_0x2db63f){const _0x5912cd=a0_0x4cd9b1,_0x5acfd4={'BUvMU':function(_0x207ed5,_0x3a426c){return _0x207ed5===_0x3a426c;},'TOJzP':function(_0x3d0596,_0xf3038a){return _0x3d0596===_0xf3038a;}};if(_0x5acfd4['BUvMU'](_0x2db63f,null)||_0x5acfd4['TOJzP'](_0x2db63f,undefined))return'';let _0x4ea62d=String(_0x2db63f)['trim']();return _0x4ea62d=_0x4ea62d['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,'$1_$2')[_0x5912cd(0x180)](/([A-Z]+)([A-Z][a-z])/g,_0x5912cd(0x188))['toLowerCase'](),_0x4ea62d;}[a0_0x4cd9b1(0x17d)](_0x3cb38d){const _0xf5b1a1=a0_0x4cd9b1,_0x293314={'vCpIP':function(_0x29c4ad,_0x33956d){return _0x29c4ad===_0x33956d;},'xYdpc':function(_0x596c43,_0x5c8ec3){return _0x596c43(_0x5c8ec3);},'CrGDD':function(_0x32909d,_0x5aec03){return _0x32909d(_0x5aec03);},'DIuti':function(_0x3423e1,_0x2ff409){return _0x3423e1===_0x2ff409;},'qvfjQ':'string','pfbUP':function(_0x3ae767,_0x4962fb){return _0x3ae767===_0x4962fb;},'nlKhi':'object','asckk':function(_0x443042,_0xb545ff){return _0x443042!==_0xb545ff;}};if(_0x3cb38d===null||_0x293314['vCpIP'](_0x3cb38d,undefined))return null;if(_0x3cb38d instanceof Date){const _0x1c8859=_0x3cb38d[_0xf5b1a1(0x18e)](),_0x3f848a=_0x293314[_0xf5b1a1(0x185)](String,_0x3cb38d['getMonth']()+0x1)['padStart'](0x2,'0'),_0x4314c5=_0x293314['CrGDD'](String,_0x3cb38d[_0xf5b1a1(0x17c)]())['padStart'](0x2,'0');return _0x1c8859+'-'+_0x3f848a+'-'+_0x4314c5;}if(_0x293314['DIuti'](typeof _0x3cb38d,_0x293314[_0xf5b1a1(0x179)])){const _0x135fdd=_0x3cb38d['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x135fdd){const _0x4a6bfb=String(_0x135fdd[0x1])['padStart'](0x2,'0'),_0x433efe=_0x293314['CrGDD'](String,_0x135fdd[0x2])[_0xf5b1a1(0x183)](0x2,'0'),_0x5631f4=_0x135fdd[0x3];return _0x5631f4+'-'+_0x433efe+'-'+_0x4a6bfb;}}if(_0x3cb38d&&_0x293314['pfbUP'](typeof _0x3cb38d,_0x293314['nlKhi'])&&_0x3cb38d[_0xf5b1a1(0x186)])return _0x3cb38d['richText'][_0xf5b1a1(0x175)](_0x2d2085=>_0x2d2085['text'])['join']('');if(_0x3cb38d&&typeof _0x3cb38d===_0xf5b1a1(0x190)&&_0x293314['asckk'](_0x3cb38d['result'],undefined))return this['normalizeCellValue'](_0x3cb38d[_0xf5b1a1(0x191)]);if(_0x293314[_0xf5b1a1(0x16f)](typeof _0x3cb38d,'string'))return _0x3cb38d['trim']();return _0x3cb38d;}['validateExcelStructure'](_0x2f1fc4,_0x4be5ed){const _0x4fe413=a0_0x4cd9b1,_0x3446e6=new Set(_0x2f1fc4),_0x115f93=new Set(_0x4be5ed),_0x143605=_0x4be5ed['filter'](_0x1fdc8b=>!_0x3446e6[_0x4fe413(0x173)](_0x1fdc8b)),_0x4dfd7c=_0x2f1fc4[_0x4fe413(0x17a)](_0x396a05=>!_0x115f93[_0x4fe413(0x173)](_0x396a05)),_0x3bb046=_0x143605[_0x4fe413(0x181)]===0x0;return{'valid':_0x3bb046,'missingFields':_0x143605,'extraFields':_0x4dfd7c};}}function a0_0x401c(_0x1ed6c7,_0x48ad6a){_0x1ed6c7=_0x1ed6c7-0x16d;const _0x40b106=a0_0x40b1();let _0x401c1e=_0x40b106[_0x1ed6c7];if(a0_0x401c['NFhTbF']===undefined){var _0x415ae4=function(_0x45e6e7){const _0x10fe2e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x21fcc0='',_0x1a57bf='';for(let _0x22ebc2=0x0,_0x27b09c,_0x518bd4,_0x4812f4=0x0;_0x518bd4=_0x45e6e7['charAt'](_0x4812f4++);~_0x518bd4&&(_0x27b09c=_0x22ebc2%0x4?_0x27b09c*0x40+_0x518bd4:_0x518bd4,_0x22ebc2++%0x4)?_0x21fcc0+=String['fromCharCode'](0xff&_0x27b09c>>(-0x2*_0x22ebc2&0x6)):0x0){_0x518bd4=_0x10fe2e['indexOf'](_0x518bd4);}for(let _0x54f3c0=0x0,_0x3811eb=_0x21fcc0['length'];_0x54f3c0<_0x3811eb;_0x54f3c0++){_0x1a57bf+='%'+('00'+_0x21fcc0['charCodeAt'](_0x54f3c0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a57bf);};a0_0x401c['XLeULz']=_0x415ae4,a0_0x401c['YPmCaG']={},a0_0x401c['NFhTbF']=!![];}const _0x2a10fa=_0x40b106[0x0],_0x41b7e5=_0x1ed6c7+_0x2a10fa,_0x2ee6b3=a0_0x401c['YPmCaG'][_0x41b7e5];return!_0x2ee6b3?(_0x401c1e=a0_0x401c['XLeULz'](_0x401c1e),a0_0x401c['YPmCaG'][_0x41b7e5]=_0x401c1e):_0x401c1e=_0x2ee6b3,_0x401c1e;}module[a0_0x4cd9b1(0x176)]=new ExcelParser();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x313a92=a0_0x4431;(function(_0x16cdea,_0x3c26b2){const _0x2621cc=a0_0x4431,_0x3abcec=_0x16cdea();while(!![]){try{const _0x44f497=-parseInt(_0x2621cc(0x24c))/0x1*(parseInt(_0x2621cc(0x207))/0x2)+-parseInt(_0x2621cc(0x1af))/0x3*(parseInt(_0x2621cc(0x1d8))/0x4)+-parseInt(_0x2621cc(0x1ea))/0x5*(parseInt(_0x2621cc(0x22d))/0x6)+parseInt(_0x2621cc(0x1ae))/0x7+-parseInt(_0x2621cc(0x217))/0x8+parseInt(_0x2621cc(0x209))/0x9*(-parseInt(_0x2621cc(0x245))/0xa)+-parseInt(_0x2621cc(0x1b5))/0xb*(-parseInt(_0x2621cc(0x21f))/0xc);if(_0x44f497===_0x3c26b2)break;else _0x3abcec['push'](_0x3abcec['shift']());}catch(_0x22a8c7){_0x3abcec['push'](_0x3abcec['shift']());}}}(a0_0x2d84,0xaa251));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')[a0_0x313a92(0x248)],fsSync=require('fs'),redisHelper=require(a0_0x313a92(0x1b4)),{logger,logError}=require(a0_0x313a92(0x228)),dbType=(process['env']['DB_TYPE']||'postgresql')['toLowerCase']();let executeQuery;function a0_0x4431(_0x6a2433,_0x80a188){_0x6a2433=_0x6a2433-0x1ad;const _0x2d84d8=a0_0x2d84();let _0x44313f=_0x2d84d8[_0x6a2433];if(a0_0x4431['KgOOqy']===undefined){var _0x32cc4c=function(_0xab8958){const _0x581b10='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1288dc='',_0x5a36d4='';for(let _0x164ca7=0x0,_0x799989,_0x4778d1,_0x5803bb=0x0;_0x4778d1=_0xab8958['charAt'](_0x5803bb++);~_0x4778d1&&(_0x799989=_0x164ca7%0x4?_0x799989*0x40+_0x4778d1:_0x4778d1,_0x164ca7++%0x4)?_0x1288dc+=String['fromCharCode'](0xff&_0x799989>>(-0x2*_0x164ca7&0x6)):0x0){_0x4778d1=_0x581b10['indexOf'](_0x4778d1);}for(let _0x299c78=0x0,_0x5113b4=_0x1288dc['length'];_0x299c78<_0x5113b4;_0x299c78++){_0x5a36d4+='%'+('00'+_0x1288dc['charCodeAt'](_0x299c78)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5a36d4);};a0_0x4431['frnKJr']=_0x32cc4c,a0_0x4431['SQaKAv']={},a0_0x4431['KgOOqy']=!![];}const _0x33d7f6=_0x2d84d8[0x0],_0x1b5420=_0x6a2433+_0x33d7f6,_0x29d1e3=a0_0x4431['SQaKAv'][_0x1b5420];return!_0x29d1e3?(_0x44313f=a0_0x4431['frnKJr'](_0x44313f),a0_0x4431['SQaKAv'][_0x1b5420]=_0x44313f):_0x44313f=_0x29d1e3,_0x44313f;}if(dbType===a0_0x313a92(0x204)){const oracleDb=require(a0_0x313a92(0x1e5));executeQuery=(_0xe3e61b,_0x3d85f0)=>oracleDb['executeQuery'](_0xe3e61b,_0x3d85f0);}else{if(dbType===a0_0x313a92(0x1f5)){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x284acd,_0xd82cd0)=>mysqlDb[a0_0x313a92(0x1ad)](_0x284acd,_0xd82cd0);}else executeQuery=require('../../core/utils/db')[a0_0x313a92(0x1ad)];}class ExportService{constructor(){const _0x133d84=a0_0x313a92;this[_0x133d84(0x1cf)]=null;}get['exportDir'](){const _0x29fd10=a0_0x313a92,_0x1e5ebd={'uuvnG':'default','WKHLz':_0x29fd10(0x1e0),'wyugJ':'Export\x20service\x20initialized','ogGCO':function(_0x406372,_0x534d5b,_0x4b05be,_0x332d97){return _0x406372(_0x534d5b,_0x4b05be,_0x332d97);},'LtNOc':_0x29fd10(0x1be)};if(!this['_exportDir']){const _0x28151c=process['env']['RESTFORGE_PROJECT_NAME']||_0x1e5ebd[_0x29fd10(0x22c)];this[_0x29fd10(0x1cf)]=process[_0x29fd10(0x1c2)][_0x29fd10(0x233)]||path[_0x29fd10(0x1dc)](__dirname,'../../exports/'+_0x28151c);try{!fsSync[_0x29fd10(0x1f4)](this['_exportDir'])&&fsSync['mkdirSync'](this[_0x29fd10(0x1cf)],{'recursive':!![]}),logger['info']({'event':_0x1e5ebd['WKHLz'],'dir':this['_exportDir']},_0x1e5ebd[_0x29fd10(0x236)]);}catch(_0x574c6a){_0x1e5ebd[_0x29fd10(0x1ef)](logError,_0x574c6a,{'event':'export_service_init_error'},_0x1e5ebd[_0x29fd10(0x1f1)]);}}return this['_exportDir'];}[a0_0x313a92(0x229)](_0x164726,_0x4f986b=null){const _0x5d5e0f=a0_0x313a92,_0x5d7dbf={'kyYYH':function(_0x1e4d03,_0x50d655){return _0x1e4d03!==_0x50d655;},'HrBUF':'string','rAAjA':_0x5d5e0f(0x252),'DfoYO':_0x5d5e0f(0x1bf),'SgbzX':_0x5d5e0f(0x21d),'JFSEH':_0x5d5e0f(0x23a),'oNtON':_0x5d5e0f(0x20f),'TDDfY':function(_0x1f7299,_0x4d8ee6){return _0x1f7299===_0x4d8ee6;},'phLdL':'ENOENT'};if(!_0x164726||_0x5d7dbf['kyYYH'](typeof _0x164726,_0x5d7dbf[_0x5d5e0f(0x1e6)]))return _0x164726;const _0x5e02e7=_0x164726[_0x5d5e0f(0x21b)]();if(!_0x5e02e7[_0x5d5e0f(0x1c8)](_0x5d7dbf[_0x5d5e0f(0x20d)]))return _0x5e02e7;const _0x3422d9=_0x5e02e7[_0x5d5e0f(0x23e)](/^file:/,'')['trim']();if(!_0x3422d9)throw new Error(_0x5d5e0f(0x239));const _0x36a59c=_0x4f986b||path['join'](process[_0x5d5e0f(0x1fc)](),_0x5d7dbf[_0x5d5e0f(0x203)]),_0xa429ad=path['resolve'](_0x36a59c,_0x3422d9);logger['info']({'event':_0x5d7dbf[_0x5d5e0f(0x211)],'relativePath':_0x3422d9,'baseDir':_0x36a59c,'absolutePath':_0xa429ad},_0x5d5e0f(0x1cd)+_0x3422d9);if(!fsSync[_0x5d5e0f(0x1f4)](_0xa429ad))throw new Error(_0x5d5e0f(0x232)+_0xa429ad);try{const _0x123227=fsSync['readFileSync'](_0xa429ad,_0x5d7dbf[_0x5d5e0f(0x23c)]);if(!_0x123227||!_0x123227['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0xa429ad);return logger['info']({'event':_0x5d7dbf['oNtON'],'file':_0xa429ad,'queryLength':_0x123227['length']},'Loaded\x20SQL\x20query\x20from\x20file\x20('+_0x123227['length']+_0x5d5e0f(0x249)),_0x123227['trim']();}catch(_0x4d98a8){if(_0x5d7dbf['TDDfY'](_0x4d98a8[_0x5d5e0f(0x218)],_0x5d7dbf[_0x5d5e0f(0x21c)]))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0xa429ad);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x4d98a8['message']);}}[a0_0x313a92(0x21a)](){const _0x3c43ec=a0_0x313a92,_0x26cc52={'MawfN':_0x3c43ec(0x1b6),'VnsqK':function(_0x448c7){return _0x448c7();},'WYvMb':function(_0x1d1bec,_0x49bc61){return _0x1d1bec-_0x49bc61;},'eOzIQ':function(_0x2afacf,_0x42cccf){return _0x2afacf+_0x42cccf;}},_0x49ed3a=_0x26cc52[_0x3c43ec(0x251)],_0x2cbf92=Date['now']()['toString'](0x24),_0x12b736=_0x26cc52['VnsqK'](uuidv7)[_0x3c43ec(0x23e)](/-/g,'')[_0x3c43ec(0x1e7)](0x0,_0x26cc52['WYvMb'](0xc,_0x2cbf92['length'])),_0x4fa98e=_0x26cc52[_0x3c43ec(0x216)](_0x2cbf92,_0x12b736)['substring'](0x0,0xc);let _0x1d5eec='';for(let _0x6da226=0x0;_0x6da226<0xc;_0x6da226++){_0x4fa98e[_0x6da226]?_0x1d5eec+=_0x4fa98e[_0x6da226]:_0x1d5eec+=_0x49ed3a['charAt'](Math['floor'](Math['random']()*_0x49ed3a[_0x3c43ec(0x238)]));}return _0x1d5eec;}async[a0_0x313a92(0x1f7)](_0x27100e){const _0x1b30b1=a0_0x313a92,_0x2899a5={'vmVYH':function(_0x49b58f,_0x546488,_0x47bdbc,_0x453778){return _0x49b58f(_0x546488,_0x47bdbc,_0x453778);},'CUKlt':'export_process_error','AGYIv':'pending','AScaB':'export_job_created','xmpKY':'Export\x20job\x20created'},_0x1888c7=this[_0x1b30b1(0x21a)](),_0x51a31d={'job_id':_0x1888c7,'status':_0x2899a5['AGYIv'],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x27100e,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x1888c7,_0x51a31d),logger[_0x1b30b1(0x1bd)]({'event':_0x2899a5['AScaB'],'jobId':_0x1888c7,'params':_0x27100e},_0x2899a5[_0x1b30b1(0x1c3)]),this[_0x1b30b1(0x243)](_0x1888c7,_0x27100e)['catch'](_0x564586=>{const _0x1fae7b=_0x1b30b1;_0x2899a5[_0x1fae7b(0x1b1)](logError,_0x564586,{'event':_0x2899a5[_0x1fae7b(0x1b2)],'jobId':_0x1888c7},'Export\x20processing\x20failed');}),{'job_id':_0x1888c7,'status':_0x1b30b1(0x1f3)};}async[a0_0x313a92(0x237)](_0x15e566){const _0x4ec9b3=a0_0x313a92,_0x4f67cf={'fFwBh':function(_0x45403e,_0x10760a){return _0x45403e===_0x10760a;},'TezSl':_0x4ec9b3(0x24a)},_0x32eac9=await redisHelper[_0x4ec9b3(0x1f6)](_0x15e566);if(!_0x32eac9)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x32eac9[_0x4ec9b3(0x212)],'status':_0x32eac9[_0x4ec9b3(0x22a)],'progress':_0x32eac9[_0x4ec9b3(0x201)],'total_rows':_0x32eac9['total_rows'],'processed_rows':_0x32eac9[_0x4ec9b3(0x215)],'file_url':_0x4f67cf['fFwBh'](_0x32eac9[_0x4ec9b3(0x22a)],_0x4f67cf[_0x4ec9b3(0x1b0)])?_0x4ec9b3(0x231)+_0x32eac9['params'][_0x4ec9b3(0x227)]+'/'+_0x32eac9['params'][_0x4ec9b3(0x222)]+'/export-download?job_id='+_0x15e566:null,'error':_0x32eac9[_0x4ec9b3(0x22f)]||null,'created_at':_0x32eac9['created_at'],'completed_at':_0x32eac9[_0x4ec9b3(0x1d9)]||null}};}async[a0_0x313a92(0x243)](_0x1a0e8c,_0x22159d){const _0x4ab4af=a0_0x313a92,_0x322cef={'TddPs':'processing','yKgbO':_0x4ab4af(0x24a),'nrxBq':_0x4ab4af(0x220)};try{await redisHelper[_0x4ab4af(0x1c7)](_0x1a0e8c,{'status':_0x322cef[_0x4ab4af(0x246)],'started_at':new Date()[_0x4ab4af(0x208)]()}),logger['info']({'event':'export_processing_start','jobId':_0x1a0e8c},'Export\x20processing\x20started');const _0x3600de=await this[_0x4ab4af(0x230)](_0x22159d);await redisHelper[_0x4ab4af(0x1c7)](_0x1a0e8c,{'total_rows':_0x3600de[_0x4ab4af(0x238)]});const _0x2c27e6=await this[_0x4ab4af(0x1fe)](_0x1a0e8c,_0x3600de,_0x22159d);await redisHelper['updateJob'](_0x1a0e8c,{'status':_0x322cef[_0x4ab4af(0x1c0)],'progress':0x64,'file_path':_0x2c27e6,'completed_at':new Date()[_0x4ab4af(0x208)]()}),logger[_0x4ab4af(0x1bd)]({'event':'export_completed','jobId':_0x1a0e8c,'rows':_0x3600de['length']},'Export\x20completed\x20successfully');}catch(_0x41f760){logError(_0x41f760,{'event':_0x322cef['nrxBq'],'jobId':_0x1a0e8c},_0x4ab4af(0x23f)),await redisHelper['updateJob'](_0x1a0e8c,{'status':'failed','error':_0x41f760[_0x4ab4af(0x235)],'failed_at':new Date()[_0x4ab4af(0x208)]()});}}async['fetchData'](_0xcbc360){const _0xcd75ba=a0_0x313a92,_0x57ae90={'iUfvk':_0xcd75ba(0x226),'cHeXT':function(_0x368f0b,_0x168bab){return _0x368f0b+_0x168bab;},'rwfyL':'file:','TjvKz':_0xcd75ba(0x1e4),'eUprM':_0xcd75ba(0x1d6),'RLTiD':'export_using_auto_query','eUVpC':function(_0xbac1da,_0x5c6876){return _0xbac1da===_0x5c6876;},'xsvNT':'all','paPNj':function(_0x52f2e7,_0x55816e){return _0x52f2e7>_0x55816e;},'ErMuh':_0xcd75ba(0x20b),'IVNre':_0xcd75ba(0x225),'suYuW':'Data\x20fetched\x20successfully','JImVC':function(_0xf04aab,_0x297836,_0x47fc77,_0x111edc){return _0xf04aab(_0x297836,_0x47fc77,_0x111edc);},'zKKuq':_0xcd75ba(0x1ee),'kwmnd':'Failed\x20to\x20fetch\x20data'};try{const {tableName:_0x196b44,columns:_0x2c889a,exportQuery:_0x300a65,where:_0x40a1b5,sort_columns:_0x3a6261}=_0xcbc360;if(!_0x196b44||!_0x2c889a||_0x2c889a['length']===0x0)throw new Error(_0x57ae90['iUfvk']);const _0x10daad=_0x57ae90['cHeXT'](_0x196b44[_0xcd75ba(0x23e)](/\./g,'_'),'_data');let _0x7885ed;if(_0x300a65&&_0x300a65['trim']()){let _0x30ee2c=_0x300a65;_0x300a65['trim']()['startsWith'](_0x57ae90['rwfyL'])&&(_0x30ee2c=this['resolveExportQuery'](_0x300a65)),_0x7885ed=_0xcd75ba(0x242)+_0x10daad+_0xcd75ba(0x20e)+_0x30ee2c+'\x0a)',logger[_0xcd75ba(0x1bd)]({'event':_0x57ae90[_0xcd75ba(0x221)],'query':_0x30ee2c[_0xcd75ba(0x1e7)](0x0,0x64)},_0x57ae90[_0xcd75ba(0x20c)]);}else{const _0x5b8853=_0x2c889a['map'](_0x2fe005=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2fe005)[_0xcd75ba(0x1dc)](',');_0x7885ed='WITH\x20'+_0x10daad+_0xcd75ba(0x22e)+_0x5b8853+_0xcd75ba(0x1d5)+_0x196b44+'\x0a)',logger[_0xcd75ba(0x1bd)]({'event':_0x57ae90['RLTiD'],'tableName':_0x196b44,'columnCount':_0x2c889a[_0xcd75ba(0x238)]},_0xcd75ba(0x1f0));}const _0x4cde60=!_0x2c889a||_0x57ae90['eUVpC'](_0x2c889a[_0xcd75ba(0x238)],0x0)||_0x2c889a[_0xcd75ba(0x238)]===0x1&&(_0x57ae90['eUVpC'](_0x2c889a[0x0],'*')||_0x2c889a[0x0]['toLowerCase']()===_0x57ae90[_0xcd75ba(0x205)]),_0x1fe34f=_0x4cde60?'*':_0x2c889a[_0xcd75ba(0x1dc)](',\x20');_0x7885ed+=_0xcd75ba(0x234)+_0x1fe34f+_0xcd75ba(0x1db)+_0x10daad;if(_0x40a1b5){const _0x3d6760=this['buildWhereClause'](_0x40a1b5);_0x3d6760&&(_0x7885ed+=_0xcd75ba(0x250)+_0x3d6760);}if(_0x3a6261&&_0x57ae90['paPNj'](_0x3a6261['length'],0x0)){const _0x25b1a4=this[_0xcd75ba(0x219)](_0x3a6261);_0x25b1a4&&(_0x7885ed+='\x0aORDER\x20BY\x20'+_0x25b1a4);}logger[_0xcd75ba(0x1bd)]({'event':_0x57ae90['ErMuh'],'query':_0x7885ed['substring'](0x0,0xc8)},_0x57ae90['IVNre']);const _0x332b9a=await executeQuery(_0x7885ed);let _0x4b1269=_0x332b9a;return dbType==='oracle'&&_0x332b9a&&_0x57ae90['paPNj'](_0x332b9a[_0xcd75ba(0x238)],0x0)&&(_0x4b1269=_0x332b9a['map'](_0x3ac9e5=>{const _0x52a826=_0xcd75ba,_0x1e63f7={};for(const [_0x1793da,_0x304652]of Object[_0x52a826(0x24e)](_0x3ac9e5)){_0x1e63f7[_0x1793da['toLowerCase']()]=_0x304652;}return _0x1e63f7;})),logger['info']({'event':_0xcd75ba(0x1e3),'rows':_0x4b1269[_0xcd75ba(0x238)]},_0x57ae90[_0xcd75ba(0x1ca)]),_0x4b1269;}catch(_0x3c51a2){_0x57ae90['JImVC'](logError,_0x3c51a2,{'event':_0x57ae90[_0xcd75ba(0x1ba)]},_0x57ae90[_0xcd75ba(0x21e)]);throw _0x3c51a2;}}['sanitizeValue'](_0x2e65c8){const _0x44b12a=a0_0x313a92,_0x4d83c6={'ptFQI':function(_0x4d122e,_0x2a42b7){return _0x4d122e===_0x2a42b7;}};if(_0x4d83c6['ptFQI'](typeof _0x2e65c8,_0x44b12a(0x1c5)))return _0x2e65c8[_0x44b12a(0x23e)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x44b12a(0x21b)]();else{if(Array['isArray'](_0x2e65c8))return _0x2e65c8['map'](_0x5f34dc=>this[_0x44b12a(0x1d2)](_0x5f34dc));}return _0x2e65c8;}['buildWhereClause'](_0x35e7f8){const _0x34117c=a0_0x313a92,_0x42aa86={'TbgbL':_0x34117c(0x1c5),'eZRVV':_0x34117c(0x1e2),'fnHMz':function(_0x4ecf13,_0x232f67){return _0x4ecf13===_0x232f67;},'wXZnP':_0x34117c(0x1b9),'eGxuC':'IS\x20NOT\x20NULL','znWlk':function(_0x3ca3d1,_0x1578d3){return _0x3ca3d1===_0x1578d3;}};if(!_0x35e7f8||!_0x35e7f8[_0x34117c(0x1fb)]||_0x42aa86[_0x34117c(0x200)](_0x35e7f8[_0x34117c(0x1fb)][_0x34117c(0x238)],0x0))return'';const {logic:_0x5680c2,conditions:_0x185373}=_0x35e7f8,_0x3fa3ae=_0x5680c2&&_0x5680c2[_0x34117c(0x213)]()==='OR'?_0x34117c(0x202):'\x20AND\x20',_0x59e21e=_0x185373[_0x34117c(0x1c4)](_0x2ac590=>{const _0x532e49=_0x34117c,{key:_0x5ef877,operator:_0x2b4bcf,value:_0x13c186,sensitive:_0x48990a}=_0x2ac590;if(!_0x5ef877||!_0x2b4bcf)return logger['warn']({'event':_0x42aa86['eZRVV'],'condition':_0x2ac590},'Skipping\x20invalid\x20condition'),null;const _0x543a4e=this['sanitizeValue'](_0x13c186),_0x3d509b=_0x48990a!==undefined?_0x48990a:!![];let _0x519ebe=_0x5ef877,_0x34f636=_0x543a4e;!_0x3d509b&&(_0x519ebe=_0x532e49(0x1fd)+_0x5ef877+')',typeof _0x13c186==='string'&&(_0x34f636=_0x13c186['toUpperCase']()));const _0x5cb001=typeof _0x34f636===_0x42aa86[_0x532e49(0x23d)]?'\x27'+_0x34f636['replace'](/'/g,'\x27\x27')+'\x27':_0x34f636;switch(_0x2b4bcf[_0x532e49(0x213)]()){case'=':case'!=':case'<>':return _0x519ebe+'\x20'+_0x2b4bcf+'\x20'+_0x5cb001;case'>':case'<':case'>=':case'<=':const _0xf4f384=_0x42aa86['fnHMz'](typeof _0x543a4e,_0x42aa86['TbgbL'])?'\x27'+_0x543a4e[_0x532e49(0x23e)](/'/g,'\x27\x27')+'\x27':_0x543a4e;return _0x5ef877+'\x20'+_0x2b4bcf+'\x20'+_0xf4f384;case _0x532e49(0x214):case _0x42aa86['wXZnP']:return _0x519ebe+'\x20'+_0x2b4bcf+'\x20'+_0x5cb001;case'IN':if(Array[_0x532e49(0x1eb)](_0x543a4e)){let _0x133fb2;return!_0x3d509b?_0x133fb2=_0x543a4e[_0x532e49(0x1c4)](_0x2a995c=>{const _0x31352a=_0x532e49,_0x29e316=typeof _0x2a995c===_0x42aa86[_0x31352a(0x23d)]?_0x2a995c['toUpperCase']():_0x2a995c;return typeof _0x29e316==='string'?'\x27'+_0x29e316[_0x31352a(0x23e)](/'/g,'\x27\x27')+'\x27':_0x29e316;})[_0x532e49(0x1dc)](',\x20'):_0x133fb2=_0x543a4e[_0x532e49(0x1c4)](_0x29dea9=>typeof _0x29dea9===_0x532e49(0x1c5)?'\x27'+_0x29dea9[_0x532e49(0x23e)](/'/g,'\x27\x27')+'\x27':_0x29dea9)['join'](',\x20'),_0x519ebe+_0x532e49(0x24d)+_0x133fb2+')';}return _0x519ebe+_0x532e49(0x24d)+_0x5cb001+')';case _0x532e49(0x1dd):return _0x5ef877+_0x532e49(0x1d4);case _0x42aa86['eGxuC']:return _0x5ef877+_0x532e49(0x1f2);default:logger['warn']({'event':_0x532e49(0x1e9),'operator':_0x2b4bcf},'Unknown\x20operator,\x20using\x20=\x20as\x20default');return _0x519ebe+_0x532e49(0x24b)+_0x5cb001;}})[_0x34117c(0x241)](_0x5b86c3=>_0x5b86c3!==null);if(_0x59e21e['length']===0x0)return'';return _0x59e21e['join'](_0x3fa3ae);}['buildOrderByClause'](_0xcacf81){const _0x4b71f8=a0_0x313a92,_0x15fcf3={'MLzGz':'Skipping\x20invalid\x20order\x20clause','FhQWB':function(_0x2fce1b,_0x15f240){return _0x2fce1b===_0x15f240;},'arzer':'DESC'};if(!_0xcacf81||_0x15fcf3['FhQWB'](_0xcacf81[_0x4b71f8(0x238)],0x0))return'';const _0x1afd17=_0xcacf81['map'](_0x4e20e9=>{const _0x1acadf=_0x4b71f8,{column:_0xdb018d,direction:_0x21e806}=_0x4e20e9;if(!_0xdb018d)return logger['warn']({'event':'invalid_order','item':_0x4e20e9},_0x15fcf3['MLzGz']),null;const _0x3a51f8=_0x21e806&&_0x15fcf3['FhQWB'](_0x21e806['toUpperCase'](),_0x15fcf3[_0x1acadf(0x210)])?_0x15fcf3[_0x1acadf(0x210)]:_0x1acadf(0x223);return _0xdb018d+'\x20'+_0x3a51f8;})['filter'](_0x8592e4=>_0x8592e4!==null);if(_0x15fcf3[_0x4b71f8(0x254)](_0x1afd17[_0x4b71f8(0x238)],0x0))return'';return _0x1afd17['join'](',\x20');}async[a0_0x313a92(0x1fe)](_0xc0234a,_0x2deb6f,_0x359662){const _0x1e7d4f=a0_0x313a92,_0x1b52ea={'RjlJQ':function(_0x29d58f,_0x5b180f){return _0x29d58f*_0x5b180f;},'bSKOs':function(_0x1361b6,_0x30758b){return _0x1361b6/_0x30758b;},'SnwEb':function(_0x6d8c4a,_0x19e483){return _0x6d8c4a(_0x19e483);},'LgWHE':function(_0x261953,_0x5e9903){return _0x261953===_0x5e9903;},'CfIOV':function(_0x35951a,_0x24bde4){return _0x35951a===_0x24bde4;},'YBrHt':function(_0x20754b,_0x745253){return _0x20754b>_0x745253;},'rdtQD':'excel_columns_from_request','bEXMd':'excel_columns_fallback'},_0x207c46=_0x1b52ea[_0x1e7d4f(0x1df)](require,'./excel-generator'),_0x58c072=new _0x207c46(),_0x5f349d=_0x359662[_0x1e7d4f(0x1f9)]?_0x359662['filename']+'-'+_0xc0234a:_0x1e7d4f(0x1d0)+_0xc0234a,_0x2d4782=path['join'](this['exportDir'],_0x5f349d+_0x1e7d4f(0x244));let _0x4b7e26=_0x359662['columns'];const _0x2533ff=_0x4b7e26&&_0x1b52ea[_0x1e7d4f(0x20a)](_0x4b7e26[_0x1e7d4f(0x238)],0x1)&&(_0x4b7e26[0x0]==='*'||_0x1b52ea[_0x1e7d4f(0x1c1)](_0x4b7e26[0x0][_0x1e7d4f(0x247)](),'all'));if(_0x2deb6f['length']>0x0){const _0x409620=Object[_0x1e7d4f(0x1c9)](_0x2deb6f[0x0]);if(_0x2533ff)_0x4b7e26=_0x409620,logger[_0x1e7d4f(0x1bd)]({'event':_0x1e7d4f(0x1e8),'columns':_0x4b7e26},_0x1e7d4f(0x1cc)+_0x4b7e26['length']+_0x1e7d4f(0x1ed));else{if(_0x4b7e26&&_0x1b52ea['YBrHt'](_0x4b7e26['length'],0x0)){const _0x582f74=_0x4b7e26['filter'](_0x54735f=>_0x409620['includes'](_0x54735f));_0x582f74['length']>0x0?(_0x4b7e26=_0x582f74,logger['info']({'event':_0x1b52ea['rdtQD'],'requestedColumns':_0x359662['columns'],'validColumns':_0x4b7e26},'Using\x20'+_0x4b7e26[_0x1e7d4f(0x238)]+_0x1e7d4f(0x1cb))):(_0x4b7e26=_0x409620,logger[_0x1e7d4f(0x1d3)]({'event':_0x1b52ea['bEXMd'],'requestedColumns':_0x359662[_0x1e7d4f(0x24f)],'availableColumns':_0x409620},'Requested\x20columns\x20not\x20found\x20in\x20data,\x20using\x20all\x20'+_0x409620['length']+'\x20columns'));}else _0x4b7e26=_0x409620,logger[_0x1e7d4f(0x1bd)]({'event':_0x1e7d4f(0x1b3),'columns':_0x4b7e26},_0x1e7d4f(0x1bc)+_0x4b7e26[_0x1e7d4f(0x238)]+_0x1e7d4f(0x23b));}}else logger['info']({'event':'excel_columns_from_config','columns':_0x4b7e26},_0x1e7d4f(0x1bc)+(_0x4b7e26?.['length']||0x0)+_0x1e7d4f(0x1f8));return await _0x58c072['generate']({'data':_0x2deb6f,'columns':_0x4b7e26,'columnFormats':_0x359662[_0x1e7d4f(0x1da)]||null,'fieldLabels':_0x359662[_0x1e7d4f(0x206)]||null,'filePath':_0x2d4782,'onProgress':async _0x52271a=>{const _0x1b7fd9=_0x1e7d4f;await redisHelper[_0x1b7fd9(0x1c7)](_0xc0234a,{'progress':Math[_0x1b7fd9(0x1ff)](_0x52271a),'processed_rows':Math['round'](_0x1b52ea['RjlJQ'](_0x1b52ea[_0x1b7fd9(0x1ce)](_0x52271a,0x64),_0x2deb6f['length']))});}}),_0x2d4782;}async[a0_0x313a92(0x1e1)](_0x32b757){const _0x34cb99=a0_0x313a92,_0x11fd61=await redisHelper[_0x34cb99(0x1f6)](_0x32b757);if(!_0x11fd61||_0x11fd61[_0x34cb99(0x22a)]!=='completed')return null;try{return await fs['access'](_0x11fd61['file_path']),_0x11fd61['file_path'];}catch(_0x549b5c){return logError(_0x549b5c,{'event':_0x34cb99(0x1bb),'jobId':_0x32b757,'path':_0x11fd61['file_path']},_0x34cb99(0x1b8)),null;}}async[a0_0x313a92(0x240)](){const _0x391757=a0_0x313a92,_0x2b3600={'JEGES':'export_cleanup_start','POenS':_0x391757(0x1d1),'dJfCC':function(_0x1e367f,_0x28ea41){return _0x1e367f*_0x28ea41;},'wVTQv':'export_file_deleted','bEXjq':'Export\x20file\x20deleted','fgNph':'export_file_delete_error','Opxrd':'export_cleanup_complete'};logger['info']({'event':_0x2b3600['JEGES']},_0x2b3600[_0x391757(0x1d7)]);const _0x4427b2=await redisHelper['getAllJobs']();let _0x10ed73=0x0;for(const _0x1d24da of _0x4427b2){const _0x425f10=new Date(_0x1d24da['created_at']),_0x1110e6=new Date(),_0x199ad8=(_0x1110e6-_0x425f10)/(_0x2b3600[_0x391757(0x1de)](0x3e8,0x3c)*0x3c);if(_0x199ad8>0x1){if(_0x1d24da['file_path'])try{await fs[_0x391757(0x1ec)](_0x1d24da['file_path']),logger[_0x391757(0x1bd)]({'event':_0x2b3600[_0x391757(0x224)],'path':_0x1d24da['file_path']},_0x2b3600[_0x391757(0x1c6)]);}catch(_0x238d92){logger['warn']({'event':_0x2b3600['fgNph'],'path':_0x1d24da[_0x391757(0x253)],'error':_0x238d92[_0x391757(0x235)]},'Failed\x20to\x20delete\x20export\x20file');}await redisHelper['deleteJob'](_0x1d24da[_0x391757(0x212)]),_0x10ed73++;}}return logger['info']({'event':_0x2b3600[_0x391757(0x22b)],'deleted':_0x10ed73},_0x391757(0x1b7)),_0x10ed73;}}function a0_0x2d84(){const _0x23689c=['y29TCgXLDgvK','id0G','mJi0BNn0sKr3','ieLoicG','zw50CMLLCW','y29SDw1UCW','cLDirvjfia','twf3zK4','zMLSztO','zMLSzv9WyxrO','rMHrv0i','zxHLy3v0zvf1zxj5','mtC1mZu3yK9crxvt','mZy1mdf2sKvRuMC','vgv6u2W','DM1wwuG','q1vlBhq','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','mte3n3jAEw5XBG','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','rxHWB3j0igzPBguGBM90igzVDw5K','tK9uieXjs0u','EKTlDxe','zxHWB3j0x2zPBgvFBM90x2zVDw5K','vxnPBMCG','Aw5MBW','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','Cgf5Bg9Hza','EuTNyK8','q2zjt1y','zw52','Eg1Ws1K','BwfW','C3rYAw5N','yKvyANe','DxbKyxrLsM9I','C3rHCNrZv2L0Aa','A2v5CW','C3vzDvC','ignVBhvTBNmGzNjVBsbYzxf1zxn0','vxnPBMCGywXSia','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','yLnlt3m','x2v4Cg9YDerPCG','zxHWB3j0lq','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','C2fUAxrPEMvwywX1zq','D2fYBG','ieLtie5vteW','cIaGicbguK9nia','vxnPBMCGy3vZDg9Tigv4Cg9YDff1zxj5','ue9LBLm','mtq4zfPQueLc','y29TCgXLDgvKx2f0','y29SDw1UrM9YBwf0CW','cKzst00G','AM9PBG','svmGtLvmta','zePMq0m','u253rwi','zxHWB3j0x3nLCNzPy2vFAw5PDa','z2v0rMLSzvbHDgG','Aw52ywXPzf9JB25KAxrPB24','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','shjcvuy','C3vIC3rYAw5N','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','Dw5RBM93BL9VCgvYyxrVCG','nZbpCxLrugi','AxnbCNjHEq','Dw5SAw5R','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','zxHWB3j0x2zLDgnOx2vYCM9Y','B2Dhq08','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','throt2m','ieLtie5pvcbovuXm','CgvUzgLUzW','zxHPC3rZu3LUyW','BxLZCwW','z2v0sM9I','y3jLyxrLsM9I','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','zMLSzw5HBwu','zxHWB3j0CW','y29UzgL0Aw9UCW','y3DK','vvbqrviO','z2vUzxjHDgvfEgnLBa','CM91BMq','EM5xBgS','ChjVz3jLC3m','ie9sia','rgzVwu8','B3jHy2XL','Ehn2tLq','zMLLBgrmywjLBhm','ndGYnMr6C29vqG','Dg9ju09tDhjPBMC','mti2mdq1AgTIrfHc','tgDxseu','zxHWB3j0x2zLDgnOx3n0yxj0','zvvWCK0','CKfbAKe','iefticGkicaGia','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK','yxj6zxi','u2DIELG','AM9Ix2LK','Dg9vChbLCKnHC2u','teLlrq','ChjVy2vZC2vKx3jVD3m','zu96sve','nte1otu0nhPrBeTPua','y29Kzq','yNvPBgrpCMrLCKj5q2XHDxnL','z2vUzxjHDgvkB2jjza','DhjPBq','CgHmzeW','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','A3DTBMq','ndC0nta0EKvyDunJ','zxHWB3j0x2zHAwXLza','vgP2s3O','zw5KCg9PBNroyw1L','qvnd','D1zuuxy','rMv0y2HPBMCGzgf0ysbMCM9TigrHDgfIyxnL','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','Bw9KDwXLtMfTzq','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','CMvZB2X2zuv4Cg9YDff1zxj5','C3rHDhvZ','t3b4CMq','Dxv2BKC','ndC2mJmYr1PWzLnA','iefticGkicaGifnftevdvca','zxjYB3i','zMv0y2HeyxrH','l2fWAs8','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','rvHqt1jux0rjuG','cLnftevdvca','BwvZC2fNzq','D3L1z0O','z2v0sM9Iu3rHDhvZ','BgvUz3rO','sw52ywXPzcbMAwXLoIbYzwzLCMvUy2uGlsbWyxrOigLZigvTChr5','DxrMoa','ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','sKztruG','vgjNyKW','CMvWBgfJzq','rxHWB3j0igzHAwXLza','y2XLyw51Ca','zMLSDgvY','v0Lusca','ChjVy2vZC0PVyG','lNHSC3G','ntGWrwrTAvfL','vgrKuhm','Dg9mB3DLCKnHC2u','ChjVBwLZzxm','ignOyxjZkq'];a0_0x2d84=function(){return _0x23689c;};return a0_0x2d84();}module[a0_0x313a92(0x1fa)]=new ExportService();
|
|
1
|
+
const a0_0x18ad12=a0_0x205f;(function(_0x1d372c,_0x368e43){const _0x465596=a0_0x205f,_0x4e9e71=_0x1d372c();while(!![]){try{const _0x2df1bf=-parseInt(_0x465596(0x21c))/0x1*(parseInt(_0x465596(0x200))/0x2)+parseInt(_0x465596(0x1d4))/0x3+parseInt(_0x465596(0x1fb))/0x4*(parseInt(_0x465596(0x1fc))/0x5)+parseInt(_0x465596(0x21e))/0x6*(parseInt(_0x465596(0x22d))/0x7)+parseInt(_0x465596(0x1b2))/0x8*(-parseInt(_0x465596(0x1c3))/0x9)+parseInt(_0x465596(0x195))/0xa*(parseInt(_0x465596(0x1e1))/0xb)+parseInt(_0x465596(0x209))/0xc*(-parseInt(_0x465596(0x238))/0xd);if(_0x2df1bf===_0x368e43)break;else _0x4e9e71['push'](_0x4e9e71['shift']());}catch(_0x1186d3){_0x4e9e71['push'](_0x4e9e71['shift']());}}}(a0_0xd367,0x9468d));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')[a0_0x18ad12(0x217)],fsSync=require('fs'),redisHelper=require(a0_0x18ad12(0x1ac)),{logger,logError}=require(a0_0x18ad12(0x1c5)),dbType=(process['env']['DB_TYPE']||a0_0x18ad12(0x1cc))['toLowerCase']();function a0_0xd367(){const _0x393110=['ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','y29TCgXLDgvK','zxHWB3j0lq','EeTNuxq','B3jHy2XL','zMLSzw5HBwu','shvuzgm','CgfYyw1Z','C29IBM4','BKTXAgy','BgvUz3rO','ChjVBwLZzxm','u3vwrhy','s3n4uwm','z2T6v20','v0Lusca','m3DRwefMCq','vxnPBMCGywXSia','mta5mtu4AgXfAwDe','Dg90ywXFCM93CW','AM9PBG','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','BwfW','zMXVB3i','zMfPBgvK','zMLSDgvY','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','rxHWB3j0igPVyIbJCMvHDgvK','v1rwzeS','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','tKnkAxe','mJaZy21SC1Dx','y3DK','Aw5JBhvKzxm','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','v2PpDhK','lI9LEgnLBc1Nzw5LCMf0B3i','yNvPBgrxAgvYzunSyxvZzq','iefticGkicaGifnftevdvca','shjjBem','DfHJAM0','mtnlEfP4EMO','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','y29UzgL0Aw9UCW','zNzyq1m','mtiWnJG2mfnUELjHta','x2v4Cg9YDerPCG','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','zxHWB3j0x2PVyL9JCMvHDgvK','zxHLy3v0zvf1zxj5','l2fWAs8','CfPZDuu','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ie9sia','BgXMwgG','ieLtie5vteW','qvnd','zxHWB3j0x2zPBgvFzgvSzxrLza','Dg9ju09tDhjPBMC','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','Cgf5Bg9Hza','id0G','wfnLCgG','Cwvbsfq','ru5pru5u','t2nMvwK','ChjVy2vZC2vKx3jVD3m','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','BM93','Aw52ywXPzf9JB25KAxrPB24','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','revtqW','C2v0sM9I','mJq4BLrYwg9T','D2fYBG','y29TCgXLDgvKx2f0','vxnPBMCGy3vZDg9Tigv4Cg9YDff1zxj5','ChjVy2vZC0PVyG','u3veyNG','C3rYAw5N','zxHWB3j0x2zPBgvFzgvSzxrLx2vYCM9Y','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','CMvZB2X2zuv4Cg9YDff1zxj5','CMvZB2X2zq','vfrjsw8','ignOyxjZkq','zxHPC3rZu3LUyW','rxHWB3j0igzPBguGBM90igzVDw5K','z2vUzxjHDgu','y29SDw1UCW','ndyXmdDLCNfxq28','cK9srevsiejzia','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','y29SDw1UrM9YBwf0CW','zMLSzv9WyxrO','DxbKyxrLsM9I','z2v0sM9I','C3rHCNrZv2L0Aa','DxDiAg4','Cg9ZDgDYzxnXBa','z2vUzxjHDgvfEgnLBa','t0rTu1q','DhjPA0O','Aw52ywXPzf9VCMrLCG','Aw5MBW','Dg9tDhjPBMC','qvnLrfy','nZK2ntq4u1zkCwXH','CMvHzezPBgvtEw5J','zLPZAKS','EKPUB2m','x2rHDge','zxHWB3j0x3nLCNzPy2vFAw5PDa','iefticGkicaGia','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK','Bw9KDwXLtMfTzq','Dg9mB3DLCKnHC2u','z2v0rMLSzvbHDgG','D0j1sfG','Dg9vChbLCKnHC2u','odHhyw9Nq1O','zxHWB3j0x2nSzwfUDxbFC3rHCNq','CMvWBgfJzq','zxHWB3j0rgLY','DMTlB3a','CMfUzg9T','zxHWB3j0x2nVBxbSzxrLza','DhjPBq','zxHJzwXFy29SDw1UC19MywXSyMfJAW','zg1wtvu','C01gzfi','AxHHD2y','y2XLyw51Ca','zw50CMLLCW','ieLoicG','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','Dw5SAw5R','CM91BMq','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','C2fUAxrPEMvwywX1zq','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','ze1TrLG','zxHWB3j0CW','C3vIC3rYAw5N','y2HHCKf0','BwvZC2fNzq','mJbOveDuA1a','ntKWmtv1suLszvK','rvHqt1jux0rjuG','cIaGicbguK9nia','y3zAtxC','mZi5mJu4vMrMDeHn','sgHNEhy','wKrmzuq','z2v0sM9Iu3rHDhvZ','AxnbCNjHEq','zMLLBgrmywjLBhm','A2v5CW','z2vUzxjHDgvkB2jjza','yNvPBgrpCMrLCKj5q2XHDxnL','nJy4ndm3mMjsAK1mwa','AM9Ix2LK','zxHWB3j0x2zLDgnOx3n0yxj0'];a0_0xd367=function(){return _0x393110;};return a0_0xd367();}let executeQuery;function a0_0x205f(_0x1516e5,_0x170fbb){_0x1516e5=_0x1516e5-0x195;const _0xd36733=a0_0xd367();let _0x205ffe=_0xd36733[_0x1516e5];if(a0_0x205f['QMaGcQ']===undefined){var _0x179ea0=function(_0x42558b){const _0x187a8a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x473469='',_0x5acf07='';for(let _0xd39e3d=0x0,_0x235bb8,_0x470156,_0xec5a3a=0x0;_0x470156=_0x42558b['charAt'](_0xec5a3a++);~_0x470156&&(_0x235bb8=_0xd39e3d%0x4?_0x235bb8*0x40+_0x470156:_0x470156,_0xd39e3d++%0x4)?_0x473469+=String['fromCharCode'](0xff&_0x235bb8>>(-0x2*_0xd39e3d&0x6)):0x0){_0x470156=_0x187a8a['indexOf'](_0x470156);}for(let _0x54b43a=0x0,_0x42d147=_0x473469['length'];_0x54b43a<_0x42d147;_0x54b43a++){_0x5acf07+='%'+('00'+_0x473469['charCodeAt'](_0x54b43a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5acf07);};a0_0x205f['aAqaaJ']=_0x179ea0,a0_0x205f['gByoJj']={},a0_0x205f['QMaGcQ']=!![];}const _0x456fc6=_0xd36733[0x0],_0x51e573=_0x1516e5+_0x456fc6,_0xe2813b=a0_0x205f['gByoJj'][_0x51e573];return!_0xe2813b?(_0x205ffe=a0_0x205f['aAqaaJ'](_0x205ffe),a0_0x205f['gByoJj'][_0x51e573]=_0x205ffe):_0x205ffe=_0xe2813b,_0x205ffe;}if(dbType===a0_0x18ad12(0x210)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x17e780,_0x453c1d)=>oracleDb['executeQuery'](_0x17e780,_0x453c1d);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x65a679,_0x5d5a96)=>mysqlDb[a0_0x18ad12(0x199)](_0x65a679,_0x5d5a96);}else executeQuery=require('../../core/utils/db')[a0_0x18ad12(0x199)];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0x18ad12(0x1e4)](){const _0x1224c5=a0_0x18ad12,_0x3b9fee={'XSeph':'default','FNJgv':_0x1224c5(0x1d9),'sKQAP':'Failed\x20to\x20initialize\x20export\x20service'};if(!this[_0x1224c5(0x196)]){const _0xc046d7=process['env'][_0x1224c5(0x19c)]||_0x3b9fee[_0x1224c5(0x1a6)];this[_0x1224c5(0x196)]=process['env'][_0x1224c5(0x1fd)]||path['join'](__dirname,'../../exports/'+_0xc046d7);try{!fsSync[_0x1224c5(0x1bf)](this['_exportDir'])&&fsSync['mkdirSync'](this['_exportDir'],{'recursive':!![]}),logger['info']({'event':_0x3b9fee['FNJgv'],'dir':this[_0x1224c5(0x196)]},_0x1224c5(0x226));}catch(_0xd708bc){logError(_0xd708bc,{'event':'export_service_init_error'},_0x3b9fee['sKQAP']);}}return this[_0x1224c5(0x196)];}[a0_0x18ad12(0x1bb)](_0xf1d443,_0x1393a6=null){const _0x22b3c3=a0_0x18ad12,_0x16a931={'sobnn':'string','HuTdc':'file:','quZKP':'Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty','vUrhr':_0x22b3c3(0x1a4),'dMmFX':'export_query_file_resolve','fZsjK':'utf8','DBNnR':_0x22b3c3(0x1a8)};if(!_0xf1d443||typeof _0xf1d443!==_0x16a931[_0x22b3c3(0x214)])return _0xf1d443;const _0x12a778=_0xf1d443[_0x22b3c3(0x1e8)]();if(!_0x12a778[_0x22b3c3(0x1ca)](_0x16a931[_0x22b3c3(0x212)]))return _0x12a778;const _0x4dc1d2=_0x12a778[_0x22b3c3(0x1e3)](/^file:/,'')['trim']();if(!_0x4dc1d2)throw new Error(_0x16a931['quZKP']);const _0x554a9d=_0x1393a6||path[_0x22b3c3(0x220)](process[_0x22b3c3(0x22e)](),_0x16a931['vUrhr']),_0xb9a9cd=path[_0x22b3c3(0x1bc)](_0x554a9d,_0x4dc1d2);logger[_0x22b3c3(0x1d1)]({'event':_0x16a931[_0x22b3c3(0x1f6)],'relativePath':_0x4dc1d2,'baseDir':_0x554a9d,'absolutePath':_0xb9a9cd},_0x22b3c3(0x1af)+_0x4dc1d2);if(!fsSync[_0x22b3c3(0x1bf)](_0xb9a9cd))throw new Error(_0x22b3c3(0x1f5)+_0xb9a9cd);try{const _0x513626=fsSync[_0x22b3c3(0x1d5)](_0xb9a9cd,_0x16a931[_0x22b3c3(0x1d6)]);if(!_0x513626||!_0x513626['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0xb9a9cd);return logger[_0x22b3c3(0x1d1)]({'event':_0x22b3c3(0x1db),'file':_0xb9a9cd,'queryLength':_0x513626[_0x22b3c3(0x216)]},_0x22b3c3(0x239)+_0x513626['length']+_0x22b3c3(0x1be)),_0x513626['trim']();}catch(_0x35b48f){if(_0x35b48f['code']===_0x16a931['DBNnR'])throw new Error(_0x22b3c3(0x1f5)+_0xb9a9cd);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x35b48f['message']);}}[a0_0x18ad12(0x207)](){const _0x1a6673=a0_0x18ad12,_0xa6de8={'pZsuE':function(_0x240726){return _0x240726();},'RqffZ':function(_0x71bf7,_0x15ba18){return _0x71bf7+_0x15ba18;},'cvZMw':function(_0x324de3,_0x9e87d1){return _0x324de3<_0x9e87d1;}},_0x3abfb1=_0x1a6673(0x1ab),_0x1f3c7e=Date[_0x1a6673(0x1ad)]()[_0x1a6673(0x1d2)](0x24),_0x37dd4e=_0xa6de8[_0x1a6673(0x19b)](uuidv7)[_0x1a6673(0x1e3)](/-/g,'')['substring'](0x0,0xc-_0x1f3c7e['length']),_0x509053=_0xa6de8['RqffZ'](_0x1f3c7e,_0x37dd4e)[_0x1a6673(0x1f8)](0x0,0xc);let _0x419867='';for(let _0x46a187=0x0;_0xa6de8[_0x1a6673(0x1ff)](_0x46a187,0xc);_0x46a187++){_0x509053[_0x46a187]?_0x419867+=_0x509053[_0x46a187]:_0x419867+=_0x3abfb1[_0x1a6673(0x1f9)](Math[_0x1a6673(0x223)](Math[_0x1a6673(0x1e6)]()*_0x3abfb1[_0x1a6673(0x216)]));}return _0x419867;}async['createJob'](_0x43728d){const _0x37daca=a0_0x18ad12,_0x4b45a7={'ODmST':'Export\x20processing\x20failed','zJnoc':'pending','tXcjm':_0x37daca(0x198),'UdEzy':_0x37daca(0x228)},_0x37aee3=this[_0x37daca(0x207)](),_0x47b71b={'job_id':_0x37aee3,'status':_0x4b45a7[_0x37daca(0x1d7)],'progress':0x0,'created_at':new Date()[_0x37daca(0x1a2)](),'params':_0x43728d,'total_rows':0x0,'processed_rows':0x0};return await redisHelper[_0x37daca(0x1b1)](_0x37aee3,_0x47b71b),logger['info']({'event':_0x4b45a7[_0x37daca(0x237)],'jobId':_0x37aee3,'params':_0x43728d},_0x4b45a7['UdEzy']),this['processJob'](_0x37aee3,_0x43728d)['catch'](_0xdeb81c=>{const _0x53b8dd=_0x37daca;logError(_0xdeb81c,{'event':'export_process_error','jobId':_0x37aee3},_0x4b45a7[_0x53b8dd(0x1ce)]);}),{'job_id':_0x37aee3,'status':_0x4b45a7['zJnoc']};}async[a0_0x18ad12(0x203)](_0x7d4fe5){const _0x2d5e9c=a0_0x18ad12,_0x2670f6={'xKgQt':_0x2d5e9c(0x20d)},_0x4e6cb8=await redisHelper['getJob'](_0x7d4fe5);if(!_0x4e6cb8)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x4e6cb8[_0x2d5e9c(0x20a)],'status':_0x4e6cb8['status'],'progress':_0x4e6cb8['progress'],'total_rows':_0x4e6cb8[_0x2d5e9c(0x21f)],'processed_rows':_0x4e6cb8[_0x2d5e9c(0x1aa)],'file_url':_0x4e6cb8['status']===_0x2670f6[_0x2d5e9c(0x20f)]?_0x2d5e9c(0x19a)+_0x4e6cb8[_0x2d5e9c(0x213)][_0x2d5e9c(0x1dc)]+'/'+_0x4e6cb8['params']['endpointName']+_0x2d5e9c(0x221)+_0x7d4fe5:null,'error':_0x4e6cb8['error']||null,'created_at':_0x4e6cb8['created_at'],'completed_at':_0x4e6cb8[_0x2d5e9c(0x1b4)]||null}};}async[a0_0x18ad12(0x1b6)](_0x1d694d,_0x4a220a){const _0x377bce=a0_0x18ad12,_0x3ec748={'SuDbx':'processing','hOrYg':'export_processing_start','NCJiq':'Export\x20processing\x20started','HrIlC':_0x377bce(0x1e7),'SQRHC':'Export\x20failed'};try{await redisHelper[_0x377bce(0x1c8)](_0x1d694d,{'status':_0x3ec748[_0x377bce(0x1b7)],'started_at':new Date()['toISOString']()}),logger['info']({'event':_0x3ec748['hOrYg'],'jobId':_0x1d694d},_0x3ec748[_0x377bce(0x22c)]);const _0x31d44a=await this['fetchData'](_0x4a220a);await redisHelper[_0x377bce(0x1c8)](_0x1d694d,{'total_rows':_0x31d44a['length']});const _0x201736=await this[_0x377bce(0x1cd)](_0x1d694d,_0x31d44a,_0x4a220a);await redisHelper['updateJob'](_0x1d694d,{'status':_0x377bce(0x20d),'progress':0x64,'file_path':_0x201736,'completed_at':new Date()[_0x377bce(0x1a2)]()}),logger[_0x377bce(0x1d1)]({'event':_0x3ec748[_0x377bce(0x236)],'jobId':_0x1d694d,'rows':_0x31d44a[_0x377bce(0x216)]},_0x377bce(0x1f3));}catch(_0x49553f){logError(_0x49553f,{'event':'export_failed','jobId':_0x1d694d},_0x3ec748['SQRHC']),await redisHelper['updateJob'](_0x1d694d,{'status':_0x377bce(0x224),'error':_0x49553f['message'],'failed_at':new Date()[_0x377bce(0x1a2)]()});}}async['fetchData'](_0x412693){const _0xba1e4b=a0_0x18ad12,_0x528f3c={'llfXh':_0xba1e4b(0x1f0),'UKyeq':function(_0x24ad3e,_0x37a3c2){return _0x24ad3e===_0x37a3c2;},'ZDLeD':'all','qeAHT':_0xba1e4b(0x20b),'WTVdK':function(_0x16fc74,_0xafa288){return _0x16fc74(_0xafa288);},'wBuHX':'oracle','dtvNT':function(_0x3f8dca,_0x2134da){return _0x3f8dca>_0x2134da;},'OcfUi':_0xba1e4b(0x1a3),'ijGvv':function(_0x4e9238,_0x376550,_0x3f3b71,_0x535734){return _0x4e9238(_0x376550,_0x3f3b71,_0x535734);},'pKfJM':'Failed\x20to\x20fetch\x20data'};try{const {tableName:_0x1f0a10,columns:_0x2977e5,exportQuery:_0x362e82,where:_0x12b5b3,sort_columns:_0x1eb874}=_0x412693;if(!_0x1f0a10||!_0x2977e5||_0x2977e5['length']===0x0)throw new Error('tableName\x20and\x20columns\x20are\x20required');const _0x4d8377=_0x1f0a10['replace'](/\./g,'_')+_0xba1e4b(0x1d8);let _0xe24116;if(_0x362e82&&_0x362e82[_0xba1e4b(0x1e8)]()){let _0x5e1f6e=_0x362e82;_0x362e82['trim']()['startsWith']('file:')&&(_0x5e1f6e=this[_0xba1e4b(0x1bb)](_0x362e82)),_0xe24116=_0xba1e4b(0x21b)+_0x4d8377+_0xba1e4b(0x1da)+_0x5e1f6e+'\x0a)',logger['info']({'event':_0xba1e4b(0x1ba),'query':_0x5e1f6e[_0xba1e4b(0x1f8)](0x0,0x64)},_0xba1e4b(0x1b5));}else{const _0x3e54c4=_0x2977e5['map'](_0x21590b=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x21590b)[_0xba1e4b(0x220)](',');_0xe24116='WITH\x20'+_0x4d8377+_0xba1e4b(0x235)+_0x3e54c4+_0xba1e4b(0x1fe)+_0x1f0a10+'\x0a)',logger['info']({'event':'export_using_auto_query','tableName':_0x1f0a10,'columnCount':_0x2977e5[_0xba1e4b(0x216)]},_0x528f3c[_0xba1e4b(0x19e)]);}const _0x5b6aa2=!_0x2977e5||_0x2977e5['length']===0x0||_0x528f3c['UKyeq'](_0x2977e5['length'],0x1)&&(_0x2977e5[0x0]==='*'||_0x2977e5[0x0]['toLowerCase']()===_0x528f3c[_0xba1e4b(0x202)]),_0x31ba18=_0x5b6aa2?'*':_0x2977e5[_0xba1e4b(0x220)](',\x20');_0xe24116+='\x0aSELECT\x20'+_0x31ba18+'\x0aFROM\x20'+_0x4d8377;if(_0x12b5b3){const _0x558430=this[_0xba1e4b(0x234)](_0x12b5b3);_0x558430&&(_0xe24116+='\x0aWHERE\x20'+_0x558430);}if(_0x1eb874&&_0x1eb874['length']>0x0){const _0xd31bae=this[_0xba1e4b(0x208)](_0x1eb874);_0xd31bae&&(_0xe24116+=_0xba1e4b(0x1c4)+_0xd31bae);}logger[_0xba1e4b(0x1d1)]({'event':_0x528f3c[_0xba1e4b(0x1a7)],'query':_0xe24116['substring'](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0x49e9ff=await _0x528f3c[_0xba1e4b(0x229)](executeQuery,_0xe24116);let _0x523bfd=_0x49e9ff;return dbType===_0x528f3c[_0xba1e4b(0x1df)]&&_0x49e9ff&&_0x528f3c['dtvNT'](_0x49e9ff[_0xba1e4b(0x216)],0x0)&&(_0x523bfd=_0x49e9ff[_0xba1e4b(0x222)](_0x1f1760=>{const _0x327b52=_0xba1e4b,_0x51d108={};for(const [_0x1211ee,_0x2e1c88]of Object[_0x327b52(0x1ee)](_0x1f1760)){_0x51d108[_0x1211ee[_0x327b52(0x1dd)]()]=_0x2e1c88;}return _0x51d108;})),logger[_0xba1e4b(0x1d1)]({'event':_0x528f3c[_0xba1e4b(0x1a9)],'rows':_0x523bfd[_0xba1e4b(0x216)]},_0xba1e4b(0x22b)),_0x523bfd;}catch(_0x3b531c){_0x528f3c['ijGvv'](logError,_0x3b531c,{'event':'export_fetch_error'},_0x528f3c['pKfJM']);throw _0x3b531c;}}[a0_0x18ad12(0x1f4)](_0x1f218d){const _0x1442d0=a0_0x18ad12,_0x59a8c4={'tGgca':_0x1442d0(0x1b8)};if(typeof _0x1f218d===_0x59a8c4['tGgca'])return _0x1f218d['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array[_0x1442d0(0x204)](_0x1f218d))return _0x1f218d['map'](_0x542bcb=>this[_0x1442d0(0x1f4)](_0x542bcb));}return _0x1f218d;}['buildWhereClause'](_0x3ca709){const _0x3a602f=a0_0x18ad12,_0x737d82={'VjSJE':function(_0x557550,_0x37bf45){return _0x557550||_0x37bf45;},'nKqhf':function(_0x20ea69,_0x3f7934){return _0x20ea69!==_0x3f7934;},'fvXCS':function(_0x556a43,_0xaa3c76){return _0x556a43===_0xaa3c76;},'vkKop':'string','NQrgb':function(_0x188906,_0x75698c){return _0x188906===_0x75698c;},'uwHhn':'LIKE','trikJ':'NOT\x20LIKE','ASeDV':'IS\x20NOT\x20NULL','SuVDv':_0x3a602f(0x227)};if(!_0x3ca709||!_0x3ca709[_0x3a602f(0x23a)]||_0x3ca709['conditions'][_0x3a602f(0x216)]===0x0)return'';const {logic:_0x4609be,conditions:_0x175857}=_0x3ca709,_0x16da68=_0x4609be&&_0x737d82['NQrgb'](_0x4609be['toUpperCase'](),'OR')?_0x3a602f(0x19d):'\x20AND\x20',_0x4a540e=_0x175857[_0x3a602f(0x222)](_0x4809d3=>{const _0x37b3a6=_0x3a602f,_0x535733={'tYOgn':function(_0x1375e1,_0x9471e1){return _0x1375e1===_0x9471e1;},'DmpEj':_0x37b3a6(0x1b8)},{key:_0x4333d3,operator:_0x4c0dc8,value:_0x1be88c,sensitive:_0x1bbeda}=_0x4809d3;if(_0x737d82['VjSJE'](!_0x4333d3,!_0x4c0dc8))return logger['warn']({'event':_0x37b3a6(0x1ae),'condition':_0x4809d3},'Skipping\x20invalid\x20condition'),null;const _0x454cdd=this[_0x37b3a6(0x1f4)](_0x1be88c),_0x13bc30=_0x737d82[_0x37b3a6(0x215)](_0x1bbeda,undefined)?_0x1bbeda:!![];let _0x3a6542=_0x4333d3,_0x486b94=_0x454cdd;!_0x13bc30&&(_0x3a6542='UPPER('+_0x4333d3+')',_0x737d82[_0x37b3a6(0x23b)](typeof _0x1be88c,_0x737d82[_0x37b3a6(0x1e5)])&&(_0x486b94=_0x1be88c[_0x37b3a6(0x1e0)]()));const _0x3bd9cc=_0x737d82['NQrgb'](typeof _0x486b94,'string')?'\x27'+_0x486b94['replace'](/'/g,'\x27\x27')+'\x27':_0x486b94;switch(_0x4c0dc8[_0x37b3a6(0x1e0)]()){case'=':case'!=':case'<>':return _0x3a6542+'\x20'+_0x4c0dc8+'\x20'+_0x3bd9cc;case'>':case'<':case'>=':case'<=':const _0x26e4dc=_0x737d82[_0x37b3a6(0x23b)](typeof _0x454cdd,_0x737d82['vkKop'])?'\x27'+_0x454cdd[_0x37b3a6(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x454cdd;return _0x4333d3+'\x20'+_0x4c0dc8+'\x20'+_0x26e4dc;case _0x737d82[_0x37b3a6(0x1cb)]:case _0x737d82[_0x37b3a6(0x1cf)]:return _0x3a6542+'\x20'+_0x4c0dc8+'\x20'+_0x3bd9cc;case'IN':if(Array[_0x37b3a6(0x204)](_0x454cdd)){let _0x2729f5;return!_0x13bc30?_0x2729f5=_0x454cdd[_0x37b3a6(0x222)](_0x5d9762=>{const _0x2f3f5f=_0x37b3a6,_0x3620b5=_0x535733['tYOgn'](typeof _0x5d9762,_0x535733['DmpEj'])?_0x5d9762[_0x2f3f5f(0x1e0)]():_0x5d9762;return _0x535733['tYOgn'](typeof _0x3620b5,_0x535733['DmpEj'])?'\x27'+_0x3620b5[_0x2f3f5f(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x3620b5;})[_0x37b3a6(0x220)](',\x20'):_0x2729f5=_0x454cdd['map'](_0x56c293=>typeof _0x56c293===_0x37b3a6(0x1b8)?'\x27'+_0x56c293[_0x37b3a6(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x56c293)[_0x37b3a6(0x220)](',\x20'),_0x3a6542+'\x20IN\x20('+_0x2729f5+')';}return _0x3a6542+_0x37b3a6(0x1ef)+_0x3bd9cc+')';case'IS\x20NULL':return _0x4333d3+_0x37b3a6(0x19f);case _0x737d82[_0x37b3a6(0x1d3)]:return _0x4333d3+'\x20IS\x20NOT\x20NULL';default:logger[_0x37b3a6(0x1b3)]({'event':'unknown_operator','operator':_0x4c0dc8},_0x737d82[_0x37b3a6(0x218)]);return _0x3a6542+_0x37b3a6(0x1a5)+_0x3bd9cc;}})['filter'](_0x2e32dd=>_0x2e32dd!==null);if(_0x4a540e['length']===0x0)return'';return _0x4a540e['join'](_0x16da68);}[a0_0x18ad12(0x208)](_0x533fc0){const _0x35cadd=a0_0x18ad12,_0x26a577={'xFQLR':_0x35cadd(0x1a0)};if(!_0x533fc0||_0x533fc0[_0x35cadd(0x216)]===0x0)return'';const _0x1293f3=_0x533fc0['map'](_0x5153f0=>{const _0x5d981b=_0x35cadd,{column:_0x5a3e71,direction:_0x520667}=_0x5153f0;if(!_0x5a3e71)return logger['warn']({'event':_0x5d981b(0x1d0),'item':_0x5153f0},'Skipping\x20invalid\x20order\x20clause'),null;const _0x55890f=_0x520667&&_0x520667[_0x5d981b(0x1e0)]()===_0x5d981b(0x1b0)?'DESC':_0x26a577['xFQLR'];return _0x5a3e71+'\x20'+_0x55890f;})[_0x35cadd(0x225)](_0x4873ba=>_0x4873ba!==null);if(_0x1293f3['length']===0x0)return'';return _0x1293f3[_0x35cadd(0x220)](',\x20');}async['generateExcel'](_0x285071,_0x3d99ba,_0x37d871){const _0x473cec=a0_0x18ad12,_0x9e252c={'sMFdR':function(_0x56aeab,_0x4896a8){return _0x56aeab/_0x4896a8;},'gkzWm':function(_0x316650,_0x183ab7){return _0x316650(_0x183ab7);},'GjRmh':function(_0x590c8e,_0x1e44a8){return _0x590c8e===_0x1e44a8;},'ixawf':function(_0x371b36,_0x4d1b73){return _0x371b36===_0x4d1b73;},'LCSEx':'all','ttjpR':function(_0x5c4a45,_0x137675){return _0x5c4a45>_0x137675;},'zSRlu':'excel_columns_select_all'},_0xec78e2=_0x9e252c[_0x473cec(0x21a)](require,_0x473cec(0x233)),_0x319c57=new _0xec78e2(),_0x457ddb=_0x37d871[_0x473cec(0x211)]?_0x37d871[_0x473cec(0x211)]+'-'+_0x285071:_0x473cec(0x20e)+_0x285071,_0xc64071=path[_0x473cec(0x220)](this[_0x473cec(0x1e4)],_0x457ddb+'.xlsx');let _0x93ab1f=_0x37d871['columns'];const _0x3fb64e=_0x93ab1f&&_0x93ab1f[_0x473cec(0x216)]===0x1&&(_0x9e252c['GjRmh'](_0x93ab1f[0x0],'*')||_0x9e252c[_0x473cec(0x1ec)](_0x93ab1f[0x0][_0x473cec(0x1dd)](),_0x9e252c['LCSEx']));if(_0x9e252c['ttjpR'](_0x3d99ba[_0x473cec(0x216)],0x0)){const _0x1abe5f=Object[_0x473cec(0x206)](_0x3d99ba[0x0]);if(_0x3fb64e)_0x93ab1f=_0x1abe5f,logger[_0x473cec(0x1d1)]({'event':_0x9e252c['zSRlu'],'columns':_0x93ab1f},_0x473cec(0x21d)+_0x93ab1f[_0x473cec(0x216)]+'\x20columns\x20(wildcard\x20requested)');else{if(_0x93ab1f&&_0x93ab1f['length']>0x0){const _0x351489=_0x93ab1f['filter'](_0x221fd6=>_0x1abe5f[_0x473cec(0x22f)](_0x221fd6));_0x351489[_0x473cec(0x216)]>0x0?(_0x93ab1f=_0x351489,logger['info']({'event':_0x473cec(0x22a),'requestedColumns':_0x37d871['columns'],'validColumns':_0x93ab1f},'Using\x20'+_0x93ab1f['length']+'\x20columns\x20from\x20request')):(_0x93ab1f=_0x1abe5f,logger['warn']({'event':_0x473cec(0x1e9),'requestedColumns':_0x37d871[_0x473cec(0x1c2)],'availableColumns':_0x1abe5f},_0x473cec(0x230)+_0x1abe5f['length']+'\x20columns'));}else _0x93ab1f=_0x1abe5f,logger[_0x473cec(0x1d1)]({'event':'excel_columns_from_query_result','columns':_0x93ab1f},'Using\x20'+_0x93ab1f['length']+_0x473cec(0x20c));}}else logger['info']({'event':_0x473cec(0x231),'columns':_0x93ab1f},'Using\x20'+(_0x93ab1f?.[_0x473cec(0x216)]||0x0)+_0x473cec(0x197));return await _0x319c57[_0x473cec(0x1c1)]({'data':_0x3d99ba,'columns':_0x93ab1f,'columnFormats':_0x37d871[_0x473cec(0x1c6)]||null,'fieldLabels':_0x37d871[_0x473cec(0x205)]||null,'filePath':_0xc64071,'onProgress':async _0x16e5b1=>{const _0x5e8a90=_0x473cec;await redisHelper['updateJob'](_0x285071,{'progress':Math['round'](_0x16e5b1),'processed_rows':Math[_0x5e8a90(0x1f2)](_0x9e252c[_0x5e8a90(0x1eb)](_0x16e5b1,0x64)*_0x3d99ba[_0x5e8a90(0x216)])});}}),_0xc64071;}async[a0_0x18ad12(0x1de)](_0x1dcf4b){const _0x5c1aea=a0_0x18ad12,_0x5584d3={'FDygd':function(_0x194e26,_0x1cf01d){return _0x194e26!==_0x1cf01d;},'RPkCV':function(_0x117293,_0x9d60cc,_0x6d136e,_0x1b2c24){return _0x117293(_0x9d60cc,_0x6d136e,_0x1b2c24);},'KsxQc':_0x5c1aea(0x1c0)},_0x35074b=await redisHelper[_0x5c1aea(0x1c9)](_0x1dcf4b);if(!_0x35074b||_0x5584d3['FDygd'](_0x35074b['status'],_0x5c1aea(0x20d)))return null;try{return await fs['access'](_0x35074b[_0x5c1aea(0x1c7)]),_0x35074b[_0x5c1aea(0x1c7)];}catch(_0x377a8c){return _0x5584d3['RPkCV'](logError,_0x377a8c,{'event':'export_file_not_found','jobId':_0x1dcf4b,'path':_0x35074b[_0x5c1aea(0x1c7)]},_0x5584d3[_0x5c1aea(0x219)]),null;}}async[a0_0x18ad12(0x1ed)](){const _0x1b3bfe=a0_0x18ad12,_0x580a1e={'UOpZB':function(_0x4e4da7,_0x37b99d){return _0x4e4da7/_0x37b99d;},'Hhgxv':function(_0x26cbd3,_0x4aa581){return _0x26cbd3-_0x4aa581;},'Luivu':function(_0x5b4aee,_0x44e000){return _0x5b4aee*_0x44e000;},'WjOty':'Export\x20file\x20deleted','TTIIo':'export_cleanup_complete','dmVMU':'Export\x20cleanup\x20completed'};logger[_0x1b3bfe(0x1d1)]({'event':_0x1b3bfe(0x1e2)},'Starting\x20export\x20cleanup');const _0x18afd6=await redisHelper['getAllJobs']();let _0xbdd67=0x0;for(const _0x5e7add of _0x18afd6){const _0x538658=new Date(_0x5e7add['created_at']),_0x1465e3=new Date(),_0x275ff2=_0x580a1e['UOpZB'](_0x580a1e[_0x1b3bfe(0x201)](_0x1465e3,_0x538658),_0x580a1e['Luivu'](0x3e8,0x3c)*0x3c);if(_0x275ff2>0x1){if(_0x5e7add['file_path'])try{await fs[_0x1b3bfe(0x1f1)](_0x5e7add['file_path']),logger['info']({'event':_0x1b3bfe(0x1a1),'path':_0x5e7add['file_path']},_0x580a1e[_0x1b3bfe(0x232)]);}catch(_0x299a7a){logger['warn']({'event':_0x1b3bfe(0x1b9),'path':_0x5e7add[_0x1b3bfe(0x1c7)],'error':_0x299a7a[_0x1b3bfe(0x1fa)]},'Failed\x20to\x20delete\x20export\x20file');}await redisHelper['deleteJob'](_0x5e7add[_0x1b3bfe(0x20a)]),_0xbdd67++;}}return logger['info']({'event':_0x580a1e[_0x1b3bfe(0x1bd)],'deleted':_0xbdd67},_0x580a1e[_0x1b3bfe(0x1ea)]),_0xbdd67;}}module[a0_0x18ad12(0x1f7)]=new ExportService();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x305a5f=a0_0x16db;function a0_0x16db(_0x51f17b,_0x7ee112){_0x51f17b=_0x51f17b-0x1ba;const _0x502819=a0_0x5028();let _0x16dba1=_0x502819[_0x51f17b];if(a0_0x16db['jzcvui']===undefined){var _0x52cf32=function(_0xd13123){const _0x38f6f6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x251793='',_0x280a6f='';for(let _0x56d623=0x0,_0x2e9b77,_0x39b3f0,_0x29d1f2=0x0;_0x39b3f0=_0xd13123['charAt'](_0x29d1f2++);~_0x39b3f0&&(_0x2e9b77=_0x56d623%0x4?_0x2e9b77*0x40+_0x39b3f0:_0x39b3f0,_0x56d623++%0x4)?_0x251793+=String['fromCharCode'](0xff&_0x2e9b77>>(-0x2*_0x56d623&0x6)):0x0){_0x39b3f0=_0x38f6f6['indexOf'](_0x39b3f0);}for(let _0x478157=0x0,_0x26a2a7=_0x251793['length'];_0x478157<_0x26a2a7;_0x478157++){_0x280a6f+='%'+('00'+_0x251793['charCodeAt'](_0x478157)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x280a6f);};a0_0x16db['NiTetH']=_0x52cf32,a0_0x16db['hcRuGq']={},a0_0x16db['jzcvui']=!![];}const _0x36292e=_0x502819[0x0],_0x562597=_0x51f17b+_0x36292e,_0x59fe23=a0_0x16db['hcRuGq'][_0x562597];return!_0x59fe23?(_0x16dba1=a0_0x16db['NiTetH'](_0x16dba1),a0_0x16db['hcRuGq'][_0x562597]=_0x16dba1):_0x16dba1=_0x59fe23,_0x16dba1;}function a0_0x5028(){const _0x292f03=['nK1XtMrewa','Aw5JBhvKzxm','zxHWB3j0x3n0yxr1C19LCNjVCG','rMfPBgvKihrVigrVD25SB2fKigzPBgu','BwvZC2fNzq','txzzCwq','mJH5vLfdq2m','v1vOAwq','sw52ywXPzcb3AgvYzsbZDhj1y3r1CMuUiev4CgvJDgvKoIb7igXVz2LJoIaIqu5eFe9siIWGy29UzgL0Aw9UCZOGwY4UlL0GFq','zg93BMXVywq','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','A2v5','AgfUzgXLrxHWB3j0vhjPz2DLCG','odKZodG5rvrhzLDq','sw52ywXPzcb3AgvYzsbMAwvSza','AxnbCNjHEq','zxHWB3j0uxvLCNK','mtu0nhrduxzdBG','Aw5MBW','l2v4Cg9YDc1KB3DUBg9Hza','ANnVBG','l2fWAs8','l2v4Cg9YDa','AgfUzgXLrxHWB3j0rg93BMXVywq','ntyWA3DrtwLV','y29UzgL0Aw9UCW','mZiXnZG0mxrds2zSDq','v3nAB2i','lwv4Cg9YDa','y3jLyxrLsM9I','q3HjvfC','v0DXtue','C3rHDhvZ','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','y29SDw1U','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','nJC5odC4wxjpthH2','AgvHzgvYC1nLBNq','EgTvCxm','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','mtG4mJe0wKPsseTt','Cgf0Aa','C3vJy2vZCW','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDcbMAwXL','zxHWB3j0CW','y29SDw1UCW','EgXZEa','l2v4Cg9YDc1ZDgf0Dxm','CMvNAxn0zxjdBgvHBNvWuM91Dgu','ndeXmfvtvLbhuq','q2XLyw51CcbMywLSzwq','mtbSC1fvBwO','yMfZzw5HBwu','ody5nZu4zfHWwuvJ','q2XLyw51CcbJB21WBgv0zwq','tNniwMO','y29SDw1UrM9YBwf0CW','CxvLCNK'];a0_0x5028=function(){return _0x292f03;};return a0_0x5028();}(function(_0x4e35fb,_0x5eb3f4){const _0x4e6d21=a0_0x16db,_0x2cd3fa=_0x4e35fb();while(!![]){try{const _0x4412fc=-parseInt(_0x4e6d21(0x1c0))/0x1+-parseInt(_0x4e6d21(0x1d1))/0x2*(-parseInt(_0x4e6d21(0x1d6))/0x3)+-parseInt(_0x4e6d21(0x1dc))/0x4*(-parseInt(_0x4e6d21(0x1cd))/0x5)+parseInt(_0x4e6d21(0x1c4))/0x6+parseInt(_0x4e6d21(0x1ee))/0x7*(parseInt(_0x4e6d21(0x1e7))/0x8)+-parseInt(_0x4e6d21(0x1e3))/0x9+-parseInt(_0x4e6d21(0x1cf))/0xa*(-parseInt(_0x4e6d21(0x1f0))/0xb);if(_0x4412fc===_0x5eb3f4)break;else _0x2cd3fa['push'](_0x2cd3fa['shift']());}catch(_0x9c4b5e){_0x2cd3fa['push'](_0x2cd3fa['shift']());}}}(a0_0x5028,0x6a5c5));const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require(a0_0x305a5f(0x1c5));class ExportHandler{static['registerRoutes'](_0x3b6328,_0x37dfa2,_0x5246b2,_0xa1c58a){const _0x198b2b=a0_0x305a5f,_0x23bfba={'CxITW':function(_0x3b9236,_0x53d18b,_0x4a7597,_0x451b0e){return _0x3b9236(_0x53d18b,_0x4a7597,_0x451b0e);},'MWIPb':'export_trigger_error','hyuqH':_0x198b2b(0x1e0),'MvYqd':_0x198b2b(0x1d8),'szdwK':_0x198b2b(0x1bd),'TzukA':'export_download_error'},_0x5adbd8=_0x198b2b(0x1eb)+_0x37dfa2+'/'+_0x5246b2;_0x3b6328['post'](_0x5adbd8+_0x198b2b(0x1ec),async(_0x513918,_0x5b4081)=>{const _0x257080=_0x198b2b;try{await this[_0x257080(0x1e2)](_0x513918,_0x5b4081,_0xa1c58a,_0x37dfa2,_0x5246b2);}catch(_0x27a5e0){_0x23bfba['CxITW'](logError,_0x27a5e0,{'event':_0x23bfba['MWIPb']},_0x23bfba['hyuqH']),_0x5b4081[_0x257080(0x1bc)](0x1f4)['json']({'success':![],'error':_0x27a5e0[_0x257080(0x1da)]});}}),_0x3b6328['get'](_0x5adbd8+_0x198b2b(0x1cb),async(_0x475cf2,_0x2ad9b1)=>{const _0x18f0e1=_0x198b2b;try{await this['handleExportStatus'](_0x475cf2,_0x2ad9b1);}catch(_0x822726){_0x23bfba[_0x18f0e1(0x1ba)](logError,_0x822726,{'event':_0x23bfba[_0x18f0e1(0x1db)]},_0x23bfba['szdwK']),_0x2ad9b1[_0x18f0e1(0x1bc)](0x1f4)[_0x18f0e1(0x1ea)]({'success':![],'error':_0x822726['message']});}}),_0x3b6328['get'](_0x5adbd8+_0x198b2b(0x1e9),async(_0x555d3c,_0x5de0ab)=>{const _0x2e63c4=_0x198b2b;try{await this[_0x2e63c4(0x1ed)](_0x555d3c,_0x5de0ab);}catch(_0x255346){_0x23bfba['CxITW'](logError,_0x255346,{'event':_0x23bfba['TzukA']},'Failed\x20to\x20download\x20export'),!_0x5de0ab[_0x2e63c4(0x1c1)]&&_0x5de0ab[_0x2e63c4(0x1bc)](0x1f4)[_0x2e63c4(0x1ea)]({'success':![],'error':_0x255346[_0x2e63c4(0x1da)]});}});}static async['handleExportTrigger'](_0x5f0fc7,_0xec7651,_0x19ac79,_0x5bcbcb,_0x13657d){const _0x280059=a0_0x305a5f,_0x4352cb={'TWNhA':'Only\x20xlsx\x20format\x20is\x20supported','pXrIh':'Invalid\x20sort\x20column','MZmQv':_0x280059(0x1f2),'rIZxW':'xlsx','WUhid':function(_0x3c1cb4,_0x10d533){return _0x3c1cb4||_0x10d533;}},{format:_0x120e93,filename:_0x3de1d4,columns:_0x137dc4,where:_0xee6992,sort_columns:_0x59a25c}=_0x5f0fc7['body'];if(_0x120e93&&_0x120e93!==_0x280059(0x1ca))return _0xec7651[_0x280059(0x1bc)](0x190)['json']({'success':![],'error':_0x4352cb['TWNhA']});if(_0xee6992){if(!_0xee6992['logic']||!_0xee6992[_0x280059(0x1ef)]||!Array['isArray'](_0xee6992[_0x280059(0x1ef)]))return _0xec7651['status'](0x190)[_0x280059(0x1ea)]({'success':![],'error':_0x280059(0x1de)});}if(_0x59a25c){if(!Array[_0x280059(0x1e5)](_0x59a25c))return _0xec7651['status'](0x190)[_0x280059(0x1ea)]({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x5a0534=_0x19ac79[_0x280059(0x1c9)]||[];if(_0xee6992&&Array['isArray'](_0xee6992['conditions']))for(const _0x1cfa8d of _0xee6992[_0x280059(0x1ef)]){if(_0x1cfa8d['key']&&!_0x5a0534['includes'](_0x1cfa8d[_0x280059(0x1e1)]))return _0xec7651[_0x280059(0x1bc)](0x190)['json']({'success':![],'error':_0x280059(0x1e4),'message':'Field\x20\x22'+_0x1cfa8d['key']+'\x22\x20is\x20not\x20allowed','validFields':_0x5a0534});}if(Array[_0x280059(0x1e5)](_0x59a25c))for(const _0x15cbd8 of _0x59a25c){if(_0x15cbd8[_0x280059(0x1be)]&&!_0x5a0534[_0x280059(0x1d7)](_0x15cbd8['column']))return _0xec7651[_0x280059(0x1bc)](0x190)['json']({'success':![],'error':_0x4352cb['pXrIh'],'message':'Column\x20\x22'+_0x15cbd8['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x5a0534});}const _0xb69381=_0x19ac79['tableName']['replace']('.','-')+_0x4352cb['MZmQv'],_0x22706c=await exportService[_0x280059(0x1f3)]({'moduleName':_0x5bcbcb,'endpointName':_0x13657d,'tableName':_0x19ac79['tableName'],'format':_0x120e93||_0x4352cb['rIZxW'],'filename':_0x3de1d4||_0xb69381,'columns':_0x137dc4||_0x19ac79[_0x280059(0x1c9)],'exportQuery':_0x19ac79[_0x280059(0x1e6)]||null,'columnFormats':_0x19ac79[_0x280059(0x1d4)]||null,'fieldLabels':_0x19ac79['fieldLabels']||null,'where':_0x4352cb[_0x280059(0x1dd)](_0xee6992,null),'sort_columns':_0x4352cb[_0x280059(0x1dd)](_0x59a25c,null)});_0xec7651[_0x280059(0x1ea)]({'success':!![],'data':_0x22706c});}static async['handleExportStatus'](_0x7c1607,_0x586ebc){const _0x238601=a0_0x305a5f,{job_id:_0x111ef9}=_0x7c1607[_0x238601(0x1d5)];if(!_0x111ef9)return _0x586ebc[_0x238601(0x1bc)](0x190)[_0x238601(0x1ea)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x401dba=await exportService['getJobStatus'](_0x111ef9);if(!_0x401dba[_0x238601(0x1c6)])return _0x586ebc[_0x238601(0x1bc)](0x194)[_0x238601(0x1ea)](_0x401dba);_0x586ebc['json'](_0x401dba);}static async['handleExportDownload'](_0x3b8429,_0x16177c){const _0x21c933=a0_0x305a5f,_0x50327c={'dbFmu':_0x21c933(0x1c7),'NsHZj':'export_downloaded','xkUqs':'Export\x20file\x20downloaded\x20successfully','YnvMa':_0x21c933(0x1bf)},{job_id:_0x2f5d08}=_0x3b8429[_0x21c933(0x1d5)];if(!_0x2f5d08)return _0x16177c['status'](0x190)[_0x21c933(0x1ea)]({'success':![],'error':_0x50327c['YnvMa']});const _0x2f6fa9=await exportService['getFilePath'](_0x2f5d08);if(!_0x2f6fa9)return _0x16177c[_0x21c933(0x1bc)](0x194)[_0x21c933(0x1ea)]({'success':![],'error':'File\x20not\x20ready\x20or\x20not\x20found.\x20Check\x20job\x20status\x20first.'});_0x16177c[_0x21c933(0x1df)](_0x2f6fa9,''+path[_0x21c933(0x1d0)](_0x2f6fa9),_0x991ec4=>{const _0x426947=_0x21c933;_0x991ec4?(logError(_0x991ec4,{'event':'export_download_error','jobId':_0x2f5d08},_0x50327c['dbFmu']),!_0x16177c['headersSent']&&_0x16177c['status'](0x1f4)['json']({'success':![],'error':_0x426947(0x1d9)})):logger[_0x426947(0x1e8)]({'event':_0x50327c[_0x426947(0x1d3)],'jobId':_0x2f5d08},_0x50327c[_0x426947(0x1c2)]);});}static[a0_0x305a5f(0x1cc)](_0xc39023){const _0x48b523=a0_0x305a5f,_0x1f0b33={'WsZob':_0x48b523(0x1d2),'QKWEe':'cleanup_error','WGqMA':_0x48b523(0x1c3)};_0xc39023['get'](_0x1f0b33[_0x48b523(0x1bb)],async(_0x41d0cd,_0x1370d1)=>{const _0x28e290=_0x48b523;try{const _0x53d04b=await exportService['cleanup']();_0x1370d1[_0x28e290(0x1ea)]({'success':!![],'data':{'deleted':_0x53d04b,'message':_0x1f0b33[_0x28e290(0x1f1)]}});}catch(_0x983ab6){logError(_0x983ab6,{'event':_0x1f0b33['QKWEe']},_0x28e290(0x1ce)),_0x1370d1['status'](0x1f4)['json']({'success':![],'error':_0x983ab6[_0x28e290(0x1da)]});}});}}module[a0_0x305a5f(0x1c8)]=ExportHandler;
|