@restforgejs/platform 5.2.13 → 5.3.5
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/drift-check-linux +0 -0
- package/bin/sdf-tools-linux +0 -0
- package/bin/sdf-tools.exe +0 -0
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/endpoint/create.js +69 -6
- package/generators/cli/fast-track.js +4 -2
- package/generators/cli/payload/sync.js +16 -6
- package/generators/cli/project/auth.js +209 -0
- package/generators/cli/project/sdk.js +112 -0
- package/generators/lib/arg-parser.js +6 -0
- package/generators/lib/auth/component-generator.js +58 -0
- package/generators/lib/auth/dependency-checker.js +102 -0
- package/generators/lib/auth/env-injector.js +81 -0
- package/generators/lib/auth/migrate-runner.js +111 -0
- package/generators/lib/auth/prefix.js +22 -0
- package/generators/lib/auth/processor-generator.js +57 -0
- package/generators/lib/auth/sdf-generator.js +102 -0
- package/generators/lib/auth/template-renderer.js +29 -0
- package/generators/lib/auth/templates/processor/google.js.tmpl +178 -0
- package/generators/lib/auth/templates/processor/login.js.tmpl +152 -0
- package/generators/lib/auth/templates/processor/logout.js.tmpl +58 -0
- package/generators/lib/auth/templates/processor/me.js.tmpl +64 -0
- package/generators/lib/auth/templates/processor/refresh.js.tmpl +134 -0
- package/generators/lib/auth/templates/processor/register.js.tmpl +77 -0
- package/generators/lib/auth/templates/processor/reset-password.js.tmpl +106 -0
- package/generators/lib/auth/templates/rfx_auth-middleware.js.tmpl +79 -0
- package/generators/lib/auth/templates/rfx_auth.js.tmpl +107 -0
- package/generators/lib/dbschema-kit/schema-printer.js +10 -1
- package/generators/lib/generators/model-generator.js +46 -59
- package/generators/lib/help-generator.js +41 -3
- package/generators/lib/payload/endpoint-schema-validator.js +8 -3
- package/generators/lib/payload/field-projections.js +116 -0
- package/generators/lib/payload/payload-runner.js +164 -48
- package/generators/lib/payload/schema-diff.js +108 -0
- package/generators/lib/sdk/generator.js +719 -0
- package/generators/lib/sdk/naming.js +48 -0
- package/generators/lib/sdk/runtime/README.md.tmpl +207 -0
- package/generators/lib/sdk/runtime/auth-client.js +186 -0
- package/generators/lib/sdk/runtime/deploy.mjs.tmpl +85 -0
- package/generators/lib/sdk/runtime/http-client.js +81 -0
- package/generators/lib/sdk/runtime/resource-client.js +59 -0
- package/generators/lib/sdk/runtime/storage.js +31 -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/cli-output.js +40 -0
- package/generators/lib/utils/config-resolver.js +61 -0
- package/generators/lib/utils/database-introspector.js +28 -5
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2f3dae=a0_0x50c4;function a0_0x4094(){const _0x3323a3=['x2DLBMvYyxrLzf91DwLK','mJm1nJeXowfgEMfYqq','C2v0sM9I','ChjLDMLLD19QB2jFy29TCgXLDgvK','rxHJzwWGC3rYDwn0DxjLig1PC21HDgnOlIbnAxnZAw5NigzPzwXKCZOG','C2L6zq','zxHLy3v0zvf1zxj5','DxbSB2fKx2LK','C3rYAw5N','z2vUzxjHDgvjza','zM9YrwfJAa','cIaGicaGicaGrLjptsa','A2v5CW','mtG2nZuWmNzWsKj1DW','AgHRs1y','CMvWBgfJzq','DMfSAwrHDgLUzW','zMfPBgvK','lI4VlI4Vy29Yzs91DgLSCY9KyG','D1rUwwG','vvbeqvrf','wgrUANu','Aw5KzxHpzG','BgfIzwXFDg9FzMLLBgrFBwfWx2j1AwX0','mJbkv1jxwvy','Aw5Zzxj0x29UBhK','zw50CMLLCW','zw52','CgfKu3rHCNq','B3PZAKu','C3fS','lI91ChnLCNqTyNvPBgrLCG','vvbmt0fex0rjuG','Dg9mB3DLCKnHC2u','tfHbCeq','q29TBwL0igPVyIbJCMvHDgvK','uhjVy2vZC2LUzYbSB29RDxaGzMLLBgrZ','Bg9VA3vWrMLLBgrZ','q29TBwL0ihbYB2nLC3nPBMCGzMfPBgvK','ENrQD0m','zxjYB3jZ','mJu4nwT4vLnwAW','zMLLBgroyw1L','wxfmsKe','qwXPzgK','BNvTyMvY','AM9IoG','Dw5SAw5R','q29SDw1UigzVCM1HDhmGyxbWBgLLzcb0BYbYB3DZ','nZyYnZGZyMLgB3r0','mtjov3zcALy','DgvZDa','CMfUzg9T','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','ChjVy2vZC0nVBw1PDePVyG','Dg9vChbLCKnHC2u','ChjLDMLLD19VAW','yxbWBhLdB2X1Bw5gB3jTyxrZ','x2fJDgLVBG','DKLlzg8','su5trvju','Dg9ju09tDhjPBMC','Cgf0Aa','z2v0','zMLLBgrmywjLBhm','y2f0y2G','z0rxDMu','Aw5Zzxj0','EgvZDKG','nLnWtKvzqG','C2XPy2u','Aw5MBW','z0TewNi','CeXzq0S','mZiZnJKYnMHgwLz3Bq','ChvZAa','B3jPz2LUywXUyw1L','zgvMyxvSDa','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','ieLoicG','C3vIC3rYAw5N','AM9PBG','Aw1WB3j0x2zPzwXKC19MAwX0zxjLza','zMLSDgvY','Cu5Zwxy','rvPOCuW','BgvUz3rO','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','BwLZC2LUz0zPzwXKCW','y3jLyxrLuhjLDMLLD0PVyG','DhLWzq','uhjLDMLLDYbQB2iGzMfPBgvK','x3vWBg9HzerPCG','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','DxbSB2fKoG','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','y291BNq','Bwf0y2G','z2v0rgf0zq','AgfZ','x2vYCM9YCW','AM9Ix2LK','y29SDw1UrM9YBwf0CW','uhjLDMLLDYbQB2iGy3jLyxrLza','DKrmthK','DxbSB2fKrgLY','z2v0sM9Iu3rHDhvZ','DxbKyxrLx2v4Axn0Aw5N','zxHLy3v0zvrYyw5Zywn0Aw9U','vKnrCxC','uMH1tKi','C2TPCf9LEgLZDgLUzW','z2v0sM9I','ChjVBwLZzxm','Cg9ZDgDYzxnXBa','zgf0zq','u1PQvhC','yNHIzwm','BwvZC2fNzq','u0Tjua','CgfYC2vfEgnLBezPBgu','zM9YBwf0tNvTyMvYrM9Yrgf0ywjHC2u','Dgv4Da','mZuZmdK4u2TRz3rL','zMXVB3i','mZeYnevLCxnnAW','quXvBuW','zgv0zwn0rgf0ywjHC2veDxbSAwnHDgvZ','CNfYv0W','uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','DhjPBq','q29TBwL0igPVyIbJB21WBgv0zwq','De5cuhK','rxHJzwWGAgvHzgvYCYbTyxbWzwqGDg8GzMLLBgqGBMfTzxm','mJK2mZm2mgPMyMr4AW','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','C1Hjv1i','zfLTzu4','C3rHDhvZ','vKLqCMe','zgvIDwC','ChjVy2vZC2LUzW','tKviBeO','uhjLDMLLDYbQB2iGy29TCgXLDgvK','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','BwfW','m0PxqLzxyG','y2H1BMTsB3DZ','Bg1duey','uhjLDMLLDYbQB2iGBM90igzVDw5Kig9Yigv4CgLYzwq','kqOGicaGica','rejFvfLqrq','CM93sw5KzxG','C2v0','B3jHy2XL','rLD3r0S','DxbKyxrL','tgfIzwWGDg8GzMLLBgqGBwfWCgLUzYbIDwLSDa'];a0_0x4094=function(){return _0x3323a3;};return a0_0x4094();}(function(_0x676387,_0x1deeca){const _0x1821a6=a0_0x50c4,_0xc4f2d0=_0x676387();while(!![]){try{const _0x330bf7=-parseInt(_0x1821a6(0x203))/0x1+parseInt(_0x1821a6(0x24f))/0x2*(-parseInt(_0x1821a6(0x1c6))/0x3)+parseInt(_0x1821a6(0x251))/0x4*(parseInt(_0x1821a6(0x1fb))/0x5)+-parseInt(_0x1821a6(0x217))/0x6*(parseInt(_0x1821a6(0x1df))/0x7)+parseInt(_0x1821a6(0x25a))/0x8+parseInt(_0x1821a6(0x1d3))/0x9*(parseInt(_0x1821a6(0x1ea))/0xa)+parseInt(_0x1821a6(0x21c))/0xb*(parseInt(_0x1821a6(0x204))/0xc);if(_0x330bf7===_0x1deeca)break;else _0xc4f2d0['push'](_0xc4f2d0['shift']());}catch(_0x585a0b){_0xc4f2d0['push'](_0xc4f2d0['shift']());}}}(a0_0x4094,0x5e387));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')[a0_0x2f3dae(0x245)],redisHelper=require(a0_0x2f3dae(0x231)),{logger,logError}=require('../../core/utils/logger'),dbType=(process['env'][a0_0x2f3dae(0x1cb)]||a0_0x2f3dae(0x246))['toLowerCase']();let executeQuery,executeTransaction,oracleDb;if(dbType==='oracle')oracleDb=require('../database/db-oracle'),executeQuery=(_0x4e9624,_0x2e4ead)=>oracleDb[a0_0x2f3dae(0x1d8)](_0x4e9624,_0x2e4ead),executeTransaction=_0x57a714=>oracleDb['executeTransaction'](_0x57a714);else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x5c17e4,_0x10551a)=>mysqlDb[a0_0x2f3dae(0x1d8)](_0x5c17e4,_0x10551a),executeTransaction=_0x4ef6b4=>mysqlDb['executeTransaction'](_0x4ef6b4);}else{const db=require(a0_0x2f3dae(0x1e4));executeQuery=db[a0_0x2f3dae(0x1d8)],executeTransaction=db[a0_0x2f3dae(0x240)];}}const excelParser=require('./excel-parser'),importValidator=require('./import-validator'),upsertBuilder=require(a0_0x2f3dae(0x1f1)),lookupResolver=require('../integrations/lookup-resolver');function a0_0x50c4(_0x23ef7a,_0x299e95){_0x23ef7a=_0x23ef7a-0x1bb;const _0x40940e=a0_0x4094();let _0x50c42e=_0x40940e[_0x23ef7a];if(a0_0x50c4['AUyUOe']===undefined){var _0x4bcd7e=function(_0xe0b5e){const _0xf844e7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47221b='',_0x24802f='';for(let _0x4c70eb=0x0,_0x726fa1,_0xe57c1,_0x77a39d=0x0;_0xe57c1=_0xe0b5e['charAt'](_0x77a39d++);~_0xe57c1&&(_0x726fa1=_0x4c70eb%0x4?_0x726fa1*0x40+_0xe57c1:_0xe57c1,_0x4c70eb++%0x4)?_0x47221b+=String['fromCharCode'](0xff&_0x726fa1>>(-0x2*_0x4c70eb&0x6)):0x0){_0xe57c1=_0xf844e7['indexOf'](_0xe57c1);}for(let _0x2b6733=0x0,_0x5a8aac=_0x47221b['length'];_0x2b6733<_0x5a8aac;_0x2b6733++){_0x24802f+='%'+('00'+_0x47221b['charCodeAt'](_0x2b6733)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x24802f);};a0_0x50c4['orXorA']=_0x4bcd7e,a0_0x50c4['rbPTsQ']={},a0_0x50c4['AUyUOe']=!![];}const _0x48fbbd=_0x40940e[0x0],_0x446610=_0x23ef7a+_0x48fbbd,_0x21eca0=a0_0x50c4['rbPTsQ'][_0x446610];return!_0x21eca0?(_0x50c42e=a0_0x50c4['orXorA'](_0x50c42e),a0_0x50c4['rbPTsQ'][_0x446610]=_0x50c42e):_0x50c42e=_0x21eca0,_0x50c42e;}class ImportService{constructor(){this['_uploadDir']=null;}get[a0_0x2f3dae(0x23d)](){const _0x279dac=a0_0x2f3dae,_0x2f47cc={'oRKng':_0x279dac(0x21f)};if(!this[_0x279dac(0x22f)]){const _0x1b9af0=process['env'][_0x279dac(0x229)]||_0x2f47cc['oRKng'];this[_0x279dac(0x22f)]=process[_0x279dac(0x1ed)][_0x279dac(0x1f2)]||path['join'](__dirname,'../../temp/uploads/'+_0x1b9af0);}return this['_uploadDir'];}[a0_0x2f3dae(0x1db)](){const _0x557695=a0_0x2f3dae,_0x428f9a={'NhxFL':_0x557695(0x1bb),'tIHNL':function(_0x67f8d3,_0x22fb13){return _0x67f8d3-_0x22fb13;},'YIVRf':function(_0x46bd4a,_0x2ff891){return _0x46bd4a+_0x2ff891;},'JpvlP':function(_0x49fceb,_0x2d660c){return _0x49fceb*_0x2d660c;}},_0x6f81fd=_0x428f9a['NhxFL'],_0x2acecc=Date['now']()['toString'](0x24),_0x3be3f1=uuidv7()[_0x557695(0x1e1)](/-/g,'')[_0x557695(0x222)](0x0,_0x428f9a['tIHNL'](0xc,_0x2acecc[_0x557695(0x228)])),_0x421a56=_0x428f9a['YIVRf'](_0x2acecc,_0x3be3f1)['substring'](0x0,0xc);let _0x148b62='';for(let _0x191edb=0x0;_0x191edb<0xc;_0x191edb++){_0x421a56[_0x191edb]?_0x148b62+=_0x421a56[_0x191edb]:_0x148b62+=_0x6f81fd['charAt'](Math[_0x557695(0x250)](_0x428f9a['JpvlP'](Math[_0x557695(0x206)](),_0x6f81fd['length'])));}return _0x148b62;}['buildLabelToFieldMap'](_0x1954f7){const _0x50cbe8=a0_0x2f3dae,_0x1f7826={'tNBPy':function(_0x21be83,_0x524da6){return _0x21be83(_0x524da6);},'pLYCK':'$1_$2','Alidi':_0x50cbe8(0x1e9),'wTnYh':_0x50cbe8(0x1d1)},_0x4c02fc=new Map();if(!_0x1954f7)return _0x4c02fc;return Object['entries'](_0x1954f7)[_0x50cbe8(0x1dc)](([_0x396566,_0x14befe])=>{const _0x797863=_0x50cbe8,_0x26619a=_0x1f7826[_0x797863(0x258)](String,_0x14befe)['trim']()[_0x797863(0x1e1)](/\s+/g,'_')[_0x797863(0x1e1)](/([a-z])([A-Z])/g,_0x1f7826['pLYCK'])[_0x797863(0x1e1)](/([A-Z]+)([A-Z][a-z])/g,_0x1f7826[_0x797863(0x21b)])[_0x797863(0x1f3)]();_0x4c02fc['set'](_0x26619a,_0x396566);}),logger['debug']({'event':_0x1f7826[_0x50cbe8(0x1fe)],'mappingCount':_0x4c02fc[_0x50cbe8(0x1d7)]},_0x1f7826[_0x50cbe8(0x1e5)]),_0x4c02fc;}['applyColumnFormats'](_0x23e0f0,_0x11d435){const _0x10e98f=a0_0x2f3dae,_0x5ba6e8={'RhuNB':_0x10e98f(0x247),'wOQEK':_0x10e98f(0x24e),'GjjMX':function(_0x249853,_0x1770a1){return _0x249853===_0x1770a1;}};if(!_0x11d435||_0x5ba6e8['GjjMX'](Object['keys'](_0x11d435)['length'],0x0))return _0x23e0f0;return _0x23e0f0['map'](_0x5d9bc=>{const _0x53b7d=_0x10e98f,_0x3ee9ea={..._0x5d9bc};for(const [_0x31d25d,_0x3bb4e4]of Object[_0x53b7d(0x1ec)](_0x11d435)){const _0x2328d8=_0x3ee9ea[_0x31d25d];if(_0x2328d8===null||_0x2328d8===undefined||_0x2328d8===''){_0x3ee9ea[_0x31d25d]=null;continue;}switch(_0x3bb4e4['type']){case _0x5ba6e8[_0x53b7d(0x242)]:_0x3ee9ea[_0x31d25d]=this['formatDateForDatabase'](_0x2328d8);break;case'number':_0x3ee9ea[_0x31d25d]=this[_0x53b7d(0x24d)](_0x2328d8);break;case _0x5ba6e8['wOQEK']:_0x3ee9ea[_0x31d25d]=String(_0x2328d8);break;default:break;}}return _0x3ee9ea;});}[a0_0x2f3dae(0x233)](_0x2f3986){const _0x2ed747=a0_0x2f3dae,_0x1b334b={'fPQRU':function(_0x4a625e,_0x2cca66){return _0x4a625e===_0x2cca66;},'EZhqL':_0x2ed747(0x1da),'ZfSdw':function(_0x51912a,_0x1158ba){return _0x51912a instanceof _0x1158ba;},'SZjTw':function(_0x3e3b8d,_0x2edf61){return _0x3e3b8d(_0x2edf61);},'bAPGo':function(_0x18d92b,_0x184745){return _0x18d92b+_0x184745;},'rrFLF':function(_0x43048b,_0x50a553){return _0x43048b(_0x50a553);},'zKEwJ':function(_0x1b0bb6,_0x4054c4){return _0x1b0bb6(_0x4054c4);},'RIMCZ':function(_0x58c157,_0x581185){return _0x58c157(_0x581185);}};if(_0x2f3986===null||_0x2f3986===undefined||_0x1b334b['fPQRU'](_0x2f3986,''))return null;if(typeof _0x2f3986===_0x1b334b[_0x2ed747(0x227)]&&/^\d{4}-\d{2}-\d{2}$/[_0x2ed747(0x205)](_0x2f3986))return _0x2f3986;if(_0x1b334b['ZfSdw'](_0x2f3986,Date)){if(_0x1b334b[_0x2ed747(0x248)](isNaN,_0x2f3986['getTime']()))return null;const _0x5ace70=_0x2f3986['getFullYear'](),_0x3e7a6b=String(_0x1b334b['bAPGo'](_0x2f3986['getMonth'](),0x1))[_0x2ed747(0x1ee)](0x2,'0'),_0x5f2167=String(_0x2f3986[_0x2ed747(0x236)]())['padStart'](0x2,'0');return _0x5ace70+'-'+_0x3e7a6b+'-'+_0x5f2167;}if(typeof _0x2f3986===_0x2ed747(0x1da)){const _0x3f8328=_0x2f3986[_0x2ed747(0x235)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x3f8328){const _0x37f7e7=_0x1b334b[_0x2ed747(0x248)](String,_0x3f8328[0x1])['padStart'](0x2,'0'),_0x5682eb=_0x1b334b['rrFLF'](String,_0x3f8328[0x2])[_0x2ed747(0x1ee)](0x2,'0'),_0xbf138e=_0x3f8328[0x3];return _0xbf138e+'-'+_0x5682eb+'-'+_0x37f7e7;}const _0x270612=_0x2f3986['match'](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x270612){const _0xea1165=_0x270612[0x1],_0xaef2e6=_0x1b334b['zKEwJ'](String,_0x270612[0x2])[_0x2ed747(0x1ee)](0x2,'0'),_0x4bf5c2=_0x1b334b['RIMCZ'](String,_0x270612[0x3])['padStart'](0x2,'0');return _0xea1165+'-'+_0xaef2e6+'-'+_0x4bf5c2;}}return _0x2f3986;}['formatNumberForDatabase'](_0x25ce7c){const _0x18923d=a0_0x2f3dae,_0x113ed7={'vDLLy':function(_0x10261f,_0x20f972){return _0x10261f===_0x20f972;},'ALUmL':function(_0x39099b,_0x1ac887){return _0x39099b===_0x1ac887;},'MwDRD':_0x18923d(0x1ff),'IRNaN':function(_0x4c0d4a,_0x2f6a61){return _0x4c0d4a(_0x2f6a61);}};if(_0x25ce7c===null||_0x113ed7['vDLLy'](_0x25ce7c,undefined)||_0x113ed7[_0x18923d(0x252)](_0x25ce7c,''))return null;if(_0x113ed7[_0x18923d(0x23c)](typeof _0x25ce7c,_0x113ed7['MwDRD']))return isNaN(_0x25ce7c)?null:_0x25ce7c;if(_0x113ed7['ALUmL'](typeof _0x25ce7c,'string')){let _0x215052=_0x25ce7c[_0x18923d(0x256)]();const _0x2e9733=/,\d{1,2}$/['test'](_0x215052)&&!/,\d{3}/['test'](_0x215052);_0x2e9733?_0x215052=_0x215052['replace'](/\./g,'')['replace'](',','.'):_0x215052=_0x215052['replace'](/,/g,'');const _0x50d130=_0x113ed7['IRNaN'](parseFloat,_0x215052);return isNaN(_0x50d130)?null:_0x50d130;}return null;}async['uploadFile'](_0x1f8981,_0x58dc38){const _0x41ac6b=a0_0x2f3dae,_0x5b92f4={'bxbec':function(_0xb2dc6b,_0x302132){return _0xb2dc6b||_0x302132;},'NmxxX':_0x41ac6b(0x202),'ozsjE':function(_0x4bb885,_0x59d35d,_0x5edf3f,_0x4aa063){return _0x4bb885(_0x59d35d,_0x5edf3f,_0x4aa063);}},_0x4870d5=this['generateId']();try{let {headers:_0x22c6fe,rows:_0xe5afe4,totalRows:_0x4ebbe1}=await excelParser[_0x41ac6b(0x24c)](_0x1f8981[_0x41ac6b(0x210)]);const _0x24a087=this['buildLabelToFieldMap'](_0x58dc38[_0x41ac6b(0x212)]),_0x5bd84f=_0x22c6fe[_0x41ac6b(0x1c5)](_0x2f421a=>{const _0x20e2ec=_0x41ac6b,_0x34c934=_0x24a087['get'](_0x2f421a);return _0x5b92f4[_0x20e2ec(0x249)](_0x34c934,_0x2f421a);});_0xe5afe4=_0xe5afe4[_0x41ac6b(0x1c5)](_0x1f3935=>{const _0x21536d={};return _0x22c6fe['forEach']((_0x178af6,_0x42ceeb)=>{const _0x30b6d1=_0x5bd84f[_0x42ceeb];_0x21536d[_0x30b6d1]=_0x1f3935[_0x178af6];}),_0x21536d;}),_0x22c6fe=_0x5bd84f,logger[_0x41ac6b(0x1c0)]({'event':'headers_mapped','original':_0x22c6fe['length'],'mapped':_0x5bd84f[_0x41ac6b(0x225)]((_0x86b9c4,_0x17f23c)=>_0x86b9c4!==_0x22c6fe[_0x17f23c])['length']},_0x41ac6b(0x259));_0x58dc38['columnFormats']&&Object['keys'](_0x58dc38[_0x41ac6b(0x23a)])[_0x41ac6b(0x228)]>0x0&&(_0xe5afe4=this[_0x41ac6b(0x20b)](_0xe5afe4,_0x58dc38[_0x41ac6b(0x23a)]),logger['debug']({'event':'column_formats_applied','formatCount':Object[_0x41ac6b(0x1de)](_0x58dc38['columnFormats'])[_0x41ac6b(0x228)],'formats':Object['keys'](_0x58dc38['columnFormats'])},_0x5b92f4['NmxxX']));const _0x3da3fc=_0x58dc38[_0x41ac6b(0x1f7)]?Object['values'](_0x58dc38[_0x41ac6b(0x1f7)])[_0x41ac6b(0x1c5)](_0x2c2738=>_0x2c2738['targetField']):[],_0x1d5e82=_0x58dc38[_0x41ac6b(0x1fc)]['filter'](_0x4bacc5=>!_0x3da3fc['includes'](_0x4bacc5)),_0x277373=excelParser[_0x41ac6b(0x220)](_0x22c6fe,_0x1d5e82);if(!_0x277373['valid']){await fs['unlink'](_0x1f8981[_0x41ac6b(0x210)]);throw new Error(_0x41ac6b(0x1d6)+_0x277373[_0x41ac6b(0x22b)]['join'](',\x20'));}const _0x472519={'upload_id':_0x4870d5,'filename':_0x1f8981[_0x41ac6b(0x21e)],'total_rows':_0x4ebbe1,'headers':_0x22c6fe,'rows':_0xe5afe4,'params':_0x58dc38,'created_at':new Date()['toISOString']()};return await redisHelper[_0x41ac6b(0x1d4)](_0x41ac6b(0x232)+_0x4870d5,_0x472519,0xe10),await fs['unlink'](_0x1f8981['path']),logger['info']({'event':'import_file_uploaded','uploadId':_0x4870d5,'filename':_0x1f8981[_0x41ac6b(0x21e)],'totalRows':_0x4ebbe1},'Import\x20file\x20uploaded\x20and\x20parsed'),{'upload_id':_0x4870d5,'total_rows':_0x4ebbe1,'preview':_0xe5afe4[_0x41ac6b(0x218)](0x0,0xa)};}catch(_0x18d510){try{await fs[_0x41ac6b(0x201)](_0x1f8981[_0x41ac6b(0x210)]);}catch(_0x526ed3){_0x5b92f4[_0x41ac6b(0x1ef)](logError,_0x526ed3,{'event':'file_cleanup_error'},'Failed\x20to\x20cleanup\x20file');}throw _0x18d510;}}async[a0_0x2f3dae(0x22c)](_0x3283f9){const _0x14e89b=a0_0x2f3dae,_0x345cc7={'PknXi':function(_0x2910d6,_0x485784,_0x288db7,_0x15d29f){return _0x2910d6(_0x485784,_0x288db7,_0x15d29f);},'dYmeN':_0x14e89b(0x255),'ztjwC':'Upload\x20data\x20not\x20found\x20or\x20expired','tETdE':'preview_job_created'},_0x15d6d8=this[_0x14e89b(0x1db)](),_0x393ce4=await redisHelper['getJob'](_0x14e89b(0x232)+_0x3283f9);if(!_0x393ce4)throw new Error(_0x345cc7[_0x14e89b(0x1f9)]);const _0x1d2d43={'job_id':_0x15d6d8,'upload_id':_0x3283f9,'status':'validating','progress':0x0,'created_at':new Date()[_0x14e89b(0x20f)](),'params':_0x393ce4['params']};return await redisHelper['setJob']('job:'+_0x15d6d8,_0x1d2d43,0xe10),logger['info']({'event':_0x345cc7['tETdE'],'jobId':_0x15d6d8,'uploadId':_0x3283f9},_0x14e89b(0x23b)),this['processPreviewJob'](_0x15d6d8,_0x3283f9,_0x393ce4)['catch'](_0x1eb80e=>{const _0x5b3d6b=_0x14e89b;_0x345cc7['PknXi'](logError,_0x1eb80e,{'event':'preview_process_error','jobId':_0x15d6d8},_0x345cc7[_0x5b3d6b(0x1bd)]);}),{'job_id':_0x15d6d8,'status':_0x14e89b(0x1e2)};}['autoGenerateUpsertKeys'](_0x3fdd54,_0x23b256){const _0x1bdd11=a0_0x2f3dae;_0x3fdd54[_0x1bdd11(0x1dc)]((_0xdeed59,_0x1acc17)=>{const _0x5d8510=_0x1bdd11,_0x2384cb={'KqCjp':function(_0x100782,_0x19105b){return _0x100782===_0x19105b;},'xKUNn':function(_0x366a6c,_0x1bc437){return _0x366a6c===_0x1bc437;},'SjNNZ':function(_0x3a914a,_0x2c33eb){return _0x3a914a===_0x2c33eb;},'HpqEl':function(_0x2afdd4,_0x10de75){return _0x2afdd4(_0x10de75);}};_0x23b256[_0x5d8510(0x1dc)](_0x48c1db=>{const _0x4a7bf7=_0x5d8510,_0x19c4fe=_0xdeed59[_0x48c1db];if(_0x2384cb['KqCjp'](_0x19c4fe,null)||_0x2384cb['xKUNn'](_0x19c4fe,undefined)||_0x2384cb['SjNNZ'](_0x19c4fe,'')||_0x2384cb['KqCjp'](_0x2384cb['HpqEl'](String,_0x19c4fe)['trim'](),'-')){const _0x54cb2e=uuidv7();_0xdeed59[_0x48c1db]=_0x54cb2e,_0xdeed59['_generated_uuid']=_0xdeed59['_generated_uuid']||{},_0xdeed59[_0x4a7bf7(0x1d2)][_0x48c1db]=_0x54cb2e,logger['debug']({'event':'uuid_auto_generated','rowIndex':_0x1acc17,'field':_0x48c1db,'uuid':_0x54cb2e},'Auto-generated\x20UUID\x20for\x20'+_0x48c1db+'\x20at\x20row\x20'+(_0x1acc17+0x2));}});});}async['processPreviewJob'](_0x12dafa,_0x34146e,_0x4a80b0){const _0x58425f=a0_0x2f3dae,_0x339d69={'BSWEZ':'INSERT','rqrWL':_0x58425f(0x1f6),'EWtVo':'preview_error','khWgk':_0x58425f(0x1d5),'lcyHl':_0x58425f(0x1c3),'xbYrw':function(_0x568ac1,_0x13f24a,_0x25a714,_0x2a8811){return _0x568ac1(_0x13f24a,_0x25a714,_0x2a8811);},'LXApD':_0x58425f(0x22e)};try{let {rows:_0x2b6b59,params:_0x3eb244}=_0x4a80b0;const {requiredFields:_0x35dd8a,validations:_0xdc7cfc,upsertKeys:_0x1ab76c,tableName:_0x266048,primaryKey:_0x20e2ef,fieldName:_0x51dec6,upsertStrategy:_0x275ddf,lookupFields:_0x1fc0b8}=_0x3eb244;this['autoGenerateUpsertKeys'](_0x2b6b59,_0x1ab76c);let _0x3b5b38=[];if(_0x1fc0b8&&Object['keys'](_0x1fc0b8)[_0x58425f(0x228)]>0x0){logger[_0x58425f(0x219)]({'event':'processing_lookup_fields','jobId':_0x12dafa,'lookupFieldCount':Object[_0x58425f(0x1de)](_0x1fc0b8)['length']},_0x339d69[_0x58425f(0x254)]);const _0x340388=await lookupResolver['processLookupFields'](_0x2b6b59,_0x1fc0b8);_0x2b6b59=_0x340388['processedRows'],_0x3b5b38=_0x340388['errors'],_0x4a80b0['rows']=_0x2b6b59;}const _0x5c9c23=importValidator['batchValidateRows'](_0x2b6b59,_0x35dd8a||[],_0xdc7cfc||{});_0x3b5b38[_0x58425f(0x1dc)](_0x2726af=>{const _0x23b710=_0x58425f,_0x1f18f1=_0x5c9c23['find'](_0x5cdda0=>_0x5cdda0['rowIndex']===_0x2726af[_0x23b710(0x1cc)]);_0x1f18f1?_0x1f18f1[_0x23b710(0x1fa)]['push'](_0x2726af['message']):_0x5c9c23['push']({'rowIndex':_0x2726af['rowIndex'],'rowData':_0x2b6b59[_0x2726af['rowIndex']],'errors':[_0x2726af[_0x23b710(0x24a)]]});});const _0x10ecc9=importValidator[_0x58425f(0x207)](_0x2b6b59,_0x1ab76c);_0x10ecc9['forEach'](_0x5dc126=>{const _0xc5f0c1=_0x58425f,_0x414a71=_0x5c9c23['find'](_0x11c855=>_0x11c855[_0xc5f0c1(0x1cc)]===_0x5dc126['rowIndex']),_0x266509=_0x1ab76c[_0xc5f0c1(0x1c5)](_0x58bf09=>_0x58bf09[_0xc5f0c1(0x209)]())['join'](',\x20'),_0x63b77c='Duplicate\x20value\x20for\x20'+_0x266509;_0x414a71?_0x414a71[_0xc5f0c1(0x1fa)][_0xc5f0c1(0x21d)](_0x63b77c):_0x5c9c23['push']({'rowIndex':_0x5dc126['rowIndex'],'rowData':_0x2b6b59[_0x5dc126['rowIndex']],'errors':[_0x63b77c]});}),await this[_0x58425f(0x253)](_0x2b6b59,_0x1ab76c,_0x266048,_0x20e2ef,_0x275ddf,_0x5c9c23),_0x5c9c23[_0x58425f(0x1dc)](_0x2a3003=>{const _0x2c4c6c=_0x58425f,_0x233a59=_0x2b6b59[_0x2a3003[_0x2c4c6c(0x1cc)]];_0x233a59&&(_0x233a59['_errors']=_0x2a3003['errors']);});let _0x405404=0x0,_0xe7f85c=0x0,_0x666ae3=0x0;_0x2b6b59[_0x58425f(0x1dc)](_0x5b24b0=>{const _0x28edc2=_0x58425f;if(_0x5b24b0[_0x28edc2(0x20c)]===_0x339d69['BSWEZ'])_0x405404++;else{if(_0x5b24b0['_action']===_0x28edc2(0x1e6))_0xe7f85c++;else _0x5b24b0[_0x28edc2(0x20c)]==='SKIP'&&_0x666ae3++;}});const _0x1f7aa9={'job_id':_0x12dafa,'upload_id':_0x34146e,'status':_0x5c9c23['length']>0x0?_0x339d69['EWtVo']:'preview_ok','progress':0x64,'created_at':_0x4a80b0['created_at'],'completed_at':new Date()[_0x58425f(0x20f)](),'preview':{'total_rows':_0x2b6b59['length'],'insert_count':_0x405404,'update_count':_0xe7f85c,'skip_count':_0x666ae3,'error_count':_0x5c9c23['length'],'errors':_0x5c9c23,'data':_0x2b6b59,'sample_insert':_0x2b6b59[_0x58425f(0x225)](_0x4f4e0e=>_0x4f4e0e[_0x58425f(0x20c)]===_0x58425f(0x20e))[_0x58425f(0x218)](0x0,0x5),'sample_update':_0x2b6b59[_0x58425f(0x225)](_0x22e043=>_0x22e043['_action']==='UPDATE')[_0x58425f(0x218)](0x0,0x5),'sample_skip':_0x2b6b59['filter'](_0x4078c7=>_0x4078c7[_0x58425f(0x20c)]===_0x58425f(0x24b))[_0x58425f(0x218)](0x0,0x5)},'params':_0x3eb244};await redisHelper['setJob']('job:'+_0x12dafa,_0x1f7aa9,0xe10),_0x4a80b0['rows']=_0x2b6b59,await redisHelper['setJob'](_0x58425f(0x232)+_0x34146e,_0x4a80b0,0xe10),logger['info']({'event':_0x339d69['khWgk'],'jobId':_0x12dafa,'status':_0x1f7aa9['status'],'insertCount':_0x405404,'updateCount':_0xe7f85c,'skipCount':_0x666ae3,'errorCount':_0x5c9c23[_0x58425f(0x228)]},_0x339d69['lcyHl']);}catch(_0x3c3e16){_0x339d69['xbYrw'](logError,_0x3c3e16,{'event':'preview_job_failed','jobId':_0x12dafa},_0x339d69[_0x58425f(0x1f4)]),await redisHelper[_0x58425f(0x1d4)](_0x58425f(0x200)+_0x12dafa,{'job_id':_0x12dafa,'upload_id':_0x34146e,'status':'failed','progress':0x0,'error':_0x3c3e16[_0x58425f(0x24a)],'created_at':new Date()[_0x58425f(0x20f)](),'completed_at':new Date()[_0x58425f(0x20f)]()},0xe10);}}async['detectDatabaseDuplicates'](_0x578a47,_0x257c2d,_0x49b1f4,_0x15ee06,_0x1b9c26='update_existing',_0x287f9f=[]){const _0x5df434=a0_0x2f3dae,_0x3286f3={'hhkKV':function(_0x5cc0b7,_0x21a0e2){return _0x5cc0b7===_0x21a0e2;},'RgnQm':'NULL','NEHlJ':function(_0x93992d,_0x80307c){return _0x93992d(_0x80307c);},'NlbPI':'UPDATE','kODmn':_0x5df434(0x1eb),'VIPra':_0x5df434(0x243),'VCQqw':_0x5df434(0x24b),'idcfb':'INSERT','tXEnU':function(_0x33a43c,_0x3c6075){return _0x33a43c===_0x3c6075;},'gDWve':function(_0x1b8060,_0x2d2a59){return _0x1b8060===_0x2d2a59;},'PGoGJ':function(_0x4d4db9,_0x515e85){return _0x4d4db9>_0x515e85;}},_0x5b95b0=upsertBuilder[_0x5df434(0x1c7)](_0x578a47,0x64);for(const _0x1a9114 of _0x5b95b0){const _0x567bf1=_0x1a9114['map'](_0xae6b9a=>_0xae6b9a[_0x257c2d[0x0]]),_0x1413dd=_0x567bf1[_0x5df434(0x1c5)](_0x13e3ec=>{const _0x120e44=_0x5df434;if(_0x3286f3['hhkKV'](_0x13e3ec,null)||_0x13e3ec===undefined)return _0x3286f3['RgnQm'];return'\x27'+_0x3286f3[_0x120e44(0x1c2)](String,_0x13e3ec)[_0x120e44(0x1e1)](/'/g,'\x27\x27')+'\x27';}),_0x189dc1='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x15ee06+',\x20'+_0x257c2d[_0x5df434(0x223)](',\x20')+_0x5df434(0x1dd)+_0x49b1f4+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x257c2d[0x0]+_0x5df434(0x221)+_0x1413dd['join'](',\x20')+_0x5df434(0x1ca);let _0x603595=await _0x3286f3['NEHlJ'](executeQuery,_0x189dc1);dbType===_0x5df434(0x1ce)&&_0x603595&&_0x3286f3['PGoGJ'](_0x603595['length'],0x0)&&(_0x603595=_0x603595[_0x5df434(0x1c5)](_0x30dca3=>{const _0x354807=_0x5df434,_0x43c2b9={};for(const [_0x22542f,_0x22623]of Object['entries'](_0x30dca3)){_0x43c2b9[_0x22542f[_0x354807(0x1f3)]()]=_0x22623;}return _0x43c2b9;}));const _0x3d2694=new Map();_0x603595[_0x5df434(0x1dc)](_0x52b42f=>{const _0x441ad3=_0x5df434,_0x5ae465=_0x52b42f[_0x257c2d[0x0]];_0x3d2694[_0x441ad3(0x1cd)](_0x5ae465,_0x52b42f);}),_0x1a9114['forEach']((_0x3c5fcb,_0x3ee40d)=>{const _0x5d1213=_0x5df434,_0x5d34ad=_0x3c5fcb[_0x257c2d[0x0]],_0x92134f=_0x3d2694[_0x5d1213(0x211)](_0x5d34ad);if(_0x92134f){if(_0x1b9c26===_0x5d1213(0x23f))_0x3c5fcb['_action']=_0x3286f3['NlbPI'],_0x3c5fcb['_existingId']=_0x92134f[_0x15ee06];else{if(_0x3286f3[_0x5d1213(0x1e0)](_0x1b9c26,_0x3286f3['kODmn'])){_0x3c5fcb['_action']='SKIP',_0x3c5fcb['_errors']=_0x3c5fcb[_0x5d1213(0x238)]||[],_0x3c5fcb[_0x5d1213(0x238)]['push'](_0x5d1213(0x230));const _0x70d24f=_0x578a47[_0x5d1213(0x1e8)](_0x3c5fcb);_0x70d24f!==-0x1&&_0x287f9f[_0x5d1213(0x21d)]({'rowIndex':_0x70d24f,'rowData':_0x3c5fcb,'errors':['Record\x20exists\x20(insert_only\x20mode)']});}else _0x3286f3[_0x5d1213(0x1e0)](_0x1b9c26,_0x3286f3[_0x5d1213(0x1bf)])&&(_0x3c5fcb[_0x5d1213(0x20c)]=_0x3286f3[_0x5d1213(0x241)]);}}else{if(_0x1b9c26==='update_existing')_0x3c5fcb['_action']=_0x3286f3['idcfb'];else(_0x3286f3['tXEnU'](_0x1b9c26,_0x3286f3['kODmn'])||_0x3286f3[_0x5d1213(0x214)](_0x1b9c26,_0x3286f3['VIPra']))&&(_0x3c5fcb['_action']='INSERT');}});}}async['createCommitJob'](_0xc9629){const _0x21e664=a0_0x2f3dae,_0x366db8={'zcUuV':function(_0x7fb37f,_0xc743b0,_0x26d87c,_0x40b339){return _0x7fb37f(_0xc743b0,_0x26d87c,_0x40b339);},'ssxTe':_0x21e664(0x1f8),'YqLJA':_0x21e664(0x1c9),'AWVlQ':function(_0x372d3d,_0xb49dd9){return _0x372d3d!==_0xb49dd9;},'pPhpl':_0x21e664(0x20a),'xesvH':_0x21e664(0x1c1),'FWwGK':'commit_job_created','gKDZr':_0x21e664(0x1f5)},_0x35c15c=this[_0x21e664(0x1db)](),_0x5b7ad6=await redisHelper[_0x21e664(0x244)](_0x21e664(0x200)+_0xc9629);if(!_0x5b7ad6)throw new Error(_0x366db8[_0x21e664(0x1fd)]);if(_0x366db8['AWVlQ'](_0x5b7ad6[_0x21e664(0x1be)],_0x366db8['pPhpl']))throw new Error('Cannot\x20commit:\x20preview\x20status\x20is\x20'+_0x5b7ad6['status']);const _0x2f532f={'job_id':_0x35c15c,'upload_id':_0x5b7ad6[_0x21e664(0x1d9)],'preview_job_id':_0xc9629,'status':_0x366db8[_0x21e664(0x216)],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x5b7ad6['params']};return await redisHelper[_0x21e664(0x1d4)]('job:'+_0x35c15c,_0x2f532f,0xe10),logger[_0x21e664(0x219)]({'event':_0x366db8[_0x21e664(0x1cf)],'jobId':_0x35c15c,'previewJobId':_0xc9629},_0x366db8[_0x21e664(0x21a)]),this['processCommitJob'](_0x35c15c,_0x5b7ad6)[_0x21e664(0x213)](_0x5b7911=>{_0x366db8['zcUuV'](logError,_0x5b7911,{'event':'commit_process_error','jobId':_0x35c15c},_0x366db8['ssxTe']);}),{'job_id':_0x35c15c,'status':_0x366db8[_0x21e664(0x216)]};}async[a0_0x2f3dae(0x208)](_0x38e4ef,_0x269c11){const _0x2fdafe=a0_0x2f3dae,_0x2a08bd={'kvqmm':function(_0x4e5420,_0x12cc32){return _0x4e5420===_0x12cc32;},'sXIWR':_0x2fdafe(0x215),'vIKdo':function(_0xf93406,_0x3dd7e0){return _0xf93406>_0x3dd7e0;},'YKWSw':_0x2fdafe(0x224),'YATdS':function(_0x18872f,_0x20dc23){return _0x18872f||_0x20dc23;},'lmCPF':function(_0xd3d2c,_0x3775df){return _0xd3d2c(_0x3775df);},'Fbgsx':'completed','Xdnju':_0x2fdafe(0x257),'qNsYv':'commit_job_failed'};try{const _0x2acfd9=await redisHelper[_0x2fdafe(0x244)]('upload:'+_0x269c11['upload_id']);if(!_0x2acfd9)throw new Error(_0x2fdafe(0x22a));const {rows:_0x56d8d9,params:_0x5df5d0}=_0x2acfd9,{tableName:_0xf30eae,fieldName:_0x204775,primaryKey:_0x222586,upsertKeys:_0x36dbb1,excludeFromImport:_0x4f2f47,lookupFields:_0x24532f,columnFormats:_0xc53a9e}=_0x5df5d0,_0x440e60=_0x24532f?Object[_0x2fdafe(0x1de)](_0x24532f):[],_0x5e65ed=new Set([..._0x4f2f47||[],..._0x440e60]);let _0x179d0a=_0x204775;_0x2a08bd[_0x2fdafe(0x20d)](_0x5e65ed['size'],0x0)&&(_0x179d0a=_0x204775[_0x2fdafe(0x225)](_0x75954e=>!_0x5e65ed[_0x2fdafe(0x237)](_0x75954e)),logger['debug']({'event':_0x2a08bd['YKWSw'],'originalCount':_0x204775[_0x2fdafe(0x228)],'filteredCount':_0x179d0a[_0x2fdafe(0x228)],'excludedFields':Array['from'](_0x5e65ed),'lookupSourceFields':_0x440e60},_0x2fdafe(0x1c4)));const _0x5b8194=_0x56d8d9[_0x2fdafe(0x225)](_0x332ae5=>_0x332ae5[_0x2fdafe(0x20c)]===_0x2fdafe(0x20e)),_0x28d612=_0x56d8d9['filter'](_0x6b003a=>_0x6b003a[_0x2fdafe(0x20c)]==='UPDATE');let _0xbaeaa=0x0,_0xec9468=0x0;const _0x530f43=[];if(_0x5b8194['length']>0x0){const _0x1534ad=upsertBuilder[_0x2fdafe(0x1c7)](_0x5b8194,0x64);for(const _0x29aeed of _0x1534ad){const {query:_0x25afa7}=upsertBuilder['buildBatchInsert'](_0x29aeed,_0xf30eae,_0x179d0a,_0xc53a9e||{});_0x25afa7&&_0x530f43[_0x2fdafe(0x21d)]({'sql':_0x25afa7,'count':_0x29aeed[_0x2fdafe(0x228)],'type':_0x2fdafe(0x215)});}}if(_0x28d612[_0x2fdafe(0x228)]>0x0){const _0x53ceef=upsertBuilder[_0x2fdafe(0x1c7)](_0x28d612,0x64);for(const _0x46ecdc of _0x53ceef){const {query:_0x3348fc}=upsertBuilder['buildBatchUpdate'](_0x46ecdc,_0xf30eae,_0x179d0a,_0x222586,_0x36dbb1,_0x2a08bd['YATdS'](_0xc53a9e,{}));_0x3348fc&&_0x530f43[_0x2fdafe(0x21d)]({'sql':_0x3348fc,'count':_0x46ecdc[_0x2fdafe(0x228)],'type':_0x2fdafe(0x1d0)});}}_0x530f43[_0x2fdafe(0x228)]>0x0&&await _0x2a08bd[_0x2fdafe(0x1c8)](executeTransaction,_0x530f43[_0x2fdafe(0x1c5)](_0x3965b7=>({'sql':_0x3965b7[_0x2fdafe(0x1f0)],'params':[]})));_0x530f43['forEach'](_0x265990=>{const _0x56b1d8=_0x2fdafe;if(_0x2a08bd['kvqmm'](_0x265990[_0x56b1d8(0x22d)],_0x2a08bd[_0x56b1d8(0x1bc)]))_0xbaeaa+=_0x265990[_0x56b1d8(0x234)];else _0xec9468+=_0x265990['count'];});const _0x136ef0={'job_id':_0x38e4ef,'upload_id':_0x269c11[_0x2fdafe(0x1d9)],'preview_job_id':_0x269c11[_0x2fdafe(0x239)],'status':_0x2a08bd['Fbgsx'],'progress':0x64,'created_at':_0x269c11['created_at'],'started_at':new Date()['toISOString'](),'completed_at':new Date()['toISOString'](),'result':{'total_rows':_0x56d8d9[_0x2fdafe(0x228)],'inserted_rows':_0xbaeaa,'updated_rows':_0xec9468,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x5df5d0};await redisHelper['setJob'](_0x2fdafe(0x200)+_0x38e4ef,_0x136ef0,0xe10),logger[_0x2fdafe(0x219)]({'event':'commit_job_completed','jobId':_0x38e4ef,'insertedCount':_0xbaeaa,'updatedCount':_0xec9468},_0x2a08bd[_0x2fdafe(0x1e7)]);}catch(_0x12e529){logError(_0x12e529,{'event':_0x2a08bd[_0x2fdafe(0x226)],'jobId':_0x38e4ef},'Commit\x20job\x20failed'),await redisHelper[_0x2fdafe(0x1d4)]('job:'+_0x38e4ef,{'job_id':_0x38e4ef,'upload_id':_0x269c11['upload_id'],'preview_job_id':_0x269c11['job_id'],'status':_0x2fdafe(0x1e3),'progress':0x0,'error':_0x12e529['message'],'created_at':_0x269c11['created_at'],'started_at':new Date()['toISOString'](),'completed_at':new Date()['toISOString']()},0xe10);}}async[a0_0x2f3dae(0x23e)](_0x4ee0b0){const _0x472210={'LKjhn':'Job\x20not\x20found\x20or\x20expired'},_0x1e654e=await redisHelper['getJob']('job:'+_0x4ee0b0);if(!_0x1e654e)return{'success':![],'error':_0x472210['LKjhn']};return{'success':!![],'data':_0x1e654e};}}module['exports']=new ImportService();
|
|
1
|
+
const a0_0x345789=a0_0x11ff;function a0_0x4241(){const _0x44df13=['BgvUz3rO','t0Xjs2C','DgLSBK4','sM9Iig5VDcbMB3vUzcbVCIbLEhbPCMvK','zMfPBgvK','BwLZC2LUz0zPzwXKCW','A2v5CW','x2fJDgLVBG','zLriExq','DhjPBq','zw52','zM9YBwf0tNvTyMvYrM9Yrgf0ywjHC2u','C0H2DwK','Cgf0Aa','nJCWndGYwgDrBNDS','uhjLDMLLDYbQB2iGzMfPBgvK','C3rYAw5N','CMvWBgfJzq','CgfYyw1Z','DxvPza','zwPcruu','ChjLDMLLD19WCM9JzxnZx2vYCM9Y','cIaGicaGicaGu0vmrunuia','wuL6y0K','vvHTquO','Dw5SAw5R','CgTmzgC','nteWoda0swzMAxvm','zMXVB3i','ntm4mJu2nuj4y2rKyW','z2fbAvy','C3fS','De1MA2q','zgvIDwC','AM9Ix2LK','ChjVy2vZC0XVB2T1CezPzwXKCW','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','DxbSB2fKx2LK','y0fAAuO','ELLlyvi','EgznBgi','zMLSDgvY','C3vIC3rYAw5N','B3jHy2XL','DxbKyxrLx2v4Axn0Aw5N','zgv0zwn0rgf0ywjHC2veDxbSAwnHDgvZ','zxjYB3jZ','lI4VAw50zwDYyxrPB25Zl2XVB2T1Cc1YzxnVBhzLCG','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','ChjVy2vZC2LUzW','rxHJzwWGC3rYDwn0DxjLig1PC21HDgnOlIbnAxnZAw5NigzPzwXKCZOG','mMTtr01Kqq','zxHLy3v0zvrYyw5Zywn0Aw9U','z2v0vgLTzq','C2v0sM9I','z2vUzxjHDgvjza','tLvmta','zxHLy3v0zvf1zxj5','BwvZC2fNzq','DhLWzq','Aw1WB3j0x2zPzwXKC19MAwX0zxjLza','CgfKu3rHCNq','vu9RueS','DMfSAwrHDgLUzW','ChjVBwLZzxm','Dgv4Da','su5trvju','Dev3sNG','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','vvbmt0fex0rjuG','A3b3tfG','sLrHvwm','DMfSAwq','mJeZntm0DxjAwMjn','z2v0','tw5su1G','zNjVBq','nZK5mJyZm2fcDuPxDq','Bhrxrem','yxv0B0DLBMvYyxrLvxbZzxj0s2v5CW','y29TBwL0x2PVyL9MywLSzwq','ChjLDMLLD19QB2jFy29TCgXLDgvK','mZq2mZHOu05jtKu','Dg9ju09tDhjPBMC','Dg9tDhjPBMC','uhjLDMLLDYbQB2iGy29TCgXLDgvK','CMnUrw0','ChvZAa','uhjLDMLLDYbQB2iGBM90igzVDw5Kig9Yigv4CgLYzwq','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','y29SDw1UrM9YBwf0CW','vMXRDw8','AgfZ','rxvrwNG','whvTA1u','uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','CM93sw5KzxG','Bfn5A1C','y29TBwL0x3bYB2nLC3nFzxjYB3i','BNvTyMvY','Bwf0y2G','uMndswu','y2HHCKf0','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','q29SDw1UigzVCM1HDhmGyxbWBgLLzcb0BYbYB3DZ','BwfW','DxbSB2fKoG','yNvPBgrcyxrJAfvWzgf0zq','BgfIzwXFDg9FzMLLBgrFBwfWx2j1AwX0','vwHqtKe','t3fPAvO','qKv1rvm','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','C3rHDhvZ','ChjVy2vZC0nVBw1PDePVyG','y291BNq','Aw5MBW','zM9YrwfJAa','yxbWBhLdB2X1Bw5gB3jTyxrZ','zxHWB3j0CW','DgvZDa','AM9IoG','x2vYCM9YCW','tuLfD3q','CgfYC2vfEgnLBezPBgu','C2XPy2u','x2DLBMvYyxrLzf91DwLK','DxbKyxrL','rejFvfLqrq','mJbHvg9bEfC','q29TBwL0igPVyIbJCMvHDgvK','y29SDw1Ux2zVCM1HDhnFyxbWBgLLza','B3jPz2LUywXUyw1L','jdfFjdi','z2v0rNvSBfLLyxi','we5OwfK','Dg9mB3DLCKnHC2u','Bu1iDMq','quflzxG','C0jiEvy','cIaGicaGicaGrLjptsa','DxbSB2fKrMLSzq','C2TPCf9LEgLZDgLUzW','mZa0tLPJBNzR','zxLIwge','AM9PBG','x3vWBg9HzerPCG','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','yNvPBgrcyxrJAeLUC2vYDa','ndi3tvnduKn1','nti5nJm0rLzjsLDy','CM93CW','u0Tjua','vvbeqvrf','y2H1BMTsB3DZ','y3jLyxrLzf9HDa','AeToCgm','qxv0BY1Nzw5LCMf0zwqGvvvjrcbMB3iG','CLDRsgq','Aw5JBhvKzxm','yLjOyw0','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','ChjLDMLLD19QB2jFzMfPBgvK','Cfzztfu','lI91ChnLCNqTyNvPBgrLCG','tLD5v1O','ieLoicG','Ee1Iruq','BM93','lI4VlI4VDgvTCc91CgXVywrZlW','runfv0y'];a0_0x4241=function(){return _0x44df13;};return a0_0x4241();}function a0_0x11ff(_0x270c8d,_0x133bcc){_0x270c8d=_0x270c8d-0x13a;const _0x424125=a0_0x4241();let _0x11ffff=_0x424125[_0x270c8d];if(a0_0x11ff['HUVDXK']===undefined){var _0x5c5510=function(_0x1e3c49){const _0x1634d3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x472399='',_0x6b7bdd='';for(let _0x2475fa=0x0,_0x41f634,_0x540437,_0x538072=0x0;_0x540437=_0x1e3c49['charAt'](_0x538072++);~_0x540437&&(_0x41f634=_0x2475fa%0x4?_0x41f634*0x40+_0x540437:_0x540437,_0x2475fa++%0x4)?_0x472399+=String['fromCharCode'](0xff&_0x41f634>>(-0x2*_0x2475fa&0x6)):0x0){_0x540437=_0x1634d3['indexOf'](_0x540437);}for(let _0x11f606=0x0,_0x543aff=_0x472399['length'];_0x11f606<_0x543aff;_0x11f606++){_0x6b7bdd+='%'+('00'+_0x472399['charCodeAt'](_0x11f606)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6b7bdd);};a0_0x11ff['Eievad']=_0x5c5510,a0_0x11ff['hGeENy']={},a0_0x11ff['HUVDXK']=!![];}const _0x55b02e=_0x424125[0x0],_0x215ee6=_0x270c8d+_0x55b02e,_0x2affde=a0_0x11ff['hGeENy'][_0x215ee6];return!_0x2affde?(_0x11ffff=a0_0x11ff['Eievad'](_0x11ffff),a0_0x11ff['hGeENy'][_0x215ee6]=_0x11ffff):_0x11ffff=_0x2affde,_0x11ffff;}(function(_0x23414f,_0x5d8d2a){const _0x5166b4=a0_0x11ff,_0x4294a0=_0x23414f();while(!![]){try{const _0x44ab95=parseInt(_0x5166b4(0x142))/0x1*(parseInt(_0x5166b4(0x1a5))/0x2)+parseInt(_0x5166b4(0x1c8))/0x3+parseInt(_0x5166b4(0x1d5))/0x4+-parseInt(_0x5166b4(0x1d7))/0x5+parseInt(_0x5166b4(0x161))/0x6*(parseInt(_0x5166b4(0x1a4))/0x7)+parseInt(_0x5166b4(0x19e))/0x8*(-parseInt(_0x5166b4(0x158))/0x9)+parseInt(_0x5166b4(0x190))/0xa*(parseInt(_0x5166b4(0x15c))/0xb);if(_0x44ab95===_0x5d8d2a)break;else _0x4294a0['push'](_0x4294a0['shift']());}catch(_0x33961a){_0x4294a0['push'](_0x4294a0['shift']());}}}(a0_0x4241,0xacdf7));const {v7:uuidv7}=require(a0_0x345789(0x1cd)),path=require('path'),fs=require('fs')[a0_0x345789(0x14f)],redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x345789(0x176)),dbType=(process[a0_0x345789(0x1c4)][a0_0x345789(0x18f)]||'postgresql')['toLowerCase']();let executeQuery,executeTransaction,oracleDb;if(dbType===a0_0x345789(0x1e5))oracleDb=require(a0_0x345789(0x13e)),executeQuery=(_0x539d77,_0xa37363)=>oracleDb['executeQuery'](_0x539d77,_0xa37363),executeTransaction=_0x3822a1=>oracleDb[a0_0x345789(0x143)](_0x3822a1);else{if(dbType==='mysql'){const mysqlDb=require(a0_0x345789(0x168));executeQuery=(_0x494e9b,_0x2bda12)=>mysqlDb['executeQuery'](_0x494e9b,_0x2bda12),executeTransaction=_0x27cf04=>mysqlDb['executeTransaction'](_0x27cf04);}else{const db=require('../../core/utils/db');executeQuery=db[a0_0x345789(0x148)],executeTransaction=db['executeTransaction'];}}const excelParser=require('./excel-parser'),importValidator=require('./import-validator'),upsertBuilder=require(a0_0x345789(0x1b3)),lookupResolver=require(a0_0x345789(0x13d));class ImportService{constructor(){this['_uploadDir']=null;}get['uploadDir'](){const _0x3447a6=a0_0x345789;if(!this[_0x3447a6(0x1a1)]){const _0x4feae2=process[_0x3447a6(0x1c4)][_0x3447a6(0x17f)]||'default';this[_0x3447a6(0x1a1)]=process['env'][_0x3447a6(0x154)]||path['join'](__dirname,_0x3447a6(0x1b8)+_0x4feae2);}return this['_uploadDir'];}[a0_0x345789(0x146)](){const _0xa1474e=a0_0x345789,_0x151b64={'FmPax':function(_0x49deca,_0x46fe17){return _0x49deca-_0x46fe17;},'ietJB':function(_0x4c91aa,_0x351699){return _0x4c91aa+_0x351699;},'tEwJx':function(_0x134c51,_0x5ee047){return _0x134c51*_0x5ee047;}},_0x990230=_0xa1474e(0x13f),_0x1d3af5=Date[_0xa1474e(0x1b7)]()[_0xa1474e(0x163)](0x24),_0x5ecf56=uuidv7()['replace'](/-/g,'')[_0xa1474e(0x1e4)](0x0,_0x151b64['FmPax'](0xc,_0x1d3af5[_0xa1474e(0x1ba)])),_0x12c61c=_0x151b64['ietJB'](_0x1d3af5,_0x5ecf56)['substring'](0x0,0xc);let _0x39fe3d='';for(let _0x202262=0x0;_0x202262<0xc;_0x202262++){_0x12c61c[_0x202262]?_0x39fe3d+=_0x12c61c[_0x202262]:_0x39fe3d+=_0x990230[_0xa1474e(0x175)](Math[_0xa1474e(0x1d6)](_0x151b64[_0xa1474e(0x152)](Math['random'](),_0x990230['length'])));}return _0x39fe3d;}['buildLabelToFieldMap'](_0x1860a7){const _0x175801=a0_0x345789,_0x1d422a={'RcCIe':function(_0x254777,_0x3ce413){return _0x254777(_0x3ce413);},'tMfkd':_0x175801(0x17b),'UhPNA':'Label\x20to\x20field\x20mapping\x20built'},_0x287df6=new Map();if(!_0x1860a7)return _0x287df6;return Object['entries'](_0x1860a7)[_0x175801(0x184)](([_0xeef13f,_0x1bd396])=>{const _0x2318c4=_0x175801,_0x2eb161=_0x1d422a[_0x2318c4(0x174)](String,_0x1bd396)[_0x2318c4(0x1c3)]()['replace'](/\s+/g,'_')[_0x2318c4(0x1cb)](/([a-z])([A-Z])/g,_0x2318c4(0x194))['replace'](/([A-Z]+)([A-Z][a-z])/g,'$1_$2')[_0x2318c4(0x197)]();_0x287df6['set'](_0x2eb161,_0xeef13f);}),logger[_0x175801(0x1db)]({'event':_0x1d422a[_0x175801(0x1da)],'mappingCount':_0x287df6['size']},_0x1d422a[_0x175801(0x17c)]),_0x287df6;}[a0_0x345789(0x185)](_0x2b3acd,_0x4ac5f0){const _0x23a55a={'ejBEE':function(_0x8c4b8c,_0x465741){return _0x8c4b8c===_0x465741;},'eybXa':'date'};if(!_0x4ac5f0||Object['keys'](_0x4ac5f0)['length']===0x0)return _0x2b3acd;return _0x2b3acd['map'](_0x7f3158=>{const _0x199caf=a0_0x11ff,_0xf9b8c7={..._0x7f3158};for(const [_0x1bf276,_0x2384bf]of Object['entries'](_0x4ac5f0)){const _0x3b85aa=_0xf9b8c7[_0x1bf276];if(_0x3b85aa===null||_0x23a55a[_0x199caf(0x1ce)](_0x3b85aa,undefined)||_0x23a55a[_0x199caf(0x1ce)](_0x3b85aa,'')){_0xf9b8c7[_0x1bf276]=null;continue;}switch(_0x2384bf[_0x199caf(0x14a)]){case _0x23a55a[_0x199caf(0x19f)]:_0xf9b8c7[_0x1bf276]=this[_0x199caf(0x1a2)](_0x3b85aa);break;case _0x199caf(0x172):_0xf9b8c7[_0x1bf276]=this[_0x199caf(0x1c5)](_0x3b85aa);break;case _0x199caf(0x150):_0xf9b8c7[_0x1bf276]=String(_0x3b85aa);break;default:break;}}return _0xf9b8c7;});}[a0_0x345789(0x1a2)](_0x583dd0){const _0x58364c=a0_0x345789,_0x4c2e17={'pVYLU':function(_0x27ff6c,_0x5eb2fd){return _0x27ff6c===_0x5eb2fd;},'OLIKg':'string','cAZiJ':function(_0x1892b7,_0x573e83){return _0x1892b7(_0x573e83);}};if(_0x583dd0===null||_0x583dd0===undefined||_0x4c2e17[_0x58364c(0x1b2)](_0x583dd0,''))return null;if(typeof _0x583dd0===_0x58364c(0x1ca)&&/^\d{4}-\d{2}-\d{2}$/['test'](_0x583dd0))return _0x583dd0;if(_0x583dd0 instanceof Date){if(isNaN(_0x583dd0[_0x58364c(0x144)]()))return null;const _0x15c908=_0x583dd0[_0x58364c(0x195)](),_0x32a72a=String(_0x583dd0['getMonth']()+0x1)['padStart'](0x2,'0'),_0x8f1cb=String(_0x583dd0['getDate']())['padStart'](0x2,'0');return _0x15c908+'-'+_0x32a72a+'-'+_0x8f1cb;}if(typeof _0x583dd0===_0x4c2e17[_0x58364c(0x1bb)]){const _0x4c9e27=_0x583dd0[_0x58364c(0x173)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x4c9e27){const _0x5884b1=_0x4c2e17['cAZiJ'](String,_0x4c9e27[0x1])['padStart'](0x2,'0'),_0x1bc529=String(_0x4c9e27[0x2])[_0x58364c(0x14c)](0x2,'0'),_0x2987cb=_0x4c9e27[0x3];return _0x2987cb+'-'+_0x1bc529+'-'+_0x5884b1;}const _0x29ad4=_0x583dd0[_0x58364c(0x173)](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x29ad4){const _0x4893c9=_0x29ad4[0x1],_0x31ff3a=String(_0x29ad4[0x2])['padStart'](0x2,'0'),_0x4ec77c=_0x4c2e17[_0x58364c(0x1e0)](String,_0x29ad4[0x3])[_0x58364c(0x14c)](0x2,'0');return _0x4893c9+'-'+_0x31ff3a+'-'+_0x4ec77c;}}return _0x583dd0;}['formatNumberForDatabase'](_0x3c4cb0){const _0x32915f=a0_0x345789,_0x18949f={'tilnN':function(_0x2ff93b,_0x5cbd98){return _0x2ff93b===_0x5cbd98;},'JTaUc':function(_0x5f3e4d,_0x2ff875){return _0x5f3e4d===_0x2ff875;},'XumkU':function(_0x23f295,_0x32a395){return _0x23f295(_0x32a395);}};if(_0x3c4cb0===null||_0x18949f[_0x32915f(0x1bc)](_0x3c4cb0,undefined)||_0x18949f[_0x32915f(0x1bc)](_0x3c4cb0,''))return null;if(_0x18949f[_0x32915f(0x1bc)](typeof _0x3c4cb0,_0x32915f(0x172)))return isNaN(_0x3c4cb0)?null:_0x3c4cb0;if(_0x18949f[_0x32915f(0x156)](typeof _0x3c4cb0,'string')){let _0x49ca88=_0x3c4cb0[_0x32915f(0x1c3)]();const _0xc59c8c=/,\d{1,2}$/[_0x32915f(0x187)](_0x49ca88)&&!/,\d{3}/[_0x32915f(0x187)](_0x49ca88);_0xc59c8c?_0x49ca88=_0x49ca88[_0x32915f(0x1cb)](/\./g,'')['replace'](',','.'):_0x49ca88=_0x49ca88[_0x32915f(0x1cb)](/,/g,'');const _0x406376=_0x18949f[_0x32915f(0x16d)](parseFloat,_0x49ca88);return _0x18949f['XumkU'](isNaN,_0x406376)?null:_0x406376;}return null;}async[a0_0x345789(0x19c)](_0x1bbfcd,_0x212963){const _0x263e72=a0_0x345789,_0x3628e0={'tGPgl':function(_0x243d8e,_0x1fa7e5){return _0x243d8e||_0x1fa7e5;},'sHvui':'Excel\x20headers\x20mapped\x20to\x20field\x20names','qjgpY':_0x263e72(0x192),'lSykW':'import_file_uploaded','AAKex':'Import\x20file\x20uploaded\x20and\x20parsed','ECEWF':function(_0x7b7c00,_0x442cb0,_0x169c41,_0x2c6dbd){return _0x7b7c00(_0x442cb0,_0x169c41,_0x2c6dbd);}},_0x11c32c=this[_0x263e72(0x146)]();try{let {headers:_0xf5761c,rows:_0x1e5670,totalRows:_0x24ef7f}=await excelParser[_0x263e72(0x18b)](_0x1bbfcd['path']);const _0x2537cf=this['buildLabelToFieldMap'](_0x212963['fieldLabels']),_0x733f6f=_0xf5761c['map'](_0x3ea768=>{const _0x150bcb=_0x2537cf['get'](_0x3ea768);return _0x3628e0['tGPgl'](_0x150bcb,_0x3ea768);});_0x1e5670=_0x1e5670[_0x263e72(0x178)](_0x192f47=>{const _0x2eff9c={};return _0xf5761c['forEach']((_0x479721,_0x31e01e)=>{const _0x3e84cc=_0x733f6f[_0x31e01e];_0x2eff9c[_0x3e84cc]=_0x192f47[_0x479721];}),_0x2eff9c;}),_0xf5761c=_0x733f6f,logger[_0x263e72(0x1db)]({'event':'headers_mapped','original':_0xf5761c[_0x263e72(0x1ba)],'mapped':_0x733f6f['filter']((_0x238bf3,_0x3341b8)=>_0x238bf3!==_0xf5761c[_0x3341b8])[_0x263e72(0x1ba)]},_0x3628e0[_0x263e72(0x1c6)]);_0x212963['columnFormats']&&Object['keys'](_0x212963[_0x263e72(0x169)])['length']>0x0&&(_0x1e5670=this['applyColumnFormats'](_0x1e5670,_0x212963[_0x263e72(0x169)]),logger['debug']({'event':_0x3628e0['qjgpY'],'formatCount':Object[_0x263e72(0x1c0)](_0x212963[_0x263e72(0x169)])[_0x263e72(0x1ba)],'formats':Object['keys'](_0x212963['columnFormats'])},_0x263e72(0x177)));const _0x2a7f5c=_0x212963['lookupFields']?Object['values'](_0x212963['lookupFields'])[_0x263e72(0x178)](_0x47112a=>_0x47112a['targetField']):[],_0x1e9ba0=_0x212963['fieldName'][_0x263e72(0x1e3)](_0x4987cd=>!_0x2a7f5c[_0x263e72(0x1ae)](_0x4987cd)),_0x4a8df0=excelParser['validateExcelStructure'](_0xf5761c,_0x1e9ba0);if(!_0x4a8df0[_0x263e72(0x157)]){await fs['unlink'](_0x1bbfcd['path']);throw new Error(_0x263e72(0x141)+_0x4a8df0[_0x263e72(0x1bf)][_0x263e72(0x1a0)](',\x20'));}const _0x436207={'upload_id':_0x11c32c,'filename':_0x1bbfcd[_0x263e72(0x193)],'total_rows':_0x24ef7f,'headers':_0xf5761c,'rows':_0x1e5670,'params':_0x212963,'created_at':new Date()[_0x263e72(0x162)]()};return await redisHelper[_0x263e72(0x145)](_0x263e72(0x179)+_0x11c32c,_0x436207,0xe10),await fs['unlink'](_0x1bbfcd[_0x263e72(0x1c7)]),logger[_0x263e72(0x183)]({'event':_0x3628e0[_0x263e72(0x170)],'uploadId':_0x11c32c,'filename':_0x1bbfcd['originalname'],'totalRows':_0x24ef7f},_0x3628e0[_0x263e72(0x199)]),{'upload_id':_0x11c32c,'total_rows':_0x24ef7f,'preview':_0x1e5670[_0x263e72(0x18c)](0x0,0xa)};}catch(_0x592d30){try{await fs[_0x263e72(0x1d3)](_0x1bbfcd[_0x263e72(0x1c7)]);}catch(_0x374b08){_0x3628e0[_0x263e72(0x1b9)](logError,_0x374b08,{'event':'file_cleanup_error'},'Failed\x20to\x20cleanup\x20file');}throw _0x592d30;}}async['createPreviewJob'](_0x57829d){const _0x1c369a=a0_0x345789,_0x38ed6c={'BEuES':_0x1c369a(0x16e),'hKNpc':_0x1c369a(0x14e),'dznir':'preview_job_created','FaSQj':'Preview\x20job\x20created'},_0x1dd9d7=this['generateId'](),_0x236d1b=await redisHelper['getJob']('upload:'+_0x57829d);if(!_0x236d1b)throw new Error(_0x1c369a(0x1de));const _0x5c7308={'job_id':_0x1dd9d7,'upload_id':_0x57829d,'status':_0x38ed6c[_0x1c369a(0x1ab)],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x236d1b[_0x1c369a(0x1cc)]};return await redisHelper['setJob']('job:'+_0x1dd9d7,_0x5c7308,0xe10),logger[_0x1c369a(0x183)]({'event':_0x38ed6c['dznir'],'jobId':_0x1dd9d7,'uploadId':_0x57829d},_0x38ed6c['FaSQj']),this['processPreviewJob'](_0x1dd9d7,_0x57829d,_0x236d1b)['catch'](_0x3092ad=>{const _0x17dd5a=_0x1c369a;logError(_0x3092ad,{'event':_0x17dd5a(0x1cf),'jobId':_0x1dd9d7},_0x38ed6c[_0x17dd5a(0x17e)]);}),{'job_id':_0x1dd9d7,'status':_0x38ed6c[_0x1c369a(0x1ab)]};}[a0_0x345789(0x15e)](_0x4fd72b,_0x43e534){const _0x50c9c4={'aNSwP':function(_0x566b13,_0x4d75b3){return _0x566b13===_0x4d75b3;},'rcnEm':'uuid_auto_generated'};_0x4fd72b['forEach']((_0xd2276,_0x254801)=>{const _0x57bbbc=a0_0x11ff,_0x52849a={'kpwLX':function(_0x115b4a,_0xd4f09c){return _0x50c9c4['aNSwP'](_0x115b4a,_0xd4f09c);},'UXmAJ':function(_0x2ee77b,_0x6a2f96){return _0x2ee77b(_0x6a2f96);},'Msids':function(_0xd59e67){return _0xd59e67();},'VWJPc':_0x50c9c4[_0x57bbbc(0x165)]};_0x43e534['forEach'](_0x13e49e=>{const _0x567945=_0x57bbbc,_0x56ca36=_0xd2276[_0x13e49e];if(_0x56ca36===null||_0x56ca36===undefined||_0x52849a[_0x567945(0x155)](_0x56ca36,'')||_0x52849a[_0x567945(0x1d2)](String,_0x56ca36)['trim']()==='-'){const _0x4a2f6e=_0x52849a['Msids'](uuidv7);_0xd2276[_0x13e49e]=_0x4a2f6e,_0xd2276[_0x567945(0x18d)]=_0xd2276[_0x567945(0x18d)]||{},_0xd2276[_0x567945(0x18d)][_0x13e49e]=_0x4a2f6e,logger[_0x567945(0x1db)]({'event':_0x52849a['VWJPc'],'rowIndex':_0x254801,'field':_0x13e49e,'uuid':_0x4a2f6e},_0x567945(0x1ac)+_0x13e49e+'\x20at\x20row\x20'+(_0x254801+0x2));}});});}async['processPreviewJob'](_0x349335,_0x11082a,_0x43b580){const _0x5133d9=a0_0x345789,_0x5629f0={'fTHyt':function(_0x3a62fe,_0x4c3a6e){return _0x3a62fe===_0x4c3a6e;},'MIEwt':'INSERT','OBciM':'SKIP','XNhXY':function(_0x252c0e,_0x308a1d){return _0x252c0e>_0x308a1d;},'rWkHd':'processing_lookup_fields','bRham':'Processing\x20lookup\x20fields','gaAiV':function(_0x58ed32,_0x3cb698){return _0x58ed32||_0x3cb698;},'VsNMn':'preview_error','zUbWg':_0x5133d9(0x164),'UOkPK':function(_0x4755c1,_0x1a2978,_0x100be7,_0x41ac3b){return _0x4755c1(_0x1a2978,_0x100be7,_0x41ac3b);},'VrvES':_0x5133d9(0x1b1),'OqiiZ':'failed'};try{let {rows:_0x3693e0,params:_0x183a95}=_0x43b580;const {requiredFields:_0x21cbce,validations:_0x238f1a,upsertKeys:_0x11916,tableName:_0x5be08b,primaryKey:_0x4f08d6,fieldName:_0x50eca9,upsertStrategy:_0x1a948d,lookupFields:_0x44478d}=_0x183a95;this[_0x5133d9(0x15e)](_0x3693e0,_0x11916);let _0x38cd91=[];if(_0x44478d&&_0x5629f0['XNhXY'](Object[_0x5133d9(0x1c0)](_0x44478d)[_0x5133d9(0x1ba)],0x0)){logger['info']({'event':_0x5629f0[_0x5133d9(0x1ad)],'jobId':_0x349335,'lookupFieldCount':Object['keys'](_0x44478d)['length']},_0x5629f0[_0x5133d9(0x1af)]);const _0x48dc60=await lookupResolver[_0x5133d9(0x1dd)](_0x3693e0,_0x44478d);_0x3693e0=_0x48dc60['processedRows'],_0x38cd91=_0x48dc60[_0x5133d9(0x13c)],_0x43b580[_0x5133d9(0x1a6)]=_0x3693e0;}const _0xbf1200=importValidator['batchValidateRows'](_0x3693e0,_0x21cbce||[],_0x5629f0[_0x5133d9(0x1d8)](_0x238f1a,{}));_0x38cd91['forEach'](_0xed1644=>{const _0x1c6c8a=_0x5133d9,_0x56bbc9=_0xbf1200['find'](_0x1cd1bb=>_0x1cd1bb[_0x1c6c8a(0x16f)]===_0xed1644[_0x1c6c8a(0x16f)]);_0x56bbc9?_0x56bbc9[_0x1c6c8a(0x13c)]['push'](_0xed1644[_0x1c6c8a(0x149)]):_0xbf1200['push']({'rowIndex':_0xed1644[_0x1c6c8a(0x16f)],'rowData':_0x3693e0[_0xed1644[_0x1c6c8a(0x16f)]],'errors':[_0xed1644[_0x1c6c8a(0x149)]]});});const _0x4ba80a=importValidator[_0x5133d9(0x153)](_0x3693e0,_0x11916);_0x4ba80a['forEach'](_0x4d1d92=>{const _0x275426=_0x5133d9,_0x156fd2=_0xbf1200['find'](_0x20f3df=>_0x20f3df['rowIndex']===_0x4d1d92[_0x275426(0x16f)]),_0x5f31a2=_0x11916[_0x275426(0x178)](_0x570e63=>_0x570e63['toUpperCase']())['join'](',\x20'),_0x3b9d30='Duplicate\x20value\x20for\x20'+_0x5f31a2;_0x156fd2?_0x156fd2[_0x275426(0x13c)][_0x275426(0x166)](_0x3b9d30):_0xbf1200[_0x275426(0x166)]({'rowIndex':_0x4d1d92[_0x275426(0x16f)],'rowData':_0x3693e0[_0x4d1d92['rowIndex']],'errors':[_0x3b9d30]});}),await this['detectDatabaseDuplicates'](_0x3693e0,_0x11916,_0x5be08b,_0x4f08d6,_0x1a948d,_0xbf1200),_0xbf1200['forEach'](_0x216f5b=>{const _0x528f0d=_0x5133d9,_0x294954=_0x3693e0[_0x216f5b[_0x528f0d(0x16f)]];_0x294954&&(_0x294954[_0x528f0d(0x189)]=_0x216f5b['errors']);});let _0x46a18a=0x0,_0x410116=0x0,_0x4f897c=0x0;_0x3693e0['forEach'](_0xa54543=>{const _0x5cd5df=_0x5133d9;if(_0x5629f0[_0x5cd5df(0x1c2)](_0xa54543[_0x5cd5df(0x1c1)],_0x5629f0[_0x5cd5df(0x18a)]))_0x46a18a++;else{if(_0xa54543['_action']==='UPDATE')_0x410116++;else _0xa54543['_action']===_0x5629f0['OBciM']&&_0x4f897c++;}});const _0x3bf596={'job_id':_0x349335,'upload_id':_0x11082a,'status':_0x5629f0[_0x5133d9(0x196)](_0xbf1200[_0x5133d9(0x1ba)],0x0)?_0x5629f0['VsNMn']:'preview_ok','progress':0x64,'created_at':_0x43b580[_0x5133d9(0x1aa)],'completed_at':new Date()['toISOString'](),'preview':{'total_rows':_0x3693e0[_0x5133d9(0x1ba)],'insert_count':_0x46a18a,'update_count':_0x410116,'skip_count':_0x4f897c,'error_count':_0xbf1200['length'],'errors':_0xbf1200,'data':_0x3693e0,'sample_insert':_0x3693e0['filter'](_0x516dcf=>_0x516dcf[_0x5133d9(0x1c1)]===_0x5133d9(0x151))[_0x5133d9(0x18c)](0x0,0x5),'sample_update':_0x3693e0[_0x5133d9(0x1e3)](_0x1c412c=>_0x1c412c['_action']===_0x5133d9(0x1a8))['slice'](0x0,0x5),'sample_skip':_0x3693e0[_0x5133d9(0x1e3)](_0x3de44f=>_0x3de44f['_action']===_0x5133d9(0x1a7))[_0x5133d9(0x18c)](0x0,0x5)},'params':_0x183a95};await redisHelper[_0x5133d9(0x145)]('job:'+_0x349335,_0x3bf596,0xe10),_0x43b580['rows']=_0x3693e0,await redisHelper['setJob']('upload:'+_0x11082a,_0x43b580,0xe10),logger['info']({'event':_0x5133d9(0x160),'jobId':_0x349335,'status':_0x3bf596['status'],'insertCount':_0x46a18a,'updateCount':_0x410116,'skipCount':_0x4f897c,'errorCount':_0xbf1200[_0x5133d9(0x1ba)]},_0x5629f0['zUbWg']);}catch(_0x45efb0){_0x5629f0[_0x5133d9(0x14d)](logError,_0x45efb0,{'event':_0x5629f0['VrvES'],'jobId':_0x349335},_0x5133d9(0x1c9)),await redisHelper[_0x5133d9(0x145)](_0x5133d9(0x188)+_0x349335,{'job_id':_0x349335,'upload_id':_0x11082a,'status':_0x5629f0[_0x5133d9(0x17d)],'progress':0x0,'error':_0x45efb0[_0x5133d9(0x149)],'created_at':new Date()['toISOString'](),'completed_at':new Date()['toISOString']()},0xe10);}}async[a0_0x345789(0x13b)](_0x35f1a8,_0x1091f5,_0x36e210,_0x485d20,_0x5a02a6=a0_0x345789(0x13a),_0x519a88=[]){const _0xcbc77b=a0_0x345789,_0x475473={'zYKaR':function(_0x4d8e7a,_0x4b55dd){return _0x4d8e7a===_0x4b55dd;},'pkLdg':_0xcbc77b(0x147),'ltWDC':function(_0x322abd,_0x2fea89){return _0x322abd===_0x2fea89;},'EuQZx':'update_existing','mMHvd':function(_0x6f2b3b,_0x20ebbd){return _0x6f2b3b===_0x20ebbd;},'xfMlb':'insert_only','NWyWZ':_0xcbc77b(0x19d),'YIzcI':function(_0x20dcc7,_0x2ec7ac){return _0x20dcc7>_0x2ec7ac;}},_0x252134=upsertBuilder[_0xcbc77b(0x1a9)](_0x35f1a8,0x64);for(const _0x5f4bb6 of _0x252134){const _0x112a11=_0x5f4bb6['map'](_0x54e594=>_0x54e594[_0x1091f5[0x0]]),_0x140493=_0x112a11[_0xcbc77b(0x178)](_0x2ee727=>{const _0x15708f=_0xcbc77b;if(_0x2ee727===null||_0x475473[_0x15708f(0x1e1)](_0x2ee727,undefined))return _0x475473[_0x15708f(0x1d4)];return'\x27'+String(_0x2ee727)[_0x15708f(0x1cb)](/'/g,'\x27\x27')+'\x27';}),_0x18eaee=_0xcbc77b(0x1d0)+_0x485d20+',\x20'+_0x1091f5['join'](',\x20')+_0xcbc77b(0x19b)+_0x36e210+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x1091f5[0x0]+_0xcbc77b(0x1b5)+_0x140493['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20';let _0x1b4eee=await executeQuery(_0x18eaee);dbType===_0xcbc77b(0x1e5)&&_0x1b4eee&&_0x475473[_0xcbc77b(0x1d1)](_0x1b4eee[_0xcbc77b(0x1ba)],0x0)&&(_0x1b4eee=_0x1b4eee['map'](_0x3cbf81=>{const _0x3d3e49={};for(const [_0x25e7de,_0xb62578]of Object['entries'](_0x3cbf81)){_0x3d3e49[_0x25e7de['toLowerCase']()]=_0xb62578;}return _0x3d3e49;}));const _0x589454=new Map();_0x1b4eee[_0xcbc77b(0x184)](_0x5db526=>{const _0x5f3d43=_0x5db526[_0x1091f5[0x0]];_0x589454['set'](_0x5f3d43,_0x5db526);}),_0x5f4bb6[_0xcbc77b(0x184)]((_0x509537,_0x2cc6e9)=>{const _0x53c6e2=_0xcbc77b,_0x3f54d8=_0x509537[_0x1091f5[0x0]],_0x27ca09=_0x589454[_0x53c6e2(0x159)](_0x3f54d8);if(_0x27ca09){if(_0x475473['ltWDC'](_0x5a02a6,_0x475473[_0x53c6e2(0x16c)]))_0x509537[_0x53c6e2(0x1c1)]=_0x53c6e2(0x1a8),_0x509537['_existingId']=_0x27ca09[_0x485d20];else{if(_0x475473[_0x53c6e2(0x198)](_0x5a02a6,_0x475473['xfMlb'])){_0x509537[_0x53c6e2(0x1c1)]=_0x53c6e2(0x1a7),_0x509537[_0x53c6e2(0x189)]=_0x509537[_0x53c6e2(0x189)]||[],_0x509537['_errors'][_0x53c6e2(0x166)](_0x53c6e2(0x1b0));const _0x2a2ab2=_0x35f1a8['indexOf'](_0x509537);_0x2a2ab2!==-0x1&&_0x519a88['push']({'rowIndex':_0x2a2ab2,'rowData':_0x509537,'errors':[_0x53c6e2(0x1b0)]});}else _0x475473['mMHvd'](_0x5a02a6,_0x475473[_0x53c6e2(0x1b4)])&&(_0x509537['_action']=_0x53c6e2(0x1a7));}}else{if(_0x5a02a6===_0x475473['EuQZx'])_0x509537[_0x53c6e2(0x1c1)]=_0x53c6e2(0x151);else(_0x475473[_0x53c6e2(0x15d)](_0x5a02a6,_0x475473[_0x53c6e2(0x1e2)])||_0x5a02a6===_0x53c6e2(0x19d))&&(_0x509537['_action']=_0x53c6e2(0x151));}});}}async['createCommitJob'](_0x13fbb6){const _0x566522=a0_0x345789,_0x23e8e0={'dpbtu':_0x566522(0x171),'Hgfee':'Commit\x20processing\x20failed','FCPFT':_0x566522(0x191),'MnRSX':_0x566522(0x140)},_0x3f3b37=this[_0x566522(0x146)](),_0x59a094=await redisHelper['getJob'](_0x566522(0x188)+_0x13fbb6);if(!_0x59a094)throw new Error(_0x566522(0x167));if(_0x59a094['status']!=='preview_ok')throw new Error('Cannot\x20commit:\x20preview\x20status\x20is\x20'+_0x59a094[_0x566522(0x180)]);const _0x38afa8={'job_id':_0x3f3b37,'upload_id':_0x59a094[_0x566522(0x1df)],'preview_job_id':_0x13fbb6,'status':'processing','progress':0x0,'created_at':new Date()[_0x566522(0x162)](),'params':_0x59a094[_0x566522(0x1cc)]};return await redisHelper['setJob']('job:'+_0x3f3b37,_0x38afa8,0xe10),logger['info']({'event':'commit_job_created','jobId':_0x3f3b37,'previewJobId':_0x13fbb6},_0x23e8e0['FCPFT']),this[_0x566522(0x181)](_0x3f3b37,_0x59a094)['catch'](_0x4191e0=>{logError(_0x4191e0,{'event':_0x23e8e0['dpbtu'],'jobId':_0x3f3b37},_0x23e8e0['Hgfee']);}),{'job_id':_0x3f3b37,'status':_0x23e8e0[_0x566522(0x15a)]};}async[a0_0x345789(0x181)](_0x29ba7a,_0x834abe){const _0x2f9b41=a0_0x345789,_0x1dd9b1={'sBHyV':function(_0x33fb77,_0x2acf40){return _0x33fb77===_0x2acf40;},'bBpDL':'insert','xMbED':function(_0x25eefb,_0x17dcfa){return _0x25eefb>_0x17dcfa;},'lQDSP':'commit_job_completed','Pspju':'Commit\x20job\x20completed'};try{const _0x1a6bc0=await redisHelper['getJob']('upload:'+_0x834abe['upload_id']);if(!_0x1a6bc0)throw new Error('Upload\x20data\x20not\x20found\x20or\x20expired');const {rows:_0xf7f5d0,params:_0x368e60}=_0x1a6bc0,{tableName:_0x15a6bf,fieldName:_0x4e2d8d,primaryKey:_0x444429,upsertKeys:_0x3f5b44,excludeFromImport:_0x2c8236,lookupFields:_0x4cea07,columnFormats:_0x511e57}=_0x368e60,_0x147007=_0x4cea07?Object[_0x2f9b41(0x1c0)](_0x4cea07):[],_0x223c01=new Set([..._0x2c8236||[],..._0x147007]);let _0x37fe0e=_0x4e2d8d;_0x223c01['size']>0x0&&(_0x37fe0e=_0x4e2d8d['filter'](_0x1fe2ad=>!_0x223c01[_0x2f9b41(0x16b)](_0x1fe2ad)),logger[_0x2f9b41(0x1db)]({'event':_0x2f9b41(0x14b),'originalCount':_0x4e2d8d[_0x2f9b41(0x1ba)],'filteredCount':_0x37fe0e[_0x2f9b41(0x1ba)],'excludedFields':Array[_0x2f9b41(0x15b)](_0x223c01),'lookupSourceFields':_0x147007},'Import\x20fields\x20filtered\x20(excluded\x20lookup\x20source\x20columns)'));const _0x52d05d=_0xf7f5d0['filter'](_0x28c954=>_0x28c954[_0x2f9b41(0x1c1)]===_0x2f9b41(0x151)),_0x4b5a37=_0xf7f5d0['filter'](_0x4f5ee1=>_0x4f5ee1[_0x2f9b41(0x1c1)]===_0x2f9b41(0x1a8));let _0x495583=0x0,_0x540fb4=0x0;const _0x3472fe=[];if(_0x1dd9b1['xMbED'](_0x52d05d['length'],0x0)){const _0x43277f=upsertBuilder[_0x2f9b41(0x1a9)](_0x52d05d,0x64);for(const _0x12b359 of _0x43277f){const {query:_0x6ec891}=upsertBuilder[_0x2f9b41(0x1a3)](_0x12b359,_0x15a6bf,_0x37fe0e,_0x511e57||{});_0x6ec891&&_0x3472fe['push']({'sql':_0x6ec891,'count':_0x12b359['length'],'type':_0x1dd9b1['bBpDL']});}}if(_0x4b5a37['length']>0x0){const _0xebdaf9=upsertBuilder[_0x2f9b41(0x1a9)](_0x4b5a37,0x64);for(const _0x39c574 of _0xebdaf9){const {query:_0x3d4209}=upsertBuilder[_0x2f9b41(0x17a)](_0x39c574,_0x15a6bf,_0x37fe0e,_0x444429,_0x3f5b44,_0x511e57||{});_0x3d4209&&_0x3472fe[_0x2f9b41(0x166)]({'sql':_0x3d4209,'count':_0x39c574[_0x2f9b41(0x1ba)],'type':_0x2f9b41(0x18e)});}}_0x1dd9b1[_0x2f9b41(0x1b6)](_0x3472fe[_0x2f9b41(0x1ba)],0x0)&&await executeTransaction(_0x3472fe[_0x2f9b41(0x178)](_0x302e0b=>({'sql':_0x302e0b[_0x2f9b41(0x1d9)],'params':[]})));_0x3472fe['forEach'](_0x4f1edb=>{const _0x521ea4=_0x2f9b41;if(_0x1dd9b1[_0x521ea4(0x19a)](_0x4f1edb[_0x521ea4(0x14a)],_0x1dd9b1['bBpDL']))_0x495583+=_0x4f1edb['count'];else _0x540fb4+=_0x4f1edb[_0x521ea4(0x182)];});const _0x216abd={'job_id':_0x29ba7a,'upload_id':_0x834abe[_0x2f9b41(0x1df)],'preview_job_id':_0x834abe[_0x2f9b41(0x1dc)],'status':'completed','progress':0x64,'created_at':_0x834abe['created_at'],'started_at':new Date()['toISOString'](),'completed_at':new Date()['toISOString'](),'result':{'total_rows':_0xf7f5d0[_0x2f9b41(0x1ba)],'inserted_rows':_0x495583,'updated_rows':_0x540fb4,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x368e60};await redisHelper['setJob'](_0x2f9b41(0x188)+_0x29ba7a,_0x216abd,0xe10),logger[_0x2f9b41(0x183)]({'event':_0x1dd9b1['lQDSP'],'jobId':_0x29ba7a,'insertedCount':_0x495583,'updatedCount':_0x540fb4},_0x1dd9b1['Pspju']);}catch(_0x45d585){logError(_0x45d585,{'event':_0x2f9b41(0x15f),'jobId':_0x29ba7a},'Commit\x20job\x20failed'),await redisHelper['setJob']('job:'+_0x29ba7a,{'job_id':_0x29ba7a,'upload_id':_0x834abe[_0x2f9b41(0x1df)],'preview_job_id':_0x834abe[_0x2f9b41(0x1dc)],'status':_0x2f9b41(0x1be),'progress':0x0,'error':_0x45d585[_0x2f9b41(0x149)],'created_at':_0x834abe['created_at'],'started_at':new Date()[_0x2f9b41(0x162)](),'completed_at':new Date()[_0x2f9b41(0x162)]()},0xe10);}}async['getJobStatus'](_0x18c2e2){const _0x2a3286=a0_0x345789,_0x25dad7={'Vlkuo':_0x2a3286(0x1bd)},_0x31c417=await redisHelper['getJob']('job:'+_0x18c2e2);if(!_0x31c417)return{'success':![],'error':_0x25dad7[_0x2a3286(0x16a)]};return{'success':!![],'data':_0x31c417};}}module[a0_0x345789(0x186)]=new ImportService();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x2350d9=a0_0x3402;function a0_0x49ba(){const _0xb907ef=['mtq0nKzTv2r3ra','CKX0Ewe','DMfSAwrHDgvvCMW','Aw5MBW','mta0ntfpyLLqq1y','z2v0','wM9ryKe','BgvUz3rO','mJe4nZmXmg12CKvYEa','zM9YrwfJAa','mteWneTiCgflyW','zM9YBwf0','zxHWB3j0CW','A2v5CW','DMfSAwrHDgvfBwfPBa','nefRChziqq','sw52ywXPzcbUDw1IzxiGzM9YBwf0','CgHVBMu','mtbbt1nUr2W','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','ndCZmJKWmLrYCLj0yG','sw52ywXPzcbLBwfPBcbMB3jTyxq','yMf0y2HwywXPzgf0zvjVD3m','C2v0','nuXltfr6BW','mZCWndq0vM9tBgLM','DMfSAwrHDgvqAg9Uzq','nJi2odC4ngTvu2XTwq','C1DJuMW','AM9PBG','DMfSAwrHDgvgAwvSzezVCM1HDa','BNvTyMvY','DxjS','qLvtr3O','q05bs2u','ntG0ndnvDfbuuhi','ChvZAa','mZGXmdu3CeHluwL2'];a0_0x49ba=function(){return _0xb907ef;};return a0_0x49ba();}(function(_0x47abfb,_0x2e1734){const _0x5769dd=a0_0x3402,_0x2313be=_0x47abfb();while(!![]){try{const _0x53a5c8=parseInt(_0x5769dd(0xfe))/0x1*(parseInt(_0x5769dd(0xff))/0x2)+-parseInt(_0x5769dd(0x10b))/0x3*(-parseInt(_0x5769dd(0xf5))/0x4)+-parseInt(_0x5769dd(0xee))/0x5+-parseInt(_0x5769dd(0xe6))/0x6*(-parseInt(_0x5769dd(0xea))/0x7)+parseInt(_0x5769dd(0x101))/0x8+parseInt(_0x5769dd(0xfa))/0x9*(-parseInt(_0x5769dd(0xf8))/0xa)+-parseInt(_0x5769dd(0x109))/0xb*(parseInt(_0x5769dd(0xf0))/0xc);if(_0x53a5c8===_0x2e1734)break;else _0x2313be['push'](_0x2313be['shift']());}catch(_0x3fd109){_0x2313be['push'](_0x2313be['shift']());}}}(a0_0x49ba,0xb5bd4));const {logger}=require('./logger');class ImportValidator{['validateRow'](_0x231ff3,_0x4d0439=[],_0x52c5a4={}){const _0x45d724=a0_0x3402,_0x325775={'MeMza':function(_0x31edbf,_0x2b29d1){return _0x31edbf===_0x2b29d1;},'CNAKe':'required','hzlmi':function(_0x4181bf,_0x1c565b){return _0x4181bf===_0x1c565b;}},_0x2ccf96=[];return _0x4d0439['forEach'](_0x579ed4=>{const _0xd9eca8=a0_0x3402,_0x234e23=_0x231ff3[_0x579ed4];(_0x234e23===null||_0x325775['MeMza'](_0x234e23,undefined)||_0x234e23==='')&&_0x2ccf96[_0xd9eca8(0x10a)]({'field':_0x579ed4,'type':_0x325775[_0xd9eca8(0x108)],'message':'Required\x20field\x20is\x20empty'});}),Object[_0x45d724(0xf3)](_0x52c5a4)['forEach'](_0x325c7e=>{const _0x215fb8=_0x45d724,_0x1a4f6c=_0x231ff3[_0x325c7e],_0x6676cc=_0x52c5a4[_0x325c7e];if(_0x1a4f6c===null||_0x325775['MeMza'](_0x1a4f6c,undefined)||_0x325775['hzlmi'](_0x1a4f6c,''))return;const _0xfa3a97=this[_0x215fb8(0x104)](_0x325c7e,_0x1a4f6c,_0x6676cc);_0xfa3a97&&_0x2ccf96['push'](_0xfa3a97);}),_0x2ccf96;}[a0_0x2350d9(0x104)](_0x128239,_0x440f8c,_0x121b8f){const _0x362093=a0_0x2350d9,_0x1b5572={'MaiVh':'email','ZoQbA':_0x362093(0xf7),'sWcRl':_0x362093(0x105)};switch(_0x121b8f){case _0x1b5572['MaiVh']:return this['validateEmail'](_0x128239,_0x440f8c);case _0x1b5572[_0x362093(0xec)]:return this['validatePhone'](_0x128239,_0x440f8c);case _0x362093(0x106):return this[_0x362093(0xe8)](_0x128239,_0x440f8c);case _0x1b5572[_0x362093(0x102)]:return this['validateNumber'](_0x128239,_0x440f8c);default:return null;}}[a0_0x2350d9(0xf4)](_0x5a9746,_0x13d846){const _0x31ef16=a0_0x2350d9,_0xe7c8={'BUSGz':function(_0x256637,_0x53a90d){return _0x256637(_0x53a90d);},'huEUG':_0x31ef16(0xfb)},_0x57e6a7=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x57e6a7['test'](_0xe7c8[_0x31ef16(0x107)](String,_0x13d846)))return{'field':_0x5a9746,'type':'format','message':_0xe7c8['huEUG']};return null;}[a0_0x2350d9(0x100)](_0x4a33b1,_0x5758bb){const _0x1862a7=a0_0x2350d9,_0x22b4a0={'COQqC':function(_0x4e86a7,_0x539388){return _0x4e86a7(_0x539388);},'hJsBM':function(_0x5edf39,_0x12ab34){return _0x5edf39<_0x12ab34;}},_0x2f61ef=_0x22b4a0['COQqC'](String,_0x5758bb)['replace'](/\s+/g,''),_0x1ab161=/^[\d\+\-\(\)]+$/;if(!_0x1ab161['test'](_0x2f61ef)||_0x22b4a0['hJsBM'](_0x2f61ef['length'],0x8))return{'field':_0x4a33b1,'type':_0x1862a7(0xf1),'message':'Invalid\x20phone\x20format'};return null;}[a0_0x2350d9(0xe8)](_0x40ea16,_0x3e255d){const _0x11d95c=a0_0x2350d9,_0x36d65f={'rLtya':'Invalid\x20URL\x20format'};try{return new URL(String(_0x3e255d)),null;}catch(_0x46a78c){return{'field':_0x40ea16,'type':_0x11d95c(0xf1),'message':_0x36d65f[_0x11d95c(0xe7)]};}}['validateNumber'](_0x518552,_0x410aab){const _0x1c0219=a0_0x2350d9,_0x18cbf9={'smpvA':_0x1c0219(0xf6)};if(isNaN(_0x410aab))return{'field':_0x518552,'type':'format','message':_0x18cbf9['smpvA']};return null;}['detectDuplicatesInFile'](_0xadbf39,_0x2f6986){const _0xa4fb28=new Map(),_0x1ec7bf=[];return _0xadbf39['forEach']((_0x4e1d34,_0x508940)=>{const _0x3bf775=a0_0x3402,_0x2f228d=_0x2f6986['map'](_0x2816d0=>_0x4e1d34[_0x2816d0])[_0x3bf775(0x103)]('|');_0xa4fb28['has'](_0x2f228d)?_0x1ec7bf[_0x3bf775(0x10a)]({'rowIndex':_0x508940,'duplicateOf':_0xa4fb28[_0x3bf775(0xeb)](_0x2f228d),'key':_0x2f228d}):_0xa4fb28[_0x3bf775(0xfd)](_0x2f228d,_0x508940);}),_0x1ec7bf;}[a0_0x2350d9(0xfc)](_0x285bda,_0x2cbe5a,_0x1a596c){const _0x235b5a=a0_0x2350d9,_0xd2dc9e={'nMvDk':function(_0x5d515e,_0x11aeb5){return _0x5d515e>_0x11aeb5;},'hfIdh':'batch_validation_complete'},_0x23fffb=[];return _0x285bda[_0x235b5a(0xef)]((_0x46361d,_0x52ac3f)=>{const _0x575441=_0x235b5a,_0x3441d9=this['validateRow'](_0x46361d,_0x2cbe5a,_0x1a596c);_0xd2dc9e['nMvDk'](_0x3441d9[_0x575441(0xed)],0x0)&&_0x23fffb['push']({'rowIndex':_0x52ac3f,'rowData':_0x46361d,'errors':_0x3441d9});}),logger[_0x235b5a(0xe9)]({'event':_0xd2dc9e['hfIdh'],'totalRows':_0x285bda[_0x235b5a(0xed)],'errorCount':_0x23fffb[_0x235b5a(0xed)]},_0x235b5a(0xf9)),_0x23fffb;}}function a0_0x3402(_0x26d91f,_0x4b63f9){_0x26d91f=_0x26d91f-0xe6;const _0x49ba73=a0_0x49ba();let _0x340202=_0x49ba73[_0x26d91f];if(a0_0x3402['rvMwQa']===undefined){var _0x5a2a00=function(_0x264993){const _0x11eea2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5adaa4='',_0x552022='';for(let _0x2fb02b=0x0,_0x2dc96d,_0x167a83,_0x1610d3=0x0;_0x167a83=_0x264993['charAt'](_0x1610d3++);~_0x167a83&&(_0x2dc96d=_0x2fb02b%0x4?_0x2dc96d*0x40+_0x167a83:_0x167a83,_0x2fb02b++%0x4)?_0x5adaa4+=String['fromCharCode'](0xff&_0x2dc96d>>(-0x2*_0x2fb02b&0x6)):0x0){_0x167a83=_0x11eea2['indexOf'](_0x167a83);}for(let _0x222d82=0x0,_0x42e2ac=_0x5adaa4['length'];_0x222d82<_0x42e2ac;_0x222d82++){_0x552022+='%'+('00'+_0x5adaa4['charCodeAt'](_0x222d82)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x552022);};a0_0x3402['uVuHeB']=_0x5a2a00,a0_0x3402['KDztUn']={},a0_0x3402['rvMwQa']=!![];}const _0x2778c6=_0x49ba73[0x0],_0x4413e8=_0x26d91f+_0x2778c6,_0x475a70=a0_0x3402['KDztUn'][_0x4413e8];return!_0x475a70?(_0x340202=a0_0x3402['uVuHeB'](_0x340202),a0_0x3402['KDztUn'][_0x4413e8]=_0x340202):_0x340202=_0x475a70,_0x340202;}module[a0_0x2350d9(0xf2)]=new ImportValidator();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a0_0x227b(_0x5e8f8f,_0xbdb207){_0x5e8f8f=_0x5e8f8f-0x1cd;const _0x4ac985=a0_0x4ac9();let _0x227b80=_0x4ac985[_0x5e8f8f];if(a0_0x227b['IUtGKH']===undefined){var _0x99e2b=function(_0x43709a){const _0xd3c3d9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c7198='',_0x3e2899='';for(let _0x517376=0x0,_0x41706d,_0x59922a,_0x3dbe7e=0x0;_0x59922a=_0x43709a['charAt'](_0x3dbe7e++);~_0x59922a&&(_0x41706d=_0x517376%0x4?_0x41706d*0x40+_0x59922a:_0x59922a,_0x517376++%0x4)?_0x5c7198+=String['fromCharCode'](0xff&_0x41706d>>(-0x2*_0x517376&0x6)):0x0){_0x59922a=_0xd3c3d9['indexOf'](_0x59922a);}for(let _0x5d0c9e=0x0,_0x5e9678=_0x5c7198['length'];_0x5d0c9e<_0x5e9678;_0x5d0c9e++){_0x3e2899+='%'+('00'+_0x5c7198['charCodeAt'](_0x5d0c9e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e2899);};a0_0x227b['UWpDam']=_0x99e2b,a0_0x227b['JyvKow']={},a0_0x227b['IUtGKH']=!![];}const _0x5f5345=_0x4ac985[0x0],_0x4130a1=_0x5e8f8f+_0x5f5345,_0x36dc8e=a0_0x227b['JyvKow'][_0x4130a1];return!_0x36dc8e?(_0x227b80=a0_0x227b['UWpDam'](_0x227b80),a0_0x227b['JyvKow'][_0x4130a1]=_0x227b80):_0x227b80=_0x36dc8e,_0x227b80;}function a0_0x4ac9(){const _0x5e1b70=['l2LTCg9YDc11CgXVywq','C3vJy2vZCW','zxHWB3j0CW','AM9PBG','zMLSDgvY','rvroBwC','Aw5JBhvKzxm','CNvXv3C','C3rHDhvZ','rMfPBgvKihrVignYzwf0zsbJB21TAxqGAM9I','mtK3mZq4mhrrCvjiuq','CgfYC2u','AxnbCNjHEq','DgfIBgvoyw1L','sw52ywXPzcb1ChnLCNqGA2v5CW','Aw1WB3j0x3jVDxrLC19YzwDPC3rLCMvK','uNjTvNe','mti1nZm0mK9VAwvpyG','Aw1WB3j0x3vWBg9Hzf9LCNjVCG','AgfUzgXLsw1WB3j0u3rHDhvZ','mZi0nde1mMXYqNzbvq','lI4VlI4VDxrPBhmVDxbSB2fKlwHHBMrSzxi','AgfUzgXLsw1WB3j0uhjLDMLLDW','tM8GzMLSzsb1CgXVywrLza','mta5odK1menOCKDkza','DxbZzxj0s2v5CW','rMfPBgvKihrVigDLDcbPBxbVCNqGC3rHDhvZ','sNjrqva','AgfUzgXLsw1WB3j0q29TBwL0','Cg9ZDa','l2LTCg9YDc1ZDgf0Dxm','rxzSue8','rMfPBgvKihrVignYzwf0zsbWCMv2Awv3igPVyG','DxbZzxj0tw9Kzq','CM1HwfC','BwvZC2fNzq','ndeXmty4CKvfDvv0','DxbZzxj0x2TLExnFCgfYC2vFzxjYB3i','rMfPBgvKihrVihbHCNnLihvWC2vYDeTLExmSihvZAw5NigrLzMf1Bhq','AgfUzgXLsw1WB3j0vxbSB2fK','n05Vq1zhqW','svPIsMK','DNrcthm','Aw1WB3j0x3n0yxr1C19LCNjVCG','nZa2odG1AxDlq1jc','zMLLBgrmywjLBhm','mtu2nde0meXqB1rJqq','ANnVBG','yM9KEq'];a0_0x4ac9=function(){return _0x5e1b70;};return a0_0x4ac9();}const a0_0x1bc812=a0_0x227b;(function(_0xb1a09a,_0x39a4b3){const _0x48232e=a0_0x227b,_0x2650be=_0xb1a09a();while(!![]){try{const _0x5d4105=-parseInt(_0x48232e(0x1d5))/0x1+-parseInt(_0x48232e(0x1fa))/0x2+parseInt(_0x48232e(0x1f3))/0x3+parseInt(_0x48232e(0x1df))/0x4+parseInt(_0x48232e(0x1dd))/0x5+parseInt(_0x48232e(0x1f6))/0x6+parseInt(_0x48232e(0x1d9))/0x7*(-parseInt(_0x48232e(0x1ec))/0x8);if(_0x5d4105===_0x39a4b3)break;else _0x2650be['push'](_0x2650be['shift']());}catch(_0x3b3e47){_0x2650be['push'](_0x2650be['shift']());}}}(a0_0x4ac9,0x458da));const importService=require('../../services/import-service'),uploadHandler=require(a0_0x1bc812(0x1f7)),{logger,logError}=require('../../utils/logger');class ImportHandler{static['registerRoutes'](_0x5709a8,_0x268db0,_0x5d632a,_0x417c6b){const _0x4b9392=a0_0x1bc812,_0x8b9688={'YrUvR':'Failed\x20to\x20upload\x20import\x20file','vtBLs':function(_0x5d9597,_0x53a3a3,_0x50dae3,_0x5b0516){return _0x5d9597(_0x53a3a3,_0x50dae3,_0x5b0516);},'IZbJi':'import_preview_error','RrmVq':function(_0xa85fe5,_0x281ffe,_0x4f28c8,_0x1828c4){return _0xa85fe5(_0x281ffe,_0x4f28c8,_0x1828c4);},'MFGxt':_0x4b9392(0x1eb),'ETNmg':_0x4b9392(0x1fc),'ruqWw':_0x4b9392(0x1f1)},_0x120eec='/api/'+_0x268db0+'/'+_0x5d632a;_0x5709a8['post'](_0x120eec+_0x4b9392(0x1e2),async(_0x4089a9,_0x2c417a)=>{const _0x1ee802=_0x4b9392;try{await this[_0x1ee802(0x1d8)](_0x4089a9,_0x2c417a,_0x417c6b,_0x268db0,_0x5d632a);}catch(_0x4639b0){logError(_0x4639b0,{'event':_0x1ee802(0x1f4)},_0x8b9688['YrUvR']),_0x2c417a['status'](0x1f4)['json']({'success':![],'error':_0x4639b0['message']});}}),_0x5709a8[_0x4b9392(0x1ce)](_0x120eec+'/import-preview',async(_0x1167ae,_0x370549)=>{const _0xa464b8=_0x4b9392;try{await this[_0xa464b8(0x1f8)](_0x1167ae,_0x370549);}catch(_0xf63774){_0x8b9688[_0xa464b8(0x1db)](logError,_0xf63774,{'event':_0x8b9688[_0xa464b8(0x1da)]},_0xa464b8(0x1d1)),_0x370549[_0xa464b8(0x1ea)](0x1f4)[_0xa464b8(0x1e0)]({'success':![],'error':_0xf63774[_0xa464b8(0x1d4)]});}}),_0x5709a8[_0x4b9392(0x1ce)](_0x120eec+'/import-commit',async(_0x271903,_0x30724c)=>{const _0x5b4f82=_0x4b9392;try{await this[_0x5b4f82(0x1cd)](_0x271903,_0x30724c);}catch(_0x1b8ae1){_0x8b9688[_0x5b4f82(0x1f2)](logError,_0x1b8ae1,{'event':'import_commit_error'},_0x8b9688['MFGxt']),_0x30724c[_0x5b4f82(0x1ea)](0x1f4)[_0x5b4f82(0x1e0)]({'success':![],'error':_0x1b8ae1[_0x5b4f82(0x1d4)]});}}),_0x5709a8['get'](_0x120eec+_0x4b9392(0x1cf),async(_0xeb4360,_0x257f7e)=>{const _0x66cb2e=_0x4b9392;try{await this[_0x66cb2e(0x1f5)](_0xeb4360,_0x257f7e);}catch(_0x2557af){logError(_0x2557af,{'event':_0x66cb2e(0x1dc)},_0x8b9688[_0x66cb2e(0x1e7)]),_0x257f7e['status'](0x1f4)['json']({'success':![],'error':_0x2557af[_0x66cb2e(0x1d4)]});}}),logger['info']({'event':_0x8b9688[_0x4b9392(0x1e9)],'module':_0x268db0,'endpoint':_0x5d632a,'table':_0x417c6b['tableName']},'Import\x20routes\x20registered\x20for\x20'+_0x268db0+'/'+_0x5d632a);}static async['handleImportUpload'](_0x187a1c,_0x3baca6,_0x43f695,_0x4388df,_0x8827af){const _0x4b73df=a0_0x1bc812,_0x3f66cf={'EvlPO':_0x4b73df(0x1f9),'rmaXW':function(_0xa5431f,_0x34e73e){return _0xa5431f>_0x34e73e;},'DsdmP':_0x4b73df(0x1f0)},_0x1c2e2b=uploadHandler['getUploadMiddleware']();_0x1c2e2b(_0x187a1c,_0x3baca6,async _0x296e95=>{const _0x8e9b53=_0x4b73df;if(_0x296e95)return _0x3baca6[_0x8e9b53(0x1ea)](0x190)[_0x8e9b53(0x1e0)]({'success':![],'error':_0x296e95[_0x8e9b53(0x1d4)]});if(!_0x187a1c['file'])return _0x3baca6['status'](0x190)[_0x8e9b53(0x1e0)]({'success':![],'error':_0x3f66cf[_0x8e9b53(0x1d0)]});try{const _0x1f9151=_0x187a1c['body'][_0x8e9b53(0x1d2)]||'update_existing';let _0x7a0350=_0x43f695[_0x8e9b53(0x1fb)];if(_0x187a1c['body'][_0x8e9b53(0x1fb)])try{_0x7a0350=JSON[_0x8e9b53(0x1ed)](_0x187a1c[_0x8e9b53(0x1e1)]['upsertKeys']);}catch(_0x2ec31f){logger['warn']({'event':_0x8e9b53(0x1d6),'error':_0x2ec31f['message']},_0x8e9b53(0x1d7));}const _0x296aaa=_0x43f695['fieldName']||[];if(Array[_0x8e9b53(0x1ee)](_0x7a0350)){const _0x1f3fab=_0x7a0350[_0x8e9b53(0x1e6)](_0x2433e9=>!_0x296aaa[_0x8e9b53(0x1e8)](_0x2433e9));if(_0x3f66cf[_0x8e9b53(0x1d3)](_0x1f3fab['length'],0x0))return _0x3baca6['status'](0x190)['json']({'success':![],'error':_0x3f66cf['DsdmP'],'message':'Keys\x20not\x20allowed:\x20'+_0x1f3fab[_0x8e9b53(0x1e5)](',\x20'),'validFields':_0x296aaa});}const _0x32b6cd={'moduleName':_0x4388df,'endpointName':_0x8827af,'tableName':_0x43f695[_0x8e9b53(0x1ef)],'primaryKey':_0x43f695['primaryKey'],'fieldName':_0x43f695['fieldName'],'fieldLabels':_0x43f695[_0x8e9b53(0x1de)]||{},'columnFormats':_0x43f695['columnFormats']||{},'upsertKeys':_0x7a0350,'upsertStrategy':_0x1f9151,'requiredFields':_0x43f695['requiredFields']||[],'validations':_0x43f695['validations']||{},'lookupFields':_0x43f695['lookupFields']||{},'excludeFromImport':_0x43f695['excludeFromImport']||[],'chunkSize':_0x43f695['chunkSize']||0x64},_0x47a987=await importService['uploadFile'](_0x187a1c['file'],_0x32b6cd);_0x3baca6['json']({'success':!![],'data':_0x47a987});}catch(_0x4849be){logError(_0x4849be,{'event':'import_upload_process_error'},'Failed\x20to\x20process\x20upload'),_0x3baca6[_0x8e9b53(0x1ea)](0x1f4)['json']({'success':![],'error':_0x4849be[_0x8e9b53(0x1d4)]});}});}static async['handleImportPreview'](_0x37f5da,_0x5931a9){const _0xffbc8a=a0_0x1bc812,_0x4e1ba8={'JrQAP':'upload_id\x20is\x20required'},{upload_id:_0x140b6a}=_0x37f5da[_0xffbc8a(0x1e1)];if(!_0x140b6a)return _0x5931a9['status'](0x190)[_0xffbc8a(0x1e0)]({'success':![],'error':_0x4e1ba8[_0xffbc8a(0x1fd)]});try{const _0xfcfa58=await importService['createPreviewJob'](_0x140b6a);_0x5931a9[_0xffbc8a(0x1e0)]({'success':!![],'data':_0xfcfa58});}catch(_0x360916){_0x5931a9[_0xffbc8a(0x1ea)](0x1f4)[_0xffbc8a(0x1e0)]({'success':![],'error':_0x360916['message']});}}static async[a0_0x1bc812(0x1cd)](_0x22c763,_0x2afcd4){const _0x855f9c=a0_0x1bc812,_0x4b16df={'hlDEH':'preview_job_id\x20is\x20required'},{preview_job_id:_0x4dfc1a}=_0x22c763['body'];if(!_0x4dfc1a)return _0x2afcd4[_0x855f9c(0x1ea)](0x190)[_0x855f9c(0x1e0)]({'success':![],'error':_0x4b16df['hlDEH']});try{const _0x1d2eea=await importService['createCommitJob'](_0x4dfc1a);_0x2afcd4[_0x855f9c(0x1e0)]({'success':!![],'data':_0x1d2eea});}catch(_0x275cc4){_0x2afcd4[_0x855f9c(0x1ea)](0x1f4)['json']({'success':![],'error':_0x275cc4['message']});}}static async[a0_0x1bc812(0x1f5)](_0x45842d,_0x3c95aa){const _0x472798=a0_0x1bc812,_0xad3f48={'sYnWu':'job_id\x20is\x20required'},{job_id:_0x40f434}=_0x45842d['query'];if(!_0x40f434)return _0x3c95aa[_0x472798(0x1ea)](0x190)['json']({'success':![],'error':_0xad3f48['sYnWu']});try{const _0x50b60e=await importService['getJobStatus'](_0x40f434);if(!_0x50b60e[_0x472798(0x1e3)])return _0x3c95aa['status'](0x194)['json'](_0x50b60e);_0x3c95aa['json'](_0x50b60e);}catch(_0x2f72f2){_0x3c95aa['status'](0x1f4)[_0x472798(0x1e0)]({'success':![],'error':_0x2f72f2['message']});}}}module[a0_0x1bc812(0x1e4)]=ImportHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4b2992=a0_0x1dd8;(function(_0x3d82e3,_0x39f402){const _0xe847c4=a0_0x1dd8,_0x26c46c=_0x3d82e3();while(!![]){try{const _0x4f820e=parseInt(_0xe847c4(0x1f5))/0x1+-parseInt(_0xe847c4(0x1e9))/0x2+-parseInt(_0xe847c4(0x1fe))/0x3*(parseInt(_0xe847c4(0x208))/0x4)+-parseInt(_0xe847c4(0x1fd))/0x5*(parseInt(_0xe847c4(0x20c))/0x6)+-parseInt(_0xe847c4(0x1d7))/0x7*(parseInt(_0xe847c4(0x1ef))/0x8)+-parseInt(_0xe847c4(0x1ee))/0x9+parseInt(_0xe847c4(0x1d6))/0xa*(parseInt(_0xe847c4(0x1ff))/0xb);if(_0x4f820e===_0x39f402)break;else _0x26c46c['push'](_0x26c46c['shift']());}catch(_0x14e2a5){_0x26c46c['push'](_0x26c46c['shift']());}}}(a0_0x5541,0x3de2c));const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':a0_0x4b2992(0x1d4),'MYSQL':a0_0x4b2992(0x1e2),'SQLSERVER':'sqlserver','ORACLE':'oracle','SQLITE':'sqlite'};function a0_0x1dd8(_0x10ae39,_0x400222){_0x10ae39=_0x10ae39-0x1c5;const _0x554163=a0_0x5541();let _0x1dd8e2=_0x554163[_0x10ae39];if(a0_0x1dd8['PKBZWK']===undefined){var _0x1af695=function(_0x3d55c8){const _0x3befe0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2dc8fd='',_0x1119b4='';for(let _0x4fff17=0x0,_0x342dcb,_0x5e73ca,_0x18e504=0x0;_0x5e73ca=_0x3d55c8['charAt'](_0x18e504++);~_0x5e73ca&&(_0x342dcb=_0x4fff17%0x4?_0x342dcb*0x40+_0x5e73ca:_0x5e73ca,_0x4fff17++%0x4)?_0x2dc8fd+=String['fromCharCode'](0xff&_0x342dcb>>(-0x2*_0x4fff17&0x6)):0x0){_0x5e73ca=_0x3befe0['indexOf'](_0x5e73ca);}for(let _0x5ae1ca=0x0,_0x4b7e4c=_0x2dc8fd['length'];_0x5ae1ca<_0x4b7e4c;_0x5ae1ca++){_0x1119b4+='%'+('00'+_0x2dc8fd['charCodeAt'](_0x5ae1ca)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1119b4);};a0_0x1dd8['JzNzFB']=_0x1af695,a0_0x1dd8['wJuwHt']={},a0_0x1dd8['PKBZWK']=!![];}const _0x5a0fe8=_0x554163[0x0],_0x4084fd=_0x10ae39+_0x5a0fe8,_0x16c33b=a0_0x1dd8['wJuwHt'][_0x4084fd];return!_0x16c33b?(_0x1dd8e2=a0_0x1dd8['JzNzFB'](_0x1dd8e2),a0_0x1dd8['wJuwHt'][_0x4084fd]=_0x1dd8e2):_0x1dd8e2=_0x16c33b,_0x1dd8e2;}class UpsertBuilder{[a0_0x4b2992(0x1cd)](){const _0x209888=a0_0x4b2992,_0x17023f={'CfjwO':_0x209888(0x1c7),'RAXaI':'postgresql'},_0x1252b4=(process[_0x209888(0x212)][_0x209888(0x1d9)]||_0x209888(0x1d4))['toLowerCase'](),_0x2eca6d=Object['values'](DB_TYPES);if(!_0x2eca6d['includes'](_0x1252b4))return logger[_0x209888(0x202)]({'event':_0x17023f['CfjwO'],'provided':_0x1252b4,'fallback':_0x17023f['RAXaI']},'Invalid\x20DB_TYPE:\x20'+_0x1252b4+_0x209888(0x215)),DB_TYPES['POSTGRESQL'];return _0x1252b4;}['formatDateValue'](_0x50ff62,_0x59c992,_0x10a2c7=![]){const _0x3efbdf=a0_0x4b2992,_0x455484={'WPYmt':'NULL::DATE','jCxXd':'NULL'};if(_0x10a2c7)switch(_0x59c992){case DB_TYPES[_0x3efbdf(0x211)]:return _0x455484['WPYmt'];case DB_TYPES['MYSQL']:return _0x455484['jCxXd'];case DB_TYPES[_0x3efbdf(0x1f3)]:return _0x455484['jCxXd'];case DB_TYPES['SQLSERVER']:return _0x455484[_0x3efbdf(0x1e0)];case DB_TYPES['ORACLE']:return'NULL';default:return'NULL::DATE';}switch(_0x59c992){case DB_TYPES[_0x3efbdf(0x211)]:return _0x50ff62+_0x3efbdf(0x214);case DB_TYPES[_0x3efbdf(0x1d5)]:return _0x50ff62;case DB_TYPES['SQLITE']:return _0x50ff62;case DB_TYPES['SQLSERVER']:return'CAST('+_0x50ff62+_0x3efbdf(0x1cb);case DB_TYPES['ORACLE']:return'TO_DATE('+_0x50ff62+_0x3efbdf(0x209);default:return _0x50ff62+_0x3efbdf(0x214);}}['buildEscapeFunction'](_0x5b5f42={}){const _0x1334a5=a0_0x4b2992,_0x38aeae={'DVFaD':function(_0x199887,_0x28c185){return _0x199887===_0x28c185;},'awEDq':function(_0x4a43d0,_0x2cb77e){return _0x4a43d0===_0x2cb77e;},'GRgYD':function(_0x42bbdf,_0x5237a5){return _0x42bbdf===_0x5237a5;},'XmFOL':'date','AKucD':_0x1334a5(0x203),'COpGb':_0x1334a5(0x1f1),'xtZEC':function(_0x3d47da,_0x3e3304){return _0x3d47da===_0x3e3304;}},_0x41bc3b=this[_0x1334a5(0x1cd)]();return(_0x5d7def,_0x3a7735)=>{const _0x5881ae=_0x1334a5,_0x40baea=_0x5b5f42[_0x3a7735];if(_0x38aeae['DVFaD'](_0x5d7def,null)||_0x38aeae[_0x5881ae(0x213)](_0x5d7def,undefined)){if(_0x40baea&&_0x38aeae[_0x5881ae(0x1cc)](_0x40baea['type'],_0x38aeae['XmFOL']))return this['formatDateValue'](null,_0x41bc3b,!![]);return _0x38aeae['AKucD'];}if(_0x38aeae[_0x5881ae(0x1cc)](typeof _0x5d7def,_0x38aeae[_0x5881ae(0x20b)])){const _0x99b94='\x27'+_0x5d7def['replace'](/'/g,'\x27\x27')+'\x27';if(_0x40baea&&_0x40baea['type']===_0x5881ae(0x1d8))return this[_0x5881ae(0x21b)](_0x99b94,_0x41bc3b,![]);return _0x99b94;}if(typeof _0x5d7def==='number')return _0x5d7def;if(_0x38aeae[_0x5881ae(0x213)](typeof _0x5d7def,'boolean'))return _0x5d7def;const _0x29427f='\x27'+String(_0x5d7def)['replace'](/'/g,'\x27\x27')+'\x27';if(_0x40baea&&_0x38aeae[_0x5881ae(0x1de)](_0x40baea['type'],_0x38aeae[_0x5881ae(0x206)]))return this[_0x5881ae(0x21b)](_0x29427f,_0x41bc3b,![]);return _0x29427f;};}['buildBatchInsert'](_0x21c04d,_0x1f9905,_0x25be38,_0x4b458b={}){const _0x3c0c29=a0_0x4b2992,_0xe6cd5={'YYawc':function(_0x2c02ac,_0x296597){return _0x2c02ac===_0x296597;}},_0x3c5f2c=this['getDatabaseType']();if(_0xe6cd5['YYawc'](_0x3c5f2c,DB_TYPES['ORACLE']))return this['_buildBatchInsertOracle'](_0x21c04d,_0x1f9905,_0x25be38,_0x4b458b);return this[_0x3c0c29(0x1d0)](_0x21c04d,_0x1f9905,_0x25be38,_0x4b458b);}[a0_0x4b2992(0x1d0)](_0x354173,_0xff7633,_0x77601,_0x5e6b57={}){const _0xe7a597=a0_0x4b2992,_0x1de4d7={'Fixab':function(_0x9967d6,_0x438df3){return _0x9967d6===_0x438df3;},'QioOM':_0xe7a597(0x1e6),'OUrcv':'batch_insert_built','HcpXJ':_0xe7a597(0x1d4)};if(_0x1de4d7[_0xe7a597(0x1f7)](_0x354173['length'],0x0))return{'query':null,'values':[]};const _0x3bc5a4=this['buildEscapeFunction'](_0x5e6b57),_0x24639a=_0x354173['map'](_0x560a79=>{const _0x4b01a9=_0xe7a597,_0xddab45=_0x77601[_0x4b01a9(0x1d3)](_0x23a137=>_0x3bc5a4(_0x560a79[_0x23a137],_0x23a137));return'('+_0xddab45['join'](',\x20')+')';}),_0x52a8db='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0xff7633+'\x20('+_0x77601['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x24639a['join'](_0x1de4d7['QioOM'])+'\x0a\x20\x20\x20\x20';return logger[_0xe7a597(0x1f0)]({'event':_0x1de4d7[_0xe7a597(0x1da)],'tableName':_0xff7633,'rowCount':_0x354173[_0xe7a597(0x1fc)],'dbType':_0x1de4d7[_0xe7a597(0x1f8)]},_0xe7a597(0x1fb)),{'query':_0x52a8db,'values':[]};}[a0_0x4b2992(0x1d1)](_0x592466,_0x349550,_0x2bae30,_0x4188ab={}){const _0x4600a6=a0_0x4b2992,_0x10527b={'lFYNy':function(_0x51f966,_0xc21f29){return _0x51f966===_0xc21f29;},'GKIxi':'oracle','lSTll':'Batch\x20INSERT\x20query\x20built\x20(Oracle)'};if(_0x10527b['lFYNy'](_0x592466[_0x4600a6(0x1fc)],0x0))return{'query':null,'values':[]};const _0x3ae27f=this['buildEscapeFunction'](_0x4188ab),_0x46eb55=_0x592466['map'](_0x1e89f9=>{const _0x456bc9=_0x4600a6,_0x4a8df8=_0x2bae30[_0x456bc9(0x1d3)](_0x5c5aee=>_0x3ae27f(_0x1e89f9[_0x5c5aee],_0x5c5aee));return _0x456bc9(0x205)+_0x349550+'\x20('+_0x2bae30['join'](',\x20')+')\x20VALUES\x20('+_0x4a8df8[_0x456bc9(0x1df)](',\x20')+')';}),_0x5559dd=_0x4600a6(0x218)+_0x46eb55[_0x4600a6(0x1df)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':_0x4600a6(0x1db),'tableName':_0x349550,'rowCount':_0x592466['length'],'dbType':_0x10527b[_0x4600a6(0x1eb)]},_0x10527b[_0x4600a6(0x1f6)]),{'query':_0x5559dd,'values':[]};}['buildBatchUpdate'](_0x2008f1,_0x190297,_0x5a1226,_0x41b438,_0x5ea474,_0xd1d63={}){const _0x7c48c0=a0_0x4b2992,_0x2bc42a={'QRVqw':function(_0x171b13,_0x2d4c98){return _0x171b13===_0x2d4c98;},'yeolM':function(_0x26030e,_0x47c43a){return _0x26030e===_0x47c43a;}},_0x24dee9=this['getDatabaseType']();if(_0x2bc42a['QRVqw'](_0x24dee9,DB_TYPES[_0x7c48c0(0x1d2)]))return this[_0x7c48c0(0x219)](_0x2008f1,_0x190297,_0x5a1226,_0x41b438,_0x5ea474,_0xd1d63);if(_0x2bc42a['yeolM'](_0x24dee9,DB_TYPES['MYSQL']))return this['_buildBatchUpdateMysql'](_0x2008f1,_0x190297,_0x5a1226,_0x41b438,_0x5ea474,_0xd1d63);return this['_buildBatchUpdatePostgres'](_0x2008f1,_0x190297,_0x5a1226,_0x41b438,_0x5ea474,_0xd1d63);}['_buildBatchUpdatePostgres'](_0x27980b,_0x172519,_0x51b2a6,_0x588cdc,_0x5bcb86,_0x32afd2={}){const _0x3cf4e3=a0_0x4b2992,_0x14eefc={'YbXxZ':function(_0xf2a6df,_0x583d94){return _0xf2a6df===_0x583d94;},'JfGmB':function(_0x542e1a,_0x31eabd){return _0x542e1a===_0x31eabd;},'NuqKM':'batch_update_no_columns','gXroN':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','qvIqV':'\x20AND\x20','MhapC':'postgresql'};if(_0x14eefc['YbXxZ'](_0x27980b[_0x3cf4e3(0x1fc)],0x0))return{'query':null,'values':[]};const _0x29bc29=this[_0x3cf4e3(0x1e4)](_0x32afd2),_0x32a293=_0x51b2a6[_0x3cf4e3(0x201)](_0x1f7209=>!_0x5bcb86[_0x3cf4e3(0x1e1)](_0x1f7209)&&_0x1f7209!==_0x588cdc);if(_0x14eefc[_0x3cf4e3(0x1ca)](_0x32a293['length'],0x0))return logger['warn']({'event':_0x14eefc['NuqKM'],'tableName':_0x172519},_0x14eefc['gXroN']),{'query':null,'values':[]};const _0x5fb4f9=_0x27980b[_0x3cf4e3(0x1d3)](_0x4bc33f=>{const _0x30664e=_0x3cf4e3,_0x6abe6b=[..._0x5bcb86,..._0x32a293],_0x72097=_0x6abe6b[_0x30664e(0x1d3)](_0x32542f=>_0x29bc29(_0x4bc33f[_0x32542f],_0x32542f));return'('+_0x72097[_0x30664e(0x1df)](',\x20')+')';}),_0x440fd6=_0x32a293[_0x3cf4e3(0x1d3)](_0x39ee38=>_0x39ee38+'\x20=\x20v.'+_0x39ee38)['join'](_0x3cf4e3(0x20d)),_0x536312=_0x5bcb86['map'](_0x3a9829=>'t.'+_0x3a9829+'\x20=\x20v.'+_0x3a9829)['join'](_0x14eefc['qvIqV']),_0x3494ad=_0x3cf4e3(0x1f9)+_0x172519+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x440fd6+_0x3cf4e3(0x1e8)+_0x5fb4f9['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+_0x3cf4e3(0x204)+[..._0x5bcb86,..._0x32a293][_0x3cf4e3(0x1df)](',\x20')+_0x3cf4e3(0x20a)+_0x536312+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x172519,'rowCount':_0x27980b['length'],'updateColumns':_0x32a293[_0x3cf4e3(0x1fc)],'dbType':_0x14eefc[_0x3cf4e3(0x1f4)]},'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'),{'query':_0x3494ad,'values':[]};}[a0_0x4b2992(0x219)](_0x575ac4,_0x153ce9,_0x51f160,_0x511b02,_0x4476c9,_0x3b9b89={}){const _0x591f57=a0_0x4b2992,_0x3ebd81={'NJjUr':function(_0x11694e,_0x1d4444,_0x1455f2){return _0x11694e(_0x1d4444,_0x1455f2);},'Idsds':function(_0x36ffc5,_0x5300db){return _0x36ffc5===_0x5300db;},'ToXDB':function(_0x3ad5fd,_0x26b828){return _0x3ad5fd===_0x26b828;},'kfYlw':_0x591f57(0x1c9),'oQvjH':_0x591f57(0x1cf),'DLUlk':'batch_update_built'};if(_0x3ebd81['ToXDB'](_0x575ac4[_0x591f57(0x1fc)],0x0))return{'query':null,'values':[]};const _0x24d5e1=this[_0x591f57(0x1e4)](_0x3b9b89),_0xef5eab=_0x51f160[_0x591f57(0x201)](_0x41fd1b=>!_0x4476c9['includes'](_0x41fd1b)&&_0x41fd1b!==_0x511b02);if(_0x3ebd81['Idsds'](_0xef5eab['length'],0x0))return logger['warn']({'event':_0x3ebd81['kfYlw'],'tableName':_0x153ce9},_0x591f57(0x207)),{'query':null,'values':[]};const _0x2cef9d=[..._0x4476c9,..._0xef5eab],_0xea9138=_0x575ac4['map']((_0x13374d,_0x11e149)=>{const _0x218c94=_0x591f57,_0x5257e8=_0x2cef9d['map'](_0x1c2161=>{const _0x349627=a0_0x1dd8,_0x2c41cc=_0x3ebd81[_0x349627(0x1dc)](_0x24d5e1,_0x13374d[_0x1c2161],_0x1c2161);return _0x3ebd81[_0x349627(0x1e7)](_0x11e149,0x0)?_0x2c41cc+'\x20AS\x20'+_0x1c2161:_0x2c41cc;});return _0x218c94(0x217)+_0x5257e8['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x690830=_0xef5eab[_0x591f57(0x1d3)](_0x44ad6d=>'t.'+_0x44ad6d+_0x591f57(0x200)+_0x44ad6d)[_0x591f57(0x1df)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x47ec1c=_0x4476c9['map'](_0x19ff00=>'t.'+_0x19ff00+'\x20=\x20v.'+_0x19ff00)[_0x591f57(0x1df)](_0x591f57(0x1fa)),_0x3c997c=_0x591f57(0x1f2)+_0x153ce9+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0xea9138['join'](_0x3ebd81[_0x591f57(0x1ce)])+_0x591f57(0x1c5)+_0x47ec1c+_0x591f57(0x1c8)+_0x690830+'\x0a\x20\x20\x20\x20';return logger[_0x591f57(0x1f0)]({'event':_0x3ebd81[_0x591f57(0x1ec)],'tableName':_0x153ce9,'rowCount':_0x575ac4['length'],'updateColumns':_0xef5eab['length'],'dbType':'oracle'},_0x591f57(0x210)),{'query':_0x3c997c,'values':[]};}[a0_0x4b2992(0x21c)](_0x410b6f,_0x5a6738,_0x561cf5,_0x4147d8,_0x153d9c,_0x1a3b8a={}){const _0xaee02d=a0_0x4b2992,_0x48049a={'lHCRX':'batch_update_no_columns','fUFXv':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','oWFJm':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','gvLKv':'batch_update_built','YRcte':'mysql','ggOfu':'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'};if(_0x410b6f[_0xaee02d(0x1fc)]===0x0)return{'query':null,'values':[]};const _0x12bf65=this['buildEscapeFunction'](_0x1a3b8a),_0x47af70=_0x561cf5['filter'](_0x3d93c3=>!_0x153d9c[_0xaee02d(0x1e1)](_0x3d93c3)&&_0x3d93c3!==_0x4147d8);if(_0x47af70[_0xaee02d(0x1fc)]===0x0)return logger['warn']({'event':_0x48049a['lHCRX'],'tableName':_0x5a6738},_0x48049a[_0xaee02d(0x21a)]),{'query':null,'values':[]};const _0x409725=[...new Set([..._0x153d9c,..._0x47af70])],_0x1c1114=_0x410b6f[_0xaee02d(0x1d3)](_0x28410b=>{const _0x2c0271=_0xaee02d,_0x36f395=_0x409725['map'](_0x3b4c62=>_0x12bf65(_0x28410b[_0x3b4c62],_0x3b4c62));return'('+_0x36f395[_0x2c0271(0x1df)](',\x20')+')';}),_0x1afe43=_0x47af70[_0xaee02d(0x1d3)](_0x4edc72=>_0x4edc72+'\x20=\x20VALUES('+_0x4edc72+')')[_0xaee02d(0x1df)](_0x48049a['oWFJm']),_0x1301a2='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x5a6738+'\x20('+_0x409725['join'](',\x20')+_0xaee02d(0x1c6)+_0x1c1114[_0xaee02d(0x1df)](_0xaee02d(0x1e3))+_0xaee02d(0x20e)+_0x1afe43+_0xaee02d(0x20f);return logger[_0xaee02d(0x1f0)]({'event':_0x48049a[_0xaee02d(0x216)],'tableName':_0x5a6738,'rowCount':_0x410b6f[_0xaee02d(0x1fc)],'updateColumns':_0x47af70['length'],'dbType':_0x48049a[_0xaee02d(0x1ea)]},_0x48049a[_0xaee02d(0x1ed)]),{'query':_0x1301a2,'values':[]};}[a0_0x4b2992(0x1e5)](_0x42e8d3,_0x132c9a=0x64){const _0x2009fe=a0_0x4b2992,_0x57cac0={'nthLt':function(_0x516cf8,_0x1c9ea3){return _0x516cf8+_0x1c9ea3;}},_0x547df6=[];for(let _0x44b3fb=0x0;_0x44b3fb<_0x42e8d3['length'];_0x44b3fb+=_0x132c9a){_0x547df6['push'](_0x42e8d3['slice'](_0x44b3fb,_0x57cac0[_0x2009fe(0x1dd)](_0x44b3fb,_0x132c9a)));}return _0x547df6;}}module['exports']=new UpsertBuilder();function a0_0x5541(){const _0x40fe16=['rejFvfLqrq','t1vYy3y','yMf0y2HFAw5Zzxj0x2j1AwX0','tKPQvxi','BNrOthq','EhrArum','AM9PBG','AKn4wgq','Aw5JBhvKzxm','BxLZCwW','laOGicaGicaGia','yNvPBgrfC2nHCgvgDw5JDgLVBG','y2H1BMTsB3DZ','laOGicaGicaG','swrZzhm','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','nJG3odqWqvvUwxbH','wvjJDgu','r0TjEgK','reXvBgS','z2DpzNu','mJKWnJeWmezNvMLXta','mtu1mZzPzg1LtLK','zgvIDwC','C3rYAw5N','cIaGicaGie1fuKDfieLove8G','u1fmsvrf','twHHCem','nJeWnwTMtLPotW','BfnuBgW','rML4ywi','sgnWweO','cIaGicaGifvqrefursa','ieforca','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','BgvUz3rO','mta5mJa5nvrbCwPOBa','mtGZndC3AwfevLjd','mtfSAKz1wM8','id0GDI4','zMLSDgvY','D2fYBG','tLvmta','cIaGicaGicKGqvmGDIG','icbjtLrpia','wg1gt0W','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','mtjIuwDRBMK','lcaNwvLzws1nts1ercCP','kqOGicaGicbxsevsrsa','q09Wr2i','nKH4wujXwa','laOGicaGicaGica','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','cIaGica','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','ue9tveDsrvnrta','zw52','yxDfrhe','oJPeqvrf','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','z3zms3y','icaGifnftevdvca','su5trvjuiefmtaO','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','zLvgwhy','zM9YBwf0rgf0zvzHBhvL','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','cIaGicaGicKGDGOGicaGicbptIaO','kqOGicaGicbwquXvrvmG','Aw52ywXPzf9KyL90ExbL','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','sMzhBui','ieftierbveuP','r1jNwuq','z2v0rgf0ywjHC2vuExbL','B1f2AKG','cIaGicbvtKLptIbbteWk','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','t1jbq0Xf','BwfW','Cg9ZDgDYzxnXBa','tvLtuuW','mtq1nZG2mtblr05ir3a','nteXCvHQuuvi','zgf0zq'];a0_0x5541=function(){return _0x40fe16;};return a0_0x5541();}
|
|
1
|
+
const a0_0x539df6=a0_0xe8e6;(function(_0x67064b,_0x51b92e){const _0x2a5b9b=a0_0xe8e6,_0x24225f=_0x67064b();while(!![]){try{const _0xd45b2d=parseInt(_0x2a5b9b(0xa3))/0x1*(parseInt(_0x2a5b9b(0xc0))/0x2)+-parseInt(_0x2a5b9b(0xbb))/0x3*(parseInt(_0x2a5b9b(0xb0))/0x4)+parseInt(_0x2a5b9b(0x95))/0x5+parseInt(_0x2a5b9b(0xa8))/0x6+parseInt(_0x2a5b9b(0xda))/0x7+parseInt(_0x2a5b9b(0x9c))/0x8+-parseInt(_0x2a5b9b(0x8f))/0x9;if(_0xd45b2d===_0x51b92e)break;else _0x24225f['push'](_0x24225f['shift']());}catch(_0x48da0f){_0x24225f['push'](_0x24225f['shift']());}}}(a0_0x4b0f,0x3f850));function a0_0xe8e6(_0x55474a,_0x32b555){_0x55474a=_0x55474a-0x8d;const _0x4b0f53=a0_0x4b0f();let _0xe8e6ad=_0x4b0f53[_0x55474a];if(a0_0xe8e6['FqmjIA']===undefined){var _0x3d894c=function(_0x5f19fc){const _0x4cc800='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2de94d='',_0x1ecb04='';for(let _0x3bf50f=0x0,_0x3697eb,_0xd2ef6d,_0x19bc1f=0x0;_0xd2ef6d=_0x5f19fc['charAt'](_0x19bc1f++);~_0xd2ef6d&&(_0x3697eb=_0x3bf50f%0x4?_0x3697eb*0x40+_0xd2ef6d:_0xd2ef6d,_0x3bf50f++%0x4)?_0x2de94d+=String['fromCharCode'](0xff&_0x3697eb>>(-0x2*_0x3bf50f&0x6)):0x0){_0xd2ef6d=_0x4cc800['indexOf'](_0xd2ef6d);}for(let _0x57cdcb=0x0,_0x5b1b8c=_0x2de94d['length'];_0x57cdcb<_0x5b1b8c;_0x57cdcb++){_0x1ecb04+='%'+('00'+_0x2de94d['charCodeAt'](_0x57cdcb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ecb04);};a0_0xe8e6['paKrwx']=_0x3d894c,a0_0xe8e6['iZTLsD']={},a0_0xe8e6['FqmjIA']=!![];}const _0x537d7f=_0x4b0f53[0x0],_0xf887d6=_0x55474a+_0x537d7f,_0x4d4e8b=a0_0xe8e6['iZTLsD'][_0xf887d6];return!_0x4d4e8b?(_0xe8e6ad=a0_0xe8e6['paKrwx'](_0xe8e6ad),a0_0xe8e6['iZTLsD'][_0xf887d6]=_0xe8e6ad):_0xe8e6ad=_0x4d4e8b,_0xe8e6ad;}const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':'postgresql','MYSQL':'mysql','SQLSERVER':'sqlserver','ORACLE':a0_0x539df6(0xba),'SQLITE':a0_0x539df6(0xca)};class UpsertBuilder{[a0_0x539df6(0x90)](){const _0x36c6d9=a0_0x539df6,_0x5a8666={'uPWNh':_0x36c6d9(0x9a)},_0x1211cc=(process['env']['DB_TYPE']||'postgresql')['toLowerCase'](),_0x54d9b3=Object['values'](DB_TYPES);if(!_0x54d9b3['includes'](_0x1211cc))return logger['warn']({'event':_0x5a8666['uPWNh'],'provided':_0x1211cc,'fallback':_0x36c6d9(0xab)},_0x36c6d9(0xad)+_0x1211cc+_0x36c6d9(0xbc)),DB_TYPES[_0x36c6d9(0xd5)];return _0x1211cc;}['formatDateValue'](_0x45a3bb,_0x3e55e2,_0x2db4fe=![]){const _0x503959=a0_0x539df6,_0x16f301={'RSFsg':'NULL','RAJRq':_0x503959(0xb2)};if(_0x2db4fe)switch(_0x3e55e2){case DB_TYPES['POSTGRESQL']:return _0x503959(0xb2);case DB_TYPES[_0x503959(0x9d)]:return'NULL';case DB_TYPES[_0x503959(0xa5)]:return'NULL';case DB_TYPES['SQLSERVER']:return _0x503959(0xd6);case DB_TYPES['ORACLE']:return _0x16f301['RSFsg'];default:return _0x16f301[_0x503959(0xbd)];}switch(_0x3e55e2){case DB_TYPES['POSTGRESQL']:return _0x45a3bb+'::DATE';case DB_TYPES['MYSQL']:return _0x45a3bb;case DB_TYPES['SQLITE']:return _0x45a3bb;case DB_TYPES[_0x503959(0xb5)]:return'CAST('+_0x45a3bb+'\x20AS\x20DATE)';case DB_TYPES['ORACLE']:return'TO_DATE('+_0x45a3bb+',\x20\x27YYYY-MM-DD\x27)';default:return _0x45a3bb+'::DATE';}}['buildEscapeFunction'](_0x265e82={}){const _0x5750f0=a0_0x539df6,_0x26de02={'AWxdz':function(_0x493593,_0x1cf244){return _0x493593===_0x1cf244;},'CSZzd':'NULL','FwmiD':_0x5750f0(0x94),'NNMSV':_0x5750f0(0x97)},_0x23b09e=this['getDatabaseType']();return(_0x49f329,_0x3d4138)=>{const _0x59dc9c=_0x5750f0,_0x43180a=_0x265e82[_0x3d4138];if(_0x49f329===null||_0x49f329===undefined){if(_0x43180a&&_0x26de02[_0x59dc9c(0xd9)](_0x43180a[_0x59dc9c(0xb3)],'date'))return this[_0x59dc9c(0xdd)](null,_0x23b09e,!![]);return _0x26de02[_0x59dc9c(0xce)];}if(_0x26de02['AWxdz'](typeof _0x49f329,_0x26de02['FwmiD'])){const _0x1e6c2c='\x27'+_0x49f329['replace'](/'/g,'\x27\x27')+'\x27';if(_0x43180a&&_0x43180a['type']===_0x26de02['NNMSV'])return this[_0x59dc9c(0xdd)](_0x1e6c2c,_0x23b09e,![]);return _0x1e6c2c;}if(typeof _0x49f329==='number')return _0x49f329;if(typeof _0x49f329==='boolean')return _0x49f329;const _0x602e2a='\x27'+String(_0x49f329)[_0x59dc9c(0xb8)](/'/g,'\x27\x27')+'\x27';if(_0x43180a&&_0x26de02[_0x59dc9c(0xd9)](_0x43180a[_0x59dc9c(0xb3)],_0x26de02['NNMSV']))return this['formatDateValue'](_0x602e2a,_0x23b09e,![]);return _0x602e2a;};}['buildBatchInsert'](_0x4c87eb,_0x226ddc,_0x4d0761,_0x31054c={}){const _0x12ac73=a0_0x539df6,_0x23a95f={'uyXfK':function(_0x48c469,_0x3844f1){return _0x48c469===_0x3844f1;}},_0x4100a4=this[_0x12ac73(0x90)]();if(_0x23a95f[_0x12ac73(0xd1)](_0x4100a4,DB_TYPES['ORACLE']))return this[_0x12ac73(0xb9)](_0x4c87eb,_0x226ddc,_0x4d0761,_0x31054c);return this[_0x12ac73(0x96)](_0x4c87eb,_0x226ddc,_0x4d0761,_0x31054c);}['_buildBatchInsertPostgres'](_0x51fc81,_0x5e6f55,_0x589bfd,_0x5bc615={}){const _0x15f02e=a0_0x539df6,_0x393ce3={'qEhDF':_0x15f02e(0xd2),'DIySJ':_0x15f02e(0xbe),'IcLuw':'postgresql','CWQUr':'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'};if(_0x51fc81['length']===0x0)return{'query':null,'values':[]};const _0x27b0ec=this['buildEscapeFunction'](_0x5bc615),_0x27ff67=_0x51fc81['map'](_0x26dd2c=>{const _0x49aa5a=_0x15f02e,_0xb8380f=_0x589bfd[_0x49aa5a(0xb7)](_0x3ebb15=>_0x27b0ec(_0x26dd2c[_0x3ebb15],_0x3ebb15));return'('+_0xb8380f[_0x49aa5a(0x8d)](',\x20')+')';}),_0x3ae8bc='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x5e6f55+'\x20('+_0x589bfd['join'](',\x20')+_0x15f02e(0x92)+_0x27ff67['join'](_0x393ce3[_0x15f02e(0xa0)])+'\x0a\x20\x20\x20\x20';return logger[_0x15f02e(0xd8)]({'event':_0x393ce3['DIySJ'],'tableName':_0x5e6f55,'rowCount':_0x51fc81['length'],'dbType':_0x393ce3[_0x15f02e(0xc3)]},_0x393ce3[_0x15f02e(0xd0)]),{'query':_0x3ae8bc,'values':[]};}[a0_0x539df6(0xb9)](_0x3eae3a,_0x2a2628,_0x275318,_0x5c1612={}){const _0x292605=a0_0x539df6,_0x4c6f21={'lcxVL':function(_0x239ea7,_0x413122){return _0x239ea7===_0x413122;}};if(_0x4c6f21['lcxVL'](_0x3eae3a[_0x292605(0xc4)],0x0))return{'query':null,'values':[]};const _0x4d3ff2=this[_0x292605(0xaa)](_0x5c1612),_0x2a050e=_0x3eae3a[_0x292605(0xb7)](_0x227306=>{const _0x43782c=_0x292605,_0x10f3a5=_0x275318['map'](_0x3392c4=>_0x4d3ff2(_0x227306[_0x3392c4],_0x3392c4));return'\x20\x20INTO\x20'+_0x2a2628+'\x20('+_0x275318[_0x43782c(0x8d)](',\x20')+_0x43782c(0xac)+_0x10f3a5['join'](',\x20')+')';}),_0x7ca2d2='INSERT\x20ALL\x0a'+_0x2a050e['join']('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':_0x292605(0xbe),'tableName':_0x2a2628,'rowCount':_0x3eae3a['length'],'dbType':_0x292605(0xba)},_0x292605(0x99)),{'query':_0x7ca2d2,'values':[]};}[a0_0x539df6(0xa1)](_0xfd4b0c,_0x22c7ed,_0x262851,_0xec4d74,_0x3219bc,_0x210fdf={}){const _0x4c2b05=a0_0x539df6,_0x114fa5={'GvqGU':function(_0x50820d,_0x4d82bd){return _0x50820d===_0x4d82bd;},'zqLys':function(_0x18f455,_0x5a461d){return _0x18f455===_0x5a461d;}},_0x53cb83=this[_0x4c2b05(0x90)]();if(_0x114fa5[_0x4c2b05(0xc9)](_0x53cb83,DB_TYPES['ORACLE']))return this[_0x4c2b05(0x9b)](_0xfd4b0c,_0x22c7ed,_0x262851,_0xec4d74,_0x3219bc,_0x210fdf);if(_0x114fa5['zqLys'](_0x53cb83,DB_TYPES[_0x4c2b05(0x9d)]))return this[_0x4c2b05(0xcd)](_0xfd4b0c,_0x22c7ed,_0x262851,_0xec4d74,_0x3219bc,_0x210fdf);return this[_0x4c2b05(0xbf)](_0xfd4b0c,_0x22c7ed,_0x262851,_0xec4d74,_0x3219bc,_0x210fdf);}['_buildBatchUpdatePostgres'](_0x223ae,_0x36bc21,_0x5256e0,_0x507f4c,_0x2f8bb1,_0x290a06={}){const _0x54e0e4=a0_0x539df6,_0x31e482={'vKFsm':function(_0x5c994d,_0x4830c8){return _0x5c994d===_0x4830c8;},'igQzg':function(_0x2c6481,_0x1432bb){return _0x2c6481===_0x1432bb;},'vZbCT':'batch_update_no_columns','uFKfc':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','fBIqA':'\x20AND\x20'};if(_0x31e482[_0x54e0e4(0xd4)](_0x223ae['length'],0x0))return{'query':null,'values':[]};const _0xc2ee1b=this[_0x54e0e4(0xaa)](_0x290a06),_0x1f4e96=_0x5256e0['filter'](_0xfdb42b=>!_0x2f8bb1['includes'](_0xfdb42b)&&_0xfdb42b!==_0x507f4c);if(_0x31e482['igQzg'](_0x1f4e96['length'],0x0))return logger['warn']({'event':_0x31e482['vZbCT'],'tableName':_0x36bc21},_0x54e0e4(0xb1)),{'query':null,'values':[]};const _0x597e6e=_0x223ae[_0x54e0e4(0xb7)](_0x400e55=>{const _0x47474d=[..._0x2f8bb1,..._0x1f4e96],_0x447524=_0x47474d['map'](_0x1d2d39=>_0xc2ee1b(_0x400e55[_0x1d2d39],_0x1d2d39));return'('+_0x447524['join'](',\x20')+')';}),_0x4f2efc=_0x1f4e96[_0x54e0e4(0xb7)](_0x4847c2=>_0x4847c2+'\x20=\x20v.'+_0x4847c2)['join'](_0x31e482['uFKfc']),_0x126e6e=_0x2f8bb1['map'](_0x3e601d=>'t.'+_0x3e601d+_0x54e0e4(0x9f)+_0x3e601d)['join'](_0x31e482[_0x54e0e4(0x98)]),_0x4b704e='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x36bc21+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x4f2efc+_0x54e0e4(0xc1)+_0x597e6e[_0x54e0e4(0x8d)](_0x54e0e4(0xae))+_0x54e0e4(0xc2)+[..._0x2f8bb1,..._0x1f4e96][_0x54e0e4(0x8d)](',\x20')+_0x54e0e4(0x8e)+_0x126e6e+'\x0a\x20\x20\x20\x20';return logger[_0x54e0e4(0xd8)]({'event':'batch_update_built','tableName':_0x36bc21,'rowCount':_0x223ae[_0x54e0e4(0xc4)],'updateColumns':_0x1f4e96[_0x54e0e4(0xc4)],'dbType':'postgresql'},'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'),{'query':_0x4b704e,'values':[]};}['_buildBatchUpdateOracle'](_0xf242a7,_0x58e433,_0x43c438,_0x3d9643,_0x3e21c5,_0xae0c7f={}){const _0x5bb3c3=a0_0x539df6,_0x41262a={'vQXVb':function(_0x2df876,_0x428d74){return _0x2df876===_0x428d74;},'ibJbK':'batch_update_no_columns','SPevy':_0x5bb3c3(0xb1),'YdasF':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','GgJMY':'\x0a\x20\x20\x20\x20UNION\x20ALL\x0a','zvVXl':_0x5bb3c3(0xc5)};if(_0x41262a[_0x5bb3c3(0xd3)](_0xf242a7[_0x5bb3c3(0xc4)],0x0))return{'query':null,'values':[]};const _0x37f784=this[_0x5bb3c3(0xaa)](_0xae0c7f),_0x300040=_0x43c438[_0x5bb3c3(0xa7)](_0x473efa=>!_0x3e21c5['includes'](_0x473efa)&&_0x473efa!==_0x3d9643);if(_0x300040[_0x5bb3c3(0xc4)]===0x0)return logger[_0x5bb3c3(0xc6)]({'event':_0x41262a[_0x5bb3c3(0xa2)],'tableName':_0x58e433},_0x41262a['SPevy']),{'query':null,'values':[]};const _0x15f1c3=[..._0x3e21c5,..._0x300040],_0x41b60f=_0xf242a7[_0x5bb3c3(0xb7)]((_0x412a49,_0x1da496)=>{const _0x2d9a72=_0x5bb3c3,_0x414c0a=_0x15f1c3[_0x2d9a72(0xb7)](_0x37e5b2=>{const _0x3bb8ec=_0x2d9a72,_0x38b75f=_0x37f784(_0x412a49[_0x37e5b2],_0x37e5b2);return _0x1da496===0x0?_0x38b75f+_0x3bb8ec(0xdc)+_0x37e5b2:_0x38b75f;});return'\x20\x20\x20\x20SELECT\x20'+_0x414c0a['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x356a49=_0x300040[_0x5bb3c3(0xb7)](_0x113613=>'t.'+_0x113613+_0x5bb3c3(0x9f)+_0x113613)[_0x5bb3c3(0x8d)](_0x41262a[_0x5bb3c3(0xc7)]),_0x5462ab=_0x3e21c5[_0x5bb3c3(0xb7)](_0x5cc989=>'t.'+_0x5cc989+'\x20=\x20v.'+_0x5cc989)['join']('\x20AND\x20'),_0x573100=_0x5bb3c3(0x9e)+_0x58e433+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x41b60f['join'](_0x41262a['GgJMY'])+_0x5bb3c3(0x93)+_0x5462ab+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x356a49+_0x5bb3c3(0xdb);return logger['debug']({'event':_0x41262a['zvVXl'],'tableName':_0x58e433,'rowCount':_0xf242a7[_0x5bb3c3(0xc4)],'updateColumns':_0x300040[_0x5bb3c3(0xc4)],'dbType':'oracle'},'Batch\x20UPDATE\x20query\x20built\x20(Oracle\x20MERGE)'),{'query':_0x573100,'values':[]};}[a0_0x539df6(0xcd)](_0x5625a5,_0x228531,_0x5d8ec5,_0x1be655,_0xfdfc21,_0xf77c91={}){const _0x26ebd4=a0_0x539df6,_0x441b85={'uQySv':function(_0x548ccd,_0x3d4f57){return _0x548ccd===_0x3d4f57;},'yjImj':'batch_update_no_columns','pDHxp':_0x26ebd4(0xc5),'JAMTh':_0x26ebd4(0xcf)};if(_0x441b85[_0x26ebd4(0xb4)](_0x5625a5['length'],0x0))return{'query':null,'values':[]};const _0x23f581=this['buildEscapeFunction'](_0xf77c91),_0x3da920=_0x5d8ec5['filter'](_0x590e69=>!_0xfdfc21[_0x26ebd4(0xa9)](_0x590e69)&&_0x590e69!==_0x1be655);if(_0x3da920['length']===0x0)return logger['warn']({'event':_0x441b85[_0x26ebd4(0xd7)],'tableName':_0x228531},_0x26ebd4(0xb1)),{'query':null,'values':[]};const _0x1a1821=[...new Set([..._0xfdfc21,..._0x3da920])],_0x147907=_0x5625a5[_0x26ebd4(0xb7)](_0x1367f2=>{const _0x7bccf9=_0x1a1821['map'](_0x356f2a=>_0x23f581(_0x1367f2[_0x356f2a],_0x356f2a));return'('+_0x7bccf9['join'](',\x20')+')';}),_0x239e0b=_0x3da920[_0x26ebd4(0xb7)](_0x5704ce=>_0x5704ce+_0x26ebd4(0xa6)+_0x5704ce+')')[_0x26ebd4(0x8d)](_0x26ebd4(0xc8)),_0x22a7be='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x228531+'\x20('+_0x1a1821['join'](',\x20')+_0x26ebd4(0x92)+_0x147907['join'](_0x26ebd4(0xae))+_0x26ebd4(0xaf)+_0x239e0b+_0x26ebd4(0xdb);return logger[_0x26ebd4(0xd8)]({'event':_0x441b85[_0x26ebd4(0x91)],'tableName':_0x228531,'rowCount':_0x5625a5[_0x26ebd4(0xc4)],'updateColumns':_0x3da920[_0x26ebd4(0xc4)],'dbType':_0x441b85[_0x26ebd4(0xcb)]},'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'),{'query':_0x22a7be,'values':[]};}[a0_0x539df6(0xb6)](_0x19097e,_0x1d22b2=0x64){const _0x4046bf=a0_0x539df6,_0xa3a0dc={'ULwBD':function(_0x1ed2e3,_0x3ddffe){return _0x1ed2e3<_0x3ddffe;},'pOoUA':function(_0xd13ca5,_0x11d691){return _0xd13ca5+_0x11d691;}},_0x11f2b6=[];for(let _0x1619f6=0x0;_0xa3a0dc['ULwBD'](_0x1619f6,_0x19097e['length']);_0x1619f6+=_0x1d22b2){_0x11f2b6['push'](_0x19097e[_0x4046bf(0xa4)](_0x1619f6,_0xa3a0dc[_0x4046bf(0xcc)](_0x1619f6,_0x1d22b2)));}return _0x11f2b6;}}module['exports']=new UpsertBuilder();function a0_0x4b0f(){const _0x58909b=['Aw52ywXPzf9KyL90ExbL','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','mtq5otuYohrdrvrZCa','tvLtuuW','cIaGicaGie1fuKDfieLove8G','id0GDI4','CuvOrey','yNvPBgrcyxrJAfvWzgf0zq','AwjkyKS','mJCWmZKYCwHxuxPi','C2XPy2u','u1fmsvrf','id0GvKfmvuvtka','zMLSDgvY','mty0ndmXmKDjAhnTCq','Aw5JBhvKzxm','yNvPBgrfC2nHCgvgDw5JDgLVBG','Cg9ZDgDYzxnXBa','ksbwquXvrvmGka','sw52ywXPzcbeqL9uwvbfoIa','laOGicaGicaGia','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','nJaXodq0DND4tNHg','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','tLvmtdO6refurq','DhLWzq','Dvf5u3y','u1fmu0vsvKvs','y2H1BMTsB3DZ','BwfW','CMvWBgfJzq','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','B3jHy2XL','m1jLwMjPsa','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','uKfkuNe','yMf0y2HFAw5Zzxj0x2j1AwX0','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','mLL3wvf0Ca','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','cIaGicaGicKGqvmGDIG','swnmDxC','BgvUz3rO','yMf0y2HFDxbKyxrLx2j1AwX0','D2fYBG','wwrHC0y','laOGicaGicaGica','r3zXr1u','C3fSAxrL','sKfnvgG','Ce9Vvue','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','q1nAEMq','BxLZCwW','q1Drvxi','DxLyzKS','laOGicaGicaG','DLfyvMi','DKTgC20','ue9tveDsrvnrta','tLvmta','EwPjBwO','zgvIDwC','qvD4zhO','mJKZmZyZBLPfzhnb','cIaGica','ieftia','zM9YBwf0rgf0zvzHBhvL','AM9PBG','kqOGicaGicbxsevsrsa','ntK2nJiYnLf3DNvTEG','z2v0rgf0ywjHC2vuExbL','CeriEha','kqOGicaGicbwquXvrvmG','cIaGicaGicKGDGOGicaGicbptIaO','C3rYAw5N','mtq5odC4nvDpz1vPsa','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','zgf0zq','zKjjCue','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHpCMfJBguP'];a0_0x4b0f=function(){return _0x58909b;};return a0_0x4b0f();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x5a734f=a0_0xf029;(function(_0x26241d,_0x5b357e){const _0x193c8e=a0_0xf029,_0x1f7ab3=_0x26241d();while(!![]){try{const _0x4809eb=-parseInt(_0x193c8e(0x1cb))/0x1+parseInt(_0x193c8e(0x1d8))/0x2+-parseInt(_0x193c8e(0x1d3))/0x3*(-parseInt(_0x193c8e(0x1c7))/0x4)+parseInt(_0x193c8e(0x1bc))/0x5*(parseInt(_0x193c8e(0x1ba))/0x6)+-parseInt(_0x193c8e(0x1b0))/0x7+parseInt(_0x193c8e(0x1ea))/0x8+-parseInt(_0x193c8e(0x1dd))/0x9;if(_0x4809eb===_0x5b357e)break;else _0x1f7ab3['push'](_0x1f7ab3['shift']());}catch(_0x5a1acc){_0x1f7ab3['push'](_0x1f7ab3['shift']());}}}(a0_0x36a2,0xef2be));const express=require('express'),{logger}=require(a0_0x5a734f(0x1a1)),{createResponse,createError}=require(a0_0x5a734f(0x1c5)),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_0xf029(_0xcab33f,_0x5801fb){_0xcab33f=_0xcab33f-0x19f;const _0x36a24e=a0_0x36a2();let _0xf029a9=_0x36a24e[_0xcab33f];if(a0_0xf029['cfSHoY']===undefined){var _0xeec22b=function(_0x5ae336){const _0x424dcb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ae1a7='',_0x56acf5='';for(let _0x1a504f=0x0,_0x5cbdc0,_0x24472f,_0xfb2e5=0x0;_0x24472f=_0x5ae336['charAt'](_0xfb2e5++);~_0x24472f&&(_0x5cbdc0=_0x1a504f%0x4?_0x5cbdc0*0x40+_0x24472f:_0x24472f,_0x1a504f++%0x4)?_0x5ae1a7+=String['fromCharCode'](0xff&_0x5cbdc0>>(-0x2*_0x1a504f&0x6)):0x0){_0x24472f=_0x424dcb['indexOf'](_0x24472f);}for(let _0x26b027=0x0,_0x2b3fcd=_0x5ae1a7['length'];_0x26b027<_0x2b3fcd;_0x26b027++){_0x56acf5+='%'+('00'+_0x5ae1a7['charCodeAt'](_0x26b027)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x56acf5);};a0_0xf029['aYqCAA']=_0xeec22b,a0_0xf029['STWSeH']={},a0_0xf029['cfSHoY']=!![];}const _0x1c2664=_0x36a24e[0x0],_0x36d700=_0xcab33f+_0x1c2664,_0x51549a=a0_0xf029['STWSeH'][_0x36d700];return!_0x51549a?(_0xf029a9=a0_0xf029['aYqCAA'](_0xf029a9),a0_0xf029['STWSeH'][_0x36d700]=_0xf029a9):_0xf029a9=_0x51549a,_0xf029a9;}function a0_0x36a2(){const _0x19b398=['A05kvxG','zw52','surhru5Fru5bqKXfrd1MywXZzq','t3fZD1G','BMrIsLi','l251BwjLCG','EwjMu3y','Ahfvtu0','tM5nuhu','v2TSDMy','mta2nJCYoefqz1rrrq','l3jLC2vYDMuVy2fUy2vS','thrPvu8','tNvTyMvYihjLC2vYDMvKihn1y2nLC3nMDwXSEq','y29UC3vTzq','yunQuLe','rLrPs24','suqGr2vUzxjHDg9YihnLCNzPy2uGAxmGAgvHBhrOEq','AwrNzw5FCM91DgvFBNvTyMvYx2vYCM9Y','ueLoigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','lI4VlI4VDxrPBhmVBg9Nz2vY','qxnXqNG','Cg9ZDa','yM9KEq','AwrNzw5FCM91DgvFy29Kzv9LCNjVCG','q29KzsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','uM91DgvY','surftvbpvevoq1LFru5bqKXfra','z2v0uMvZzxj2yxrPB24','l3bPBG','Ce1wtKu','zxHWB3j0CW','Dw1QqMK','DLvHBgK','A3Piv2e','nZCZntiYnhn3BwrQDa','z2v0sw5MBW','AwrNzw5FCM91DgvFC2vYAwfSx2vYCM9Y','C3rHDhvZ','AwrNzw5FCM91DgvFCMvZzxrFzxjYB3i','uwDrDNe','y2fUy2vSuMvZzxj2yxrPB24','weTvt0K','BNvTyMvY','AwrNzw5FCM91DgvFCMvZzxj2zv9JB25MAxjTx2vYCM9Y','mJmYnJHXwgDtCwS','l251BwjLCI9YzwXLyxnL','mte1mfrmEM1vDa','sw50zxjUywWGC2vYDMvYigvYCM9Y','C3rHy2S','zK5gt08','AwrNzw5FCM91DgvFCMfUzg9Tx2vYCM9Y','suqGr2vUzxjHDg9YihjVDxrLigv4y2vWDgLVBJOG','u2vYAwfSigTLEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','AgvHzgvY','CgfYyw1Z','lI4VlI4VDxrPBhmVChjVy2vZC29YlxjLC3bVBNnL','y29Kzq','nJe3mZeYohrtrfLeAG','tNvTyMvYigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','wKHNCwe','DezxvLe','mteZmZuYmvHpr2vtqG','z2v0','l3jLC2vYDMuVy29UzMLYBq','Eu5TCwS','y29UzMLYBvjLC2vYDMf0Aw9U','ANnVBG','BwvZC2fNzq','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','m0LOCLPXAW','z3v2y0W','rxvLvuK','CMvZzxj2zu51BwjLCG','BMfTzq','mZyZntK0nLHHwhjyzW','l3jLC2v0','y1nRtuu','CgLU','uMvZzxj2yxrPB24GzxH0zw5Kzwq','mta1mtuWmZnKwuDQvvi','D0XzB0O','swrhzw5LCMf0B3jfCNjVCG'];a0_0x36a2=function(){return _0x19b398;};return a0_0x36a2();}function createIdgenRoutes(){const _0x255d4e=a0_0x5a734f,_0xfe33e4={'KGuFQ':function(_0x1d48f8,_0x59b680){return _0x1d48f8(_0x59b680);},'kzHWa':function(_0x58d587,_0x498ecb,_0x417190,_0x2971db){return _0x58d587(_0x498ecb,_0x417190,_0x2971db);},'Dgzvr':'Idempotency-Key','vuSgt':function(_0x4c70f1){return _0x4c70f1();},'ZHgqa':_0x255d4e(0x19f),'UfbZy':function(_0x11ae68,_0x1a19a5,_0x2b53f5,_0xbf4b90){return _0x11ae68(_0x1a19a5,_0x2b53f5,_0xbf4b90);},'AsqBx':function(_0x3b36ce,_0x51f279,_0x12da2d,_0x57178f){return _0x3b36ce(_0x51f279,_0x12da2d,_0x57178f);},'FTiKn':'idgen_route_release_error','wLYoJ':_0x255d4e(0x1ed),'NnMPu':'idgen_route_reserve_error','guvcL':function(_0x2373f1){return _0x2373f1();},'agIhU':function(_0x4f15ae,_0xe9ec2d,_0x19d17e,_0x487347){return _0x4f15ae(_0xe9ec2d,_0x19d17e,_0x487347);},'nUQAW':_0x255d4e(0x1dc),'aBHCr':'idgen_route_reserve_extend_error','XKUOI':_0x255d4e(0x1d2),'QgQvq':function(_0x570109,_0x1661bb,_0x26ec73,_0x348079){return _0x570109(_0x1661bb,_0x26ec73,_0x348079);},'VhKox':_0x255d4e(0x1a6),'YGoLj':function(_0xd3c158,_0x245522){return _0xd3c158(_0x245522);},'yNmqk':function(_0x440f0c){return _0x440f0c();},'woTUa':_0x255d4e(0x1c0),'Wklvf':'idgen_route_consume_error','HBIKk':function(_0x51bc72,_0x1be32a){return _0x51bc72||_0x1be32a;},'OqswX':'number','umjBi':'Resource\x20info\x20retrieved','aCjRQ':'idgen_route_info_error','vUali':function(_0x36d273){return _0x36d273();},'hqUMM':function(_0x2e6ad0,_0x95c2cd,_0x51fb7b,_0x4a116c){return _0x2e6ad0(_0x95c2cd,_0x51fb7b,_0x4a116c);},'qEeph':_0x255d4e(0x1b4),'vnVCU':function(_0x4ff957){return _0x4ff957();},'gqYRw':function(_0x184c8a,_0x1d5d6b){return _0x184c8a===_0x1d5d6b;},'tFWVQ':'true','LtiUO':function(_0x1a8351,_0x855a4b){return _0x1a8351===_0x855a4b;},'HowNl':function(_0x38138b,_0x277958){return _0x38138b||_0x277958;},'ybfSv':function(_0x94b227,_0x198c81,_0x261e6c,_0x31ef06){return _0x94b227(_0x198c81,_0x261e6c,_0x31ef06);},'ojItm':_0x255d4e(0x1e2),'fNFOO':function(_0x28f0ef,_0x38d589,_0x2040bc,_0x2aa14c){return _0x28f0ef(_0x38d589,_0x2040bc,_0x2aa14c);},'EueUI':_0x255d4e(0x1f1),'Tiant':_0x255d4e(0x1e5),'kNJUx':_0x255d4e(0x1eb),'WcPFB':'/reserve/:token','OrEpy':_0x255d4e(0x1aa),'ndbJR':'/code','vvKrs':'/consume','wNMWB':'/info/:resource','pMVNE':_0x255d4e(0x1d9),'cSkME':'/health'},_0xe77fda=express[_0x255d4e(0x1a7)]();let _0x2612af=null;function _0xf45cb0(){return!_0x2612af&&(_0x2612af=_0xfe33e4['KGuFQ'](require,'../../utils/id-generator')),_0x2612af;}function _0x2642d1(_0x5b8806,_0x24d851,_0x4d2afa){const _0x1b3b58=_0x255d4e;if(_0x24d851&&_0x24d851[_0x1b3b58(0x1d7)]===_0x1b3b58(0x1df)){const _0x3477d1=ERROR_CODE_HTTP_MAP[_0x24d851[_0x1b3b58(0x1c6)]]||0x1f4;return logger['warn']({'event':_0x4d2afa,'code':_0x24d851['code'],'message':_0x24d851['message']},'ID\x20Generator\x20route\x20error:\x20'+_0x24d851['code']),_0x5b8806[_0x1b3b58(0x1b3)](_0x3477d1)[_0x1b3b58(0x1d0)](_0xfe33e4['kzHWa'](createError,_0x3477d1,_0x24d851['message'],{'code':_0x24d851[_0x1b3b58(0x1c6)],'details':_0x24d851['details']||null}));}return logger['error']({'event':_0x4d2afa,'error':_0x24d851&&_0x24d851[_0x1b3b58(0x1d1)],'stack':_0x24d851&&_0x24d851[_0x1b3b58(0x1be)]},_0x1b3b58(0x1c1)+(_0x24d851&&_0x24d851['message'])),_0x5b8806['status'](0x1f4)[_0x1b3b58(0x1d0)](_0xfe33e4['kzHWa'](createError,0x1f4,_0x1b3b58(0x1bd),null));}function _0x32aab0(_0x2d60d3){const _0x1ff809=_0x255d4e;return _0x2d60d3[_0x1ff809(0x1c3)](_0xfe33e4['Dgzvr'])||undefined;}return _0xe77fda['post'](_0xfe33e4['Tiant'],async(_0x5d7dfe,_0x167eea)=>{const _0x41ff2a=_0x255d4e;try{const {resource:_0x3b471e,format:_0x4852db,prefix:_0x4575f5,separator:_0x5171a2,numDigits:_0x582489,reuseDelete:_0x4b11b9}=_0x5d7dfe['body']||{},_0x592631=_0x32aab0(_0x5d7dfe),_0x5d0ea4=_0xfe33e4['vuSgt'](_0xf45cb0),_0x569ac9=await _0x5d0ea4[_0x41ff2a(0x1b8)]({'resource':_0x3b471e,'format':_0x4852db,'prefix':_0x4575f5,'separator':_0x5171a2,'numDigits':_0x582489,'reuseDelete':_0x4b11b9,'idempotencyKey':_0x592631});return _0x167eea[_0x41ff2a(0x1b3)](0xc9)['json'](_0xfe33e4[_0x41ff2a(0x1af)](createResponse,0xc9,_0x41ff2a(0x1c8),_0x569ac9));}catch(_0x50b4e5){return _0x2642d1(_0x167eea,_0x50b4e5,_0xfe33e4[_0x41ff2a(0x1c9)]);}}),_0xe77fda[_0x255d4e(0x1a3)](_0x255d4e(0x1bb),async(_0x3aceaf,_0x18af4c)=>{const _0x14db7b=_0x255d4e;try{const _0x32dbcf=_0xfe33e4['KGuFQ'](_0x32aab0,_0x3aceaf),_0x517039={..._0x3aceaf['body']||{},'idempotencyKey':_0x32dbcf},_0x1570d7=_0xf45cb0(),_0x2ad812=await _0x1570d7['releaseNumber'](_0x517039);return _0x18af4c[_0x14db7b(0x1b3)](0xc8)[_0x14db7b(0x1d0)](_0xfe33e4['UfbZy'](createResponse,0xc8,'Number\x20released\x20to\x20reuse\x20pool',_0x2ad812));}catch(_0x4327d8){return _0xfe33e4['AsqBx'](_0x2642d1,_0x18af4c,_0x4327d8,_0xfe33e4[_0x14db7b(0x1f0)]);}}),_0xe77fda['post']('/reserve',async(_0x42cccb,_0x43cee1)=>{const _0x4d5dbd=_0x255d4e;try{const {resource:_0x55835e,format:_0x19782d,prefix:_0x401e2c,separator:_0x32fcd1,numDigits:_0x21c0d0,reuseDelete:_0x1a0d8e,ttl:_0x501ead}=_0x42cccb[_0x4d5dbd(0x1a4)]||{},_0x7f8fb3=_0x32aab0(_0x42cccb),_0x580f2a=_0xfe33e4['vuSgt'](_0xf45cb0),_0x5ca97d=await _0x580f2a[_0x4d5dbd(0x1d6)]({'resource':_0x55835e,'format':_0x19782d,'prefix':_0x401e2c,'separator':_0x32fcd1,'numDigits':_0x21c0d0,'reuseDelete':_0x1a0d8e,'ttl':_0x501ead,'idempotencyKey':_0x7f8fb3});return _0x43cee1[_0x4d5dbd(0x1b3)](0xc9)['json'](createResponse(0xc9,_0xfe33e4[_0x4d5dbd(0x1de)],_0x5ca97d));}catch(_0x3d35d8){return _0xfe33e4[_0x4d5dbd(0x1af)](_0x2642d1,_0x43cee1,_0x3d35d8,_0xfe33e4[_0x4d5dbd(0x1e8)]);}}),_0xe77fda[_0x255d4e(0x1a3)](_0x255d4e(0x1cd),async(_0x577df3,_0x586af0)=>{const _0x43a246=_0x255d4e;try{const {token:_0x4e2810}=_0x577df3[_0x43a246(0x1a4)]||{},_0x2a5322=_0x32aab0(_0x577df3),_0x4f08b6=_0xfe33e4[_0x43a246(0x1d4)](_0xf45cb0),_0x11f55e=await _0x4f08b6[_0x43a246(0x1cf)]({'token':_0x4e2810,'idempotencyKey':_0x2a5322});return _0x586af0['status'](0xc8)[_0x43a246(0x1d0)](_0xfe33e4['kzHWa'](createResponse,0xc8,'Reservation\x20confirmed',_0x11f55e));}catch(_0x2efed6){return _0xfe33e4['agIhU'](_0x2642d1,_0x586af0,_0x2efed6,_0x43a246(0x1b9));}}),_0xe77fda[_0x255d4e(0x1a3)](_0xfe33e4[_0x255d4e(0x1e0)],async(_0x101787,_0x38cb36)=>{const _0x562982=_0x255d4e;try{const {token:_0x560e95}=_0x101787[_0x562982(0x1a4)]||{},_0x553371=_0x32aab0(_0x101787),_0x2fb0fe=_0xf45cb0(),_0x447a9d=await _0x2fb0fe[_0x562982(0x1b6)]({'token':_0x560e95,'idempotencyKey':_0x553371});return _0x38cb36['status'](0xc8)['json'](createResponse(0xc8,'Reservation\x20cancelled',_0x447a9d));}catch(_0x53b042){return _0xfe33e4['UfbZy'](_0x2642d1,_0x38cb36,_0x53b042,'idgen_route_reserve_cancel_error');}}),_0xe77fda['post']('/reserve/extend',async(_0x3d1579,_0x2c3843)=>{const _0x3cd4fe=_0x255d4e;try{const {token:_0x10f80a,ttl:_0x71f7b0}=_0x3d1579[_0x3cd4fe(0x1a4)]||{},_0x2cf50e=_0x32aab0(_0x3d1579),_0x5519ff=_0xfe33e4['guvcL'](_0xf45cb0),_0x165900=await _0x5519ff['extendReservation']({'token':_0x10f80a,'ttl':_0x71f7b0,'idempotencyKey':_0x2cf50e});return _0x2c3843[_0x3cd4fe(0x1b3)](0xc8)['json'](createResponse(0xc8,_0xfe33e4['nUQAW'],_0x165900));}catch(_0x41e5dc){return _0x2642d1(_0x2c3843,_0x41e5dc,_0xfe33e4['aBHCr']);}}),_0xe77fda[_0x255d4e(0x1cc)](_0xfe33e4['WcPFB'],async(_0xcf0b70,_0x596ef1)=>{const _0x2e7469=_0x255d4e;try{const {token:_0xb78cac}=_0xcf0b70[_0x2e7469(0x1c4)],_0x3c7191=_0xf45cb0(),_0x121bc8=await _0x3c7191[_0x2e7469(0x1a9)]({'token':_0xb78cac});return _0x596ef1[_0x2e7469(0x1b3)](0xc8)['json'](_0xfe33e4[_0x2e7469(0x1a2)](createResponse,0xc8,'Reservation\x20retrieved',_0x121bc8));}catch(_0x1360eb){return _0x2642d1(_0x596ef1,_0x1360eb,_0xfe33e4[_0x2e7469(0x1b7)]);}}),_0xe77fda['post'](_0xfe33e4['OrEpy'],async(_0x11e3f7,_0x1d4f0d)=>{const _0x2c031a=_0x255d4e;try{const {resource:_0xa41b5d,digits:_0x153b38,ensureUnique:_0x2bf719,ttl:_0x7555b0,maxRetry:_0x2e2fef}=_0x11e3f7[_0x2c031a(0x1a4)]||{},_0x42cb62=_0x32aab0(_0x11e3f7),_0x4c5fbd=_0xf45cb0(),_0x30256a=await _0x4c5fbd[_0x2c031a(0x1db)]({'resource':_0xa41b5d,'digits':_0x153b38,'ensureUnique':_0x2bf719,'ttl':_0x7555b0,'maxRetry':_0x2e2fef,'idempotencyKey':_0x42cb62});return _0x1d4f0d['status'](0xc9)[_0x2c031a(0x1d0)](_0xfe33e4['agIhU'](createResponse,0xc9,_0x2c031a(0x1a0),_0x30256a));}catch(_0x51fb20){return _0x2642d1(_0x1d4f0d,_0x51fb20,'idgen_route_pin_error');}}),_0xe77fda['post']('/serial',async(_0x94922f,_0x2f150f)=>{const _0x1d9350=_0x255d4e;try{const {resource:_0x2e9d43,pattern:_0x350f64,ensureUnique:_0x52d4c4,ttl:_0x5b68e9,maxRetry:_0x4bb651}=_0x94922f[_0x1d9350(0x1a4)]||{},_0x3e6169=_0x32aab0(_0x94922f),_0x31f9aa=_0xf45cb0(),_0x4b2c0c=await _0x31f9aa['serial']({'resource':_0x2e9d43,'pattern':_0x350f64,'ensureUnique':_0x52d4c4,'ttl':_0x5b68e9,'maxRetry':_0x4bb651,'idempotencyKey':_0x3e6169});return _0x2f150f[_0x1d9350(0x1b3)](0xc9)[_0x1d9350(0x1d0)](_0xfe33e4[_0x1d9350(0x1b5)](createResponse,0xc9,_0x1d9350(0x1c2),_0x4b2c0c));}catch(_0x50e7d7){return _0xfe33e4['kzHWa'](_0x2642d1,_0x2f150f,_0x50e7d7,_0x1d9350(0x1b2));}}),_0xe77fda[_0x255d4e(0x1a3)](_0xfe33e4[_0x255d4e(0x1e4)],async(_0x5e03d6,_0x43a7b6)=>{const _0x449200=_0x255d4e;try{const {resource:_0x413e72,pattern:_0x5c4100,ensureUnique:_0x4fc004,ttl:_0x2d9ffa,maxRetry:_0x5d84a3}=_0x5e03d6[_0x449200(0x1a4)]||{},_0x4cfa0f=_0xfe33e4['KGuFQ'](_0x32aab0,_0x5e03d6),_0x1e444b=_0xf45cb0(),_0x1012e7=await _0x1e444b[_0x449200(0x1c6)]({'resource':_0x413e72,'pattern':_0x5c4100,'ensureUnique':_0x4fc004,'ttl':_0x2d9ffa,'maxRetry':_0x5d84a3,'idempotencyKey':_0x4cfa0f});return _0x43a7b6['status'](0xc9)[_0x449200(0x1d0)](createResponse(0xc9,_0xfe33e4['VhKox'],_0x1012e7));}catch(_0x3a6304){return _0x2642d1(_0x43a7b6,_0x3a6304,_0x449200(0x1a5));}}),_0xe77fda[_0x255d4e(0x1a3)]('/random',async(_0x58afc5,_0x21751a)=>{const _0x56f23a=_0x255d4e;try{const {resource:_0x5cd573,pattern:_0x493b1a,ensureUnique:_0x16da8d,ttl:_0x4bdd59,maxRetry:_0x1935c0}=_0x58afc5[_0x56f23a(0x1a4)]||{},_0x228472=_0xfe33e4['YGoLj'](_0x32aab0,_0x58afc5),_0x563d08=_0xfe33e4[_0x56f23a(0x1ce)](_0xf45cb0),_0x43917c=await _0x563d08['random']({'resource':_0x5cd573,'pattern':_0x493b1a,'ensureUnique':_0x16da8d,'ttl':_0x4bdd59,'maxRetry':_0x1935c0,'idempotencyKey':_0x228472});return _0x21751a['status'](0xc9)['json'](_0xfe33e4['AsqBx'](createResponse,0xc9,'Random\x20value\x20generated\x20successfully',_0x43917c));}catch(_0x2ef608){return _0x2642d1(_0x21751a,_0x2ef608,_0xfe33e4['woTUa']);}}),_0xe77fda[_0x255d4e(0x1a3)](_0xfe33e4['vvKrs'],async(_0xa111d,_0x244a30)=>{const _0x857679=_0x255d4e;try{const {resource:_0x2d509c,value:_0x150b7e}=_0xa111d[_0x857679(0x1a4)]||{},_0x55e3e2=_0xf45cb0(),_0x2c175d=await _0x55e3e2[_0x857679(0x1ee)]({'resource':_0x2d509c,'value':_0x150b7e});return _0x244a30['status'](0xc8)['json'](_0xfe33e4['UfbZy'](createResponse,0xc8,'Value\x20consumed',_0x2c175d));}catch(_0x4801a9){return _0x2642d1(_0x244a30,_0x4801a9,_0xfe33e4[_0x857679(0x1e9)]);}}),_0xe77fda['get'](_0xfe33e4['wNMWB'],async(_0xf912aa,_0x5ee136)=>{const _0x32b14d=_0x255d4e;try{const {resource:_0x3daf6b}=_0xf912aa['params'],{mode:_0x4bae11,format:_0x503e2f,prefix:_0x4d7cb5}=_0xf912aa['query'],_0x33e23b=_0xf45cb0(),_0x4fc80a=await _0x33e23b[_0x32b14d(0x1b1)]({'resource':_0x3daf6b,'mode':_0xfe33e4['HBIKk'](_0x4bae11,_0xfe33e4['OqswX']),'format':_0x503e2f,'prefix':_0x4d7cb5});return _0x5ee136['status'](0xc8)['json'](createResponse(0xc8,_0xfe33e4[_0x32b14d(0x1ad)],_0x4fc80a));}catch(_0x4e4f7f){return _0x2642d1(_0x5ee136,_0x4e4f7f,_0xfe33e4[_0x32b14d(0x1ef)]);}}),_0xe77fda[_0x255d4e(0x1a3)](_0xfe33e4[_0x255d4e(0x1ab)],async(_0x25c76b,_0x509fe7)=>{const _0x956d76=_0x255d4e;try{const {resource:_0x2ba429,mode:_0x493b6e,format:_0x1f2542,prefix:_0x42f70d}=_0x25c76b[_0x956d76(0x1a4)]||{},_0xe0669e=_0xfe33e4[_0x956d76(0x1ae)](_0xf45cb0),_0x3564da=await _0xe0669e['reset']({'resource':_0x2ba429,'mode':_0x493b6e||_0xfe33e4[_0x956d76(0x1e3)],'format':_0x1f2542,'prefix':_0x42f70d});return _0x509fe7[_0x956d76(0x1b3)](0xc8)['json'](_0xfe33e4[_0x956d76(0x1e7)](createResponse,0xc8,'Resource\x20state\x20reset',_0x3564da));}catch(_0x2381af){return _0x2642d1(_0x509fe7,_0x2381af,_0xfe33e4['qEeph']);}}),_0xe77fda['get'](_0xfe33e4[_0x255d4e(0x1da)],async(_0x4c43ae,_0x4d451e)=>{const _0x445aa7=_0x255d4e;try{const _0x5e9e76=_0xfe33e4['vnVCU'](_0xf45cb0),_0x186ce3=_0x5e9e76['isEnabled']();let _0x4cec0a=![],_0x103ce7=null;try{_0x4cec0a=await redisClient['ping'](0xbb8);}catch(_0x39ba61){_0x103ce7=_0x39ba61['message'];}const _0x150b32=_0xfe33e4['gqYRw'](process[_0x445aa7(0x1e1)]['LOCK_DISTRIBUTED_ENABLED'],_0xfe33e4[_0x445aa7(0x1ca)]),_0x1b18ee=_0xfe33e4[_0x445aa7(0x1ec)](process[_0x445aa7(0x1e1)][_0x445aa7(0x1a8)],_0xfe33e4[_0x445aa7(0x1ca)]);if(_0xfe33e4['HowNl'](!_0x186ce3,!_0x4cec0a))return _0x4d451e['status'](0x1f7)['json'](_0xfe33e4[_0x445aa7(0x1e6)](createError,0x1f7,'ID\x20Generator\x20service\x20unavailable',{'enabled':_0x186ce3,'redisConnected':_0x4cec0a,'lockEnabled':_0x150b32,'idempotencyEnabled':_0x1b18ee,'error':_0x103ce7||(!_0x186ce3?_0xfe33e4['ojItm']:'Redis\x20not\x20connected')}));return _0x4d451e[_0x445aa7(0x1b3)](0xc8)[_0x445aa7(0x1d0)](_0xfe33e4[_0x445aa7(0x1bf)](createResponse,0xc8,_0xfe33e4[_0x445aa7(0x1d5)],{'enabled':_0x186ce3,'redisConnected':_0x4cec0a,'lockEnabled':_0x150b32,'idempotencyEnabled':_0x1b18ee}));}catch(_0x58a086){return _0x2642d1(_0x4d451e,_0x58a086,'idgen_route_health_error');}}),_0xe77fda;}module[a0_0x5a734f(0x1ac)]=createIdgenRoutes;
|
|
1
|
+
const a0_0x2c9b07=a0_0x47ec;(function(_0x426291,_0x18b706){const _0x4c4856=a0_0x47ec,_0x1f7c3e=_0x426291();while(!![]){try{const _0x25c3e2=parseInt(_0x4c4856(0x125))/0x1+-parseInt(_0x4c4856(0xfe))/0x2*(parseInt(_0x4c4856(0x100))/0x3)+-parseInt(_0x4c4856(0x119))/0x4*(parseInt(_0x4c4856(0x130))/0x5)+-parseInt(_0x4c4856(0x12d))/0x6*(parseInt(_0x4c4856(0xeb))/0x7)+parseInt(_0x4c4856(0x10e))/0x8*(parseInt(_0x4c4856(0x126))/0x9)+-parseInt(_0x4c4856(0xf4))/0xa*(-parseInt(_0x4c4856(0xec))/0xb)+-parseInt(_0x4c4856(0x131))/0xc;if(_0x25c3e2===_0x18b706)break;else _0x1f7c3e['push'](_0x1f7c3e['shift']());}catch(_0x4f4662){_0x1f7c3e['push'](_0x1f7c3e['shift']());}}}(a0_0x1ffc,0xe301b));const express=require(a0_0x2c9b07(0xf6)),{logger}=require(a0_0x2c9b07(0xea)),{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 _0x32dcaf=a0_0x2c9b07,_0x476fc0={'kKFZz':_0x32dcaf(0x123),'MLeDf':function(_0x5a9f61,_0x359847){return _0x5a9f61===_0x359847;},'pSLJc':function(_0x8e529c,_0x1c58ea,_0x2d3284,_0x5431c9){return _0x8e529c(_0x1c58ea,_0x2d3284,_0x5431c9);},'UZUBZ':function(_0x322616,_0x102151,_0x1815ac,_0x4e1c6a){return _0x322616(_0x102151,_0x1815ac,_0x4e1c6a);},'CcMup':'Idempotency-Key','iTDqJ':function(_0x42555b){return _0x42555b();},'tmRnC':_0x32dcaf(0x10d),'BWkQV':'idgen_route_number_error','oxAhx':function(_0x2b9bab,_0x3f20e5){return _0x2b9bab(_0x3f20e5);},'fKzvL':_0x32dcaf(0x107),'jQFyT':function(_0xb8b832,_0x159770,_0x4272e8,_0x4042b9){return _0xb8b832(_0x159770,_0x4272e8,_0x4042b9);},'MqJaW':'idgen_route_release_error','fbjIx':'Number\x20reserved\x20successfully','qICoT':function(_0xe29f48,_0xa132a9,_0x51da4b,_0x36af71){return _0xe29f48(_0xa132a9,_0x51da4b,_0x36af71);},'fuQOG':'idgen_route_reserve_error','kMDSO':function(_0x13668b,_0x2f7641){return _0x13668b(_0x2f7641);},'WImnL':function(_0x162ba4,_0x2c471b,_0x3fc128,_0x10cf37){return _0x162ba4(_0x2c471b,_0x3fc128,_0x10cf37);},'UbVCI':_0x32dcaf(0x136),'EKRMU':function(_0x418be7){return _0x418be7();},'plSSn':function(_0x511810,_0x3c603c){return _0x511810(_0x3c603c);},'mdjIh':function(_0x445a43){return _0x445a43();},'Xnoqa':_0x32dcaf(0xff),'jkjrO':function(_0x54a611,_0x2c9749,_0x39f8ae,_0x265811){return _0x54a611(_0x2c9749,_0x39f8ae,_0x265811);},'GpicU':'Reservation\x20retrieved','uwZUS':_0x32dcaf(0x10c),'KmoIc':function(_0x39b57f){return _0x39b57f();},'itImN':'Serial\x20key\x20generated\x20successfully','FjMRE':'Code\x20generated\x20successfully','oYiKU':'idgen_route_code_error','LrnSQ':function(_0x187452){return _0x187452();},'AWxMX':function(_0xc95629,_0x2130fb,_0x552d73,_0x31bf69){return _0xc95629(_0x2130fb,_0x552d73,_0x31bf69);},'skHsW':_0x32dcaf(0x10a),'JymrA':function(_0xc8c73c,_0x34b8e9,_0x30fff0,_0x2868ba){return _0xc8c73c(_0x34b8e9,_0x30fff0,_0x2868ba);},'qOJkP':_0x32dcaf(0x112),'juTei':function(_0x5a3f79,_0x20c7e9){return _0x5a3f79||_0x20c7e9;},'PfXPz':'number','cjSzX':'Resource\x20state\x20reset','PBaKC':function(_0x1c3ba6,_0x312d40,_0x4a74d8,_0x3061c6){return _0x1c3ba6(_0x312d40,_0x4a74d8,_0x3061c6);},'Malgk':'idgen_route_reset_error','kTydn':_0x32dcaf(0x101),'Wzaky':function(_0x4a6acc,_0x256bc7){return _0x4a6acc||_0x256bc7;},'WRGZh':'IDGEN_ENABLED=false','xsMXL':_0x32dcaf(0x11c),'uyOQa':'/number/release','Liqaf':'/reserve','oemJH':'/reserve/extend','TlbGY':_0x32dcaf(0x11b),'TsVkK':'/consume','UPJko':'/info/:resource','POLRH':_0x32dcaf(0x12c)},_0x2b1ea1=express['Router']();let _0x208a85=null;function _0x3164ba(){return!_0x208a85&&(_0x208a85=require(_0x476fc0['kKFZz'])),_0x208a85;}function _0x5c85f2(_0x3656de,_0x264368,_0x33a297){const _0x5ce15c=_0x32dcaf;if(_0x264368&&_0x476fc0['MLeDf'](_0x264368[_0x5ce15c(0x10b)],_0x5ce15c(0x11e))){const _0x2b47b3=ERROR_CODE_HTTP_MAP[_0x264368[_0x5ce15c(0x11d)]]||0x1f4;return logger['warn']({'event':_0x33a297,'code':_0x264368[_0x5ce15c(0x11d)],'message':_0x264368[_0x5ce15c(0x137)]},'ID\x20Generator\x20route\x20error:\x20'+_0x264368[_0x5ce15c(0x11d)]),_0x3656de[_0x5ce15c(0xf2)](_0x2b47b3)['json'](_0x476fc0['pSLJc'](createError,_0x2b47b3,_0x264368[_0x5ce15c(0x137)],{'code':_0x264368[_0x5ce15c(0x11d)],'details':_0x264368[_0x5ce15c(0x138)]||null}));}return logger[_0x5ce15c(0x128)]({'event':_0x33a297,'error':_0x264368&&_0x264368[_0x5ce15c(0x137)],'stack':_0x264368&&_0x264368[_0x5ce15c(0x105)]},'ID\x20Generator\x20route\x20exception:\x20'+(_0x264368&&_0x264368['message'])),_0x3656de[_0x5ce15c(0xf2)](0x1f4)[_0x5ce15c(0xed)](_0x476fc0[_0x5ce15c(0x12a)](createError,0x1f4,_0x5ce15c(0xe5),null));}function _0x1e5155(_0x443401){const _0x4cfd55=_0x32dcaf;return _0x443401['header'](_0x476fc0[_0x4cfd55(0x117)])||undefined;}return _0x2b1ea1[_0x32dcaf(0x10f)]('/number',async(_0x45a4c3,_0x17659d)=>{const _0x5a96b1=_0x32dcaf;try{const {resource:_0x115434,format:_0x43d3ef,prefix:_0x4be4d2,separator:_0x5a5148,numDigits:_0xb7206f,reuseDelete:_0x1864f2}=_0x45a4c3['body']||{},_0x40b6e2=_0x1e5155(_0x45a4c3),_0x31bdfa=_0x476fc0['iTDqJ'](_0x3164ba),_0xc665b=await _0x31bdfa[_0x5a96b1(0xf0)]({'resource':_0x115434,'format':_0x43d3ef,'prefix':_0x4be4d2,'separator':_0x5a5148,'numDigits':_0xb7206f,'reuseDelete':_0x1864f2,'idempotencyKey':_0x40b6e2});return _0x17659d['status'](0xc9)[_0x5a96b1(0xed)](_0x476fc0[_0x5a96b1(0x118)](createResponse,0xc9,_0x476fc0[_0x5a96b1(0x11a)],_0xc665b));}catch(_0x13ddd7){return _0x5c85f2(_0x17659d,_0x13ddd7,_0x476fc0['BWkQV']);}}),_0x2b1ea1[_0x32dcaf(0x10f)](_0x476fc0[_0x32dcaf(0xf3)],async(_0x59051f,_0x2f512e)=>{const _0x576471=_0x32dcaf;try{const _0x31b375=_0x476fc0['oxAhx'](_0x1e5155,_0x59051f),_0x4e7891={..._0x59051f['body']||{},'idempotencyKey':_0x31b375},_0x375170=_0x3164ba(),_0x4999d2=await _0x375170['releaseNumber'](_0x4e7891);return _0x2f512e['status'](0xc8)[_0x576471(0xed)](createResponse(0xc8,_0x476fc0[_0x576471(0x116)],_0x4999d2));}catch(_0x1a03b4){return _0x476fc0[_0x576471(0x104)](_0x5c85f2,_0x2f512e,_0x1a03b4,_0x476fc0['MqJaW']);}}),_0x2b1ea1[_0x32dcaf(0x10f)](_0x476fc0['Liqaf'],async(_0x43f8a7,_0x48d836)=>{const _0x997da9=_0x32dcaf;try{const {resource:_0x48bf19,format:_0x3606ec,prefix:_0x2480a2,separator:_0x2ed0fd,numDigits:_0x58df71,reuseDelete:_0x8add,ttl:_0x1d8cde}=_0x43f8a7[_0x997da9(0x114)]||{},_0x19e36d=_0x1e5155(_0x43f8a7),_0x25be96=_0x3164ba(),_0x2c28d8=await _0x25be96['reserveNumber']({'resource':_0x48bf19,'format':_0x3606ec,'prefix':_0x2480a2,'separator':_0x2ed0fd,'numDigits':_0x58df71,'reuseDelete':_0x8add,'ttl':_0x1d8cde,'idempotencyKey':_0x19e36d});return _0x48d836['status'](0xc9)[_0x997da9(0xed)](createResponse(0xc9,_0x476fc0['fbjIx'],_0x2c28d8));}catch(_0x1376bc){return _0x476fc0['qICoT'](_0x5c85f2,_0x48d836,_0x1376bc,_0x476fc0[_0x997da9(0x122)]);}}),_0x2b1ea1[_0x32dcaf(0x10f)]('/reserve/confirm',async(_0x414888,_0x488dfd)=>{const _0x31d33d=_0x32dcaf;try{const {token:_0x4c6777}=_0x414888['body']||{},_0x19659d=_0x476fc0['kMDSO'](_0x1e5155,_0x414888),_0x2fa182=_0x476fc0[_0x31d33d(0xfd)](_0x3164ba),_0x5b3248=await _0x2fa182['confirmReservation']({'token':_0x4c6777,'idempotencyKey':_0x19659d});return _0x488dfd[_0x31d33d(0xf2)](0xc8)['json'](_0x476fc0['WImnL'](createResponse,0xc8,_0x476fc0[_0x31d33d(0xfa)],_0x5b3248));}catch(_0x573c2c){return _0x5c85f2(_0x488dfd,_0x573c2c,'idgen_route_reserve_confirm_error');}}),_0x2b1ea1[_0x32dcaf(0x10f)](_0x32dcaf(0xef),async(_0x5d61d5,_0x59b7d3)=>{const _0xcf27c7=_0x32dcaf;try{const {token:_0x12bc72}=_0x5d61d5[_0xcf27c7(0x114)]||{},_0x38d700=_0x1e5155(_0x5d61d5),_0x5c0d0f=_0x476fc0[_0xcf27c7(0xfb)](_0x3164ba),_0x545d41=await _0x5c0d0f['cancelReservation']({'token':_0x12bc72,'idempotencyKey':_0x38d700});return _0x59b7d3['status'](0xc8)[_0xcf27c7(0xed)](_0x476fc0['jQFyT'](createResponse,0xc8,_0xcf27c7(0x102),_0x545d41));}catch(_0x11390c){return _0x476fc0['pSLJc'](_0x5c85f2,_0x59b7d3,_0x11390c,'idgen_route_reserve_cancel_error');}}),_0x2b1ea1[_0x32dcaf(0x10f)](_0x476fc0[_0x32dcaf(0xee)],async(_0x5c7127,_0x2e0ece)=>{const _0x1dd2d0=_0x32dcaf;try{const {token:_0x1c98b9,ttl:_0x5541b8}=_0x5c7127[_0x1dd2d0(0x114)]||{},_0x223565=_0x476fc0[_0x1dd2d0(0x103)](_0x1e5155,_0x5c7127),_0x367469=_0x476fc0[_0x1dd2d0(0x12b)](_0x3164ba),_0xf9603e=await _0x367469[_0x1dd2d0(0x109)]({'token':_0x1c98b9,'ttl':_0x5541b8,'idempotencyKey':_0x223565});return _0x2e0ece[_0x1dd2d0(0xf2)](0xc8)['json'](_0x476fc0['WImnL'](createResponse,0xc8,_0x476fc0[_0x1dd2d0(0x132)],_0xf9603e));}catch(_0x262b76){return _0x5c85f2(_0x2e0ece,_0x262b76,'idgen_route_reserve_extend_error');}}),_0x2b1ea1[_0x32dcaf(0x127)](_0x32dcaf(0x108),async(_0xf77fc0,_0x2fe947)=>{const _0x1c72c8=_0x32dcaf;try{const {token:_0x5670d5}=_0xf77fc0['params'],_0x1919fd=_0x476fc0[_0x1c72c8(0xfb)](_0x3164ba),_0x394234=await _0x1919fd['getReservation']({'token':_0x5670d5});return _0x2fe947['status'](0xc8)['json'](_0x476fc0['jkjrO'](createResponse,0xc8,_0x476fc0[_0x1c72c8(0x124)],_0x394234));}catch(_0x550e18){return _0x476fc0[_0x1c72c8(0x12a)](_0x5c85f2,_0x2fe947,_0x550e18,_0x476fc0['uwZUS']);}}),_0x2b1ea1['post'](_0x32dcaf(0xf8),async(_0x5f5882,_0x4b2252)=>{const _0x58f123=_0x32dcaf;try{const {resource:_0x2e4f6e,digits:_0x31bfa6,ensureUnique:_0x392f39,ttl:_0xca0ba9,maxRetry:_0x1f3df8}=_0x5f5882['body']||{},_0x4f8340=_0x1e5155(_0x5f5882),_0x1d58a6=_0x476fc0['KmoIc'](_0x3164ba),_0x167f50=await _0x1d58a6[_0x58f123(0x121)]({'resource':_0x2e4f6e,'digits':_0x31bfa6,'ensureUnique':_0x392f39,'ttl':_0xca0ba9,'maxRetry':_0x1f3df8,'idempotencyKey':_0x4f8340});return _0x4b2252[_0x58f123(0xf2)](0xc9)[_0x58f123(0xed)](_0x476fc0['jkjrO'](createResponse,0xc9,'PIN\x20generated\x20successfully',_0x167f50));}catch(_0x1c2dcd){return _0x5c85f2(_0x4b2252,_0x1c2dcd,'idgen_route_pin_error');}}),_0x2b1ea1[_0x32dcaf(0x10f)]('/serial',async(_0x35ef19,_0x154693)=>{const _0x44ce19=_0x32dcaf;try{const {resource:_0x3c6632,pattern:_0x1c59bb,ensureUnique:_0x42e0b8,ttl:_0x18dbce,maxRetry:_0x598d83}=_0x35ef19[_0x44ce19(0x114)]||{},_0xdae00f=_0x476fc0[_0x44ce19(0x103)](_0x1e5155,_0x35ef19),_0x5028f4=_0x3164ba(),_0x41884a=await _0x5028f4['serial']({'resource':_0x3c6632,'pattern':_0x1c59bb,'ensureUnique':_0x42e0b8,'ttl':_0x18dbce,'maxRetry':_0x598d83,'idempotencyKey':_0xdae00f});return _0x154693['status'](0xc9)['json'](createResponse(0xc9,_0x476fc0['itImN'],_0x41884a));}catch(_0x1367ce){return _0x476fc0[_0x44ce19(0x118)](_0x5c85f2,_0x154693,_0x1367ce,'idgen_route_serial_error');}}),_0x2b1ea1['post'](_0x32dcaf(0x111),async(_0x368667,_0x427782)=>{const _0x24cdeb=_0x32dcaf;try{const {resource:_0x450146,pattern:_0x4a618e,ensureUnique:_0x566565,ttl:_0x5a3775,maxRetry:_0x4f5426}=_0x368667[_0x24cdeb(0x114)]||{},_0x3f7174=_0x1e5155(_0x368667),_0x1f0b82=_0x3164ba(),_0x5e8e93=await _0x1f0b82[_0x24cdeb(0x11d)]({'resource':_0x450146,'pattern':_0x4a618e,'ensureUnique':_0x566565,'ttl':_0x5a3775,'maxRetry':_0x4f5426,'idempotencyKey':_0x3f7174});return _0x427782['status'](0xc9)['json'](createResponse(0xc9,_0x476fc0[_0x24cdeb(0x129)],_0x5e8e93));}catch(_0x56195d){return _0x5c85f2(_0x427782,_0x56195d,_0x476fc0[_0x24cdeb(0x110)]);}}),_0x2b1ea1[_0x32dcaf(0x10f)](_0x476fc0['TlbGY'],async(_0x2bfe49,_0xc3bb78)=>{const _0xf93d05=_0x32dcaf;try{const {resource:_0x3f4757,pattern:_0x31dc8f,ensureUnique:_0x4ad6c2,ttl:_0x3357c8,maxRetry:_0xae8622}=_0x2bfe49['body']||{},_0x314f35=_0x1e5155(_0x2bfe49),_0x244f5e=_0x476fc0[_0xf93d05(0x12e)](_0x3164ba),_0x1ac3b2=await _0x244f5e['random']({'resource':_0x3f4757,'pattern':_0x31dc8f,'ensureUnique':_0x4ad6c2,'ttl':_0x3357c8,'maxRetry':_0xae8622,'idempotencyKey':_0x314f35});return _0xc3bb78[_0xf93d05(0xf2)](0xc9)['json'](_0x476fc0['AWxMX'](createResponse,0xc9,_0x476fc0[_0xf93d05(0xf7)],_0x1ac3b2));}catch(_0x65f9c6){return _0x5c85f2(_0xc3bb78,_0x65f9c6,_0xf93d05(0x12f));}}),_0x2b1ea1['post'](_0x476fc0[_0x32dcaf(0xfc)],async(_0x47ef39,_0x3e69b2)=>{const _0x1abaac=_0x32dcaf;try{const {resource:_0x4adfab,value:_0x50ad9d}=_0x47ef39[_0x1abaac(0x114)]||{},_0xf55799=_0x3164ba(),_0x5539d7=await _0xf55799['consume']({'resource':_0x4adfab,'value':_0x50ad9d});return _0x3e69b2[_0x1abaac(0xf2)](0xc8)['json'](createResponse(0xc8,_0x1abaac(0x13a),_0x5539d7));}catch(_0x4cfc0b){return _0x476fc0[_0x1abaac(0xe7)](_0x5c85f2,_0x3e69b2,_0x4cfc0b,'idgen_route_consume_error');}}),_0x2b1ea1['get'](_0x476fc0[_0x32dcaf(0xf9)],async(_0x1d01ba,_0x43a988)=>{const _0x9aabd8=_0x32dcaf;try{const {resource:_0x1f1b66}=_0x1d01ba['params'],{mode:_0x443c8c,format:_0x1402b3,prefix:_0x3c3a3b}=_0x1d01ba[_0x9aabd8(0xf1)],_0x261994=_0x476fc0['LrnSQ'](_0x3164ba),_0x2110b6=await _0x261994[_0x9aabd8(0x134)]({'resource':_0x1f1b66,'mode':_0x443c8c||'number','format':_0x1402b3,'prefix':_0x3c3a3b});return _0x43a988[_0x9aabd8(0xf2)](0xc8)['json'](_0x476fc0['qICoT'](createResponse,0xc8,_0x476fc0['qOJkP'],_0x2110b6));}catch(_0x254c19){return _0x5c85f2(_0x43a988,_0x254c19,'idgen_route_info_error');}}),_0x2b1ea1['post'](_0x32dcaf(0x113),async(_0x129d14,_0x2728c8)=>{const _0x4b94fa=_0x32dcaf;try{const {resource:_0x49e7a4,mode:_0x40c7d1,format:_0x3efc64,prefix:_0x5e18b4}=_0x129d14['body']||{},_0x41f06b=_0x3164ba(),_0x251796=await _0x41f06b['reset']({'resource':_0x49e7a4,'mode':_0x476fc0['juTei'](_0x40c7d1,_0x476fc0['PfXPz']),'format':_0x3efc64,'prefix':_0x5e18b4});return _0x2728c8[_0x4b94fa(0xf2)](0xc8)['json'](_0x476fc0[_0x4b94fa(0x118)](createResponse,0xc8,_0x476fc0['cjSzX'],_0x251796));}catch(_0xb19fb){return _0x476fc0[_0x4b94fa(0x11f)](_0x5c85f2,_0x2728c8,_0xb19fb,_0x476fc0[_0x4b94fa(0xe8)]);}}),_0x2b1ea1[_0x32dcaf(0x127)](_0x476fc0[_0x32dcaf(0x135)],async(_0x3d00c9,_0x31b9c2)=>{const _0x40056d=_0x32dcaf;try{const _0x92547d=_0x3164ba(),_0xbe9f0=_0x92547d[_0x40056d(0x115)]();let _0x37909f=![],_0xf78dfa=null;try{_0x37909f=await redisClient['ping'](0xbb8);}catch(_0xc01852){_0xf78dfa=_0xc01852[_0x40056d(0x137)];}const _0x5e8e75=process['env'][_0x40056d(0x139)]===_0x476fc0['kTydn'],_0x331104=_0x476fc0[_0x40056d(0xf5)](process['env'][_0x40056d(0x120)],'true');if(_0x476fc0['Wzaky'](!_0xbe9f0,!_0x37909f))return _0x31b9c2['status'](0x1f7)['json'](createError(0x1f7,_0x40056d(0x133),{'enabled':_0xbe9f0,'redisConnected':_0x37909f,'lockEnabled':_0x5e8e75,'idempotencyEnabled':_0x331104,'error':_0xf78dfa||(!_0xbe9f0?_0x476fc0['WRGZh']:_0x40056d(0xe6))}));return _0x31b9c2[_0x40056d(0xf2)](0xc8)[_0x40056d(0xed)](createResponse(0xc8,'ID\x20Generator\x20service\x20is\x20healthy',{'enabled':_0xbe9f0,'redisConnected':_0x37909f,'lockEnabled':_0x5e8e75,'idempotencyEnabled':_0x331104}));}catch(_0x3bdace){return _0x5c85f2(_0x31b9c2,_0x3bdace,_0x476fc0[_0x40056d(0x106)]);}}),_0x2b1ea1;}function a0_0x47ec(_0x19ba4d,_0x4f58f5){_0x19ba4d=_0x19ba4d-0xe5;const _0x1ffcf2=a0_0x1ffc();let _0x47ec8=_0x1ffcf2[_0x19ba4d];if(a0_0x47ec['dTmMfy']===undefined){var _0x193690=function(_0x12562d){const _0x36bd4d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2cc997='',_0x1c2f29='';for(let _0x106668=0x0,_0x22fee2,_0x5644cf,_0x337326=0x0;_0x5644cf=_0x12562d['charAt'](_0x337326++);~_0x5644cf&&(_0x22fee2=_0x106668%0x4?_0x22fee2*0x40+_0x5644cf:_0x5644cf,_0x106668++%0x4)?_0x2cc997+=String['fromCharCode'](0xff&_0x22fee2>>(-0x2*_0x106668&0x6)):0x0){_0x5644cf=_0x36bd4d['indexOf'](_0x5644cf);}for(let _0x7d2de2=0x0,_0x2c59c5=_0x2cc997['length'];_0x7d2de2<_0x2c59c5;_0x7d2de2++){_0x1c2f29+='%'+('00'+_0x2cc997['charCodeAt'](_0x7d2de2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c2f29);};a0_0x47ec['LKxvJx']=_0x193690,a0_0x47ec['ojLOEX']={},a0_0x47ec['dTmMfy']=!![];}const _0x36c450=_0x1ffcf2[0x0],_0x47bf90=_0x19ba4d+_0x36c450,_0x5eadd3=a0_0x47ec['ojLOEX'][_0x47bf90];return!_0x5eadd3?(_0x47ec8=a0_0x47ec['LKxvJx'](_0x47ec8),a0_0x47ec['ojLOEX'][_0x47bf90]=_0x47ec8):_0x47ec8=_0x5eadd3,_0x47ec8;}module[a0_0x2c9b07(0xe9)]=createIdgenRoutes;function a0_0x1ffc(){const _0x2b0b05=['ALfgEvq','C3rHy2S','EhnnweW','tNvTyMvYihjLBgvHC2vKihrVihjLDxnLihbVB2W','l3jLC2vYDMuVoNrVA2vU','zxH0zw5KuMvZzxj2yxrPB24','uMfUzg9TihzHBhvLigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','BMfTzq','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','tNvTyMvYigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','mJqXnJy0ze5zA01s','Cg9ZDa','B1LPs1u','l2nVzgu','uMvZB3vYy2uGAw5MBYbYzxrYAwv2zwq','l3jLC2v0','yM9KEq','AxnfBMfIBgvK','zKT6DKW','q2nnDxa','CfnmsMm','ng1bDe52sq','Dg1sBKm','l3jHBMrVBq','AwrNzw5FCM91DgvFAgvHBhrOx2vYCM9Y','y29Kzq','swrhzw5LCMf0B3jfCNjVCG','uejHs0m','surftvbpvevoq1LFru5bqKXfra','CgLU','zNvrt0C','lI4VlI4VDxrPBhmVAwqTz2vUzxjHDg9Y','r3bPy1u','mtCXnZq1nfj1vvPsEq','mZa2rvbnEhjP','z2v0','zxjYB3i','rMPnuKu','vvPvqLO','BwrQswG','l2HLywX0Aa','mZa1otr2B2L0vuK','thjUu1e','AwrNzw5FCM91DgvFCMfUzg9Tx2vYCM9Y','oti3nZqZmfjzuLHbzW','otyXmZC0mgv2AxL4Ba','wg5VCwe','suqGr2vUzxjHDg9YihnLCNzPy2uGDw5HDMfPBgfIBgu','z2v0sw5MBW','ue9muKG','uMvZzxj2yxrPB24Gy29UzMLYBwvK','BwvZC2fNzq','zgv0ywLSCW','te9ds19esvnuuKLcvvrfrf9ftKfcteve','vMfSDwuGy29UC3vTzwq','sw50zxjUywWGC2vYDMvYigvYCM9Y','uMvKAxmGBM90ignVBM5Ly3rLza','sNLTCKe','twfSz2S','zxHWB3j0CW','lI4VlI4VDxrPBhmVBg9Nz2vY','odi2CwXVqwzw','ndC2m0vWtLPYCW','ANnVBG','B2vTsKG','l3jLC2vYDMuVy2fUy2vS','BNvTyMvY','CxvLCNK','C3rHDhvZ','DxLpuwe','mZu3ntbrAezez0O','tuXLrgy','zxHWCMvZCW','C2TiC1C','l3bPBG','vvbkA28','vwjwq0K','ruTstvu','vhnwA0S','AvreCuO','mJa4nZm4u0z5zfjd','uMvZzxj2yxrPB24GzxH0zw5Kzwq','m1zKB0zosG','Dhj1zq','uMvZzxj2yxrPB24Gy2fUy2vSBgvK','CgXtu24'];a0_0x1ffc=function(){return _0x2b0b05;};return a0_0x1ffc();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x37fddc=a0_0x2bc7;(function(_0x44cde1,_0x4f3138){const _0x27b9e4=a0_0x2bc7,_0x608b9d=_0x44cde1();while(!![]){try{const _0x2f9642=-parseInt(_0x27b9e4(0x16c))/0x1+-parseInt(_0x27b9e4(0x187))/0x2*(parseInt(_0x27b9e4(0x16a))/0x3)+-parseInt(_0x27b9e4(0x173))/0x4+-parseInt(_0x27b9e4(0x162))/0x5*(parseInt(_0x27b9e4(0x164))/0x6)+-parseInt(_0x27b9e4(0x189))/0x7*(parseInt(_0x27b9e4(0x170))/0x8)+-parseInt(_0x27b9e4(0x16b))/0x9*(-parseInt(_0x27b9e4(0x185))/0xa)+parseInt(_0x27b9e4(0x172))/0xb;if(_0x2f9642===_0x4f3138)break;else _0x608b9d['push'](_0x608b9d['shift']());}catch(_0xf2f986){_0x608b9d['push'](_0x608b9d['shift']());}}}(a0_0xcbd6,0x3a53c));const dbType=(process['env'][a0_0x37fddc(0x182)]||a0_0x37fddc(0x161))['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x37fddc(0x167));executeQuery=(_0x639408,_0x2c9704)=>oracleDb['executeQuery'](_0x639408,_0x2c9704);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x44e5a9,_0x346086)=>mysqlDb['executeQuery'](_0x44e5a9,_0x346086);}else executeQuery=require('../../core/utils/db')[a0_0x37fddc(0x166)];}const {logger}=require('../../core/utils/logger');class LookupResolver{constructor(){const _0x9a5d8b=a0_0x37fddc;this[_0x9a5d8b(0x188)]=new Map();}['clearCache'](){const _0x57a56c=a0_0x37fddc;this['lookupCache']['clear'](),logger['debug']({'event':_0x57a56c(0x171)},'Lookup\x20cache\x20cleared');}async['loadLookupTable'](_0xf4f5a,_0x50e054,_0x2464cf){const _0x9e4112=a0_0x37fddc,_0x28157c={'lcQYU':function(_0x16b42e,_0x2f8942){return _0x16b42e!==_0x2f8942;},'GrAYY':function(_0x460243,_0x4c489a){return _0x460243!==_0x4c489a;},'NNrnU':function(_0x44208a,_0x21a3cd){return _0x44208a!==_0x21a3cd;},'lNWzn':function(_0x3ede91,_0x4ca257){return _0x3ede91(_0x4ca257);},'JcLWz':function(_0x5a2334,_0xce49db){return _0x5a2334(_0xce49db);},'QpOiR':_0x9e4112(0x18c)},_0x29f734=_0xf4f5a+':'+_0x50e054+':'+_0x2464cf;if(this[_0x9e4112(0x188)][_0x9e4112(0x181)](_0x29f734))return this[_0x9e4112(0x188)][_0x9e4112(0x186)](_0x29f734);try{const _0x2272a2='SELECT\x20'+_0x2464cf+',\x20'+_0x50e054+'\x20FROM\x20'+_0xf4f5a,_0x4f3cbb=await executeQuery(_0x2272a2),_0x20df45=new Map();return _0x4f3cbb[_0x9e4112(0x178)](_0x41ab5f=>{const _0x495d53=_0x9e4112,_0x19a7c4=_0x41ab5f[_0x50e054]!==undefined?_0x41ab5f[_0x50e054]:_0x41ab5f[_0x50e054['toUpperCase']()],_0x326a6d=_0x28157c['lcQYU'](_0x41ab5f[_0x2464cf],undefined)?_0x41ab5f[_0x2464cf]:_0x41ab5f[_0x2464cf[_0x495d53(0x179)]()];_0x28157c['GrAYY'](_0x19a7c4,null)&&_0x28157c['NNrnU'](_0x19a7c4,undefined)&&(_0x20df45['set'](_0x28157c['lNWzn'](String,_0x19a7c4)['toLowerCase']()[_0x495d53(0x160)](),_0x326a6d),_0x20df45['set'](_0x28157c['JcLWz'](String,_0x19a7c4)[_0x495d53(0x160)](),_0x326a6d));}),this[_0x9e4112(0x188)][_0x9e4112(0x184)](_0x29f734,_0x20df45),logger[_0x9e4112(0x17b)]({'event':_0x28157c['QpOiR'],'table':_0xf4f5a,'column':_0x50e054,'count':_0x4f3cbb['length']},_0x9e4112(0x17a)+_0xf4f5a),_0x20df45;}catch(_0x6fce7d){logger['error']({'event':'lookup_table_load_error','table':_0xf4f5a,'error':_0x6fce7d['message']},_0x9e4112(0x18a)+_0xf4f5a);throw _0x6fce7d;}}[a0_0x37fddc(0x175)](_0x33557a,_0x164100){const _0x49543a=a0_0x37fddc,_0x436822={'qzLtc':function(_0x2ec466,_0x39bf5d){return _0x2ec466===_0x39bf5d;},'JJHaK':function(_0x35d63a,_0x3e8a9f){return _0x35d63a(_0x3e8a9f);}};if(_0x33557a===null||_0x436822[_0x49543a(0x18b)](_0x33557a,undefined)||_0x436822['qzLtc'](_0x33557a,''))return null;const _0x5729df=_0x436822['JJHaK'](String,_0x33557a)[_0x49543a(0x160)]();if(_0x164100[_0x49543a(0x181)](_0x5729df))return _0x164100[_0x49543a(0x186)](_0x5729df);const _0xce806b=_0x5729df[_0x49543a(0x183)]();if(_0x164100[_0x49543a(0x181)](_0xce806b))return _0x164100['get'](_0xce806b);return null;}async['processLookupFields'](_0x4c7c4a,_0x305593){const _0x4d5cbe=a0_0x37fddc,_0x3c0d23={'TopYw':function(_0x248cd0,_0x3be369){return _0x248cd0===_0x3be369;},'lHEwy':function(_0x305e15,_0x40dfc9){return _0x305e15!==_0x40dfc9;},'EIvFf':_0x4d5cbe(0x169)};if(!_0x305593||Object['keys'](_0x305593)['length']===0x0)return{'processedRows':_0x4c7c4a,'errors':[]};const _0x1c357d=[],_0x283a1=new Map();for(const [_0x409244,_0x55f1f6]of Object[_0x4d5cbe(0x163)](_0x305593)){const {lookupTable:_0x52fd57,lookupColumn:_0x24ebc2,lookupIdColumn:_0x61e2f6}=_0x55f1f6,_0x3ec98f=_0x52fd57+':'+_0x24ebc2+':'+_0x61e2f6;if(!_0x283a1[_0x4d5cbe(0x181)](_0x3ec98f)){const _0x331cd5=await this['loadLookupTable'](_0x52fd57,_0x24ebc2,_0x61e2f6);_0x283a1['set'](_0x3ec98f,_0x331cd5);}}const _0x1f82b5=_0x4c7c4a['map']((_0x5eeb0d,_0x1cfa15)=>{const _0x30177e=_0x4d5cbe,_0x51387b={..._0x5eeb0d};for(const [_0x51fe0a,_0x165f7f]of Object[_0x30177e(0x163)](_0x305593)){const {lookupTable:_0x211a3f,lookupColumn:_0x2ca28a,lookupIdColumn:_0x3fc0aa,targetField:_0x5290ea,required:_0x227f90}=_0x165f7f,_0x53a781=_0x211a3f+':'+_0x2ca28a+':'+_0x3fc0aa,_0x3d71f7=_0x283a1[_0x30177e(0x186)](_0x53a781),_0x178531=_0x5eeb0d[_0x51fe0a];if((_0x178531===null||_0x178531===undefined||_0x3c0d23[_0x30177e(0x174)](_0x178531,''))&&!_0x227f90){_0x51387b[_0x5290ea]=null;continue;}const _0x199180=this[_0x30177e(0x175)](_0x178531,_0x3d71f7);_0x3c0d23[_0x30177e(0x16e)](_0x199180,null)?_0x51387b[_0x5290ea]=_0x199180:(_0x227f90&&_0x1c357d[_0x30177e(0x177)]({'rowIndex':_0x1cfa15,'field':_0x51fe0a,'value':_0x178531,'targetField':_0x5290ea,'lookupTable':_0x211a3f,'message':'Value\x20\x22'+_0x178531+_0x30177e(0x17c)+_0x211a3f}),_0x51387b[_0x5290ea]=null);}return _0x51387b;});return logger[_0x4d5cbe(0x17b)]({'event':'lookup_fields_processed','totalRows':_0x4c7c4a[_0x4d5cbe(0x17d)],'errorCount':_0x1c357d[_0x4d5cbe(0x17d)],'lookupFieldCount':Object['keys'](_0x305593)[_0x4d5cbe(0x17d)]},_0x3c0d23['EIvFf']),{'processedRows':_0x1f82b5,'errors':_0x1c357d};}[a0_0x37fddc(0x165)](_0x121db1,_0x41e870){const _0x357d41=a0_0x37fddc,_0x500829={'pENik':function(_0x47266d,_0x33eb01){return _0x47266d!==_0x33eb01;},'uWVQM':function(_0x1a9c1f,_0x321213){return _0x1a9c1f!==_0x321213;}},_0xae7e6f=new Set();return _0x121db1[_0x357d41(0x178)](_0x34075b=>{const _0x4a44f8=_0x357d41,_0x54a76d=_0x34075b[_0x41e870];_0x54a76d!==null&&_0x500829[_0x4a44f8(0x17e)](_0x54a76d,undefined)&&_0x500829[_0x4a44f8(0x17f)](_0x54a76d,'')&&_0xae7e6f['add'](String(_0x54a76d)[_0x4a44f8(0x160)]());}),Array[_0x357d41(0x180)](_0xae7e6f);}async[a0_0x37fddc(0x16f)](_0x2271da,_0x301842){const _0x513e81=a0_0x37fddc,_0x246d9d={'GplXi':function(_0x5726a4,_0x223771){return _0x5726a4!==_0x223771;},'OJOow':function(_0x13ebb5,_0x55019d){return _0x13ebb5===_0x55019d;}};if(!_0x301842||_0x246d9d[_0x513e81(0x168)](Object['keys'](_0x301842)[_0x513e81(0x17d)],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x3fecc9=[],_0x15d2f0={};for(const [_0x4256d0,_0x1d08e0]of Object[_0x513e81(0x163)](_0x301842)){const {lookupTable:_0x4cc5e8,lookupColumn:_0x2f4391,lookupIdColumn:_0xbe5fff,required:_0x39ff32}=_0x1d08e0,_0x296ef2=this[_0x513e81(0x165)](_0x2271da,_0x4256d0),_0x5ac6be=await this['loadLookupTable'](_0x4cc5e8,_0x2f4391,_0xbe5fff),_0x3ab559=[],_0x3410bb=[];_0x296ef2[_0x513e81(0x178)](_0x25cf7a=>{const _0x4d456a=_0x513e81,_0x4546ae=this[_0x4d456a(0x175)](_0x25cf7a,_0x5ac6be);_0x246d9d['GplXi'](_0x4546ae,null)?_0x3410bb['push'](_0x25cf7a):_0x3ab559['push'](_0x25cf7a);});if(_0x3ab559['length']>0x0&&_0x39ff32){_0x3fecc9[_0x513e81(0x177)]({'field':_0x4256d0,'lookupTable':_0x4cc5e8,'invalidValues':_0x3ab559,'message':_0x3ab559['length']+_0x513e81(0x16d)+_0x4cc5e8});const _0x32a6c5=[];_0x5ac6be[_0x513e81(0x178)]((_0x2b27dc,_0x104bcd)=>{const _0x298c91=_0x513e81;if(_0x246d9d['OJOow'](_0x104bcd,_0x104bcd[_0x298c91(0x183)]()))return;_0x32a6c5['push'](_0x104bcd);}),_0x15d2f0[_0x4256d0]={'invalidValues':_0x3ab559,'availableValues':_0x32a6c5['slice'](0x0,0x32)};}}return{'valid':_0x246d9d[_0x513e81(0x168)](_0x3fecc9[_0x513e81(0x17d)],0x0),'errors':_0x3fecc9,'suggestions':_0x15d2f0};}}function a0_0x2bc7(_0x1bf51d,_0x162d46){_0x1bf51d=_0x1bf51d-0x160;const _0xcbd6a5=a0_0xcbd6();let _0x2bc751=_0xcbd6a5[_0x1bf51d];if(a0_0x2bc7['onhEZS']===undefined){var _0x50100f=function(_0x3ab812){const _0x4e844a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5f5cfb='',_0x438cad='';for(let _0xcf8b02=0x0,_0x4cd6c3,_0x7a5e3f,_0xf0f390=0x0;_0x7a5e3f=_0x3ab812['charAt'](_0xf0f390++);~_0x7a5e3f&&(_0x4cd6c3=_0xcf8b02%0x4?_0x4cd6c3*0x40+_0x7a5e3f:_0x7a5e3f,_0xcf8b02++%0x4)?_0x5f5cfb+=String['fromCharCode'](0xff&_0x4cd6c3>>(-0x2*_0xcf8b02&0x6)):0x0){_0x7a5e3f=_0x4e844a['indexOf'](_0x7a5e3f);}for(let _0x3ca4b9=0x0,_0x3b2773=_0x5f5cfb['length'];_0x3ca4b9<_0x3b2773;_0x3ca4b9++){_0x438cad+='%'+('00'+_0x5f5cfb['charCodeAt'](_0x3ca4b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x438cad);};a0_0x2bc7['HiFWLy']=_0x50100f,a0_0x2bc7['uXgMJg']={},a0_0x2bc7['onhEZS']=!![];}const _0x4193fa=_0xcbd6a5[0x0],_0x486bff=_0x1bf51d+_0x4193fa,_0x346fea=a0_0x2bc7['uXgMJg'][_0x486bff];return!_0x346fea?(_0x2bc751=a0_0x2bc7['HiFWLy'](_0x2bc751),a0_0x2bc7['uXgMJg'][_0x486bff]=_0x2bc751):_0x2bc751=_0x346fea,_0x2bc751;}function a0_0xcbd6(){const _0x41e1dc=['zNjVBq','AgfZ','rejFvfLqrq','Dg9mB3DLCKnHC2u','C2v0','mJbZrvrcAei','z2v0','mJu3ohDWAuzlzq','Bg9VA3vWq2fJAgu','mtC3ndi0ohP6Efjiwq','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','CxPmDgm','Bg9VA3vWx3rHyMXLx2XVywrLza','DhjPBq','Cg9ZDgDYzxnXBa','nZC3mJK1teHVtgPw','zw50CMLLCW','mtHzAuPrufO','z2v0rgLZDgLUy3rwywX1zxm','zxHLy3v0zvf1zxj5','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','t0PpB3C','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','ntq5qM14C2Hx','nJuWnJq2rKjStwTU','ndC3nJGXDKfYAvzh','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','BeHfD3K','DMfSAwrHDgvmB29RDxbwywX1zxm','ohHmsuXSza','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','mty5otq4mJrLCuzfr1a','nJKWmJbks1Pezvi','vg9WwxC','CMvZB2X2zuXVB2T1CfzHBhvL','zxHWB3j0CW','ChvZAa','zM9YrwfJAa','Dg9vChbLCKnHC2u','tg9VA3vWihrHyMXLigXVywrLzdOG','Aw5MBW','iIbUB3qGzM91BMqGAw4G','BgvUz3rO','CevoAwS','DvDwuu0'];a0_0xcbd6=function(){return _0x41e1dc;};return a0_0xcbd6();}module[a0_0x37fddc(0x176)]=new LookupResolver();
|