@restforgejs/platform 5.1.7 → 5.1.16
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/restforge-hwinfo-linux +0 -0
- package/bin/restforge-hwinfo.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/payload/generate.js +10 -2
- package/generators/cli/schema/apply.js +6 -1
- package/generators/cli/schema/diff.js +6 -1
- package/generators/cli/schema/introspect.js +32 -11
- package/generators/lib/data/db-executor.js +8 -8
- package/generators/lib/data/envelope.js +3 -3
- package/generators/lib/dbschema-kit/apply-engine.js +20 -0
- package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
- package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
- package/generators/lib/dbschema-kit/dialect/postgres.js +4 -0
- package/generators/lib/dbschema-kit/dialect/sqlite.js +5 -0
- package/generators/lib/dbschema-kit/diff-engine.js +22 -1
- package/generators/lib/dbschema-kit/diff-reporter.js +293 -272
- package/generators/lib/dbschema-kit/emitters/create-index.js +23 -1
- package/generators/lib/dbschema-kit/emitters/create-table.js +48 -0
- package/generators/lib/dbschema-kit/introspect-mapper.js +154 -2
- package/generators/lib/dbschema-kit/ir-builder.js +84 -1
- package/generators/lib/dbschema-kit/schema-printer.js +20 -0
- package/generators/lib/dbschema-kit/soft-delete-constants.js +111 -0
- package/generators/lib/dbschema-kit/validator/schema-validator.js +231 -0
- package/generators/lib/generators/processor-validation-generator.js +16 -16
- package/generators/lib/payload/payload-runner.js +711 -1
- package/generators/lib/payload/schema-diff.js +7 -0
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/generators/lib/utils/database-introspector.js +48 -0
- package/generators/lib/utils/env-manager.js +4 -4
- package/generators/lib/utils/file-utils.js +6 -6
- package/generators/lib/utils/payload-processor.js +18 -2
- package/generators/lib/validators/argument-validator.js +2 -2
- package/generators/lib/validators/dashboard-validator.js +35 -1
- package/generators/lib/validators/payload-validator.js +460 -33
- package/integrity-manifest.json +20 -20
- package/package.json +2 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -0
- package/src/utils/sql-table-extractor.js +1 -0
- 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
- package/generators/lib/utils/sql-table-extractor.js +0 -83
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x45977c=a0_0x20a6;function a0_0x3353(){const _0x811c4d=['wMHsywK','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','BwLZC2LUz0zPzwXKCW','ChjLDMLLD19QB2jFy29TCgXLDgvK','DMfSDwvZ','wuD3Cw4','vw9jvue','y2f0y2G','ChLvBuu','Dg9vChbLCKnHC2u','AgfZ','ChvZAa','DwztAxG','AhzXrNK','CgfYC2vfEgnLBezPBgu','DxbSB2fKoG','Aw5JBhvKzxm','swjNueG','A3ret08','AM9IoG','DKn3zfC','zMLLBgroyw1L','t3P3suK','uhjLDMLLDYbQB2iGBM90igzVDw5Kig9Yigv4CgLYzwq','zxjYB3jZ','se1RuNy','C2XPy2u','Aw5KzxHpzG','zM9YBwf0tNvTyMvYrM9Yrgf0ywjHC2u','A2v5CW','Dg9ju09tDhjPBMC','AgvHzgvYC19TyxbWzwq','txjYs3G','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','Aw1WB3j0x2zPBgvFDxbSB2fKzwq','uhjLDMLLDYbQB2iGy29TCgXLDgvK','q29SDw1UigzVCM1HDhmGyxbWBgLLzcb0BYbYB3DZ','swr1B1m','y29TBwL0x2PVyL9JB21WBgv0zwq','sMjAAKK','lI91ChnLCNqTyNvPBgrLCG','x2vYCM9YCW','odC1mZq3AvLYrNzT','zw50CMLLCW','ChjVy2vZC2LUzW','lI4VlI4VDgvTCc91CgXVywrZlW','v3HLD0K','rejFvfLqrq','tLvmta','n1rZsLPqBa','DhLWzq','kqOGicaGica','Cgf0Aa','nxHYvu1ZBq','Aez3D1u','sM9Iig5VDcbMB3vUzcbVCIbLEhbPCMvK','z2vUzxjHDgvjza','ChjLDMLLD19WCM9JzxnZx2vYCM9Y','zMXVB3i','q21ltgG','mtK3nZyWs2HHsuX3','C2v0sM9I','ChjLDMLLD19QB2jFy3jLyxrLza','zxHLy3v0zvrYyw5Zywn0Aw9U','tgfIzwWGDg8GzMLLBgqGBwfWCgLUzYbIDwLSDa','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','zNzlCee','zgvIDwC','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','DxbKyxrLx2v4Axn0Aw5N','DxbKyxrL','C3fS','rxHJzwWGAgvHzgvYCYbTyxbWzwqGDg8GzMLLBgqGBMfTzxm','BgvUz3rO','CM93sw5KzxG','y29SDw1UrM9YBwf0CW','rwX1Che','y3jLyxrLuhjLDMLLD0PVyG','yNvPBgrcyxrJAfvWzgf0zq','ENPiv2O','C2L6zq','Aw5MBW','EujzyK0','q2fUBM90ignVBw1PDdOGChjLDMLLDYbZDgf0DxmGAxmG','wePMA3O','lI4VlI4Vy29Yzs91DgLSCY9KyG','tePWCwC','ChjLDMLLD19LCNjVCG','u0Tjua','vvbeqvrf','mta4nZaXmM1gBuLgta','z2v0','yxv0B0DLBMvYyxrLvxbZzxj0s2v5CW','ChjVy2vZC2vKuM93CW','AMTfALa','ChjLDMLLD19VAW','DgvZDa','x2v4Axn0Aw5Nswq','zNLcEKq','CwvXt2W','su5trvju','C3rYAw5N','Bg9VA3vWrMLLBgrZ','qMznqw0','Aw1WB3j0x2zPzwXKC19MAwX0zxjLza','uhjVy2vZC2LUzYbSB29RDxaGzMLLBgrZ','C3rHDhvZ','v1jMs1e','uhjLDMLLDYbQB2iGy3jLyxrLza','sKrhzeS','yvfpA1O','sw1WB3j0igzPBguGDxbSB2fKzwqGyw5KihbHCNnLza','mJmXmJm3DLfHqNPA','x2fJDgLVBG','y2H1BMTsB3DZ','Dg9mB3DLCKnHC2u','zMLSzv9JBgvHBNvWx2vYCM9Y','qLLgCeK','DhjPBq','A3rdvLm','ChjVy2vZC0nVBw1PDePVyG','zgf0zq','DgfYz2v0rMLLBgq','tKf4Ehy','z2v0rgf0zq','ntbHBvnHv2q','AM9PBG','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','ndG4ndnfuvDAvgG','qLfNAgu','zMLUza','zgj3q0G','BM93','B3jHy2XL','rgXyDLa','C2v0','Dw5SAw5R','CgfKu3rHCNq','x3vWBg9HzerPCG','mta1otyYngvWwMHnAW','mte1nti0uxDryLbO','zw52','rxHJzwWGC3rYDwn0DxjLig1PC21HDgnOlIbnAxnZAw5NigzPzwXKCZOG','DxbSB2fKx2LK','B3jPz2LUywXUyw1L','y29SDw1Ux2zVCM1HDhnFyxbWBgLLza','DhzSwMq','y29TBwL0x2PVyL9JCMvHDgvK','cIaGicaGicaGv0HfuKuG','uhzeD0G','DMfSAwrHDgLUzW','zMLSDgvY','y291BNq','cIaGicaGicaGu0vmrunuia','AM9Ix2LK','zxHLy3v0zvf1zxj5','rKrNveO','uhjLDMLLDYbQB2iGzMfPBgvK','y3jLyxrLzf9HDa','x2DLBMvYyxrLzf91DwLK','mNbQwMngwq','BwfW','zM9YrwfJAa','A3D5sfC','CMvWBgfJzq','jdfFjdi','y29TBwL0x2PVyL9MywLSzwq','lI4Vzgf0ywjHC2uVzgiTBxLZCwW'];a0_0x3353=function(){return _0x811c4d;};return a0_0x3353();}(function(_0x4a5739,_0x1f39c8){const _0x56a333=a0_0x20a6,_0x33295c=_0x4a5739();while(!![]){try{const _0x852f5a=parseInt(_0x56a333(0x18d))/0x1*(parseInt(_0x56a333(0x128))/0x2)+parseInt(_0x56a333(0x16d))/0x3+parseInt(_0x56a333(0x146))/0x4*(-parseInt(_0x56a333(0x121))/0x5)+parseInt(_0x56a333(0x179))/0x6+-parseInt(_0x56a333(0x11d))/0x7*(-parseInt(_0x56a333(0x178))/0x8)+-parseInt(_0x56a333(0x15c))/0x9*(-parseInt(_0x56a333(0x169))/0xa)+-parseInt(_0x56a333(0x116))/0xb;if(_0x852f5a===_0x1f39c8)break;else _0x33295c['push'](_0x33295c['shift']());}catch(_0x165f18){_0x33295c['push'](_0x33295c['shift']());}}}(a0_0x3353,0x22e23));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')['promises'],redisHelper=require('../caching/redis-helper'),{logger,logError}=require('../../core/utils/logger'),dbType=(process['env'][a0_0x45977c(0x11b)]||'postgresql')[a0_0x45977c(0x15f)]();let executeQuery,executeTransaction,oracleDb;if(dbType===a0_0x45977c(0x172))oracleDb=require(a0_0x45977c(0x196)),executeQuery=(_0x2dcccd,_0x3b1955)=>oracleDb[a0_0x45977c(0x188)](_0x2dcccd,_0x3b1955),executeTransaction=_0x508d85=>oracleDb['executeTransaction'](_0x508d85);else{if(dbType==='mysql'){const mysqlDb=require(a0_0x45977c(0x194));executeQuery=(_0x391a5,_0x4fc5a8)=>mysqlDb[a0_0x45977c(0x188)](_0x391a5,_0x4fc5a8),executeTransaction=_0x1d5fcd=>mysqlDb[a0_0x45977c(0x12b)](_0x1d5fcd);}else{const db=require(a0_0x45977c(0x141));executeQuery=db['executeQuery'],executeTransaction=db[a0_0x45977c(0x12b)];}}const excelParser=require('./excel-parser'),importValidator=require('./import-validator'),upsertBuilder=require(a0_0x45977c(0x114)),lookupResolver=require('../integrations/lookup-resolver');class ImportService{constructor(){const _0x4be16f=a0_0x45977c;this[_0x4be16f(0x177)]=null;}get['uploadDir'](){const _0x1ebf48=a0_0x45977c,_0x24e150={'wyjrK':'default'};if(!this['_uploadDir']){const _0x330b14=process[_0x1ebf48(0x17a)]['RESTFORGE_PROJECT_NAME']||_0x24e150['wyjrK'];this['_uploadDir']=process['env']['UPLOAD_DIR']||path[_0x1ebf48(0x16a)](__dirname,_0x1ebf48(0x119)+_0x330b14);}return this['_uploadDir'];}[a0_0x45977c(0x124)](){const _0x582fed=a0_0x45977c,_0x1a05bc={'DlXvP':_0x582fed(0x12d),'XJfkz':function(_0x4cbfb1,_0x482d72){return _0x4cbfb1-_0x482d72;},'CmKLh':function(_0x59c92f,_0xd55c12){return _0x59c92f+_0xd55c12;},'pyUmE':function(_0x463856,_0x1a0047){return _0x463856<_0x1a0047;}},_0x3cf28f=_0x1a05bc[_0x582fed(0x173)],_0x16cf31=Date[_0x582fed(0x171)]()['toString'](0x24),_0x1de7f1=uuidv7()['replace'](/-/g,'')['substring'](0x0,_0x1a05bc[_0x582fed(0x140)](0xc,_0x16cf31[_0x582fed(0x135)])),_0x2023b4=_0x1a05bc[_0x582fed(0x127)](_0x16cf31,_0x1de7f1)['substring'](0x0,0xc);let _0x271941='';for(let _0x441876=0x0;_0x1a05bc[_0x582fed(0x19d)](_0x441876,0xc);_0x441876++){_0x2023b4[_0x441876]?_0x271941+=_0x2023b4[_0x441876]:_0x271941+=_0x3cf28f['charAt'](Math[_0x582fed(0x126)](Math['random']()*_0x3cf28f[_0x582fed(0x135)]));}return _0x271941;}['buildLabelToFieldMap'](_0x406e8a){const _0x382236=a0_0x45977c,_0x1cffea={'LJpqg':function(_0x5a595e,_0x31e2fa){return _0x5a595e(_0x31e2fa);},'WxewI':_0x382236(0x192),'WRfKQ':'label_to_field_map_built','OzwII':_0x382236(0x12c)},_0x4485d0=new Map();if(!_0x406e8a)return _0x4485d0;return Object[_0x382236(0x117)](_0x406e8a)['forEach'](([_0x17a361,_0x159977])=>{const _0x1c897=_0x382236,_0x146c3c=_0x1cffea[_0x1c897(0x142)](String,_0x159977)['trim']()['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,'$1_$2')[_0x1c897(0x191)](/([A-Z]+)([A-Z][a-z])/g,_0x1cffea[_0x1c897(0x11a)])[_0x1c897(0x15f)]();_0x4485d0[_0x1c897(0x174)](_0x146c3c,_0x17a361);}),logger[_0x382236(0x12f)]({'event':_0x1cffea[_0x382236(0x157)],'mappingCount':_0x4485d0[_0x382236(0x13c)]},_0x1cffea[_0x382236(0x102)]),_0x4485d0;}['applyColumnFormats'](_0x4d9705,_0x505eb6){const _0x3b33f2=a0_0x45977c,_0x4c1bfc={'KFZyY':function(_0x4c43e3,_0xcba894){return _0x4c43e3===_0xcba894;},'cSsjN':_0x3b33f2(0x165),'UoIUA':function(_0x45408c,_0x48a5d0){return _0x45408c(_0x48a5d0);}};if(!_0x505eb6||Object[_0x3b33f2(0x109)](_0x505eb6)['length']===0x0)return _0x4d9705;return _0x4d9705['map'](_0x476707=>{const _0x22982e=_0x3b33f2,_0x55bf17={..._0x476707};for(const [_0x5c983c,_0x44a901]of Object[_0x22982e(0x117)](_0x505eb6)){const _0xb287b3=_0x55bf17[_0x5c983c];if(_0x4c1bfc['KFZyY'](_0xb287b3,null)||_0xb287b3===undefined||_0xb287b3===''){_0x55bf17[_0x5c983c]=null;continue;}switch(_0x44a901[_0x22982e(0x11e)]){case _0x4c1bfc['cSsjN']:_0x55bf17[_0x5c983c]=this[_0x22982e(0x16b)](_0xb287b3);break;case'number':_0x55bf17[_0x5c983c]=this['formatNumberForDatabase'](_0xb287b3);break;case'text':_0x55bf17[_0x5c983c]=_0x4c1bfc[_0x22982e(0x19b)](String,_0xb287b3);break;default:break;}}return _0x55bf17;});}[a0_0x45977c(0x16b)](_0x179827){const _0xb9415e=a0_0x45977c,_0x4be395={'Elupq':function(_0x498740,_0x54bdfb){return _0x498740===_0x54bdfb;},'BfMAm':function(_0x2852e6,_0x375203){return _0x2852e6===_0x375203;},'IduoS':_0xb9415e(0x151),'ZhRai':function(_0x149645,_0x2d807f){return _0x149645(_0x2d807f);},'JDGdK':function(_0x33e649,_0x728294){return _0x33e649(_0x728294);},'BYFpI':function(_0x2fd4e2,_0x4c7f60){return _0x2fd4e2+_0x4c7f60;},'RbWDQ':function(_0x436e5c,_0x1cb341){return _0x436e5c(_0x1cb341);}};if(_0x4be395['Elupq'](_0x179827,null)||_0x4be395['Elupq'](_0x179827,undefined)||_0x4be395[_0xb9415e(0x153)](_0x179827,''))return null;if(_0x4be395[_0xb9415e(0x138)](typeof _0x179827,_0x4be395[_0xb9415e(0x111)])&&/^\d{4}-\d{2}-\d{2}$/[_0xb9415e(0x14c)](_0x179827))return _0x179827;if(_0x179827 instanceof Date){if(_0x4be395[_0xb9415e(0x195)](isNaN,_0x179827['getTime']()))return null;const _0x57a800=_0x179827['getFullYear'](),_0x49b76e=_0x4be395['JDGdK'](String,_0x4be395[_0xb9415e(0x161)](_0x179827['getMonth'](),0x1))[_0xb9415e(0x176)](0x2,'0'),_0x43cc72=String(_0x179827[_0xb9415e(0x168)]())[_0xb9415e(0x176)](0x2,'0');return _0x57a800+'-'+_0x49b76e+'-'+_0x43cc72;}if(_0x4be395['BfMAm'](typeof _0x179827,_0xb9415e(0x151))){const _0x1fe15f=_0x179827['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x1fe15f){const _0x539110=String(_0x1fe15f[0x1])['padStart'](0x2,'0'),_0x1cf8db=String(_0x1fe15f[0x2])['padStart'](0x2,'0'),_0x2affae=_0x1fe15f[0x3];return _0x2affae+'-'+_0x1cf8db+'-'+_0x539110;}const _0x5010a6=_0x179827['match'](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x5010a6){const _0x4f95ff=_0x5010a6[0x1],_0x507de5=_0x4be395['RbWDQ'](String,_0x5010a6[0x2])['padStart'](0x2,'0'),_0x513e9e=_0x4be395[_0xb9415e(0x159)](String,_0x5010a6[0x3])['padStart'](0x2,'0');return _0x4f95ff+'-'+_0x507de5+'-'+_0x513e9e;}}return _0x179827;}[a0_0x45977c(0x108)](_0x5baf93){const _0x1533aa=a0_0x45977c,_0x55c5ca={'WjHCC':function(_0x5899a1,_0xcc2fe0){return _0x5899a1===_0xcc2fe0;},'HRCfW':function(_0x1d7e12,_0x312097){return _0x1d7e12===_0x312097;},'dbwCH':function(_0x53a153,_0x2d4cf1){return _0x53a153(_0x2d4cf1);}};if(_0x5baf93===null||_0x55c5ca['WjHCC'](_0x5baf93,undefined)||_0x55c5ca['HRCfW'](_0x5baf93,''))return null;if(typeof _0x5baf93==='number')return isNaN(_0x5baf93)?null:_0x5baf93;if(typeof _0x5baf93===_0x1533aa(0x151)){let _0x2a8171=_0x5baf93[_0x1533aa(0x162)]();const _0x3db8b1=/,\d{1,2}$/['test'](_0x2a8171)&&!/,\d{3}/[_0x1533aa(0x14c)](_0x2a8171);_0x3db8b1?_0x2a8171=_0x2a8171['replace'](/\./g,'')[_0x1533aa(0x191)](',','.'):_0x2a8171=_0x2a8171[_0x1533aa(0x191)](/,/g,'');const _0x19c19a=_0x55c5ca['dbwCH'](parseFloat,_0x2a8171);return _0x55c5ca[_0x1533aa(0x170)](isNaN,_0x19c19a)?null:_0x19c19a;}return null;}async['uploadFile'](_0x4fc418,_0x4c1831){const _0x10a668=a0_0x45977c,_0x7a5f8a={'aQOkZ':_0x10a668(0x10b),'xkRTK':_0x10a668(0x134),'hvqFy':_0x10a668(0x110),'ezwEh':_0x10a668(0x15b)},_0x580164=this[_0x10a668(0x124)]();try{let {headers:_0xd86041,rows:_0x4ab239,totalRows:_0x458649}=await excelParser[_0x10a668(0x1a3)](_0x4fc418[_0x10a668(0x120)]);const _0x336891=this['buildLabelToFieldMap'](_0x4c1831['fieldLabels']),_0x14dab1=_0xd86041[_0x10a668(0x18e)](_0x54998b=>{const _0x57ca96=_0x10a668,_0x46960f=_0x336891[_0x57ca96(0x147)](_0x54998b);return _0x46960f||_0x54998b;});_0x4ab239=_0x4ab239['map'](_0xe2516=>{const _0x403469={};return _0xd86041['forEach']((_0x2f9bbd,_0x4bfd73)=>{const _0x266345=_0x14dab1[_0x4bfd73];_0x403469[_0x266345]=_0xe2516[_0x2f9bbd];}),_0x403469;}),_0xd86041=_0x14dab1,logger['debug']({'event':_0x7a5f8a[_0x10a668(0x15a)],'original':_0xd86041[_0x10a668(0x135)],'mapped':_0x14dab1['filter']((_0xc3b164,_0x3a62bb)=>_0xc3b164!==_0xd86041[_0x3a62bb])['length']},_0x7a5f8a['xkRTK']);_0x4c1831['columnFormats']&&Object['keys'](_0x4c1831[_0x10a668(0x137)])['length']>0x0&&(_0x4ab239=this['applyColumnFormats'](_0x4ab239,_0x4c1831[_0x10a668(0x137)]),logger[_0x10a668(0x12f)]({'event':_0x10a668(0x17e),'formatCount':Object[_0x10a668(0x109)](_0x4c1831[_0x10a668(0x137)])[_0x10a668(0x135)],'formats':Object['keys'](_0x4c1831['columnFormats'])},_0x7a5f8a[_0x10a668(0x1a2)]));const _0x2c078e=_0x4c1831[_0x10a668(0x152)]?Object[_0x10a668(0x199)](_0x4c1831['lookupFields'])['map'](_0x6a642f=>_0x6a642f[_0x10a668(0x166)]):[],_0x8df85f=_0x4c1831[_0x10a668(0x101)][_0x10a668(0x184)](_0x57678a=>!_0x2c078e[_0x10a668(0x1a5)](_0x57678a)),_0x5cdb13=excelParser['validateExcelStructure'](_0xd86041,_0x8df85f);if(!_0x5cdb13['valid']){await fs[_0x10a668(0x175)](_0x4fc418['path']);throw new Error(_0x10a668(0x17b)+_0x5cdb13[_0x10a668(0x197)]['join'](',\x20'));}const _0x4e82f3={'upload_id':_0x580164,'filename':_0x4fc418[_0x10a668(0x17d)],'total_rows':_0x458649,'headers':_0xd86041,'rows':_0x4ab239,'params':_0x4c1831,'created_at':new Date()['toISOString']()};return await redisHelper['setJob'](_0x10a668(0x1a4)+_0x580164,_0x4e82f3,0xe10),await fs['unlink'](_0x4fc418[_0x10a668(0x120)]),logger[_0x10a668(0x13d)]({'event':_0x10a668(0x10e),'uploadId':_0x580164,'filename':_0x4fc418[_0x10a668(0x17d)],'totalRows':_0x458649},_0x7a5f8a['ezwEh']),{'upload_id':_0x580164,'total_rows':_0x458649,'preview':_0x4ab239['slice'](0x0,0xa)};}catch(_0xaec94f){try{await fs['unlink'](_0x4fc418['path']);}catch(_0x58dc6b){logError(_0x58dc6b,{'event':_0x10a668(0x160)},'Failed\x20to\x20cleanup\x20file');}throw _0xaec94f;}}async[a0_0x45977c(0x139)](_0xb335c8){const _0xb55463=a0_0x45977c,_0x2dc57e={'PvDwH':function(_0x29d6af,_0x58dd1e,_0x24fa37,_0x2e52e8){return _0x29d6af(_0x58dd1e,_0x24fa37,_0x2e52e8);},'vCwdW':'Preview\x20processing\x20failed','qeqOl':'Upload\x20data\x20not\x20found\x20or\x20expired','ktDOO':_0xb55463(0x183),'YGwqn':_0xb55463(0x12a)},_0x523db3=this[_0xb55463(0x124)](),_0x14bdde=await redisHelper['getJob']('upload:'+_0xb335c8);if(!_0x14bdde)throw new Error(_0x2dc57e[_0xb55463(0x14f)]);const _0x310d3a={'job_id':_0x523db3,'upload_id':_0xb335c8,'status':_0x2dc57e['ktDOO'],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x14bdde['params']};return await redisHelper[_0xb55463(0x129)](_0xb55463(0xff)+_0x523db3,_0x310d3a,0xe10),logger[_0xb55463(0x13d)]({'event':_0x2dc57e[_0xb55463(0x19a)],'jobId':_0x523db3,'uploadId':_0xb335c8},_0xb55463(0x158)),this['processPreviewJob'](_0x523db3,_0xb335c8,_0x14bdde)['catch'](_0x4a3f18=>{const _0xb70ed3=_0xb55463;_0x2dc57e[_0xb70ed3(0x182)](logError,_0x4a3f18,{'event':_0xb70ed3(0x125),'jobId':_0x523db3},_0x2dc57e[_0xb70ed3(0x100)]);}),{'job_id':_0x523db3,'status':_0x2dc57e[_0xb55463(0xfe)]};}[a0_0x45977c(0x148)](_0x422825,_0x494c3c){const _0x269d16={'msxRc':function(_0x359d7a,_0x509bfa){return _0x359d7a===_0x509bfa;},'tvlZd':function(_0x5b3f6b,_0x3e8354){return _0x5b3f6b+_0x3e8354;}};_0x422825['forEach']((_0x56586d,_0x533a1e)=>{const _0x1f14ad=a0_0x20a6;_0x494c3c[_0x1f14ad(0x18f)](_0x1dd475=>{const _0x592e1e=_0x1f14ad,_0x1306b3=_0x56586d[_0x1dd475];if(_0x1306b3===null||_0x1306b3===undefined||_0x269d16['msxRc'](_0x1306b3,'')||String(_0x1306b3)[_0x592e1e(0x162)]()==='-'){const _0x5c543b=uuidv7();_0x56586d[_0x1dd475]=_0x5c543b,_0x56586d['_generated_uuid']=_0x56586d['_generated_uuid']||{},_0x56586d[_0x592e1e(0x18c)][_0x1dd475]=_0x5c543b,logger['debug']({'event':'uuid_auto_generated','rowIndex':_0x533a1e,'field':_0x1dd475,'uuid':_0x5c543b},'Auto-generated\x20UUID\x20for\x20'+_0x1dd475+'\x20at\x20row\x20'+_0x269d16[_0x592e1e(0x17f)](_0x533a1e,0x2));}});});}async['processPreviewJob'](_0x875a57,_0x41ff33,_0x444601){const _0x19b3d5=a0_0x45977c,_0x1a6047={'NAxxv':function(_0x2a47d1,_0x42d5f1){return _0x2a47d1===_0x42d5f1;},'kwyHW':'INSERT','lqzqd':_0x19b3d5(0x144),'zOUOT':function(_0x41eb47,_0xfd712f){return _0x41eb47>_0xfd712f;},'KpjhU':'processing_lookup_fields','Huhdv':function(_0x3f89c2,_0x28825a){return _0x3f89c2||_0x28825a;},'fyBzD':_0x19b3d5(0x10f),'tASOa':function(_0x11165d,_0x25246d,_0x54ae82,_0xe8d67a){return _0x11165d(_0x25246d,_0x54ae82,_0xe8d67a);},'HMkRv':_0x19b3d5(0x18a)};try{let {rows:_0x25055c,params:_0x3e00a7}=_0x444601;const {requiredFields:_0x2af757,validations:_0x1e4f34,upsertKeys:_0x33d4ba,tableName:_0x3a5798,primaryKey:_0x1624bf,fieldName:_0x327f99,upsertStrategy:_0x27a38b,lookupFields:_0x1b9107}=_0x3e00a7;this[_0x19b3d5(0x148)](_0x25055c,_0x33d4ba);let _0x318120=[];if(_0x1b9107&&_0x1a6047['zOUOT'](Object[_0x19b3d5(0x109)](_0x1b9107)['length'],0x0)){logger['info']({'event':_0x1a6047['KpjhU'],'jobId':_0x875a57,'lookupFieldCount':Object[_0x19b3d5(0x109)](_0x1b9107)['length']},_0x19b3d5(0x155));const _0x2a66ce=await lookupResolver['processLookupFields'](_0x25055c,_0x1b9107);_0x25055c=_0x2a66ce[_0x19b3d5(0x149)],_0x318120=_0x2a66ce[_0x19b3d5(0x104)],_0x444601['rows']=_0x25055c;}const _0x28930d=importValidator['batchValidateRows'](_0x25055c,_0x2af757||[],_0x1a6047['Huhdv'](_0x1e4f34,{}));_0x318120['forEach'](_0x427274=>{const _0x5e8416=_0x19b3d5,_0x2ae02d=_0x28930d[_0x5e8416(0x16f)](_0x295075=>_0x295075['rowIndex']===_0x427274['rowIndex']);_0x2ae02d?_0x2ae02d[_0x5e8416(0x104)][_0x5e8416(0x1a0)](_0x427274['message']):_0x28930d[_0x5e8416(0x1a0)]({'rowIndex':_0x427274[_0x5e8416(0x136)],'rowData':_0x25055c[_0x427274['rowIndex']],'errors':[_0x427274['message']]});});const _0x186817=importValidator['detectDuplicatesInFile'](_0x25055c,_0x33d4ba);_0x186817[_0x19b3d5(0x18f)](_0x1d18cc=>{const _0x5a1f3f=_0x19b3d5,_0x56f3e2=_0x28930d[_0x5a1f3f(0x16f)](_0x1143de=>_0x1143de['rowIndex']===_0x1d18cc['rowIndex']),_0x4b32bd=_0x33d4ba[_0x5a1f3f(0x18e)](_0x4e1a82=>_0x4e1a82[_0x5a1f3f(0x19e)]())['join'](',\x20'),_0x2c5d90='Duplicate\x20value\x20for\x20'+_0x4b32bd;_0x56f3e2?_0x56f3e2[_0x5a1f3f(0x104)]['push'](_0x2c5d90):_0x28930d['push']({'rowIndex':_0x1d18cc['rowIndex'],'rowData':_0x25055c[_0x1d18cc['rowIndex']],'errors':[_0x2c5d90]});}),await this['detectDatabaseDuplicates'](_0x25055c,_0x33d4ba,_0x3a5798,_0x1624bf,_0x27a38b,_0x28930d),_0x28930d['forEach'](_0x15e557=>{const _0x4cf729=_0x19b3d5,_0x447489=_0x25055c[_0x15e557[_0x4cf729(0x136)]];_0x447489&&(_0x447489[_0x4cf729(0x115)]=_0x15e557[_0x4cf729(0x104)]);});let _0x1e7882=0x0,_0x11e947=0x0,_0x4b2531=0x0;_0x25055c['forEach'](_0x2c9a58=>{const _0x522d75=_0x19b3d5;if(_0x1a6047[_0x522d75(0x167)](_0x2c9a58['_action'],_0x1a6047[_0x522d75(0x190)]))_0x1e7882++;else{if(_0x2c9a58['_action']===_0x522d75(0x145))_0x11e947++;else _0x2c9a58['_action']===_0x1a6047['lqzqd']&&_0x4b2531++;}});const _0x413264={'job_id':_0x875a57,'upload_id':_0x41ff33,'status':_0x28930d['length']>0x0?_0x19b3d5(0x143):_0x19b3d5(0x14b),'progress':0x64,'created_at':_0x444601[_0x19b3d5(0x18b)],'completed_at':new Date()[_0x19b3d5(0x10a)](),'preview':{'total_rows':_0x25055c['length'],'insert_count':_0x1e7882,'update_count':_0x11e947,'skip_count':_0x4b2531,'error_count':_0x28930d['length'],'errors':_0x28930d,'data':_0x25055c,'sample_insert':_0x25055c['filter'](_0x1d2f02=>_0x1d2f02['_action']===_0x19b3d5(0x150))[_0x19b3d5(0x106)](0x0,0x5),'sample_update':_0x25055c[_0x19b3d5(0x184)](_0x35cb63=>_0x35cb63['_action']===_0x19b3d5(0x145))[_0x19b3d5(0x106)](0x0,0x5),'sample_skip':_0x25055c[_0x19b3d5(0x184)](_0x21a679=>_0x21a679[_0x19b3d5(0x15d)]===_0x19b3d5(0x144))['slice'](0x0,0x5)},'params':_0x3e00a7};await redisHelper['setJob'](_0x19b3d5(0xff)+_0x875a57,_0x413264,0xe10),_0x444601['rows']=_0x25055c,await redisHelper['setJob']('upload:'+_0x41ff33,_0x444601,0xe10),logger[_0x19b3d5(0x13d)]({'event':_0x19b3d5(0x198),'jobId':_0x875a57,'status':_0x413264[_0x19b3d5(0x156)],'insertCount':_0x1e7882,'updateCount':_0x11e947,'skipCount':_0x4b2531,'errorCount':_0x28930d[_0x19b3d5(0x135)]},_0x1a6047[_0x19b3d5(0x14e)]);}catch(_0x2ea9b9){_0x1a6047['tASOa'](logError,_0x2ea9b9,{'event':'preview_job_failed','jobId':_0x875a57},_0x1a6047[_0x19b3d5(0x105)]),await redisHelper['setJob']('job:'+_0x875a57,{'job_id':_0x875a57,'upload_id':_0x41ff33,'status':'failed','progress':0x0,'error':_0x2ea9b9['message'],'created_at':new Date()[_0x19b3d5(0x10a)](),'completed_at':new Date()['toISOString']()},0xe10);}}async['detectDatabaseDuplicates'](_0x348e03,_0x14d888,_0x4ed53d,_0x4e5985,_0x220585=a0_0x45977c(0x131),_0x5c40a4=[]){const _0x359580=a0_0x45977c,_0x4176ae={'zzHWj':function(_0x1b7410,_0x19ace6){return _0x1b7410===_0x19ace6;},'yBYbM':function(_0x310a21,_0x506176){return _0x310a21(_0x506176);},'fvKpA':function(_0x2f6cf7,_0x3380b7){return _0x2f6cf7===_0x3380b7;},'ktCVS':'UPDATE','jkEjP':'insert_only','JbZjI':_0x359580(0x144),'hFwwU':function(_0xb472c4,_0x5a76a2){return _0xb472c4===_0x5a76a2;},'DlRDS':'update_existing','VxaYa':'skip_existing','BQghe':function(_0x39bd6c,_0x26f68e){return _0x39bd6c(_0x26f68e);}},_0xd1fa99=upsertBuilder['chunkRows'](_0x348e03,0x64);for(const _0x4fdbf1 of _0xd1fa99){const _0xd2bbf2=_0x4fdbf1['map'](_0x4f5ef1=>_0x4f5ef1[_0x14d888[0x0]]),_0x36e226=_0xd2bbf2[_0x359580(0x18e)](_0x1e6f2c=>{const _0xf16f52=_0x359580;if(_0x4176ae[_0xf16f52(0x13b)](_0x1e6f2c,null)||_0x4176ae[_0xf16f52(0x13b)](_0x1e6f2c,undefined))return _0xf16f52(0x11c);return'\x27'+_0x4176ae[_0xf16f52(0x13e)](String,_0x1e6f2c)['replace'](/'/g,'\x27\x27')+'\x27';}),_0x12b6e3=_0x359580(0x186)+_0x4e5985+',\x20'+_0x14d888[_0x359580(0x16a)](',\x20')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x4ed53d+_0x359580(0x181)+_0x14d888[0x0]+'\x20IN\x20('+_0x36e226['join'](',\x20')+_0x359580(0x11f);let _0x3da9b9=await _0x4176ae[_0x359580(0x16e)](executeQuery,_0x12b6e3);_0x4176ae['fvKpA'](dbType,'oracle')&&_0x3da9b9&&_0x3da9b9[_0x359580(0x135)]>0x0&&(_0x3da9b9=_0x3da9b9[_0x359580(0x18e)](_0x1ef06f=>{const _0x27a160=_0x359580,_0x592a08={};for(const [_0x174aa5,_0x491f0c]of Object[_0x27a160(0x117)](_0x1ef06f)){_0x592a08[_0x174aa5['toLowerCase']()]=_0x491f0c;}return _0x592a08;}));const _0x1870ae=new Map();_0x3da9b9['forEach'](_0x57e43a=>{const _0x41a33a=_0x359580,_0x3565ba=_0x57e43a[_0x14d888[0x0]];_0x1870ae[_0x41a33a(0x174)](_0x3565ba,_0x57e43a);}),_0x4fdbf1['forEach']((_0x59350c,_0x1cbd85)=>{const _0x4bdcdd=_0x359580,_0x4f74aa=_0x59350c[_0x14d888[0x0]],_0x1cf765=_0x1870ae['get'](_0x4f74aa);if(_0x1cf765){if(_0x4176ae[_0x4bdcdd(0x12e)](_0x220585,_0x4bdcdd(0x131)))_0x59350c['_action']=_0x4176ae[_0x4bdcdd(0x163)],_0x59350c[_0x4bdcdd(0x14d)]=_0x1cf765[_0x4e5985];else{if(_0x220585===_0x4176ae[_0x4bdcdd(0x14a)]){_0x59350c['_action']=_0x4176ae[_0x4bdcdd(0x113)],_0x59350c[_0x4bdcdd(0x115)]=_0x59350c['_errors']||[],_0x59350c[_0x4bdcdd(0x115)]['push'](_0x4bdcdd(0x130));const _0x3ee6ee=_0x348e03[_0x4bdcdd(0x107)](_0x59350c);_0x3ee6ee!==-0x1&&_0x5c40a4[_0x4bdcdd(0x1a0)]({'rowIndex':_0x3ee6ee,'rowData':_0x59350c,'errors':[_0x4bdcdd(0x130)]});}else _0x4176ae[_0x4bdcdd(0x122)](_0x220585,'skip_existing')&&(_0x59350c[_0x4bdcdd(0x15d)]=_0x4bdcdd(0x144));}}else{if(_0x220585===_0x4176ae['DlRDS'])_0x59350c['_action']='INSERT';else(_0x4176ae['zzHWj'](_0x220585,_0x4176ae['jkEjP'])||_0x220585===_0x4176ae['VxaYa'])&&(_0x59350c['_action']=_0x4bdcdd(0x150));}});}}async['createCommitJob'](_0x256feb){const _0x3a0e8c=a0_0x45977c,_0x288c9f={'IbgPH':function(_0x3ab1a3,_0x31cc25,_0x2721fa,_0x41a157){return _0x3ab1a3(_0x31cc25,_0x2721fa,_0x41a157);},'GiSoZ':'commit_process_error','MrrKx':_0x3a0e8c(0x103),'MiHNl':function(_0x12b5f4,_0x61fa4a){return _0x12b5f4!==_0x61fa4a;}},_0x65a9ed=this[_0x3a0e8c(0x124)](),_0x36d7c8=await redisHelper['getJob']('job:'+_0x256feb);if(!_0x36d7c8)throw new Error(_0x288c9f[_0x3a0e8c(0x10c)]);if(_0x288c9f['MiHNl'](_0x36d7c8[_0x3a0e8c(0x156)],'preview_ok'))throw new Error(_0x3a0e8c(0x13f)+_0x36d7c8[_0x3a0e8c(0x156)]);const _0x5511e1={'job_id':_0x65a9ed,'upload_id':_0x36d7c8[_0x3a0e8c(0x17c)],'preview_job_id':_0x256feb,'status':'processing','progress':0x0,'created_at':new Date()[_0x3a0e8c(0x10a)](),'params':_0x36d7c8['params']};return await redisHelper['setJob']('job:'+_0x65a9ed,_0x5511e1,0xe10),logger['info']({'event':_0x3a0e8c(0x180),'jobId':_0x65a9ed,'previewJobId':_0x256feb},'Commit\x20job\x20created'),this['processCommitJob'](_0x65a9ed,_0x36d7c8)[_0x3a0e8c(0x19c)](_0x49ca91=>{const _0x1e142a=_0x3a0e8c;_0x288c9f[_0x1e142a(0xfd)](logError,_0x49ca91,{'event':_0x288c9f['GiSoZ'],'jobId':_0x65a9ed},'Commit\x20processing\x20failed');}),{'job_id':_0x65a9ed,'status':_0x3a0e8c(0x118)};}async[a0_0x45977c(0x164)](_0x446327,_0x62910c){const _0x2cf6e0=a0_0x45977c,_0x1ca66a={'rXHAC':function(_0x1dd749,_0x5e07d9){return _0x1dd749===_0x5e07d9;},'FDgTJ':_0x2cf6e0(0x16c),'RYAYd':_0x2cf6e0(0x154),'yWgMZ':function(_0x79fbb0,_0x318de4){return _0x79fbb0>_0x318de4;},'wDmWo':_0x2cf6e0(0x132),'BpULb':'completed','WCYtt':'failed'};try{const _0x3b967e=await redisHelper['getJob']('upload:'+_0x62910c['upload_id']);if(!_0x3b967e)throw new Error(_0x1ca66a[_0x2cf6e0(0x189)]);const {rows:_0x1a68c3,params:_0x81b6d}=_0x3b967e,{tableName:_0x49a09d,fieldName:_0x23bf78,primaryKey:_0x48dd16,upsertKeys:_0x5dab76,excludeFromImport:_0x3957ae,lookupFields:_0x2d63f3,columnFormats:_0x288bb0}=_0x81b6d,_0x37fea0=_0x2d63f3?Object['keys'](_0x2d63f3):[],_0x1d221b=new Set([..._0x3957ae||[],..._0x37fea0]);let _0x25c1c7=_0x23bf78;_0x1d221b[_0x2cf6e0(0x13c)]>0x0&&(_0x25c1c7=_0x23bf78['filter'](_0x3f80a1=>!_0x1d221b[_0x2cf6e0(0x19f)](_0x3f80a1)),logger[_0x2cf6e0(0x12f)]({'event':_0x1ca66a['RYAYd'],'originalCount':_0x23bf78['length'],'filteredCount':_0x25c1c7['length'],'excludedFields':Array['from'](_0x1d221b),'lookupSourceFields':_0x37fea0},_0x2cf6e0(0x10d)));const _0x3c88d0=_0x1a68c3['filter'](_0x361817=>_0x361817[_0x2cf6e0(0x15d)]==='INSERT'),_0x194b72=_0x1a68c3[_0x2cf6e0(0x184)](_0x12e8f4=>_0x12e8f4['_action']===_0x2cf6e0(0x145));let _0x206d47=0x0,_0x38afda=0x0;const _0xcbb93a=[];if(_0x1ca66a['yWgMZ'](_0x3c88d0[_0x2cf6e0(0x135)],0x0)){const _0x1e5889=upsertBuilder[_0x2cf6e0(0x15e)](_0x3c88d0,0x64);for(const _0x2c9130 of _0x1e5889){const {query:_0x16da91}=upsertBuilder['buildBatchInsert'](_0x2c9130,_0x49a09d,_0x25c1c7,_0x288bb0||{});_0x16da91&&_0xcbb93a[_0x2cf6e0(0x1a0)]({'sql':_0x16da91,'count':_0x2c9130['length'],'type':'insert'});}}if(_0x194b72[_0x2cf6e0(0x135)]>0x0){const _0x2900e7=upsertBuilder[_0x2cf6e0(0x15e)](_0x194b72,0x64);for(const _0xb81f54 of _0x2900e7){const {query:_0x2916eb}=upsertBuilder[_0x2cf6e0(0x13a)](_0xb81f54,_0x49a09d,_0x25c1c7,_0x48dd16,_0x5dab76,_0x288bb0||{});_0x2916eb&&_0xcbb93a[_0x2cf6e0(0x1a0)]({'sql':_0x2916eb,'count':_0xb81f54[_0x2cf6e0(0x135)],'type':_0x1ca66a['wDmWo']});}}_0xcbb93a['length']>0x0&&await executeTransaction(_0xcbb93a[_0x2cf6e0(0x18e)](_0x203013=>({'sql':_0x203013[_0x2cf6e0(0x133)],'params':[]})));_0xcbb93a[_0x2cf6e0(0x18f)](_0x29cbe2=>{const _0x8ea117=_0x2cf6e0;if(_0x1ca66a['rXHAC'](_0x29cbe2['type'],'insert'))_0x206d47+=_0x29cbe2[_0x8ea117(0x185)];else _0x38afda+=_0x29cbe2['count'];});const _0x4f8566={'job_id':_0x446327,'upload_id':_0x62910c[_0x2cf6e0(0x17c)],'preview_job_id':_0x62910c[_0x2cf6e0(0x187)],'status':_0x1ca66a['BpULb'],'progress':0x64,'created_at':_0x62910c[_0x2cf6e0(0x18b)],'started_at':new Date()[_0x2cf6e0(0x10a)](),'completed_at':new Date()[_0x2cf6e0(0x10a)](),'result':{'total_rows':_0x1a68c3[_0x2cf6e0(0x135)],'inserted_rows':_0x206d47,'updated_rows':_0x38afda,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x81b6d};await redisHelper['setJob']('job:'+_0x446327,_0x4f8566,0xe10),logger['info']({'event':_0x2cf6e0(0x112),'jobId':_0x446327,'insertedCount':_0x206d47,'updatedCount':_0x38afda},'Commit\x20job\x20completed');}catch(_0x1e9238){logError(_0x1e9238,{'event':_0x2cf6e0(0x193),'jobId':_0x446327},'Commit\x20job\x20failed'),await redisHelper['setJob'](_0x2cf6e0(0xff)+_0x446327,{'job_id':_0x446327,'upload_id':_0x62910c[_0x2cf6e0(0x17c)],'preview_job_id':_0x62910c['job_id'],'status':_0x1ca66a['WCYtt'],'progress':0x0,'error':_0x1e9238['message'],'created_at':_0x62910c[_0x2cf6e0(0x18b)],'started_at':new Date()[_0x2cf6e0(0x10a)](),'completed_at':new Date()[_0x2cf6e0(0x10a)]()},0xe10);}}async['getJobStatus'](_0x3eec9b){const _0x4e4b91=a0_0x45977c,_0x2ab06c={'ufSix':_0x4e4b91(0x123)},_0x9d4444=await redisHelper['getJob'](_0x4e4b91(0xff)+_0x3eec9b);if(!_0x9d4444)return{'success':![],'error':_0x2ab06c[_0x4e4b91(0x1a1)]};return{'success':!![],'data':_0x9d4444};}}function a0_0x20a6(_0x189269,_0x1b3661){_0x189269=_0x189269-0xfd;const _0x3353ce=a0_0x3353();let _0x20a660=_0x3353ce[_0x189269];if(a0_0x20a6['gyTHVW']===undefined){var _0x31b08a=function(_0x4e55af){const _0xc9eaed='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x380198='',_0x229475='';for(let _0x5dcfe=0x0,_0x2106ff,_0x202cda,_0x50d829=0x0;_0x202cda=_0x4e55af['charAt'](_0x50d829++);~_0x202cda&&(_0x2106ff=_0x5dcfe%0x4?_0x2106ff*0x40+_0x202cda:_0x202cda,_0x5dcfe++%0x4)?_0x380198+=String['fromCharCode'](0xff&_0x2106ff>>(-0x2*_0x5dcfe&0x6)):0x0){_0x202cda=_0xc9eaed['indexOf'](_0x202cda);}for(let _0x3e7713=0x0,_0x1edcc5=_0x380198['length'];_0x3e7713<_0x1edcc5;_0x3e7713++){_0x229475+='%'+('00'+_0x380198['charCodeAt'](_0x3e7713)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x229475);};a0_0x20a6['gAgSFL']=_0x31b08a,a0_0x20a6['tuQFmp']={},a0_0x20a6['gyTHVW']=!![];}const _0x2c137e=_0x3353ce[0x0],_0x39d11e=_0x189269+_0x2c137e,_0x53aa61=a0_0x20a6['tuQFmp'][_0x39d11e];return!_0x53aa61?(_0x20a660=a0_0x20a6['gAgSFL'](_0x20a660),a0_0x20a6['tuQFmp'][_0x39d11e]=_0x20a660):_0x20a660=_0x53aa61,_0x20a660;}module['exports']=new ImportService();
|
|
1
|
+
const a0_0xd80b94=a0_0x28bf;(function(_0x5ee266,_0x3d39d7){const _0x181fbc=a0_0x28bf,_0x22f580=_0x5ee266();while(!![]){try{const _0x209bc3=parseInt(_0x181fbc(0x156))/0x1+-parseInt(_0x181fbc(0x11e))/0x2+-parseInt(_0x181fbc(0x122))/0x3*(parseInt(_0x181fbc(0xe7))/0x4)+parseInt(_0x181fbc(0xdd))/0x5+-parseInt(_0x181fbc(0xbc))/0x6*(parseInt(_0x181fbc(0xfa))/0x7)+parseInt(_0x181fbc(0x150))/0x8+parseInt(_0x181fbc(0xcf))/0x9;if(_0x209bc3===_0x3d39d7)break;else _0x22f580['push'](_0x22f580['shift']());}catch(_0x5afedb){_0x22f580['push'](_0x22f580['shift']());}}}(a0_0x4ee0,0x9f27f));const {v7:uuidv7}=require(a0_0xd80b94(0x13d)),path=require(a0_0xd80b94(0xe5)),fs=require('fs')[a0_0xd80b94(0x146)],redisHelper=require(a0_0xd80b94(0x105)),{logger,logError}=require(a0_0xd80b94(0xd3)),dbType=(process['env']['DB_TYPE']||'postgresql')[a0_0xd80b94(0x10e)]();let executeQuery,executeTransaction,oracleDb;if(dbType==='oracle')oracleDb=require(a0_0xd80b94(0xd6)),executeQuery=(_0xca489d,_0x32b91b)=>oracleDb['executeQuery'](_0xca489d,_0x32b91b),executeTransaction=_0x17e171=>oracleDb[a0_0xd80b94(0xff)](_0x17e171);else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x1f6e82,_0x4b2bc4)=>mysqlDb[a0_0xd80b94(0x10f)](_0x1f6e82,_0x4b2bc4),executeTransaction=_0x1c18cf=>mysqlDb['executeTransaction'](_0x1c18cf);}else{const db=require('../../core/utils/db');executeQuery=db['executeQuery'],executeTransaction=db['executeTransaction'];}}function a0_0x28bf(_0x1efa04,_0x18cc87){_0x1efa04=_0x1efa04-0xb3;const _0x4ee0e5=a0_0x4ee0();let _0x28bf00=_0x4ee0e5[_0x1efa04];if(a0_0x28bf['RnghmQ']===undefined){var _0x494e72=function(_0x2c3351){const _0x415fae='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e9ad8='',_0x2f66c4='';for(let _0x3237ad=0x0,_0x203dc5,_0x375d3b,_0x59949a=0x0;_0x375d3b=_0x2c3351['charAt'](_0x59949a++);~_0x375d3b&&(_0x203dc5=_0x3237ad%0x4?_0x203dc5*0x40+_0x375d3b:_0x375d3b,_0x3237ad++%0x4)?_0x3e9ad8+=String['fromCharCode'](0xff&_0x203dc5>>(-0x2*_0x3237ad&0x6)):0x0){_0x375d3b=_0x415fae['indexOf'](_0x375d3b);}for(let _0x3dfbe2=0x0,_0x13eece=_0x3e9ad8['length'];_0x3dfbe2<_0x13eece;_0x3dfbe2++){_0x2f66c4+='%'+('00'+_0x3e9ad8['charCodeAt'](_0x3dfbe2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f66c4);};a0_0x28bf['JdVZOv']=_0x494e72,a0_0x28bf['HtDzWq']={},a0_0x28bf['RnghmQ']=!![];}const _0x851805=_0x4ee0e5[0x0],_0x355301=_0x1efa04+_0x851805,_0x21bd66=a0_0x28bf['HtDzWq'][_0x355301];return!_0x21bd66?(_0x28bf00=a0_0x28bf['JdVZOv'](_0x28bf00),a0_0x28bf['HtDzWq'][_0x355301]=_0x28bf00):_0x28bf00=_0x21bd66,_0x28bf00;}const excelParser=require(a0_0xd80b94(0x135)),importValidator=require(a0_0xd80b94(0x12d)),upsertBuilder=require(a0_0xd80b94(0x125)),lookupResolver=require(a0_0xd80b94(0x148));function a0_0x4ee0(){const _0x33c16a=['rhvWBgLJyxrLihzHBhvLigzVCIa','quj3yw4','DhjPBq','q29SDw1UigzVCM1HDhmGyxbWBgLLzcb0BYbYB3DZ','z2vUzxjHDgvjza','x2fJDgLVBG','ChjVy2vZC1bYzxzPzxDkB2i','y2f0y2G','ndjxA0PXtxu','t3HqDgy','A0LACMm','x3vWBg9HzerPCG','svftAvi','zxHLy3v0zvrYyw5Zywn0Aw9U','Bg9VA3vWrMLLBgrZ','x2vYCM9YCW','CgfYyw1Z','uM93vLO','zgz4uuC','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','qxriBfy','DxbSB2fKx2LK','zgvIDwC','BeDSwwm','BwvZC2fNzq','Dw5SAw5R','BwfW','svHvALm','Dg9mB3DLCKnHC2u','zxHLy3v0zvf1zxj5','Bwf0y2G','zMfPBgvK','DMfSAwq','ChjLDMLLD19WCM9JzxnZx2vYCM9Y','y3bbBfq','whzrz1u','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','CMvWBgfJzq','vxzJvwq','DgfYz2v0rMLLBgq','AM9PBG','Aw5Zzxj0','ChvZAa','Au9ewMW','mty2mJqYmgvvDMHTBW','Dwrxrxm','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','DgvZDa','mtG5nJG5mvfJAe5VuG','zw50CMLLCW','zw52','lI91ChnLCNqTyNvPBgrLCG','y29TBwL0x2PVyL9JCMvHDgvK','zgv0zwn0rgf0ywjHC2veDxbSAwnHDgvZ','uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','cIaGicaGicaGrLjptsa','z2v0','CgfKu3rHCNq','ChjLDMLLD19VAW','lI9PBxbVCNqTDMfSAwrHDg9Y','zMLLBgroyw1L','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','su5trvju','zMLSDgvY','AgfZ','BwLZC2LUz0zPzwXKCW','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','lI9LEgnLBc1WyxjZzxi','C3rHDhvZ','ChjLDMLLD19LCNjVCG','y29SDw1UrM9YBwf0CW','z2v0sM9Iu3rHDhvZ','zgf0zq','y2H1BMTsB3DZ','C2XPy2u','DxvPza','DMfSAwrHDgLUzW','rKXbrwC','AM9Ix2LK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zMLUza','vvbeqvrf','zujKEvK','uhjLDMLLDYbQB2iGBM90igzVDw5Kig9Yigv4CgLYzwq','ChjVBwLZzxm','BgvUz3rO','lI4VAw50zwDYyxrPB25Zl2XVB2T1Cc1YzxnVBhzLCG','Aw5KzxHpzG','zM9YrwfJAa','yNvPBgrcyxrJAeLUC2vYDa','AM9IoG','yMP0Cu4','y291BNq','y29TBwL0x2PVyL9JB21WBgv0zwq','nJuXnJeYogjNwhjsva','DefJsxK','zwX1BMG','y29TBwL0x2PVyL9MywLSzwq','zgvMyxvSDa','CMfUzg9T','mtqYmJG4vurpruvo','zgTsCMO','q29TBwL0igPVyIbMywLSzwq','zM9YBwf0tNvTyMvYrM9Yrgf0ywjHC2u','AKLgBum','y29TCgXLDgvK','yxv0B0DLBMvYyxrLvxbZzxj0s2v5CW','u2vivfy','DxbSB2fKoG','zxHWB3j0CW','Aw5Zzxj0x29UBhK','ChjLDMLLD19QB2jFy29TCgXLDgvK','mteZmtm5nNfqrw11CG','yNvPBgrmywjLBfrVrMLLBgrnyxa','tgryqxi','jdfFjdi','ChjLDMLLD19QB2jFzMfPBgvK','qxv0BY1Nzw5LCMf0zwqGvvvjrcbMB3iG','igf0ihjVDYa','s3fSCKK','zfvYzNG','y29TBwL0x3bYB2nLC3nFzxjYB3i','zMXVB3i','CM93sw5KzxG','C3rYAw5N','ChjVy2vZC0nVBw1PDePVyG','zNjVBq','C2v0sM9I','z2v0sM9I','C3fS','yxbWBhLdB2X1Bw5gB3jTyxrZ','mti2nZC2mdD3rxj2rgO','DxbSB2fKrMLSzq','zNDzqK4','A2v5CW','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','yu1qvNC','C2L6zq','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','C2TPCf9LEgLZDgLUzW','x2v4Axn0Aw5Nswq','ChjLDMLLD19QB2jFy3jLyxrLza','BKfWwxe','tLvmta','D3zcrNG','ndqWnJG5nxP1Ahfksa','wMv6vvq','wxrdquu','u3bNsNC','B3jPz2LUywXUyw1L','q3nWAeC','zxjYB3jZ','y2HHCKf0','Cgf0Aa','CM93CW','ngH5zwjzqq','Dg9ju09tDhjPBMC','qMLfEwW','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','C3vIC3rYAw5N','y1DPvfi','kqOGicaGica','yMf0y2HwywXPzgf0zvjVD3m','Aw5MBW','AgvHzgvYC19TyxbWzwq','ieLoicG'];a0_0x4ee0=function(){return _0x33c16a;};return a0_0x4ee0();}class ImportService{constructor(){this['_uploadDir']=null;}get['uploadDir'](){const _0x47187a=a0_0xd80b94;if(!this[_0x47187a(0xfd)]){const _0x32bd89=process[_0x47187a(0x124)][_0x47187a(0x141)]||_0x47187a(0x154);this[_0x47187a(0xfd)]=process[_0x47187a(0x124)]['UPLOAD_DIR']||path[_0x47187a(0x11a)](__dirname,'../../temp/uploads/'+_0x32bd89);}return this[_0x47187a(0xfd)];}[a0_0xd80b94(0xf6)](){const _0x5451d5=a0_0xd80b94,_0x346a6d={'KRUlm':function(_0x234b90,_0x3ffbe5){return _0x234b90<_0x3ffbe5;}},_0x4b28b6='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',_0x261617=Date['now']()['toString'](0x24),_0x364fda=uuidv7()[_0x5451d5(0x117)](/-/g,'')['substring'](0x0,0xc-_0x261617['length']),_0x281b50=(_0x261617+_0x364fda)[_0x5451d5(0xeb)](0x0,0xc);let _0x39d024='';for(let _0x50fdea=0x0;_0x346a6d['KRUlm'](_0x50fdea,0xc);_0x50fdea++){_0x281b50[_0x50fdea]?_0x39d024+=_0x281b50[_0x50fdea]:_0x39d024+=_0x4b28b6[_0x5451d5(0xe4)](Math[_0x5451d5(0xc6)](Math[_0x5451d5(0x155)]()*_0x4b28b6['length']));}return _0x39d024;}['buildLabelToFieldMap'](_0x23a2c2){const _0x519980=a0_0xd80b94,_0x5bf272={'YtCAE':'Label\x20to\x20field\x20mapping\x20built'},_0x29cf90=new Map();if(!_0x23a2c2)return _0x29cf90;return Object[_0x519980(0x123)](_0x23a2c2)[_0x519980(0x14a)](([_0x26f81f,_0x39d2c8])=>{const _0x14acfc=_0x519980,_0x51acdc=String(_0x39d2c8)[_0x14acfc(0xf4)]()[_0x14acfc(0x117)](/\s+/g,'_')[_0x14acfc(0x117)](/([a-z])([A-Z])/g,_0x14acfc(0xbf))['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x14acfc(0xbf))[_0x14acfc(0x10e)]();_0x29cf90['set'](_0x51acdc,_0x26f81f);}),logger[_0x519980(0x108)]({'event':'label_to_field_map_built','mappingCount':_0x29cf90['size']},_0x5bf272[_0x519980(0xdf)]),_0x29cf90;}[a0_0xd80b94(0xce)](_0x3d0eb4,_0x146782){const _0x48708c={'rDQbS':function(_0x3824d0,_0x766422){return _0x3824d0===_0x766422;},'znKic':'number','BiEyl':'text','RowVZ':function(_0x4b5011,_0x1f5e4d){return _0x4b5011(_0x1f5e4d);}};if(!_0x146782||Object['keys'](_0x146782)['length']===0x0)return _0x3d0eb4;return _0x3d0eb4['map'](_0x377042=>{const _0x4c08f7=a0_0x28bf,_0x6622={..._0x377042};for(const [_0x5345bd,_0x390133]of Object[_0x4c08f7(0x123)](_0x146782)){const _0x6cd80=_0x6622[_0x5345bd];if(_0x6cd80===null||_0x48708c['rDQbS'](_0x6cd80,undefined)||_0x6cd80===''){_0x6622[_0x5345bd]=null;continue;}switch(_0x390133['type']){case _0x4c08f7(0x13a):_0x6622[_0x5345bd]=this[_0x4c08f7(0xea)](_0x6cd80);break;case _0x48708c['znKic']:_0x6622[_0x5345bd]=this['formatNumberForDatabase'](_0x6cd80);break;case _0x48708c[_0x4c08f7(0xe9)]:_0x6622[_0x5345bd]=_0x48708c[_0x4c08f7(0x103)](String,_0x6cd80);break;default:break;}}return _0x6622;});}[a0_0xd80b94(0xea)](_0x2ab8ee){const _0x43bcb8=a0_0xd80b94,_0x5c0430={'udWEs':function(_0x331528,_0x1b2116){return _0x331528===_0x1b2116;},'uVoCQ':_0x43bcb8(0xc8),'mumYm':function(_0x2450cc,_0x110994){return _0x2450cc instanceof _0x110994;},'SpgJw':function(_0x53e370,_0x386fc6){return _0x53e370(_0x386fc6);},'GefMz':function(_0x499e32,_0x41ef85){return _0x499e32+_0x41ef85;}};if(_0x2ab8ee===null||_0x2ab8ee===undefined||_0x5c0430[_0x43bcb8(0x11f)](_0x2ab8ee,''))return null;if(typeof _0x2ab8ee===_0x5c0430['uVoCQ']&&/^\d{4}-\d{2}-\d{2}$/[_0x43bcb8(0x121)](_0x2ab8ee))return _0x2ab8ee;if(_0x5c0430['mumYm'](_0x2ab8ee,Date)){if(_0x5c0430['SpgJw'](isNaN,_0x2ab8ee['getTime']()))return null;const _0x3a922a=_0x2ab8ee['getFullYear'](),_0x464370=String(_0x5c0430['GefMz'](_0x2ab8ee['getMonth'](),0x1))[_0x43bcb8(0x12b)](0x2,'0'),_0x1c2b82=String(_0x2ab8ee['getDate']())['padStart'](0x2,'0');return _0x3a922a+'-'+_0x464370+'-'+_0x1c2b82;}if(typeof _0x2ab8ee==='string'){const _0x239b44=_0x2ab8ee[_0x43bcb8(0x110)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x239b44){const _0x3d90f4=_0x5c0430[_0x43bcb8(0xe0)](String,_0x239b44[0x1])['padStart'](0x2,'0'),_0x3cae0f=String(_0x239b44[0x2])['padStart'](0x2,'0'),_0x23b0a6=_0x239b44[0x3];return _0x23b0a6+'-'+_0x3cae0f+'-'+_0x3d90f4;}const _0x4d059b=_0x2ab8ee[_0x43bcb8(0x110)](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x4d059b){const _0x56bb3c=_0x4d059b[0x1],_0x7d784b=String(_0x4d059b[0x2])['padStart'](0x2,'0'),_0x3f5b78=String(_0x4d059b[0x3])['padStart'](0x2,'0');return _0x56bb3c+'-'+_0x7d784b+'-'+_0x3f5b78;}}return _0x2ab8ee;}[a0_0xd80b94(0xb3)](_0x443c93){const _0x48e04f=a0_0xd80b94,_0x3d03f0={'eBdyY':function(_0x376a60,_0x5545cb){return _0x376a60===_0x5545cb;},'aMPVw':'number','cpAlT':function(_0x2dca71,_0x42d843){return _0x2dca71(_0x42d843);},'IXUjS':function(_0x3b9169,_0x4a4b39){return _0x3b9169===_0x4a4b39;},'XvQgU':_0x48e04f(0xc8)};if(_0x443c93===null||_0x3d03f0['eBdyY'](_0x443c93,undefined)||_0x3d03f0[_0x48e04f(0x144)](_0x443c93,''))return null;if(typeof _0x443c93===_0x3d03f0[_0x48e04f(0xd4)])return _0x3d03f0[_0x48e04f(0x114)](isNaN,_0x443c93)?null:_0x443c93;if(_0x3d03f0[_0x48e04f(0x10d)](typeof _0x443c93,_0x3d03f0[_0x48e04f(0x115)])){let _0x3dd7d7=_0x443c93[_0x48e04f(0xf4)]();const _0x484712=/,\d{1,2}$/[_0x48e04f(0x121)](_0x3dd7d7)&&!/,\d{3}/['test'](_0x3dd7d7);_0x484712?_0x3dd7d7=_0x3dd7d7['replace'](/\./g,'')[_0x48e04f(0x117)](',','.'):_0x3dd7d7=_0x3dd7d7[_0x48e04f(0x117)](/,/g,'');const _0x2fb04b=_0x3d03f0['cpAlT'](parseFloat,_0x3dd7d7);return _0x3d03f0['cpAlT'](isNaN,_0x2fb04b)?null:_0x2fb04b;}return null;}async[a0_0xd80b94(0xd0)](_0xcfd9f1,_0x47cfb5){const _0x4a9df9=a0_0xd80b94,_0x54ff38={'ByFkf':function(_0x41e88b,_0x244455){return _0x41e88b||_0x244455;},'yeLXl':function(_0x4961fa,_0x33513e){return _0x4961fa>_0x33513e;},'Xskwj':'column_formats_applied','dfxQG':_0x4a9df9(0xf5),'ClpLp':'Import\x20file\x20uploaded\x20and\x20parsed','SeHTV':'file_cleanup_error','iODZl':'Failed\x20to\x20cleanup\x20file'},_0x3d1c66=this['generateId']();try{let {headers:_0x3c56d9,rows:_0x417f6b,totalRows:_0x2ffb2b}=await excelParser['parseExcelFile'](_0xcfd9f1['path']);const _0x46ff02=this[_0x4a9df9(0xbd)](_0x47cfb5['fieldLabels']),_0x194b7e=_0x3c56d9['map'](_0x20779e=>{const _0x171ecc=_0x4a9df9,_0x3c13e7=_0x46ff02[_0x171ecc(0x12a)](_0x20779e);return _0x54ff38['ByFkf'](_0x3c13e7,_0x20779e);});_0x417f6b=_0x417f6b[_0x4a9df9(0x10c)](_0x5f1162=>{const _0x26f508={};return _0x3c56d9['forEach']((_0x3792a9,_0x5df134)=>{const _0x3a3f0f=_0x194b7e[_0x5df134];_0x26f508[_0x3a3f0f]=_0x5f1162[_0x3792a9];}),_0x26f508;}),_0x3c56d9=_0x194b7e,logger[_0x4a9df9(0x108)]({'event':_0x4a9df9(0xf0),'original':_0x3c56d9['length'],'mapped':_0x194b7e['filter']((_0x150faa,_0x2ecd91)=>_0x150faa!==_0x3c56d9[_0x2ecd91])[_0x4a9df9(0x147)]},'Excel\x20headers\x20mapped\x20to\x20field\x20names');_0x47cfb5[_0x4a9df9(0x138)]&&_0x54ff38['yeLXl'](Object['keys'](_0x47cfb5[_0x4a9df9(0x138)])[_0x4a9df9(0x147)],0x0)&&(_0x417f6b=this[_0x4a9df9(0xce)](_0x417f6b,_0x47cfb5[_0x4a9df9(0x138)]),logger['debug']({'event':_0x54ff38['Xskwj'],'formatCount':Object[_0x4a9df9(0xd2)](_0x47cfb5['columnFormats'])[_0x4a9df9(0x147)],'formats':Object[_0x4a9df9(0xd2)](_0x47cfb5[_0x4a9df9(0x138)])},_0x54ff38[_0x4a9df9(0x104)]));const _0x39e6af=_0x47cfb5[_0x4a9df9(0x100)]?Object['values'](_0x47cfb5['lookupFields'])[_0x4a9df9(0x10c)](_0x3c67ee=>_0x3c67ee[_0x4a9df9(0x119)]):[],_0x348785=_0x47cfb5[_0x4a9df9(0x12e)]['filter'](_0x2c29f8=>!_0x39e6af['includes'](_0x2c29f8)),_0x49c5ac=excelParser['validateExcelStructure'](_0x3c56d9,_0x348785);if(!_0x49c5ac[_0x4a9df9(0x112)]){await fs[_0x4a9df9(0x10b)](_0xcfd9f1['path']);throw new Error('Excel\x20structure\x20mismatch.\x20Missing\x20fields:\x20'+_0x49c5ac[_0x4a9df9(0x133)][_0x4a9df9(0x11a)](',\x20'));}const _0x6314bc={'upload_id':_0x3d1c66,'filename':_0xcfd9f1[_0x4a9df9(0xe1)],'total_rows':_0x2ffb2b,'headers':_0x3c56d9,'rows':_0x417f6b,'params':_0x47cfb5,'created_at':new Date()[_0x4a9df9(0xe8)]()};return await redisHelper[_0x4a9df9(0xcb)]('upload:'+_0x3d1c66,_0x6314bc,0xe10),await fs[_0x4a9df9(0x10b)](_0xcfd9f1['path']),logger[_0x4a9df9(0xef)]({'event':'import_file_uploaded','uploadId':_0x3d1c66,'filename':_0xcfd9f1['originalname'],'totalRows':_0x2ffb2b},_0x54ff38['ClpLp']),{'upload_id':_0x3d1c66,'total_rows':_0x2ffb2b,'preview':_0x417f6b['slice'](0x0,0xa)};}catch(_0x1951c6){try{await fs[_0x4a9df9(0x10b)](_0xcfd9f1[_0x4a9df9(0xe5)]);}catch(_0x5282e2){logError(_0x5282e2,{'event':_0x54ff38[_0x4a9df9(0xb7)]},_0x54ff38[_0x4a9df9(0x11d)]);}throw _0x1951c6;}}async['createPreviewJob'](_0x4bc476){const _0x5000ec=a0_0xd80b94,_0x179fb2={'nApYq':function(_0x435d57,_0x1e2ba6,_0x367705,_0x13009f){return _0x435d57(_0x1e2ba6,_0x367705,_0x13009f);},'wvBFx':_0x5000ec(0x134),'GCKoO':_0x5000ec(0xd9),'dkRrj':'Preview\x20job\x20created','GcsaY':_0x5000ec(0x13e)},_0x3ab26b=this[_0x5000ec(0xf6)](),_0x34d512=await redisHelper['getJob'](_0x5000ec(0xb8)+_0x4bc476);if(!_0x34d512)throw new Error(_0x179fb2[_0x5000ec(0xdc)]);const _0x937831={'job_id':_0x3ab26b,'upload_id':_0x4bc476,'status':'validating','progress':0x0,'created_at':new Date()[_0x5000ec(0xe8)](),'params':_0x34d512['params']};return await redisHelper['setJob'](_0x5000ec(0x14c)+_0x3ab26b,_0x937831,0xe10),logger['info']({'event':_0x179fb2['GCKoO'],'jobId':_0x3ab26b,'uploadId':_0x4bc476},_0x179fb2[_0x5000ec(0x157)]),this[_0x5000ec(0xf8)](_0x3ab26b,_0x4bc476,_0x34d512)[_0x5000ec(0xf9)](_0x52bc52=>{const _0x40113c=_0x5000ec;_0x179fb2[_0x40113c(0xda)](logError,_0x52bc52,{'event':_0x40113c(0x113),'jobId':_0x3ab26b},_0x40113c(0x128));}),{'job_id':_0x3ab26b,'status':_0x179fb2['GcsaY']};}[a0_0xd80b94(0xb6)](_0x139c5f,_0x535942){const _0x3819da={'dUrfx':function(_0x8deb19,_0x4f6ff3){return _0x8deb19(_0x4f6ff3);},'KqlrI':function(_0xc72fd4){return _0xc72fd4();}};_0x139c5f['forEach']((_0x1d159b,_0x1fd9c8)=>{const _0xab827a=a0_0x28bf;_0x535942[_0xab827a(0x14a)](_0x1e3913=>{const _0x4f280d=_0xab827a,_0x40caf7=_0x1d159b[_0x1e3913];if(_0x40caf7===null||_0x40caf7===undefined||_0x40caf7===''||_0x3819da[_0x4f280d(0xc4)](String,_0x40caf7)['trim']()==='-'){const _0x51db84=_0x3819da[_0x4f280d(0xc3)](uuidv7);_0x1d159b[_0x1e3913]=_0x51db84,_0x1d159b['_generated_uuid']=_0x1d159b['_generated_uuid']||{},_0x1d159b['_generated_uuid'][_0x1e3913]=_0x51db84,logger['debug']({'event':'uuid_auto_generated','rowIndex':_0x1fd9c8,'field':_0x1e3913,'uuid':_0x51db84},_0x4f280d(0xc1)+_0x1e3913+_0x4f280d(0xc2)+(_0x1fd9c8+0x2));}});});}async[a0_0xd80b94(0xf8)](_0x284f84,_0x514b98,_0x2c2f2a){const _0x2d185e=a0_0xd80b94,_0x1579b0={'IQSiR':function(_0x574352,_0x56c5c4){return _0x574352===_0x56c5c4;},'nOIDb':function(_0x61e818,_0x17e558){return _0x61e818>_0x17e558;},'qlOhN':'processing_lookup_fields','jIFmC':function(_0x3d170f,_0x40dd28){return _0x3d170f||_0x40dd28;},'TKTHI':function(_0x53f6fc,_0x181484){return _0x53f6fc>_0x181484;},'wzRov':_0x2d185e(0x12c),'vVTgH':'Preview\x20job\x20completed','zDyLO':_0x2d185e(0x111)};try{let {rows:_0x44059f,params:_0x2d9b46}=_0x2c2f2a;const {requiredFields:_0x2f342d,validations:_0x12e3b3,upsertKeys:_0x575670,tableName:_0x2c6770,primaryKey:_0x516aeb,fieldName:_0x2940e2,upsertStrategy:_0x392fe3,lookupFields:_0x5e421e}=_0x2d9b46;this[_0x2d185e(0xb6)](_0x44059f,_0x575670);let _0x48e724=[];if(_0x5e421e&&_0x1579b0['nOIDb'](Object['keys'](_0x5e421e)['length'],0x0)){logger[_0x2d185e(0xef)]({'event':_0x1579b0['qlOhN'],'jobId':_0x284f84,'lookupFieldCount':Object['keys'](_0x5e421e)['length']},'Processing\x20lookup\x20fields');const _0x294baf=await lookupResolver['processLookupFields'](_0x44059f,_0x5e421e);_0x44059f=_0x294baf['processedRows'],_0x48e724=_0x294baf['errors'],_0x2c2f2a[_0x2d185e(0xe6)]=_0x44059f;}const _0x2c6b6a=importValidator[_0x2d185e(0xee)](_0x44059f,_0x2f342d||[],_0x1579b0[_0x2d185e(0xb4)](_0x12e3b3,{}));_0x48e724[_0x2d185e(0x14a)](_0x3acadb=>{const _0x58d510=_0x2d185e,_0x2ee856=_0x2c6b6a[_0x58d510(0x142)](_0x455d90=>_0x455d90[_0x58d510(0xc7)]===_0x3acadb[_0x58d510(0xc7)]);_0x2ee856?_0x2ee856[_0x58d510(0xe3)]['push'](_0x3acadb['message']):_0x2c6b6a[_0x58d510(0x11c)]({'rowIndex':_0x3acadb[_0x58d510(0xc7)],'rowData':_0x44059f[_0x3acadb[_0x58d510(0xc7)]],'errors':[_0x3acadb[_0x58d510(0x10a)]]});});const _0x59b6a5=importValidator[_0x2d185e(0x12f)](_0x44059f,_0x575670);_0x59b6a5[_0x2d185e(0x14a)](_0xd44305=>{const _0x3625be=_0x2d185e,_0xc6f090=_0x2c6b6a['find'](_0x253c4e=>_0x253c4e[_0x3625be(0xc7)]===_0xd44305[_0x3625be(0xc7)]),_0xf75529=_0x575670['map'](_0x486ac1=>_0x486ac1['toUpperCase']())[_0x3625be(0x11a)](',\x20'),_0x50dd27=_0x3625be(0xf2)+_0xf75529;_0xc6f090?_0xc6f090['errors']['push'](_0x50dd27):_0x2c6b6a[_0x3625be(0x11c)]({'rowIndex':_0xd44305['rowIndex'],'rowData':_0x44059f[_0xd44305['rowIndex']],'errors':[_0x50dd27]});}),await this['detectDatabaseDuplicates'](_0x44059f,_0x575670,_0x2c6770,_0x516aeb,_0x392fe3,_0x2c6b6a),_0x2c6b6a[_0x2d185e(0x14a)](_0x477806=>{const _0x3757dd=_0x2d185e,_0x151b8e=_0x44059f[_0x477806[_0x3757dd(0xc7)]];_0x151b8e&&(_0x151b8e[_0x3757dd(0x101)]=_0x477806[_0x3757dd(0xe3)]);});let _0x260d7b=0x0,_0x378d3c=0x0,_0x4da387=0x0;_0x44059f[_0x2d185e(0x14a)](_0x2b038c=>{const _0x424a5c=_0x2d185e;if(_0x2b038c[_0x424a5c(0xf7)]==='INSERT')_0x260d7b++;else{if(_0x1579b0[_0x424a5c(0xfe)](_0x2b038c['_action'],_0x424a5c(0x143)))_0x378d3c++;else _0x1579b0[_0x424a5c(0xfe)](_0x2b038c[_0x424a5c(0xf7)],'SKIP')&&_0x4da387++;}});const _0x1f90a9={'job_id':_0x284f84,'upload_id':_0x514b98,'status':_0x1579b0['TKTHI'](_0x2c6b6a[_0x2d185e(0x147)],0x0)?_0x2d185e(0x137):_0x1579b0['wzRov'],'progress':0x64,'created_at':_0x2c2f2a['created_at'],'completed_at':new Date()['toISOString'](),'preview':{'total_rows':_0x44059f['length'],'insert_count':_0x260d7b,'update_count':_0x378d3c,'skip_count':_0x4da387,'error_count':_0x2c6b6a['length'],'errors':_0x2c6b6a,'data':_0x44059f,'sample_insert':_0x44059f['filter'](_0xc62eca=>_0xc62eca[_0x2d185e(0xf7)]===_0x2d185e(0x130))[_0x2d185e(0x13c)](0x0,0x5),'sample_update':_0x44059f[_0x2d185e(0x131)](_0x56e3fb=>_0x56e3fb['_action']==='UPDATE')['slice'](0x0,0x5),'sample_skip':_0x44059f[_0x2d185e(0x131)](_0x5a3327=>_0x5a3327[_0x2d185e(0xf7)]==='SKIP')['slice'](0x0,0x5)},'params':_0x2d9b46};await redisHelper['setJob']('job:'+_0x284f84,_0x1f90a9,0xe10),_0x2c2f2a['rows']=_0x44059f,await redisHelper[_0x2d185e(0xcb)](_0x2d185e(0xb8)+_0x514b98,_0x2c2f2a,0xe10),logger['info']({'event':_0x2d185e(0xbb),'jobId':_0x284f84,'status':_0x1f90a9['status'],'insertCount':_0x260d7b,'updateCount':_0x378d3c,'skipCount':_0x4da387,'errorCount':_0x2c6b6a['length']},_0x1579b0['vVTgH']);}catch(_0x532bf1){logError(_0x532bf1,{'event':_0x2d185e(0xc0),'jobId':_0x284f84},'Preview\x20job\x20failed'),await redisHelper['setJob'](_0x2d185e(0x14c)+_0x284f84,{'job_id':_0x284f84,'upload_id':_0x514b98,'status':_0x1579b0['zDyLO'],'progress':0x0,'error':_0x532bf1['message'],'created_at':new Date()['toISOString'](),'completed_at':new Date()[_0x2d185e(0xe8)]()},0xe10);}}async[a0_0xd80b94(0x127)](_0x22f0da,_0x182227,_0x49e533,_0x3f9d3b,_0x5f203c='update_existing',_0x5afc6a=[]){const _0x3f4f64=a0_0xd80b94,_0x447552={'bjtqN':function(_0x33d2d9,_0x34d54a){return _0x33d2d9===_0x34d54a;},'VNEGj':function(_0x184546,_0x203f9a){return _0x184546===_0x203f9a;},'bzfay':_0x3f4f64(0xdb),'cWiTR':'update_existing','fwYBN':_0x3f4f64(0x143),'UvcUd':function(_0x5e3c45,_0x12a663){return _0x5e3c45===_0x12a663;},'tAcIy':_0x3f4f64(0xba),'AbzaD':'SKIP','jQPnb':function(_0x27ceda,_0x395b9d){return _0x27ceda===_0x395b9d;},'lGlYc':_0x3f4f64(0x130),'kFpOv':function(_0x41ffd6,_0x481aa3){return _0x41ffd6===_0x481aa3;}},_0x55f440=upsertBuilder['chunkRows'](_0x22f0da,0x64);for(const _0x39a497 of _0x55f440){const _0x30daee=_0x39a497[_0x3f4f64(0x10c)](_0x41dff8=>_0x41dff8[_0x182227[0x0]]),_0x7cf385=_0x30daee['map'](_0x56f806=>{const _0x50f730=_0x3f4f64;if(_0x447552[_0x50f730(0x14d)](_0x56f806,null)||_0x447552['VNEGj'](_0x56f806,undefined))return _0x447552['bzfay'];return'\x27'+String(_0x56f806)[_0x50f730(0x117)](/'/g,'\x27\x27')+'\x27';}),_0x2401af='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x3f9d3b+',\x20'+_0x182227[_0x3f4f64(0x11a)](',\x20')+_0x3f4f64(0x129)+_0x49e533+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x182227[0x0]+_0x3f4f64(0xf1)+_0x7cf385[_0x3f4f64(0x11a)](',\x20')+_0x3f4f64(0xed);let _0x3ccf31=await executeQuery(_0x2401af);dbType==='oracle'&&_0x3ccf31&&_0x3ccf31['length']>0x0&&(_0x3ccf31=_0x3ccf31['map'](_0x3b06df=>{const _0x2c97e2={};for(const [_0x2bfb67,_0x44a7fd]of Object['entries'](_0x3b06df)){_0x2c97e2[_0x2bfb67['toLowerCase']()]=_0x44a7fd;}return _0x2c97e2;}));const _0x175a5a=new Map();_0x3ccf31['forEach'](_0x1ae049=>{const _0x6e680e=_0x1ae049[_0x182227[0x0]];_0x175a5a['set'](_0x6e680e,_0x1ae049);}),_0x39a497[_0x3f4f64(0x14a)]((_0x4a3e97,_0x3850d6)=>{const _0x570660=_0x3f4f64,_0x42877f=_0x4a3e97[_0x182227[0x0]],_0x51b47c=_0x175a5a[_0x570660(0x12a)](_0x42877f);if(_0x51b47c){if(_0x5f203c===_0x447552[_0x570660(0xec)])_0x4a3e97['_action']=_0x447552[_0x570660(0xd1)],_0x4a3e97[_0x570660(0xd8)]=_0x51b47c[_0x3f9d3b];else{if(_0x447552[_0x570660(0x118)](_0x5f203c,_0x447552[_0x570660(0x151)])){_0x4a3e97[_0x570660(0xf7)]=_0x447552['AbzaD'],_0x4a3e97[_0x570660(0x101)]=_0x4a3e97['_errors']||[],_0x4a3e97['_errors'][_0x570660(0x11c)]('Record\x20exists\x20(insert_only\x20mode)');const _0x169fa1=_0x22f0da[_0x570660(0x149)](_0x4a3e97);_0x169fa1!==-0x1&&_0x5afc6a[_0x570660(0x11c)]({'rowIndex':_0x169fa1,'rowData':_0x4a3e97,'errors':[_0x570660(0x120)]});}else _0x5f203c===_0x570660(0xd7)&&(_0x4a3e97[_0x570660(0xf7)]=_0x447552['AbzaD']);}}else{if(_0x447552['jQPnb'](_0x5f203c,'update_existing'))_0x4a3e97[_0x570660(0xf7)]=_0x447552[_0x570660(0x109)];else(_0x5f203c==='insert_only'||_0x447552['kFpOv'](_0x5f203c,_0x570660(0xd7)))&&(_0x4a3e97[_0x570660(0xf7)]=_0x447552['lGlYc']);}});}}async['createCommitJob'](_0x5391e1){const _0x533c2e=a0_0xd80b94,_0x4d05b0={'zmJiP':_0x533c2e(0xc5),'kIZrc':'Commit\x20processing\x20failed','ibWRX':_0x533c2e(0x145),'FLAEg':function(_0x240a59,_0x29271f){return _0x240a59!==_0x29271f;},'bqPLf':_0x533c2e(0x126)},_0xb4fdf4=this[_0x533c2e(0xf6)](),_0x2e2e0e=await redisHelper[_0x533c2e(0xcc)](_0x533c2e(0x14c)+_0x5391e1);if(!_0x2e2e0e)throw new Error(_0x4d05b0['ibWRX']);if(_0x4d05b0[_0x533c2e(0x13f)](_0x2e2e0e[_0x533c2e(0x136)],'preview_ok'))throw new Error('Cannot\x20commit:\x20preview\x20status\x20is\x20'+_0x2e2e0e['status']);const _0x433d7f={'job_id':_0xb4fdf4,'upload_id':_0x2e2e0e[_0x533c2e(0x107)],'preview_job_id':_0x5391e1,'status':'processing','progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x2e2e0e[_0x533c2e(0x102)]};return await redisHelper[_0x533c2e(0xcb)](_0x533c2e(0x14c)+_0xb4fdf4,_0x433d7f,0xe10),logger[_0x533c2e(0xef)]({'event':_0x4d05b0['bqPLf'],'jobId':_0xb4fdf4,'previewJobId':_0x5391e1},'Commit\x20job\x20created'),this[_0x533c2e(0xc9)](_0xb4fdf4,_0x2e2e0e)['catch'](_0x23d415=>{const _0x348f7c=_0x533c2e;logError(_0x23d415,{'event':_0x4d05b0['zmJiP'],'jobId':_0xb4fdf4},_0x4d05b0[_0x348f7c(0xfc)]);}),{'job_id':_0xb4fdf4,'status':'processing'};}async['processCommitJob'](_0x540435,_0x373a32){const _0x5beb01=a0_0xd80b94,_0x3e3d17={'OxPtf':function(_0x4761a8,_0x48e18e){return _0x4761a8===_0x48e18e;},'AtHlV':function(_0xee5306,_0x1b98d2){return _0xee5306>_0x1b98d2;},'LdXAr':_0x5beb01(0x116),'AvShp':function(_0x7fa8c6,_0x5a6aaa){return _0x7fa8c6||_0x5a6aaa;},'LtYtb':_0x5beb01(0x11b),'ABwan':function(_0x4b8abf,_0x346c2a){return _0x4b8abf||_0x346c2a;},'QQCNA':'update','KCPUJ':function(_0x455280,_0x5957ea){return _0x455280(_0x5957ea);},'ZezUT':function(_0x5d8403,_0x1aac4b,_0x40b338,_0x37970e){return _0x5d8403(_0x1aac4b,_0x40b338,_0x37970e);},'CsphG':_0x5beb01(0x111)};try{const _0x137d3e=await redisHelper['getJob'](_0x5beb01(0xb8)+_0x373a32['upload_id']);if(!_0x137d3e)throw new Error('Upload\x20data\x20not\x20found\x20or\x20expired');const {rows:_0x5db01d,params:_0x463731}=_0x137d3e,{tableName:_0x52f88b,fieldName:_0x969cf9,primaryKey:_0x3b9bf9,upsertKeys:_0x5c5b95,excludeFromImport:_0x28581,lookupFields:_0x243420,columnFormats:_0x1c6068}=_0x463731,_0x1e5bb0=_0x243420?Object['keys'](_0x243420):[],_0x5ad639=new Set([..._0x28581||[],..._0x1e5bb0]);let _0x58f134=_0x969cf9;_0x3e3d17[_0x5beb01(0x106)](_0x5ad639[_0x5beb01(0xd5)],0x0)&&(_0x58f134=_0x969cf9[_0x5beb01(0x131)](_0x509321=>!_0x5ad639[_0x5beb01(0x132)](_0x509321)),logger['debug']({'event':'import_fields_filtered','originalCount':_0x969cf9[_0x5beb01(0x147)],'filteredCount':_0x58f134[_0x5beb01(0x147)],'excludedFields':Array[_0x5beb01(0xca)](_0x5ad639),'lookupSourceFields':_0x1e5bb0},_0x3e3d17[_0x5beb01(0xbe)]));const _0x149f0f=_0x5db01d[_0x5beb01(0x131)](_0x5c3e4a=>_0x5c3e4a['_action']==='INSERT'),_0x5d13d6=_0x5db01d[_0x5beb01(0x131)](_0x46104f=>_0x46104f['_action']==='UPDATE');let _0x52351b=0x0,_0xd91581=0x0;const _0x17e7d0=[];if(_0x149f0f[_0x5beb01(0x147)]>0x0){const _0x51ff67=upsertBuilder['chunkRows'](_0x149f0f,0x64);for(const _0x1fd212 of _0x51ff67){const {query:_0x3e0f62}=upsertBuilder[_0x5beb01(0x14b)](_0x1fd212,_0x52f88b,_0x58f134,_0x3e3d17['AvShp'](_0x1c6068,{}));_0x3e0f62&&_0x17e7d0['push']({'sql':_0x3e0f62,'count':_0x1fd212[_0x5beb01(0x147)],'type':_0x3e3d17['LtYtb']});}}if(_0x3e3d17['AtHlV'](_0x5d13d6['length'],0x0)){const _0x19ee86=upsertBuilder[_0x5beb01(0x13b)](_0x5d13d6,0x64);for(const _0x41c476 of _0x19ee86){const {query:_0x3ef912}=upsertBuilder['buildBatchUpdate'](_0x41c476,_0x52f88b,_0x58f134,_0x3b9bf9,_0x5c5b95,_0x3e3d17[_0x5beb01(0xf3)](_0x1c6068,{}));_0x3ef912&&_0x17e7d0['push']({'sql':_0x3ef912,'count':_0x41c476['length'],'type':_0x3e3d17['QQCNA']});}}_0x17e7d0[_0x5beb01(0x147)]>0x0&&await _0x3e3d17['KCPUJ'](executeTransaction,_0x17e7d0[_0x5beb01(0x10c)](_0x3a4429=>({'sql':_0x3a4429[_0x5beb01(0xcd)],'params':[]})));_0x17e7d0[_0x5beb01(0x14a)](_0x51c824=>{const _0x2fb342=_0x5beb01;if(_0x3e3d17[_0x2fb342(0xfb)](_0x51c824['type'],'insert'))_0x52351b+=_0x51c824['count'];else _0xd91581+=_0x51c824[_0x2fb342(0x14e)];});const _0x10ad61={'job_id':_0x540435,'upload_id':_0x373a32['upload_id'],'preview_job_id':_0x373a32[_0x5beb01(0x140)],'status':_0x5beb01(0xb5),'progress':0x64,'created_at':_0x373a32['created_at'],'started_at':new Date()[_0x5beb01(0xe8)](),'completed_at':new Date()['toISOString'](),'result':{'total_rows':_0x5db01d[_0x5beb01(0x147)],'inserted_rows':_0x52351b,'updated_rows':_0xd91581,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x463731};await redisHelper['setJob']('job:'+_0x540435,_0x10ad61,0xe10),logger['info']({'event':_0x5beb01(0x14f),'jobId':_0x540435,'insertedCount':_0x52351b,'updatedCount':_0xd91581},'Commit\x20job\x20completed');}catch(_0x320f65){_0x3e3d17[_0x5beb01(0xde)](logError,_0x320f65,{'event':_0x5beb01(0x153),'jobId':_0x540435},_0x5beb01(0x158)),await redisHelper['setJob']('job:'+_0x540435,{'job_id':_0x540435,'upload_id':_0x373a32['upload_id'],'preview_job_id':_0x373a32[_0x5beb01(0x140)],'status':_0x3e3d17[_0x5beb01(0xe2)],'progress':0x0,'error':_0x320f65[_0x5beb01(0x10a)],'created_at':_0x373a32['created_at'],'started_at':new Date()['toISOString'](),'completed_at':new Date()[_0x5beb01(0xe8)]()},0xe10);}}async[a0_0xd80b94(0x139)](_0x1dca82){const _0x4af166=a0_0xd80b94,_0x1f2635={'elunh':'Job\x20not\x20found\x20or\x20expired'},_0x36a342=await redisHelper[_0x4af166(0xcc)](_0x4af166(0x14c)+_0x1dca82);if(!_0x36a342)return{'success':![],'error':_0x1f2635[_0x4af166(0x152)]};return{'success':!![],'data':_0x36a342};}}module[a0_0xd80b94(0xb9)]=new ImportService();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x99a0bb=a0_0x4b8d;(function(_0x50c35a,_0x371de3){const _0x3c2684=a0_0x4b8d,_0x8d626a=_0x50c35a();while(!![]){try{const _0x5b60c3=parseInt(_0x3c2684(0x1fb))/0x1+-parseInt(_0x3c2684(0x1fc))/0x2*(-parseInt(_0x3c2684(0x1f1))/0x3)+-parseInt(_0x3c2684(0x203))/0x4+-parseInt(_0x3c2684(0x20b))/0x5+-parseInt(_0x3c2684(0x1f8))/0x6*(-parseInt(_0x3c2684(0x1ec))/0x7)+-parseInt(_0x3c2684(0x1ef))/0x8*(parseInt(_0x3c2684(0x1f2))/0x9)+parseInt(_0x3c2684(0x1f0))/0xa;if(_0x5b60c3===_0x371de3)break;else _0x8d626a['push'](_0x8d626a['shift']());}catch(_0x5a77ab){_0x8d626a['push'](_0x8d626a['shift']());}}}(a0_0x3cde,0x855ff));function a0_0x4b8d(_0x174cd6,_0x4d4c75){_0x174cd6=_0x174cd6-0x1ec;const _0x3cdef7=a0_0x3cde();let _0x4b8d20=_0x3cdef7[_0x174cd6];if(a0_0x4b8d['aAiUUR']===undefined){var _0x3dc254=function(_0x1c9678){const _0x5dca90='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e3fff='',_0x237564='';for(let _0x3806ac=0x0,_0x35dd19,_0x45c4bb,_0x4204db=0x0;_0x45c4bb=_0x1c9678['charAt'](_0x4204db++);~_0x45c4bb&&(_0x35dd19=_0x3806ac%0x4?_0x35dd19*0x40+_0x45c4bb:_0x45c4bb,_0x3806ac++%0x4)?_0x3e3fff+=String['fromCharCode'](0xff&_0x35dd19>>(-0x2*_0x3806ac&0x6)):0x0){_0x45c4bb=_0x5dca90['indexOf'](_0x45c4bb);}for(let _0xcfb283=0x0,_0x174e6a=_0x3e3fff['length'];_0xcfb283<_0x174e6a;_0xcfb283++){_0x237564+='%'+('00'+_0x3e3fff['charCodeAt'](_0xcfb283)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x237564);};a0_0x4b8d['RGnGps']=_0x3dc254,a0_0x4b8d['kWBQXv']={},a0_0x4b8d['aAiUUR']=!![];}const _0x561869=_0x3cdef7[0x0],_0x4a2afe=_0x174cd6+_0x561869,_0x44974b=a0_0x4b8d['kWBQXv'][_0x4a2afe];return!_0x44974b?(_0x4b8d20=a0_0x4b8d['RGnGps'](_0x4b8d20),a0_0x4b8d['kWBQXv'][_0x4a2afe]=_0x4b8d20):_0x4b8d20=_0x44974b,_0x4b8d20;}const {logger}=require('./logger');function a0_0x3cde(){const _0x3f5ab0=['nKL5uK12BG','vKrwqvi','DMfSAwrHDgvsB3C','mZmZntG4z1rVrNLV','mZHeCvLIAxu','CMvXDwLYzwq','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','zM9YrwfJAa','DMfSAwrHDgvqAg9Uzq','DMfSAwrHDgvvCMW','DMfSAwrHDgvfBwfPBa','mZy2ntq1mLbgtuL4Bq','Aw5MBW','zM9YBwf0','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','DgvZDa','yMf0y2HwywXPzgf0zvjVD3m','AMzhr2y','AM9PBG','ndC4mJu0nw9JA2LXCW','mJC1ndm5nw1KAMDXCG','Aw9LEM0','BgvUz3rO','oty0mJrArxjXDxG','mtu3otKYndbzDMXbuhK','mtu2nJm5svrvyuno','nJu3Cez3Cu9J','BvLyvgu','zw1HAwW','BwfW','DMfSAwrHDgvgAwvSzezVCM1HDa','ChvZAa'];a0_0x3cde=function(){return _0x3f5ab0;};return a0_0x3cde();}class ImportValidator{['validateRow'](_0x3e1441,_0x1ac99e=[],_0x17b762={}){const _0x1e9bd6=a0_0x4b8d,_0x261d76={'XSqQt':function(_0x81cc0,_0x438ad5){return _0x81cc0===_0x438ad5;},'VDVAR':_0x1e9bd6(0x1fd),'XRHbB':function(_0x30102a,_0x54283a){return _0x30102a===_0x54283a;}},_0x1ec94f=[];return _0x1ac99e[_0x1e9bd6(0x1ff)](_0x4c60d7=>{const _0x5d53ad=_0x1e9bd6,_0x4d177c=_0x3e1441[_0x4c60d7];(_0x4d177c===null||_0x261d76['XSqQt'](_0x4d177c,undefined)||_0x261d76['XSqQt'](_0x4d177c,''))&&_0x1ec94f['push']({'field':_0x4c60d7,'type':_0x261d76[_0x5d53ad(0x1f9)],'message':'Required\x20field\x20is\x20empty'});}),Object['keys'](_0x17b762)[_0x1e9bd6(0x1ff)](_0x378074=>{const _0x91022b=_0x1e9bd6,_0x373ec1=_0x3e1441[_0x378074],_0x292e35=_0x17b762[_0x378074];if(_0x261d76['XSqQt'](_0x373ec1,null)||_0x373ec1===undefined||_0x261d76['XRHbB'](_0x373ec1,''))return;const _0x3e5b31=this[_0x91022b(0x1f6)](_0x378074,_0x373ec1,_0x292e35);_0x3e5b31&&_0x1ec94f[_0x91022b(0x1f7)](_0x3e5b31);}),_0x1ec94f;}[a0_0x99a0bb(0x1f6)](_0x427557,_0x310869,_0xd1540b){const _0x12989f=a0_0x99a0bb,_0x21d537={'tNQyX':'phone','qCpNK':'url'};switch(_0xd1540b){case _0x12989f(0x1f4):return this['validateEmail'](_0x427557,_0x310869);case _0x21d537['tNQyX']:return this[_0x12989f(0x200)](_0x427557,_0x310869);case _0x21d537['qCpNK']:return this['validateUrl'](_0x427557,_0x310869);case'number':return this['validateNumber'](_0x427557,_0x310869);default:return null;}}[a0_0x99a0bb(0x202)](_0x5e0c92,_0xa09585){const _0x10e650=a0_0x99a0bb,_0x3c75b5={'kuRyt':function(_0x1dbde7,_0x5d15a7){return _0x1dbde7(_0x5d15a7);},'ioezm':_0x10e650(0x205)},_0x45f8f4=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x45f8f4[_0x10e650(0x207)](_0x3c75b5['kuRyt'](String,_0xa09585)))return{'field':_0x5e0c92,'type':_0x3c75b5[_0x10e650(0x1ed)],'message':'Invalid\x20email\x20format'};return null;}[a0_0x99a0bb(0x200)](_0x2f5a59,_0xf2e235){const _0x2c9dd5=a0_0x99a0bb,_0x2e7847={'mYXTe':function(_0x55a9a2,_0x5028f9){return _0x55a9a2<_0x5028f9;},'jfGGf':_0x2c9dd5(0x205)},_0x21d628=String(_0xf2e235)['replace'](/\s+/g,''),_0x1e82ff=/^[\d\+\-\(\)]+$/;if(!_0x1e82ff['test'](_0x21d628)||_0x2e7847[_0x2c9dd5(0x1f3)](_0x21d628[_0x2c9dd5(0x1ee)],0x8))return{'field':_0x2f5a59,'type':_0x2e7847[_0x2c9dd5(0x209)],'message':'Invalid\x20phone\x20format'};return null;}[a0_0x99a0bb(0x201)](_0x18770f,_0x575ee0){const _0x4b3c4b=a0_0x99a0bb,_0x35d891={'NLRrz':'Invalid\x20URL\x20format'};try{return new URL(String(_0x575ee0)),null;}catch(_0x369eef){return{'field':_0x18770f,'type':_0x4b3c4b(0x205),'message':_0x35d891['NLRrz']};}}['validateNumber'](_0x375db4,_0xff9c3f){const _0x10bba8={'TUMEh':'Invalid\x20number\x20format'};if(isNaN(_0xff9c3f))return{'field':_0x375db4,'type':'format','message':_0x10bba8['TUMEh']};return null;}[a0_0x99a0bb(0x206)](_0x39c74d,_0x3331c2){const _0x5f1f09=a0_0x99a0bb,_0x1b58e4=new Map(),_0x20935d=[];return _0x39c74d[_0x5f1f09(0x1ff)]((_0xf5df9e,_0x52da3d)=>{const _0x5986e7=_0x5f1f09,_0x2b2d00=_0x3331c2[_0x5986e7(0x1f5)](_0x337462=>_0xf5df9e[_0x337462])[_0x5986e7(0x20a)]('|');_0x1b58e4['has'](_0x2b2d00)?_0x20935d[_0x5986e7(0x1f7)]({'rowIndex':_0x52da3d,'duplicateOf':_0x1b58e4['get'](_0x2b2d00),'key':_0x2b2d00}):_0x1b58e4['set'](_0x2b2d00,_0x52da3d);}),_0x20935d;}[a0_0x99a0bb(0x208)](_0x3684d1,_0x3cabb6,_0x469ae7){const _0x45567c=a0_0x99a0bb,_0x2f8684={'gEjcz':function(_0x3cbcd7,_0x5f270b){return _0x3cbcd7>_0x5f270b;},'UgzwD':'batch_validation_complete'},_0x888e07=[];return _0x3684d1[_0x45567c(0x1ff)]((_0xff3dae,_0x41c9b4)=>{const _0x2fbe9a=_0x45567c,_0x1bd504=this[_0x2fbe9a(0x1fa)](_0xff3dae,_0x3cabb6,_0x469ae7);_0x2f8684['gEjcz'](_0x1bd504['length'],0x0)&&_0x888e07['push']({'rowIndex':_0x41c9b4,'rowData':_0xff3dae,'errors':_0x1bd504});}),logger[_0x45567c(0x204)]({'event':_0x2f8684['UgzwD'],'totalRows':_0x3684d1[_0x45567c(0x1ee)],'errorCount':_0x888e07[_0x45567c(0x1ee)]},_0x45567c(0x1fe)),_0x888e07;}}module['exports']=new ImportValidator();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x4b8bee=a0_0xf516;(function(_0x4c82dd,_0x1cc52b){const _0x18fc95=a0_0xf516,_0x21444d=_0x4c82dd();while(!![]){try{const _0x4a3532=parseInt(_0x18fc95(0x18d))/0x1*(-parseInt(_0x18fc95(0x1bc))/0x2)+parseInt(_0x18fc95(0x18b))/0x3*(parseInt(_0x18fc95(0x1be))/0x4)+-parseInt(_0x18fc95(0x1b0))/0x5*(parseInt(_0x18fc95(0x195))/0x6)+parseInt(_0x18fc95(0x198))/0x7*(parseInt(_0x18fc95(0x1a3))/0x8)+-parseInt(_0x18fc95(0x1ba))/0x9+-parseInt(_0x18fc95(0x1bd))/0xa+parseInt(_0x18fc95(0x1b7))/0xb*(parseInt(_0x18fc95(0x18c))/0xc);if(_0x4a3532===_0x1cc52b)break;else _0x21444d['push'](_0x21444d['shift']());}catch(_0xf6f565){_0x21444d['push'](_0x21444d['shift']());}}}(a0_0x2f96,0x7e965));const importService=require(a0_0x4b8bee(0x190)),uploadHandler=require(a0_0x4b8bee(0x1b4)),{logger,logError}=require('../../utils/logger');class ImportHandler{static['registerRoutes'](_0x4aeb25,_0x177315,_0x42f276,_0x9deb05){const _0x3434be=a0_0x4b8bee,_0x3da8c5={'KecYy':_0x3434be(0x193),'ualHA':'Failed\x20to\x20upload\x20import\x20file','yeMNP':function(_0x24c2a5,_0xf7e6fd,_0x28e4f1,_0x1039ee){return _0x24c2a5(_0xf7e6fd,_0x28e4f1,_0x1039ee);},'MGNSq':_0x3434be(0x1b5),'fGzxt':_0x3434be(0x18f),'pDfBy':'import_commit_error'},_0x4e7701='/api/'+_0x177315+'/'+_0x42f276;_0x4aeb25['post'](_0x4e7701+_0x3434be(0x18e),async(_0x27cadb,_0x334116)=>{const _0x522883=_0x3434be;try{await this[_0x522883(0x1ae)](_0x27cadb,_0x334116,_0x9deb05,_0x177315,_0x42f276);}catch(_0x36dc5f){logError(_0x36dc5f,{'event':_0x3da8c5['KecYy']},_0x3da8c5['ualHA']),_0x334116['status'](0x1f4)['json']({'success':![],'error':_0x36dc5f['message']});}}),_0x4aeb25['post'](_0x4e7701+_0x3434be(0x1b3),async(_0x32a1ee,_0x43ca03)=>{const _0x108a5f=_0x3434be;try{await this['handleImportPreview'](_0x32a1ee,_0x43ca03);}catch(_0x5cf002){_0x3da8c5[_0x108a5f(0x1a9)](logError,_0x5cf002,{'event':_0x3da8c5[_0x108a5f(0x1af)]},_0x3da8c5['fGzxt']),_0x43ca03[_0x108a5f(0x1bb)](0x1f4)[_0x108a5f(0x191)]({'success':![],'error':_0x5cf002[_0x108a5f(0x189)]});}}),_0x4aeb25[_0x3434be(0x1ad)](_0x4e7701+'/import-commit',async(_0x1c035c,_0x2acd06)=>{const _0x4afe80=_0x3434be;try{await this['handleImportCommit'](_0x1c035c,_0x2acd06);}catch(_0x5bae0c){logError(_0x5bae0c,{'event':_0x3da8c5['pDfBy']},'Failed\x20to\x20create\x20commit\x20job'),_0x2acd06[_0x4afe80(0x1bb)](0x1f4)[_0x4afe80(0x191)]({'success':![],'error':_0x5bae0c[_0x4afe80(0x189)]});}}),_0x4aeb25['get'](_0x4e7701+'/import-status',async(_0x4b13f3,_0xaa2eba)=>{const _0x4ec493=_0x3434be;try{await this[_0x4ec493(0x1c0)](_0x4b13f3,_0xaa2eba);}catch(_0xa767af){logError(_0xa767af,{'event':_0x4ec493(0x1aa)},_0x4ec493(0x18a)),_0xaa2eba['status'](0x1f4)['json']({'success':![],'error':_0xa767af['message']});}}),logger['info']({'event':'import_routes_registered','module':_0x177315,'endpoint':_0x42f276,'table':_0x9deb05['tableName']},_0x3434be(0x1bf)+_0x177315+'/'+_0x42f276);}static async['handleImportUpload'](_0x468cbc,_0x50dc27,_0x414ea7,_0x1ac96c,_0xbbd14b){const _0x2b2d67=a0_0x4b8bee,_0x4da071={'GtCeZ':'No\x20file\x20uploaded','OyOOm':_0x2b2d67(0x1a7),'qxUaF':function(_0x87e692,_0x464c3b){return _0x87e692>_0x464c3b;},'ZdMbN':function(_0x3fcead,_0x370dc4,_0x85cd71,_0x4b8556){return _0x3fcead(_0x370dc4,_0x85cd71,_0x4b8556);}},_0x4230d9=uploadHandler[_0x2b2d67(0x188)]();_0x4230d9(_0x468cbc,_0x50dc27,async _0x5d56f6=>{const _0x4edf5b=_0x2b2d67;if(_0x5d56f6)return _0x50dc27[_0x4edf5b(0x1bb)](0x190)['json']({'success':![],'error':_0x5d56f6[_0x4edf5b(0x189)]});if(!_0x468cbc[_0x4edf5b(0x19c)])return _0x50dc27['status'](0x190)[_0x4edf5b(0x191)]({'success':![],'error':_0x4da071[_0x4edf5b(0x1a6)]});try{const _0x142d35=_0x468cbc['body'][_0x4edf5b(0x192)]||'update_existing';let _0x26ed5c=_0x414ea7[_0x4edf5b(0x1b6)];if(_0x468cbc[_0x4edf5b(0x196)]['upsertKeys'])try{_0x26ed5c=JSON['parse'](_0x468cbc[_0x4edf5b(0x196)][_0x4edf5b(0x1b6)]);}catch(_0x2a1ac7){logger[_0x4edf5b(0x197)]({'event':_0x4da071[_0x4edf5b(0x199)],'error':_0x2a1ac7['message']},_0x4edf5b(0x1b8));}const _0x5b56f5=_0x414ea7['fieldName']||[];if(Array[_0x4edf5b(0x1a0)](_0x26ed5c)){const _0x104527=_0x26ed5c[_0x4edf5b(0x19a)](_0x5940ef=>!_0x5b56f5[_0x4edf5b(0x1a2)](_0x5940ef));if(_0x4da071[_0x4edf5b(0x19d)](_0x104527[_0x4edf5b(0x1b1)],0x0))return _0x50dc27['status'](0x190)['json']({'success':![],'error':_0x4edf5b(0x1ab),'message':'Keys\x20not\x20allowed:\x20'+_0x104527[_0x4edf5b(0x1a5)](',\x20'),'validFields':_0x5b56f5});}const _0x5c3e5e={'moduleName':_0x1ac96c,'endpointName':_0xbbd14b,'tableName':_0x414ea7['tableName'],'primaryKey':_0x414ea7['primaryKey'],'fieldName':_0x414ea7[_0x4edf5b(0x1a1)],'fieldLabels':_0x414ea7['fieldLabels']||{},'columnFormats':_0x414ea7['columnFormats']||{},'upsertKeys':_0x26ed5c,'upsertStrategy':_0x142d35,'requiredFields':_0x414ea7['requiredFields']||[],'validations':_0x414ea7['validations']||{},'lookupFields':_0x414ea7[_0x4edf5b(0x1b2)]||{},'excludeFromImport':_0x414ea7[_0x4edf5b(0x1ac)]||[],'chunkSize':_0x414ea7['chunkSize']||0x64},_0xb71fcc=await importService['uploadFile'](_0x468cbc['file'],_0x5c3e5e);_0x50dc27['json']({'success':!![],'data':_0xb71fcc});}catch(_0x13def4){_0x4da071[_0x4edf5b(0x19e)](logError,_0x13def4,{'event':'import_upload_process_error'},_0x4edf5b(0x1a4)),_0x50dc27['status'](0x1f4)['json']({'success':![],'error':_0x13def4['message']});}});}static async[a0_0x4b8bee(0x1b9)](_0x1f0f90,_0x2bffb9){const _0x1edb7f=a0_0x4b8bee,_0x575331={'FSrrw':'upload_id\x20is\x20required'},{upload_id:_0x313045}=_0x1f0f90[_0x1edb7f(0x196)];if(!_0x313045)return _0x2bffb9[_0x1edb7f(0x1bb)](0x190)[_0x1edb7f(0x191)]({'success':![],'error':_0x575331['FSrrw']});try{const _0x22dc06=await importService['createPreviewJob'](_0x313045);_0x2bffb9['json']({'success':!![],'data':_0x22dc06});}catch(_0x32fb4c){_0x2bffb9['status'](0x1f4)[_0x1edb7f(0x191)]({'success':![],'error':_0x32fb4c['message']});}}static async[a0_0x4b8bee(0x19f)](_0x3b8d0b,_0x36b4ff){const _0x57519a=a0_0x4b8bee,{preview_job_id:_0x52046c}=_0x3b8d0b['body'];if(!_0x52046c)return _0x36b4ff[_0x57519a(0x1bb)](0x190)[_0x57519a(0x191)]({'success':![],'error':_0x57519a(0x19b)});try{const _0xda0ae4=await importService['createCommitJob'](_0x52046c);_0x36b4ff['json']({'success':!![],'data':_0xda0ae4});}catch(_0x30af8d){_0x36b4ff['status'](0x1f4)[_0x57519a(0x191)]({'success':![],'error':_0x30af8d['message']});}}static async['handleImportStatus'](_0x2a179f,_0x265c4f){const _0x1656d0=a0_0x4b8bee,{job_id:_0x2c4a5c}=_0x2a179f[_0x1656d0(0x1a8)];if(!_0x2c4a5c)return _0x265c4f['status'](0x190)[_0x1656d0(0x191)]({'success':![],'error':_0x1656d0(0x194)});try{const _0x88e857=await importService['getJobStatus'](_0x2c4a5c);if(!_0x88e857['success'])return _0x265c4f['status'](0x194)[_0x1656d0(0x191)](_0x88e857);_0x265c4f[_0x1656d0(0x191)](_0x88e857);}catch(_0x51ee56){_0x265c4f[_0x1656d0(0x1bb)](0x1f4)['json']({'success':![],'error':_0x51ee56['message']});}}}function a0_0x2f96(){const _0x800631=['mtG5mdi2CeLHzK1i','mJG0mhvis09sDG','ng9HvMHdrG','sw1WB3j0ihjVDxrLCYbYzwDPC3rLCMvKigzVCIa','AgfUzgXLsw1WB3j0u3rHDhvZ','zxHWB3j0CW','z2v0vxbSB2fKtwLKzgXLD2fYzq','BwvZC2fNzq','rMfPBgvKihrVigDLDcbPBxbVCNqGC3rHDhvZ','mJiYnta4mNDRseTerG','nJm2EKP4s3Dv','oev5EuXquq','l2LTCg9YDc11CgXVywq','rMfPBgvKihrVignYzwf0zsbWCMv2Awv3igPVyG','lI4VlI4VC2vYDMLJzxmVAw1WB3j0lxnLCNzPy2u','ANnVBG','DxbZzxj0tw9Kzq','Aw1WB3j0x3vWBg9Hzf9LCNjVCG','AM9Ix2LKigLZihjLCxvPCMvK','odK1odzMvg1cDgW','yM9KEq','D2fYBG','nda2tvn3rgzP','t3Lpt20','zMLSDgvY','ChjLDMLLD19QB2jFAwqGAxmGCMvXDwLYzwq','zMLSzq','CxHvyuy','wMrnyK4','AgfUzgXLsw1WB3j0q29TBwL0','AxnbCNjHEq','zMLLBgroyw1L','Aw5JBhvKzxm','otm2ntzODfrJExO','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fK','AM9PBG','r3rdzvO','DxbZzxj0x2TLExnFCgfYC2vFzxjYB3i','CxvLCNK','EwvntLa','Aw1WB3j0x3n0yxr1C19LCNjVCG','sw52ywXPzcb1ChnLCNqGA2v5CW','zxHJBhvKzuzYB21jBxbVCNq','Cg9ZDa','AgfUzgXLsw1WB3j0vxbSB2fK','tuDou3e','mJeWr0nqqxHr','BgvUz3rO','Bg9VA3vWrMLLBgrZ','l2LTCg9YDc1WCMv2Awv3','lI4VlI4VDxrPBhmVDxbSB2fKlwHHBMrSzxi','Aw1WB3j0x3bYzxzPzxDFzxjYB3i','DxbZzxj0s2v5CW','mZa1ndm3rvPqEunQ','rMfPBgvKihrVihbHCNnLihvWC2vYDeTLExmSihvZAw5NigrLzMf1Bhq','AgfUzgXLsw1WB3j0uhjLDMLLDW','odKXmZi0meLeBff0wa','C3rHDhvZ'];a0_0x2f96=function(){return _0x800631;};return a0_0x2f96();}function a0_0xf516(_0x5071c0,_0x5db06b){_0x5071c0=_0x5071c0-0x188;const _0x2f9670=a0_0x2f96();let _0xf51626=_0x2f9670[_0x5071c0];if(a0_0xf516['FCFbjC']===undefined){var _0x4aa842=function(_0x1c024a){const _0x3404a7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x326463='',_0x13a7d3='';for(let _0x1874b1=0x0,_0x2043f6,_0x147456,_0x44f0fb=0x0;_0x147456=_0x1c024a['charAt'](_0x44f0fb++);~_0x147456&&(_0x2043f6=_0x1874b1%0x4?_0x2043f6*0x40+_0x147456:_0x147456,_0x1874b1++%0x4)?_0x326463+=String['fromCharCode'](0xff&_0x2043f6>>(-0x2*_0x1874b1&0x6)):0x0){_0x147456=_0x3404a7['indexOf'](_0x147456);}for(let _0x56eaa6=0x0,_0xfe2c2c=_0x326463['length'];_0x56eaa6<_0xfe2c2c;_0x56eaa6++){_0x13a7d3+='%'+('00'+_0x326463['charCodeAt'](_0x56eaa6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13a7d3);};a0_0xf516['HkOuJB']=_0x4aa842,a0_0xf516['huVwjq']={},a0_0xf516['FCFbjC']=!![];}const _0x1d570c=_0x2f9670[0x0],_0x4955ca=_0x5071c0+_0x1d570c,_0x2e2846=a0_0xf516['huVwjq'][_0x4955ca];return!_0x2e2846?(_0xf51626=a0_0xf516['HkOuJB'](_0xf51626),a0_0xf516['huVwjq'][_0x4955ca]=_0xf51626):_0xf51626=_0x2e2846,_0xf51626;}module[a0_0x4b8bee(0x1c1)]=ImportHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0xe023b2=a0_0x4429;(function(_0x4d27a1,_0x251248){const _0x33e8a6=a0_0x4429,_0x3d2278=_0x4d27a1();while(!![]){try{const _0x2b38e3=-parseInt(_0x33e8a6(0x112))/0x1*(parseInt(_0x33e8a6(0x10f))/0x2)+-parseInt(_0x33e8a6(0xfe))/0x3*(-parseInt(_0x33e8a6(0x109))/0x4)+-parseInt(_0x33e8a6(0xef))/0x5*(-parseInt(_0x33e8a6(0xff))/0x6)+parseInt(_0x33e8a6(0xc1))/0x7*(parseInt(_0x33e8a6(0xf3))/0x8)+parseInt(_0x33e8a6(0xdc))/0x9*(parseInt(_0x33e8a6(0xeb))/0xa)+-parseInt(_0x33e8a6(0xfa))/0xb*(parseInt(_0x33e8a6(0xf6))/0xc)+parseInt(_0x33e8a6(0xc2))/0xd*(parseInt(_0x33e8a6(0xd1))/0xe);if(_0x2b38e3===_0x251248)break;else _0x3d2278['push'](_0x3d2278['shift']());}catch(_0x5e90cf){_0x3d2278['push'](_0x3d2278['shift']());}}}(a0_0xfb80,0x7e409));const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':a0_0xe023b2(0x104),'MYSQL':'mysql','SQLSERVER':'sqlserver','ORACLE':a0_0xe023b2(0xd4),'SQLITE':a0_0xe023b2(0xd0)};class UpsertBuilder{[a0_0xe023b2(0x102)](){const _0x5b74c1=a0_0xe023b2,_0x237739=(process[_0x5b74c1(0x10b)]['DB_TYPE']||_0x5b74c1(0x104))['toLowerCase'](),_0x39f55f=Object[_0x5b74c1(0x111)](DB_TYPES);if(!_0x39f55f[_0x5b74c1(0xd7)](_0x237739))return logger[_0x5b74c1(0xed)]({'event':_0x5b74c1(0x10e),'provided':_0x237739,'fallback':_0x5b74c1(0x104)},'Invalid\x20DB_TYPE:\x20'+_0x237739+_0x5b74c1(0xd3)),DB_TYPES[_0x5b74c1(0xdf)];return _0x237739;}[a0_0xe023b2(0xe7)](_0x1e7d22,_0x3494b3,_0x4e09e=![]){const _0x70e2ab=a0_0xe023b2,_0x4fb0c7={'iXjik':_0x70e2ab(0xbf)};if(_0x4e09e)switch(_0x3494b3){case DB_TYPES[_0x70e2ab(0xdf)]:return _0x70e2ab(0xd2);case DB_TYPES['MYSQL']:return'NULL';case DB_TYPES['SQLITE']:return _0x4fb0c7['iXjik'];case DB_TYPES['SQLSERVER']:return _0x4fb0c7['iXjik'];case DB_TYPES['ORACLE']:return'NULL';default:return _0x70e2ab(0xd2);}switch(_0x3494b3){case DB_TYPES[_0x70e2ab(0xdf)]:return _0x1e7d22+_0x70e2ab(0x105);case DB_TYPES[_0x70e2ab(0xd5)]:return _0x1e7d22;case DB_TYPES['SQLITE']:return _0x1e7d22;case DB_TYPES['SQLSERVER']:return _0x70e2ab(0xc5)+_0x1e7d22+'\x20AS\x20DATE)';case DB_TYPES['ORACLE']:return'TO_DATE('+_0x1e7d22+',\x20\x27YYYY-MM-DD\x27)';default:return _0x1e7d22+_0x70e2ab(0x105);}}['buildEscapeFunction'](_0x28400c={}){const _0x31cdab=a0_0xe023b2,_0x684d6c={'yWrdM':function(_0x4c7320,_0x2b6791){return _0x4c7320===_0x2b6791;},'CVVaz':_0x31cdab(0xf8),'vaieX':'NULL','QwmYr':function(_0x1a166f,_0x1c4286){return _0x1a166f===_0x1c4286;},'tvrOu':function(_0xd9f5aa,_0x260d92){return _0xd9f5aa===_0x260d92;},'pvGKl':_0x31cdab(0xcd),'rxfoH':function(_0x58f967,_0x241186){return _0x58f967(_0x241186);}},_0x3e346e=this[_0x31cdab(0x102)]();return(_0xfad125,_0x3763cc)=>{const _0x2faa66=_0x31cdab,_0x1411ee=_0x28400c[_0x3763cc];if(_0x684d6c['yWrdM'](_0xfad125,null)||_0x684d6c[_0x2faa66(0xee)](_0xfad125,undefined)){if(_0x1411ee&&_0x1411ee['type']===_0x684d6c[_0x2faa66(0x110)])return this[_0x2faa66(0xe7)](null,_0x3e346e,!![]);return _0x684d6c['vaieX'];}if(typeof _0xfad125===_0x2faa66(0xe6)){const _0x837ec7='\x27'+_0xfad125[_0x2faa66(0xf5)](/'/g,'\x27\x27')+'\x27';if(_0x1411ee&&_0x684d6c[_0x2faa66(0xcf)](_0x1411ee['type'],_0x684d6c['CVVaz']))return this[_0x2faa66(0xe7)](_0x837ec7,_0x3e346e,![]);return _0x837ec7;}if(_0x684d6c[_0x2faa66(0xe8)](typeof _0xfad125,_0x684d6c['pvGKl']))return _0xfad125;if(typeof _0xfad125==='boolean')return _0xfad125;const _0x21d798='\x27'+_0x684d6c['rxfoH'](String,_0xfad125)[_0x2faa66(0xf5)](/'/g,'\x27\x27')+'\x27';if(_0x1411ee&&_0x684d6c[_0x2faa66(0xee)](_0x1411ee[_0x2faa66(0xe0)],_0x684d6c['CVVaz']))return this[_0x2faa66(0xe7)](_0x21d798,_0x3e346e,![]);return _0x21d798;};}[a0_0xe023b2(0xda)](_0x4b1d85,_0x11feda,_0x33d6a3,_0x411f59={}){const _0x381507={'PnZhe':function(_0x59dd3b,_0x454bb8){return _0x59dd3b===_0x454bb8;}},_0x237288=this['getDatabaseType']();if(_0x381507['PnZhe'](_0x237288,DB_TYPES['ORACLE']))return this['_buildBatchInsertOracle'](_0x4b1d85,_0x11feda,_0x33d6a3,_0x411f59);return this['_buildBatchInsertPostgres'](_0x4b1d85,_0x11feda,_0x33d6a3,_0x411f59);}[a0_0xe023b2(0xc9)](_0x458d8c,_0x524585,_0x56d8f8,_0x40dcbc={}){const _0x33ba64=a0_0xe023b2,_0xc42b37={'dpbDD':'postgresql'};if(_0x458d8c[_0x33ba64(0x107)]===0x0)return{'query':null,'values':[]};const _0x35139b=this[_0x33ba64(0xf2)](_0x40dcbc),_0x1b8530=_0x458d8c['map'](_0x4f16f0=>{const _0x22815f=_0x33ba64,_0x2b8a3e=_0x56d8f8[_0x22815f(0xe1)](_0x31f0f0=>_0x35139b(_0x4f16f0[_0x31f0f0],_0x31f0f0));return'('+_0x2b8a3e[_0x22815f(0xe3)](',\x20')+')';}),_0x49b765=_0x33ba64(0xea)+_0x524585+'\x20('+_0x56d8f8['join'](',\x20')+_0x33ba64(0xca)+_0x1b8530[_0x33ba64(0xe3)](_0x33ba64(0x106))+'\x0a\x20\x20\x20\x20';return logger[_0x33ba64(0xd6)]({'event':'batch_insert_built','tableName':_0x524585,'rowCount':_0x458d8c['length'],'dbType':_0xc42b37['dpbDD']},_0x33ba64(0xe4)),{'query':_0x49b765,'values':[]};}[a0_0xe023b2(0xdd)](_0x2649c0,_0x4fe13a,_0x46587a,_0x1b65aa={}){const _0x3f4e46=a0_0xe023b2,_0x492e14={'fNNge':function(_0x4ce8cf,_0x284ca1){return _0x4ce8cf===_0x284ca1;},'uJwPB':'Batch\x20INSERT\x20query\x20built\x20(Oracle)'};if(_0x492e14[_0x3f4e46(0xe2)](_0x2649c0[_0x3f4e46(0x107)],0x0))return{'query':null,'values':[]};const _0x1d577a=this['buildEscapeFunction'](_0x1b65aa),_0x49d7cf=_0x2649c0[_0x3f4e46(0xe1)](_0x5684c2=>{const _0x2ca207=_0x3f4e46,_0x41c7b4=_0x46587a['map'](_0x104cb9=>_0x1d577a(_0x5684c2[_0x104cb9],_0x104cb9));return _0x2ca207(0xc0)+_0x4fe13a+'\x20('+_0x46587a[_0x2ca207(0xe3)](',\x20')+_0x2ca207(0xc7)+_0x41c7b4[_0x2ca207(0xe3)](',\x20')+')';}),_0x5e530a=_0x3f4e46(0xc4)+_0x49d7cf[_0x3f4e46(0xe3)]('\x0a')+_0x3f4e46(0xe5);return logger['debug']({'event':_0x3f4e46(0xf7),'tableName':_0x4fe13a,'rowCount':_0x2649c0[_0x3f4e46(0x107)],'dbType':_0x3f4e46(0xd4)},_0x492e14[_0x3f4e46(0xec)]),{'query':_0x5e530a,'values':[]};}['buildBatchUpdate'](_0x5eb9c9,_0x3c0834,_0x5e7b3c,_0x3f5e4c,_0x207143,_0x2a1ab6={}){const _0x5ecd1b=a0_0xe023b2,_0x30cc0b={'fSxfN':function(_0x3ea6a4,_0x465756){return _0x3ea6a4===_0x465756;},'QCYAN':function(_0x2aed71,_0xf1e7e7){return _0x2aed71===_0xf1e7e7;}},_0x29ba64=this[_0x5ecd1b(0x102)]();if(_0x30cc0b[_0x5ecd1b(0xc3)](_0x29ba64,DB_TYPES[_0x5ecd1b(0xcb)]))return this['_buildBatchUpdateOracle'](_0x5eb9c9,_0x3c0834,_0x5e7b3c,_0x3f5e4c,_0x207143,_0x2a1ab6);if(_0x30cc0b['QCYAN'](_0x29ba64,DB_TYPES[_0x5ecd1b(0xd5)]))return this['_buildBatchUpdateMysql'](_0x5eb9c9,_0x3c0834,_0x5e7b3c,_0x3f5e4c,_0x207143,_0x2a1ab6);return this['_buildBatchUpdatePostgres'](_0x5eb9c9,_0x3c0834,_0x5e7b3c,_0x3f5e4c,_0x207143,_0x2a1ab6);}['_buildBatchUpdatePostgres'](_0x29e821,_0x1d521f,_0x33014f,_0x358b39,_0x610e0d,_0xe3bbb8={}){const _0x56dd19=a0_0xe023b2,_0x58e247={'vdFWb':function(_0x578bfa,_0x1ea9d3){return _0x578bfa===_0x1ea9d3;},'RwJsd':_0x56dd19(0xce),'SFjHi':_0x56dd19(0x100)};if(_0x58e247['vdFWb'](_0x29e821['length'],0x0))return{'query':null,'values':[]};const _0x2f2511=this['buildEscapeFunction'](_0xe3bbb8),_0x588c99=_0x33014f[_0x56dd19(0x10c)](_0x4f4735=>!_0x610e0d[_0x56dd19(0xd7)](_0x4f4735)&&_0x4f4735!==_0x358b39);if(_0x58e247[_0x56dd19(0xdb)](_0x588c99[_0x56dd19(0x107)],0x0))return logger['warn']({'event':_0x58e247['RwJsd'],'tableName':_0x1d521f},_0x56dd19(0xd8)),{'query':null,'values':[]};const _0x892da0=_0x29e821['map'](_0x4bb263=>{const _0x458612=[..._0x610e0d,..._0x588c99],_0x1f6963=_0x458612['map'](_0x4a8cac=>_0x2f2511(_0x4bb263[_0x4a8cac],_0x4a8cac));return'('+_0x1f6963['join'](',\x20')+')';}),_0x51d881=_0x588c99['map'](_0x40293a=>_0x40293a+'\x20=\x20v.'+_0x40293a)[_0x56dd19(0xe3)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x3c26be=_0x610e0d['map'](_0x249cc4=>'t.'+_0x249cc4+'\x20=\x20v.'+_0x249cc4)[_0x56dd19(0xe3)]('\x20AND\x20'),_0x50ef8e='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x1d521f+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x51d881+_0x56dd19(0xe9)+_0x892da0['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+'\x0a\x20\x20\x20\x20\x20\x20)\x20AS\x20v('+[..._0x610e0d,..._0x588c99]['join'](',\x20')+_0x56dd19(0x103)+_0x3c26be+'\x0a\x20\x20\x20\x20';return logger[_0x56dd19(0xd6)]({'event':'batch_update_built','tableName':_0x1d521f,'rowCount':_0x29e821[_0x56dd19(0x107)],'updateColumns':_0x588c99[_0x56dd19(0x107)],'dbType':_0x56dd19(0x104)},_0x58e247[_0x56dd19(0xfd)]),{'query':_0x50ef8e,'values':[]};}['_buildBatchUpdateOracle'](_0x511373,_0x2a822e,_0x5b6ebb,_0x4557bd,_0x4eaaac,_0x3de6cd={}){const _0x38110f=a0_0xe023b2,_0x840fd9={'JGtCM':function(_0x46d316,_0xf16937,_0x2d6240){return _0x46d316(_0xf16937,_0x2d6240);},'lnGqY':function(_0x15c39b,_0x2c7ac7){return _0x15c39b===_0x2c7ac7;},'FHxbS':_0x38110f(0xd8)};if(_0x840fd9['lnGqY'](_0x511373[_0x38110f(0x107)],0x0))return{'query':null,'values':[]};const _0x2fb971=this['buildEscapeFunction'](_0x3de6cd),_0x8dd237=_0x5b6ebb[_0x38110f(0x10c)](_0x509263=>!_0x4eaaac['includes'](_0x509263)&&_0x509263!==_0x4557bd);if(_0x840fd9[_0x38110f(0xcc)](_0x8dd237['length'],0x0))return logger['warn']({'event':'batch_update_no_columns','tableName':_0x2a822e},_0x840fd9['FHxbS']),{'query':null,'values':[]};const _0x269813=[..._0x4eaaac,..._0x8dd237],_0x31217d=_0x511373['map']((_0x3a2e88,_0x487878)=>{const _0xe883f0=_0x38110f,_0x49ad1e=_0x269813[_0xe883f0(0xe1)](_0x31a401=>{const _0x3063ed=_0xe883f0,_0x28254a=_0x840fd9[_0x3063ed(0xf1)](_0x2fb971,_0x3a2e88[_0x31a401],_0x31a401);return _0x487878===0x0?_0x28254a+_0x3063ed(0x10d)+_0x31a401:_0x28254a;});return'\x20\x20\x20\x20SELECT\x20'+_0x49ad1e['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x5ba68f=_0x8dd237[_0x38110f(0xe1)](_0x39a3da=>'t.'+_0x39a3da+_0x38110f(0x101)+_0x39a3da)[_0x38110f(0xe3)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0xec12e8=_0x4eaaac[_0x38110f(0xe1)](_0x5924c3=>'t.'+_0x5924c3+'\x20=\x20v.'+_0x5924c3)[_0x38110f(0xe3)](_0x38110f(0xd9)),_0x494a68='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x2a822e+_0x38110f(0x108)+_0x31217d[_0x38110f(0xe3)](_0x38110f(0xc6))+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0xec12e8+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x5ba68f+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x2a822e,'rowCount':_0x511373[_0x38110f(0x107)],'updateColumns':_0x8dd237[_0x38110f(0x107)],'dbType':_0x38110f(0xd4)},_0x38110f(0xbe)),{'query':_0x494a68,'values':[]};}[a0_0xe023b2(0xc8)](_0x8bd120,_0x5396eb,_0x12fc9a,_0x4cfbd4,_0x44cafa,_0x2926dd={}){const _0x5a9321=a0_0xe023b2,_0x25b7ba={'gMnwk':function(_0x22d91e,_0x28df18){return _0x22d91e===_0x28df18;},'iWzYp':'batch_update_built','fETUL':_0x5a9321(0xf0)};if(_0x25b7ba[_0x5a9321(0x10a)](_0x8bd120['length'],0x0))return{'query':null,'values':[]};const _0x3b2034=this['buildEscapeFunction'](_0x2926dd),_0x2b04f1=_0x12fc9a['filter'](_0xf7174c=>!_0x44cafa[_0x5a9321(0xd7)](_0xf7174c)&&_0xf7174c!==_0x4cfbd4);if(_0x2b04f1[_0x5a9321(0x107)]===0x0)return logger[_0x5a9321(0xed)]({'event':_0x5a9321(0xce),'tableName':_0x5396eb},_0x5a9321(0xd8)),{'query':null,'values':[]};const _0x43a4de=[...new Set([..._0x44cafa,..._0x2b04f1])],_0x5d0e65=_0x8bd120[_0x5a9321(0xe1)](_0x23af63=>{const _0x14ff20=_0x5a9321,_0x91a75d=_0x43a4de[_0x14ff20(0xe1)](_0x21b895=>_0x3b2034(_0x23af63[_0x21b895],_0x21b895));return'('+_0x91a75d[_0x14ff20(0xe3)](',\x20')+')';}),_0x2c9021=_0x2b04f1['map'](_0x4abc07=>_0x4abc07+_0x5a9321(0xfc)+_0x4abc07+')')['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x541d8b=_0x5a9321(0xea)+_0x5396eb+'\x20('+_0x43a4de[_0x5a9321(0xe3)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5d0e65[_0x5a9321(0xe3)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+_0x5a9321(0xfb)+_0x2c9021+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x25b7ba['iWzYp'],'tableName':_0x5396eb,'rowCount':_0x8bd120[_0x5a9321(0x107)],'updateColumns':_0x2b04f1['length'],'dbType':'mysql'},_0x25b7ba['fETUL']),{'query':_0x541d8b,'values':[]};}['chunkRows'](_0x4880c6,_0x18425c=0x64){const _0x9363a2=a0_0xe023b2,_0x4e9dde={'ULQoW':function(_0x31a21,_0x100c4d){return _0x31a21<_0x100c4d;},'bWlgq':function(_0x3d88f7,_0x500baf){return _0x3d88f7+_0x500baf;}},_0x2146a3=[];for(let _0x2a5ad4=0x0;_0x4e9dde[_0x9363a2(0xf4)](_0x2a5ad4,_0x4880c6[_0x9363a2(0x107)]);_0x2a5ad4+=_0x18425c){_0x2146a3[_0x9363a2(0xde)](_0x4880c6['slice'](_0x2a5ad4,_0x4e9dde['bWlgq'](_0x2a5ad4,_0x18425c)));}return _0x2146a3;}}module[a0_0xe023b2(0xf9)]=new UpsertBuilder();function a0_0x4429(_0x53df89,_0x2238b0){_0x53df89=_0x53df89-0xbe;const _0xfb8007=a0_0xfb80();let _0x44295d=_0xfb8007[_0x53df89];if(a0_0x4429['pskPnK']===undefined){var _0x26188d=function(_0x18a00b){const _0x46500d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1536b9='',_0x24f172='';for(let _0x1a74a1=0x0,_0x145b94,_0x52ab29,_0x591239=0x0;_0x52ab29=_0x18a00b['charAt'](_0x591239++);~_0x52ab29&&(_0x145b94=_0x1a74a1%0x4?_0x145b94*0x40+_0x52ab29:_0x52ab29,_0x1a74a1++%0x4)?_0x1536b9+=String['fromCharCode'](0xff&_0x145b94>>(-0x2*_0x1a74a1&0x6)):0x0){_0x52ab29=_0x46500d['indexOf'](_0x52ab29);}for(let _0x412a0c=0x0,_0x4e891a=_0x1536b9['length'];_0x412a0c<_0x4e891a;_0x412a0c++){_0x24f172+='%'+('00'+_0x1536b9['charCodeAt'](_0x412a0c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x24f172);};a0_0x4429['FJelAU']=_0x26188d,a0_0x4429['KaRuAq']={},a0_0x4429['pskPnK']=!![];}const _0x3528ac=_0xfb8007[0x0],_0x59691e=_0x53df89+_0x3528ac,_0x444c5e=a0_0x4429['KaRuAq'][_0x59691e];return!_0x444c5e?(_0x44295d=a0_0x4429['FJelAU'](_0x44295d),a0_0x4429['KaRuAq'][_0x59691e]=_0x44295d):_0x44295d=_0x444c5e,_0x44295d;}function a0_0xfb80(){const _0x2a462e=['zMLSDgvY','ieftia','Aw52ywXPzf9KyL90ExbL','mZaZmZrZEgvLCem','q1zwyxO','DMfSDwvZ','mJLHq1zmuxq','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','tLvmta','icbjtLrpia','n0HRz3b2ua','mtnkyvbdCgW','zLn4zK4','su5trvjuiefmtaO','q0ftvcG','cIaGicbvtKLptIbbteWk','ksbwquXvrvmGka','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','kqOGicaGicbwquXvrvmG','t1jbq0Xf','Bg5hCvK','BNvTyMvY','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','uxDTwxi','C3fSAxrL','mtq3nda2odrUCw1ut3a','tLvmtdO6refurq','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','B3jHy2XL','tvLtuuW','zgvIDwC','Aw5JBhvKzxm','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','ieforca','yNvPBgrcyxrJAeLUC2vYDa','DMrgv2i','mZzTEurKvwG','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','ChvZAa','ue9tveDsrvnrta','DhLWzq','BwfW','zK5oz2u','AM9PBG','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','cLnftevdvcaXiezst00Grfvbta','C3rYAw5N','zM9YBwf0rgf0zvzHBhvL','DhzYt3u','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','cIaGicaGieLou0vsvcbjtLrpia','odu3otmWwKXNtuHq','DuP3uei','D2fYBG','EvDYze0','odbZEhnRu1y','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','sKD0q00','yNvPBgrfC2nHCgvgDw5JDgLVBG','mti4nZi0ohj2DLvgwG','vuXrB1C','CMvWBgfJzq','mta1ntuYodrVv3nHvNu','yMf0y2HFAw5Zzxj0x2j1AwX0','zgf0zq','zxHWB3j0CW','mtfjwwjADu0','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','id0GvKfmvuvtka','u0zQsgK','m2nlEgr4Dq','mtC4otHlqufyvhG','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','id0GDI4','z2v0rgf0ywjHC2vuExbL','kqOGicaGicbxsevsrsa','Cg9ZDgDYzxnXBa','oJPeqvrf','laOGicaGicaG','BgvUz3rO','ihqkicaGicaGvvnjtKCGkaO','oti3ndy4Dvv5weTk','z01UD2S','zw52'];a0_0xfb80=function(){return _0x2a462e;};return a0_0xfb80();}
|
|
1
|
+
const a0_0x2d1505=a0_0x28e4;(function(_0x3ec440,_0x4e703b){const _0x3dc86b=a0_0x28e4,_0x41d599=_0x3ec440();while(!![]){try{const _0x1db537=parseInt(_0x3dc86b(0x1a4))/0x1+parseInt(_0x3dc86b(0x1ba))/0x2*(parseInt(_0x3dc86b(0x1dc))/0x3)+parseInt(_0x3dc86b(0x1c7))/0x4+parseInt(_0x3dc86b(0x1cd))/0x5+parseInt(_0x3dc86b(0x1c9))/0x6*(parseInt(_0x3dc86b(0x1a6))/0x7)+-parseInt(_0x3dc86b(0x1de))/0x8+parseInt(_0x3dc86b(0x1f0))/0x9*(-parseInt(_0x3dc86b(0x1af))/0xa);if(_0x1db537===_0x4e703b)break;else _0x41d599['push'](_0x41d599['shift']());}catch(_0x1da072){_0x41d599['push'](_0x41d599['shift']());}}}(a0_0x25cf,0x96620));const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':a0_0x2d1505(0x1b1),'MYSQL':a0_0x2d1505(0x1d9),'SQLSERVER':'sqlserver','ORACLE':a0_0x2d1505(0x1c8),'SQLITE':'sqlite'};class UpsertBuilder{['getDatabaseType'](){const _0x34e77b=a0_0x2d1505,_0x25e3f3={'YjZHv':_0x34e77b(0x1b1)},_0x5d1975=(process['env'][_0x34e77b(0x1d4)]||_0x25e3f3[_0x34e77b(0x1ec)])['toLowerCase'](),_0x54a992=Object[_0x34e77b(0x1b0)](DB_TYPES);if(!_0x54a992['includes'](_0x5d1975))return logger['warn']({'event':_0x34e77b(0x1d6),'provided':_0x5d1975,'fallback':_0x34e77b(0x1b1)},'Invalid\x20DB_TYPE:\x20'+_0x5d1975+_0x34e77b(0x1dd)),DB_TYPES[_0x34e77b(0x1a2)];return _0x5d1975;}[a0_0x2d1505(0x1e7)](_0x216136,_0x11248a,_0x3a2f94=![]){const _0x434846=a0_0x2d1505,_0x916971={'jisfQ':'NULL::DATE','DjObh':'NULL'};if(_0x3a2f94)switch(_0x11248a){case DB_TYPES[_0x434846(0x1a2)]:return _0x916971[_0x434846(0x1f1)];case DB_TYPES[_0x434846(0x1b2)]:return _0x434846(0x1bf);case DB_TYPES[_0x434846(0x1b4)]:return _0x916971['DjObh'];case DB_TYPES['SQLSERVER']:return _0x434846(0x1bf);case DB_TYPES['ORACLE']:return _0x916971[_0x434846(0x1ef)];default:return'NULL::DATE';}switch(_0x11248a){case DB_TYPES['POSTGRESQL']:return _0x216136+'::DATE';case DB_TYPES[_0x434846(0x1b2)]:return _0x216136;case DB_TYPES['SQLITE']:return _0x216136;case DB_TYPES[_0x434846(0x1a3)]:return _0x434846(0x1e3)+_0x216136+_0x434846(0x1d3);case DB_TYPES[_0x434846(0x1e5)]:return'TO_DATE('+_0x216136+',\x20\x27YYYY-MM-DD\x27)';default:return _0x216136+_0x434846(0x1b5);}}['buildEscapeFunction'](_0x4531a8={}){const _0x7ae371=a0_0x2d1505,_0xfc9b9d={'cDNAN':function(_0x39ada3,_0x28cf24){return _0x39ada3===_0x28cf24;},'ZrKUr':_0x7ae371(0x1d0),'ohjdM':'NULL'},_0x2c9ef4=this['getDatabaseType']();return(_0x3a62ce,_0x2789db)=>{const _0x1ccf4c=_0x7ae371,_0x3fe865=_0x4531a8[_0x2789db];if(_0xfc9b9d['cDNAN'](_0x3a62ce,null)||_0x3a62ce===undefined){if(_0x3fe865&&_0xfc9b9d['cDNAN'](_0x3fe865[_0x1ccf4c(0x1c5)],_0xfc9b9d[_0x1ccf4c(0x1d5)]))return this['formatDateValue'](null,_0x2c9ef4,!![]);return _0xfc9b9d[_0x1ccf4c(0x1ac)];}if(typeof _0x3a62ce==='string'){const _0x14d28b='\x27'+_0x3a62ce[_0x1ccf4c(0x1a9)](/'/g,'\x27\x27')+'\x27';if(_0x3fe865&&_0x3fe865[_0x1ccf4c(0x1c5)]===_0x1ccf4c(0x1d0))return this[_0x1ccf4c(0x1e7)](_0x14d28b,_0x2c9ef4,![]);return _0x14d28b;}if(typeof _0x3a62ce===_0x1ccf4c(0x1b6))return _0x3a62ce;if(typeof _0x3a62ce===_0x1ccf4c(0x1c1))return _0x3a62ce;const _0x1dc8d7='\x27'+String(_0x3a62ce)[_0x1ccf4c(0x1a9)](/'/g,'\x27\x27')+'\x27';if(_0x3fe865&&_0x3fe865[_0x1ccf4c(0x1c5)]===_0xfc9b9d['ZrKUr'])return this['formatDateValue'](_0x1dc8d7,_0x2c9ef4,![]);return _0x1dc8d7;};}['buildBatchInsert'](_0x5d2e08,_0x139d68,_0x41248c,_0x2daef6={}){const _0x1d056a=a0_0x2d1505,_0x21ddec={'tyBbI':function(_0x2d101c,_0x61e86f){return _0x2d101c===_0x61e86f;}},_0x46403d=this['getDatabaseType']();if(_0x21ddec[_0x1d056a(0x1d7)](_0x46403d,DB_TYPES[_0x1d056a(0x1e5)]))return this['_buildBatchInsertOracle'](_0x5d2e08,_0x139d68,_0x41248c,_0x2daef6);return this['_buildBatchInsertPostgres'](_0x5d2e08,_0x139d68,_0x41248c,_0x2daef6);}['_buildBatchInsertPostgres'](_0x5f40f2,_0x51d64f,_0x12a439,_0x161201={}){const _0x2d2147=a0_0x2d1505,_0x4135fb={'Dweqx':',\x0a\x20\x20\x20\x20\x20\x20\x20','HRPjN':_0x2d2147(0x1b1)};if(_0x5f40f2[_0x2d2147(0x1eb)]===0x0)return{'query':null,'values':[]};const _0x5df8eb=this['buildEscapeFunction'](_0x161201),_0x142678=_0x5f40f2['map'](_0xdce2fb=>{const _0x1ce337=_0x12a439['map'](_0x3c431c=>_0x5df8eb(_0xdce2fb[_0x3c431c],_0x3c431c));return'('+_0x1ce337['join'](',\x20')+')';}),_0x194ea3='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x51d64f+'\x20('+_0x12a439[_0x2d2147(0x1e2)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x142678['join'](_0x4135fb['Dweqx'])+_0x2d2147(0x1e9);return logger[_0x2d2147(0x1d1)]({'event':'batch_insert_built','tableName':_0x51d64f,'rowCount':_0x5f40f2[_0x2d2147(0x1eb)],'dbType':_0x4135fb[_0x2d2147(0x1db)]},_0x2d2147(0x1c0)),{'query':_0x194ea3,'values':[]};}[a0_0x2d1505(0x1e1)](_0x592427,_0x3820dd,_0x242763,_0x4748e0={}){const _0x3c31ef=a0_0x2d1505,_0x30295a={'KshXD':_0x3c31ef(0x1cb)};if(_0x592427['length']===0x0)return{'query':null,'values':[]};const _0x1ddf0d=this['buildEscapeFunction'](_0x4748e0),_0x2f6a04=_0x592427[_0x3c31ef(0x1da)](_0x7dc39b=>{const _0x21acc1=_0x3c31ef,_0x1135a3=_0x242763['map'](_0x2966a8=>_0x1ddf0d(_0x7dc39b[_0x2966a8],_0x2966a8));return'\x20\x20INTO\x20'+_0x3820dd+'\x20('+_0x242763[_0x21acc1(0x1e2)](',\x20')+')\x20VALUES\x20('+_0x1135a3[_0x21acc1(0x1e2)](',\x20')+')';}),_0x323621=_0x3c31ef(0x1ed)+_0x2f6a04[_0x3c31ef(0x1e2)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':_0x30295a[_0x3c31ef(0x1ae)],'tableName':_0x3820dd,'rowCount':_0x592427[_0x3c31ef(0x1eb)],'dbType':'oracle'},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x323621,'values':[]};}['buildBatchUpdate'](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587={}){const _0x142734=a0_0x2d1505,_0x171e13=this[_0x142734(0x1e8)]();if(_0x171e13===DB_TYPES['ORACLE'])return this['_buildBatchUpdateOracle'](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587);if(_0x171e13===DB_TYPES['MYSQL'])return this['_buildBatchUpdateMysql'](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587);return this[_0x142734(0x1bb)](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587);}[a0_0x2d1505(0x1bb)](_0x16fe66,_0xe3d02c,_0x5951d9,_0x5b120b,_0x499204,_0x1581bd={}){const _0x4fb53b=a0_0x2d1505,_0x22b172={'YpHIk':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'};if(_0x16fe66['length']===0x0)return{'query':null,'values':[]};const _0x349a7f=this['buildEscapeFunction'](_0x1581bd),_0x2a5485=_0x5951d9['filter'](_0x263f4f=>!_0x499204['includes'](_0x263f4f)&&_0x263f4f!==_0x5b120b);if(_0x2a5485[_0x4fb53b(0x1eb)]===0x0)return logger[_0x4fb53b(0x1c6)]({'event':_0x4fb53b(0x1df),'tableName':_0xe3d02c},_0x4fb53b(0x1be)),{'query':null,'values':[]};const _0x198cb1=_0x16fe66[_0x4fb53b(0x1da)](_0x27a788=>{const _0x8e9f11=[..._0x499204,..._0x2a5485],_0x3cafa9=_0x8e9f11['map'](_0x5ddd45=>_0x349a7f(_0x27a788[_0x5ddd45],_0x5ddd45));return'('+_0x3cafa9['join'](',\x20')+')';}),_0xf7c5b0=_0x2a5485[_0x4fb53b(0x1da)](_0xca55ef=>_0xca55ef+_0x4fb53b(0x1b7)+_0xca55ef)['join'](_0x22b172[_0x4fb53b(0x1aa)]),_0x5550c4=_0x499204[_0x4fb53b(0x1da)](_0x22def7=>'t.'+_0x22def7+'\x20=\x20v.'+_0x22def7)[_0x4fb53b(0x1e2)](_0x4fb53b(0x1a5)),_0x3d3c87=_0x4fb53b(0x1b3)+_0xe3d02c+_0x4fb53b(0x1a8)+_0xf7c5b0+_0x4fb53b(0x1ad)+_0x198cb1[_0x4fb53b(0x1e2)](_0x4fb53b(0x1ce))+_0x4fb53b(0x1ee)+[..._0x499204,..._0x2a5485]['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x5550c4+'\x0a\x20\x20\x20\x20';return logger[_0x4fb53b(0x1d1)]({'event':'batch_update_built','tableName':_0xe3d02c,'rowCount':_0x16fe66['length'],'updateColumns':_0x2a5485['length'],'dbType':_0x4fb53b(0x1b1)},'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'),{'query':_0x3d3c87,'values':[]};}[a0_0x2d1505(0x1a7)](_0x2309b2,_0x28eace,_0x425412,_0x43553e,_0x296ce5,_0x1839e4={}){const _0x4298cd=a0_0x2d1505,_0x20603d={'slRSb':function(_0x9b7b0c,_0x1479a0){return _0x9b7b0c===_0x1479a0;},'ZxSLK':'batch_update_no_columns','FSGjF':_0x4298cd(0x1a5),'xpwai':_0x4298cd(0x1cf),'TadiD':_0x4298cd(0x1c4)};if(_0x20603d[_0x4298cd(0x1e6)](_0x2309b2[_0x4298cd(0x1eb)],0x0))return{'query':null,'values':[]};const _0x32f2d1=this['buildEscapeFunction'](_0x1839e4),_0x139af1=_0x425412['filter'](_0x16190=>!_0x296ce5['includes'](_0x16190)&&_0x16190!==_0x43553e);if(_0x20603d[_0x4298cd(0x1e6)](_0x139af1[_0x4298cd(0x1eb)],0x0))return logger[_0x4298cd(0x1c6)]({'event':_0x20603d['ZxSLK'],'tableName':_0x28eace},_0x4298cd(0x1be)),{'query':null,'values':[]};const _0x26ca02=[..._0x296ce5,..._0x139af1],_0x3bb93c=_0x2309b2[_0x4298cd(0x1da)]((_0x3ccf96,_0x2d9e1)=>{const _0x1d7301=_0x4298cd,_0x1ec1ab=_0x26ca02[_0x1d7301(0x1da)](_0x50310a=>{const _0x5abe0d=_0x32f2d1(_0x3ccf96[_0x50310a],_0x50310a);return _0x2d9e1===0x0?_0x5abe0d+'\x20AS\x20'+_0x50310a:_0x5abe0d;});return _0x1d7301(0x1d8)+_0x1ec1ab['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x3caeb3=_0x139af1[_0x4298cd(0x1da)](_0xa1b3aa=>'t.'+_0xa1b3aa+'\x20=\x20v.'+_0xa1b3aa)['join'](_0x4298cd(0x1b9)),_0x52bd59=_0x296ce5['map'](_0x1ade72=>'t.'+_0x1ade72+'\x20=\x20v.'+_0x1ade72)['join'](_0x20603d['FSGjF']),_0x4a0475='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x28eace+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x3bb93c['join']('\x0a\x20\x20\x20\x20UNION\x20ALL\x0a')+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x52bd59+_0x4298cd(0x1d2)+_0x3caeb3+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x20603d['xpwai'],'tableName':_0x28eace,'rowCount':_0x2309b2[_0x4298cd(0x1eb)],'updateColumns':_0x139af1['length'],'dbType':_0x4298cd(0x1c8)},_0x20603d['TadiD']),{'query':_0x4a0475,'values':[]};}[a0_0x2d1505(0x1ea)](_0x2fa5ec,_0x8e2b0d,_0x10ecd9,_0xff8904,_0x3b3df8,_0x210731={}){const _0x245026=a0_0x2d1505,_0x98bfd6={'igQyd':function(_0x3043b9,_0x351065){return _0x3043b9===_0x351065;},'oGQXj':function(_0x5ba0ec,_0x1112be){return _0x5ba0ec===_0x1112be;},'QKBRi':_0x245026(0x1b9),'dmwEL':'mysql','LqIxh':_0x245026(0x1e0)};if(_0x98bfd6[_0x245026(0x1cc)](_0x2fa5ec['length'],0x0))return{'query':null,'values':[]};const _0x1e9f50=this['buildEscapeFunction'](_0x210731),_0x3879a4=_0x10ecd9['filter'](_0x338842=>!_0x3b3df8[_0x245026(0x1c2)](_0x338842)&&_0x338842!==_0xff8904);if(_0x98bfd6[_0x245026(0x1ab)](_0x3879a4['length'],0x0))return logger['warn']({'event':_0x245026(0x1df),'tableName':_0x8e2b0d},_0x245026(0x1be)),{'query':null,'values':[]};const _0x18a5bb=[...new Set([..._0x3b3df8,..._0x3879a4])],_0x60bedb=_0x2fa5ec['map'](_0x321aa6=>{const _0x470535=_0x245026,_0x2401b2=_0x18a5bb['map'](_0x2818ee=>_0x1e9f50(_0x321aa6[_0x2818ee],_0x2818ee));return'('+_0x2401b2[_0x470535(0x1e2)](',\x20')+')';}),_0x28912b=_0x3879a4['map'](_0x6e5bb6=>_0x6e5bb6+'\x20=\x20VALUES('+_0x6e5bb6+')')[_0x245026(0x1e2)](_0x98bfd6[_0x245026(0x1c3)]),_0x1ae671='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x8e2b0d+'\x20('+_0x18a5bb['join'](',\x20')+_0x245026(0x1e4)+_0x60bedb[_0x245026(0x1e2)](_0x245026(0x1ce))+_0x245026(0x1bc)+_0x28912b+'\x0a\x20\x20\x20\x20';return logger[_0x245026(0x1d1)]({'event':'batch_update_built','tableName':_0x8e2b0d,'rowCount':_0x2fa5ec['length'],'updateColumns':_0x3879a4['length'],'dbType':_0x98bfd6['dmwEL']},_0x98bfd6[_0x245026(0x1b8)]),{'query':_0x1ae671,'values':[]};}['chunkRows'](_0x50e6b3,_0x2d8cbe=0x64){const _0x505760=a0_0x2d1505,_0x1c813f=[];for(let _0x44fe9d=0x0;_0x44fe9d<_0x50e6b3[_0x505760(0x1eb)];_0x44fe9d+=_0x2d8cbe){_0x1c813f[_0x505760(0x1bd)](_0x50e6b3[_0x505760(0x1ca)](_0x44fe9d,_0x44fe9d+_0x2d8cbe));}return _0x1c813f;}}function a0_0x28e4(_0xbb22d2,_0x3681eb){_0xbb22d2=_0xbb22d2-0x1a2;const _0x25cfff=a0_0x25cf();let _0x28e426=_0x25cfff[_0xbb22d2];if(a0_0x28e4['nMAbiI']===undefined){var _0x52f347=function(_0x5d539a){const _0x159f4d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa747af='',_0x415b58='';for(let _0x3dae86=0x0,_0x3f58ef,_0x101e32,_0x1f430d=0x0;_0x101e32=_0x5d539a['charAt'](_0x1f430d++);~_0x101e32&&(_0x3f58ef=_0x3dae86%0x4?_0x3f58ef*0x40+_0x101e32:_0x101e32,_0x3dae86++%0x4)?_0xa747af+=String['fromCharCode'](0xff&_0x3f58ef>>(-0x2*_0x3dae86&0x6)):0x0){_0x101e32=_0x159f4d['indexOf'](_0x101e32);}for(let _0x416e82=0x0,_0x1e73c8=_0xa747af['length'];_0x416e82<_0x1e73c8;_0x416e82++){_0x415b58+='%'+('00'+_0xa747af['charCodeAt'](_0x416e82)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x415b58);};a0_0x28e4['NKljLo']=_0x52f347,a0_0x28e4['hEYNYo']={},a0_0x28e4['nMAbiI']=!![];}const _0x3d87ec=_0x25cfff[0x0],_0x5b2576=_0xbb22d2+_0x3d87ec,_0x374d59=a0_0x28e4['hEYNYo'][_0x5b2576];return!_0x374d59?(_0x28e426=a0_0x28e4['NKljLo'](_0x28e426),a0_0x28e4['hEYNYo'][_0x5b2576]=_0x28e426):_0x28e426=_0x374d59,_0x28e426;}module['exports']=new UpsertBuilder();function a0_0x25cf(){const _0x547004=['DhLWzq','D2fYBG','ndm1mJC1nM9qs3DMta','B3jHy2XL','oteYodeWAungt3D5','C2XPy2u','yMf0y2HFAw5Zzxj0x2j1AwX0','AwDrEwq','mJa5mJG5mhzsy2TquW','laOGicaGicaGia','yMf0y2HFDxbKyxrLx2j1AwX0','zgf0zq','zgvIDwC','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','ieftierbveuP','rejFvfLqrq','wNjlvxi','Aw52ywXPzf9KyL90ExbL','DhLcyKK','icaGifnftevdvca','BxLZCwW','BwfW','sfjqAK4','mZuXnKLkB3fwAq','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','nteWmdG3mK9ju1blrW','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','AM9PBG','q0ftvcG','kqOGicaGicbwquXvrvmG','t1jbq0Xf','C2Xsu2i','zM9YBwf0rgf0zvzHBhvL','z2v0rgf0ywjHC2vuExbL','cIaGica','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','BgvUz3rO','wwPAshy','su5trvjuiefmtaO','cIaGicaGicKGqvmGDIG','rgPpyMG','mJqZC1bpse1M','AMLZzLe','ue9tveDsrvnrta','u1fmu0vsvKvs','mZGYmZu5D0Lvwg96','ieforca','ndjdthrzy08','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','ieftihqkicaGicaGu0vuia','CMvWBgfJzq','wxbiswS','B0DrwgO','B2HQze0','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','s3nOweq','nJC3mJeWshnjvg5s','DMfSDwvZ','Cg9ZDgDYzxnXBa','tvLtuuW','cIaGicaGifvqrefursa','u1fmsvrf','oJPeqvrf','BNvTyMvY','id0GDI4','thfjEgG','laOGicaGicaGica','ndC4tfnbweDo','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','ChvZAa','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','tLvmta','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','yM9VBgvHBG','Aw5JBhvKzxm','uuTcuMK','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP'];a0_0x25cf=function(){return _0x547004;};return a0_0x25cf();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x231397=a0_0x478c;function a0_0x3894(){const _0x377952=['sw50zxjUywWGC2vYDMvYigvYCM9Y','zgv0ywLSCW','v0zluNG','l2nVBNn1Bwu','swrhzw5LCMf0B3jfCNjVCG','zxr2Dxa','BMfTzq','l3bPBG','AwrNzw5FCM91DgvFAgvHBhrOx2vYCM9Y','AwrNzw5FCM91DgvFC2vYAwfSx2vYCM9Y','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','CgLU','yM9KEq','C3rHDhvZ','AwrNzw5FCM91DgvFBNvTyMvYx2vYCM9Y','CgfYyw1Z','y29Kzq','ueLoigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','ww9mshe','zxH0zw5KuMvZzxj2yxrPB24','mJyWmJy1A3bMEKve','l3jLC2vYDMuVzxH0zw5K','l3jLC2vYDMuVoNrVA2vU','mZeWmJu4mdbju0L4sMe','CMvZzxq','zxHWCMvZCW','wvn5qMO','z2v0','mtaYz2f2EMfq','AwrNzw5FCM91DgvFCMvZzxj2zv9JB25MAxjTx2vYCM9Y','AwrNzw5FCM91DgvFCMvSzwfZzv9LCNjVCG','odC4ofj0uKjHvG','lI4VlI4VDxrPBhmVChjVy2vZC29YlxjLC3bVBNnL','ANnVBG','tNvTyMvYihjLC2vYDMvKihn1y2nLC3nMDwXSEq','surftvbpvevoq1LFru5bqKXfra','y3jcue8','DLLIwLy','nJyXmJHcBuT1rgO','AwrNzw5FCM91DgvFCMvZzxj2zv9Jyw5JzwXFzxjYB3i','uePfy1O','Evbbwvq','swrLBxbVDgvUy3KTs2v5','DeTRs2K','BwvZC2fNzq','r3fNz1q','l3jLC2vYDMu','tNvTyMvYigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','CMvSzwfZzu51BwjLCG','AwrNzw5FCM91DgvFCMvZzxj2zv9LCNjVCG','tgLKv1e','yuPwrNO','l3nLCMLHBa','l2nVzgu','l3jLC2v0','yLPNyMO','mti1oty5mLbWDfPqyG','Be1RruS','Dhj1zq','y29UzMLYBvjLC2vYDMf0Aw9U','y29UC3vTzq','l251BwjLCG','ntC5mty5nwTNwwTNtq','AwrNzw5FCM91DgvFy29Kzv9LCNjVCG','re1ovwG','u21qthO','ntiYq0DmwNzV','D2fYBG','Cg9ZDa','nte5BfjlD2DX','uMvZzxj2yxrPB24Gy2fUy2vSBgvK','suqGr2vUzxjHDg9YihjVDxrLigvYCM9YoIa','l3jLC2vYDMuVy2fUy2vS','BNvTyMvY','AwrNzw5FCM91DgvFCgLUx2vYCM9Y','u2vYAwfSigTLEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','nJm5mtu1tunTyu9W','lI4VlI4VDxrPBhmVBg9Nz2vY','CgLUzW','q29KzsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5'];a0_0x3894=function(){return _0x377952;};return a0_0x3894();}(function(_0x364449,_0x5790fb){const _0x5d8ebb=a0_0x478c,_0x35ceae=_0x364449();while(!![]){try{const _0x3cf5e5=-parseInt(_0x5d8ebb(0x1d4))/0x1+parseInt(_0x5d8ebb(0x1c0))/0x2+-parseInt(_0x5d8ebb(0x1cd))/0x3*(parseInt(_0x5d8ebb(0x1a7))/0x4)+-parseInt(_0x5d8ebb(0x19c))/0x5*(parseInt(_0x5d8ebb(0x1a4))/0x6)+-parseInt(_0x5d8ebb(0x1c6))/0x7+-parseInt(_0x5d8ebb(0x1ae))/0x8*(parseInt(_0x5d8ebb(0x1ca))/0x9)+parseInt(_0x5d8ebb(0x19f))/0xa;if(_0x3cf5e5===_0x5790fb)break;else _0x35ceae['push'](_0x35ceae['shift']());}catch(_0x2dd518){_0x35ceae['push'](_0x35ceae['shift']());}}}(a0_0x3894,0x7f504));const express=require(a0_0x231397(0x1a1)),{logger}=require(a0_0x231397(0x1d5)),{createResponse,createError}=require(a0_0x231397(0x1a8)),redisClient=require('../../utils/redis-client'),ERROR_CODE_HTTP_MAP={'IDGEN_DISABLED':0x1f7,'IDGEN_INVALID_RESOURCE':0x190,'IDGEN_INVALID_MODE':0x190,'IDGEN_INVALID_FORMAT':0x190,'IDGEN_INVALID_NUM_DIGITS':0x190,'IDGEN_INVALID_PREFIX':0x190,'IDGEN_INVALID_SEPARATOR':0x190,'IDGEN_INVALID_NUMBER':0x190,'IDGEN_INVALID_PATTERN':0x190,'IDGEN_INVALID_DIGITS':0x190,'IDGEN_INVALID_TTL':0x190,'IDGEN_INVALID_MAX_RETRY':0x190,'IDGEN_INVALID_TOKEN':0x190,'IDGEN_INVALID_RESERVE_TTL':0x190,'IDGEN_RESERVATION_NOT_FOUND':0x194,'IDGEN_COUNTER_OVERFLOW':0x1a6,'IDGEN_LOCK_TIMEOUT':0x199,'IDGEN_RESET_NOT_ALLOWED':0x193,'IDGEN_UNIQUE_RETRY_EXHAUSTED':0x199,'IDGEN_REDIS_ERROR':0x1f4};function a0_0x478c(_0x1a7773,_0x45e7e5){_0x1a7773=_0x1a7773-0x18c;const _0x389430=a0_0x3894();let _0x478cbc=_0x389430[_0x1a7773];if(a0_0x478c['DudPyU']===undefined){var _0x28b6e7=function(_0x1d651e){const _0x2d9c43='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x33d6ff='',_0x405994='';for(let _0xcd2973=0x0,_0x20d4e3,_0x2308ee,_0x5cf0b4=0x0;_0x2308ee=_0x1d651e['charAt'](_0x5cf0b4++);~_0x2308ee&&(_0x20d4e3=_0xcd2973%0x4?_0x20d4e3*0x40+_0x2308ee:_0x2308ee,_0xcd2973++%0x4)?_0x33d6ff+=String['fromCharCode'](0xff&_0x20d4e3>>(-0x2*_0xcd2973&0x6)):0x0){_0x2308ee=_0x2d9c43['indexOf'](_0x2308ee);}for(let _0xf4d0cd=0x0,_0x1c4920=_0x33d6ff['length'];_0xf4d0cd<_0x1c4920;_0xf4d0cd++){_0x405994+='%'+('00'+_0x33d6ff['charCodeAt'](_0xf4d0cd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x405994);};a0_0x478c['hwnSst']=_0x28b6e7,a0_0x478c['ZCSWEZ']={},a0_0x478c['DudPyU']=!![];}const _0x20200a=_0x389430[0x0],_0x564c34=_0x1a7773+_0x20200a,_0x18b238=a0_0x478c['ZCSWEZ'][_0x564c34];return!_0x18b238?(_0x478cbc=a0_0x478c['hwnSst'](_0x478cbc),a0_0x478c['ZCSWEZ'][_0x564c34]=_0x478cbc):_0x478cbc=_0x18b238,_0x478cbc;}function createIdgenRoutes(){const _0x4f265b=a0_0x231397,_0x4ffe46={'YSyBj':function(_0xd46e3c,_0x251975){return _0xd46e3c(_0x251975);},'yPAYT':function(_0x47a2dc,_0x2f7646,_0x2995b9,_0x1be901){return _0x47a2dc(_0x2f7646,_0x2995b9,_0x1be901);},'GUBPk':_0x4f265b(0x196),'aJVFz':function(_0x27e96e,_0x2e645b){return _0x27e96e(_0x2e645b);},'JNlzq':_0x4f265b(0x1b9),'crBPO':'Reservation\x20confirmed','PJEcZ':function(_0x315293,_0x487a3a,_0x5409cf,_0x2acb3c){return _0x315293(_0x487a3a,_0x5409cf,_0x2acb3c);},'LidWQ':_0x4f265b(0x1a5),'tKkKi':'Reservation\x20extended','emPBs':'idgen_route_reserve_extend_error','YoLHq':function(_0xbfe698){return _0xbfe698();},'mVNBl':'Reservation\x20retrieved','teCdF':function(_0x11520b,_0x1111d4,_0x1a856e,_0x1a110f){return _0x11520b(_0x1111d4,_0x1a856e,_0x1a110f);},'NDlCK':_0x4f265b(0x1d2),'GRjZE':function(_0x290ba6,_0x2f944b){return _0x290ba6(_0x2f944b);},'bZgbj':function(_0x5ab939,_0x2b4bdf,_0x5edbae,_0x1f80fd){return _0x5ab939(_0x2b4bdf,_0x5edbae,_0x1f80fd);},'KtuOs':_0x4f265b(0x1d3),'vYbZV':function(_0x3dc026,_0x4290c4,_0x3b17d4,_0x277b8b){return _0x3dc026(_0x4290c4,_0x3b17d4,_0x277b8b);},'eEbdN':_0x4f265b(0x1c7),'GqggT':function(_0xbe50cf,_0x7505a6){return _0xbe50cf(_0x7505a6);},'iPPxC':'Random\x20value\x20generated\x20successfully','liFaY':'idgen_route_random_error','rbHIv':function(_0x3f53a3){return _0x3f53a3();},'yMMAi':function(_0x3cf724,_0x2ab281){return _0x3cf724||_0x2ab281;},'SmPLz':'idgen_route_info_error','WFKRx':'number','lMkEK':'Resource\x20state\x20reset','ULizb':function(_0x3d7ff0){return _0x3d7ff0();},'HiTAA':function(_0x5598e4,_0x402e61){return _0x5598e4===_0x402e61;},'etvup':'true','aSsOs':'IDGEN_ENABLED=false','wEnIm':'Redis\x20not\x20connected','DMNUh':'ID\x20Generator\x20service\x20is\x20healthy','Uljbo':'/number/release','UxsRP':_0x4f265b(0x1b6),'VhytB':'/reserve/confirm','qQIuD':_0x4f265b(0x1bd),'GfRZA':_0x4f265b(0x1db),'qgDSQ':'/info/:resource','HyWEl':_0x4f265b(0x1be)},_0x54c152=express['Router']();let _0x1989a1=null;function _0x17a62b(){return!_0x1989a1&&(_0x1989a1=require('../../utils/id-generator')),_0x1989a1;}function _0x5878b7(_0x23a693,_0x4aac52,_0x36337c){const _0x4abea2=_0x4f265b;if(_0x4aac52&&_0x4aac52[_0x4abea2(0x18e)]===_0x4abea2(0x18c)){const _0x971c07=ERROR_CODE_HTTP_MAP[_0x4aac52[_0x4abea2(0x198)]]||0x1f4;return logger[_0x4abea2(0x1cb)]({'event':_0x36337c,'code':_0x4aac52['code'],'message':_0x4aac52[_0x4abea2(0x1b4)]},_0x4abea2(0x1cf)+_0x4aac52['code']),_0x23a693['status'](_0x971c07)[_0x4abea2(0x1a9)](createError(_0x971c07,_0x4aac52['message'],{'code':_0x4aac52[_0x4abea2(0x198)],'details':_0x4aac52[_0x4abea2(0x1d9)]||null}));}return logger['error']({'event':_0x36337c,'error':_0x4aac52&&_0x4aac52[_0x4abea2(0x1b4)],'stack':_0x4aac52&&_0x4aac52['stack']},'ID\x20Generator\x20route\x20exception:\x20'+(_0x4aac52&&_0x4aac52[_0x4abea2(0x1b4)])),_0x23a693['status'](0x1f4)[_0x4abea2(0x1a9)](createError(0x1f4,_0x4abea2(0x1d8),null));}function _0x183992(_0x3fd7bc){const _0x5d6822=_0x4f265b;return _0x3fd7bc['header'](_0x5d6822(0x1b2))||undefined;}return _0x54c152['post'](_0x4f265b(0x1c5),async(_0x1328ab,_0x1836e5)=>{const _0x47e27d=_0x4f265b;try{const {resource:_0x33bf0b,format:_0x42f3e9,prefix:_0xb02846,separator:_0x5e67c5,numDigits:_0x34b37c,reuseDelete:_0x5748a1}=_0x1328ab['body']||{},_0x32b0c0=_0x4ffe46['YSyBj'](_0x183992,_0x1328ab),_0x5066e3=_0x17a62b(),_0x3831ea=await _0x5066e3[_0x47e27d(0x1d1)]({'resource':_0x33bf0b,'format':_0x42f3e9,'prefix':_0xb02846,'separator':_0x5e67c5,'numDigits':_0x34b37c,'reuseDelete':_0x5748a1,'idempotencyKey':_0x32b0c0});return _0x1836e5[_0x47e27d(0x195)](0xc9)['json'](createResponse(0xc9,_0x47e27d(0x1b7),_0x3831ea));}catch(_0xa85ce3){return _0x4ffe46['yPAYT'](_0x5878b7,_0x1836e5,_0xa85ce3,_0x4ffe46['GUBPk']);}}),_0x54c152[_0x4f265b(0x1cc)](_0x4ffe46['Uljbo'],async(_0x1a29c7,_0x5b3df1)=>{const _0x4cd1b0=_0x4f265b;try{const _0x308f3b=_0x183992(_0x1a29c7),_0x4b31cb={..._0x1a29c7['body']||{},'idempotencyKey':_0x308f3b},_0x5d3038=_0x17a62b(),_0x559c53=await _0x5d3038[_0x4cd1b0(0x1b8)](_0x4b31cb);return _0x5b3df1['status'](0xc8)[_0x4cd1b0(0x1a9)](createResponse(0xc8,'Number\x20released\x20to\x20reuse\x20pool',_0x559c53));}catch(_0x286255){return _0x5878b7(_0x5b3df1,_0x286255,_0x4cd1b0(0x1a6));}}),_0x54c152['post'](_0x4ffe46['UxsRP'],async(_0x4bc9ab,_0x1950b9)=>{const _0x4bc269=_0x4f265b;try{const {resource:_0x3fd09b,format:_0x3ac8da,prefix:_0x449f10,separator:_0x3ee697,numDigits:_0x4ca564,reuseDelete:_0x1f9dc9,ttl:_0xc49879}=_0x4bc9ab['body']||{},_0x3f7e44=_0x4ffe46[_0x4bc269(0x1bb)](_0x183992,_0x4bc9ab),_0x3b101f=_0x17a62b(),_0x948711=await _0x3b101f['reserveNumber']({'resource':_0x3fd09b,'format':_0x3ac8da,'prefix':_0x449f10,'separator':_0x3ee697,'numDigits':_0x4ca564,'reuseDelete':_0x1f9dc9,'ttl':_0xc49879,'idempotencyKey':_0x3f7e44});return _0x1950b9['status'](0xc9)[_0x4bc269(0x1a9)](createResponse(0xc9,_0x4bc269(0x1aa),_0x948711));}catch(_0x1f84ff){return _0x5878b7(_0x1950b9,_0x1f84ff,_0x4ffe46['JNlzq']);}}),_0x54c152['post'](_0x4ffe46['VhytB'],async(_0x2497d3,_0x29140d)=>{const _0x19353c=_0x4f265b;try{const {token:_0x248658}=_0x2497d3['body']||{},_0x3797c3=_0x4ffe46['YSyBj'](_0x183992,_0x2497d3),_0x575201=_0x17a62b(),_0x41cd40=await _0x575201[_0x19353c(0x1c3)]({'token':_0x248658,'idempotencyKey':_0x3797c3});return _0x29140d['status'](0xc8)[_0x19353c(0x1a9)](_0x4ffe46['yPAYT'](createResponse,0xc8,_0x4ffe46[_0x19353c(0x1ac)],_0x41cd40));}catch(_0x192be0){return _0x4ffe46[_0x19353c(0x1b0)](_0x5878b7,_0x29140d,_0x192be0,_0x4ffe46[_0x19353c(0x1ba)]);}}),_0x54c152['post'](_0x4f265b(0x1d0),async(_0x5b33d2,_0x45ce67)=>{const _0x1c928f=_0x4f265b;try{const {token:_0x1198b8}=_0x5b33d2['body']||{},_0x2544ea=_0x183992(_0x5b33d2),_0x3f7520=_0x17a62b(),_0x1eff30=await _0x3f7520['cancelReservation']({'token':_0x1198b8,'idempotencyKey':_0x2544ea});return _0x45ce67['status'](0xc8)[_0x1c928f(0x1a9)](createResponse(0xc8,_0x1c928f(0x1ce),_0x1eff30));}catch(_0x11a232){return _0x5878b7(_0x45ce67,_0x11a232,_0x1c928f(0x1af));}}),_0x54c152[_0x4f265b(0x1cc)](_0x4f265b(0x19d),async(_0x1a6da2,_0x1cb25a)=>{const _0x4eedda=_0x4f265b;try{const {token:_0x1b1963,ttl:_0x455e2c}=_0x1a6da2[_0x4eedda(0x194)]||{},_0x3b4564=_0x183992(_0x1a6da2),_0xf8d394=_0x17a62b(),_0x4091ca=await _0xf8d394[_0x4eedda(0x19b)]({'token':_0x1b1963,'ttl':_0x455e2c,'idempotencyKey':_0x3b4564});return _0x1cb25a['status'](0xc8)[_0x4eedda(0x1a9)](createResponse(0xc8,_0x4ffe46[_0x4eedda(0x1b3)],_0x4091ca));}catch(_0xbd9877){return _0x5878b7(_0x1cb25a,_0xbd9877,_0x4ffe46['emPBs']);}}),_0x54c152[_0x4f265b(0x1a3)](_0x4f265b(0x19e),async(_0x27163e,_0x1c9769)=>{const _0xb215d3=_0x4f265b;try{const {token:_0x444d9a}=_0x27163e['params'],_0x38583f=_0x4ffe46['YoLHq'](_0x17a62b),_0x33798a=await _0x38583f['getReservation']({'token':_0x444d9a});return _0x1c9769[_0xb215d3(0x195)](0xc8)['json'](createResponse(0xc8,_0x4ffe46['mVNBl'],_0x33798a));}catch(_0x407e53){return _0x5878b7(_0x1c9769,_0x407e53,_0xb215d3(0x192));}}),_0x54c152[_0x4f265b(0x1cc)](_0x4f265b(0x18f),async(_0x29a3bb,_0x1a513c)=>{const _0x5531aa=_0x4f265b;try{const {resource:_0x1eb7f1,digits:_0x322f74,ensureUnique:_0x31eb49,ttl:_0x3912a3,maxRetry:_0x52e4dc}=_0x29a3bb['body']||{},_0xdc3887=_0x4ffe46['YSyBj'](_0x183992,_0x29a3bb),_0x4483c5=_0x17a62b(),_0x12c47c=await _0x4483c5[_0x5531aa(0x193)]({'resource':_0x1eb7f1,'digits':_0x322f74,'ensureUnique':_0x31eb49,'ttl':_0x3912a3,'maxRetry':_0x52e4dc,'idempotencyKey':_0xdc3887});return _0x1a513c[_0x5531aa(0x195)](0xc9)['json'](_0x4ffe46['teCdF'](createResponse,0xc9,_0x5531aa(0x199),_0x12c47c));}catch(_0x204ca4){return _0x5878b7(_0x1a513c,_0x204ca4,_0x4ffe46['NDlCK']);}}),_0x54c152[_0x4f265b(0x1cc)](_0x4f265b(0x1bc),async(_0x54b5ed,_0x35889d)=>{const _0x5b3667=_0x4f265b;try{const {resource:_0x3dccca,pattern:_0x5b5ad6,ensureUnique:_0x27ac17,ttl:_0x4cbddc,maxRetry:_0x375958}=_0x54b5ed[_0x5b3667(0x194)]||{},_0x31a8d3=_0x4ffe46['GRjZE'](_0x183992,_0x54b5ed),_0x5612d7=_0x4ffe46[_0x5b3667(0x19a)](_0x17a62b),_0x455fd7=await _0x5612d7['serial']({'resource':_0x3dccca,'pattern':_0x5b5ad6,'ensureUnique':_0x27ac17,'ttl':_0x4cbddc,'maxRetry':_0x375958,'idempotencyKey':_0x31a8d3});return _0x35889d['status'](0xc9)[_0x5b3667(0x1a9)](_0x4ffe46[_0x5b3667(0x1bf)](createResponse,0xc9,_0x4ffe46['KtuOs'],_0x455fd7));}catch(_0x210df0){return _0x5878b7(_0x35889d,_0x210df0,_0x5b3667(0x191));}}),_0x54c152['post'](_0x4ffe46['qQIuD'],async(_0xcfecd1,_0x117a98)=>{const _0x51c5c4=_0x4f265b;try{const {resource:_0x36e680,pattern:_0x2186d0,ensureUnique:_0x4aaf87,ttl:_0x2dd750,maxRetry:_0x2cbae1}=_0xcfecd1['body']||{},_0x147c61=_0x4ffe46[_0x51c5c4(0x1a2)](_0x183992,_0xcfecd1),_0x2ed640=_0x17a62b(),_0x16bc07=await _0x2ed640[_0x51c5c4(0x198)]({'resource':_0x36e680,'pattern':_0x2186d0,'ensureUnique':_0x4aaf87,'ttl':_0x2dd750,'maxRetry':_0x2cbae1,'idempotencyKey':_0x147c61});return _0x117a98['status'](0xc9)[_0x51c5c4(0x1a9)](createResponse(0xc9,_0x51c5c4(0x1d7),_0x16bc07));}catch(_0x3224ca){return _0x4ffe46[_0x51c5c4(0x1ad)](_0x5878b7,_0x117a98,_0x3224ca,_0x4ffe46['eEbdN']);}}),_0x54c152['post']('/random',async(_0x1800df,_0x42fc80)=>{const _0x58262d=_0x4f265b;try{const {resource:_0x3e79dd,pattern:_0x5ca741,ensureUnique:_0x244ce0,ttl:_0x341d72,maxRetry:_0x667d7c}=_0x1800df['body']||{},_0x3fb228=_0x4ffe46[_0x58262d(0x1b5)](_0x183992,_0x1800df),_0x4c2b8d=_0x17a62b(),_0x284ccc=await _0x4c2b8d['random']({'resource':_0x3e79dd,'pattern':_0x5ca741,'ensureUnique':_0x244ce0,'ttl':_0x341d72,'maxRetry':_0x667d7c,'idempotencyKey':_0x3fb228});return _0x42fc80['status'](0xc9)['json'](createResponse(0xc9,_0x4ffe46['iPPxC'],_0x284ccc));}catch(_0x3b25ca){return _0x5878b7(_0x42fc80,_0x3b25ca,_0x4ffe46['liFaY']);}}),_0x54c152[_0x4f265b(0x1cc)](_0x4ffe46['GfRZA'],async(_0x3fe75f,_0x53fe5e)=>{const _0x5af13f=_0x4f265b;try{const {resource:_0x128d4b,value:_0xbdea6d}=_0x3fe75f['body']||{},_0xf2db46=_0x17a62b(),_0x40079a=await _0xf2db46[_0x5af13f(0x1c4)]({'resource':_0x128d4b,'value':_0xbdea6d});return _0x53fe5e['status'](0xc8)[_0x5af13f(0x1a9)](createResponse(0xc8,'Value\x20consumed',_0x40079a));}catch(_0x4ed646){return _0x5878b7(_0x53fe5e,_0x4ed646,'idgen_route_consume_error');}}),_0x54c152[_0x4f265b(0x1a3)](_0x4ffe46['qgDSQ'],async(_0x1c58c7,_0x4fcb1c)=>{const _0x5a2d69=_0x4f265b;try{const {resource:_0x13f27c}=_0x1c58c7[_0x5a2d69(0x197)],{mode:_0x4ec77c,format:_0x4d02fe,prefix:_0x1aa7b6}=_0x1c58c7['query'],_0x26f42c=_0x4ffe46['rbHIv'](_0x17a62b),_0x152af2=await _0x26f42c['getInfo']({'resource':_0x13f27c,'mode':_0x4ffe46['yMMAi'](_0x4ec77c,_0x5a2d69(0x1d1)),'format':_0x4d02fe,'prefix':_0x1aa7b6});return _0x4fcb1c['status'](0xc8)[_0x5a2d69(0x1a9)](_0x4ffe46[_0x5a2d69(0x1b1)](createResponse,0xc8,'Resource\x20info\x20retrieved',_0x152af2));}catch(_0x5f1750){return _0x4ffe46['bZgbj'](_0x5878b7,_0x4fcb1c,_0x5f1750,_0x4ffe46[_0x5a2d69(0x1c9)]);}}),_0x54c152['post'](_0x4ffe46['HyWEl'],async(_0x932e56,_0x18bd10)=>{const _0x4ad024=_0x4f265b;try{const {resource:_0x5f0121,mode:_0x516521,format:_0x35c4b2,prefix:_0x1a9634}=_0x932e56['body']||{},_0x3eed52=_0x17a62b(),_0x21715b=await _0x3eed52[_0x4ad024(0x1a0)]({'resource':_0x5f0121,'mode':_0x516521||_0x4ffe46[_0x4ad024(0x1da)],'format':_0x35c4b2,'prefix':_0x1a9634});return _0x18bd10['status'](0xc8)['json'](createResponse(0xc8,_0x4ffe46[_0x4ad024(0x1c1)],_0x21715b));}catch(_0x294cd5){return _0x4ffe46['bZgbj'](_0x5878b7,_0x18bd10,_0x294cd5,'idgen_route_reset_error');}}),_0x54c152['get']('/health',async(_0x4427a2,_0x39a9d0)=>{const _0x45cb85=_0x4f265b;try{const _0x3a0cea=_0x4ffe46['ULizb'](_0x17a62b),_0x350159=_0x3a0cea['isEnabled']();let _0x28c791=![],_0x1a95eb=null;try{_0x28c791=await redisClient[_0x45cb85(0x1d6)](0xbb8);}catch(_0x3f632f){_0x1a95eb=_0x3f632f['message'];}const _0x1e024e=_0x4ffe46['HiTAA'](process['env']['LOCK_DISTRIBUTED_ENABLED'],_0x45cb85(0x1c2)),_0x45e7b5=process['env'][_0x45cb85(0x1ab)]===_0x4ffe46[_0x45cb85(0x18d)];if(!_0x350159||!_0x28c791)return _0x39a9d0[_0x45cb85(0x195)](0x1f7)[_0x45cb85(0x1a9)](createError(0x1f7,'ID\x20Generator\x20service\x20unavailable',{'enabled':_0x350159,'redisConnected':_0x28c791,'lockEnabled':_0x1e024e,'idempotencyEnabled':_0x45e7b5,'error':_0x1a95eb||(!_0x350159?_0x4ffe46['aSsOs']:_0x4ffe46['wEnIm'])}));return _0x39a9d0['status'](0xc8)['json'](createResponse(0xc8,_0x4ffe46[_0x45cb85(0x1c8)],{'enabled':_0x350159,'redisConnected':_0x28c791,'lockEnabled':_0x1e024e,'idempotencyEnabled':_0x45e7b5}));}catch(_0x24f368){return _0x5878b7(_0x39a9d0,_0x24f368,_0x45cb85(0x190));}}),_0x54c152;}module['exports']=createIdgenRoutes;
|
|
1
|
+
const a0_0x42c7f7=a0_0x2dfe;(function(_0x3af7cf,_0xee2b2e){const _0x459e35=a0_0x2dfe,_0x1269d8=_0x3af7cf();while(!![]){try{const _0x4124dc=parseInt(_0x459e35(0x1fa))/0x1*(-parseInt(_0x459e35(0x1ee))/0x2)+parseInt(_0x459e35(0x1bb))/0x3+-parseInt(_0x459e35(0x1df))/0x4*(parseInt(_0x459e35(0x1dc))/0x5)+parseInt(_0x459e35(0x1c5))/0x6*(-parseInt(_0x459e35(0x1eb))/0x7)+parseInt(_0x459e35(0x1e8))/0x8*(parseInt(_0x459e35(0x1d5))/0x9)+parseInt(_0x459e35(0x1dd))/0xa+parseInt(_0x459e35(0x1be))/0xb;if(_0x4124dc===_0xee2b2e)break;else _0x1269d8['push'](_0x1269d8['shift']());}catch(_0x23dc7a){_0x1269d8['push'](_0x1269d8['shift']());}}}(a0_0x23dc,0x885ea));function a0_0x23dc(){const _0x172a0f=['uMvZB3vYy2uGC3rHDguGCMvZzxq','l3jLC2vYDMu','u2vYAwfSigTLEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','t1r6BNy','CMvSzwfZzu51BwjLCG','swrLBxbVDgvUy3KTs2v5','wxL2rfm','D2fYBG','t2Psz3y','nJiZotC4mvvzEw5nwG','rw5VquO','zvryyKe','AgvHzgvY','l3nLCMLHBa','CMvZzxq','AwrNzw5FCM91DgvFCMfUzg9Tx2vYCM9Y','mti0ote1CvL3zMHQ','odq1mtyYmfDPrMvZsq','yM9KEq','odHbrwzwEhG','Cg9ZDa','AwrNzw5FCM91DgvFCgLUx2vYCM9Y','AwrNzw5FCM91DgvFCMvZzxj2zv9LCNjVCG','BMfTzq','sLvzExq','vuPmCey','uMvZzxj2yxrPB24GCMv0CMLLDMvK','AM9Ms3e','oe10wxHQDq','BNvTyMvY','CgfYyw1Z','mtu4owPLsK9Muq','AwrNzw5FCM91DgvFy29UC3vTzv9LCNjVCG','C0fIt3q','mtu2mdiWnMfcsM9lDG','DKr2q1G','C3rHDhvZ','DvHrtui','AwrNzw5FCM91DgvFy29Kzv9LCNjVCG','uMvZzxj2yxrPB24Gy29UzMLYBwvK','uMvKAxmGBM90ignVBM5Ly3rLza','BwvZC2fNzq','z2v0','zw52','CxbNBvu','uM91DgvY','mw1mweziBq','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','zuHuC2O','t0LYvMm','C2vYAwfS','Cw5fB0i','y2fUy2vSuMvZzxj2yxrPB24','CxvLCNK','BxzdEem','q3jcAgG','uMfUzg9TihzHBhvLigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','tu9iufG','Dw5UCNO','tNvTyMvYihjLBgvHC2vKihrVihjLDxnLihbVB2W','y29Kzq','sunzwLa','l3jHBMrVBq','qxrgBKC','l3bPBG','shn4CLO','mtK4otKWm0fnr1jAEq','AwrNzw5FCM91DgvFCMvZzxrFzxjYB3i','B3zXExm','ndiXmda5nMjVB1z3rG','tKvvA1C','l2HLywX0Aa','lI4VlI4VDxrPBhmVBg9Nz2vY','BgPtD1a','CMfUzg9T','CuTQsvi','mtG0mdj6D3fssvC','z2v0uMvZzxj2yxrPB24','qvLZCuW','CMvZzxj2zu51BwjLCG','AwrNzw5FCM91DgvFAgvHBhrOx2vYCM9Y','ANnVBG','C3rHy2S'];a0_0x23dc=function(){return _0x172a0f;};return a0_0x23dc();}function a0_0x2dfe(_0x203383,_0x28db14){_0x203383=_0x203383-0x1b3;const _0x23dc7e=a0_0x23dc();let _0x2dfe93=_0x23dc7e[_0x203383];if(a0_0x2dfe['nCsvRD']===undefined){var _0x4afd90=function(_0x404226){const _0x4b571c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1461d7='',_0x1638a5='';for(let _0x3fb71d=0x0,_0x485147,_0x49c117,_0x12b39a=0x0;_0x49c117=_0x404226['charAt'](_0x12b39a++);~_0x49c117&&(_0x485147=_0x3fb71d%0x4?_0x485147*0x40+_0x49c117:_0x49c117,_0x3fb71d++%0x4)?_0x1461d7+=String['fromCharCode'](0xff&_0x485147>>(-0x2*_0x3fb71d&0x6)):0x0){_0x49c117=_0x4b571c['indexOf'](_0x49c117);}for(let _0x8417d1=0x0,_0x44ced7=_0x1461d7['length'];_0x8417d1<_0x44ced7;_0x8417d1++){_0x1638a5+='%'+('00'+_0x1461d7['charCodeAt'](_0x8417d1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1638a5);};a0_0x2dfe['mRTpyV']=_0x4afd90,a0_0x2dfe['tcPzlE']={},a0_0x2dfe['nCsvRD']=!![];}const _0x5b0240=_0x23dc7e[0x0],_0x16ae5b=_0x203383+_0x5b0240,_0x10054d=a0_0x2dfe['tcPzlE'][_0x16ae5b];return!_0x10054d?(_0x2dfe93=a0_0x2dfe['mRTpyV'](_0x2dfe93),a0_0x2dfe['tcPzlE'][_0x16ae5b]=_0x2dfe93):_0x2dfe93=_0x10054d,_0x2dfe93;}const express=require('express'),{logger}=require(a0_0x42c7f7(0x1c1)),{createResponse,createError}=require('../../utils/processor-response'),redisClient=require('../../utils/redis-client'),ERROR_CODE_HTTP_MAP={'IDGEN_DISABLED':0x1f7,'IDGEN_INVALID_RESOURCE':0x190,'IDGEN_INVALID_MODE':0x190,'IDGEN_INVALID_FORMAT':0x190,'IDGEN_INVALID_NUM_DIGITS':0x190,'IDGEN_INVALID_PREFIX':0x190,'IDGEN_INVALID_SEPARATOR':0x190,'IDGEN_INVALID_NUMBER':0x190,'IDGEN_INVALID_PATTERN':0x190,'IDGEN_INVALID_DIGITS':0x190,'IDGEN_INVALID_TTL':0x190,'IDGEN_INVALID_MAX_RETRY':0x190,'IDGEN_INVALID_TOKEN':0x190,'IDGEN_INVALID_RESERVE_TTL':0x190,'IDGEN_RESERVATION_NOT_FOUND':0x194,'IDGEN_COUNTER_OVERFLOW':0x1a6,'IDGEN_LOCK_TIMEOUT':0x199,'IDGEN_RESET_NOT_ALLOWED':0x193,'IDGEN_UNIQUE_RETRY_EXHAUSTED':0x199,'IDGEN_REDIS_ERROR':0x1f4};function createIdgenRoutes(){const _0x4e945c=a0_0x42c7f7,_0x32850f={'CrBhh':function(_0x2f2c6c,_0xe0062){return _0x2f2c6c(_0xe0062);},'uZVyK':'../../utils/id-generator','sAbOt':_0x4e945c(0x1d1),'eHTsj':function(_0x1d12c0,_0x4d5a00,_0x55165b,_0x5367a9){return _0x1d12c0(_0x4d5a00,_0x55165b,_0x5367a9);},'mvCxC':function(_0x388f3d,_0x4a8fd9,_0x2587a7,_0x3343d1){return _0x388f3d(_0x4a8fd9,_0x2587a7,_0x3343d1);},'qKjIR':_0x4e945c(0x1b4),'RIetf':function(_0x2e4972){return _0x2e4972();},'unnrz':_0x4e945c(0x1f3),'UtURX':'idgen_route_reserve_cancel_error','zoOCs':function(_0xcc842,_0x4016ef){return _0xcc842(_0x4016ef);},'ljSwP':function(_0x439545){return _0x439545();},'NEUkW':function(_0x35d941,_0x17809d,_0x3dbe41,_0x456cb1){return _0x35d941(_0x17809d,_0x3dbe41,_0x456cb1);},'iDLij':function(_0x5b0868){return _0x5b0868();},'EnoAJ':function(_0x4360ac,_0x7c9a16,_0x6aaf72,_0x419535){return _0x4360ac(_0x7c9a16,_0x6aaf72,_0x419535);},'MOHPX':function(_0x12ae16){return _0x12ae16();},'OOrkB':_0x4e945c(0x1ce),'UUASX':function(_0x157937,_0x58fda2,_0x1ac357,_0x472eee){return _0x157937(_0x58fda2,_0x1ac357,_0x472eee);},'ovqys':function(_0x4f8ce6,_0x503d23,_0x4c50f7,_0x298537){return _0x4f8ce6(_0x503d23,_0x4c50f7,_0x298537);},'OTznv':_0x4e945c(0x1f2),'bNNVI':function(_0x313fad,_0x58954e){return _0x313fad(_0x58954e);},'OmBZh':function(_0x5059ce,_0x22e224,_0x4cfa65,_0x48b0ec){return _0x5059ce(_0x22e224,_0x4cfa65,_0x48b0ec);},'LiojC':'Value\x20consumed','OIrVc':_0x4e945c(0x1ec),'qnEoB':'Resource\x20info\x20retrieved','mkRlt':'idgen_route_info_error','NdmzV':function(_0x197643,_0x22c83f,_0x6f9eec,_0x56c1ea){return _0x197643(_0x22c83f,_0x6f9eec,_0x56c1ea);},'YyvDS':function(_0x860913,_0x31e9e0,_0x29aebf,_0x455f7b){return _0x860913(_0x31e9e0,_0x29aebf,_0x455f7b);},'UJLpF':_0x4e945c(0x1bc),'AYsqL':function(_0x293f5f){return _0x293f5f();},'ICYZP':'true','jofKq':function(_0x42ad70,_0x5a8ed8){return _0x42ad70===_0x5a8ed8;},'qpgmU':function(_0x461ad2,_0x51234a){return _0x461ad2||_0x51234a;},'OjRgv':function(_0x2af244,_0x5a4a2c,_0x56d08b,_0x54aea1){return _0x2af244(_0x5a4a2c,_0x56d08b,_0x54aea1);},'JUYyt':'ID\x20Generator\x20service\x20is\x20healthy','dEKCq':_0x4e945c(0x1c9),'HsxrZ':'/number','AtFnG':'/number/release','rkRuN':_0x4e945c(0x1cd),'uXQMB':'/reserve/confirm','xQgUM':'/reserve/extend','YyGTT':_0x4e945c(0x1b9),'Qzelt':_0x4e945c(0x1d9),'eTXbA':'/code','vDvCX':'/consume'},_0x1e3735=express[_0x4e945c(0x1f9)]();let _0x250fde=null;function _0xa4e0b5(){return!_0x250fde&&(_0x250fde=_0x32850f['CrBhh'](require,_0x32850f['uZVyK'])),_0x250fde;}function _0x52b6d6(_0x559282,_0xa2f43b,_0x5b45e2){const _0x3e7406=_0x4e945c;if(_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1e3)]==='IdGeneratorError'){const _0x58a11c=ERROR_CODE_HTTP_MAP[_0xa2f43b[_0x3e7406(0x1b5)]]||0x1f4;return logger[_0x3e7406(0x1d3)]({'event':_0x5b45e2,'code':_0xa2f43b[_0x3e7406(0x1b5)],'message':_0xa2f43b['message']},'ID\x20Generator\x20route\x20error:\x20'+_0xa2f43b['code']),_0x559282['status'](_0x58a11c)[_0x3e7406(0x1ca)](createError(_0x58a11c,_0xa2f43b['message'],{'code':_0xa2f43b[_0x3e7406(0x1b5)],'details':_0xa2f43b['details']||null}));}return logger['error']({'event':_0x5b45e2,'error':_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1f5)],'stack':_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1cb)]},'ID\x20Generator\x20route\x20exception:\x20'+(_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1f5)])),_0x559282['status'](0x1f4)['json'](createError(0x1f4,'Internal\x20server\x20error',null));}function _0x1beda1(_0x367d94){const _0x38b943=_0x4e945c;return _0x367d94[_0x38b943(0x1d8)](_0x32850f[_0x38b943(0x1ed)])||undefined;}return _0x1e3735['post'](_0x32850f[_0x4e945c(0x1ba)],async(_0x4f1d24,_0x43f3bd)=>{const _0x5c0022=_0x4e945c;try{const {resource:_0x3e0680,format:_0x4e45e4,prefix:_0x479980,separator:_0x238f20,numDigits:_0xf0f44b,reuseDelete:_0x4c56c5}=_0x4f1d24[_0x5c0022(0x1de)]||{},_0x217677=_0x1beda1(_0x4f1d24),_0x5832e3=_0xa4e0b5(),_0x913f6b=await _0x5832e3[_0x5c0022(0x1e9)]({'resource':_0x3e0680,'format':_0x4e45e4,'prefix':_0x479980,'separator':_0x238f20,'numDigits':_0xf0f44b,'reuseDelete':_0x4c56c5,'idempotencyKey':_0x217677});return _0x43f3bd[_0x5c0022(0x1f0)](0xc9)['json'](_0x32850f['eHTsj'](createResponse,0xc9,'Number\x20generated\x20successfully',_0x913f6b));}catch(_0x6ade7e){return _0x32850f[_0x5c0022(0x1fc)](_0x52b6d6,_0x43f3bd,_0x6ade7e,'idgen_route_number_error');}}),_0x1e3735['post'](_0x32850f[_0x4e945c(0x1b8)],async(_0x5cc086,_0x45f58f)=>{const _0x514e21=_0x4e945c;try{const _0x5d6845=_0x1beda1(_0x5cc086),_0x4fe506={..._0x5cc086['body']||{},'idempotencyKey':_0x5d6845},_0x1db557=_0xa4e0b5(),_0x2731c6=await _0x1db557[_0x514e21(0x1d0)](_0x4fe506);return _0x45f58f['status'](0xc8)['json'](_0x32850f[_0x514e21(0x202)](createResponse,0xc8,_0x32850f[_0x514e21(0x1c4)],_0x2731c6));}catch(_0x4d939c){return _0x52b6d6(_0x45f58f,_0x4d939c,'idgen_route_release_error');}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f['rkRuN'],async(_0x19845f,_0x5de5ac)=>{const _0x32e367=_0x4e945c;try{const {resource:_0x405fbc,format:_0x424334,prefix:_0x39675a,separator:_0x36c5cf,numDigits:_0x22b1f3,reuseDelete:_0x3438c7,ttl:_0x36291f}=_0x19845f[_0x32e367(0x1de)]||{},_0x59b3df=_0x1beda1(_0x19845f),_0x520754=_0xa4e0b5(),_0x5e0245=await _0x520754[_0x32e367(0x1c8)]({'resource':_0x405fbc,'format':_0x424334,'prefix':_0x39675a,'separator':_0x36c5cf,'numDigits':_0x22b1f3,'reuseDelete':_0x3438c7,'ttl':_0x36291f,'idempotencyKey':_0x59b3df});return _0x5de5ac['status'](0xc9)['json'](createResponse(0xc9,'Number\x20reserved\x20successfully',_0x5e0245));}catch(_0x54ad0a){return _0x32850f[_0x32e367(0x1fc)](_0x52b6d6,_0x5de5ac,_0x54ad0a,_0x32e367(0x1e2));}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f[_0x4e945c(0x1f1)],async(_0x225606,_0x23749a)=>{const _0x25f700=_0x4e945c;try{const {token:_0x2af950}=_0x225606[_0x25f700(0x1de)]||{},_0x10c094=_0x32850f[_0x25f700(0x203)](_0x1beda1,_0x225606),_0x1502d1=_0x32850f['RIetf'](_0xa4e0b5),_0x2128dd=await _0x1502d1['confirmReservation']({'token':_0x2af950,'idempotencyKey':_0x10c094});return _0x23749a['status'](0xc8)[_0x25f700(0x1ca)](_0x32850f['eHTsj'](createResponse,0xc8,_0x32850f[_0x25f700(0x1b3)],_0x2128dd));}catch(_0x96d21){return _0x52b6d6(_0x23749a,_0x96d21,'idgen_route_reserve_confirm_error');}}),_0x1e3735['post']('/reserve/cancel',async(_0x4f4154,_0x3ff8db)=>{const _0x3c8170=_0x4e945c;try{const {token:_0x4f71a7}=_0x4f4154[_0x3c8170(0x1de)]||{},_0x46c6aa=_0x1beda1(_0x4f4154),_0x39fcb9=_0xa4e0b5(),_0x5a4f42=await _0x39fcb9[_0x3c8170(0x200)]({'token':_0x4f71a7,'idempotencyKey':_0x46c6aa});return _0x3ff8db['status'](0xc8)[_0x3c8170(0x1ca)](createResponse(0xc8,'Reservation\x20cancelled',_0x5a4f42));}catch(_0x3df920){return _0x52b6d6(_0x3ff8db,_0x3df920,_0x32850f['UtURX']);}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f['xQgUM'],async(_0x4a907d,_0x25c25e)=>{const _0x3af9e2=_0x4e945c;try{const {token:_0x308693,ttl:_0x4cc003}=_0x4a907d['body']||{},_0x28eb5e=_0x32850f['zoOCs'](_0x1beda1,_0x4a907d),_0x1f8d23=_0x32850f['ljSwP'](_0xa4e0b5),_0x5cf613=await _0x1f8d23['extendReservation']({'token':_0x308693,'ttl':_0x4cc003,'idempotencyKey':_0x28eb5e});return _0x25c25e['status'](0xc8)['json'](createResponse(0xc8,'Reservation\x20extended',_0x5cf613));}catch(_0x2b1e5f){return _0x32850f[_0x3af9e2(0x1bf)](_0x52b6d6,_0x25c25e,_0x2b1e5f,'idgen_route_reserve_extend_error');}}),_0x1e3735['get']('/reserve/:token',async(_0x5621de,_0x128d49)=>{const _0x3f39ed=_0x4e945c;try{const {token:_0x4c5648}=_0x5621de[_0x3f39ed(0x1ea)],_0x56fdb5=_0x32850f['iDLij'](_0xa4e0b5),_0x34a305=await _0x56fdb5[_0x3f39ed(0x1c6)]({'token':_0x4c5648});return _0x128d49[_0x3f39ed(0x1f0)](0xc8)[_0x3f39ed(0x1ca)](_0x32850f[_0x3f39ed(0x1d6)](createResponse,0xc8,_0x3f39ed(0x1e6),_0x34a305));}catch(_0xf3414f){return _0x32850f[_0x3f39ed(0x1fc)](_0x52b6d6,_0x128d49,_0xf3414f,_0x3f39ed(0x1fb));}}),_0x1e3735['post'](_0x32850f['YyGTT'],async(_0x2875ee,_0x2bb4ed)=>{const _0x48ed76=_0x4e945c;try{const {resource:_0x44cce8,digits:_0x26c06b,ensureUnique:_0x35dd94,ttl:_0x5a8917,maxRetry:_0x46b921}=_0x2875ee[_0x48ed76(0x1de)]||{},_0x4e2a99=_0x32850f[_0x48ed76(0x203)](_0x1beda1,_0x2875ee),_0x19046c=_0xa4e0b5(),_0x3d9f9d=await _0x19046c['pin']({'resource':_0x44cce8,'digits':_0x26c06b,'ensureUnique':_0x35dd94,'ttl':_0x5a8917,'maxRetry':_0x46b921,'idempotencyKey':_0x4e2a99});return _0x2bb4ed['status'](0xc9)['json'](createResponse(0xc9,'PIN\x20generated\x20successfully',_0x3d9f9d));}catch(_0x232e4b){return _0x52b6d6(_0x2bb4ed,_0x232e4b,_0x48ed76(0x1e1));}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f['Qzelt'],async(_0x3bb9c0,_0xf6756a)=>{const _0x9a6e69=_0x4e945c;try{const {resource:_0x3dc285,pattern:_0x3c2fae,ensureUnique:_0x2ebfd7,ttl:_0x150f9a,maxRetry:_0x30f5fa}=_0x3bb9c0['body']||{},_0x4534cf=_0x1beda1(_0x3bb9c0),_0x263f83=_0x32850f['MOHPX'](_0xa4e0b5),_0x586719=await _0x263f83[_0x9a6e69(0x1fe)]({'resource':_0x3dc285,'pattern':_0x3c2fae,'ensureUnique':_0x2ebfd7,'ttl':_0x150f9a,'maxRetry':_0x30f5fa,'idempotencyKey':_0x4534cf});return _0xf6756a[_0x9a6e69(0x1f0)](0xc9)['json'](createResponse(0xc9,_0x32850f['OOrkB'],_0x586719));}catch(_0x2b3599){return _0x32850f['EnoAJ'](_0x52b6d6,_0xf6756a,_0x2b3599,'idgen_route_serial_error');}}),_0x1e3735['post'](_0x32850f[_0x4e945c(0x1d7)],async(_0x17cd22,_0x1b5037)=>{const _0x4e99b4=_0x4e945c;try{const {resource:_0x2d5fcc,pattern:_0x4f473c,ensureUnique:_0x32487c,ttl:_0x5de6e4,maxRetry:_0x38123c}=_0x17cd22['body']||{},_0x2402a1=_0x1beda1(_0x17cd22),_0x6ffb39=_0x32850f[_0x4e99b4(0x1c2)](_0xa4e0b5),_0x1c7cd2=await _0x6ffb39['code']({'resource':_0x2d5fcc,'pattern':_0x4f473c,'ensureUnique':_0x32487c,'ttl':_0x5de6e4,'maxRetry':_0x38123c,'idempotencyKey':_0x2402a1});return _0x1b5037['status'](0xc9)['json'](_0x32850f['UUASX'](createResponse,0xc9,'Code\x20generated\x20successfully',_0x1c7cd2));}catch(_0x288ddb){return _0x32850f[_0x4e99b4(0x1bd)](_0x52b6d6,_0x1b5037,_0x288ddb,_0x32850f[_0x4e99b4(0x1cf)]);}}),_0x1e3735['post'](_0x4e945c(0x1b7),async(_0x1c6e98,_0x42b346)=>{const _0x3ee0f0=_0x4e945c;try{const {resource:_0x5d7492,pattern:_0x411c93,ensureUnique:_0x513aa3,ttl:_0x23b74e,maxRetry:_0x269f23}=_0x1c6e98['body']||{},_0xe3ca8a=_0x32850f['bNNVI'](_0x1beda1,_0x1c6e98),_0x127f0c=_0xa4e0b5(),_0x1ff1a0=await _0x127f0c[_0x3ee0f0(0x1c3)]({'resource':_0x5d7492,'pattern':_0x411c93,'ensureUnique':_0x513aa3,'ttl':_0x23b74e,'maxRetry':_0x269f23,'idempotencyKey':_0xe3ca8a});return _0x42b346['status'](0xc9)['json'](createResponse(0xc9,_0x3ee0f0(0x204),_0x1ff1a0));}catch(_0x3faf48){return _0x32850f['NEUkW'](_0x52b6d6,_0x42b346,_0x3faf48,_0x3ee0f0(0x1db));}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f[_0x4e945c(0x1ef)],async(_0x5a88ea,_0x57265e)=>{const _0x142567=_0x4e945c;try{const {resource:_0x564c14,value:_0x3f6b67}=_0x5a88ea['body']||{},_0xf1096e=_0x32850f['ljSwP'](_0xa4e0b5),_0x1bb8ed=await _0xf1096e['consume']({'resource':_0x564c14,'value':_0x3f6b67});return _0x57265e[_0x142567(0x1f0)](0xc8)[_0x142567(0x1ca)](_0x32850f['OmBZh'](createResponse,0xc8,_0x32850f['LiojC'],_0x1bb8ed));}catch(_0x28bd2b){return _0x52b6d6(_0x57265e,_0x28bd2b,_0x32850f[_0x142567(0x1fd)]);}}),_0x1e3735['get']('/info/:resource',async(_0x4fffcb,_0x3837cf)=>{const _0x431204=_0x4e945c;try{const {resource:_0x20c71e}=_0x4fffcb['params'],{mode:_0x30ec6e,format:_0xf37cc4,prefix:_0x33c1a0}=_0x4fffcb[_0x431204(0x201)],_0x51bdd1=_0x32850f[_0x431204(0x205)](_0xa4e0b5),_0x1e0812=await _0x51bdd1['getInfo']({'resource':_0x20c71e,'mode':_0x30ec6e||'number','format':_0xf37cc4,'prefix':_0x33c1a0});return _0x3837cf['status'](0xc8)['json'](createResponse(0xc8,_0x32850f[_0x431204(0x1ff)],_0x1e0812));}catch(_0x40e71a){return _0x32850f['NEUkW'](_0x52b6d6,_0x3837cf,_0x40e71a,_0x32850f['mkRlt']);}}),_0x1e3735['post']('/reset',async(_0x274eaa,_0x344605)=>{const _0x46fc14=_0x4e945c;try{const {resource:_0x162406,mode:_0x4f81c2,format:_0x3cecfa,prefix:_0x45a956}=_0x274eaa[_0x46fc14(0x1de)]||{},_0x580d7f=_0xa4e0b5(),_0x22950e=await _0x580d7f[_0x46fc14(0x1da)]({'resource':_0x162406,'mode':_0x4f81c2||_0x46fc14(0x1e9),'format':_0x3cecfa,'prefix':_0x45a956});return _0x344605['status'](0xc8)[_0x46fc14(0x1ca)](_0x32850f['NdmzV'](createResponse,0xc8,_0x46fc14(0x1cc),_0x22950e));}catch(_0x56b47b){return _0x32850f[_0x46fc14(0x1d2)](_0x52b6d6,_0x344605,_0x56b47b,_0x32850f[_0x46fc14(0x1e5)]);}}),_0x1e3735[_0x4e945c(0x1f6)](_0x4e945c(0x1c0),async(_0x1a56f6,_0x3c0523)=>{const _0xdc5c03=_0x4e945c;try{const _0x50fe78=_0x32850f[_0xdc5c03(0x1c7)](_0xa4e0b5),_0x247b7c=_0x50fe78['isEnabled']();let _0x36c279=![],_0xef6381=null;try{_0x36c279=await redisClient['ping'](0xbb8);}catch(_0x329d69){_0xef6381=_0x329d69[_0xdc5c03(0x1f5)];}const _0x39b2e1=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x32850f['ICYZP'],_0x3f81e9=_0x32850f[_0xdc5c03(0x1e7)](process[_0xdc5c03(0x1f7)]['IDEMPOTENCY_ENABLED'],_0x32850f[_0xdc5c03(0x1b6)]);if(_0x32850f[_0xdc5c03(0x1f8)](!_0x247b7c,!_0x36c279))return _0x3c0523[_0xdc5c03(0x1f0)](0x1f7)['json'](createError(0x1f7,'ID\x20Generator\x20service\x20unavailable',{'enabled':_0x247b7c,'redisConnected':_0x36c279,'lockEnabled':_0x39b2e1,'idempotencyEnabled':_0x3f81e9,'error':_0xef6381||(!_0x247b7c?'IDGEN_ENABLED=false':_0xdc5c03(0x1f4))}));return _0x3c0523['status'](0xc8)['json'](_0x32850f[_0xdc5c03(0x1d4)](createResponse,0xc8,_0x32850f[_0xdc5c03(0x1e4)],{'enabled':_0x247b7c,'redisConnected':_0x36c279,'lockEnabled':_0x39b2e1,'idempotencyEnabled':_0x3f81e9}));}catch(_0x26fa71){return _0x52b6d6(_0x3c0523,_0x26fa71,_0x32850f['dEKCq']);}}),_0x1e3735;}module['exports']=createIdgenRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x1dc4da=a0_0x540d;(function(_0x34f8cb,_0x11e845){const _0x4c819c=a0_0x540d,_0x1c440e=_0x34f8cb();while(!![]){try{const _0x59d29b=parseInt(_0x4c819c(0xbc))/0x1+parseInt(_0x4c819c(0xa2))/0x2*(-parseInt(_0x4c819c(0xa8))/0x3)+-parseInt(_0x4c819c(0xba))/0x4*(parseInt(_0x4c819c(0xa9))/0x5)+parseInt(_0x4c819c(0xb1))/0x6+-parseInt(_0x4c819c(0xbd))/0x7+-parseInt(_0x4c819c(0xaa))/0x8*(parseInt(_0x4c819c(0xbe))/0x9)+parseInt(_0x4c819c(0xb8))/0xa;if(_0x59d29b===_0x11e845)break;else _0x1c440e['push'](_0x1c440e['shift']());}catch(_0x4e33f8){_0x1c440e['push'](_0x1c440e['shift']());}}}(a0_0xdcc4,0x36a60));const dbType=(process['env']['DB_TYPE']||'postgresql')[a0_0x1dc4da(0xc1)]();function a0_0xdcc4(){const _0x4e39e5=['y2XLyxjdywnOzq','B3jHy2XL','mti4mtiYodbnrwr3qwq','r1Heruy','otqYntjcuwrcv3q','zM9YrwfJAa','mJuZodu4uufgzKPx','mJq4mtaZohzNEgzKCa','mJe2AvjLt0rU','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','Dg9mB3DLCKnHC2u','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','DhjPBq','Bg9HzeXVB2T1CfrHyMXL','BwvZC2fNzq','C2v0','C2XPy2u','AgfZ','BgvUz3rO','Dg9vChbLCKnHC2u','wKzZB3C','mtG4uNLZzg9z','BMLVChu','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','ChvZAa','CMvZB2X2zuXVB2T1CfzHBhvL','y2XLyxi','mta5mJbyD2PSrxu','nZvMEuP1vge','mtmWndq4wg5oseHT','yMfMtgm','zxHLy3v0zvf1zxj5','z2v0','Bg9VA3vWx3rHyMXLx2XVywrLza','Bg9VA3vWq2fJAgu','zgvIDwC','nZGWodiYruj2D2LR','zw50CMLLCW','t3HxvuK','Aw5MBW','zNjVBq'];a0_0xdcc4=function(){return _0x4e39e5;};return a0_0xdcc4();}function a0_0x540d(_0xf0f574,_0x2f1835){_0xf0f574=_0xf0f574-0x97;const _0xdcc47=a0_0xdcc4();let _0x540da2=_0xdcc47[_0xf0f574];if(a0_0x540d['HFANhz']===undefined){var _0x1771d8=function(_0xf8a0cc){const _0x1f96b7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x53831a='',_0x167a1b='';for(let _0x4237f0=0x0,_0x4b0f5a,_0x57643a,_0x459e79=0x0;_0x57643a=_0xf8a0cc['charAt'](_0x459e79++);~_0x57643a&&(_0x4b0f5a=_0x4237f0%0x4?_0x4b0f5a*0x40+_0x57643a:_0x57643a,_0x4237f0++%0x4)?_0x53831a+=String['fromCharCode'](0xff&_0x4b0f5a>>(-0x2*_0x4237f0&0x6)):0x0){_0x57643a=_0x1f96b7['indexOf'](_0x57643a);}for(let _0x18251d=0x0,_0x1ddbd8=_0x53831a['length'];_0x18251d<_0x1ddbd8;_0x18251d++){_0x167a1b+='%'+('00'+_0x53831a['charCodeAt'](_0x18251d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x167a1b);};a0_0x540d['Tinrld']=_0x1771d8,a0_0x540d['WMrjHZ']={},a0_0x540d['HFANhz']=!![];}const _0x40d579=_0xdcc47[0x0],_0x28ae5b=_0xf0f574+_0x40d579,_0x431bd6=a0_0x540d['WMrjHZ'][_0x28ae5b];return!_0x431bd6?(_0x540da2=a0_0x540d['Tinrld'](_0x540da2),a0_0x540d['WMrjHZ'][_0x28ae5b]=_0x540da2):_0x540da2=_0x431bd6,_0x540da2;}let executeQuery;if(dbType===a0_0x1dc4da(0xb7)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x56e011,_0x2c9ecc)=>oracleDb[a0_0x1dc4da(0xac)](_0x56e011,_0x2c9ecc);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x85e79a,_0x5d317a)=>mysqlDb['executeQuery'](_0x85e79a,_0x5d317a);}else executeQuery=require('../../core/utils/db')[a0_0x1dc4da(0xac)];}const {logger}=require(a0_0x1dc4da(0xc0));class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x1dc4da(0xb6)](){const _0x39e15b=a0_0x1dc4da,_0xa280c2={'NPUMB':'Lookup\x20cache\x20cleared'};this[_0x39e15b(0xaf)][_0x39e15b(0xa7)](),logger[_0x39e15b(0xb0)]({'event':_0x39e15b(0xbf)},_0xa280c2['NPUMB']);}async['loadLookupTable'](_0x5e659e,_0x14c901,_0xfcd488){const _0x1549a1=a0_0x1dc4da,_0x3cd7de={'lWOuQ':function(_0x585c3d,_0x1928e5){return _0x585c3d!==_0x1928e5;},'bafLc':function(_0x3cfc5e,_0x2a5586){return _0x3cfc5e!==_0x2a5586;},'GXDEF':function(_0x15aa29,_0x39b438){return _0x15aa29(_0x39b438);},'ZFsow':_0x1549a1(0xae)},_0x10cf61=_0x5e659e+':'+_0x14c901+':'+_0xfcd488;if(this[_0x1549a1(0xaf)]['has'](_0x10cf61))return this[_0x1549a1(0xaf)][_0x1549a1(0xad)](_0x10cf61);try{const _0x596a9e='SELECT\x20'+_0xfcd488+',\x20'+_0x14c901+'\x20FROM\x20'+_0x5e659e,_0x25de41=await _0x3cd7de[_0x1549a1(0xb9)](executeQuery,_0x596a9e),_0x2ea77c=new Map();return _0x25de41[_0x1549a1(0xbb)](_0x53c63b=>{const _0x19a5eb=_0x1549a1,_0x295fe2=_0x3cd7de['lWOuQ'](_0x53c63b[_0x14c901],undefined)?_0x53c63b[_0x14c901]:_0x53c63b[_0x14c901[_0x19a5eb(0xa0)]()],_0x26cda9=_0x3cd7de['lWOuQ'](_0x53c63b[_0xfcd488],undefined)?_0x53c63b[_0xfcd488]:_0x53c63b[_0xfcd488['toUpperCase']()];_0x3cd7de[_0x19a5eb(0xab)](_0x295fe2,null)&&_0x295fe2!==undefined&&(_0x2ea77c['set'](String(_0x295fe2)[_0x19a5eb(0xc1)]()[_0x19a5eb(0x99)](),_0x26cda9),_0x2ea77c[_0x19a5eb(0x9c)](String(_0x295fe2)[_0x19a5eb(0x99)](),_0x26cda9));}),this[_0x1549a1(0xaf)]['set'](_0x10cf61,_0x2ea77c),logger[_0x1549a1(0xb4)]({'event':_0x3cd7de[_0x1549a1(0xa1)],'table':_0x5e659e,'column':_0x14c901,'count':_0x25de41['length']},'Lookup\x20table\x20loaded:\x20'+_0x5e659e),_0x2ea77c;}catch(_0x51b347){logger['error']({'event':_0x1549a1(0xa4),'table':_0x5e659e,'error':_0x51b347[_0x1549a1(0x9b)]},_0x1549a1(0x97)+_0x5e659e);throw _0x51b347;}}['resolveLookupValue'](_0xb34de6,_0x9b3541){const _0x28b678=a0_0x1dc4da;if(_0xb34de6===null||_0xb34de6===undefined||_0xb34de6==='')return null;const _0xf9680e=String(_0xb34de6)['trim']();if(_0x9b3541[_0x28b678(0x9e)](_0xf9680e))return _0x9b3541['get'](_0xf9680e);const _0x3fe0d2=_0xf9680e[_0x28b678(0xc1)]();if(_0x9b3541[_0x28b678(0x9e)](_0x3fe0d2))return _0x9b3541['get'](_0x3fe0d2);return null;}async['processLookupFields'](_0x3a59dc,_0xc3df56){const _0xb913a2=a0_0x1dc4da,_0x35089b={'niopu':function(_0x45ceac,_0x1f3702){return _0x45ceac===_0x1f3702;}};if(!_0xc3df56||_0x35089b[_0xb913a2(0xa3)](Object['keys'](_0xc3df56)[_0xb913a2(0x9f)],0x0))return{'processedRows':_0x3a59dc,'errors':[]};const _0x335725=[],_0x447167=new Map();for(const [_0x1aa727,_0x50a038]of Object['entries'](_0xc3df56)){const {lookupTable:_0xffaf1c,lookupColumn:_0x453975,lookupIdColumn:_0x4ec762}=_0x50a038,_0x4b2cb4=_0xffaf1c+':'+_0x453975+':'+_0x4ec762;if(!_0x447167['has'](_0x4b2cb4)){const _0x38e9b4=await this['loadLookupTable'](_0xffaf1c,_0x453975,_0x4ec762);_0x447167[_0xb913a2(0x9c)](_0x4b2cb4,_0x38e9b4);}}const _0x1db638=_0x3a59dc['map']((_0x3edb41,_0x71e90a)=>{const _0x43b81d=_0xb913a2,_0x388474={..._0x3edb41};for(const [_0x2332a5,_0x447523]of Object['entries'](_0xc3df56)){const {lookupTable:_0x66ba08,lookupColumn:_0x1b3c20,lookupIdColumn:_0x5cba37,targetField:_0x2e45b0,required:_0x27178c}=_0x447523,_0x455f79=_0x66ba08+':'+_0x1b3c20+':'+_0x5cba37,_0x1c9fd9=_0x447167['get'](_0x455f79),_0x4fb24d=_0x3edb41[_0x2332a5];if((_0x4fb24d===null||_0x4fb24d===undefined||_0x35089b['niopu'](_0x4fb24d,''))&&!_0x27178c){_0x388474[_0x2e45b0]=null;continue;}const _0x254e55=this[_0x43b81d(0xa6)](_0x4fb24d,_0x1c9fd9);_0x254e55!==null?_0x388474[_0x2e45b0]=_0x254e55:(_0x27178c&&_0x335725['push']({'rowIndex':_0x71e90a,'field':_0x2332a5,'value':_0x4fb24d,'targetField':_0x2e45b0,'lookupTable':_0x66ba08,'message':'Value\x20\x22'+_0x4fb24d+'\x22\x20not\x20found\x20in\x20'+_0x66ba08}),_0x388474[_0x2e45b0]=null);}return _0x388474;});return logger['info']({'event':'lookup_fields_processed','totalRows':_0x3a59dc[_0xb913a2(0x9f)],'errorCount':_0x335725['length'],'lookupFieldCount':Object['keys'](_0xc3df56)[_0xb913a2(0x9f)]},'Lookup\x20fields\x20processed'),{'processedRows':_0x1db638,'errors':_0x335725};}['getDistinctValues'](_0x4e6978,_0x24766c){const _0x5515a0=a0_0x1dc4da,_0x4e7a8a={'JWubw':function(_0x1a1884,_0xf9ec5c){return _0x1a1884!==_0xf9ec5c;}},_0x49ded1=new Set();return _0x4e6978['forEach'](_0x4b0b82=>{const _0x55d317=_0x4b0b82[_0x24766c];_0x55d317!==null&&_0x55d317!==undefined&&_0x4e7a8a['JWubw'](_0x55d317,'')&&_0x49ded1['add'](String(_0x55d317)['trim']());}),Array[_0x5515a0(0xb5)](_0x49ded1);}async['validateLookupValues'](_0x1451da,_0x45d3bf){const _0x470c43=a0_0x1dc4da,_0x584c26={'HBXiI':function(_0x443612,_0x587059){return _0x443612!==_0x587059;},'OxWUI':function(_0x3e963c,_0x10750e){return _0x3e963c===_0x10750e;}};if(!_0x45d3bf||Object['keys'](_0x45d3bf)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x1b04b1=[],_0x45294e={};for(const [_0x405924,_0x5f77fe]of Object[_0x470c43(0xb2)](_0x45d3bf)){const {lookupTable:_0x495084,lookupColumn:_0x541174,lookupIdColumn:_0x4490b9,required:_0xae3c54}=_0x5f77fe,_0x4db16f=this['getDistinctValues'](_0x1451da,_0x405924),_0x4e270d=await this[_0x470c43(0x9a)](_0x495084,_0x541174,_0x4490b9),_0x26f4fc=[],_0x4dbf1e=[];_0x4db16f['forEach'](_0x3ee355=>{const _0x4da814=_0x470c43,_0x3bbbf9=this['resolveLookupValue'](_0x3ee355,_0x4e270d);_0x584c26['HBXiI'](_0x3bbbf9,null)?_0x4dbf1e[_0x4da814(0xa5)](_0x3ee355):_0x26f4fc[_0x4da814(0xa5)](_0x3ee355);});if(_0x26f4fc[_0x470c43(0x9f)]>0x0&&_0xae3c54){_0x1b04b1[_0x470c43(0xa5)]({'field':_0x405924,'lookupTable':_0x495084,'invalidValues':_0x26f4fc,'message':_0x26f4fc['length']+_0x470c43(0x98)+_0x495084});const _0x3a3c69=[];_0x4e270d[_0x470c43(0xbb)]((_0x2e6a5b,_0x37ab0c)=>{const _0x41c533=_0x470c43;if(_0x584c26['OxWUI'](_0x37ab0c,_0x37ab0c[_0x41c533(0xc1)]()))return;_0x3a3c69['push'](_0x37ab0c);}),_0x45294e[_0x405924]={'invalidValues':_0x26f4fc,'availableValues':_0x3a3c69[_0x470c43(0x9d)](0x0,0x32)};}}return{'valid':_0x584c26[_0x470c43(0xb3)](_0x1b04b1[_0x470c43(0x9f)],0x0),'errors':_0x1b04b1,'suggestions':_0x45294e};}}module['exports']=new LookupResolver();
|