@restforgejs/platform 4.1.1 → 4.2.8
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/bin/sdf-tools.exe +0 -0
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/endpoint/create.js +42 -3
- package/generators/cli/schema/apply.js +525 -0
- package/generators/cli/schema/diff.js +321 -0
- package/generators/cli/schema/generate-ddl.js +7 -10
- package/generators/cli/schema/init.js +95 -172
- package/generators/cli/schema/migrate.js +10 -16
- package/generators/cli/schema/models.js +8 -12
- package/generators/cli/schema/template.js +222 -0
- package/generators/cli/schema/validate.js +8 -12
- package/generators/cli-entry.js +17 -2
- package/generators/lib/dbschema-kit/apply-engine.js +582 -0
- package/generators/lib/dbschema-kit/diff-engine.js +703 -0
- package/generators/lib/dbschema-kit/diff-reporter.js +272 -0
- package/generators/lib/dbschema-kit/emitters/alter-table.js +275 -0
- package/generators/lib/payload/endpoint-schema-validator.js +171 -0
- package/generators/lib/payload/payload-runner.js +137 -220
- package/generators/lib/payload/schema-diff.js +277 -0
- package/generators/lib/utils/audit-columns.js +181 -0
- package/generators/lib/utils/cli-output.js +17 -0
- package/generators/lib/utils/database-introspector.js +16 -13
- package/integrity-manifest.json +8 -8
- 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/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
|
-
const a0_0x4342a5=a0_0x55cf;(function(_0x33956f,_0x31e878){const _0x42049e=a0_0x55cf,_0x3283aa=_0x33956f();while(!![]){try{const _0x8d05a8=-parseInt(_0x42049e(0x153))/0x1*(parseInt(_0x42049e(0x183))/0x2)+parseInt(_0x42049e(0x14b))/0x3*(-parseInt(_0x42049e(0x198))/0x4)+-parseInt(_0x42049e(0x136))/0x5*(-parseInt(_0x42049e(0x177))/0x6)+parseInt(_0x42049e(0x144))/0x7+-parseInt(_0x42049e(0x133))/0x8*(-parseInt(_0x42049e(0x178))/0x9)+-parseInt(_0x42049e(0x152))/0xa+parseInt(_0x42049e(0x18c))/0xb*(parseInt(_0x42049e(0x173))/0xc);if(_0x8d05a8===_0x31e878)break;else _0x3283aa['push'](_0x3283aa['shift']());}catch(_0x1eaeaa){_0x3283aa['push'](_0x3283aa['shift']());}}}(a0_0xc07c,0x47b11));function a0_0xc07c(){const _0x1b17a7=['q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','Cg9VBa','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','BwzXC28','ngzvuKfzzW','rwXuwgi','qwn0AxzL','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','y29TBwL0','Aw5PDgLHBgL6zvbVB2W','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','AxLtDhO','DgvZDenVBM5Ly3rPB24','mti4CLLOBvbU','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','q0XpqG','mtq0mda1merYDhj3rq','DNDHyLO','zxHWB3j0CW','BwvZC2fNzq','t1vux0zpuK1bvf9pqKPfq1q','CM93C0fMzMvJDgvK','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','zxHLy3v0zvrYyw5Zywn0Aw9U','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','B3jHy2XLx3bVB2XFy2XVC2vFzxjYB3i','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','C3fS','uKvtwMK','z2v0ug9VBfn0yxrPC3rPy3m','mtK0nJuZmMjVAvHmDq','y3jLyxrLug9VBa','zgvIDwC','rejFvvnfuG','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','Cg9VBfrPBwvVDxq','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','mtq2mJCYmKLrzLfdAq','BgvUz3rO','ChvZAa','D2DmsMm','ENDssgm','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','Aw9gCMi','ntG1mdy3mejgDxjxtW','mZu2nJCWvuzTBuLR','lI9SB2DNzxi','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','rejFue9sva','B3jHy2XLx3bVB2XFy3jLyxrLza','zw52','rejFue9ptf9nsu4','C3vIC3rYAw5N','x25SC1jLywr5','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','tKnmt0i','zxHPDa','ug9VBcbUB3qGAw5PDgLHBgL6zwq','rxjYB3iGy2XVC2LUzYbpCMfJBguGDhjHBNnHy3rPB24Gy29UBMvJDgLVBJOG','Cg9VBe1PBG','zxHLy3v0zq','wwXgtuy','shbMs3i','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','txvKAvm','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','B3jHy2XLx3nODxrKB3DU','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','Bg9JywXOB3n0','rejFue9ptf9usu1ft1vu','BKnNCue','EeTwEem','y2XVC2vqB29S','rejFue9ptf9nqvG','t3jHy2XLihrYyw5Zywn0Aw9UignVBw1PDhrLzcaO','mtuYmq','ndi1ndG3nKftyM9htq','rejFue9ptf9jtKnsru1ftLq','DhjHBNnHy3rPB25FzxjYB3i','ihf1zxjPzxmP','nMXYChD2sa','mJuXodq3y0jKEuP5','rejFse9tva','B3jHy2XLzgi','uvr0B1y','uMTgB3C','qxjiyLa','CgfYyw1Z','yxv0B0nVBw1PDa','u0Lhvevstq','zMv0y2HbC0j1zMzLCG','B3jHy2XLx3bVB2XFy2XVC2LUzW','mMvNu3HxBa','B3jHy2XLx3bVB2XFzxjYB3i','CM93CW','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','y2XVC2u','Aw5MBW','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','B3jHy2XL','Cg9VBefSAwfZ','mJjHChnoCvi','rejFtKfnrq','CNzdqMC','yMHZDwi','sNnUsLi','y29UzMLN','y29UBMvJDgLVBNnpCgvU','quXurviGu0vtu0LptIbtrvqGtKXtx0rbvevFrK9stufuid0Gj1LzwvKTtu0TreqN'];a0_0xc07c=function(){return _0x1b17a7;};return a0_0xc07c();}const oracledb=require(a0_0x4342a5(0x17a)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x4342a5(0x154));function a0_0x55cf(_0x497859,_0x24b1de){_0x497859=_0x497859-0x12d;const _0xc07c2c=a0_0xc07c();let _0x55cfbc=_0xc07c2c[_0x497859];if(a0_0x55cf['lHDQWC']===undefined){var _0x22299e=function(_0x59ebb8){const _0x8bca74='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14e120='',_0x4817ef='';for(let _0x1bfe83=0x0,_0x3026fd,_0x3c9e15,_0x3b2a8f=0x0;_0x3c9e15=_0x59ebb8['charAt'](_0x3b2a8f++);~_0x3c9e15&&(_0x3026fd=_0x1bfe83%0x4?_0x3026fd*0x40+_0x3c9e15:_0x3c9e15,_0x1bfe83++%0x4)?_0x14e120+=String['fromCharCode'](0xff&_0x3026fd>>(-0x2*_0x1bfe83&0x6)):0x0){_0x3c9e15=_0x8bca74['indexOf'](_0x3c9e15);}for(let _0x3b32ed=0x0,_0x41abc7=_0x14e120['length'];_0x3b32ed<_0x41abc7;_0x3b32ed++){_0x4817ef+='%'+('00'+_0x14e120['charCodeAt'](_0x3b32ed)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4817ef);};a0_0x55cf['veRMOW']=_0x22299e,a0_0x55cf['xGGfhF']={},a0_0x55cf['lHDQWC']=!![];}const _0x1539c0=_0xc07c2c[0x0],_0xc5bd06=_0x497859+_0x1539c0,_0x12b51c=a0_0x55cf['xGGfhF'][_0xc5bd06];return!_0x12b51c?(_0x55cfbc=a0_0x55cf['veRMOW'](_0x55cfbc),a0_0x55cf['xGGfhF'][_0xc5bd06]=_0x55cfbc):_0x55cfbc=_0x12b51c,_0x55cfbc;}oracledb['fetchAsString']=[oracledb[a0_0x4342a5(0x135)],oracledb[a0_0x4342a5(0x15e)]],oracledb[a0_0x4342a5(0x181)]=[oracledb['BLOB']];async function ensureNlsReady(_0x238b36){const _0x9e06b5=a0_0x4342a5,_0x192765={'kTnsE':'0|3|1|4|2'},_0x3d6c32=_0x192765['kTnsE']['split']('|');let _0x3bb059=0x0;while(!![]){switch(_0x3d6c32[_0x3bb059++]){case'0':if(_0x238b36[_0x9e06b5(0x15b)])return;continue;case'1':await _0x238b36['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3\x27');continue;case'2':_0x238b36[_0x9e06b5(0x15b)]=!![];continue;case'3':await _0x238b36['execute'](_0x9e06b5(0x193));continue;case'4':await _0x238b36[_0x9e06b5(0x163)](_0x9e06b5(0x12d));continue;}break;}}class OracleDatabase{constructor(){const _0x1eab67=a0_0x4342a5,_0x2bd85a={'QcqHF':function(_0x19380d,_0x6a511f){return _0x19380d(_0x6a511f);},'WJAzk':function(_0x2a02c8,_0x1546a1){return _0x2a02c8(_0x1546a1);}};this['pool']=null,this['config']={'user':process['env'][_0x1eab67(0x147)]||'hr','password':process['env']['DB_PASSWORD']||'hr','connectString':this['buildConnectionString'](),'poolMin':parseInt(process['env'][_0x1eab67(0x159)])||0x2,'poolMax':_0x2bd85a['QcqHF'](parseInt,process['env'][_0x1eab67(0x170)])||0xa,'poolIncrement':_0x2bd85a['WJAzk'](parseInt,process['env'][_0x1eab67(0x174)])||0x1,'poolTimeout':parseInt(process['env'][_0x1eab67(0x16c)])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb['CLOB'],oracledb[_0x1eab67(0x15e)]],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process[_0x1eab67(0x158)][_0x1eab67(0x179)]||_0x1eab67(0x16b),'port':process['env'][_0x1eab67(0x156)]||'1521','database':process['env'][_0x1eab67(0x18d)]||'XE','type':'oracle','user':this[_0x1eab67(0x191)]['user'],'poolMin':this['config'][_0x1eab67(0x162)],'poolMax':this[_0x1eab67(0x191)]['poolMax']});}[a0_0x4342a5(0x189)](){const _0x480782=a0_0x4342a5,_0x251473=process[_0x480782(0x158)]['DB_HOST']||_0x480782(0x16b),_0x749d8b=process['env']['DB_PORT']||_0x480782(0x172),_0x154ae1=process[_0x480782(0x158)]['DB_NAME']||'XE',_0x164fab='//'+_0x251473+':'+_0x749d8b+'/'+_0x154ae1;return logger['debug']({'event':_0x480782(0x13e),'connectionString':_0x164fab},'Oracle\x20Connection\x20String:\x20'+_0x164fab),_0x164fab;}async['initializePool'](){const _0x4ef018=a0_0x4342a5,_0x128591={'nCgqA':'oracle_pool_exists','thimW':_0x4ef018(0x14a),'RETGk':'oracle_pool_creating','NSovA':_0x4ef018(0x194),'bhsub':_0x4ef018(0x157),'fNWmG':'Oracle\x20connection\x20pool\x20created\x20successfully','iyStz':_0x4ef018(0x184)};try{if(this['pool']){logger[_0x4ef018(0x146)]({'event':_0x128591[_0x4ef018(0x16d)]},_0x128591['thimW']);return;}logger[_0x4ef018(0x188)]({'event':_0x128591['RETGk']},_0x128591['NSovA']),this[_0x4ef018(0x195)]=await oracledb[_0x4ef018(0x145)](this[_0x4ef018(0x191)]),logger[_0x4ef018(0x188)]({'event':_0x128591[_0x4ef018(0x18f)]},_0x128591['fNWmG']),await this[_0x4ef018(0x132)]();}catch(_0x51acaa){logError(_0x51acaa,{'event':_0x128591[_0x4ef018(0x131)]},_0x4ef018(0x15c)+_0x51acaa[_0x4ef018(0x139)]);throw _0x51acaa;}}async['testConnection'](){const _0x417d13=a0_0x4342a5,_0x2cdbc9={'zwRHc':'Testing\x20Oracle\x20database\x20connection...','ZOCKi':_0x417d13(0x166)};let _0x198c32;try{logger[_0x417d13(0x146)]({'event':_0x417d13(0x150)},_0x2cdbc9[_0x417d13(0x14f)]),_0x198c32=await this['pool']['getConnection'](),await ensureNlsReady(_0x198c32);const _0x2f4574=await _0x198c32['execute'](_0x417d13(0x186));logger[_0x417d13(0x188)]({'event':_0x2cdbc9['ZOCKi'],'currentDate':_0x2f4574['rows'][0x0][0x0],'currentUser':_0x2f4574['rows'][0x0][0x1]},'Oracle\x20connection\x20test\x20berhasil\x20-\x20User:\x20'+_0x2f4574['rows'][0x0][0x1]);}catch(_0x52e716){logError(_0x52e716,{'event':'oracle_connection_test_failed'},'Oracle\x20connection\x20test\x20gagal:\x20'+_0x52e716[_0x417d13(0x139)]);throw _0x52e716;}finally{if(_0x198c32)try{await _0x198c32['close']();}catch(_0x543f9c){logError(_0x543f9c,{'event':_0x417d13(0x196)},'Error\x20closing\x20test\x20connection:\x20'+_0x543f9c[_0x417d13(0x139)]);}}}async['executeQuery'](_0x4bba67,_0xe1df0f=[],_0x2c8624={}){const _0x41f979=a0_0x4342a5,_0x579b3d={'RkFow':function(_0x1592ea){return _0x1592ea();},'TmEjJ':function(_0xd97370,_0x1ff738){return _0xd97370(_0x1ff738);},'YlFMF':function(_0x48d696,_0x100298){return _0x48d696!==_0x100298;},'wzOOZ':function(_0x1a4665,_0x28b91e,_0x372aa3,_0x459b75){return _0x1a4665(_0x28b91e,_0x372aa3,_0x459b75);},'vwabZ':_0x41f979(0x18a),'CMsXf':function(_0x597416,_0x5d189a,_0x3d04a7,_0x38b958){return _0x597416(_0x5d189a,_0x3d04a7,_0x38b958);},'KKXRz':'sql_error'};let _0x333552;const _0x1b94f9=_0x579b3d['RkFow'](startQueryTimer);try{!this['pool']&&await this['initializePool']();_0x333552=await this['pool']['getConnection'](),await _0x579b3d['TmEjJ'](ensureNlsReady,_0x333552);const _0x5dc879={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x579b3d[_0x41f979(0x164)](_0x2c8624[_0x41f979(0x17f)],undefined)?_0x2c8624['autoCommit']:!![],..._0x2c8624},_0x2b9077=await _0x333552['execute'](_0x4bba67,_0xe1df0f,_0x5dc879),_0x1d75c7=_0x579b3d[_0x41f979(0x17c)](_0x1b94f9),_0x592edf=_0x2b9077[_0x41f979(0x185)]?_0x2b9077[_0x41f979(0x185)][_0x41f979(0x14c)]:_0x2b9077[_0x41f979(0x13b)];return _0x579b3d['wzOOZ'](logQuery,_0x4bba67,_0xe1df0f,{'duration':_0x1d75c7,'rowsAffected':_0x592edf,'dbType':_0x579b3d[_0x41f979(0x137)]}),_0x2b9077[_0x41f979(0x185)]?_0x2b9077['rows']:{'rowsAffected':_0x2b9077['rowsAffected'],'lastRowid':_0x2b9077['lastRowid']};}catch(_0x172e41){const _0x202638=_0x579b3d[_0x41f979(0x17c)](_0x1b94f9);_0x579b3d['CMsXf'](logError,_0x172e41,{'event':_0x579b3d['KKXRz'],'query':_0x4bba67[_0x41f979(0x15a)](0x0,0x1f4),'paramCount':_0xe1df0f[_0x41f979(0x14c)],'durationMs':_0x202638,'code':_0x172e41['errorNum'],'dbType':'oracle'},'Oracle\x20SQL\x20Error:\x20'+_0x172e41['message']);throw _0x172e41;}finally{if(_0x333552)try{await _0x333552[_0x41f979(0x187)]();}catch(_0x97e65){_0x579b3d['CMsXf'](logError,_0x97e65,{'event':_0x41f979(0x13c)},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x97e65[_0x41f979(0x139)]);}}}async[a0_0x4342a5(0x13d)](_0x3b2a97){const _0x6cd29=a0_0x4342a5,_0x4f3e47={'gwQte':function(_0x5ead7d,_0x182f7a){return _0x5ead7d(_0x182f7a);},'EIIHV':function(_0x31d078,_0x5c0d77,_0x3cfe6f){return _0x31d078(_0x5c0d77,_0x3cfe6f);},'wgLJc':function(_0x54b17f){return _0x54b17f();},'ArHbP':function(_0x4acfe3,_0x4051bf,_0x50915a,_0x2f7efe){return _0x4acfe3(_0x4051bf,_0x50915a,_0x2f7efe);},'ioFrb':_0x6cd29(0x18a),'RESZi':function(_0x456f6f){return _0x456f6f();},'HpfKr':_0x6cd29(0x12e),'CePYw':_0x6cd29(0x175),'MudiS':'rollback'};let _0x3a4e9f;const _0x5b764f=startQueryTimer();try{!this['pool']&&await this[_0x6cd29(0x12f)]();_0x3a4e9f=await this['pool']['getConnection'](),await _0x4f3e47['gwQte'](ensureNlsReady,_0x3a4e9f),_0x4f3e47['EIIHV'](logTransaction,'start',_0x3b2a97[_0x6cd29(0x14c)]);const _0x11ad16=[];for(const _0x2b6e2e of _0x3b2a97){const _0x3365ef=_0x4f3e47[_0x6cd29(0x14e)](startQueryTimer),_0x5d8c66=await _0x3a4e9f[_0x6cd29(0x163)](_0x2b6e2e[_0x6cd29(0x141)],_0x2b6e2e[_0x6cd29(0x17e)]||[],{'autoCommit':![],'outFormat':oracledb[_0x6cd29(0x13a)]}),_0x5dbc80=_0x3365ef(),_0x224ec5=_0x5d8c66['rows']?_0x5d8c66['rows'][_0x6cd29(0x14c)]:_0x5d8c66['rowsAffected'];_0x4f3e47[_0x6cd29(0x17d)](logQuery,_0x2b6e2e['sql'],_0x2b6e2e['params']||[],{'duration':_0x5dbc80,'rowsAffected':_0x224ec5,'dbType':_0x4f3e47['ioFrb']}),_0x11ad16[_0x6cd29(0x14d)](_0x5d8c66);}await _0x3a4e9f[_0x6cd29(0x12e)]();const _0x1d30b6=_0x4f3e47[_0x6cd29(0x142)](_0x5b764f);return logTransaction(_0x4f3e47[_0x6cd29(0x165)],_0x3b2a97['length']),logger[_0x6cd29(0x188)]({'event':'transaction_complete','queryCount':_0x3b2a97['length'],'totalDurationMs':_0x1d30b6,'dbType':_0x4f3e47[_0x6cd29(0x151)]},_0x6cd29(0x171)+_0x1d30b6+'ms,\x20'+_0x3b2a97['length']+_0x6cd29(0x176)),_0x11ad16;}catch(_0x26789f){const _0xafd1e2=_0x4f3e47['wgLJc'](_0x5b764f);logError(_0x26789f,{'event':_0x4f3e47['CePYw'],'queryCount':_0x3b2a97[_0x6cd29(0x14c)],'totalDurationMs':_0xafd1e2,'code':_0x26789f['errorNum'],'dbType':_0x6cd29(0x18a)},'Oracle\x20transaction\x20failed:\x20'+_0x26789f['message']);if(_0x3a4e9f)try{await _0x3a4e9f['rollback'](),logTransaction(_0x4f3e47[_0x6cd29(0x167)],_0x3b2a97['length']);}catch(_0x3df0f9){logError(_0x3df0f9,{'event':'rollback_error','dbType':'oracle'},_0x6cd29(0x148)+_0x3df0f9[_0x6cd29(0x139)]);}throw _0x26789f;}finally{if(_0x3a4e9f)try{await _0x3a4e9f[_0x6cd29(0x187)]();}catch(_0x37cc4c){logError(_0x37cc4c,{'event':_0x6cd29(0x168)},_0x6cd29(0x161)+_0x37cc4c['message']);}}}async['closePool'](){const _0x1c3d52=a0_0x4342a5,_0x3c69da={'JsnJR':_0x1c3d52(0x182),'ElTXb':'oracle_pool_closed','mfqso':_0x1c3d52(0x15d)};try{this[_0x1c3d52(0x195)]&&(logger['info']({'event':_0x3c69da[_0x1c3d52(0x190)]},_0x1c3d52(0x130)),await this['pool'][_0x1c3d52(0x187)](0xa),this[_0x1c3d52(0x195)]=null,logger['info']({'event':_0x3c69da[_0x1c3d52(0x199)]},_0x3c69da[_0x1c3d52(0x197)]));}catch(_0x2baa2b){logError(_0x2baa2b,{'event':_0x1c3d52(0x13f)},_0x1c3d52(0x16a)+_0x2baa2b[_0x1c3d52(0x139)]);throw _0x2baa2b;}}[a0_0x4342a5(0x143)](){const _0x1d7fbf=a0_0x4342a5,_0x313827={'rvCBg':_0x1d7fbf(0x160)};if(!this['pool'])return{'status':_0x313827[_0x1d7fbf(0x18e)]};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this['pool'][_0x1d7fbf(0x192)],'poolAlias':this[_0x1d7fbf(0x195)][_0x1d7fbf(0x18b)],'poolMin':this[_0x1d7fbf(0x195)][_0x1d7fbf(0x162)],'poolMax':this[_0x1d7fbf(0x195)]['poolMax'],'poolIncrement':this[_0x1d7fbf(0x195)]['poolIncrement'],'poolTimeout':this['pool'][_0x1d7fbf(0x149)],'status':_0x1d7fbf(0x19a)};}}const oracleDb=new OracleDatabase();process['on']('SIGINT',async()=>{const _0x42b648=a0_0x4342a5,_0x3a8f8c={'sqZoL':_0x42b648(0x134),'QTtoV':'SIGINT'};logger[_0x42b648(0x188)]({'event':_0x42b648(0x169),'signal':'SIGINT'},_0x3a8f8c['sqZoL']);try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x1c7921){logError(_0x1c7921,{'event':'oracle_shutdown_error','signal':_0x3a8f8c[_0x42b648(0x17b)]},_0x42b648(0x155)+_0x1c7921[_0x42b648(0x139)]),process['exit'](0x1);}}),process['on'](a0_0x4342a5(0x180),async()=>{const _0x51659b=a0_0x4342a5,_0x595ffc={'UkEfe':_0x51659b(0x140),'yhfxH':function(_0x442912,_0x468e1b,_0x7371ab,_0x54aae3){return _0x442912(_0x468e1b,_0x7371ab,_0x54aae3);},'xKVxC':_0x51659b(0x180)};logger['info']({'event':'oracle_shutdown','signal':'SIGTERM'},_0x595ffc['UkEfe']);try{await oracleDb[_0x51659b(0x16f)](),process['exit'](0x0);}catch(_0x7f73fc){_0x595ffc['yhfxH'](logError,_0x7f73fc,{'event':'oracle_shutdown_error','signal':_0x595ffc[_0x51659b(0x16e)]},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x7f73fc[_0x51659b(0x139)]),process[_0x51659b(0x15f)](0x1);}}),module[a0_0x4342a5(0x138)]=oracleDb;
|
|
1
|
+
const a0_0x236640=a0_0x5c76;(function(_0x56b338,_0x47f6bc){const _0x3e1a10=a0_0x5c76,_0x3a8c5f=_0x56b338();while(!![]){try{const _0x5bd18c=-parseInt(_0x3e1a10(0x117))/0x1+-parseInt(_0x3e1a10(0xdc))/0x2+parseInt(_0x3e1a10(0xfd))/0x3*(-parseInt(_0x3e1a10(0xcc))/0x4)+parseInt(_0x3e1a10(0xf6))/0x5*(-parseInt(_0x3e1a10(0x10a))/0x6)+-parseInt(_0x3e1a10(0x111))/0x7*(parseInt(_0x3e1a10(0xd3))/0x8)+-parseInt(_0x3e1a10(0xd0))/0x9*(-parseInt(_0x3e1a10(0x113))/0xa)+parseInt(_0x3e1a10(0xc5))/0xb;if(_0x5bd18c===_0x47f6bc)break;else _0x3a8c5f['push'](_0x3a8c5f['shift']());}catch(_0x54c3f2){_0x3a8c5f['push'](_0x3a8c5f['shift']());}}}(a0_0x2c37,0xbece9));const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x236640(0xee));function a0_0x5c76(_0x382db0,_0x478933){_0x382db0=_0x382db0-0xbe;const _0x2c37e1=a0_0x2c37();let _0x5c7678=_0x2c37e1[_0x382db0];if(a0_0x5c76['YyOVwP']===undefined){var _0x113b73=function(_0x349780){const _0x988071='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x56f291='',_0x526400='';for(let _0x15e631=0x0,_0x57a606,_0x47c20c,_0x4d7f84=0x0;_0x47c20c=_0x349780['charAt'](_0x4d7f84++);~_0x47c20c&&(_0x57a606=_0x15e631%0x4?_0x57a606*0x40+_0x47c20c:_0x47c20c,_0x15e631++%0x4)?_0x56f291+=String['fromCharCode'](0xff&_0x57a606>>(-0x2*_0x15e631&0x6)):0x0){_0x47c20c=_0x988071['indexOf'](_0x47c20c);}for(let _0x1b1c8a=0x0,_0x3f279f=_0x56f291['length'];_0x1b1c8a<_0x3f279f;_0x1b1c8a++){_0x526400+='%'+('00'+_0x56f291['charCodeAt'](_0x1b1c8a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x526400);};a0_0x5c76['ADJOjC']=_0x113b73,a0_0x5c76['QHAoOU']={},a0_0x5c76['YyOVwP']=!![];}const _0x4165d9=_0x2c37e1[0x0],_0xd2b406=_0x382db0+_0x4165d9,_0x2d7d38=a0_0x5c76['QHAoOU'][_0xd2b406];return!_0x2d7d38?(_0x5c7678=a0_0x5c76['ADJOjC'](_0x5c7678),a0_0x5c76['QHAoOU'][_0xd2b406]=_0x5c7678):_0x5c7678=_0x2d7d38,_0x5c7678;}oracledb['fetchAsString']=[oracledb[a0_0x236640(0xdf)],oracledb[a0_0x236640(0xd2)]],oracledb['fetchAsBuffer']=[oracledb['BLOB']];function a0_0x2c37(){const _0x555efd=['CgfYyw1Z','Aw5MBW','q29UC2K','rejFue9sva','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','yxv0B0nVBw1PDa','mZa0neLAseDJEa','zxHLy3v0zq','t3rAAxi','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','mJi4nMngsfLLEq','teL1yxO','tKnmt0i','mti0nta1nMDMuwTPvW','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','quXurviGu0vtu0LptIbtrvqGtKXtx0rbvevFrK9stufuid0Gj1LzwvKTtu0TreqN','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','B3jHy2XLx3bVB2XFy3jLyxrLza','B3jHy2XLx3bVB2XFy2XVC2vK','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','zxHLy3v0zvrYyw5Zywn0Aw9U','sMPOwwK','ndC5mtm0rKDTAwjz','rejFueftu1DpuKq','BgfZDfjVD2LK','q0XpqG','rejFvvnfuG','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','mtuYmq','BwvZC2fNzq','B3jHy2XLx3bVB2XFzxjYB3i','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','Aw5PDgLHBgL6zvbVB2W','z2v0ug9VBfn0yxrPC3rPy3m','C0XcA3q','t3jHy2XLienVBM5Ly3rPB24Gu3rYAw5NoIa','BgvUz3rO','CM93C0fMzMvJDgvK','CMHKtue','rvn6v1C','lI9SB2DNzxi','DgTptvi','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','y2XVC2vqB29S','B3jHy2XL','ihf1zxjPzxmP','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','DgvZDenVBM5Ly3rPB24','odaZmdK1BwXbuLjX','yxPOA2S','B3jHy2XLx3nODxrKB3DU','z2v0q29UBMvJDgLVBG','B3jHy2XLx3bVB2XFzxHPC3rZ','zxHLy3v0zvf1zxj5','qwLrAvC','mtuWoxLjr013sq','AM1zrxq','Cg9VBe1PBG','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','C3vIC3rYAw5N','EwPZv3m','DxnLCG','CM93CW','y2XVC2u','rxjYB3iGy2XVC2LUzYbpCMfJBguGDhjHBNnHy3rPB24Gy29UBMvJDgLVBJOG','Cg9VBfrPBwvVDxq','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','zxjYB3joDw0','ndjwrMfAqMe','y29UzMLN','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','rejFse9tva','vMrUtK8','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBJOG','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','mtrquu5js24','zuvNufC','nJa4mJb4AMvXyMe','zw52','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','uur1Ewe','nte1mZK5qMnNB3nu','y29TBwL0','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','Cg9VBa','wuHpvvO','zgvIDwC','DMDkqNy','u0Lhvevstq','mtK5mta2otn2DhfwDgK'];a0_0x2c37=function(){return _0x555efd;};return a0_0x2c37();}async function ensureNlsReady(_0x7126c2){const _0x4055b9=a0_0x236640;if(_0x7126c2['_nlsReady'])return;await _0x7126c2[_0x4055b9(0xcd)](_0x4055b9(0xd5)),await _0x7126c2['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3\x27'),await _0x7126c2['execute'](_0x4055b9(0xd4)),_0x7126c2['_nlsReady']=!![];}class OracleDatabase{constructor(){const _0x2ac40b=a0_0x236640,_0x3ead9e={'TieCn':function(_0x348739,_0x33f3a4){return _0x348739(_0x33f3a4);},'tWAVH':function(_0x4081ff,_0x53fc14){return _0x4081ff(_0x53fc14);},'nPXgF':'localhost','zwkrC':_0x2ac40b(0xf2)};this['pool']=null,this[_0x2ac40b(0x10b)]={'user':process['env'][_0x2ac40b(0xe0)]||'hr','password':process['env'][_0x2ac40b(0xdd)]||'hr','connectString':this['buildConnectionString'](),'poolMin':_0x3ead9e['TieCn'](parseInt,process['env']['DB_POOL_MIN'])||0x2,'poolMax':parseInt(process[_0x2ac40b(0x114)]['DB_POOL_MAX'])||0xa,'poolIncrement':_0x3ead9e['tWAVH'](parseInt,process['env']['DB_POOL_INCREMENT'])||0x1,'poolTimeout':parseInt(process[_0x2ac40b(0x114)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x2ac40b(0xdf)],oracledb[_0x2ac40b(0xd2)]],'fetchAsBuffer':[oracledb['BLOB']]},_0x3ead9e['tWAVH'](logDatabaseConfig,{'host':process['env'][_0x2ac40b(0x10d)]||_0x3ead9e['nPXgF'],'port':process[_0x2ac40b(0x114)]['DB_PORT']||_0x2ac40b(0xe2),'database':process['env']['DB_NAME']||'XE','type':_0x3ead9e['zwkrC'],'user':this['config'][_0x2ac40b(0x103)],'poolMin':this[_0x2ac40b(0x10b)][_0x2ac40b(0xff)],'poolMax':this[_0x2ac40b(0x10b)]['poolMax']});}['buildConnectionString'](){const _0x104261=a0_0x236640,_0x382f90={'uURIq':_0x104261(0xe2)},_0x3905d2=process[_0x104261(0x114)][_0x104261(0x10d)]||'localhost',_0xb51352=process[_0x104261(0x114)][_0x104261(0xc9)]||_0x382f90['uURIq'],_0x1e059e=process[_0x104261(0x114)]['DB_NAME']||'XE',_0x6b4d68='//'+_0x3905d2+':'+_0xb51352+'/'+_0x1e059e;return logger[_0x104261(0xc2)]({'event':'oracle_connection_string','connectionString':_0x6b4d68},_0x104261(0xe9)+_0x6b4d68),_0x6b4d68;}async[a0_0x236640(0xe6)](){const _0x258ed4=a0_0x236640,_0x1d5dd5={'jfyrj':'oracle_pool_creating','LIuaz':_0x258ed4(0xe5),'fJRcK':_0x258ed4(0x110),'PCakZ':function(_0x4df0b2,_0x4ee9b1,_0x1bb863,_0x184855){return _0x4df0b2(_0x4ee9b1,_0x1bb863,_0x184855);},'uHqct':_0x258ed4(0xe4)};try{const _0x4a07bf='2|0|4|1|3'['split']('|');let _0xdc77b2=0x0;while(!![]){switch(_0x4a07bf[_0xdc77b2++]){case'0':logger[_0x258ed4(0xc7)]({'event':_0x1d5dd5['jfyrj']},_0x1d5dd5[_0x258ed4(0xd1)]);continue;case'1':logger[_0x258ed4(0xc7)]({'event':_0x258ed4(0xd7)},'Oracle\x20connection\x20pool\x20created\x20successfully');continue;case'2':if(this[_0x258ed4(0xc0)]){logger['debug']({'event':_0x258ed4(0xfa)},_0x1d5dd5['fJRcK']);return;}continue;case'3':await this['testConnection']();continue;case'4':this['pool']=await oracledb['createPool'](this[_0x258ed4(0x10b)]);continue;}break;}}catch(_0xe3c4a){_0x1d5dd5['PCakZ'](logError,_0xe3c4a,{'event':_0x1d5dd5['uHqct']},'Error\x20saat\x20membuat\x20Oracle\x20connection\x20pool:\x20'+_0xe3c4a['message']);throw _0xe3c4a;}}async[a0_0x236640(0xf5)](){const _0x5c3597=a0_0x236640,_0x9442e0={'sLBkt':_0x5c3597(0xbf),'axKkr':_0x5c3597(0xf4),'VdnNO':function(_0x403881,_0x36b28d,_0x288f4f,_0xc6e73f){return _0x403881(_0x36b28d,_0x288f4f,_0xc6e73f);},'eEgPW':function(_0x1d6eb3,_0x58d152,_0xac528a,_0x280413){return _0x1d6eb3(_0x58d152,_0xac528a,_0x280413);}};let _0x37ff10;try{logger['debug']({'event':_0x9442e0[_0x5c3597(0xe8)]},_0x5c3597(0x108)),_0x37ff10=await this[_0x5c3597(0xc0)][_0x5c3597(0xf9)](),await ensureNlsReady(_0x37ff10);const _0x335f55=await _0x37ff10[_0x5c3597(0xcd)]('SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL');logger[_0x5c3597(0xc7)]({'event':_0x9442e0['axKkr'],'currentDate':_0x335f55['rows'][0x0][0x0],'currentUser':_0x335f55[_0x5c3597(0x104)][0x0][0x1]},'Oracle\x20connection\x20test\x20berhasil\x20-\x20User:\x20'+_0x335f55['rows'][0x0][0x1]);}catch(_0x1f1245){_0x9442e0[_0x5c3597(0x10e)](logError,_0x1f1245,{'event':_0x5c3597(0x100)},_0x5c3597(0xe1)+_0x1f1245['message']);throw _0x1f1245;}finally{if(_0x37ff10)try{await _0x37ff10['close']();}catch(_0x49ad1c){_0x9442e0[_0x5c3597(0x112)](logError,_0x49ad1c,{'event':_0x5c3597(0xd9)},'Error\x20closing\x20test\x20connection:\x20'+_0x49ad1c['message']);}}}async[a0_0x236640(0xfb)](_0x43acf0,_0x2c1e0f=[],_0x3447d2={}){const _0x3d27f3=a0_0x236640,_0x5eced5={'ESzWW':function(_0x339b16){return _0x339b16();},'tkOMR':_0x3d27f3(0xf2),'NtjYn':function(_0x31e3f0){return _0x31e3f0();},'Consi':function(_0x8a2c0,_0x2f9dd6,_0xb6c954,_0x4a8688){return _0x8a2c0(_0x2f9dd6,_0xb6c954,_0x4a8688);},'azhkk':'sql_error'};let _0x3f717a;const _0x3b1104=_0x5eced5[_0x3d27f3(0xed)](startQueryTimer);try{!this[_0x3d27f3(0xc0)]&&await this[_0x3d27f3(0xe6)]();_0x3f717a=await this[_0x3d27f3(0xc0)]['getConnection'](),await ensureNlsReady(_0x3f717a);const _0x4942d8={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x3447d2[_0x3d27f3(0xcb)]!==undefined?_0x3447d2[_0x3d27f3(0xcb)]:!![],..._0x3447d2},_0x5dde65=await _0x3f717a[_0x3d27f3(0xcd)](_0x43acf0,_0x2c1e0f,_0x4942d8),_0x3d3732=_0x5eced5['ESzWW'](_0x3b1104),_0x28a11c=_0x5dde65[_0x3d27f3(0x104)]?_0x5dde65[_0x3d27f3(0x104)][_0x3d27f3(0xea)]:_0x5dde65[_0x3d27f3(0xeb)];return logQuery(_0x43acf0,_0x2c1e0f,{'duration':_0x3d3732,'rowsAffected':_0x28a11c,'dbType':_0x5eced5[_0x3d27f3(0xef)]}),_0x5dde65[_0x3d27f3(0x104)]?_0x5dde65[_0x3d27f3(0x104)]:{'rowsAffected':_0x5dde65[_0x3d27f3(0xeb)],'lastRowid':_0x5dde65[_0x3d27f3(0xde)]};}catch(_0x465e18){const _0x22ab62=_0x5eced5['NtjYn'](_0x3b1104);_0x5eced5[_0x3d27f3(0xc8)](logError,_0x465e18,{'event':_0x5eced5[_0x3d27f3(0xf7)],'query':_0x43acf0[_0x3d27f3(0x101)](0x0,0x1f4),'paramCount':_0x2c1e0f['length'],'durationMs':_0x22ab62,'code':_0x465e18['errorNum'],'dbType':_0x5eced5['tkOMR']},'Oracle\x20SQL\x20Error:\x20'+_0x465e18[_0x3d27f3(0xe3)]);throw _0x465e18;}finally{if(_0x3f717a)try{await _0x3f717a[_0x3d27f3(0x105)]();}catch(_0x1898e4){_0x5eced5['Consi'](logError,_0x1898e4,{'event':'oracle_connection_close_error'},_0x3d27f3(0x10f)+_0x1898e4['message']);}}}async[a0_0x236640(0xda)](_0x2a27c0){const _0x38e66b=a0_0x236640,_0x42b6e2={'OtZir':function(_0x40dc0f){return _0x40dc0f();},'griIQ':function(_0x3b0db1,_0x430f87,_0xf11bc9,_0x2067c3){return _0x3b0db1(_0x430f87,_0xf11bc9,_0x2067c3);},'AiQiW':_0x38e66b(0xf2),'JjhYi':'transaction_complete','DvoBu':function(_0x112255,_0x2db84e,_0x29e84c){return _0x112255(_0x2db84e,_0x29e84c);},'vgJBv':'rollback','hZxyC':_0x38e66b(0xf0)};let _0x1d1922;const _0x3c00ac=_0x42b6e2[_0x38e66b(0xce)](startQueryTimer);try{!this[_0x38e66b(0xc0)]&&await this['initializePool']();_0x1d1922=await this['pool'][_0x38e66b(0xf9)](),await ensureNlsReady(_0x1d1922),logTransaction('start',_0x2a27c0['length']);const _0x4601ee=[];for(const _0x238428 of _0x2a27c0){const _0x4a3cbd=_0x42b6e2[_0x38e66b(0xce)](startQueryTimer),_0x1c2675=await _0x1d1922['execute'](_0x238428['sql'],_0x238428['params']||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x45d059=_0x4a3cbd(),_0x4b3923=_0x1c2675['rows']?_0x1c2675[_0x38e66b(0x104)]['length']:_0x1c2675[_0x38e66b(0xeb)];_0x42b6e2['griIQ'](logQuery,_0x238428['sql'],_0x238428[_0x38e66b(0xc6)]||[],{'duration':_0x45d059,'rowsAffected':_0x4b3923,'dbType':_0x42b6e2[_0x38e66b(0xfc)]}),_0x4601ee['push'](_0x1c2675);}await _0x1d1922[_0x38e66b(0xbe)]();const _0x238e41=_0x42b6e2['OtZir'](_0x3c00ac);return logTransaction(_0x38e66b(0xbe),_0x2a27c0[_0x38e66b(0xea)]),logger['info']({'event':_0x42b6e2[_0x38e66b(0xdb)],'queryCount':_0x2a27c0[_0x38e66b(0xea)],'totalDurationMs':_0x238e41,'dbType':_0x42b6e2['AiQiW']},'Oracle\x20transaction\x20committed\x20('+_0x238e41+'ms,\x20'+_0x2a27c0[_0x38e66b(0xea)]+_0x38e66b(0xf3)),_0x4601ee;}catch(_0x8e1336){const _0x572c2a=_0x3c00ac();_0x42b6e2['griIQ'](logError,_0x8e1336,{'event':'transaction_error','queryCount':_0x2a27c0['length'],'totalDurationMs':_0x572c2a,'code':_0x8e1336[_0x38e66b(0x109)],'dbType':_0x42b6e2['AiQiW']},_0x38e66b(0xca)+_0x8e1336[_0x38e66b(0xe3)]);if(_0x1d1922)try{await _0x1d1922['rollback'](),_0x42b6e2['DvoBu'](logTransaction,_0x42b6e2[_0x38e66b(0xc3)],_0x2a27c0['length']);}catch(_0x2286fd){logError(_0x2286fd,{'event':'rollback_error','dbType':_0x42b6e2[_0x38e66b(0xfc)]},_0x38e66b(0x10c)+_0x2286fd[_0x38e66b(0xe3)]);}throw _0x8e1336;}finally{if(_0x1d1922)try{await _0x1d1922[_0x38e66b(0x105)]();}catch(_0x219bd5){logError(_0x219bd5,{'event':_0x42b6e2['hZxyC']},_0x38e66b(0x106)+_0x219bd5['message']);}}}async['closePool'](){const _0x2f30b7=a0_0x236640,_0x1b991f={'YHOUZ':function(_0x37c78a,_0xfde834,_0x13b18c,_0x20f715){return _0x37c78a(_0xfde834,_0x13b18c,_0x20f715);}};try{this['pool']&&(logger[_0x2f30b7(0xc7)]({'event':'oracle_pool_closing'},'Closing\x20Oracle\x20connection\x20pool...'),await this[_0x2f30b7(0xc0)][_0x2f30b7(0x105)](0xa),this[_0x2f30b7(0xc0)]=null,logger['info']({'event':_0x2f30b7(0xd8)},'Oracle\x20connection\x20pool\x20closed'));}catch(_0x557325){_0x1b991f[_0x2f30b7(0xc1)](logError,_0x557325,{'event':'oracle_pool_close_error'},_0x2f30b7(0x115)+_0x557325[_0x2f30b7(0xe3)]);throw _0x557325;}}[a0_0x236640(0xe7)](){const _0x6fdbb7=a0_0x236640;if(!this['pool'])return{'status':'Pool\x20not\x20initialized'};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this['pool'][_0x6fdbb7(0xff)],'poolMax':this[_0x6fdbb7(0xc0)]['poolMax'],'poolIncrement':this[_0x6fdbb7(0xc0)]['poolIncrement'],'poolTimeout':this['pool'][_0x6fdbb7(0x107)],'status':'Active'};}}const oracleDb=new OracleDatabase();process['on']('SIGINT',async()=>{const _0x55684f=a0_0x236640,_0x538971={'IIbAk':'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...','rhdMA':function(_0x384a7d,_0x5ddd71,_0x53ed3e,_0x198991){return _0x384a7d(_0x5ddd71,_0x53ed3e,_0x198991);}};logger[_0x55684f(0xc7)]({'event':_0x55684f(0xf8),'signal':'SIGINT'},_0x538971['IIbAk']);try{await oracleDb[_0x55684f(0xf1)](),process['exit'](0x0);}catch(_0x1e9675){_0x538971[_0x55684f(0xec)](logError,_0x1e9675,{'event':_0x55684f(0xcf),'signal':'SIGINT'},_0x55684f(0xd6)+_0x1e9675['message']),process['exit'](0x1);}}),process['on'](a0_0x236640(0xc4),async()=>{const _0x46c6c2=a0_0x236640,_0x437764={'yjsWs':_0x46c6c2(0xf8),'QDuya':'Received\x20SIGTERM,\x20closing\x20Oracle\x20connection\x20pool...','jmYEt':'SIGTERM'};logger['info']({'event':_0x437764[_0x46c6c2(0x102)],'signal':'SIGTERM'},_0x437764[_0x46c6c2(0x116)]);try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x46251c){logError(_0x46251c,{'event':'oracle_shutdown_error','signal':_0x437764[_0x46c6c2(0xfe)]},_0x46c6c2(0xd6)+_0x46251c['message']),process['exit'](0x1);}}),module['exports']=oracleDb;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2ea6c8=a0_0x2bd4;(function(_0x1663fd,_0x57024c){const _0xfe85f8=a0_0x2bd4,_0x29425a=_0x1663fd();while(!![]){try{const _0x4473ae=parseInt(_0xfe85f8(0x1b9))/0x1*(parseInt(_0xfe85f8(0x1b3))/0x2)+parseInt(_0xfe85f8(0x1ba))/0x3*(-parseInt(_0xfe85f8(0x1b0))/0x4)+-parseInt(_0xfe85f8(0x1c1))/0x5+parseInt(_0xfe85f8(0x1d2))/0x6+parseInt(_0xfe85f8(0x1af))/0x7+parseInt(_0xfe85f8(0x18c))/0x8+parseInt(_0xfe85f8(0x1d3))/0x9;if(_0x4473ae===_0x57024c)break;else _0x29425a['push'](_0x29425a['shift']());}catch(_0xb334cd){_0x29425a['push'](_0x29425a['shift']());}}}(a0_0x1ff5,0x32b9e));const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');function a0_0x2bd4(_0x166379,_0x51c70c){_0x166379=_0x166379-0x18a;const _0x1ff50f=a0_0x1ff5();let _0x2bd455=_0x1ff50f[_0x166379];if(a0_0x2bd4['mrnAxF']===undefined){var _0x283119=function(_0x415e51){const _0x59286a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x234d02='',_0x302a0b='';for(let _0x5780d4=0x0,_0x24bf8d,_0x22eda0,_0x2331da=0x0;_0x22eda0=_0x415e51['charAt'](_0x2331da++);~_0x22eda0&&(_0x24bf8d=_0x5780d4%0x4?_0x24bf8d*0x40+_0x22eda0:_0x22eda0,_0x5780d4++%0x4)?_0x234d02+=String['fromCharCode'](0xff&_0x24bf8d>>(-0x2*_0x5780d4&0x6)):0x0){_0x22eda0=_0x59286a['indexOf'](_0x22eda0);}for(let _0x3a9165=0x0,_0x3fadc9=_0x234d02['length'];_0x3a9165<_0x3fadc9;_0x3a9165++){_0x302a0b+='%'+('00'+_0x234d02['charCodeAt'](_0x3a9165)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x302a0b);};a0_0x2bd4['IuLmyn']=_0x283119,a0_0x2bd4['exgpSc']={},a0_0x2bd4['mrnAxF']=!![];}const _0x100454=_0x1ff50f[0x0],_0x442b99=_0x166379+_0x100454,_0x21186c=a0_0x2bd4['exgpSc'][_0x442b99];return!_0x21186c?(_0x2bd455=a0_0x2bd4['IuLmyn'](_0x2bd455),a0_0x2bd4['exgpSc'][_0x442b99]=_0x2bd455):_0x2bd455=_0x21186c,_0x2bd455;}class SqliteDatabase{constructor(){const _0x4852e0=a0_0x2bd4;this['db']=null,this[_0x4852e0(0x1c4)]=process[_0x4852e0(0x1c0)]['DB_NAME']||_0x4852e0(0x197),this['busyTimeout']=parseInt(process[_0x4852e0(0x1c0)][_0x4852e0(0x199)]||_0x4852e0(0x1ce)),logDatabaseConfig({'database':this[_0x4852e0(0x1c4)],'type':_0x4852e0(0x1be),'busyTimeout':this['busyTimeout']});}['initializeDatabase'](){const _0x197b28=a0_0x2bd4,_0x41a981={'sCKIH':_0x197b28(0x191),'ezaJb':'foreign_keys\x20=\x20ON','IUxyw':function(_0x264a8d,_0xab0de,_0x4e498a,_0x568f16){return _0x264a8d(_0xab0de,_0x4e498a,_0x568f16);}};try{const _0x1366a=_0x41a981[_0x197b28(0x1aa)]['split']('|');let _0x1e1de6=0x0;while(!![]){switch(_0x1366a[_0x1e1de6++]){case'0':this[_0x197b28(0x1d4)]();continue;case'1':this['db']['pragma'](_0x41a981[_0x197b28(0x1d9)]);continue;case'2':this['db']['pragma']('journal_mode\x20=\x20WAL');continue;case'3':this['db']=new Database(this[_0x197b28(0x1c4)],{'timeout':this['busyTimeout']});continue;case'4':if(this['db']){logger['debug']({'event':'sqlite_db_exists'},_0x197b28(0x196));return;}continue;}break;}}catch(_0x404875){_0x41a981['IUxyw'](logError,_0x404875,{'event':'sqlite_init_error'},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x404875['message']);throw _0x404875;}}['testConnection'](){const _0x177522=a0_0x2bd4,_0x17c1bc={'qtSSu':_0x177522(0x1b6),'CsDAD':_0x177522(0x1a1),'kABmi':'sqlite_connection_test_failed'};try{logger[_0x177522(0x1a2)]({'event':_0x17c1bc[_0x177522(0x1ac)]},'Testing\x20SQLite\x20database\x20connection...'),this['db']['prepare'](_0x17c1bc['CsDAD'])['get']();}catch(_0x1e1b84){logError(_0x1e1b84,{'event':_0x17c1bc[_0x177522(0x18d)]},_0x177522(0x1b1)+_0x1e1b84['message']);throw _0x1e1b84;}}async['executeQuery'](_0x77e485,_0x1e7b2e=[]){const _0x72768f=a0_0x2bd4,_0x4e84dc={'MDJHM':function(_0x203017){return _0x203017();},'IbRsk':function(_0x102b64,_0x48f7e8){return _0x102b64||_0x48f7e8;},'qcRIA':'sqlite','pQZgv':function(_0x328e3d,_0x439ea6,_0x205ad2,_0x81e501){return _0x328e3d(_0x439ea6,_0x205ad2,_0x81e501);},'ZbLkS':'sql_error'},_0x52b832=_0x4e84dc[_0x72768f(0x1a9)](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x338ccb=this['db']['prepare'](_0x77e485),_0x544ff2=/\bRETURNING\b/i[_0x72768f(0x1bc)](_0x77e485),_0x518feb=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x77e485);let _0x15c3b1,_0x441471;if(_0x4e84dc['IbRsk'](_0x518feb,_0x544ff2)){const _0x585284=_0x338ccb['all'](..._0x1e7b2e),_0x561369=_0x52b832();return logQuery(_0x77e485,_0x1e7b2e,{'duration':_0x561369,'rowsAffected':_0x585284[_0x72768f(0x195)],'dbType':_0x4e84dc['qcRIA']}),_0x585284;}else{const _0x1138fa=_0x338ccb[_0x72768f(0x1a8)](..._0x1e7b2e),_0x366b61=_0x4e84dc[_0x72768f(0x1a9)](_0x52b832);return _0x15c3b1={'rowsAffected':_0x1138fa[_0x72768f(0x1bf)],'insertId':_0x1138fa[_0x72768f(0x1cc)]},_0x4e84dc[_0x72768f(0x194)](logQuery,_0x77e485,_0x1e7b2e,{'duration':_0x366b61,'rowsAffected':_0x1138fa[_0x72768f(0x1bf)],'dbType':_0x4e84dc['qcRIA']}),_0x15c3b1;}}catch(_0x262c4f){const _0x52ad81=_0x4e84dc[_0x72768f(0x1a9)](_0x52b832);_0x4e84dc[_0x72768f(0x194)](logError,_0x262c4f,{'event':_0x4e84dc[_0x72768f(0x19a)],'query':_0x77e485[_0x72768f(0x1ab)](0x0,0x1f4),'paramCount':_0x1e7b2e['length'],'durationMs':_0x52ad81,'code':_0x262c4f['code'],'dbType':'sqlite'},_0x72768f(0x19c)+_0x262c4f[_0x72768f(0x1cd)]);throw _0x262c4f;}}async[a0_0x2ea6c8(0x190)](_0x274c45){const _0x43a3fa=a0_0x2ea6c8,_0x41d137={'iBfIh':'sqlite','Wuzfh':function(_0x44832f){return _0x44832f();},'yjrdP':function(_0x100b2d){return _0x100b2d();},'tApyb':function(_0x3138b9,_0x437a2a,_0x4f698c){return _0x3138b9(_0x437a2a,_0x4f698c);},'EJprE':_0x43a3fa(0x1c7),'tFmpx':function(_0x33b11c,_0x3e7835){return _0x33b11c(_0x3e7835);},'IlpJt':function(_0x1a480b){return _0x1a480b();},'sWPxl':_0x43a3fa(0x1a7),'iwVeF':'transaction_complete','Mgzab':function(_0x4490ac){return _0x4490ac();},'coLrF':_0x43a3fa(0x1a6),'AAPcJ':function(_0x12003e,_0x4c0806,_0x12d184,_0x575c7d){return _0x12003e(_0x4c0806,_0x12d184,_0x575c7d);},'ychAN':_0x43a3fa(0x18a)},_0x38b640=_0x41d137['yjrdP'](startQueryTimer);try{!this['db']&&this[_0x43a3fa(0x1ca)]();_0x41d137['tApyb'](logTransaction,_0x41d137['EJprE'],_0x274c45['length']);const _0x3fe759=this['db']['transaction'](_0x571501=>{const _0x430255=_0x43a3fa,_0x411ac6=[];for(const _0x140a46 of _0x571501){const _0x4b37c2=startQueryTimer(),_0x22bb4e=_0x140a46[_0x430255(0x192)]||[],_0x52063d=this['db']['prepare'](_0x140a46['sql']),_0x781a3e=/\bRETURNING\b/i['test'](_0x140a46['sql']),_0x59b892=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x430255(0x1bc)](_0x140a46[_0x430255(0x1c8)]);if(_0x59b892||_0x781a3e){const _0x202514=_0x52063d[_0x430255(0x1c3)](..._0x22bb4e),_0x488e99=_0x4b37c2();logQuery(_0x140a46[_0x430255(0x1c8)],_0x22bb4e,{'duration':_0x488e99,'rowsAffected':_0x202514['length'],'dbType':_0x41d137[_0x430255(0x1d0)]}),_0x411ac6['push'](_0x202514);}else{const _0x23ab1e=_0x52063d[_0x430255(0x1a8)](..._0x22bb4e),_0x5f5dbd=_0x41d137['Wuzfh'](_0x4b37c2);logQuery(_0x140a46[_0x430255(0x1c8)],_0x22bb4e,{'duration':_0x5f5dbd,'rowsAffected':_0x23ab1e['changes'],'dbType':_0x41d137[_0x430255(0x1d0)]}),_0x411ac6['push']({'rowsAffected':_0x23ab1e[_0x430255(0x1bf)],'insertId':_0x23ab1e[_0x430255(0x1cc)]});}}return _0x411ac6;}),_0x6534d5=_0x41d137['tFmpx'](_0x3fe759,_0x274c45),_0x227444=_0x41d137[_0x43a3fa(0x1b2)](_0x38b640);return logTransaction(_0x41d137['sWPxl'],_0x274c45['length']),logger['info']({'event':_0x41d137[_0x43a3fa(0x1cb)],'queryCount':_0x274c45[_0x43a3fa(0x195)],'totalDurationMs':_0x227444,'dbType':_0x41d137[_0x43a3fa(0x1d0)]},_0x43a3fa(0x193)+_0x227444+_0x43a3fa(0x18b)+_0x274c45[_0x43a3fa(0x195)]+_0x43a3fa(0x19d)),_0x6534d5;}catch(_0x2f7c2d){const _0x14e631=_0x41d137[_0x43a3fa(0x1c5)](_0x38b640);_0x41d137[_0x43a3fa(0x18e)](logTransaction,_0x41d137[_0x43a3fa(0x1b4)],_0x274c45[_0x43a3fa(0x195)]),_0x41d137[_0x43a3fa(0x1d1)](logError,_0x2f7c2d,{'event':_0x41d137[_0x43a3fa(0x1ae)],'queryCount':_0x274c45[_0x43a3fa(0x195)],'totalDurationMs':_0x14e631,'code':_0x2f7c2d[_0x43a3fa(0x1a4)],'dbType':_0x41d137[_0x43a3fa(0x1d0)]},_0x43a3fa(0x18f)+_0x2f7c2d['message']);throw _0x2f7c2d;}}['getPool'](){const _0x38750f=a0_0x2ea6c8;return!this['db']&&this[_0x38750f(0x1ca)](),this['db'];}[a0_0x2ea6c8(0x1c6)](){const _0x1882de=a0_0x2ea6c8,_0x5b1a3f={'pUZeR':'sqlite_closing','LiImC':_0x1882de(0x1a5),'Wjcij':'sqlite_closed','rfhNv':_0x1882de(0x1c9),'nKTCR':function(_0x468514,_0x1fa76e,_0x219d44,_0x17be69){return _0x468514(_0x1fa76e,_0x219d44,_0x17be69);}};try{this['db']&&(logger[_0x1882de(0x198)]({'event':_0x5b1a3f['pUZeR']},_0x5b1a3f['LiImC']),this['db']['close'](),this['db']=null,logger['info']({'event':_0x5b1a3f[_0x1882de(0x1d7)]},_0x5b1a3f['rfhNv']));}catch(_0x475007){_0x5b1a3f['nKTCR'](logError,_0x475007,{'event':_0x1882de(0x1b5)},'Error\x20closing\x20SQLite\x20database:\x20'+_0x475007[_0x1882de(0x1cd)]);throw _0x475007;}}async['checkConnection'](){const _0x533286=a0_0x2ea6c8,_0x20ebe7={'HaSzi':'SELECT\x201','BWZDj':function(_0x1a4c5e,_0x449720,_0x2ec693,_0x482ada){return _0x1a4c5e(_0x449720,_0x2ec693,_0x482ada);}};try{return!this['db']&&this[_0x533286(0x1ca)](),this['db'][_0x533286(0x1a0)](_0x20ebe7[_0x533286(0x1d5)])[_0x533286(0x19e)](),!![];}catch(_0x555503){return _0x20ebe7['BWZDj'](logError,_0x555503,{'event':_0x533286(0x1bd)},_0x533286(0x1c2)+_0x555503[_0x533286(0x1cd)]),![];}}}const sqliteDb=new SqliteDatabase();process['on'](a0_0x2ea6c8(0x1b7),()=>{const _0x17f2f0=a0_0x2ea6c8,_0x3d7b35={'FfLjq':_0x17f2f0(0x1b8),'HJOfG':'SIGINT'};logger[_0x17f2f0(0x198)]({'event':_0x3d7b35[_0x17f2f0(0x1ad)],'signal':'SIGINT'},_0x17f2f0(0x1bb));try{sqliteDb['closePool'](),process[_0x17f2f0(0x19b)](0x0);}catch(_0x7d9c47){logError(_0x7d9c47,{'event':'sqlite_shutdown_error','signal':_0x3d7b35[_0x17f2f0(0x1d8)]},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x7d9c47[_0x17f2f0(0x1cd)]),process['exit'](0x1);}}),process['on']('SIGTERM',()=>{const _0x1a6e1e=a0_0x2ea6c8,_0x1b990c={'gauCN':'sqlite_shutdown','TMCNo':_0x1a6e1e(0x1a3),'xsUza':_0x1a6e1e(0x1cf)};logger[_0x1a6e1e(0x198)]({'event':_0x1b990c['gauCN'],'signal':'SIGTERM'},_0x1b990c[_0x1a6e1e(0x19f)]);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x1c7d2e){logError(_0x1c7d2e,{'event':_0x1a6e1e(0x1d6),'signal':_0x1b990c['xsUza']},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x1c7d2e[_0x1a6e1e(0x1cd)]),process['exit'](0x1);}}),module['exports']=sqliteDb;function a0_0x1ff5(){const _0x4dfd33=['Cxrtu3u','rMzmANe','EwnOqu4','mtKWmZu2nK5WsLHVrW','mtq4DfbTD2Ty','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','swXWsNq','nde2mKPyvePKza','y29mCKy','C3fSAxrLx2nSB3nLx2vYCM9Y','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','u0Lhsu5u','C3fSAxrLx3nODxrKB3DU','mtaZsLL3A056','mtm5mtDxqNzKALC','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','DgvZDa','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','C3fSAxrL','y2HHBMDLCW','zw52','mtK4otGYnwrkvujHra','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','ywXS','zgjqyxrO','twD6ywi','y2XVC2vqB29S','C3rHCNq','C3fS','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','Aw5PDgLHBgL6zurHDgfIyxnL','AxDwzuy','BgfZDeLUC2vYDfjVD2LK','BwvZC2fNzq','ntaWma','u0Lhvevstq','AujMswG','qufqy0O','mtaWmtG3ngzsD3HowG','mZu1mZm4q2XkwuLb','DgvZDenVBM5Ly3rPB24','sgftEMK','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','v2PJAwO','sePpzKC','zxPHsMi','DhjHBNnHy3rPB25FzxjYB3i','BxmSia','nJC3mtiWEK96ruPN','A0fcBwK','DefWEwi','vhjHBNnHy3rPB24GzMfPBgvKoIa','zxHLy3v0zvrYyw5Zywn0Aw9U','nhWZFdj8mxWW','CgfYyw1Z','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','CffAz3y','BgvUz3rO','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24GC3vKywGGywrH','lI9KyxrHl3jLC3rMB3jNzs5KyG','Aw5MBW','rejFqLvtwv9usu1ft1vu','wMjmA1m','zxHPDa','u1fmAxrLifnrtcbfCNjVCJOG','ihf1zxjPzxmP','z2v0','ve1dtM8','ChjLCgfYzq','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','zgvIDwC','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','y29Kzq','q2XVC2LUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','CM9SBgjHy2S','y29TBwL0','CNvU','turkse0','C0nlsuG','C3vIC3rYAw5N'];a0_0x1ff5=function(){return _0x4dfd33;};return a0_0x1ff5();}
|
|
1
|
+
function a0_0x16bb(){const _0x1dd501=['CLPdCKS','BgfZDeLUC2vYDfjVD2LK','zxHLy3v0zvrYyw5Zywn0Aw9U','zxHWB3j0CW','DhjHBNnHy3rPB25Fy29TCgXLDgu','nezsEuftzW','BwvZC2fNzq','rejFqLvtwv9usu1ft1vu','vhjHBNnHy3rPB24GzMfPBgvKoIa','z2v0','ywXS','oda4mJyZtwjtCNrM','y2XVC2vqB29S','mJGZnti4uLzRtvvQ','lI9SB2DNzxi','u0Lhsu5u','C3fSAxrLx2nSB3nLza','y2HLy2TdB25Uzwn0Aw9U','y29Kzq','DgvZDa','zgvIDwC','zw52','zxHPDa','lI9KyxrHl3jLC3rMB3jNzs5KyG','u2rWqNy','C3fSAxrLx2LUAxrFzxjYB3i','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','C3fSAxrLx2nSB3nPBMC','C3fSAxrL','C3bSAxq','BgvUz3rO','DgvZDenVBM5Ly3rPB24','D3flqKW','DhjHBNnHy3rPB25FzxjYB3i','weHJv00','mZq4nZy0yurfEMTl','mJeZnZuYmhjiAwnWqG','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24GC3vKywGGywrH','ChvZAa','rejFtKfnrq','ndKXnde4mfDRC0H6tW','C3fSAxrLx3nODxrKB3DU','mtaWmMjvy0DdwG','Aw5PDgLHBgL6zurHDgfIyxnL','nZe0n1bstxjjzq','CNvU','ChjHz21H','u0Lhvevstq','BLb1uhi','C3fS','suXbB3O','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','C3rHCNq','y2HHBMDLCW','C3fSx2vYCM9Y','DhjHBNnHy3rPB24','wMTdzNy','zM9YzwLNBL9RzxLZid0Gt04','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','Aw5MBW','u0vmrunuide','rxjYB3iGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2u6ia','ChjLCgfYzq','C3vIC3rYAw5N','C0rnt0u','ndqYnta4ofbSC2zOBW','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','suDMuLe','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i'];a0_0x16bb=function(){return _0x1dd501;};return a0_0x16bb();}const a0_0x17957f=a0_0x3234;(function(_0x20558e,_0xb3974d){const _0x1a019b=a0_0x3234,_0x5c4624=_0x20558e();while(!![]){try{const _0x2ce79c=parseInt(_0x1a019b(0x150))/0x1*(parseInt(_0x1a019b(0x158))/0x2)+parseInt(_0x1a019b(0x156))/0x3+-parseInt(_0x1a019b(0x16e))/0x4+-parseInt(_0x1a019b(0x16f))/0x5+-parseInt(_0x1a019b(0x175))/0x6*(-parseInt(_0x1a019b(0x177))/0x7)+parseInt(_0x1a019b(0x146))/0x8+-parseInt(_0x1a019b(0x173))/0x9;if(_0x2ce79c===_0xb3974d)break;else _0x5c4624['push'](_0x5c4624['shift']());}catch(_0x104558){_0x5c4624['push'](_0x5c4624['shift']());}}}(a0_0x16bb,0x79ecd));const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x17957f(0x159));class SqliteDatabase{constructor(){const _0x435367=a0_0x17957f,_0x2c3629={'XHcWM':_0x435367(0x162),'SdpBv':'5000','fbdsO':function(_0x4bd31c,_0x11ee62){return _0x4bd31c(_0x11ee62);},'ELoNh':'sqlite'};this['db']=null,this['dbPath']=process[_0x435367(0x160)][_0x435367(0x172)]||_0x2c3629[_0x435367(0x16d)],this['busyTimeout']=parseInt(process['env'][_0x435367(0x152)]||_0x2c3629[_0x435367(0x163)]),_0x2c3629['fbdsO'](logDatabaseConfig,{'database':this['dbPath'],'type':_0x2c3629['ELoNh'],'busyTimeout':this['busyTimeout']});}[a0_0x17957f(0x176)](){const _0x2e847a=a0_0x17957f,_0x332760={'ILAoz':'1|3|4|2|0','sDMOE':'sqlite_db_exists','gGxda':_0x2e847a(0x170),'tKCGu':'journal_mode\x20=\x20WAL','vLoRc':function(_0x35e46b,_0x5dbd30,_0x1ce00d,_0x36a709){return _0x35e46b(_0x5dbd30,_0x1ce00d,_0x36a709);}};try{const _0x47fbe3=_0x332760[_0x2e847a(0x17d)][_0x2e847a(0x168)]('|');let _0x2f0adb=0x0;while(!![]){switch(_0x47fbe3[_0x2f0adb++]){case'0':this[_0x2e847a(0x16a)]();continue;case'1':if(this['db']){logger['debug']({'event':_0x332760[_0x2e847a(0x145)]},_0x332760['gGxda']);return;}continue;case'2':this['db'][_0x2e847a(0x179)](_0x2e847a(0x184));continue;case'3':this['db']=new Database(this['dbPath'],{'timeout':this['busyTimeout']});continue;case'4':this['db']['pragma'](_0x332760['tKCGu']);continue;}break;}}catch(_0x2ede95){_0x332760['vLoRc'](logError,_0x2ede95,{'event':_0x2e847a(0x164)},_0x2e847a(0x147)+_0x2ede95[_0x2e847a(0x151)]);throw _0x2ede95;}}[a0_0x17957f(0x16a)](){const _0x5f042e=a0_0x17957f,_0x2636a9={'aGvLk':'SELECT\x201\x20as\x20test_connection'};try{logger[_0x5f042e(0x15f)]({'event':'sqlite_connection_test_start'},_0x5f042e(0x185)),this['db']['prepare'](_0x2636a9['aGvLk'])[_0x5f042e(0x154)]();}catch(_0x5be4c7){logError(_0x5be4c7,{'event':'sqlite_connection_test_failed'},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x5be4c7['message']);throw _0x5be4c7;}}async['executeQuery'](_0x21707e,_0x51a407=[]){const _0x2811dd=a0_0x17957f,_0x7a1423={'QzPmy':function(_0x57e79c){return _0x57e79c();},'IGfRQ':function(_0x3f5370,_0x5e644e,_0x476582,_0x18294){return _0x3f5370(_0x5e644e,_0x476582,_0x18294);},'RHwOk':'sqlite','lRPcd':function(_0x1bbf1d,_0x340eec,_0x5ca043,_0x951361){return _0x1bbf1d(_0x340eec,_0x5ca043,_0x951361);}},_0x3c4c0a=_0x7a1423['QzPmy'](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x399ed6=this['db']['prepare'](_0x21707e),_0x29fe3b=/\bRETURNING\b/i[_0x2811dd(0x15e)](_0x21707e),_0x3d675b=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x2811dd(0x15e)](_0x21707e);let _0x14bb33,_0x5d73c0;if(_0x3d675b||_0x29fe3b){const _0x256e42=_0x399ed6[_0x2811dd(0x155)](..._0x51a407),_0x38acf7=_0x3c4c0a();return _0x7a1423[_0x2811dd(0x148)](logQuery,_0x21707e,_0x51a407,{'duration':_0x38acf7,'rowsAffected':_0x256e42['length'],'dbType':_0x7a1423['RHwOk']}),_0x256e42;}else{const _0x125a13=_0x399ed6[_0x2811dd(0x178)](..._0x51a407),_0x4c364a=_0x3c4c0a();return _0x14bb33={'rowsAffected':_0x125a13['changes'],'insertId':_0x125a13[_0x2811dd(0x14c)]},_0x7a1423[_0x2811dd(0x148)](logQuery,_0x21707e,_0x51a407,{'duration':_0x4c364a,'rowsAffected':_0x125a13['changes'],'dbType':_0x7a1423['RHwOk']}),_0x14bb33;}}catch(_0x2a2f7a){const _0x667491=_0x3c4c0a();_0x7a1423['lRPcd'](logError,_0x2a2f7a,{'event':_0x2811dd(0x181),'query':_0x21707e[_0x2811dd(0x144)](0x0,0x1f4),'paramCount':_0x51a407['length'],'durationMs':_0x667491,'code':_0x2a2f7a['code'],'dbType':_0x7a1423['RHwOk']},'SQLite\x20SQL\x20Error:\x20'+_0x2a2f7a[_0x2811dd(0x151)]);throw _0x2a2f7a;}}async[a0_0x17957f(0x14d)](_0x3e1728){const _0x3bd9e4=a0_0x17957f,_0x406e9e={'rZCrK':function(_0x5649fc){return _0x5649fc();},'wEVsv':function(_0x464649,_0x1a9805,_0x369302,_0x1c0437){return _0x464649(_0x1a9805,_0x369302,_0x1c0437);},'nPuPr':function(_0x57cfae){return _0x57cfae();},'ZkCfv':function(_0x5841a4,_0x4e26fb,_0x261acf){return _0x5841a4(_0x4e26fb,_0x261acf);},'zspNC':function(_0x48f316){return _0x48f316();},'GTJOp':'commit','TBJSv':_0x3bd9e4(0x14f),'MwOoC':function(_0x55e3d9){return _0x55e3d9();},'rxAtG':function(_0x4d2bf2,_0x1dc489,_0x3974e1){return _0x4d2bf2(_0x1dc489,_0x3974e1);},'Vamlp':function(_0x4e807a,_0x4c908f,_0x543de5,_0x3fcaa8){return _0x4e807a(_0x4c908f,_0x543de5,_0x3fcaa8);}},_0x283d75=_0x406e9e[_0x3bd9e4(0x17b)](startQueryTimer);try{!this['db']&&this['initializeDatabase']();_0x406e9e[_0x3bd9e4(0x183)](logTransaction,_0x3bd9e4(0x17f),_0x3e1728['length']);const _0x34847f=this['db'][_0x3bd9e4(0x182)](_0x4096bb=>{const _0x5d830f=_0x3bd9e4,_0x206c33=[];for(const _0x3c3092 of _0x4096bb){const _0x309985=startQueryTimer(),_0x5064ee=_0x3c3092['params']||[],_0x58ab3d=this['db']['prepare'](_0x3c3092['sql']),_0x1f0b7e=/\bRETURNING\b/i['test'](_0x3c3092['sql']),_0x16e6e9=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x5d830f(0x15e)](_0x3c3092['sql']);if(_0x16e6e9||_0x1f0b7e){const _0x1ed7ea=_0x58ab3d['all'](..._0x5064ee),_0x52d5eb=_0x406e9e[_0x5d830f(0x14b)](_0x309985);_0x406e9e['wEVsv'](logQuery,_0x3c3092['sql'],_0x5064ee,{'duration':_0x52d5eb,'rowsAffected':_0x1ed7ea[_0x5d830f(0x169)],'dbType':'sqlite'}),_0x206c33[_0x5d830f(0x171)](_0x1ed7ea);}else{const _0x319c8a=_0x58ab3d['run'](..._0x5064ee),_0x3e97a7=_0x309985();logQuery(_0x3c3092[_0x5d830f(0x17c)],_0x5064ee,{'duration':_0x3e97a7,'rowsAffected':_0x319c8a[_0x5d830f(0x180)],'dbType':_0x5d830f(0x167)}),_0x206c33[_0x5d830f(0x171)]({'rowsAffected':_0x319c8a['changes'],'insertId':_0x319c8a['lastInsertRowid']});}}return _0x206c33;}),_0x46fd20=_0x34847f(_0x3e1728),_0x401e4b=_0x406e9e['zspNC'](_0x283d75);return _0x406e9e['ZkCfv'](logTransaction,_0x406e9e['GTJOp'],_0x3e1728['length']),logger[_0x3bd9e4(0x140)]({'event':_0x406e9e['TBJSv'],'queryCount':_0x3e1728['length'],'totalDurationMs':_0x401e4b,'dbType':'sqlite'},'Transaction\x20committed\x20('+_0x401e4b+'ms,\x20'+_0x3e1728[_0x3bd9e4(0x169)]+'\x20queries)'),_0x46fd20;}catch(_0x17f69b){const _0x543732=_0x406e9e['MwOoC'](_0x283d75);_0x406e9e['rxAtG'](logTransaction,'rollback',_0x3e1728['length']),_0x406e9e['Vamlp'](logError,_0x17f69b,{'event':_0x3bd9e4(0x16c),'queryCount':_0x3e1728['length'],'totalDurationMs':_0x543732,'code':_0x17f69b[_0x3bd9e4(0x15d)],'dbType':_0x3bd9e4(0x167)},_0x3bd9e4(0x153)+_0x17f69b['message']);throw _0x17f69b;}}['getPool'](){const _0x5292f0=a0_0x17957f;return!this['db']&&this[_0x5292f0(0x176)](),this['db'];}[a0_0x17957f(0x157)](){const _0x4416a8=a0_0x17957f,_0x244119={'ZnKVH':function(_0xa02f0a,_0x26edaa,_0x47465b,_0x432ac9){return _0xa02f0a(_0x26edaa,_0x47465b,_0x432ac9);}};try{this['db']&&(logger[_0x4416a8(0x140)]({'event':_0x4416a8(0x166)},'Closing\x20SQLite\x20database\x20connection...'),this['db']['close'](),this['db']=null,logger[_0x4416a8(0x140)]({'event':_0x4416a8(0x15b)},'SQLite\x20database\x20connection\x20closed'));}catch(_0x39e600){_0x244119['ZnKVH'](logError,_0x39e600,{'event':'sqlite_close_error'},_0x4416a8(0x142)+_0x39e600[_0x4416a8(0x151)]);throw _0x39e600;}}async[a0_0x17957f(0x15c)](){const _0x303e84=a0_0x17957f,_0x3cb072={'QXADw':function(_0x4b2612,_0x54d0c4,_0x29026c,_0x148afb){return _0x4b2612(_0x54d0c4,_0x29026c,_0x148afb);},'HPdCV':_0x303e84(0x14a)};try{return!this['db']&&this['initializeDatabase'](),this['db'][_0x303e84(0x143)](_0x303e84(0x141))[_0x303e84(0x154)](),!![];}catch(_0xebae0a){return _0x3cb072['QXADw'](logError,_0xebae0a,{'event':_0x3cb072['HPdCV']},'Error\x20checking\x20SQLite\x20connection:\x20'+_0xebae0a['message']),![];}}}const sqliteDb=new SqliteDatabase();function a0_0x3234(_0x4a69d5,_0xa28aa7){_0x4a69d5=_0x4a69d5-0x140;const _0x16bbf6=a0_0x16bb();let _0x323479=_0x16bbf6[_0x4a69d5];if(a0_0x3234['DfPqew']===undefined){var _0x1f53ef=function(_0x291d92){const _0x339071='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59121c='',_0x5cd644='';for(let _0x4cdc99=0x0,_0x3b5e6f,_0x31eb1c,_0x310858=0x0;_0x31eb1c=_0x291d92['charAt'](_0x310858++);~_0x31eb1c&&(_0x3b5e6f=_0x4cdc99%0x4?_0x3b5e6f*0x40+_0x31eb1c:_0x31eb1c,_0x4cdc99++%0x4)?_0x59121c+=String['fromCharCode'](0xff&_0x3b5e6f>>(-0x2*_0x4cdc99&0x6)):0x0){_0x31eb1c=_0x339071['indexOf'](_0x31eb1c);}for(let _0x8d9f3=0x0,_0x10f24a=_0x59121c['length'];_0x8d9f3<_0x10f24a;_0x8d9f3++){_0x5cd644+='%'+('00'+_0x59121c['charCodeAt'](_0x8d9f3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5cd644);};a0_0x3234['EiWIOd']=_0x1f53ef,a0_0x3234['FtEnaj']={},a0_0x3234['DfPqew']=!![];}const _0x29251c=_0x16bbf6[0x0],_0x12986c=_0x4a69d5+_0x29251c,_0x566e7c=a0_0x3234['FtEnaj'][_0x12986c];return!_0x566e7c?(_0x323479=a0_0x3234['EiWIOd'](_0x323479),a0_0x3234['FtEnaj'][_0x12986c]=_0x323479):_0x323479=_0x566e7c,_0x323479;}process['on']('SIGINT',()=>{const _0x4723f3=a0_0x17957f,_0xbbc69c={'qFLkE':_0x4723f3(0x15a),'wqKBL':_0x4723f3(0x165),'fjUOY':function(_0x2691a2,_0x414f5a,_0x5ef2a7,_0x966e0b){return _0x2691a2(_0x414f5a,_0x5ef2a7,_0x966e0b);}};logger['info']({'event':_0x4723f3(0x174),'signal':_0xbbc69c['qFLkE']},_0xbbc69c[_0x4723f3(0x16b)]);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x2c76b2){_0xbbc69c['fjUOY'](logError,_0x2c76b2,{'event':'sqlite_shutdown_error','signal':'SIGINT'},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x2c76b2[_0x4723f3(0x151)]),process[_0x4723f3(0x161)](0x1);}}),process['on']('SIGTERM',()=>{const _0x2fdb2c=a0_0x17957f,_0x2db2da={'mUUkb':_0x2fdb2c(0x174),'yuWWD':function(_0x19c885,_0x195f9c,_0x3d716d,_0x59e696){return _0x19c885(_0x195f9c,_0x3d716d,_0x59e696);},'cJiHv':_0x2fdb2c(0x186),'drpcs':'SIGTERM'};logger[_0x2fdb2c(0x140)]({'event':_0x2db2da['mUUkb'],'signal':_0x2fdb2c(0x17a)},_0x2fdb2c(0x149));try{sqliteDb['closePool'](),process[_0x2fdb2c(0x161)](0x0);}catch(_0x253453){_0x2db2da['yuWWD'](logError,_0x253453,{'event':_0x2db2da['cJiHv'],'signal':_0x2db2da['drpcs']},_0x2fdb2c(0x17e)+_0x253453['message']),process['exit'](0x1);}}),module[a0_0x17957f(0x14e)]=sqliteDb;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x34a3bc=a0_0x5128;(function(_0x2fe324,_0x4a7328){const _0x55459=a0_0x5128,_0x3de92b=_0x2fe324();while(!![]){try{const _0x20f37d=parseInt(_0x55459(0x1fa))/0x1*(parseInt(_0x55459(0x1d9))/0x2)+-parseInt(_0x55459(0x208))/0x3*(parseInt(_0x55459(0x1d2))/0x4)+-parseInt(_0x55459(0x214))/0x5*(parseInt(_0x55459(0x1f9))/0x6)+parseInt(_0x55459(0x1e9))/0x7*(parseInt(_0x55459(0x21d))/0x8)+-parseInt(_0x55459(0x1ea))/0x9*(parseInt(_0x55459(0x1f5))/0xa)+parseInt(_0x55459(0x201))/0xb*(-parseInt(_0x55459(0x1cb))/0xc)+-parseInt(_0x55459(0x227))/0xd*(-parseInt(_0x55459(0x204))/0xe);if(_0x20f37d===_0x4a7328)break;else _0x3de92b['push'](_0x3de92b['shift']());}catch(_0xa707){_0x3de92b['push'](_0x3de92b['shift']());}}}(a0_0x47cd,0x5631f));const ExcelJS=require(a0_0x34a3bc(0x1ec)),{logger}=require('./logger');function a0_0x5128(_0x45463d,_0x2a73c0){_0x45463d=_0x45463d-0x1c2;const _0x47cda6=a0_0x47cd();let _0x5128b2=_0x47cda6[_0x45463d];if(a0_0x5128['nzeUOQ']===undefined){var _0x2f58d4=function(_0x19d0a6){const _0x1fd5a9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3183db='',_0x208b55='';for(let _0x451ac9=0x0,_0xf503bc,_0x2a4e12,_0x72d72a=0x0;_0x2a4e12=_0x19d0a6['charAt'](_0x72d72a++);~_0x2a4e12&&(_0xf503bc=_0x451ac9%0x4?_0xf503bc*0x40+_0x2a4e12:_0x2a4e12,_0x451ac9++%0x4)?_0x3183db+=String['fromCharCode'](0xff&_0xf503bc>>(-0x2*_0x451ac9&0x6)):0x0){_0x2a4e12=_0x1fd5a9['indexOf'](_0x2a4e12);}for(let _0x472769=0x0,_0x30173c=_0x3183db['length'];_0x472769<_0x30173c;_0x472769++){_0x208b55+='%'+('00'+_0x3183db['charCodeAt'](_0x472769)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x208b55);};a0_0x5128['cbncJF']=_0x2f58d4,a0_0x5128['hfitbm']={},a0_0x5128['nzeUOQ']=!![];}const _0x47f2a2=_0x47cda6[0x0],_0x425226=_0x45463d+_0x47f2a2,_0x14203b=a0_0x5128['hfitbm'][_0x425226];return!_0x14203b?(_0x5128b2=a0_0x5128['cbncJF'](_0x5128b2),a0_0x5128['hfitbm'][_0x425226]=_0x5128b2):_0x5128b2=_0x14203b,_0x5128b2;}class ExcelGenerator{constructor(){const _0xa23d83=a0_0x34a3bc;this['chunkSize']=parseInt(process['env'][_0xa23d83(0x21a)],0xa)||0x3e8;}async['generate'](_0x12ed82){const _0x383d96=a0_0x34a3bc,_0x5ea83a={'yKHnS':'excel_generation_start','FgnNK':'Excel\x20generation\x20started','NWFOb':function(_0x297ce1,_0x5ebc21){return _0x297ce1<=_0x5ebc21;}},{data:_0x128113,columns:_0x2dd654,columnFormats:_0x319969,fieldLabels:_0x132115,filePath:_0x232423,onProgress:_0x50ae1b}=_0x12ed82;logger[_0x383d96(0x1d4)]({'event':_0x5ea83a[_0x383d96(0x20d)],'rows':_0x128113[_0x383d96(0x220)],'columns':_0x2dd654?.['length']||_0x383d96(0x1df),'columnFormats':_0x319969?Object['keys'](_0x319969):null,'fieldLabels':_0x132115?Object[_0x383d96(0x1f7)](_0x132115):null,'streaming':_0x128113[_0x383d96(0x220)]>this[_0x383d96(0x21e)]},_0x5ea83a['FgnNK']);if(_0x5ea83a[_0x383d96(0x1d8)](_0x128113[_0x383d96(0x220)],this['chunkSize']))return await this['generateSimple'](_0x128113,_0x2dd654,_0x319969,_0x132115,_0x232423,_0x50ae1b);return await this[_0x383d96(0x1fd)](_0x128113,_0x2dd654,_0x319969,_0x132115,_0x232423,_0x50ae1b);}async['generateSimple'](_0x50b827,_0x52dd65,_0x517704,_0x2f385c,_0x104899,_0x5f454f){const _0x17f905=a0_0x34a3bc,_0x150b84={'GyrDn':_0x17f905(0x1e1),'srwQH':'pattern','GMlxT':'solid','YmqHP':'FF4472C4','duCkk':_0x17f905(0x1ca),'uoctI':_0x17f905(0x213),'lfMbv':function(_0x502605,_0x381fbf){return _0x502605(_0x381fbf);},'LYvNe':'excel_generation_complete','kSJHA':'Excel\x20generated\x20(simple\x20method)'},_0x1dd82e=new ExcelJS['Workbook'](),_0x3ccf30=_0x1dd82e[_0x17f905(0x1cc)]('Data'),_0x2f84ab=_0x52dd65||(_0x50b827[_0x17f905(0x220)]>0x0?Object['keys'](_0x50b827[0x0]):[]);_0x3ccf30['columns']=_0x2f84ab[_0x17f905(0x202)](_0x545319=>{const _0x5b899d=_0x17f905,_0x3031ae={'header':this['formatHeader'](_0x545319,_0x2f385c),'key':_0x545319,'width':0x14};if(_0x517704&&_0x517704[_0x545319]){const _0x1158d9=_0x517704[_0x545319];if(_0x1158d9[_0x5b899d(0x1c4)]&&_0x1158d9[_0x5b899d(0x1c4)][_0x5b899d(0x218)]()!==_0x5b899d(0x1e7)){const _0x7fa951=this['getExcelFormat'](_0x1158d9);_0x7fa951&&(_0x3031ae['style']={'numFmt':_0x7fa951});}}return _0x3031ae;}),_0x3ccf30['getRow'](0x1)['font']={'bold':!![],'color':{'argb':_0x150b84['GyrDn']}},_0x3ccf30[_0x17f905(0x1cf)](0x1)['fill']={'type':_0x150b84['srwQH'],'pattern':_0x150b84[_0x17f905(0x211)],'fgColor':{'argb':_0x150b84['YmqHP']}},_0x3ccf30['getRow'](0x1)['alignment']={'vertical':'middle','horizontal':_0x150b84[_0x17f905(0x223)]};const _0x53a461=_0x517704?this['preprocessTextColumns'](_0x50b827,_0x2f84ab,_0x517704):_0x50b827;return _0x3ccf30[_0x17f905(0x222)](_0x53a461),_0x517704&&this['applyCellFormatting'](_0x3ccf30,_0x2f84ab,_0x517704,_0x50b827['length']),_0x5f454f&&await _0x5f454f(0x32),_0x3ccf30[_0x17f905(0x1fe)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x2f84ab['length']}},_0x3ccf30[_0x17f905(0x203)]=[{'state':_0x150b84['uoctI'],'xSplit':0x0,'ySplit':0x1}],await _0x1dd82e[_0x17f905(0x1c3)]['writeFile'](_0x104899),_0x5f454f&&await _0x150b84['lfMbv'](_0x5f454f,0x64),logger['info']({'event':_0x150b84[_0x17f905(0x1ee)],'method':_0x17f905(0x1e6),'rows':_0x50b827['length']},_0x150b84['kSJHA']),_0x104899;}async[a0_0x34a3bc(0x1fd)](_0x86871b,_0x414fd9,_0x1a87cc,_0x51a4d5,_0x251cd0,_0x478e52){const _0xfc190f=a0_0x34a3bc,_0xf8bc71={'vVFNO':'date','grZqN':function(_0x2aae31,_0x357312){return _0x2aae31>_0x357312;},'LsFIN':'middle','KPAFF':_0xfc190f(0x1ca),'PNCIQ':function(_0x22c996,_0x20241e){return _0x22c996<_0x20241e;},'CyGbO':function(_0x39adcf,_0x2e2e70){return _0x39adcf*_0x2e2e70;},'uOUjB':function(_0x24250e,_0x41b1b8){return _0x24250e(_0x41b1b8);},'yvwcu':'excel_generation_complete'},_0x31912b=new ExcelJS['stream']['xlsx']['WorkbookWriter']({'filename':_0x251cd0,'useStyles':!![],'useSharedStrings':!![]}),_0x5a73e2=_0x31912b['addWorksheet'](_0xfc190f(0x210)),_0x4ca60a=_0x414fd9||(_0xf8bc71[_0xfc190f(0x1f1)](_0x86871b['length'],0x0)?Object[_0xfc190f(0x1f7)](_0x86871b[0x0]):[]),_0x267053={};_0x4ca60a['forEach']((_0x22e33a,_0x2adfee)=>{_0x267053[_0x22e33a]=_0x2adfee+0x1;}),_0x5a73e2['columns']=_0x4ca60a[_0xfc190f(0x202)](_0x18d285=>{const _0x36e969=_0xfc190f,_0x5c82b7={'header':this['formatHeader'](_0x18d285,_0x51a4d5),'key':_0x18d285,'width':0x14};if(_0x1a87cc&&_0x1a87cc[_0x18d285]){const _0x431eae=_0x1a87cc[_0x18d285];if(_0x431eae['type']&&_0x431eae[_0x36e969(0x1c4)]['toLowerCase']()!==_0xf8bc71['vVFNO']){const _0x332f21=this['getExcelFormat'](_0x431eae);_0x332f21&&(_0x5c82b7['style']={'numFmt':_0x332f21});}}return _0x5c82b7;});const _0x1de25f=_0x5a73e2['getRow'](0x1);_0x1de25f['font']={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x1de25f[_0xfc190f(0x1e0)]={'type':_0xfc190f(0x21f),'pattern':_0xfc190f(0x20f),'fgColor':{'argb':_0xfc190f(0x1fb)}},_0x1de25f['alignment']={'vertical':_0xf8bc71[_0xfc190f(0x1ef)],'horizontal':_0xf8bc71[_0xfc190f(0x1e2)]},_0x1de25f[_0xfc190f(0x229)]();const _0x2954a7=_0x86871b['length'];let _0xfe0a7d=0x0;for(let _0x7b1d7d=0x0;_0xf8bc71['PNCIQ'](_0x7b1d7d,_0x2954a7);_0x7b1d7d+=this['chunkSize']){const _0x3dce8d=_0x86871b[_0xfc190f(0x226)](_0x7b1d7d,_0x7b1d7d+this[_0xfc190f(0x21e)]);for(const _0x34596b of _0x3dce8d){const _0x2db146=_0x1a87cc?this['preprocessTextRow'](_0x34596b,_0x4ca60a,_0x1a87cc):_0x34596b,_0xfcc0ff=_0x5a73e2['addRow'](_0x2db146);_0x1a87cc&&this[_0xfc190f(0x206)](_0xfcc0ff,_0x2db146,_0x4ca60a,_0x1a87cc),_0xfcc0ff['commit'](),_0xfe0a7d++;}if(_0x478e52){const _0x3ccfa0=Math[_0xfc190f(0x1d1)](_0xf8bc71[_0xfc190f(0x1c6)](_0xfe0a7d/_0x2954a7,0x64));await _0xf8bc71['uOUjB'](_0x478e52,_0x3ccfa0);}logger['debug']({'event':'excel_chunk_processed','processed':_0xfe0a7d,'total':_0x2954a7},_0xfc190f(0x1eb)+_0xfe0a7d+'/'+_0x2954a7+'\x20rows');}return _0x5a73e2['commit'](),await _0x31912b['commit'](),logger[_0xfc190f(0x1d4)]({'event':_0xf8bc71[_0xfc190f(0x225)],'method':_0xfc190f(0x1c5),'rows':_0x2954a7,'chunks':Math['ceil'](_0x2954a7/this[_0xfc190f(0x21e)])},_0xfc190f(0x1d0)),_0x251cd0;}[a0_0x34a3bc(0x205)](_0x12bcb0,_0x13942e){const _0x5452ea=a0_0x34a3bc;if(_0x13942e&&_0x13942e[_0x12bcb0])return _0x13942e[_0x12bcb0];return String(_0x12bcb0)[_0x5452ea(0x1dd)]();}['validateColumns'](_0xfed060,_0x5c77a0){const _0x5de147=a0_0x34a3bc,_0x305387={'FWnhE':function(_0x1f294f,_0x391d65){return _0x1f294f>_0x391d65;}};if(!_0x5c77a0||_0x5c77a0['length']===0x0)return!![];if(_0xfed060[_0x5de147(0x220)]===0x0)return!![];const _0x225bb7=Object['keys'](_0xfed060[0x0]),_0xc55c32=_0x5c77a0['filter'](_0x4e4cf8=>!_0x225bb7['includes'](_0x4e4cf8));if(_0x305387[_0x5de147(0x221)](_0xc55c32['length'],0x0))throw new Error('Invalid\x20columns:\x20'+_0xc55c32['join'](',\x20'));return!![];}['getExcelFormat'](_0xda190e){const _0x53b15d=a0_0x34a3bc,_0x54eab2={'oPcgt':function(_0x296c32,_0x1b2fb7){return _0x296c32||_0x1b2fb7;},'mecAC':'#,##0.00','KToFh':'currency','PDMrj':_0x53b15d(0x1de)};if(!_0xda190e||!_0xda190e['type'])return null;const {type:_0x35b8f6,format:_0x56a7f2}=_0xda190e;switch(_0x35b8f6[_0x53b15d(0x218)]()){case _0x53b15d(0x1e7):return _0x56a7f2?_0x56a7f2[_0x53b15d(0x218)]():_0x53b15d(0x20b);case _0x53b15d(0x1e5):return _0x54eab2['oPcgt'](_0x56a7f2,_0x54eab2[_0x53b15d(0x1c2)]);case _0x54eab2[_0x53b15d(0x219)]:return _0x56a7f2||_0x53b15d(0x1d6);case _0x54eab2[_0x53b15d(0x1cd)]:return _0x56a7f2||_0x53b15d(0x1f0);case'text':return'@';default:return null;}}[a0_0x34a3bc(0x1db)](_0x5f4177,_0x27662c,_0x4f651c,_0x486a72){const _0x5385d0=a0_0x34a3bc,_0x2a8dfb={'iTuRn':function(_0x1e934d,_0x4b5293){return _0x1e934d<=_0x4b5293;}};if(!_0x4f651c)return;_0x27662c[_0x5385d0(0x207)]((_0x36e8f3,_0x5b5132)=>{const _0x166b2d=_0x5385d0,_0x185171=_0x4f651c[_0x36e8f3];if(!_0x185171)return;const _0x1393fd=_0x5b5132+0x1;for(let _0x201a93=0x2;_0x2a8dfb[_0x166b2d(0x216)](_0x201a93,_0x486a72+0x1);_0x201a93++){const _0x16008c=_0x5f4177[_0x166b2d(0x1e8)](_0x201a93,_0x1393fd);this[_0x166b2d(0x1f8)](_0x16008c,_0x185171);}});}['applyRowFormatting'](_0x30505f,_0x2ada17,_0x1761f1,_0x2ac735){const _0x5f2500=a0_0x34a3bc,_0x1d50f4={'CcCfS':function(_0x33f2d4,_0x1da526){return _0x33f2d4+_0x1da526;}};if(!_0x2ac735)return;_0x1761f1[_0x5f2500(0x207)]((_0x1d1d03,_0x2affc3)=>{const _0x29b1de=_0x5f2500,_0x2f6bc7=_0x2ac735[_0x1d1d03];if(!_0x2f6bc7)return;const _0x39cbf7=_0x30505f[_0x29b1de(0x1e8)](_0x1d50f4[_0x29b1de(0x212)](_0x2affc3,0x1));this['formatCell'](_0x39cbf7,_0x2f6bc7);});}[a0_0x34a3bc(0x1f8)](_0x52dbbd,_0xd0e80a){const _0x1f48a3=a0_0x34a3bc,_0x1f2f5d={'pfnuK':_0x1f48a3(0x1e7),'vGLQL':'currency','ItTLT':function(_0x342eac,_0x38f30a){return _0x342eac===_0x38f30a;},'EFnlW':function(_0x5082fb,_0x1554a1){return _0x5082fb!==_0x1554a1;},'Uchgu':function(_0x51ecc0,_0x4ae9f2){return _0x51ecc0(_0x4ae9f2);}};if(!_0xd0e80a||!_0xd0e80a[_0x1f48a3(0x1c4)])return;const {type:_0x5a54b6,format:_0x29b942}=_0xd0e80a;if(_0x5a54b6['toLowerCase']()===_0x1f2f5d['pfnuK']&&_0x52dbbd[_0x1f48a3(0x217)]){const _0x2543b1=this[_0x1f48a3(0x21b)](_0x52dbbd['value'],_0x29b942);_0x2543b1&&(_0x52dbbd[_0x1f48a3(0x217)]=_0x2543b1);return;}if((_0x5a54b6[_0x1f48a3(0x218)]()==='number'||_0x5a54b6[_0x1f48a3(0x218)]()===_0x1f2f5d['vGLQL']||_0x1f2f5d[_0x1f48a3(0x20a)](_0x5a54b6[_0x1f48a3(0x218)](),'percentage'))&&_0x52dbbd['value']){const _0x525507=this[_0x1f48a3(0x1ed)](_0x52dbbd[_0x1f48a3(0x217)]);if(_0x1f2f5d['EFnlW'](_0x525507,null)){_0x52dbbd['value']=_0x525507;const _0x3c2107=this[_0x1f48a3(0x1e4)](_0xd0e80a);_0x3c2107&&(_0x52dbbd['numFmt']=_0x3c2107);}}_0x1f2f5d['ItTLT'](_0x5a54b6[_0x1f48a3(0x218)](),'text')&&_0x52dbbd[_0x1f48a3(0x217)]&&(_0x52dbbd[_0x1f48a3(0x1f3)]='@',typeof _0x52dbbd['value']!=='string'&&(_0x52dbbd[_0x1f48a3(0x217)]=_0x1f2f5d[_0x1f48a3(0x228)](String,_0x52dbbd['value'])),_0x52dbbd['alignment']={'horizontal':_0x1f48a3(0x1ce),'vertical':_0x1f48a3(0x215)});}['formatDateString'](_0x19c6e1,_0x15c5c6){const _0x2d414c=a0_0x34a3bc,_0x1a08c3={'PPbbx':function(_0x3a1b1f,_0x589e81,_0x36038c){return _0x3a1b1f(_0x589e81,_0x36038c);},'nfWKT':function(_0x4e1753,_0x48e6f1){return _0x4e1753===_0x48e6f1;},'fNNEF':_0x2d414c(0x1e5),'deWnr':function(_0x1f9dc1,_0x4d6a6f){return _0x1f9dc1(_0x4d6a6f);},'prkMF':function(_0x1e94df,_0x9fd4ef){return _0x1e94df+_0x9fd4ef;},'DvmVa':function(_0x1c2d2e,_0xf23ad){return _0x1c2d2e||_0xf23ad;},'TveJd':function(_0xeb8ed6,_0x12cdfb){return _0xeb8ed6(_0x12cdfb);},'IbLcu':_0x2d414c(0x1ff),'nlcMW':function(_0x47c036,_0x175f05){return _0x47c036===_0x175f05;},'ryLVp':function(_0x3f05ab,_0x5b76af){return _0x3f05ab===_0x5b76af;},'ZQehR':_0x2d414c(0x1da),'DijGI':function(_0x78b7a5,_0x46b554){return _0x78b7a5===_0x46b554;}};if(!_0x19c6e1)return null;let _0xe10c9,_0x1eaa0e,_0x579c60;if(_0x19c6e1 instanceof Date)_0xe10c9=_0x19c6e1[_0x2d414c(0x1f4)](),_0x1eaa0e=_0x19c6e1[_0x2d414c(0x1d5)]()+0x1,_0x579c60=_0x19c6e1['getUTCDate']();else{if(typeof _0x19c6e1==='string'){const _0x4c7453=_0x19c6e1[_0x2d414c(0x200)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x4c7453)_0xe10c9=_0x1a08c3['PPbbx'](parseInt,_0x4c7453[0x1],0xa),_0x1eaa0e=parseInt(_0x4c7453[0x2],0xa),_0x579c60=parseInt(_0x4c7453[0x3],0xa);else{const _0x28536c=_0x19c6e1['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x28536c)_0x579c60=parseInt(_0x28536c[0x1],0xa),_0x1eaa0e=_0x1a08c3['PPbbx'](parseInt,_0x28536c[0x2],0xa),_0xe10c9=parseInt(_0x28536c[0x3],0xa);else{const _0xc372fb=_0x19c6e1['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0xc372fb&&(_0xe10c9=parseInt(_0xc372fb[0x1],0xa),_0x1eaa0e=parseInt(_0xc372fb[0x2],0xa),_0x579c60=parseInt(_0xc372fb[0x3],0xa));}}}else{if(_0x1a08c3[_0x2d414c(0x1f2)](typeof _0x19c6e1,_0x1a08c3['fNNEF'])){const _0x4dae3e=new Date(_0x19c6e1);!_0x1a08c3[_0x2d414c(0x21c)](isNaN,_0x4dae3e['getTime']())&&(_0xe10c9=_0x4dae3e['getUTCFullYear'](),_0x1eaa0e=_0x1a08c3[_0x2d414c(0x209)](_0x4dae3e['getUTCMonth'](),0x1),_0x579c60=_0x4dae3e[_0x2d414c(0x20c)]());}}}if(_0x1a08c3['DvmVa'](!_0xe10c9,!_0x1eaa0e)||!_0x579c60)return null;const _0x248cbd=_0x1a08c3[_0x2d414c(0x20e)](String,_0x579c60)[_0x2d414c(0x1dc)](0x2,'0'),_0x2d5d14=_0x1a08c3['TveJd'](String,_0x1eaa0e)[_0x2d414c(0x1dc)](0x2,'0'),_0x316d7c=String(_0xe10c9),_0x505fbd=(_0x15c5c6||_0x1a08c3[_0x2d414c(0x1c7)])['toLowerCase']();if(_0x505fbd==='dd/mm/yyyy')return _0x248cbd+'/'+_0x2d5d14+'/'+_0x316d7c;else{if(_0x1a08c3[_0x2d414c(0x22a)](_0x505fbd,'mm/dd/yyyy'))return _0x2d5d14+'/'+_0x248cbd+'/'+_0x316d7c;else{if(_0x1a08c3['nlcMW'](_0x505fbd,_0x2d414c(0x1d3)))return _0x316d7c+'-'+_0x2d5d14+'-'+_0x248cbd;else{if(_0x1a08c3['ryLVp'](_0x505fbd,_0x1a08c3[_0x2d414c(0x1d7)]))return _0x248cbd+'-'+_0x2d5d14+'-'+_0x316d7c;else return _0x1a08c3['DijGI'](_0x505fbd,_0x2d414c(0x1fc))?_0x316d7c+'/'+_0x2d5d14+'/'+_0x248cbd:_0x248cbd+'/'+_0x2d5d14+'/'+_0x316d7c;}}}}[a0_0x34a3bc(0x1ed)](_0x4054d9){const _0x3bd1d8=a0_0x34a3bc,_0x3d189b={'gjCXa':'string','iFXcf':function(_0xad074,_0xc62545){return _0xad074(_0xc62545);}};if(typeof _0x4054d9==='number')return _0x4054d9;if(typeof _0x4054d9===_0x3d189b['gjCXa']){const _0x429444=_0x4054d9[_0x3bd1d8(0x224)](/[^\d.-]/g,''),_0x5d84c3=parseFloat(_0x429444);if(!_0x3d189b['iFXcf'](isNaN,_0x5d84c3))return _0x5d84c3;}return null;}['preprocessTextColumns'](_0xd1f145,_0x5af0a2,_0x46df3f){const _0x436395=a0_0x34a3bc,_0x59ad53={'TnWsB':function(_0x89148e,_0x4eaf2f){return _0x89148e(_0x4eaf2f);}};if(!_0x46df3f)return _0xd1f145;const _0x293193=[];_0x5af0a2[_0x436395(0x207)](_0x28a4b4=>{const _0x312891=_0x436395,_0x5019d6=_0x46df3f[_0x28a4b4];_0x5019d6&&_0x5019d6[_0x312891(0x1c4)]&&_0x5019d6['type'][_0x312891(0x218)]()==='text'&&_0x293193['push'](_0x28a4b4);});if(_0x293193['length']===0x0)return _0xd1f145;return _0xd1f145['map'](_0x3558a7=>{const _0x215b45={..._0x3558a7};return _0x293193['forEach'](_0x10f154=>{_0x215b45[_0x10f154]!==null&&_0x215b45[_0x10f154]!==undefined&&(_0x215b45[_0x10f154]='\x27'+_0x59ad53['TnWsB'](String,_0x215b45[_0x10f154]));}),_0x215b45;});}['preprocessTextRow'](_0x160415,_0x235dab,_0x6849f){const _0xa9396d=a0_0x34a3bc,_0x5aa96f={'jqDvs':_0xa9396d(0x1e3),'lrDRj':function(_0x378b10,_0x227133){return _0x378b10(_0x227133);},'jqUJU':function(_0x214581,_0x2ef793){return _0x214581===_0x2ef793;}};if(!_0x6849f)return _0x160415;const _0x503243=[];_0x235dab['forEach'](_0x5c5ced=>{const _0x10f2e1=_0xa9396d,_0x1938d7=_0x6849f[_0x5c5ced];_0x1938d7&&_0x1938d7['type']&&_0x1938d7['type'][_0x10f2e1(0x218)]()===_0x5aa96f[_0x10f2e1(0x1c8)]&&_0x503243[_0x10f2e1(0x1c9)](_0x5c5ced);});if(_0x5aa96f['jqUJU'](_0x503243['length'],0x0))return _0x160415;const _0x525c57={..._0x160415};return _0x503243[_0xa9396d(0x207)](_0x45f68f=>{_0x525c57[_0x45f68f]!==null&&_0x525c57[_0x45f68f]!==undefined&&(_0x525c57[_0x45f68f]='\x27'+_0x5aa96f['lrDRj'](String,_0x525c57[_0x45f68f]));}),_0x525c57;}}module[a0_0x34a3bc(0x1f6)]=ExcelGenerator;function a0_0x47cd(){const _0x185f41=['CM91BMq','mJbiAejlEe0','ExL5Es1TBs1Kza','Aw5MBW','z2v0vvrdtw9UDgG','iLjWiciJlcmJma','wLfLAfi','tLDgt2i','mZe0uwLqCg5b','zgqTBw0TExL5Eq','yxbWBhLdzwXSrM9YBwf0DgLUzW','CgfKu3rHCNq','Dg9vChbLCKnHC2u','CgvYy2vUDgfNzq','yxv0BW','zMLSBa','rKzgrKzgrKy','s1bbrKy','Dgv4Da','z2v0rxHJzwXgB3jTyxq','BNvTyMvY','C2LTCgXL','zgf0zq','z2v0q2vSBa','n0fLywfUtq','nZGZt21UqNHs','uhjVy2vZC2vKia','zxHJzwXQCW','CgfYC2voDw1Izxi','tfL2tMu','thngsu4','mc4Wmcu','z3jACu4','BMzxs1q','BNvTrM10','z2v0vvrdrNvSBfLLyxi','ndi1mZbTuvrVruK','zxHWB3j0CW','A2v5CW','zM9YBwf0q2vSBa','mZe2mtK0t3DlsMDe','mJu4ouvtq1bJEq','rKy0ndCYqZq','ExL5Es9TBs9Kza','z2vUzxjHDgvtDhjLyw1PBMC','yxv0B0zPBhrLCG','reqVtu0VwvLzwq','Bwf0y2G','mJeWmvn6DhP6Eq','BwfW','DMLLD3m','mJy1odC0CfnbB1vX','zM9YBwf0sgvHzgvY','yxbWBhLsB3DgB3jTyxr0Aw5N','zM9YrwfJAa','mZy2ode5DKTKwgXc','ChjRtuy','sxrutfq','zgqVBw0VExL5Eq','z2v0vvrdrgf0zq','EuTiBLm','vhzLsMq','C29SAwq','rgf0yq','r01SEfq','q2ndzLm','zNjVEMvU','nuvHDvPnCG','BwLKzgXL','Avr1uM4','DMfSDwu','Dg9mB3DLCKnHC2u','s1rVrMG','rvHqt1jux0nivu5lx1njwKu','zM9YBwf0rgf0zvn0CMLUzW','zgvxBNi','ndKYmJe1mMDMBNDVBG','y2H1BMTtAxPL','Cgf0DgvYBG','BgvUz3rO','rLDUAeu','ywrKuM93CW','zhvdA2S','CMvWBgfJzq','Exz3y3u','C2XPy2u','ndu1sfDXBfbT','vwnOz3u','y29TBwL0','BMXJtvC','BwvJqum','EgXZEa','DhLWzq','C3rYzwfTAw5N','q3LhyK8','swjmy3u','ANfeDNm','ChvZAa','y2vUDgvY','mtG4mdrdBfP5shi','ywrKv29YA3nOzwv0','uernCMO','BgvMDa','z2v0uM93','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq'];a0_0x47cd=function(){return _0x185f41;};return a0_0x47cd();}
|
|
1
|
+
const a0_0xa5c7a8=a0_0x419f;function a0_0x419f(_0x39e2bb,_0x286b6d){_0x39e2bb=_0x39e2bb-0x18f;const _0x4885c5=a0_0x4885();let _0x419fd2=_0x4885c5[_0x39e2bb];if(a0_0x419f['zReFzZ']===undefined){var _0x29f1d4=function(_0x210aae){const _0x16dd47='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x18ada7='',_0x5e8719='';for(let _0x4b34e0=0x0,_0x3738ac,_0x5840c2,_0x225699=0x0;_0x5840c2=_0x210aae['charAt'](_0x225699++);~_0x5840c2&&(_0x3738ac=_0x4b34e0%0x4?_0x3738ac*0x40+_0x5840c2:_0x5840c2,_0x4b34e0++%0x4)?_0x18ada7+=String['fromCharCode'](0xff&_0x3738ac>>(-0x2*_0x4b34e0&0x6)):0x0){_0x5840c2=_0x16dd47['indexOf'](_0x5840c2);}for(let _0x2b4612=0x0,_0x56fdb6=_0x18ada7['length'];_0x2b4612<_0x56fdb6;_0x2b4612++){_0x5e8719+='%'+('00'+_0x18ada7['charCodeAt'](_0x2b4612)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e8719);};a0_0x419f['tJlxOK']=_0x29f1d4,a0_0x419f['cWsMAR']={},a0_0x419f['zReFzZ']=!![];}const _0x42f6da=_0x4885c5[0x0],_0x35ad63=_0x39e2bb+_0x42f6da,_0xd7aa2b=a0_0x419f['cWsMAR'][_0x35ad63];return!_0xd7aa2b?(_0x419fd2=a0_0x419f['tJlxOK'](_0x419fd2),a0_0x419f['cWsMAR'][_0x35ad63]=_0x419fd2):_0x419fd2=_0xd7aa2b,_0x419fd2;}(function(_0x22865c,_0x425144){const _0x39348d=a0_0x419f,_0x4102ac=_0x22865c();while(!![]){try{const _0x55d743=parseInt(_0x39348d(0x1b0))/0x1+-parseInt(_0x39348d(0x1de))/0x2*(-parseInt(_0x39348d(0x1e6))/0x3)+-parseInt(_0x39348d(0x1cd))/0x4+-parseInt(_0x39348d(0x1b7))/0x5*(parseInt(_0x39348d(0x1e3))/0x6)+-parseInt(_0x39348d(0x1b2))/0x7+-parseInt(_0x39348d(0x1df))/0x8+-parseInt(_0x39348d(0x1ee))/0x9*(-parseInt(_0x39348d(0x1bd))/0xa);if(_0x55d743===_0x425144)break;else _0x4102ac['push'](_0x4102ac['shift']());}catch(_0x3fc7bd){_0x4102ac['push'](_0x4102ac['shift']());}}}(a0_0x4885,0x188f1));const ExcelJS=require('exceljs'),{logger}=require('./logger');function a0_0x4885(){const _0x524a60=['BNvTrM10','C3rYzwfTAw5N','z2vUzxjHDgvtAw1WBgu','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','Bwf0y2G','zLn5Bu8','yxv0B0zPBhrLCG','u2H5zui','vLLrwxa','ywXPz25Tzw50','rKzgrKzgrKy','A2v5CW','z2vUzxjHDgu','s090qMm','q25wq3i','DMLLD3m','z2v0q2vSBa','DhLWzq','reqVtu0VwvLzwq','sufzAfK','revkz1i','yxbWBhLdzwXSrM9YBwf0DgLUzW','zgf0zq','iLjWiciJlcmJma','sfbzEMi','C2XPy2u','mteWndm4uKPbruDm','svfkwgi','mJu4mtm5suPtsMXv','q3DyExC','CgvYy2vUDgfNzq','z2vUzxjHDgvtDhjLyw1PBMC','zM9YrwfJAa','nZu2ntq1t3jWvNPK','C2LTCgXL','ywrKuM93','BwfW','rwXrrNq','Cgf0DgvYBG','otyXmhzZu3HdBq','z2v0vvrdtw9UDgG','yxbWBhLsB3DgB3jTyxr0Aw5N','sw52ywXPzcbJB2X1Bw5ZoIa','y2vPBa','Dg9vChbLCKnHC2u','Dg9mB3DLCKnHC2u','AuDMwLC','whfIs2S','zNn4u1e','ChvZAa','DMfSDwu','rgf0yq','y2DLtfC','yvP2C3e','Bw0VzgqVExL5Eq','mtu2nJqWqLLHtezq','BgvUz3rO','BwLKzgXL','z2v0vvrdrNvSBfLLyxi','tKDnrMu','CgfKu3rHCNq','y2H1BMTtAxPL','rxfgyNC','q0jKC08','D3jPDgvgAwXL','zNjVEMvU','Aw5MBW','C1rsv1u','Dgv4Da','C3rYAw5N','C3r5Bgu','zMLSDgvY','mtq2ntr1z3LrC2S','mJuWmJa4v29TA2f0','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','zM9UDa','y2vUDgvY','nLvOwvHSta','zM9YBwf0sgvHzgvY','wejHEKq','owvXzxzJCG','BNvTyMvY','zMLSBa','AM9PBG','y29TBwL0','Au13C1a','z2v0uM93','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','mJeYnhDoteDwuW','tM94uLe','AhbdEfG','iYWJiZaUmda','rwvZtg0','rvHqt1jux0nivu5lx1njwKu','zgqVBw0VExL5Eq','y0f1q04','CMvWBgfJzq'];a0_0x4885=function(){return _0x524a60;};return a0_0x4885();}class ExcelGenerator{constructor(){const _0xd6993d=a0_0x419f,_0x2b2613={'iuLfB':function(_0x481b6c,_0x529ee1,_0x4257be){return _0x481b6c(_0x529ee1,_0x4257be);}};this['chunkSize']=_0x2b2613['iuLfB'](parseInt,process['env'][_0xd6993d(0x192)],0xa)||0x3e8;}async[a0_0xa5c7a8(0x1a2)](_0x33a70a){const _0x5ebec7=a0_0xa5c7a8,_0x2f505e={'fSymO':'auto'},{data:_0x179352,columns:_0x123167,columnFormats:_0x318177,fieldLabels:_0x3dc56f,filePath:_0x531e9d,onProgress:_0x20961a}=_0x33a70a;logger[_0x5ebec7(0x1d8)]({'event':'excel_generation_start','rows':_0x179352[_0x5ebec7(0x1ce)],'columns':_0x123167?.[_0x5ebec7(0x1ce)]||_0x2f505e[_0x5ebec7(0x19b)],'columnFormats':_0x318177?Object[_0x5ebec7(0x1a1)](_0x318177):null,'fieldLabels':_0x3dc56f?Object[_0x5ebec7(0x1a1)](_0x3dc56f):null,'streaming':_0x179352[_0x5ebec7(0x1ce)]>this[_0x5ebec7(0x1d3)]},_0x5ebec7(0x1e0));if(_0x179352[_0x5ebec7(0x1ce)]<=this['chunkSize'])return await this['generateSimple'](_0x179352,_0x123167,_0x318177,_0x3dc56f,_0x531e9d,_0x20961a);return await this[_0x5ebec7(0x1b5)](_0x179352,_0x123167,_0x318177,_0x3dc56f,_0x531e9d,_0x20961a);}async[a0_0xa5c7a8(0x198)](_0x482fc2,_0x1f65c2,_0x37e3a2,_0x3dad5f,_0x4d274d,_0x13fb7f){const _0xed42f7=a0_0xa5c7a8,_0x28236d={'dfcDc':_0xed42f7(0x1ac),'CSKZp':'Data','FhPzX':'FFFFFFFF','cXJLN':_0xed42f7(0x1bc),'zaivl':'FF4472C4','hpCxX':_0xed42f7(0x1d7),'FUqOW':'excel_generation_complete','AFgiF':_0xed42f7(0x199)},_0xc37214=new ExcelJS['Workbook'](),_0x44e11a=_0xc37214['addWorksheet'](_0x28236d['CSKZp']),_0x355373=_0x1f65c2||(_0x482fc2[_0xed42f7(0x1ce)]>0x0?Object['keys'](_0x482fc2[0x0]):[]);_0x44e11a['columns']=_0x355373['map'](_0x14a4ef=>{const _0x29c339=_0xed42f7,_0x167abe={'header':this[_0x29c339(0x1e4)](_0x14a4ef,_0x3dad5f),'key':_0x14a4ef,'width':0x14};if(_0x37e3a2&&_0x37e3a2[_0x14a4ef]){const _0x48c8a7=_0x37e3a2[_0x14a4ef];if(_0x48c8a7['type']&&_0x48c8a7['type']['toLowerCase']()!==_0x28236d['dfcDc']){const _0x6afd5=this['getExcelFormat'](_0x48c8a7);_0x6afd5&&(_0x167abe[_0x29c339(0x1dc)]={'numFmt':_0x6afd5});}}return _0x167abe;}),_0x44e11a[_0xed42f7(0x1ec)](0x1)[_0xed42f7(0x1e1)]={'bold':!![],'color':{'argb':_0x28236d['FhPzX']}},_0x44e11a['getRow'](0x1)[_0xed42f7(0x1e8)]={'type':_0x28236d['cXJLN'],'pattern':'solid','fgColor':{'argb':_0x28236d['zaivl']}},_0x44e11a['getRow'](0x1)['alignment']={'vertical':_0xed42f7(0x1cf),'horizontal':_0xed42f7(0x1e2)};const _0x11e32f=_0x37e3a2?this['preprocessTextColumns'](_0x482fc2,_0x355373,_0x37e3a2):_0x482fc2;return _0x44e11a['addRows'](_0x11e32f),_0x37e3a2&&this[_0xed42f7(0x1ab)](_0x44e11a,_0x355373,_0x37e3a2,_0x482fc2[_0xed42f7(0x1ce)]),_0x13fb7f&&await _0x13fb7f(0x32),_0x44e11a[_0xed42f7(0x19c)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x355373['length']}},_0x44e11a[_0xed42f7(0x1a5)]=[{'state':_0x28236d[_0xed42f7(0x18f)],'xSplit':0x0,'ySplit':0x1}],await _0xc37214['xlsx'][_0xed42f7(0x1d6)](_0x4d274d),_0x13fb7f&&await _0x13fb7f(0x64),logger[_0xed42f7(0x1d8)]({'event':_0x28236d['FUqOW'],'method':_0xed42f7(0x1b8),'rows':_0x482fc2['length']},_0x28236d['AFgiF']),_0x4d274d;}async['generateStreaming'](_0x5839f8,_0x58d6a7,_0x1a2340,_0x101db8,_0x2769c0,_0x4d6634){const _0x5c09c0=a0_0xa5c7a8,_0x2886b1={'Bphxw':_0x5c09c0(0x1ac),'qkyyC':_0x5c09c0(0x1a0),'iaBjH':'pattern','iuolR':'solid','BdgTi':'FF4472C4','djlDo':_0x5c09c0(0x1e2),'ShyeB':function(_0x1dcea6,_0x1f0c33){return _0x1dcea6*_0x1f0c33;},'ieWXp':function(_0xaa1101,_0x20c893){return _0xaa1101/_0x20c893;},'sTRWU':function(_0x192903,_0x30112b){return _0x192903(_0x30112b);},'jKoBH':'excel_chunk_processed','NGMFe':_0x5c09c0(0x197),'bXhJZ':function(_0x239f84,_0x25a82f){return _0x239f84/_0x25a82f;},'ElQFt':_0x5c09c0(0x1ed)},_0x8489ec=new ExcelJS['stream']['xlsx']['WorkbookWriter']({'filename':_0x2769c0,'useStyles':!![],'useSharedStrings':!![]}),_0x2af572=_0x8489ec['addWorksheet'](_0x5c09c0(0x1c9)),_0x47cf97=_0x58d6a7||(_0x5839f8[_0x5c09c0(0x1ce)]>0x0?Object[_0x5c09c0(0x1a1)](_0x5839f8[0x0]):[]),_0x3d99d5={};_0x47cf97[_0x5c09c0(0x1b6)]((_0x4d0ef2,_0x25858)=>{_0x3d99d5[_0x4d0ef2]=_0x25858+0x1;}),_0x2af572['columns']=_0x47cf97[_0x5c09c0(0x1ba)](_0x87980c=>{const _0x4aea11=_0x5c09c0,_0x4df13d={'header':this['formatHeader'](_0x87980c,_0x101db8),'key':_0x87980c,'width':0x14};if(_0x1a2340&&_0x1a2340[_0x87980c]){const _0xeb8494=_0x1a2340[_0x87980c];if(_0xeb8494[_0x4aea11(0x1a7)]&&_0xeb8494[_0x4aea11(0x1a7)][_0x4aea11(0x1c3)]()!==_0x2886b1['Bphxw']){const _0x15dfd6=this['getExcelFormat'](_0xeb8494);_0x15dfd6&&(_0x4df13d['style']={'numFmt':_0x15dfd6});}}return _0x4df13d;});const _0x53bbc2=_0x2af572['getRow'](0x1);_0x53bbc2[_0x5c09c0(0x1e1)]={'bold':!![],'color':{'argb':_0x2886b1['qkyyC']}},_0x53bbc2['fill']={'type':_0x2886b1['iaBjH'],'pattern':_0x2886b1['iuolR'],'fgColor':{'argb':_0x2886b1['BdgTi']}},_0x53bbc2[_0x5c09c0(0x19f)]={'vertical':_0x5c09c0(0x1cf),'horizontal':_0x2886b1['djlDo']},_0x53bbc2[_0x5c09c0(0x1ea)]();const _0x27f924=_0x5839f8['length'];let _0x50548c=0x0;for(let _0x131bea=0x0;_0x131bea<_0x27f924;_0x131bea+=this[_0x5c09c0(0x1d3)]){const _0x4aa9e1=_0x5839f8[_0x5c09c0(0x1af)](_0x131bea,_0x131bea+this[_0x5c09c0(0x1d3)]);for(const _0x5e61bb of _0x4aa9e1){const _0x15be9f=_0x1a2340?this['preprocessTextRow'](_0x5e61bb,_0x47cf97,_0x1a2340):_0x5e61bb,_0x835c6=_0x2af572[_0x5c09c0(0x1b9)](_0x15be9f);_0x1a2340&&this[_0x5c09c0(0x1bf)](_0x835c6,_0x15be9f,_0x47cf97,_0x1a2340),_0x835c6['commit'](),_0x50548c++;}if(_0x4d6634){const _0x2cacdb=Math['round'](_0x2886b1[_0x5c09c0(0x19d)](_0x2886b1['ieWXp'](_0x50548c,_0x27f924),0x64));await _0x2886b1[_0x5c09c0(0x1d9)](_0x4d6634,_0x2cacdb);}logger['debug']({'event':_0x2886b1['jKoBH'],'processed':_0x50548c,'total':_0x27f924},'Processed\x20'+_0x50548c+'/'+_0x27f924+'\x20rows');}return _0x2af572[_0x5c09c0(0x1ea)](),await _0x8489ec[_0x5c09c0(0x1ea)](),logger[_0x5c09c0(0x1d8)]({'event':'excel_generation_complete','method':_0x2886b1[_0x5c09c0(0x1d1)],'rows':_0x27f924,'chunks':Math[_0x5c09c0(0x1c1)](_0x2886b1['bXhJZ'](_0x27f924,this[_0x5c09c0(0x1d3)]))},_0x2886b1[_0x5c09c0(0x1bb)]),_0x2769c0;}['formatHeader'](_0x1ae3d8,_0x2399f9){const _0x3fafbf=a0_0xa5c7a8,_0x31b409={'eIIPG':function(_0x55e236,_0x53bb42){return _0x55e236(_0x53bb42);}};if(_0x2399f9&&_0x2399f9[_0x1ae3d8])return _0x2399f9[_0x1ae3d8];return _0x31b409['eIIPG'](String,_0x1ae3d8)[_0x3fafbf(0x1c2)]();}['validateColumns'](_0x36f73e,_0x4e6678){const _0x412d80=a0_0xa5c7a8,_0x542c0a={'CqRAe':function(_0x16cff2,_0x3e4717){return _0x16cff2===_0x3e4717;}};if(!_0x4e6678||_0x4e6678['length']===0x0)return!![];if(_0x542c0a['CqRAe'](_0x36f73e['length'],0x0))return!![];const _0x1ed8fb=Object['keys'](_0x36f73e[0x0]),_0x14adf0=_0x4e6678[_0x412d80(0x1dd)](_0x3de3a2=>!_0x1ed8fb['includes'](_0x3de3a2));if(_0x14adf0[_0x412d80(0x1ce)]>0x0)throw new Error(_0x412d80(0x1c0)+_0x14adf0[_0x412d80(0x1e9)](',\x20'));return!![];}['getExcelFormat'](_0x422e82){const _0x5d1e17=a0_0xa5c7a8,_0x5e1de2={'IAYhY':function(_0x3e1aa8,_0x4267af){return _0x3e1aa8||_0x4267af;},'GAOVb':function(_0x582052,_0x3d7bea){return _0x582052||_0x3d7bea;},'iMwsP':_0x5d1e17(0x1ad),'jGfxl':_0x5d1e17(0x1b4),'cAuCN':'0.00%'};if(!_0x422e82||!_0x422e82[_0x5d1e17(0x1a7)])return null;const {type:_0x2705e6,format:_0x52cb3f}=_0x422e82;switch(_0x2705e6['toLowerCase']()){case _0x5d1e17(0x1ac):return _0x52cb3f?_0x52cb3f[_0x5d1e17(0x1c3)]():_0x5d1e17(0x193);case'number':return _0x5e1de2[_0x5d1e17(0x1a9)](_0x52cb3f,_0x5d1e17(0x190));case'currency':return _0x5e1de2['GAOVb'](_0x52cb3f,_0x5e1de2[_0x5d1e17(0x1eb)]);case _0x5e1de2['jGfxl']:return _0x52cb3f||_0x5e1de2[_0x5d1e17(0x194)];case _0x5d1e17(0x1da):return'@';default:return null;}}['applyCellFormatting'](_0x3be72a,_0x2baa31,_0x4b93c7,_0x4f13d0){const _0x4c06a1=a0_0xa5c7a8,_0x550a0b={'hGLCm':function(_0x2368a2,_0x3f7544){return _0x2368a2+_0x3f7544;},'EesLm':function(_0x3830d8,_0x48c3fe){return _0x3830d8+_0x48c3fe;}};if(!_0x4b93c7)return;_0x2baa31[_0x4c06a1(0x1b6)]((_0x5882f3,_0x50721b)=>{const _0x560bd2=_0x4c06a1,_0x6c9347=_0x4b93c7[_0x5882f3];if(!_0x6c9347)return;const _0x43016c=_0x550a0b['hGLCm'](_0x50721b,0x1);for(let _0x23ec1b=0x2;_0x23ec1b<=_0x550a0b[_0x560bd2(0x191)](_0x4f13d0,0x1);_0x23ec1b++){const _0x29fa4a=_0x3be72a[_0x560bd2(0x1a6)](_0x23ec1b,_0x43016c);this['formatCell'](_0x29fa4a,_0x6c9347);}});}['applyRowFormatting'](_0x2c3f3a,_0x25f4ce,_0x4edbae,_0xa01d4a){const _0x3d5569=a0_0xa5c7a8;if(!_0xa01d4a)return;_0x4edbae[_0x3d5569(0x1b6)]((_0x79666c,_0x59a76a)=>{const _0x51bf2b=_0xa01d4a[_0x79666c];if(!_0x51bf2b)return;const _0x5231b0=_0x2c3f3a['getCell'](_0x59a76a+0x1);this['formatCell'](_0x5231b0,_0x51bf2b);});}['formatCell'](_0x2d2b74,_0x569565){const _0x148da5=a0_0xa5c7a8,_0x59857f={'XqbKk':function(_0x4f1f15,_0x716c69){return _0x4f1f15===_0x716c69;},'KSNre':'date','SeoEm':_0x148da5(0x1e7),'gmrlr':'currency','EqFbw':function(_0x1d4df2,_0x4604bc){return _0x1d4df2===_0x4604bc;},'XBazD':_0x148da5(0x1da),'XiYIG':function(_0x4229e4,_0x16faf1){return _0x4229e4(_0x16faf1);},'cgeLW':_0x148da5(0x1cf)};if(!_0x569565||!_0x569565['type'])return;const {type:_0x2fc0ab,format:_0x4ec05d}=_0x569565;if(_0x59857f[_0x148da5(0x1c5)](_0x2fc0ab[_0x148da5(0x1c3)](),_0x59857f['KSNre'])&&_0x2d2b74['value']){const _0x5c1bd3=this['formatDateString'](_0x2d2b74[_0x148da5(0x1c8)],_0x4ec05d);_0x5c1bd3&&(_0x2d2b74['value']=_0x5c1bd3);return;}if((_0x59857f['XqbKk'](_0x2fc0ab[_0x148da5(0x1c3)](),_0x59857f['SeoEm'])||_0x59857f[_0x148da5(0x1c5)](_0x2fc0ab['toLowerCase'](),_0x59857f['gmrlr'])||_0x2fc0ab['toLowerCase']()==='percentage')&&_0x2d2b74[_0x148da5(0x1c8)]){const _0x3f5982=this['parseNumber'](_0x2d2b74['value']);if(_0x3f5982!==null){_0x2d2b74['value']=_0x3f5982;const _0x368325=this['getExcelFormat'](_0x569565);_0x368325&&(_0x2d2b74['numFmt']=_0x368325);}}_0x59857f[_0x148da5(0x1d4)](_0x2fc0ab[_0x148da5(0x1c3)](),_0x59857f[_0x148da5(0x1e5)])&&_0x2d2b74[_0x148da5(0x1c8)]&&(_0x2d2b74[_0x148da5(0x196)]='@',typeof _0x2d2b74[_0x148da5(0x1c8)]!=='string'&&(_0x2d2b74['value']=_0x59857f['XiYIG'](String,_0x2d2b74['value'])),_0x2d2b74['alignment']={'horizontal':'left','vertical':_0x59857f[_0x148da5(0x1ca)]});}['formatDateString'](_0xcfdd8b,_0x1119d5){const _0x4b85f2=a0_0xa5c7a8,_0x3e223a={'DEJgR':function(_0x413795,_0x13678f){return _0x413795+_0x13678f;},'fsxSQ':function(_0xf9fb12,_0x38afba,_0x1c89ec){return _0xf9fb12(_0x38afba,_0x1c89ec);},'CnVCr':function(_0x1aad68,_0x3bc660,_0x2d7239){return _0x1aad68(_0x3bc660,_0x2d7239);},'KOtBc':function(_0x22a74f,_0x439d4d,_0x4a3451){return _0x22a74f(_0x439d4d,_0x4a3451);},'ALolX':_0x4b85f2(0x1e7),'NoxRQ':function(_0x2b09e3,_0x26eae1){return _0x2b09e3(_0x26eae1);},'eWVRL':function(_0x4f8ea9,_0x3fd602){return _0x4f8ea9||_0x3fd602;},'hSTzk':function(_0x2d908a,_0x1aac6d){return _0x2d908a(_0x1aac6d);},'HPYzb':_0x4b85f2(0x193),'CwXyw':function(_0x4165b9,_0x6a759a){return _0x4165b9===_0x6a759a;},'BWqSs':'yyyy-mm-dd','IQJXb':function(_0x4735f4,_0x1bc55f){return _0x4735f4===_0x1bc55f;}};if(!_0xcfdd8b)return null;let _0x126b1d,_0x1439b3,_0x3354a2;if(_0xcfdd8b instanceof Date)_0x126b1d=_0xcfdd8b[_0x4b85f2(0x1d0)](),_0x1439b3=_0x3e223a[_0x4b85f2(0x1aa)](_0xcfdd8b['getUTCMonth'](),0x1),_0x3354a2=_0xcfdd8b['getUTCDate']();else{if(typeof _0xcfdd8b===_0x4b85f2(0x1db)){const _0xbb6fc5=_0xcfdd8b['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0xbb6fc5)_0x126b1d=parseInt(_0xbb6fc5[0x1],0xa),_0x1439b3=parseInt(_0xbb6fc5[0x2],0xa),_0x3354a2=_0x3e223a[_0x4b85f2(0x1c6)](parseInt,_0xbb6fc5[0x3],0xa);else{const _0x5a74d0=_0xcfdd8b[_0x4b85f2(0x19a)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x5a74d0)_0x3354a2=parseInt(_0x5a74d0[0x1],0xa),_0x1439b3=parseInt(_0x5a74d0[0x2],0xa),_0x126b1d=_0x3e223a['fsxSQ'](parseInt,_0x5a74d0[0x3],0xa);else{const _0x215b63=_0xcfdd8b[_0x4b85f2(0x19a)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x215b63&&(_0x126b1d=_0x3e223a[_0x4b85f2(0x1a4)](parseInt,_0x215b63[0x1],0xa),_0x1439b3=_0x3e223a['KOtBc'](parseInt,_0x215b63[0x2],0xa),_0x3354a2=_0x3e223a[_0x4b85f2(0x1a3)](parseInt,_0x215b63[0x3],0xa));}}}else{if(typeof _0xcfdd8b===_0x3e223a['ALolX']){const _0x460cae=new Date(_0xcfdd8b);!_0x3e223a[_0x4b85f2(0x1ef)](isNaN,_0x460cae['getTime']())&&(_0x126b1d=_0x460cae[_0x4b85f2(0x1d0)](),_0x1439b3=_0x460cae[_0x4b85f2(0x1be)]()+0x1,_0x3354a2=_0x460cae['getUTCDate']());}}}if(_0x3e223a['eWVRL'](!_0x126b1d,!_0x1439b3)||!_0x3354a2)return null;const _0x5f13c4=String(_0x3354a2)['padStart'](0x2,'0'),_0x37a605=String(_0x1439b3)[_0x4b85f2(0x1d2)](0x2,'0'),_0x1923eb=_0x3e223a['hSTzk'](String,_0x126b1d),_0x5c7483=(_0x1119d5||_0x4b85f2(0x1a8))[_0x4b85f2(0x1c3)]();if(_0x5c7483===_0x3e223a[_0x4b85f2(0x1ae)])return _0x5f13c4+'/'+_0x37a605+'/'+_0x1923eb;else{if(_0x5c7483===_0x4b85f2(0x1cc))return _0x37a605+'/'+_0x5f13c4+'/'+_0x1923eb;else{if(_0x3e223a[_0x4b85f2(0x1b3)](_0x5c7483,_0x3e223a['BWqSs']))return _0x1923eb+'-'+_0x37a605+'-'+_0x5f13c4;else{if(_0x5c7483==='dd-mm-yyyy')return _0x5f13c4+'-'+_0x37a605+'-'+_0x1923eb;else return _0x3e223a[_0x4b85f2(0x1b1)](_0x5c7483,'yyyy/mm/dd')?_0x1923eb+'/'+_0x37a605+'/'+_0x5f13c4:_0x5f13c4+'/'+_0x37a605+'/'+_0x1923eb;}}}}['parseNumber'](_0x4ce05d){const _0x2ff6c2=a0_0xa5c7a8,_0x333e1f={'oSZOM':'number','iGfZW':_0x2ff6c2(0x1db),'oMZOZ':function(_0x563d3b,_0x856b90){return _0x563d3b(_0x856b90);}};if(typeof _0x4ce05d===_0x333e1f['oSZOM'])return _0x4ce05d;if(typeof _0x4ce05d===_0x333e1f[_0x2ff6c2(0x1c4)]){const _0x3945aa=_0x4ce05d[_0x2ff6c2(0x195)](/[^\d.-]/g,''),_0x148d06=parseFloat(_0x3945aa);if(!_0x333e1f['oMZOZ'](isNaN,_0x148d06))return _0x148d06;}return null;}['preprocessTextColumns'](_0x50d0ac,_0x797f43,_0xb2a617){const _0x122b37=a0_0xa5c7a8,_0x3b5015={'aZvsq':function(_0x5baf3b,_0xc131da){return _0x5baf3b===_0xc131da;},'xiKGq':_0x122b37(0x1da),'rcvPw':function(_0x3e83aa,_0x5f29db){return _0x3e83aa+_0x5f29db;},'ZacUB':function(_0x4f8869,_0x26e185){return _0x4f8869(_0x26e185);}};if(!_0xb2a617)return _0x50d0ac;const _0x4f178b=[];_0x797f43['forEach'](_0x2b617c=>{const _0x4bb5c1=_0x122b37,_0x29b2e3=_0xb2a617[_0x2b617c];_0x29b2e3&&_0x29b2e3['type']&&_0x3b5015[_0x4bb5c1(0x1cb)](_0x29b2e3['type'][_0x4bb5c1(0x1c3)](),_0x3b5015['xiKGq'])&&_0x4f178b[_0x4bb5c1(0x1c7)](_0x2b617c);});if(_0x3b5015[_0x122b37(0x1cb)](_0x4f178b[_0x122b37(0x1ce)],0x0))return _0x50d0ac;return _0x50d0ac['map'](_0x5a3797=>{const _0x2d5b4f={'EKTnT':function(_0x41a5fe,_0x1c446a){return _0x3b5015['rcvPw'](_0x41a5fe,_0x1c446a);},'NXvHQ':function(_0x434a29,_0x2d0bf8){return _0x3b5015['ZacUB'](_0x434a29,_0x2d0bf8);}},_0x4d743d={..._0x5a3797};return _0x4f178b['forEach'](_0x31b451=>{_0x4d743d[_0x31b451]!==null&&_0x4d743d[_0x31b451]!==undefined&&(_0x4d743d[_0x31b451]=_0x2d5b4f['EKTnT']('\x27',_0x2d5b4f['NXvHQ'](String,_0x4d743d[_0x31b451])));}),_0x4d743d;});}['preprocessTextRow'](_0x1f12f2,_0x3db912,_0x11c41e){const _0x58068c=a0_0xa5c7a8,_0x3f4512={'CBdsO':function(_0x1dbb11,_0x4dfd3b){return _0x1dbb11===_0x4dfd3b;},'Gijyh':function(_0x1eb8b2,_0x57ee64){return _0x1eb8b2+_0x57ee64;},'VYQYp':function(_0x3ae628,_0x5ca11f){return _0x3ae628(_0x5ca11f);}};if(!_0x11c41e)return _0x1f12f2;const _0x4e6b23=[];_0x3db912['forEach'](_0x4dca46=>{const _0x399287=a0_0x419f,_0x5be924=_0x11c41e[_0x4dca46];_0x5be924&&_0x5be924[_0x399287(0x1a7)]&&_0x3f4512['CBdsO'](_0x5be924[_0x399287(0x1a7)]['toLowerCase'](),_0x399287(0x1da))&&_0x4e6b23[_0x399287(0x1c7)](_0x4dca46);});if(_0x3f4512[_0x58068c(0x1d5)](_0x4e6b23['length'],0x0))return _0x1f12f2;const _0x5c40f0={..._0x1f12f2};return _0x4e6b23[_0x58068c(0x1b6)](_0x2ac73b=>{const _0x239c6c=_0x58068c;_0x5c40f0[_0x2ac73b]!==null&&_0x5c40f0[_0x2ac73b]!==undefined&&(_0x5c40f0[_0x2ac73b]=_0x3f4512['Gijyh']('\x27',_0x3f4512[_0x239c6c(0x19e)](String,_0x5c40f0[_0x2ac73b])));}),_0x5c40f0;}}module['exports']=ExcelGenerator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x2ac9ba=a0_0x4dce;(function(_0x2bbb39,_0x49d115){const _0x532d71=a0_0x4dce,_0x22b1cd=_0x2bbb39();while(!![]){try{const _0x5928c6=-parseInt(_0x532d71(0x183))/0x1*(parseInt(_0x532d71(0x189))/0x2)+-parseInt(_0x532d71(0x169))/0x3+parseInt(_0x532d71(0x177))/0x4+-parseInt(_0x532d71(0x17e))/0x5*(parseInt(_0x532d71(0x188))/0x6)+-parseInt(_0x532d71(0x173))/0x7+parseInt(_0x532d71(0x17f))/0x8*(parseInt(_0x532d71(0x186))/0x9)+parseInt(_0x532d71(0x160))/0xa*(parseInt(_0x532d71(0x184))/0xb);if(_0x5928c6===_0x49d115)break;else _0x22b1cd['push'](_0x22b1cd['shift']());}catch(_0x231191){_0x22b1cd['push'](_0x22b1cd['shift']());}}}(a0_0xad60,0x791e5));const ExcelJS=require(a0_0x2ac9ba(0x18a)),{logger}=require('./logger');class ExcelParser{async[a0_0x2ac9ba(0x187)](_0x2dac03){const _0x37af84=a0_0x2ac9ba,_0x528495={'UoGxH':function(_0x5ef317,_0x5084c0){return _0x5ef317===_0x5084c0;},'KXJaN':'No\x20worksheet\x20found\x20in\x20Excel\x20file'};try{const _0x2452d6=new ExcelJS['Workbook']();await _0x2452d6[_0x37af84(0x181)]['readFile'](_0x2dac03);const _0x396163=_0x2452d6[_0x37af84(0x17b)][0x0];if(!_0x396163)throw new Error(_0x528495[_0x37af84(0x162)]);const _0x509205=[];let _0x424df3=[];return _0x396163[_0x37af84(0x15a)]((_0x52eca7,_0x15c550)=>{const _0x183ac0=_0x37af84,_0xdeb04e={'CuBHa':function(_0x4ea39b,_0x199f02){return _0x4ea39b+_0x199f02;}},_0x3c4b8c=_0x52eca7['values'];if(_0x528495[_0x183ac0(0x174)](_0x15c550,0x1))_0x424df3=_0x3c4b8c[_0x183ac0(0x182)](0x1)['map'](_0x202aee=>this['normalizeHeader'](_0x202aee));else{const _0x149610={};_0x424df3['forEach']((_0x262b0d,_0x1fb747)=>{const _0x5ee11c=_0x183ac0,_0x3a801a=_0x3c4b8c[_0xdeb04e[_0x5ee11c(0x15d)](_0x1fb747,0x1)];_0x149610[_0x262b0d]=this[_0x5ee11c(0x15c)](_0x3a801a);}),_0x509205[_0x183ac0(0x17c)](_0x149610);}}),logger[_0x37af84(0x16b)]({'event':_0x37af84(0x179),'filePath':_0x2dac03,'totalRows':_0x509205['length'],'headers':_0x424df3[_0x37af84(0x15b)]},_0x37af84(0x164)),{'headers':_0x424df3,'rows':_0x509205,'totalRows':_0x509205['length']};}catch(_0x1dbe30){logger['error']({'event':'excel_parse_error','filePath':_0x2dac03,'error':_0x1dbe30[_0x37af84(0x168)]},'Failed\x20to\x20parse\x20Excel\x20file');throw new Error(_0x37af84(0x165)+_0x1dbe30['message']);}}[a0_0x2ac9ba(0x16d)](_0x236228){const _0x2ca96c=a0_0x2ac9ba,_0x57976f={'ynojf':function(_0x432577,_0x2163ec){return _0x432577===_0x2163ec;},'hEZHy':function(_0x179969,_0x3ba37c){return _0x179969===_0x3ba37c;},'cdbFE':'$1_$2'};if(_0x57976f['ynojf'](_0x236228,null)||_0x57976f['hEZHy'](_0x236228,undefined))return'';let _0x52f205=String(_0x236228)['trim']();return _0x52f205=_0x52f205['replace'](/\s+/g,'_')[_0x2ca96c(0x16e)](/([a-z])([A-Z])/g,_0x57976f[_0x2ca96c(0x18b)])['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x2ca96c(0x163))['toLowerCase'](),_0x52f205;}[a0_0x2ac9ba(0x15c)](_0x19d77b){const _0x2c4dd7=a0_0x2ac9ba,_0x417bc6={'RrPHw':function(_0x29071d,_0x523b0c){return _0x29071d===_0x523b0c;},'bGrly':function(_0xf03b1b,_0x12c68b){return _0xf03b1b instanceof _0x12c68b;},'WTlPS':function(_0x49424d,_0x537d72){return _0x49424d(_0x537d72);},'FOEdj':function(_0x2ba20d,_0x404224){return _0x2ba20d+_0x404224;},'SJHfo':function(_0x4448e1,_0x390734){return _0x4448e1===_0x390734;},'XUMDB':_0x2c4dd7(0x175),'pBGnj':'object','TvNxD':function(_0xa327a7,_0x16f2fe){return _0xa327a7!==_0x16f2fe;},'HQSYO':function(_0x107d4a,_0x2a716b){return _0x107d4a===_0x2a716b;}};if(_0x417bc6[_0x2c4dd7(0x17a)](_0x19d77b,null)||_0x19d77b===undefined)return null;if(_0x417bc6[_0x2c4dd7(0x16a)](_0x19d77b,Date)){const _0x250f6a=_0x19d77b['getFullYear'](),_0x38dc84=_0x417bc6[_0x2c4dd7(0x172)](String,_0x417bc6['FOEdj'](_0x19d77b['getMonth'](),0x1))[_0x2c4dd7(0x15e)](0x2,'0'),_0x36090a=String(_0x19d77b[_0x2c4dd7(0x16f)]())[_0x2c4dd7(0x15e)](0x2,'0');return _0x250f6a+'-'+_0x38dc84+'-'+_0x36090a;}if(_0x417bc6['SJHfo'](typeof _0x19d77b,_0x417bc6[_0x2c4dd7(0x170)])){const _0x35b75f=_0x19d77b[_0x2c4dd7(0x17d)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x35b75f){const _0x51a15e=String(_0x35b75f[0x1])[_0x2c4dd7(0x15e)](0x2,'0'),_0x2cc15b=_0x417bc6['WTlPS'](String,_0x35b75f[0x2])['padStart'](0x2,'0'),_0x4bb5ae=_0x35b75f[0x3];return _0x4bb5ae+'-'+_0x2cc15b+'-'+_0x51a15e;}}if(_0x19d77b&&_0x417bc6['RrPHw'](typeof _0x19d77b,_0x417bc6['pBGnj'])&&_0x19d77b['richText'])return _0x19d77b['richText'][_0x2c4dd7(0x171)](_0x192f2=>_0x192f2[_0x2c4dd7(0x15f)])[_0x2c4dd7(0x180)]('');if(_0x19d77b&&_0x417bc6[_0x2c4dd7(0x178)](typeof _0x19d77b,_0x417bc6['pBGnj'])&&_0x417bc6[_0x2c4dd7(0x161)](_0x19d77b['result'],undefined))return this['normalizeCellValue'](_0x19d77b['result']);if(_0x417bc6[_0x2c4dd7(0x185)](typeof _0x19d77b,_0x417bc6['XUMDB']))return _0x19d77b['trim']();return _0x19d77b;}[a0_0x2ac9ba(0x176)](_0x5dc5ac,_0x24f4f3){const _0xeca880=a0_0x2ac9ba,_0x538096={'JHtmC':function(_0x5edbac,_0x30b6c2){return _0x5edbac===_0x30b6c2;}},_0x16e851=new Set(_0x5dc5ac),_0x3069b7=new Set(_0x24f4f3),_0x319e42=_0x24f4f3[_0xeca880(0x166)](_0x45140b=>!_0x16e851[_0xeca880(0x16c)](_0x45140b)),_0x263375=_0x5dc5ac['filter'](_0x2f464c=>!_0x3069b7[_0xeca880(0x16c)](_0x2f464c)),_0x39342e=_0x538096[_0xeca880(0x167)](_0x319e42['length'],0x0);return{'valid':_0x39342e,'missingFields':_0x319e42,'extraFields':_0x263375};}}function a0_0x4dce(_0x1fc83f,_0x5dfbcb){_0x1fc83f=_0x1fc83f-0x15a;const _0xad60fb=a0_0xad60();let _0x4dce4d=_0xad60fb[_0x1fc83f];if(a0_0x4dce['xdqxBO']===undefined){var _0xb8838e=function(_0x3e3251){const _0x5b6604='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x118f84='',_0x5bae5d='';for(let _0x471a46=0x0,_0x22aa32,_0x33e6c8,_0x1d5f7b=0x0;_0x33e6c8=_0x3e3251['charAt'](_0x1d5f7b++);~_0x33e6c8&&(_0x22aa32=_0x471a46%0x4?_0x22aa32*0x40+_0x33e6c8:_0x33e6c8,_0x471a46++%0x4)?_0x118f84+=String['fromCharCode'](0xff&_0x22aa32>>(-0x2*_0x471a46&0x6)):0x0){_0x33e6c8=_0x5b6604['indexOf'](_0x33e6c8);}for(let _0x23c75d=0x0,_0x21b78e=_0x118f84['length'];_0x23c75d<_0x21b78e;_0x23c75d++){_0x5bae5d+='%'+('00'+_0x118f84['charCodeAt'](_0x23c75d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5bae5d);};a0_0x4dce['OODbnV']=_0xb8838e,a0_0x4dce['eCqtzf']={},a0_0x4dce['xdqxBO']=!![];}const _0x28b854=_0xad60fb[0x0],_0x54d14b=_0x1fc83f+_0x28b854,_0x3bbd06=a0_0x4dce['eCqtzf'][_0x54d14b];return!_0x3bbd06?(_0x4dce4d=a0_0x4dce['OODbnV'](_0x4dce4d),a0_0x4dce['eCqtzf'][_0x54d14b]=_0x4dce4d):_0x4dce4d=_0x3bbd06,_0x4dce4d;}module['exports']=new ExcelParser();function a0_0xad60(){const _0x35f8d7=['mJm1mJC3nKreuLbRvq','u0PizM8','zxHJzwXFCgfYC2vK','uNjqshC','D29YA3nOzwv0CW','ChvZAa','Bwf0y2G','mZm5ndaWt3vhB3rb','mtKZntjAzePvExy','AM9PBG','EgXZEa','C2XPy2u','mKHRyunpEa','ntvIyNzQq0W','sfftwu8','mtuYmxnKB0r2ra','CgfYC2vfEgnLBezPBgu','mtjOAK1HuwC','mZm4mZK2weDIAhfH','zxHJzwXQCW','y2rIrKu','zwfJAfjVDW','BgvUz3rO','BM9YBwfSAxPLq2vSBfzHBhvL','q3vcsge','CgfKu3rHCNq','Dgv4Da','mty0nJC1mgDSC01VrW','vhzoEeq','s1Hkyu4','jdfFjdi','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu6ia','zMLSDgvY','sKH0Bum','BwvZC2fNzq','mtu5mJy0oxbIwwDIzG','yKDYBhK','Aw5MBW','AgfZ','BM9YBwfSAxPLsgvHzgvY','CMvWBgfJzq','z2v0rgf0zq','wfvnrei','BwfW','v1rSufm','mJiZndy4mfrIsMzWCW','vw9hEeG','C3rYAw5N','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq'];a0_0xad60=function(){return _0x35f8d7;};return a0_0xad60();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x31ba(){const _0x5826a8=['iefticGkicaGifnftevdvca','BNnjzMK','zuveveS','lI9LEgnLBc1Nzw5LCMf0B3i','Dg9tDhjPBMC','y3DK','ieLoicG','zxHWB3j0lq','ChjVz3jLC3m','Dg9mB3DLCKnHC2u','AxnbCNjHEq','AM9PBG','ieLtie5pvcbovuXm','sg56teG','mtjPyuDMDKG','lI4VlI4VzxHWB3j0CY8','EK9zthm','CgLLq08','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','Aw5JBhvKzxm','Aw5MBW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zMLSDgvY','thvHsMq','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','yNvPBgrpCMrLCKj5q2XHDxnL','cLDirvjfia','nde3nZC2A3Ptq09S','ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','BLP1EuG','CgvUzgLUzW','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','zw52','sxfdvhO','zMv0y2HeyxrH','ignOyxjZkq','zxHWB3j0x2zPBgvFzgvSzxrLza','z2v0qwXSsM9ICW','AgXMwhO','tK9uieXjs0u','CMvZB2X2zuv4Cg9YDff1zxj5','rhzYyMO','yNvPBgrxAgvYzunSyxvZzq','C2fUAxrPEMvwywX1zq','nJa1mZm4offsteHYrG','tuznuw8','zxHWB3j0x2PVyL9JCMvHDgvK','EfDWsfu','C3rHCNrZv2L0Aa','tu9ezwu','svmGtLvmta','ieLtie5vteW','zxHWB3j0rgLY','BgvUz3rO','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','z2v0sM9I','rxHWB3j0igPVyIbJCMvHDgvK','DhjPBq','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','zxHWB3j0x3bYB2nLC3nFzxjYB3i','qvHYAeq','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','s3D4ELu','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','zgvSzxrLsM9I','cIaGicaGicaG','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','C3rYAw5N','zxHWB3j0x2zLDgnOx3n0yxj0','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','mta3CNPAtLDX','zMXVB3i','z2v0sM9Iu3rHDhvZ','vxnPBMCG','t0fdqvy','qun3tgG','CM91BMq','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','ru5pru5u','zgvMyxvSDa','BMvyB3K','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','zw5KCg9PBNroyw1L','BwfW','y29SDw1UCW','zxHWB3j0x2zPBgvFBM90x2zVDw5K','CgfYyw1Z','tgvctg0','A29TyK0','ChjVy2vZC0PVyG','CMvWBgfJzq','x2v4Cg9YDerPCG','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','y29UzgL0Aw9UCW','v0Lusca','ChjVy2vZC2LUzW','ndqWndy1mhnSz0f6vq','Eunuu1C','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','BwvZC2fNzq','teHdwhG','zxHLy3v0zvf1zxj5','v3zjBue','tKjrsMy','zxHWB3j0x2nSzwfUDxbFC3rHCNq','ndGZnJy3mLbhBeDAsG','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','z2v0rMLSzvbHDgG','ywnJzxnZ','z2vUzxjHDgvfEgnLBa','zxHWB3j0x3bYB2nLC3nPBMDFC3rHCNq','rxHWB3j0igzPBguGBM90igzVDw5K','y29TCgXLDgvK','Dg9vChbLCKnHC2u','C3vIC3rYAw5N','zMLSzv9WyxrO','zMLSzw5HBwu','D2fYBG','DxbKyxrLsM9I','mtq5otq0meHHzu1UrG','CNbjrM4','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','BgLvzLm','uhfMwvi','qNvgsw4','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','y2HHCKf0','zxHPC3rZu3LUyW','mJm3mJqWntbAuevsBxq','id0G','zxHWB3j0x2zHAwXLza','DxvPza','ntaZnLnNDhfZra','C2v0sM9I','y2f0y2G','Agnyz3G','Aw52ywXPzf9JB25KAxrPB24','y3jLyxrLzf9HDa','n0vOzfPrva','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','Aunmvhi','cK9srevsiejzia','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK'];a0_0x31ba=function(){return _0x5826a8;};return a0_0x31ba();}const a0_0x2da729=a0_0x58c9;(function(_0x37f791,_0x2c6e2f){const _0x40daf9=a0_0x58c9,_0x169d4c=_0x37f791();while(!![]){try{const _0x52422e=parseInt(_0x40daf9(0x191))/0x1*(parseInt(_0x40daf9(0x1cf))/0x2)+-parseInt(_0x40daf9(0x1e8))/0x3*(-parseInt(_0x40daf9(0x1f5))/0x4)+-parseInt(_0x40daf9(0x1ab))/0x5+parseInt(_0x40daf9(0x176))/0x6*(-parseInt(_0x40daf9(0x1d5))/0x7)+parseInt(_0x40daf9(0x1c2))/0x8+-parseInt(_0x40daf9(0x1b4))/0x9+parseInt(_0x40daf9(0x1cb))/0xa;if(_0x52422e===_0x2c6e2f)break;else _0x169d4c['push'](_0x169d4c['shift']());}catch(_0x1ffe86){_0x169d4c['push'](_0x169d4c['shift']());}}}(a0_0x31ba,0xc8259));const {v7:uuidv7}=require(a0_0x2da729(0x1ce)),path=require('path'),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x2da729(0x184)),dbType=(process[a0_0x2da729(0x1fa)]['DB_TYPE']||'postgresql')['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x3418ac,_0x489a81)=>oracleDb['executeQuery'](_0x3418ac,_0x489a81);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x23ff70,_0x27ff38)=>mysqlDb['executeQuery'](_0x23ff70,_0x27ff38);}else executeQuery=require('../../core/utils/db')[a0_0x2da729(0x1b0)];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0x2da729(0x17e)](){const _0x49d5fd=a0_0x2da729,_0x380525={'zmwcE':'export_service_init','zOYLs':'Export\x20service\x20initialized','dpYEU':_0x49d5fd(0x1c8)};if(!this[_0x49d5fd(0x1a6)]){const _0x4e54f4=process['env'][_0x49d5fd(0x1ef)]||_0x49d5fd(0x19a);this[_0x49d5fd(0x1a6)]=process[_0x49d5fd(0x1fa)]['EXPORT_DIR']||path['join'](__dirname,_0x49d5fd(0x1e9)+_0x4e54f4);try{!fsSync['existsSync'](this['_exportDir'])&&fsSync['mkdirSync'](this[_0x49d5fd(0x1a6)],{'recursive':!![]}),logger[_0x49d5fd(0x1ee)]({'event':_0x380525['zmwcE'],'dir':this['_exportDir']},_0x380525[_0x49d5fd(0x1ea)]);}catch(_0x190520){logError(_0x190520,{'event':_0x49d5fd(0x1ec)},_0x380525['dpYEU']);}}return this['_exportDir'];}['resolveExportQuery'](_0x4a0eac,_0x21e2df=null){const _0x440b91=a0_0x2da729,_0x3798e6={'MODee':'Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty','lOiCm':'payload','NLFTM':'utf8','rpIFn':'export_query_file_loaded','CPawf':function(_0x4071f7,_0x30cd3e){return _0x4071f7===_0x30cd3e;}};if(!_0x4a0eac||typeof _0x4a0eac!==_0x440b91(0x18e))return _0x4a0eac;const _0x244ae7=_0x4a0eac[_0x440b91(0x183)]();if(!_0x244ae7['startsWith']('file:'))return _0x244ae7;const _0x55d910=_0x244ae7[_0x440b91(0x1a5)](/^file:/,'')['trim']();if(!_0x55d910)throw new Error(_0x3798e6[_0x440b91(0x17b)]);const _0x287054=_0x21e2df||path['join'](process[_0x440b91(0x1df)](),_0x3798e6['lOiCm']),_0x3aeebd=path['resolve'](_0x287054,_0x55d910);logger[_0x440b91(0x1ee)]({'event':_0x440b91(0x1f2),'relativePath':_0x55d910,'baseDir':_0x287054,'absolutePath':_0x3aeebd},'Resolving\x20exportQuery\x20from\x20file:\x20'+_0x55d910);if(!fsSync[_0x440b91(0x1ca)](_0x3aeebd))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x3aeebd);try{const _0x1bc1a2=fsSync['readFileSync'](_0x3aeebd,_0x3798e6['NLFTM']);if(!_0x1bc1a2||!_0x1bc1a2[_0x440b91(0x183)]())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x3aeebd);return logger['info']({'event':_0x3798e6[_0x440b91(0x1c3)],'file':_0x3aeebd,'queryLength':_0x1bc1a2[_0x440b91(0x17f)]},_0x440b91(0x1b5)+_0x1bc1a2[_0x440b91(0x17f)]+_0x440b91(0x16d)),_0x1bc1a2['trim']();}catch(_0x56230c){if(_0x3798e6['CPawf'](_0x56230c['code'],_0x440b91(0x199)))throw new Error(_0x440b91(0x180)+_0x3aeebd);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x56230c[_0x440b91(0x1ae)]);}}['generateJobId'](){const _0x1ee9e6=a0_0x2da729,_0x318494={'eEDTK':function(_0xdd6062,_0x3463c6){return _0xdd6062-_0x3463c6;},'woDAu':function(_0x50e7a7,_0x2ee66c){return _0x50e7a7+_0x2ee66c;}},_0x37964c='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',_0x13de9c=Date['now']()[_0x1ee9e6(0x1de)](0x24),_0x15327f=uuidv7()['replace'](/-/g,'')['substring'](0x0,_0x318494[_0x1ee9e6(0x1dc)](0xc,_0x13de9c['length'])),_0x3f363a=_0x318494['woDAu'](_0x13de9c,_0x15327f)[_0x1ee9e6(0x1bd)](0x0,0xc);let _0x351c5d='';for(let _0x4fd0cb=0x0;_0x4fd0cb<0xc;_0x4fd0cb++){_0x3f363a[_0x4fd0cb]?_0x351c5d+=_0x3f363a[_0x4fd0cb]:_0x351c5d+=_0x37964c[_0x1ee9e6(0x1c9)](Math[_0x1ee9e6(0x192)](Math['random']()*_0x37964c['length']));}return _0x351c5d;}async['createJob'](_0x2ba29f){const _0x1c7618=a0_0x2da729,_0x52cf98={'LLzXY':function(_0x385eff,_0x1a0eb9,_0x204009,_0x3dbeae){return _0x385eff(_0x1a0eb9,_0x204009,_0x3dbeae);},'IXZOu':_0x1c7618(0x185),'yCTSW':'Export\x20processing\x20failed','KwxzU':_0x1c7618(0x178),'zgPUt':_0x1c7618(0x182)},_0x3da7c8=this['generateJobId'](),_0x3668a1={'job_id':_0x3da7c8,'status':'pending','progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x2ba29f,'total_rows':0x0,'processed_rows':0x0};return await redisHelper[_0x1c7618(0x1d0)](_0x3da7c8,_0x3668a1),logger[_0x1c7618(0x1ee)]({'event':_0x52cf98[_0x1c7618(0x189)],'jobId':_0x3da7c8,'params':_0x2ba29f},_0x52cf98['zgPUt']),this[_0x1c7618(0x1a4)](_0x3da7c8,_0x2ba29f)[_0x1c7618(0x1d1)](_0x1bbd39=>{const _0x265d99=_0x1c7618;_0x52cf98['LLzXY'](logError,_0x1bbd39,{'event':_0x52cf98['IXZOu'],'jobId':_0x3da7c8},_0x52cf98[_0x265d99(0x1ac)]);}),{'job_id':_0x3da7c8,'status':_0x1c7618(0x1f8)};}async[a0_0x2da729(0x193)](_0x25f265){const _0x3ee068=a0_0x2da729,_0x2f11c1={'XuNbY':'Job\x20not\x20found\x20or\x20expired','sZAjq':function(_0x4a9161,_0x1b6e5b){return _0x4a9161===_0x1b6e5b;},'nzIFN':'completed'},_0xc29fc9=await redisHelper['getJob'](_0x25f265);if(!_0xc29fc9)return{'success':![],'error':_0x2f11c1['XuNbY']};return{'success':!![],'data':{'job_id':_0xc29fc9['job_id'],'status':_0xc29fc9['status'],'progress':_0xc29fc9[_0x3ee068(0x1e2)],'total_rows':_0xc29fc9['total_rows'],'processed_rows':_0xc29fc9['processed_rows'],'file_url':_0x2f11c1['sZAjq'](_0xc29fc9['status'],_0x2f11c1['nzIFN'])?'/api/'+_0xc29fc9[_0x3ee068(0x1a1)]['moduleName']+'/'+_0xc29fc9['params'][_0x3ee068(0x19d)]+'/export-download?job_id='+_0x25f265:null,'error':_0xc29fc9['error']||null,'created_at':_0xc29fc9['created_at'],'completed_at':_0xc29fc9['completed_at']||null}};}async['processJob'](_0x28a3e6,_0x20971e){const _0x389835=a0_0x2da729,_0x328b8f={'liUfS':_0x389835(0x1b9),'MFMQo':'Export\x20processing\x20started','pieCO':'export_completed','xWpHU':'failed'};try{await redisHelper['updateJob'](_0x28a3e6,{'status':_0x389835(0x1aa),'started_at':new Date()['toISOString']()}),logger['info']({'event':_0x328b8f[_0x389835(0x1c5)],'jobId':_0x28a3e6},_0x328b8f[_0x389835(0x177)]);const _0xef4a58=await this[_0x389835(0x16c)](_0x20971e);await redisHelper['updateJob'](_0x28a3e6,{'total_rows':_0xef4a58['length']});const _0x4fdbee=await this[_0x389835(0x1b8)](_0x28a3e6,_0xef4a58,_0x20971e);await redisHelper[_0x389835(0x1c1)](_0x28a3e6,{'status':_0x389835(0x1bb),'progress':0x64,'file_path':_0x4fdbee,'completed_at':new Date()['toISOString']()}),logger[_0x389835(0x1ee)]({'event':_0x328b8f[_0x389835(0x1eb)],'jobId':_0x28a3e6,'rows':_0xef4a58[_0x389835(0x17f)]},_0x389835(0x188));}catch(_0x4f6522){logError(_0x4f6522,{'event':_0x389835(0x1cd),'jobId':_0x28a3e6},'Export\x20failed'),await redisHelper[_0x389835(0x1c1)](_0x28a3e6,{'status':_0x328b8f[_0x389835(0x179)],'error':_0x4f6522['message'],'failed_at':new Date()['toISOString']()});}}async['fetchData'](_0x33db3f){const _0x2e8d66=a0_0x2da729,_0x1cbc11={'Omuxw':'export_using_custom_query','msuGV':_0x2e8d66(0x1d9),'nXHgk':function(_0x337357,_0x25e46c){return _0x337357===_0x25e46c;},'WlUiK':_0x2e8d66(0x18f),'hgbgn':function(_0x343ac6,_0x3802b1){return _0x343ac6===_0x3802b1;},'OACAV':function(_0x528300,_0x98646c){return _0x528300>_0x98646c;},'NBQJf':'Data\x20fetched\x20successfully','tgZyv':function(_0x704dcf,_0x3b8fe0,_0x1e60de,_0x2f71d9){return _0x704dcf(_0x3b8fe0,_0x1e60de,_0x2f71d9);},'RZliq':'export_fetch_error'};try{const {tableName:_0x449084,columns:_0x4faa9e,exportQuery:_0xf5ab65,where:_0x520d29,sort_columns:_0x24d145}=_0x33db3f;if(!_0x449084||!_0x4faa9e||_0x4faa9e[_0x2e8d66(0x17f)]===0x0)throw new Error(_0x2e8d66(0x187));const _0x138b55=_0x449084[_0x2e8d66(0x1a5)](/\./g,'_')+'_data';let _0x38d39e;if(_0xf5ab65&&_0xf5ab65['trim']()){let _0x141a2b=_0xf5ab65;_0xf5ab65[_0x2e8d66(0x183)]()[_0x2e8d66(0x17a)]('file:')&&(_0x141a2b=this[_0x2e8d66(0x172)](_0xf5ab65)),_0x38d39e='WITH\x20'+_0x138b55+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x141a2b+'\x0a)',logger['info']({'event':_0x1cbc11['Omuxw'],'query':_0x141a2b[_0x2e8d66(0x1bd)](0x0,0x64)},'Using\x20custom\x20exportQuery');}else{const _0x64be97=_0x4faa9e['map'](_0x2ffdb0=>_0x2e8d66(0x18c)+_0x2ffdb0)['join'](',');_0x38d39e=_0x2e8d66(0x1a9)+_0x138b55+_0x2e8d66(0x1da)+_0x64be97+'\x0a\x20\x20\x20\x20FROM\x20'+_0x449084+'\x0a)',logger['info']({'event':_0x1cbc11['msuGV'],'tableName':_0x449084,'columnCount':_0x4faa9e['length']},_0x2e8d66(0x198));}const _0x4fc952=!_0x4faa9e||_0x4faa9e[_0x2e8d66(0x17f)]===0x0||_0x4faa9e[_0x2e8d66(0x17f)]===0x1&&(_0x1cbc11['nXHgk'](_0x4faa9e[0x0],'*')||_0x1cbc11['nXHgk'](_0x4faa9e[0x0][_0x2e8d66(0x1e3)](),'all')),_0x41501b=_0x4fc952?'*':_0x4faa9e[_0x2e8d66(0x1e5)](',\x20');_0x38d39e+='\x0aSELECT\x20'+_0x41501b+'\x0aFROM\x20'+_0x138b55;if(_0x520d29){const _0x46c2da=this[_0x2e8d66(0x174)](_0x520d29);_0x46c2da&&(_0x38d39e+=_0x2e8d66(0x1f4)+_0x46c2da);}if(_0x24d145&&_0x24d145[_0x2e8d66(0x17f)]>0x0){const _0x38ef2d=this['buildOrderByClause'](_0x24d145);_0x38ef2d&&(_0x38d39e+=_0x2e8d66(0x1d8)+_0x38ef2d);}logger['info']({'event':_0x1cbc11['WlUiK'],'query':_0x38d39e[_0x2e8d66(0x1bd)](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0x52cc55=await executeQuery(_0x38d39e);let _0x277bbd=_0x52cc55;return _0x1cbc11['hgbgn'](dbType,'oracle')&&_0x52cc55&&_0x1cbc11[_0x2e8d66(0x195)](_0x52cc55[_0x2e8d66(0x17f)],0x0)&&(_0x277bbd=_0x52cc55[_0x2e8d66(0x19e)](_0x248dbb=>{const _0x251752=_0x2e8d66,_0x3a7908={};for(const [_0x50222c,_0x2c09f3]of Object['entries'](_0x248dbb)){_0x3a7908[_0x50222c[_0x251752(0x1e3)]()]=_0x2c09f3;}return _0x3a7908;})),logger['info']({'event':_0x2e8d66(0x18d),'rows':_0x277bbd[_0x2e8d66(0x17f)]},_0x1cbc11[_0x2e8d66(0x1b2)]),_0x277bbd;}catch(_0x3c31c9){_0x1cbc11['tgZyv'](logError,_0x3c31c9,{'event':_0x1cbc11['RZliq']},'Failed\x20to\x20fetch\x20data');throw _0x3c31c9;}}[a0_0x2da729(0x175)](_0x526a8d){const _0x46c7bd=a0_0x2da729,_0x326f5a={'Lijrx':_0x46c7bd(0x18e)};if(typeof _0x526a8d===_0x326f5a['Lijrx'])return _0x526a8d[_0x46c7bd(0x1a5)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array['isArray'](_0x526a8d))return _0x526a8d[_0x46c7bd(0x19e)](_0x2793c5=>this[_0x46c7bd(0x175)](_0x2793c5));}return _0x526a8d;}[a0_0x2da729(0x174)](_0x4f7bfe){const _0x5816a4=a0_0x2da729,_0x3d71db={'nrGvg':_0x5816a4(0x18e),'OONYs':function(_0x1447bb,_0x16ccc5){return _0x1447bb||_0x16ccc5;},'EpSms':_0x5816a4(0x18a),'iCLTr':function(_0x43b80b,_0x52b13){return _0x43b80b===_0x52b13;},'HiUDl':'LIKE','Dvrbj':'Unknown\x20operator,\x20using\x20=\x20as\x20default','WvImA':function(_0x33446f,_0x219018){return _0x33446f===_0x219018;},'QfGpV':'\x20OR\x20','eBCvo':'\x20AND\x20'};if(!_0x4f7bfe||!_0x4f7bfe['conditions']||_0x3d71db[_0x5816a4(0x1b1)](_0x4f7bfe[_0x5816a4(0x1a8)]['length'],0x0))return'';const {logic:_0x206734,conditions:_0x276e58}=_0x4f7bfe,_0x354f48=_0x206734&&_0x206734[_0x5816a4(0x1bc)]()==='OR'?_0x3d71db['QfGpV']:_0x3d71db['eBCvo'],_0x41e458=_0x276e58['map'](_0x435255=>{const _0x1854cb=_0x5816a4,_0x5e4881={'dyMlT':_0x3d71db['nrGvg']},{key:_0x329a2a,operator:_0xe49c39,value:_0x1dbf76,sensitive:_0x274ff4}=_0x435255;if(_0x3d71db['OONYs'](!_0x329a2a,!_0xe49c39))return logger[_0x1854cb(0x1c0)]({'event':_0x1854cb(0x1d3),'condition':_0x435255},_0x3d71db['EpSms']),null;const _0x4b1d52=this[_0x1854cb(0x175)](_0x1dbf76),_0x9ab527=_0x274ff4!==undefined?_0x274ff4:!![];let _0xbc006e=_0x329a2a,_0x3a25db=_0x4b1d52;!_0x9ab527&&(_0xbc006e='UPPER('+_0x329a2a+')',typeof _0x1dbf76===_0x1854cb(0x18e)&&(_0x3a25db=_0x1dbf76['toUpperCase']()));const _0x3c0a53=_0x3d71db[_0x1854cb(0x1d7)](typeof _0x3a25db,'string')?'\x27'+_0x3a25db['replace'](/'/g,'\x27\x27')+'\x27':_0x3a25db;switch(_0xe49c39['toUpperCase']()){case'=':case'!=':case'<>':return _0xbc006e+'\x20'+_0xe49c39+'\x20'+_0x3c0a53;case'>':case'<':case'>=':case'<=':const _0x2803f9=typeof _0x4b1d52===_0x3d71db['nrGvg']?'\x27'+_0x4b1d52[_0x1854cb(0x1a5)](/'/g,'\x27\x27')+'\x27':_0x4b1d52;return _0x329a2a+'\x20'+_0xe49c39+'\x20'+_0x2803f9;case _0x3d71db['HiUDl']:case _0x1854cb(0x171):return _0xbc006e+'\x20'+_0xe49c39+'\x20'+_0x3c0a53;case'IN':if(Array[_0x1854cb(0x1e4)](_0x4b1d52)){let _0x38b1db;return!_0x9ab527?_0x38b1db=_0x4b1d52[_0x1854cb(0x19e)](_0xe9f82e=>{const _0x1dc6ab=typeof _0xe9f82e===_0x5e4881['dyMlT']?_0xe9f82e['toUpperCase']():_0xe9f82e;return typeof _0x1dc6ab==='string'?'\x27'+_0x1dc6ab['replace'](/'/g,'\x27\x27')+'\x27':_0x1dc6ab;})['join'](',\x20'):_0x38b1db=_0x4b1d52['map'](_0x47bf4d=>typeof _0x47bf4d==='string'?'\x27'+_0x47bf4d[_0x1854cb(0x1a5)](/'/g,'\x27\x27')+'\x27':_0x47bf4d)[_0x1854cb(0x1e5)](',\x20'),_0xbc006e+_0x1854cb(0x1e0)+_0x38b1db+')';}return _0xbc006e+'\x20IN\x20('+_0x3c0a53+')';case _0x1854cb(0x17c):return _0x329a2a+_0x1854cb(0x17d);case'IS\x20NOT\x20NULL':return _0x329a2a+_0x1854cb(0x1e6);default:logger['warn']({'event':'unknown_operator','operator':_0xe49c39},_0x3d71db[_0x1854cb(0x173)]);return _0xbc006e+_0x1854cb(0x1cc)+_0x3c0a53;}})['filter'](_0x56d593=>_0x56d593!==null);if(_0x41e458[_0x5816a4(0x17f)]===0x0)return'';return _0x41e458['join'](_0x354f48);}[a0_0x2da729(0x1f3)](_0x4e2200){const _0x393db7=a0_0x2da729,_0x15ec4d={'nsIfi':_0x393db7(0x1c4),'kombM':'DESC','AXrhD':function(_0x36af6b,_0x11afcf){return _0x36af6b===_0x11afcf;},'nOxqD':function(_0x13ed50,_0x240799){return _0x13ed50===_0x240799;}};if(!_0x4e2200||_0x15ec4d[_0x393db7(0x186)](_0x4e2200['length'],0x0))return'';const _0x449a59=_0x4e2200[_0x393db7(0x19e)](_0x4df0d2=>{const _0x1101ac=_0x393db7,{column:_0x1766ba,direction:_0x1c1948}=_0x4df0d2;if(!_0x1766ba)return logger['warn']({'event':'invalid_order','item':_0x4df0d2},_0x15ec4d[_0x1101ac(0x1db)]),null;const _0x597f79=_0x1c1948&&_0x1c1948[_0x1101ac(0x1bc)]()===_0x15ec4d['kombM']?_0x15ec4d[_0x1101ac(0x1a3)]:'ASC';return _0x1766ba+'\x20'+_0x597f79;})['filter'](_0xd9ddcd=>_0xd9ddcd!==null);if(_0x15ec4d['nOxqD'](_0x449a59[_0x393db7(0x17f)],0x0))return'';return _0x449a59['join'](',\x20');}async[a0_0x2da729(0x1b8)](_0xbbbea7,_0x57a1a9,_0x36545a){const _0x173317=a0_0x2da729,_0x201960={'ACwLh':function(_0x4e1528,_0xe2899e){return _0x4e1528/_0xe2899e;},'NgaHd':function(_0x344540,_0x208f81){return _0x344540(_0x208f81);},'IqCTz':_0x173317(0x1dd),'HnzLH':function(_0x52e8e2,_0x5aaa11){return _0x52e8e2===_0x5aaa11;},'LHCXx':function(_0x55d6d2,_0x21570d){return _0x55d6d2===_0x21570d;},'VarhN':'all','VKfnG':function(_0x1566c4,_0x32ca2b){return _0x1566c4>_0x32ca2b;},'snfUi':function(_0x5895b6,_0x3769db){return _0x5895b6>_0x3769db;},'LeBLm':function(_0x318d9c,_0x5a44b6){return _0x318d9c>_0x5a44b6;},'jMtpR':'excel_columns_fallback','nZuyH':'excel_columns_from_query_result','hlfXz':'excel_columns_from_config'},_0x5e1b56=_0x201960['NgaHd'](require,_0x201960[_0x173317(0x16b)]),_0x2f1210=new _0x5e1b56(),_0x59a6ee=_0x36545a[_0x173317(0x1bf)]?_0x36545a['filename']+'-'+_0xbbbea7:_0x173317(0x1e1)+_0xbbbea7,_0x9009d8=path['join'](this['exportDir'],_0x59a6ee+'.xlsx');let _0x51f5ba=_0x36545a[_0x173317(0x19f)];const _0x225a36=_0x51f5ba&&_0x51f5ba[_0x173317(0x17f)]===0x1&&(_0x201960[_0x173317(0x1e7)](_0x51f5ba[0x0],'*')||_0x201960[_0x173317(0x1af)](_0x51f5ba[0x0]['toLowerCase'](),_0x201960['VarhN']));if(_0x201960['VKfnG'](_0x57a1a9[_0x173317(0x17f)],0x0)){const _0x576daa=Object['keys'](_0x57a1a9[0x0]);if(_0x225a36)_0x51f5ba=_0x576daa,logger['info']({'event':_0x173317(0x19c),'columns':_0x51f5ba},'Using\x20all\x20'+_0x51f5ba[_0x173317(0x17f)]+_0x173317(0x190));else{if(_0x51f5ba&&_0x201960['snfUi'](_0x51f5ba['length'],0x0)){const _0x2332aa=_0x51f5ba[_0x173317(0x1f0)](_0x9f749a=>_0x576daa[_0x173317(0x1ed)](_0x9f749a));_0x201960[_0x173317(0x1a2)](_0x2332aa['length'],0x0)?(_0x51f5ba=_0x2332aa,logger['info']({'event':'excel_columns_from_request','requestedColumns':_0x36545a[_0x173317(0x19f)],'validColumns':_0x51f5ba},_0x173317(0x194)+_0x51f5ba['length']+'\x20columns\x20from\x20request')):(_0x51f5ba=_0x576daa,logger[_0x173317(0x1c0)]({'event':_0x201960['jMtpR'],'requestedColumns':_0x36545a[_0x173317(0x19f)],'availableColumns':_0x576daa},_0x173317(0x1ad)+_0x576daa[_0x173317(0x17f)]+'\x20columns'));}else _0x51f5ba=_0x576daa,logger['info']({'event':_0x201960[_0x173317(0x1f7)],'columns':_0x51f5ba},'Using\x20'+_0x51f5ba[_0x173317(0x17f)]+_0x173317(0x1f6));}}else logger[_0x173317(0x1ee)]({'event':_0x201960[_0x173317(0x170)],'columns':_0x51f5ba},_0x173317(0x194)+(_0x51f5ba?.[_0x173317(0x17f)]||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0x2f1210['generate']({'data':_0x57a1a9,'columns':_0x51f5ba,'columnFormats':_0x36545a['columnFormats']||null,'fieldLabels':_0x36545a['fieldLabels']||null,'filePath':_0x9009d8,'onProgress':async _0x2f81a0=>{const _0x372b61=_0x173317;await redisHelper['updateJob'](_0xbbbea7,{'progress':Math[_0x372b61(0x197)](_0x2f81a0),'processed_rows':Math['round'](_0x201960[_0x372b61(0x196)](_0x2f81a0,0x64)*_0x57a1a9[_0x372b61(0x17f)])});}}),_0x9009d8;}async[a0_0x2da729(0x1b6)](_0x54434f){const _0x4e2ec1=a0_0x2da729,_0x90957e={'BuFIn':function(_0x5a429d,_0x4980e1){return _0x5a429d!==_0x4980e1;},'PqfYR':'completed','hcXgx':_0x4e2ec1(0x1ba)},_0x12526d=await redisHelper[_0x4e2ec1(0x181)](_0x54434f);if(!_0x12526d||_0x90957e[_0x4e2ec1(0x1c7)](_0x12526d['status'],_0x90957e[_0x4e2ec1(0x1c6)]))return null;try{return await fs[_0x4e2ec1(0x1b7)](_0x12526d['file_path']),_0x12526d[_0x4e2ec1(0x1be)];}catch(_0x2a472d){return logError(_0x2a472d,{'event':_0x4e2ec1(0x1a0),'jobId':_0x54434f,'path':_0x12526d[_0x4e2ec1(0x1be)]},_0x90957e[_0x4e2ec1(0x1d2)]),null;}}async['cleanup'](){const _0x292f1e=a0_0x2da729,_0xff39ae={'LuaJd':_0x292f1e(0x1a7),'oypml':function(_0x38bb3b,_0x2ff4a5){return _0x38bb3b/_0x2ff4a5;},'XAyOF':function(_0xbe0ef0,_0x4d0063){return _0xbe0ef0-_0x4d0063;},'dbLgW':function(_0x47ea70,_0x4e6b52){return _0x47ea70*_0x4e6b52;},'JkHxR':'Export\x20file\x20deleted','xfOFe':'export_file_delete_error','neXoy':_0x292f1e(0x1d6)};logger[_0x292f1e(0x1ee)]({'event':_0x292f1e(0x1b3)},_0xff39ae[_0x292f1e(0x1f1)]);const _0x1ee191=await redisHelper[_0x292f1e(0x16f)]();let _0x9d2d80=0x0;for(const _0xda3077 of _0x1ee191){const _0x172e6d=new Date(_0xda3077[_0x292f1e(0x1d4)]),_0x1f85e8=new Date(),_0x2785a7=_0xff39ae['oypml'](_0xff39ae['XAyOF'](_0x1f85e8,_0x172e6d),_0xff39ae['dbLgW'](0x3e8,0x3c)*0x3c);if(_0x2785a7>0x1){if(_0xda3077[_0x292f1e(0x1be)])try{await fs['unlink'](_0xda3077[_0x292f1e(0x1be)]),logger[_0x292f1e(0x1ee)]({'event':_0x292f1e(0x16e),'path':_0xda3077['file_path']},_0xff39ae['JkHxR']);}catch(_0x236d6d){logger['warn']({'event':_0xff39ae['xfOFe'],'path':_0xda3077['file_path'],'error':_0x236d6d['message']},_0x292f1e(0x1f9));}await redisHelper[_0x292f1e(0x18b)](_0xda3077['job_id']),_0x9d2d80++;}}return logger['info']({'event':'export_cleanup_complete','deleted':_0x9d2d80},_0xff39ae[_0x292f1e(0x19b)]),_0x9d2d80;}}function a0_0x58c9(_0x47c4c6,_0x36778f){_0x47c4c6=_0x47c4c6-0x16b;const _0x31ba9c=a0_0x31ba();let _0x58c914=_0x31ba9c[_0x47c4c6];if(a0_0x58c9['QzTwcQ']===undefined){var _0x315475=function(_0x1f9f9c){const _0xb32fd0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57cbeb='',_0x43fe48='';for(let _0xd27be5=0x0,_0x3d8160,_0x15980f,_0x10a17c=0x0;_0x15980f=_0x1f9f9c['charAt'](_0x10a17c++);~_0x15980f&&(_0x3d8160=_0xd27be5%0x4?_0x3d8160*0x40+_0x15980f:_0x15980f,_0xd27be5++%0x4)?_0x57cbeb+=String['fromCharCode'](0xff&_0x3d8160>>(-0x2*_0xd27be5&0x6)):0x0){_0x15980f=_0xb32fd0['indexOf'](_0x15980f);}for(let _0x506b3d=0x0,_0x16e90c=_0x57cbeb['length'];_0x506b3d<_0x16e90c;_0x506b3d++){_0x43fe48+='%'+('00'+_0x57cbeb['charCodeAt'](_0x506b3d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43fe48);};a0_0x58c9['rhxUiG']=_0x315475,a0_0x58c9['fbpInY']={},a0_0x58c9['QzTwcQ']=!![];}const _0x4ff433=_0x31ba9c[0x0],_0xda9b65=_0x47c4c6+_0x4ff433,_0x17afd4=a0_0x58c9['fbpInY'][_0xda9b65];return!_0x17afd4?(_0x58c914=a0_0x58c9['rhxUiG'](_0x58c914),a0_0x58c9['fbpInY'][_0xda9b65]=_0x58c914):_0x58c914=_0x17afd4,_0x58c914;}module['exports']=new ExportService();
|
|
1
|
+
const a0_0x2c5d82=a0_0x1628;(function(_0x5a5f25,_0x60b3d5){const _0x2bc213=a0_0x1628,_0x4499e8=_0x5a5f25();while(!![]){try{const _0x4a6195=-parseInt(_0x2bc213(0xe3))/0x1+parseInt(_0x2bc213(0xe4))/0x2+parseInt(_0x2bc213(0xfe))/0x3*(parseInt(_0x2bc213(0x14f))/0x4)+parseInt(_0x2bc213(0x10a))/0x5*(-parseInt(_0x2bc213(0x110))/0x6)+parseInt(_0x2bc213(0x146))/0x7+-parseInt(_0x2bc213(0x128))/0x8*(-parseInt(_0x2bc213(0x15e))/0x9)+parseInt(_0x2bc213(0xd9))/0xa*(-parseInt(_0x2bc213(0x112))/0xb);if(_0x4a6195===_0x60b3d5)break;else _0x4499e8['push'](_0x4499e8['shift']());}catch(_0x4a1460){_0x4499e8['push'](_0x4499e8['shift']());}}}(a0_0x3621,0xbbe97));function a0_0x3621(){const _0x6f61bc=['iefticGkicaGifnftevdvca','y29Kzq','Aw5JBhvKzxm','C3vIC3rYAw5N','mJiWmZvzu3PSruy','zxHWB3j0rgLY','AM9Ix2LK','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','zxHWB3j0x2PVyL9JCMvHDgvK','CMvWBgfJzq','zMfPBgvK','C3rYAw5N','A0PmBfi','BgvUz3rO','zMLSztO','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','nJvRtfHRywO','CvbIswy','CgfYyw1Z','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','zgvSzxrLsM9I','zMLSzw5HBwu','mZi5nde4yNnQueXn','Eur0ExC','mti1mdGXsgfhAMHf','zxHWB3j0x3bYB2nLC3nFzxjYB3i','zwTwA0G','zxHLy3v0zvf1zxj5','lI4VlI4Vy29Yzs91DgLSCY9KyG','Dg9mB3DLCKnHC2u','y29SDw1UrM9YBwf0CW','rxHWB3j0igPVyIbJCMvHDgvK','uKLuuKu','Dw5RBM93BL9VCgvYyxrVCG','rxHWB3j0igzPBguGBM90igzVDw5K','ChjVz3jLC3m','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','B3jHy2XL','zxH1yMq','BwfW','z3rxyxC','zxHWB3j0x2nSzwfUDxbFC3rHCNq','zxjYB3i','rNjWsuS','zeTNwg4','CMvZB2X2zuv4Cg9YDff1zxj5','mJKZnKfcqu53zq','y3jLyxrLsM9I','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','AM9PBG','CMfUzg9T','ru5pru5u','BuLque0','BwvZC2fNzq','Dg9ju09tDhjPBMC','AfjtsMm','C2fUAxrPEMvwywX1zq','y29UzgL0Aw9UCW','zMLSDgvY','CMvZB2X2zq','Dg9vChbLCKnHC2u','svmGtLvmta','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','CMvHzezPBgvtEw5J','zNDOBhO','ywXS','vxnPBMCG','A2v5CW','vvbqrviO','zxHJzwXFy29SDw1UC19MywXSyMfJAW','Bw9KDwXLtMfTzq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','v0Lusca','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','zw52','nJy2otKWoejVCerRwa','t2H4t2q','y29TCgXLDgvK','rMfPBgvKihrVigzLDgnOigrHDge','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','shDer2y','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','qvnd','nJiWzKv1z0D3','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK','CM91BMq','AxnbCNjHEq','DhjPBq','Eejrshm','ywnJzxnZ','Aw5MBW','zw5KCg9PBNroyw1L','zxHWB3j0x2nVBxbSzxrLza','rMv0y2HPBMCGzgf0ysbMCM9TigrHDgfIyxnL','CgvUzgLUzW','v3Hwsxu','EvPeEuS','mty0nZLLr0vTtfO','zMLSzv9WyxrO','zgvMyxvSDa','CxnMvNK','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','C3rHCNrZv2L0Aa','z2v0qwXSsM9ICW','ie9sia','qvvMA0e','D2fYBG','rejFvfLqrq','zxHPC3rZu3LUyW','x2rHDge','lNHSC3G','ze9fz0m','z2vUzxjHDgvfEgnLBa','Dg9tDhjPBMC','uhjWDhy','ChjVBwLZzxm','y3jLyxrLzf9HDa','uwvbvwe','ieLoicG','u3npvgK','zxHWB3j0x2zHAwXLza','mtm3mfvKrMT4sa','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','rLLpzwC','ChjVy2vZC0PVyG','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','z2v0sM9I','zw50CMLLCW','qLHpC3a','q3D0B0e','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','mta1ndmWnM9RrhDQuq','mJy2nduYnK1fs1PtrG','rxHWB3j0igzHAwXLza','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','z2vUzxjHDgvkB2jjza','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','z2v0rMLSzvbHDgG','BMPZzue','zhDqy3m','cIaGicaGicaG','x2v4Cg9YDerPCG','zNzNy24','Dw5SAw5R','q0D5rwq','DxbKyxrLsM9I','tK9uieXjs0u','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','ChjVy2vZC2LUzW','uKXhrwe','y29SDw1UCW','C3rHDhvZ','Cgf0Aa','iefticGkicaGia'];a0_0x3621=function(){return _0x6f61bc;};return a0_0x3621();}const {v7:uuidv7}=require('uuid'),path=require(a0_0x2c5d82(0xf8)),fs=require('fs')[a0_0x2c5d82(0x170)],fsSync=require('fs'),redisHelper=require(a0_0x2c5d82(0xe8)),{logger,logError}=require('../../core/utils/logger'),dbType=(process['env'][a0_0x2c5d82(0x168)]||'postgresql')[a0_0x2c5d82(0x117)]();let executeQuery;function a0_0x1628(_0x97af1a,_0x99e0bd){_0x97af1a=_0x97af1a-0xd9;const _0x36217b=a0_0x3621();let _0x16280d=_0x36217b[_0x97af1a];if(a0_0x1628['TCrIbm']===undefined){var _0x395f4d=function(_0x360754){const _0xd0e536='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3feece='',_0x1f2a00='';for(let _0x13a486=0x0,_0x4bf63a,_0x2f2038,_0x47c9db=0x0;_0x2f2038=_0x360754['charAt'](_0x47c9db++);~_0x2f2038&&(_0x4bf63a=_0x13a486%0x4?_0x4bf63a*0x40+_0x2f2038:_0x2f2038,_0x13a486++%0x4)?_0x3feece+=String['fromCharCode'](0xff&_0x4bf63a>>(-0x2*_0x13a486&0x6)):0x0){_0x2f2038=_0xd0e536['indexOf'](_0x2f2038);}for(let _0x533b2e=0x0,_0x505548=_0x3feece['length'];_0x533b2e<_0x505548;_0x533b2e++){_0x1f2a00+='%'+('00'+_0x3feece['charCodeAt'](_0x533b2e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f2a00);};a0_0x1628['HGDlyk']=_0x395f4d,a0_0x1628['kfRHOe']={},a0_0x1628['TCrIbm']=!![];}const _0x593d7a=_0x36217b[0x0],_0x2b771b=_0x97af1a+_0x593d7a,_0x2c06bc=a0_0x1628['kfRHOe'][_0x2b771b];return!_0x2c06bc?(_0x16280d=a0_0x1628['HGDlyk'](_0x16280d),a0_0x1628['kfRHOe'][_0x2b771b]=_0x16280d):_0x16280d=_0x2c06bc,_0x16280d;}if(dbType===a0_0x2c5d82(0x11f)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x5a0f52,_0x349042)=>oracleDb[a0_0x2c5d82(0x115)](_0x5a0f52,_0x349042);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0x2c5d82(0x12a));executeQuery=(_0x22d72b,_0x2c1003)=>mysqlDb[a0_0x2c5d82(0x115)](_0x22d72b,_0x2c1003);}else executeQuery=require(a0_0x2c5d82(0x116))['executeQuery'];}class ExportService{constructor(){const _0x18d4ba=a0_0x2c5d82;this[_0x18d4ba(0xed)]=null;}get[a0_0x2c5d82(0xff)](){const _0x378067=a0_0x2c5d82,_0x58cfe6={'SsOTi':_0x378067(0xdd),'exubd':function(_0x2276c7,_0x4e434e,_0x4aea4e,_0x589ae7){return _0x2276c7(_0x4e434e,_0x4aea4e,_0x589ae7);},'gtWaw':_0x378067(0xe2)};if(!this[_0x378067(0xed)]){const _0x1d9854=process['env'][_0x378067(0x141)]||_0x378067(0x160);this['_exportDir']=process[_0x378067(0x145)]['EXPORT_DIR']||path['join'](__dirname,'../../exports/'+_0x1d9854);try{!fsSync['existsSync'](this['_exportDir'])&&fsSync['mkdirSync'](this['_exportDir'],{'recursive':!![]}),logger[_0x378067(0x157)]({'event':'export_service_init','dir':this[_0x378067(0xed)]},_0x58cfe6[_0x378067(0x174)]);}catch(_0x159926){_0x58cfe6[_0x378067(0x120)](logError,_0x159926,{'event':_0x58cfe6[_0x378067(0x122)]},'Failed\x20to\x20initialize\x20export\x20service');}}return this[_0x378067(0xed)];}['resolveExportQuery'](_0x45868e,_0xa16253=null){const _0x39289d=a0_0x2c5d82,_0x4bf5c8={'YkWVo':'Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty','eVCzt':'utf8','rGhsT':'export_query_file_loaded','OhxOd':function(_0x2cf35e,_0xf88788){return _0x2cf35e===_0xf88788;},'dOEgC':_0x39289d(0x12d)};if(!_0x45868e||typeof _0x45868e!==_0x39289d(0x105))return _0x45868e;const _0xe8948=_0x45868e['trim']();if(!_0xe8948['startsWith']('file:'))return _0xe8948;const _0x5a573a=_0xe8948['replace'](/^file:/,'')['trim']();if(!_0x5a573a)throw new Error(_0x4bf5c8['YkWVo']);const _0x1098e2=_0xa16253||path['join'](process['cwd'](),'payload'),_0x51d369=path[_0x39289d(0x135)](_0x1098e2,_0x5a573a);logger['info']({'event':_0x39289d(0xe6),'relativePath':_0x5a573a,'baseDir':_0x1098e2,'absolutePath':_0x51d369},_0x39289d(0x14c)+_0x5a573a);if(!fsSync[_0x39289d(0x169)](_0x51d369))throw new Error(_0x39289d(0x144)+_0x51d369);try{const _0x25ae18=fsSync[_0x39289d(0x139)](_0x51d369,_0x4bf5c8['eVCzt']);if(!_0x25ae18||!_0x25ae18['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x51d369);return logger['info']({'event':_0x4bf5c8['rGhsT'],'file':_0x51d369,'queryLength':_0x25ae18['length']},_0x39289d(0xf3)+_0x25ae18['length']+'\x20chars)'),_0x25ae18['trim']();}catch(_0x24f8ff){if(_0x4bf5c8[_0x39289d(0x147)](_0x24f8ff[_0x39289d(0xfb)],_0x4bf5c8[_0x39289d(0x16c)]))throw new Error(_0x39289d(0x144)+_0x51d369);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x24f8ff[_0x39289d(0x12f)]);}}[a0_0x2c5d82(0xe7)](){const _0x468b95=a0_0x2c5d82,_0x3fa482={'yDtyw':function(_0x467157){return _0x467157();},'iIsiH':function(_0x2d3df3,_0x2070a3){return _0x2d3df3+_0x2070a3;}},_0x3e35fd=_0x468b95(0x10d),_0x81f87f=Date['now']()[_0x468b95(0x16e)](0x24),_0x8c00=_0x3fa482[_0x468b95(0x111)](uuidv7)[_0x468b95(0x103)](/-/g,'')[_0x468b95(0xfd)](0x0,0xc-_0x81f87f[_0x468b95(0x107)]),_0x27826b=_0x3fa482['iIsiH'](_0x81f87f,_0x8c00)['substring'](0x0,0xc);let _0x36b22a='';for(let _0x1cb1b6=0x0;_0x1cb1b6<0xc;_0x1cb1b6++){_0x27826b[_0x1cb1b6]?_0x36b22a+=_0x27826b[_0x1cb1b6]:_0x36b22a+=_0x3e35fd['charAt'](Math['floor'](Math[_0x468b95(0x12c)]()*_0x3e35fd[_0x468b95(0x107)]));}return _0x36b22a;}async[a0_0x2c5d82(0x129)](_0x1b1b2e){const _0x43518b=a0_0x2c5d82,_0x3403e3={'WFCLH':function(_0x49edef,_0x2be555,_0x374356,_0x3a8e35){return _0x49edef(_0x2be555,_0x374356,_0x3a8e35);},'cQqbD':_0x43518b(0x113),'BXOsp':_0x43518b(0xda),'yZDyK':_0x43518b(0x15b),'hqDjm':_0x43518b(0x102)},_0x100ab2=this['generateJobId'](),_0xcd80aa={'job_id':_0x100ab2,'status':_0x3403e3[_0x43518b(0x15d)],'progress':0x0,'created_at':new Date()[_0x43518b(0x130)](),'params':_0x1b1b2e,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x100ab2,_0xcd80aa),logger[_0x43518b(0x157)]({'event':_0x3403e3['hqDjm'],'jobId':_0x100ab2,'params':_0x1b1b2e},_0x43518b(0x119)),this[_0x43518b(0xdc)](_0x100ab2,_0x1b1b2e)['catch'](_0x3bb498=>{const _0x2260d5=_0x43518b;_0x3403e3['WFCLH'](logError,_0x3bb498,{'event':_0x3403e3['cQqbD'],'jobId':_0x100ab2},_0x3403e3[_0x2260d5(0xe0)]);}),{'job_id':_0x100ab2,'status':_0x3403e3['yZDyK']};}async['getJobStatus'](_0x5d5a90){const _0x6c90e9=a0_0x2c5d82,_0x826e0e={'HwDGf':function(_0xb0d1dd,_0x2eb375){return _0xb0d1dd===_0x2eb375;},'fgSsx':_0x6c90e9(0x148)},_0x39efa6=await redisHelper[_0x6c90e9(0xde)](_0x5d5a90);if(!_0x39efa6)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x39efa6[_0x6c90e9(0x100)],'status':_0x39efa6[_0x6c90e9(0xf7)],'progress':_0x39efa6[_0x6c90e9(0x11d)],'total_rows':_0x39efa6['total_rows'],'processed_rows':_0x39efa6['processed_rows'],'file_url':_0x826e0e[_0x6c90e9(0x14b)](_0x39efa6[_0x6c90e9(0xf7)],_0x826e0e['fgSsx'])?'/api/'+_0x39efa6[_0x6c90e9(0x10c)][_0x6c90e9(0x140)]+'/'+_0x39efa6[_0x6c90e9(0x10c)][_0x6c90e9(0x158)]+_0x6c90e9(0x143)+_0x5d5a90:null,'error':_0x39efa6[_0x6c90e9(0x124)]||null,'created_at':_0x39efa6[_0x6c90e9(0x171)],'completed_at':_0x39efa6['completed_at']||null}};}async['processJob'](_0x14cecd,_0x297207){const _0xa513ec=a0_0x2c5d82,_0x1410d2={'ZhMOO':'Export\x20completed\x20successfully','bXLlh':_0xa513ec(0xe5),'KVjxP':_0xa513ec(0x104)};try{await redisHelper['updateJob'](_0x14cecd,{'status':_0xa513ec(0xf4),'started_at':new Date()['toISOString']()}),logger[_0xa513ec(0x157)]({'event':'export_processing_start','jobId':_0x14cecd},'Export\x20processing\x20started');const _0x42ad96=await this['fetchData'](_0x297207);await redisHelper['updateJob'](_0x14cecd,{'total_rows':_0x42ad96['length']});const _0x3f09dc=await this['generateExcel'](_0x14cecd,_0x42ad96,_0x297207);await redisHelper[_0xa513ec(0xf1)](_0x14cecd,{'status':_0xa513ec(0x148),'progress':0x64,'file_path':_0x3f09dc,'completed_at':new Date()['toISOString']()}),logger[_0xa513ec(0x157)]({'event':_0xa513ec(0x159),'jobId':_0x14cecd,'rows':_0x42ad96['length']},_0x1410d2['ZhMOO']);}catch(_0x185bc4){logError(_0x185bc4,{'event':_0xa513ec(0x175),'jobId':_0x14cecd},_0x1410d2['bXLlh']),await redisHelper['updateJob'](_0x14cecd,{'status':_0x1410d2['KVjxP'],'error':_0x185bc4[_0xa513ec(0x12f)],'failed_at':new Date()[_0xa513ec(0x130)]()});}}async['fetchData'](_0x5b0d2b){const _0x313189=a0_0x2c5d82,_0x3fcfce={'PLnZl':function(_0x499f37,_0x32e241){return _0x499f37===_0x32e241;},'AUfkA':_0x313189(0x109),'tMTHc':_0x313189(0x16a),'zqzSR':_0x313189(0x108),'hXHKX':_0x313189(0x162),'CGyEd':'Using\x20custom\x20exportQuery','dwPcs':_0x313189(0x151),'cCDwH':_0x313189(0x14a),'XTnnB':_0x313189(0x13b),'njseA':function(_0x48d9c4,_0x3b9d6f){return _0x48d9c4>_0x3b9d6f;},'RITRE':_0x313189(0x15a),'kJLlR':_0x313189(0x11f),'LgKwb':'export_fetch_complete','hRSJc':'Data\x20fetched\x20successfully','UmWXC':function(_0x3d9b40,_0x3e0d16,_0x15b748,_0x531f29){return _0x3d9b40(_0x3e0d16,_0x15b748,_0x531f29);},'vcbAC':_0x313189(0x149)};try{const {tableName:_0x40b9f7,columns:_0x2f1401,exportQuery:_0x5b836e,where:_0x391f78,sort_columns:_0x5132e5}=_0x5b0d2b;if(!_0x40b9f7||!_0x2f1401||_0x3fcfce['PLnZl'](_0x2f1401['length'],0x0))throw new Error(_0x3fcfce[_0x313189(0x166)]);const _0x23a055=_0x40b9f7['replace'](/\./g,'_')+_0x3fcfce['tMTHc'];let _0x5e85a7;if(_0x5b836e&&_0x5b836e['trim']()){let _0x1f74a7=_0x5b836e;_0x5b836e[_0x313189(0x154)]()[_0x313189(0x163)](_0x3fcfce['zqzSR'])&&(_0x1f74a7=this[_0x313189(0x127)](_0x5b836e)),_0x5e85a7=_0x313189(0x142)+_0x23a055+_0x313189(0xf9)+_0x1f74a7+'\x0a)',logger[_0x313189(0x157)]({'event':_0x3fcfce['hXHKX'],'query':_0x1f74a7['substring'](0x0,0x64)},_0x3fcfce[_0x313189(0xf0)]);}else{const _0x5551f3=_0x2f1401[_0x313189(0x121)](_0x193b88=>_0x313189(0xec)+_0x193b88)['join'](',');_0x5e85a7=_0x313189(0x142)+_0x23a055+_0x313189(0xfa)+_0x5551f3+'\x0a\x20\x20\x20\x20FROM\x20'+_0x40b9f7+'\x0a)',logger[_0x313189(0x157)]({'event':_0x3fcfce[_0x313189(0xeb)],'tableName':_0x40b9f7,'columnCount':_0x2f1401[_0x313189(0x107)]},_0x3fcfce['cCDwH']);}const _0x28c7d6=!_0x2f1401||_0x2f1401['length']===0x0||_0x2f1401['length']===0x1&&(_0x2f1401[0x0]==='*'||_0x2f1401[0x0]['toLowerCase']()===_0x3fcfce['XTnnB']),_0xb93905=_0x28c7d6?'*':_0x2f1401['join'](',\x20');_0x5e85a7+='\x0aSELECT\x20'+_0xb93905+'\x0aFROM\x20'+_0x23a055;if(_0x391f78){const _0x49492d=this['buildWhereClause'](_0x391f78);_0x49492d&&(_0x5e85a7+='\x0aWHERE\x20'+_0x49492d);}if(_0x5132e5&&_0x3fcfce[_0x313189(0xea)](_0x5132e5['length'],0x0)){const _0x3585a2=this['buildOrderByClause'](_0x5132e5);_0x3585a2&&(_0x5e85a7+='\x0aORDER\x20BY\x20'+_0x3585a2);}logger[_0x313189(0x157)]({'event':'export_fetch_start','query':_0x5e85a7[_0x313189(0xfd)](0x0,0xc8)},_0x3fcfce[_0x313189(0x11a)]);const _0x2e4766=await executeQuery(_0x5e85a7);let _0x398657=_0x2e4766;return _0x3fcfce['PLnZl'](dbType,_0x3fcfce[_0x313189(0x106)])&&_0x2e4766&&_0x2e4766['length']>0x0&&(_0x398657=_0x2e4766[_0x313189(0x121)](_0x1e6618=>{const _0x272811=_0x313189,_0x5576cd={};for(const [_0x287066,_0x459408]of Object[_0x272811(0xdf)](_0x1e6618)){_0x5576cd[_0x287066[_0x272811(0x117)]()]=_0x459408;}return _0x5576cd;})),logger[_0x313189(0x157)]({'event':_0x3fcfce['LgKwb'],'rows':_0x398657[_0x313189(0x107)]},_0x3fcfce[_0x313189(0x131)]),_0x398657;}catch(_0x4e1ea7){_0x3fcfce['UmWXC'](logError,_0x4e1ea7,{'event':'export_fetch_error'},_0x3fcfce['vcbAC']);throw _0x4e1ea7;}}['sanitizeValue'](_0xf60def){const _0x548406=a0_0x2c5d82,_0x35b496={'xBQHs':function(_0x2458cb,_0x45d643){return _0x2458cb===_0x45d643;},'xmCUP':'string'};if(_0x35b496[_0x548406(0x155)](typeof _0xf60def,_0x35b496['xmCUP']))return _0xf60def['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array['isArray'](_0xf60def))return _0xf60def['map'](_0x43e54e=>this[_0x548406(0x132)](_0x43e54e));}return _0xf60def;}['buildWhereClause'](_0x5e5053){const _0x466a62=a0_0x2c5d82,_0x4db394={'fYRzp':function(_0x309e3f,_0x1eff2b){return _0x309e3f===_0x1eff2b;},'OiyyL':'string','CwtoA':function(_0x138ef9,_0x3db86f){return _0x138ef9===_0x3db86f;},'rUVqn':function(_0x59d684,_0x3d155f){return _0x59d684===_0x3d155f;},'qsfVy':'LIKE','kuBXv':_0x466a62(0x137),'FYOeg':_0x466a62(0x11b),'RLGEa':_0x466a62(0x165)};if(!_0x5e5053||!_0x5e5053[_0x466a62(0x133)]||_0x5e5053[_0x466a62(0x133)][_0x466a62(0x107)]===0x0)return'';const {logic:_0x2c06b1,conditions:_0x2c0ef3}=_0x5e5053,_0x2e4ef2=_0x2c06b1&&_0x2c06b1[_0x466a62(0x136)]()==='OR'?_0x4db394[_0x466a62(0xf5)]:'\x20AND\x20',_0x3ea47f=_0x2c0ef3[_0x466a62(0x121)](_0x3a74be=>{const _0x2034a2=_0x466a62,{key:_0x333d8e,operator:_0x105440,value:_0x43ab3f,sensitive:_0x5c1c69}=_0x3a74be;if(!_0x333d8e||!_0x105440)return logger[_0x2034a2(0x167)]({'event':'invalid_condition','condition':_0x3a74be},'Skipping\x20invalid\x20condition'),null;const _0x3d068e=this['sanitizeValue'](_0x43ab3f),_0x46b43d=_0x5c1c69!==undefined?_0x5c1c69:!![];let _0x2f568e=_0x333d8e,_0x15361b=_0x3d068e;!_0x46b43d&&(_0x2f568e=_0x2034a2(0x13e)+_0x333d8e+')',_0x4db394[_0x2034a2(0xe1)](typeof _0x43ab3f,_0x2034a2(0x105))&&(_0x15361b=_0x43ab3f[_0x2034a2(0x136)]()));const _0x53660b=_0x4db394['rUVqn'](typeof _0x15361b,_0x2034a2(0x105))?'\x27'+_0x15361b['replace'](/'/g,'\x27\x27')+'\x27':_0x15361b;switch(_0x105440['toUpperCase']()){case'=':case'!=':case'<>':return _0x2f568e+'\x20'+_0x105440+'\x20'+_0x53660b;case'>':case'<':case'>=':case'<=':const _0x2dab05=typeof _0x3d068e===_0x4db394['OiyyL']?'\x27'+_0x3d068e['replace'](/'/g,'\x27\x27')+'\x27':_0x3d068e;return _0x333d8e+'\x20'+_0x105440+'\x20'+_0x2dab05;case _0x4db394[_0x2034a2(0x161)]:case _0x2034a2(0xf2):return _0x2f568e+'\x20'+_0x105440+'\x20'+_0x53660b;case'IN':if(Array[_0x2034a2(0x153)](_0x3d068e)){let _0x52cabe;return!_0x46b43d?_0x52cabe=_0x3d068e[_0x2034a2(0x121)](_0x497ff6=>{const _0x25f6c6=_0x2034a2,_0x1deb7b=_0x4db394['fYRzp'](typeof _0x497ff6,_0x4db394['OiyyL'])?_0x497ff6[_0x25f6c6(0x136)]():_0x497ff6;return _0x4db394['fYRzp'](typeof _0x1deb7b,_0x25f6c6(0x105))?'\x27'+_0x1deb7b['replace'](/'/g,'\x27\x27')+'\x27':_0x1deb7b;})[_0x2034a2(0x12b)](',\x20'):_0x52cabe=_0x3d068e[_0x2034a2(0x121)](_0x2c8e5a=>typeof _0x2c8e5a===_0x2034a2(0x105)?'\x27'+_0x2c8e5a['replace'](/'/g,'\x27\x27')+'\x27':_0x2c8e5a)[_0x2034a2(0x12b)](',\x20'),_0x2f568e+'\x20IN\x20('+_0x52cabe+')';}return _0x2f568e+_0x2034a2(0x173)+_0x53660b+')';case _0x4db394['kuBXv']:return _0x333d8e+'\x20IS\x20NULL';case'IS\x20NOT\x20NULL':return _0x333d8e+'\x20IS\x20NOT\x20NULL';default:logger['warn']({'event':_0x4db394[_0x2034a2(0xdb)],'operator':_0x105440},_0x2034a2(0x138));return _0x2f568e+'\x20=\x20'+_0x53660b;}})['filter'](_0x102ade=>_0x102ade!==null);if(_0x3ea47f['length']===0x0)return'';return _0x3ea47f[_0x466a62(0x12b)](_0x2e4ef2);}['buildOrderByClause'](_0x5e299f){const _0x19147a={'VipHo':'invalid_order'};if(!_0x5e299f||_0x5e299f['length']===0x0)return'';const _0x1d1137=_0x5e299f['map'](_0x1f4907=>{const _0x385a48=a0_0x1628,{column:_0x3c5dc0,direction:_0x217b96}=_0x1f4907;if(!_0x3c5dc0)return logger['warn']({'event':_0x19147a['VipHo'],'item':_0x1f4907},'Skipping\x20invalid\x20order\x20clause'),null;const _0x3fbaa7=_0x217b96&&_0x217b96[_0x385a48(0x136)]()==='DESC'?'DESC':_0x385a48(0x14e);return _0x3c5dc0+'\x20'+_0x3fbaa7;})['filter'](_0x3aeb33=>_0x3aeb33!==null);if(_0x1d1137['length']===0x0)return'';return _0x1d1137['join'](',\x20');}async[a0_0x2c5d82(0x16d)](_0x25af7d,_0x4540f5,_0x5d62fb){const _0x27b8b5=a0_0x2c5d82,_0x6ec115={'QeAUa':function(_0x40b67e,_0x5eb26f){return _0x40b67e/_0x5eb26f;},'WxVIu':function(_0x568352,_0x2f7c63){return _0x568352(_0x2f7c63);},'iLQmc':function(_0x2df4df,_0x3953ae){return _0x2df4df===_0x3953ae;},'eguNx':function(_0x3cbdf6,_0x44b2b2){return _0x3cbdf6===_0x44b2b2;},'xlevi':'all','ekVkH':'excel_columns_select_all','XDPPR':function(_0x3d9cf9,_0x2c91db){return _0x3d9cf9>_0x2c91db;},'MIKxv':_0x27b8b5(0x13f),'dDspr':'excel_columns_from_query_result'},_0xdb3c70=_0x6ec115[_0x27b8b5(0x15c)](require,'./excel-generator'),_0x432b6a=new _0xdb3c70(),_0x75117c=_0x5d62fb['filename']?_0x5d62fb[_0x27b8b5(0x10f)]+'-'+_0x25af7d:'export-'+_0x25af7d,_0x5073ff=path['join'](this['exportDir'],_0x75117c+_0x27b8b5(0x16b));let _0x5453c9=_0x5d62fb[_0x27b8b5(0xf6)];const _0x4d843e=_0x5453c9&&_0x6ec115['iLQmc'](_0x5453c9[_0x27b8b5(0x107)],0x1)&&(_0x6ec115['eguNx'](_0x5453c9[0x0],'*')||_0x5453c9[0x0]['toLowerCase']()===_0x6ec115['xlevi']);if(_0x4540f5['length']>0x0){const _0x318278=Object[_0x27b8b5(0x13d)](_0x4540f5[0x0]);if(_0x4d843e)_0x5453c9=_0x318278,logger['info']({'event':_0x6ec115[_0x27b8b5(0x114)],'columns':_0x5453c9},'Using\x20all\x20'+_0x5453c9['length']+_0x27b8b5(0x150));else{if(_0x5453c9&&_0x5453c9['length']>0x0){const _0x2f329b=_0x5453c9[_0x27b8b5(0x134)](_0x77beab=>_0x318278[_0x27b8b5(0xfc)](_0x77beab));_0x6ec115['XDPPR'](_0x2f329b[_0x27b8b5(0x107)],0x0)?(_0x5453c9=_0x2f329b,logger['info']({'event':_0x27b8b5(0x101),'requestedColumns':_0x5d62fb['columns'],'validColumns':_0x5453c9},_0x27b8b5(0x13c)+_0x5453c9[_0x27b8b5(0x107)]+'\x20columns\x20from\x20request')):(_0x5453c9=_0x318278,logger[_0x27b8b5(0x167)]({'event':_0x6ec115['MIKxv'],'requestedColumns':_0x5d62fb[_0x27b8b5(0xf6)],'availableColumns':_0x318278},'Requested\x20columns\x20not\x20found\x20in\x20data,\x20using\x20all\x20'+_0x318278['length']+'\x20columns'));}else _0x5453c9=_0x318278,logger[_0x27b8b5(0x157)]({'event':_0x6ec115['dDspr'],'columns':_0x5453c9},_0x27b8b5(0x13c)+_0x5453c9[_0x27b8b5(0x107)]+'\x20columns\x20from\x20query\x20result');}}else logger[_0x27b8b5(0x157)]({'event':'excel_columns_from_config','columns':_0x5453c9},'Using\x20'+(_0x5453c9?.[_0x27b8b5(0x107)]||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0x432b6a['generate']({'data':_0x4540f5,'columns':_0x5453c9,'columnFormats':_0x5d62fb[_0x27b8b5(0x118)]||null,'fieldLabels':_0x5d62fb['fieldLabels']||null,'filePath':_0x5073ff,'onProgress':async _0x109e76=>{const _0x1e4ac2=_0x27b8b5;await redisHelper[_0x1e4ac2(0xf1)](_0x25af7d,{'progress':Math['round'](_0x109e76),'processed_rows':Math[_0x1e4ac2(0x152)](_0x6ec115[_0x1e4ac2(0x172)](_0x109e76,0x64)*_0x4540f5[_0x1e4ac2(0x107)])});}}),_0x5073ff;}async[a0_0x2c5d82(0xe9)](_0x2d8554){const _0x1b91d3=a0_0x2c5d82,_0x3ea86e={'fwhlz':function(_0x5d0325,_0x5cb48e){return _0x5d0325!==_0x5cb48e;},'mIPPM':_0x1b91d3(0x148),'dKgXn':_0x1b91d3(0x11c)},_0x591b90=await redisHelper['getJob'](_0x2d8554);if(!_0x591b90||_0x3ea86e[_0x1b91d3(0x13a)](_0x591b90[_0x1b91d3(0xf7)],_0x3ea86e[_0x1b91d3(0x12e)]))return null;try{return await fs[_0x1b91d3(0x156)](_0x591b90['file_path']),_0x591b90['file_path'];}catch(_0x294b71){return logError(_0x294b71,{'event':'export_file_not_found','jobId':_0x2d8554,'path':_0x591b90[_0x1b91d3(0x15f)]},_0x3ea86e[_0x1b91d3(0x126)]),null;}}async['cleanup'](){const _0x19003f=a0_0x2c5d82,_0x52c9b9={'Prptv':_0x19003f(0x123),'tpvRj':_0x19003f(0x11e),'FrpIK':function(_0x3ebfa0,_0x63a31){return _0x3ebfa0/_0x63a31;},'GoEVV':function(_0x4f56e7,_0x260432){return _0x4f56e7*_0x260432;},'fvgcn':function(_0x31eb5f,_0x425cad){return _0x31eb5f>_0x425cad;},'FpvFa':'export_file_deleted','qPbIf':'Export\x20file\x20deleted','hlrYb':'export_file_delete_error'};logger[_0x19003f(0x157)]({'event':_0x52c9b9[_0x19003f(0x16f)]},_0x52c9b9['tpvRj']);const _0x4166ce=await redisHelper[_0x19003f(0x164)]();let _0xcc882f=0x0;for(const _0x4eba24 of _0x4166ce){const _0x4fbbc1=new Date(_0x4eba24[_0x19003f(0x171)]),_0x43bb94=new Date(),_0x44bd24=_0x52c9b9[_0x19003f(0x125)](_0x43bb94-_0x4fbbc1,_0x52c9b9['GoEVV'](0x3e8*0x3c,0x3c));if(_0x52c9b9[_0x19003f(0xee)](_0x44bd24,0x1)){if(_0x4eba24[_0x19003f(0x15f)])try{await fs[_0x19003f(0xef)](_0x4eba24[_0x19003f(0x15f)]),logger['info']({'event':_0x52c9b9['FpvFa'],'path':_0x4eba24[_0x19003f(0x15f)]},_0x52c9b9[_0x19003f(0x10b)]);}catch(_0x2465de){logger['warn']({'event':_0x52c9b9['hlrYb'],'path':_0x4eba24[_0x19003f(0x15f)],'error':_0x2465de['message']},_0x19003f(0x14d));}await redisHelper[_0x19003f(0x10e)](_0x4eba24[_0x19003f(0x100)]),_0xcc882f++;}}return logger['info']({'event':'export_cleanup_complete','deleted':_0xcc882f},'Export\x20cleanup\x20completed'),_0xcc882f;}}module['exports']=new ExportService();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a0_0x33c7(_0x46680c,_0x5e83ee){_0x46680c=_0x46680c-0x1e9;const _0x2514ec=a0_0x2514();let _0x33c7d5=_0x2514ec[_0x46680c];if(a0_0x33c7['AWmzXh']===undefined){var _0x437152=function(_0x235a75){const _0xdfef17='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c6f26='',_0x51f493='';for(let _0x4e45ec=0x0,_0xd0375d,_0x4fb12d,_0xbc7e9=0x0;_0x4fb12d=_0x235a75['charAt'](_0xbc7e9++);~_0x4fb12d&&(_0xd0375d=_0x4e45ec%0x4?_0xd0375d*0x40+_0x4fb12d:_0x4fb12d,_0x4e45ec++%0x4)?_0x3c6f26+=String['fromCharCode'](0xff&_0xd0375d>>(-0x2*_0x4e45ec&0x6)):0x0){_0x4fb12d=_0xdfef17['indexOf'](_0x4fb12d);}for(let _0x2a1082=0x0,_0x364656=_0x3c6f26['length'];_0x2a1082<_0x364656;_0x2a1082++){_0x51f493+='%'+('00'+_0x3c6f26['charCodeAt'](_0x2a1082)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x51f493);};a0_0x33c7['hLNSbm']=_0x437152,a0_0x33c7['nZrIhh']={},a0_0x33c7['AWmzXh']=!![];}const _0x31d7ef=_0x2514ec[0x0],_0x4c3371=_0x46680c+_0x31d7ef,_0x50e013=a0_0x33c7['nZrIhh'][_0x4c3371];return!_0x50e013?(_0x33c7d5=a0_0x33c7['hLNSbm'](_0x33c7d5),a0_0x33c7['nZrIhh'][_0x4c3371]=_0x33c7d5):_0x33c7d5=_0x50e013,_0x33c7d5;}const a0_0x3f4216=a0_0x33c7;(function(_0xcdfe9e,_0x4a7b88){const _0x185fd9=a0_0x33c7,_0x5c3c7a=_0xcdfe9e();while(!![]){try{const _0x2ab0ba=-parseInt(_0x185fd9(0x205))/0x1*(-parseInt(_0x185fd9(0x214))/0x2)+parseInt(_0x185fd9(0x21f))/0x3+-parseInt(_0x185fd9(0x218))/0x4*(-parseInt(_0x185fd9(0x211))/0x5)+parseInt(_0x185fd9(0x20f))/0x6+-parseInt(_0x185fd9(0x1ef))/0x7+parseInt(_0x185fd9(0x215))/0x8+-parseInt(_0x185fd9(0x1fd))/0x9;if(_0x2ab0ba===_0x4a7b88)break;else _0x5c3c7a['push'](_0x5c3c7a['shift']());}catch(_0x57e3fe){_0x5c3c7a['push'](_0x5c3c7a['shift']());}}}(a0_0x2514,0x24395));const exportService=require('../../services/export-service'),{logger,logError}=require(a0_0x3f4216(0x21e)),path=require('path');function a0_0x2514(){const _0x12b165=['l2v4Cg9YDc1ZDgf0Dxm','BLzMugK','ANnVBG','EgXZEa','CMvNAxn0zxjdBgvHBNvWuM91Dgu','AgfUzgXLrxHWB3j0rg93BMXVywq','CMvNAxn0zxjsB3v0zxm','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','y3jLyxrLsM9I','ndiXotyYm0rnDMjtrW','y29SDw1U','Cg9ZDa','EwLJv2y','rxHWB3j0igzPBguGzg93BMXVywrLzcbZDwnJzxnZzNvSBhK','q2XLyw51CcbJB21WBgv0zwq','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','wwnrsNe','mJqWntaZv25yqunn','C3rHDhvZ','y29SDw1UCW','zxHWB3j0x3rYAwDNzxjFzxjYB3i','DvvvyM0','rMfPBgvKihrVigrVD25SB2fKigzPBgu','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDcbMAwXL','BwvZC2fNzq','t2nisvK','zxHWB3j0x2rVD25SB2fKzwq','ndeXntq2r3H5s3nA','CuPbwLa','otm2nJCWA2PSsLfe','rMLLBgqGiG','z2v0sM9Iu3rHDhvZ','mMnRBwHkua','mtaWmZCYmgDJCKX3vG','BNrVDeK','DgfIBgvoyw1L','nhLwA3zJAa','yMfZzw5HBwu','CxvLCNK','z2v0','sw52ywXPzcbZB3j0ignVBhvTBG','y2XLyw51Cf9LCNjVCG','lI4VlI4VDxrPBhmVBg9Nz2vY','mte0otu3Auz3yvbI','AeDtz0m','zxHWB3j0uxvLCNK','y29UzgL0Aw9UCW','A2v5','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','iIbPCYbUB3qGywXSB3DLza','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','mZaWotq0A1PZD2fw','ChfOCuC','AgvHzgvYC1nLBNq','q2XLyw51CcbMywLSzwq','BeHQC3K'];a0_0x2514=function(){return _0x12b165;};return a0_0x2514();}class ExportHandler{static[a0_0x3f4216(0x1fa)](_0x283030,_0x102cae,_0xed192e,_0x175807){const _0x357877=a0_0x3f4216,_0x52de47={'nVfPi':function(_0x3648c9,_0x310a2f,_0x24ebef,_0x2f9c7e){return _0x3648c9(_0x310a2f,_0x24ebef,_0x2f9c7e);},'OcHIY':'Failed\x20to\x20trigger\x20export','YcQJq':function(_0x1adfc5,_0x1f480b,_0xc9916f,_0x113f42){return _0x1adfc5(_0x1f480b,_0xc9916f,_0x113f42);},'uUUbm':'Failed\x20to\x20get\x20export\x20status','hiupP':function(_0x486feb,_0x326e05,_0x6bad5,_0x34cd88){return _0x486feb(_0x326e05,_0x6bad5,_0x34cd88);}},_0x1ab116='/api/'+_0x102cae+'/'+_0xed192e;_0x283030[_0x357877(0x1ff)](_0x1ab116+'/export',async(_0x1ee1dd,_0x201e6f)=>{const _0x5569ef=_0x357877;try{await this['handleExportTrigger'](_0x1ee1dd,_0x201e6f,_0x175807,_0x102cae,_0xed192e);}catch(_0x721ac2){_0x52de47[_0x5569ef(0x1f5)](logError,_0x721ac2,{'event':_0x5569ef(0x208)},_0x52de47[_0x5569ef(0x20d)]),_0x201e6f['status'](0x1f4)['json']({'success':![],'error':_0x721ac2['message']});}}),_0x283030['get'](_0x1ab116+_0x357877(0x1f4),async(_0x1175e5,_0x12a436)=>{const _0x1a4543=_0x357877;try{await this['handleExportStatus'](_0x1175e5,_0x12a436);}catch(_0x14dcbd){_0x52de47[_0x1a4543(0x204)](logError,_0x14dcbd,{'event':'export_status_error'},_0x52de47[_0x1a4543(0x209)]),_0x12a436[_0x1a4543(0x206)](0x1f4)['json']({'success':![],'error':_0x14dcbd[_0x1a4543(0x20c)]});}}),_0x283030['get'](_0x1ab116+'/export-download',async(_0x426473,_0x4c4e70)=>{const _0xb8239f=_0x357877;try{await this[_0xb8239f(0x1f9)](_0x426473,_0x4c4e70);}catch(_0x59e0d2){_0x52de47['hiupP'](logError,_0x59e0d2,{'event':'export_download_error'},'Failed\x20to\x20download\x20export'),!_0x4c4e70['headersSent']&&_0x4c4e70['status'](0x1f4)[_0xb8239f(0x1f6)]({'success':![],'error':_0x59e0d2['message']});}});}static async['handleExportTrigger'](_0x30fbc4,_0x3ede25,_0x556068,_0x48d3f2,_0x33307f){const _0x32da99=a0_0x3f4216,_0x3812b8={'cDdkf':'xlsx','PZgJu':'Invalid\x20where\x20field','qJAZP':function(_0x292958,_0x53ab91){return _0x292958+_0x53ab91;},'gfsyn':'-export','yicWf':function(_0x45c2c0,_0x19f04d){return _0x45c2c0||_0x19f04d;}},{format:_0xfb13ec,filename:_0x528e2e,columns:_0xea0766,where:_0x2e7f07,sort_columns:_0x2f706f}=_0x30fbc4['body'];if(_0xfb13ec&&_0xfb13ec!==_0x3812b8['cDdkf'])return _0x3ede25[_0x32da99(0x206)](0x190)['json']({'success':![],'error':'Only\x20xlsx\x20format\x20is\x20supported'});if(_0x2e7f07){if(!_0x2e7f07['logic']||!_0x2e7f07[_0x32da99(0x1ea)]||!Array['isArray'](_0x2e7f07['conditions']))return _0x3ede25['status'](0x190)['json']({'success':![],'error':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}'});}if(_0x2f706f){if(!Array['isArray'](_0x2f706f))return _0x3ede25['status'](0x190)[_0x32da99(0x1f6)]({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x30b8f9=_0x556068[_0x32da99(0x207)]||[];if(_0x2e7f07&&Array['isArray'](_0x2e7f07['conditions']))for(const _0x43d9d3 of _0x2e7f07['conditions']){if(_0x43d9d3['key']&&!_0x30b8f9['includes'](_0x43d9d3[_0x32da99(0x1eb)]))return _0x3ede25['status'](0x190)['json']({'success':![],'error':_0x3812b8['PZgJu'],'message':_0x32da99(0x212)+_0x43d9d3[_0x32da99(0x1eb)]+'\x22\x20is\x20not\x20allowed','validFields':_0x30b8f9});}if(Array['isArray'](_0x2f706f))for(const _0x5b37cb of _0x2f706f){if(_0x5b37cb['column']&&!_0x30b8f9['includes'](_0x5b37cb['column']))return _0x3ede25[_0x32da99(0x206)](0x190)[_0x32da99(0x1f6)]({'success':![],'error':_0x32da99(0x21c),'message':'Column\x20\x22'+_0x5b37cb[_0x32da99(0x1fe)]+_0x32da99(0x1ed),'validFields':_0x30b8f9});}const _0x17607d=_0x3812b8[_0x32da99(0x210)](_0x556068[_0x32da99(0x217)]['replace']('.','-'),_0x3812b8['gfsyn']),_0x16751e=await exportService[_0x32da99(0x1fc)]({'moduleName':_0x48d3f2,'endpointName':_0x33307f,'tableName':_0x556068['tableName'],'format':_0x3812b8[_0x32da99(0x200)](_0xfb13ec,_0x32da99(0x1f7)),'filename':_0x3812b8[_0x32da99(0x200)](_0x528e2e,_0x17607d),'columns':_0xea0766||_0x556068[_0x32da99(0x207)],'exportQuery':_0x556068[_0x32da99(0x1e9)]||null,'columnFormats':_0x556068['columnFormats']||null,'fieldLabels':_0x556068['fieldLabels']||null,'where':_0x2e7f07||null,'sort_columns':_0x3812b8[_0x32da99(0x200)](_0x2f706f,null)});_0x3ede25['json']({'success':!![],'data':_0x16751e});}static async['handleExportStatus'](_0x45201a,_0x40ecdf){const _0x20d2db=a0_0x3f4216,{job_id:_0x1d8d27}=_0x45201a['query'];if(!_0x1d8d27)return _0x40ecdf['status'](0x190)['json']({'success':![],'error':_0x20d2db(0x1fb)});const _0x5a64a0=await exportService[_0x20d2db(0x213)](_0x1d8d27);if(!_0x5a64a0['success'])return _0x40ecdf['status'](0x194)[_0x20d2db(0x1f6)](_0x5a64a0);_0x40ecdf['json'](_0x5a64a0);}static async[a0_0x3f4216(0x1f9)](_0x3aec8a,_0x2d9f2f){const _0x4be75e=a0_0x3f4216,_0x148c91={'ntotI':_0x4be75e(0x1ec),'hGSgC':_0x4be75e(0x20b),'NyVbL':_0x4be75e(0x20a),'pTqbp':_0x4be75e(0x20e),'pqhqG':_0x4be75e(0x203)},{job_id:_0x4c4d1f}=_0x3aec8a[_0x4be75e(0x21a)];if(!_0x4c4d1f)return _0x2d9f2f[_0x4be75e(0x206)](0x190)['json']({'success':![],'error':_0x4be75e(0x1fb)});const _0x35500e=await exportService['getFilePath'](_0x4c4d1f);if(!_0x35500e)return _0x2d9f2f['status'](0x194)[_0x4be75e(0x1f6)]({'success':![],'error':_0x148c91[_0x4be75e(0x1f0)]});_0x2d9f2f['download'](_0x35500e,''+path[_0x4be75e(0x219)](_0x35500e),_0x3090bf=>{const _0x55d44a=_0x4be75e;_0x3090bf?(logError(_0x3090bf,{'event':_0x148c91[_0x55d44a(0x216)],'jobId':_0x4c4d1f},_0x148c91[_0x55d44a(0x220)]),!_0x2d9f2f[_0x55d44a(0x1f1)]&&_0x2d9f2f[_0x55d44a(0x206)](0x1f4)[_0x55d44a(0x1f6)]({'success':![],'error':_0x148c91['NyVbL']})):logger['info']({'event':_0x148c91['pTqbp'],'jobId':_0x4c4d1f},_0x55d44a(0x201));});}static[a0_0x3f4216(0x1f8)](_0x424d12){const _0x482414=a0_0x3f4216,_0x2d0a8e={'lHjsy':_0x482414(0x202),'PJxWl':_0x482414(0x21d)};_0x424d12[_0x482414(0x21b)](_0x482414(0x1ee),async(_0x36a6a1,_0x3faa9c)=>{const _0x589eed=_0x482414;try{const _0x337df0=await exportService['cleanup']();_0x3faa9c['json']({'success':!![],'data':{'deleted':_0x337df0,'message':_0x2d0a8e[_0x589eed(0x1f3)]}});}catch(_0x5eba8f){logError(_0x5eba8f,{'event':_0x2d0a8e['PJxWl']},_0x589eed(0x1f2)),_0x3faa9c[_0x589eed(0x206)](0x1f4)[_0x589eed(0x1f6)]({'success':![],'error':_0x5eba8f['message']});}});}}module['exports']=ExportHandler;
|