@restforgejs/platform 5.2.16 → 5.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/restforge-designer-linux +0 -0
- package/bin/restforge-designer.exe +0 -0
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/cli/designer.js +3 -0
- package/generators/cli/endpoint/create.js +69 -6
- package/generators/cli/fast-track.js +7 -7
- package/generators/cli/payload/sync.js +16 -6
- package/generators/cli/project/auth.js +2 -2
- package/generators/cli/project/sdk.js +112 -0
- package/generators/lib/arg-parser.js +6 -0
- package/generators/lib/auth/processor-generator.js +5 -3
- package/generators/lib/auth/templates/processor/google.js.tmpl +178 -0
- package/generators/lib/auth/templates/processor/login.js.tmpl +8 -8
- package/generators/lib/auth/templates/processor/logout.js.tmpl +2 -2
- package/generators/lib/auth/templates/processor/me.js.tmpl +2 -2
- package/generators/lib/auth/templates/processor/refresh.js.tmpl +6 -6
- package/generators/lib/auth/templates/processor/register.js.tmpl +4 -4
- package/generators/lib/auth/templates/processor/reset-password.js.tmpl +7 -7
- package/generators/lib/auth/templates/rfx_auth.js.tmpl +3 -0
- 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 +3 -2
- 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_0x48d061=a0_0x35ec;(function(_0x2b87ba,_0x454fec){const _0x47b0bc=a0_0x35ec,_0x46ccb0=_0x2b87ba();while(!![]){try{const _0x16dd49=-parseInt(_0x47b0bc(0x1f4))/0x1*(-parseInt(_0x47b0bc(0x214))/0x2)+parseInt(_0x47b0bc(0x21f))/0x3+parseInt(_0x47b0bc(0x23a))/0x4+parseInt(_0x47b0bc(0x243))/0x5*(-parseInt(_0x47b0bc(0x204))/0x6)+-parseInt(_0x47b0bc(0x25e))/0x7+-parseInt(_0x47b0bc(0x23f))/0x8+parseInt(_0x47b0bc(0x21d))/0x9*(-parseInt(_0x47b0bc(0x22c))/0xa);if(_0x16dd49===_0x454fec)break;else _0x46ccb0['push'](_0x46ccb0['shift']());}catch(_0x2d52b9){_0x46ccb0['push'](_0x46ccb0['shift']());}}}(a0_0x112b,0x68fe3));function a0_0x112b(){const _0x104f7f=['r1PNzfq','y2f0y2G','ndznvxblzxC','q29SDw1UigzVCM1HDhmGyxbWBgLLzcb0BYbYB3DZ','vvbeqvrf','ugLTEwC','x2fJDgLVBG','zgf0zq','rvzuCgK','B3jPz2LUywXUyw1L','zNjVBq','mtyZmtDMDu9ws0K','C2v0','mJe0nZuYmgDhyNbIsW','u3Hmz1y','y3jLyxrLq29TBwL0sM9I','C3fS','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','vvLTswC','lI4VlI4VDgvTCc91CgXVywrZlW','uLrNAwy','z2vUzxjHDgvjza','B3jHy2XL','Bwf0y2G','vKjAs1G','CvDXzwG','mty2mhrbqwTbzG','rMfPBgvKihrVignSzwfUDxaGzMLSzq','v1Lhvuq','DxbSB2fKrMLSzq','rhzxsLa','Aw5KzxHpzG','ww9iqNi','y3jLyxrLzf9HDa','ChjLDMLLD19WCM9JzxnZx2vYCM9Y','DgvZDa','Dg9ju09tDhjPBMC','qNjdANG','z2v0rNvSBfLLyxi','q29TBwL0ihbYB2nLC3nPBMCGzMfPBgvK','mtyWnteXmNrqsNPiBG','zgvMyxvSDa','BgfIzwXFDg9FzMLLBgrFBwfWx2j1AwX0','uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','B1rOA3m','ndC0ndKZnMvwwg9xuq','rxHJzwWGC3rYDwn0DxjLig1PC21HDgnOlIbnAxnZAw5NigzPzwXKCZOG','CgfYC2vfEgnLBezPBgu','Aw5Zzxj0','mJb6Dgvlt2S','ChjVy2vZC0nVBw1PDePVyG','yNvPBgrmywjLBfrVrMLLBgrnyxa','x2v4Axn0Aw5Nswq','jdfFjdi','CMvWBgfJzq','C1DeDLy','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','DxbKyxrLx2v4Axn0Aw5N','ChjVy2vZC1bYzxzPzxDkB2i','x2DLBMvYyxrLzf91DwLK','zxHLy3v0zvrYyw5Zywn0Aw9U','DxbSB2fKx2LK','Dg9mB3DLCKnHC2u','zw50CMLLCW','AgvHzgvYC19TyxbWzwq','y29SDw1UrM9YBwf0CW','y291BNq','AwLLq1C','Dg9tDhjPBMC','CgfYyw1Z','DxbSB2fKrgLY','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','Euv0BK4','C3rYAw5N','zw52','igf0ihjVDYa','odG3mtu5rezsCKXJ','yNvPBgrcyxrJAeLUC2vYDa','ChjVy2vZC0XVB2T1CezPzwXKCW','C2v0sM9I','Eunjqum','y1LOC00','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','z2v0sM9I','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','DhLWzq','ChjVy2vZC2LUz19SB29RDxbFzMLLBgrZ','uhjLDMLLDYbQB2iGzMfPBgvK','sw1bww8','kqOGicaGica','lI91ChnLCNqTyNvPBgrLCG','wMvdsuC','ChjLDMLLD19VAW','AM9PBG','Aw5MBW','zMLUza','AM9IoG','ufLezK4','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','DxbSB2fKoG','lI9LEgnLBc1WyxjZzxi','CgfKu3rHCNq','zfDPzMi','C2XPy2u','wwDYCeS','yxbWBhLdB2X1Bw5gB3jTyxrZ','ChjLDMLLD19QB2jFzMfPBgvK','A2v5CW','zxjYB3jZ','BgXVrfO','zM9YrwfJAa','z3zyyKm','DMfSAwrHDgLUzW','y29TBwL0x3bYB2nLC3nFzxjYB3i','Aw5JBhvKzxm','AfbTA1e','BwvZC2fNzq','CuHmrxO','BgvUz3rO','x3vWBg9HzerPCG','rejFvfLqrq','zMLSDgvY','zMLSzv9JBgvHBNvWx2vYCM9Y','AfjSzfe','ChjVBwLZzxm','C2L6zq','EffYr1a','lI4VlI4Vy29Yzs91DgLSCY9KyG','x2vYCM9YCW','y29SDw1Ux2zVCM1HDhnFyxbWBgLLza','z2v0rgf0zq','su5trvju','yxv0B0DLBMvYyxrLvxbZzxj0s2v5CW','yMf0y2HwywXPzgf0zvjVD3m','ChjVy2vZC2vKuM93CW','q2fUBM90ignVBw1PDdOGChjLDMLLDYbZDgf0DxmGAxmG','rNfouMC','C3rHDhvZ','CM93sw5KzxG','Cgf0Aa','tgfIzwWGDg8GzMLLBgqGBwfWCgLUzYbIDwLSDa','q29TBwL0igPVyIbMywLSzwq','DLPqDhy','z2v0tw9UDgG','zMfPBgvK','mtCYotvqD0nfuhO','zxHLy3v0zvf1zxj5','y2H1BMTsB3DZ','BNvTyMvY','EKTXu3K','ChjLDMLLD19LCNjVCG','y29TBwL0x2PVyL9MywLSzwq','DMfSDwvZ','CM93CW','rhvWBgLJyxrLihzHBhvLigzVCIa','zgvIDwC','CMfUzg9T','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','DMzQAfy','AM9Ix2LK','BwfW','otyWnJbMyvrXALK','r3nXuvC','uvPTA2W','A0jesw0','ChvZAa','qxv0BY1Nzw5LCMf0zwqGvvvjrcbMB3iG','DxvPza','ChjVy2vZC2LUzW','Ehrzvw8','ENrNuNq','t2vgvNi','uhjLDMLLDYbQB2iGy3jLyxrLza','vvbmt0fex0rjuG','rKDKr0S'];a0_0x112b=function(){return _0x104f7f;};return a0_0x112b();}const {v7:uuidv7}=require(a0_0x48d061(0x20a)),path=require('path'),fs=require('fs')[a0_0x48d061(0x1df)],redisHelper=require(a0_0x48d061(0x275)),{logger,logError}=require('../../core/utils/logger'),dbType=(process[a0_0x48d061(0x25c)][a0_0x48d061(0x1db)]||'postgresql')['toLowerCase']();let executeQuery,executeTransaction,oracleDb;if(dbType===a0_0x48d061(0x228))oracleDb=require('../database/db-oracle'),executeQuery=(_0x23f959,_0x436116)=>oracleDb[a0_0x48d061(0x1f5)](_0x23f959,_0x436116),executeTransaction=_0x90e464=>oracleDb['executeTransaction'](_0x90e464);else{if(dbType==='mysql'){const mysqlDb=require(a0_0x48d061(0x223));executeQuery=(_0x542755,_0x598a6d)=>mysqlDb['executeQuery'](_0x542755,_0x598a6d),executeTransaction=_0x2d6e36=>mysqlDb['executeTransaction'](_0x2d6e36);}else{const db=require(a0_0x48d061(0x1e2));executeQuery=db[a0_0x48d061(0x1f5)],executeTransaction=db[a0_0x48d061(0x24e)];}}const excelParser=require(a0_0x48d061(0x277)),importValidator=require('./import-validator'),upsertBuilder=require(a0_0x48d061(0x26c)),lookupResolver=require('../integrations/lookup-resolver');function a0_0x35ec(_0x3ed3a0,_0x59609a){_0x3ed3a0=_0x3ed3a0-0x1d7;const _0x112bfe=a0_0x112b();let _0x35ec24=_0x112bfe[_0x3ed3a0];if(a0_0x35ec['DluHsz']===undefined){var _0x14bfaf=function(_0x2c0e8f){const _0x18d4f3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2a86c1='',_0x5323c0='';for(let _0x5ab135=0x0,_0x26986f,_0x5349ba,_0x56aca7=0x0;_0x5349ba=_0x2c0e8f['charAt'](_0x56aca7++);~_0x5349ba&&(_0x26986f=_0x5ab135%0x4?_0x26986f*0x40+_0x5349ba:_0x5349ba,_0x5ab135++%0x4)?_0x2a86c1+=String['fromCharCode'](0xff&_0x26986f>>(-0x2*_0x5ab135&0x6)):0x0){_0x5349ba=_0x18d4f3['indexOf'](_0x5349ba);}for(let _0x4df7c4=0x0,_0x5c2537=_0x2a86c1['length'];_0x4df7c4<_0x5c2537;_0x4df7c4++){_0x5323c0+='%'+('00'+_0x2a86c1['charCodeAt'](_0x4df7c4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5323c0);};a0_0x35ec['zvijbx']=_0x14bfaf,a0_0x35ec['lesoPs']={},a0_0x35ec['DluHsz']=!![];}const _0x288519=_0x112bfe[0x0],_0x285f8c=_0x3ed3a0+_0x288519,_0x272ceb=a0_0x35ec['lesoPs'][_0x285f8c];return!_0x272ceb?(_0x35ec24=a0_0x35ec['zvijbx'](_0x35ec24),a0_0x35ec['lesoPs'][_0x285f8c]=_0x35ec24):_0x35ec24=_0x272ceb,_0x35ec24;}class ImportService{constructor(){const _0x3da479=a0_0x48d061;this[_0x3da479(0x1da)]=null;}get[a0_0x48d061(0x258)](){const _0x3483c3=a0_0x48d061;if(!this[_0x3483c3(0x1da)]){const _0x262881=process['env']['RESTFORGE_PROJECT_NAME']||_0x3483c3(0x23b);this['_uploadDir']=process[_0x3483c3(0x25c)][_0x3483c3(0x210)]||path['join'](__dirname,_0x3483c3(0x225)+_0x262881);}return this['_uploadDir'];}['generateId'](){const _0x1c3f7b=a0_0x48d061,_0x445e41={'FGdGK':_0x1c3f7b(0x24a),'lloDZ':function(_0x3c344a){return _0x3c344a();},'qWqeh':function(_0x5074cb,_0x2c97fa){return _0x5074cb-_0x2c97fa;},'yCIAC':function(_0x2c6b2a,_0x44e986){return _0x2c6b2a<_0x44e986;}},_0x50e6b6=_0x445e41[_0x1c3f7b(0x211)],_0x367e36=Date['now']()[_0x1c3f7b(0x256)](0x24),_0x179b15=_0x445e41[_0x1c3f7b(0x280)](uuidv7)[_0x1c3f7b(0x248)](/-/g,'')['substring'](0x0,_0x445e41[_0x1c3f7b(0x22b)](0xc,_0x367e36['length'])),_0x18ccd6=(_0x367e36+_0x179b15)['substring'](0x0,0xc);let _0x427700='';for(let _0x38df6c=0x0;_0x445e41[_0x1c3f7b(0x262)](_0x38df6c,0xc);_0x38df6c++){_0x18ccd6[_0x38df6c]?_0x427700+=_0x18ccd6[_0x38df6c]:_0x427700+=_0x50e6b6['charAt'](Math['floor'](Math[_0x1c3f7b(0x1ff)]()*_0x50e6b6['length']));}return _0x427700;}[a0_0x48d061(0x245)](_0x436afb){const _0x291739=a0_0x48d061,_0x5920fb={'aVkNU':_0x291739(0x247),'vfjhV':_0x291739(0x1ef)},_0x14dfd2=new Map();if(!_0x436afb)return _0x14dfd2;return Object['entries'](_0x436afb)['forEach'](([_0x1d2cd5,_0xae9da2])=>{const _0x180457=_0x291739,_0x52fe49=String(_0xae9da2)['trim']()[_0x180457(0x248)](/\s+/g,'_')[_0x180457(0x248)](/([a-z])([A-Z])/g,_0x5920fb['aVkNU'])['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x180457(0x247))[_0x180457(0x250)]();_0x14dfd2['set'](_0x52fe49,_0x1d2cd5);}),logger['debug']({'event':_0x291739(0x23c),'mappingCount':_0x14dfd2[_0x291739(0x1e0)]},_0x5920fb[_0x291739(0x201)]),_0x14dfd2;}['applyColumnFormats'](_0x147f41,_0x65497c){const _0x1ea375=a0_0x48d061,_0x2f6d7e={'PYDfN':function(_0x346823,_0x40bf58){return _0x346823===_0x40bf58;},'FaSic':_0x1ea375(0x219),'OPMCa':'text','YuSfY':function(_0x26155a,_0x54ae8d){return _0x26155a(_0x54ae8d);},'ImAYo':function(_0x196b88,_0x5059fe){return _0x196b88===_0x5059fe;}};if(!_0x65497c||_0x2f6d7e[_0x1ea375(0x26a)](Object['keys'](_0x65497c)[_0x1ea375(0x1d9)],0x0))return _0x147f41;return _0x147f41['map'](_0x2eb5d4=>{const _0x3ca4a3=_0x1ea375,_0x3fcd4c={..._0x2eb5d4};for(const [_0x190264,_0x546e5a]of Object[_0x3ca4a3(0x251)](_0x65497c)){const _0x316386=_0x3fcd4c[_0x190264];if(_0x316386===null||_0x316386===undefined||_0x2f6d7e[_0x3ca4a3(0x273)](_0x316386,'')){_0x3fcd4c[_0x190264]=null;continue;}switch(_0x546e5a['type']){case _0x2f6d7e['FaSic']:_0x3fcd4c[_0x190264]=this['formatDateForDatabase'](_0x316386);break;case _0x3ca4a3(0x1f7):_0x3fcd4c[_0x190264]=this['formatNumberForDatabase'](_0x316386);break;case _0x2f6d7e['OPMCa']:_0x3fcd4c[_0x190264]=_0x2f6d7e['YuSfY'](String,_0x316386);break;default:break;}}return _0x3fcd4c;});}[a0_0x48d061(0x259)](_0x4f794d){const _0x4bbe67=a0_0x48d061,_0x4920a1={'BrCjx':function(_0x5c850,_0x55972d){return _0x5c850===_0x55972d;},'BsWsl':function(_0x36bf02,_0x1914bc){return _0x36bf02===_0x1914bc;},'qHLEz':'string','WYGUD':function(_0x27cefe,_0x186b58){return _0x27cefe(_0x186b58);},'vZPtv':function(_0x572bc1,_0x4ce210){return _0x572bc1(_0x4ce210);}};if(_0x4920a1[_0x4bbe67(0x237)](_0x4f794d,null)||_0x4f794d===undefined||_0x4920a1['BsWsl'](_0x4f794d,''))return null;if(typeof _0x4f794d===_0x4920a1[_0x4bbe67(0x1d8)]&&/^\d{4}-\d{2}-\d{2}$/[_0x4bbe67(0x235)](_0x4f794d))return _0x4f794d;if(_0x4f794d instanceof Date){if(isNaN(_0x4f794d['getTime']()))return null;const _0x3215de=_0x4f794d[_0x4bbe67(0x238)](),_0x4894cf=_0x4920a1[_0x4bbe67(0x22e)](String,_0x4f794d[_0x4bbe67(0x1f2)]()+0x1)['padStart'](0x2,'0'),_0x54301a=String(_0x4f794d[_0x4bbe67(0x1e5)]())['padStart'](0x2,'0');return _0x3215de+'-'+_0x4894cf+'-'+_0x54301a;}if(typeof _0x4f794d===_0x4bbe67(0x25b)){const _0x9b16f=_0x4f794d['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x9b16f){const _0x47fc7b=String(_0x9b16f[0x1])[_0x4bbe67(0x278)](0x2,'0'),_0x56e56c=_0x4920a1[_0x4bbe67(0x1f1)](String,_0x9b16f[0x2])[_0x4bbe67(0x278)](0x2,'0'),_0x59a10b=_0x9b16f[0x3];return _0x59a10b+'-'+_0x56e56c+'-'+_0x47fc7b;}const _0x3faadf=_0x4f794d[_0x4bbe67(0x229)](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x3faadf){const _0x1910b2=_0x3faadf[0x1],_0x5ba416=_0x4920a1['vZPtv'](String,_0x3faadf[0x2])[_0x4bbe67(0x278)](0x2,'0'),_0x3cd04d=String(_0x3faadf[0x3])['padStart'](0x2,'0');return _0x1910b2+'-'+_0x5ba416+'-'+_0x3cd04d;}}return _0x4f794d;}['formatNumberForDatabase'](_0x382974){const _0x5e8c51=a0_0x48d061,_0x3d1bd5={'HEhjJ':function(_0x239c7f,_0x3da6fc){return _0x239c7f===_0x3da6fc;},'CWISr':'number','SxLgV':function(_0x683c9a,_0x24ce33){return _0x683c9a===_0x24ce33;},'OeFVr':'string','RTgif':function(_0x21ac91,_0x451fee){return _0x21ac91(_0x451fee);}};if(_0x382974===null||_0x382974===undefined||_0x382974==='')return null;if(_0x3d1bd5['HEhjJ'](typeof _0x382974,_0x3d1bd5['CWISr']))return isNaN(_0x382974)?null:_0x382974;if(_0x3d1bd5[_0x5e8c51(0x220)](typeof _0x382974,_0x3d1bd5[_0x5e8c51(0x20e)])){let _0x1c5cf4=_0x382974['trim']();const _0x2924ed=/,\d{1,2}$/[_0x5e8c51(0x235)](_0x1c5cf4)&&!/,\d{3}/['test'](_0x1c5cf4);_0x2924ed?_0x1c5cf4=_0x1c5cf4['replace'](/\./g,'')[_0x5e8c51(0x248)](',','.'):_0x1c5cf4=_0x1c5cf4[_0x5e8c51(0x248)](/,/g,'');const _0x55691d=_0x3d1bd5[_0x5e8c51(0x226)](parseFloat,_0x1c5cf4);return _0x3d1bd5['RTgif'](isNaN,_0x55691d)?null:_0x55691d;}return null;}async[a0_0x48d061(0x22f)](_0x48fc68,_0x30e31c){const _0x57b716=a0_0x48d061,_0xee3f06={'EVTpi':function(_0x203d1f,_0x22e010){return _0x203d1f||_0x22e010;},'cYhsM':_0x57b716(0x1e4),'qnchh':_0x57b716(0x215),'VBZKX':'Import\x20file\x20uploaded\x20and\x20parsed','QZmkl':_0x57b716(0x1dd),'ENHyu':_0x57b716(0x22d)},_0x59ab96=this['generateId']();try{let {headers:_0x3cedc2,rows:_0x55c4e1,totalRows:_0x2199e5}=await excelParser[_0x57b716(0x241)](_0x48fc68[_0x57b716(0x1ee)]);const _0x49c674=this[_0x57b716(0x245)](_0x30e31c['fieldLabels']),_0x9498d9=_0x3cedc2['map'](_0x32dfd5=>{const _0x3af79a=_0x57b716,_0x530d80=_0x49c674['get'](_0x32dfd5);return _0xee3f06[_0x3af79a(0x21a)](_0x530d80,_0x32dfd5);});_0x55c4e1=_0x55c4e1[_0x57b716(0x203)](_0x3cfa35=>{const _0x529e51={};return _0x3cedc2['forEach']((_0x4e81c8,_0x4f28cc)=>{const _0x36cae0=_0x9498d9[_0x4f28cc];_0x529e51[_0x36cae0]=_0x3cfa35[_0x4e81c8];}),_0x529e51;}),_0x3cedc2=_0x9498d9,logger[_0x57b716(0x1fe)]({'event':_0x57b716(0x252),'original':_0x3cedc2['length'],'mapped':_0x9498d9['filter']((_0x2cd325,_0x396b50)=>_0x2cd325!==_0x3cedc2[_0x396b50])['length']},'Excel\x20headers\x20mapped\x20to\x20field\x20names');_0x30e31c['columnFormats']&&Object['keys'](_0x30e31c['columnFormats'])['length']>0x0&&(_0x55c4e1=this[_0x57b716(0x27c)](_0x55c4e1,_0x30e31c[_0x57b716(0x253)]),logger['debug']({'event':_0xee3f06[_0x57b716(0x263)],'formatCount':Object[_0x57b716(0x27e)](_0x30e31c['columnFormats'])[_0x57b716(0x1d9)],'formats':Object[_0x57b716(0x27e)](_0x30e31c['columnFormats'])},_0xee3f06['qnchh']));const _0x12e479=_0x30e31c['lookupFields']?Object[_0x57b716(0x1fb)](_0x30e31c['lookupFields'])[_0x57b716(0x203)](_0x45d5cf=>_0x45d5cf['targetField']):[],_0x5305f6=_0x30e31c['fieldName']['filter'](_0x431021=>!_0x12e479[_0x57b716(0x285)](_0x431021)),_0x2d2663=excelParser[_0x57b716(0x266)](_0x3cedc2,_0x5305f6);if(!_0x2d2663['valid']){await fs['unlink'](_0x48fc68['path']);throw new Error(_0x57b716(0x240)+_0x2d2663['missingFields'][_0x57b716(0x26f)](',\x20'));}const _0x10c809={'upload_id':_0x59ab96,'filename':_0x48fc68[_0x57b716(0x21b)],'total_rows':_0x2199e5,'headers':_0x3cedc2,'rows':_0x55c4e1,'params':_0x30e31c,'created_at':new Date()[_0x57b716(0x236)]()};return await redisHelper['setJob'](_0x57b716(0x276)+_0x59ab96,_0x10c809,0xe10),await fs['unlink'](_0x48fc68['path']),logger[_0x57b716(0x270)]({'event':'import_file_uploaded','uploadId':_0x59ab96,'filename':_0x48fc68['originalname'],'totalRows':_0x2199e5},_0xee3f06[_0x57b716(0x22a)]),{'upload_id':_0x59ab96,'total_rows':_0x2199e5,'preview':_0x55c4e1['slice'](0x0,0xa)};}catch(_0x17cf38){try{await fs['unlink'](_0x48fc68['path']);}catch(_0x3ff10c){logError(_0x3ff10c,{'event':_0xee3f06[_0x57b716(0x206)]},_0xee3f06['ENHyu']);}throw _0x17cf38;}}async['createPreviewJob'](_0x5acca2){const _0x1a1275=a0_0x48d061,_0x1c3e09={'QIazL':function(_0x278a03,_0x114b78,_0x36294c,_0x44634f){return _0x278a03(_0x114b78,_0x36294c,_0x44634f);},'RtkAq':_0x1a1275(0x234),'CkTRR':_0x1a1275(0x283)},_0x3ceb71=this['generateId'](),_0x2f947b=await redisHelper['getJob']('upload:'+_0x5acca2);if(!_0x2f947b)throw new Error('Upload\x20data\x20not\x20found\x20or\x20expired');const _0x4574d6={'job_id':_0x3ceb71,'upload_id':_0x5acca2,'status':_0x1c3e09['CkTRR'],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x2f947b[_0x1a1275(0x257)]};return await redisHelper['setJob'](_0x1a1275(0x272)+_0x3ceb71,_0x4574d6,0xe10),logger[_0x1a1275(0x270)]({'event':'preview_job_created','jobId':_0x3ceb71,'uploadId':_0x5acca2},_0x1a1275(0x20f)),this[_0x1a1275(0x24c)](_0x3ceb71,_0x5acca2,_0x2f947b)[_0x1a1275(0x213)](_0x35ee08=>{const _0x172fcf=_0x1a1275;_0x1c3e09['QIazL'](logError,_0x35ee08,{'event':_0x1c3e09['RtkAq'],'jobId':_0x3ceb71},_0x172fcf(0x23d));}),{'job_id':_0x3ceb71,'status':_0x1a1275(0x283)};}[a0_0x48d061(0x1e7)](_0x3e2e6b,_0x2a2dc0){const _0x30f01b=a0_0x48d061,_0x5b5306={'hPmkQ':function(_0x18fb8c,_0x1d820d){return _0x18fb8c===_0x1d820d;},'IAXwW':function(_0x66828e,_0x2630b6){return _0x66828e===_0x2630b6;},'GZgdT':'uuid_auto_generated'};_0x3e2e6b[_0x30f01b(0x281)]((_0x404cbd,_0x44c6b7)=>{const _0x59d467=_0x30f01b;_0x2a2dc0[_0x59d467(0x281)](_0xcc9f5f=>{const _0x3bea3c=_0x59d467,_0x59fd33=_0x404cbd[_0xcc9f5f];if(_0x5b5306[_0x3bea3c(0x286)](_0x59fd33,null)||_0x5b5306['IAXwW'](_0x59fd33,undefined)||_0x59fd33===''||String(_0x59fd33)['trim']()==='-'){const _0x3e7fce=uuidv7();_0x404cbd[_0xcc9f5f]=_0x3e7fce,_0x404cbd['_generated_uuid']=_0x404cbd['_generated_uuid']||{},_0x404cbd[_0x3bea3c(0x24d)][_0xcc9f5f]=_0x3e7fce,logger[_0x3bea3c(0x1fe)]({'event':_0x5b5306[_0x3bea3c(0x212)],'rowIndex':_0x44c6b7,'field':_0xcc9f5f,'uuid':_0x3e7fce},_0x3bea3c(0x209)+_0xcc9f5f+_0x3bea3c(0x25d)+(_0x44c6b7+0x2));}});});}async['processPreviewJob'](_0x394df9,_0x30728f,_0x1aeb21){const _0x611ec=a0_0x48d061,_0x411ed4={'yEtnN':function(_0x33c2b9,_0x1803c5){return _0x33c2b9===_0x1803c5;},'DaiCZ':'UPDATE','xtYUo':function(_0x385b52,_0x2ebb5c){return _0x385b52>_0x2ebb5c;},'oThks':function(_0x3fc062,_0xa76dd){return _0x3fc062||_0xa76dd;},'iieCW':'preview_job_completed','UYmIg':_0x611ec(0x27d),'xQrGP':_0x611ec(0x269)};try{let {rows:_0x48efba,params:_0x1b575c}=_0x1aeb21;const {requiredFields:_0x16fe4e,validations:_0x28a383,upsertKeys:_0x2aeab5,tableName:_0x5475ad,primaryKey:_0x4ddaad,fieldName:_0x596184,upsertStrategy:_0xbf025b,lookupFields:_0x43d3b1}=_0x1b575c;this[_0x611ec(0x1e7)](_0x48efba,_0x2aeab5);let _0x421489=[];if(_0x43d3b1&&_0x411ed4[_0x611ec(0x20c)](Object['keys'](_0x43d3b1)[_0x611ec(0x1d9)],0x0)){logger['info']({'event':_0x611ec(0x268),'jobId':_0x394df9,'lookupFieldCount':Object['keys'](_0x43d3b1)[_0x611ec(0x1d9)]},'Processing\x20lookup\x20fields');const _0x36bd71=await lookupResolver[_0x611ec(0x260)](_0x48efba,_0x43d3b1);_0x48efba=_0x36bd71[_0x611ec(0x1e9)],_0x421489=_0x36bd71['errors'],_0x1aeb21['rows']=_0x48efba;}const _0xf9d744=importValidator[_0x611ec(0x1e8)](_0x48efba,_0x16fe4e||[],_0x411ed4[_0x611ec(0x23e)](_0x28a383,{}));_0x421489['forEach'](_0x28c5e9=>{const _0x551662=_0x611ec,_0x23d104=_0xf9d744['find'](_0x390311=>_0x390311['rowIndex']===_0x28c5e9[_0x551662(0x1ed)]);_0x23d104?_0x23d104['errors'][_0x551662(0x208)](_0x28c5e9[_0x551662(0x1d7)]):_0xf9d744[_0x551662(0x208)]({'rowIndex':_0x28c5e9['rowIndex'],'rowData':_0x48efba[_0x28c5e9['rowIndex']],'errors':[_0x28c5e9[_0x551662(0x1d7)]]});});const _0x259d54=importValidator[_0x611ec(0x264)](_0x48efba,_0x2aeab5);_0x259d54[_0x611ec(0x281)](_0x46481b=>{const _0x43d802=_0x611ec,_0x197146=_0xf9d744[_0x43d802(0x271)](_0x560874=>_0x560874[_0x43d802(0x1ed)]===_0x46481b['rowIndex']),_0xa5e496=_0x2aeab5['map'](_0x205666=>_0x205666['toUpperCase']())[_0x43d802(0x26f)](',\x20'),_0x57dd96=_0x43d802(0x1fd)+_0xa5e496;_0x197146?_0x197146['errors'][_0x43d802(0x208)](_0x57dd96):_0xf9d744['push']({'rowIndex':_0x46481b['rowIndex'],'rowData':_0x48efba[_0x46481b[_0x43d802(0x1ed)]],'errors':[_0x57dd96]});}),await this['detectDatabaseDuplicates'](_0x48efba,_0x2aeab5,_0x5475ad,_0x4ddaad,_0xbf025b,_0xf9d744),_0xf9d744['forEach'](_0x31642c=>{const _0x4f1a85=_0x611ec,_0x1088cc=_0x48efba[_0x31642c['rowIndex']];_0x1088cc&&(_0x1088cc[_0x4f1a85(0x1e3)]=_0x31642c[_0x4f1a85(0x27f)]);});let _0x1cafff=0x0,_0x1d2501=0x0,_0x1a84b9=0x0;_0x48efba[_0x611ec(0x281)](_0x4d3e60=>{const _0x5d9163=_0x611ec;if(_0x411ed4[_0x5d9163(0x25a)](_0x4d3e60['_action'],'INSERT'))_0x1cafff++;else{if(_0x4d3e60[_0x5d9163(0x218)]===_0x411ed4['DaiCZ'])_0x1d2501++;else _0x4d3e60[_0x5d9163(0x218)]==='SKIP'&&_0x1a84b9++;}});const _0x185e43={'job_id':_0x394df9,'upload_id':_0x30728f,'status':_0x411ed4[_0x611ec(0x20c)](_0xf9d744[_0x611ec(0x1d9)],0x0)?_0x611ec(0x1f9):'preview_ok','progress':0x64,'created_at':_0x1aeb21['created_at'],'completed_at':new Date()['toISOString'](),'preview':{'total_rows':_0x48efba['length'],'insert_count':_0x1cafff,'update_count':_0x1d2501,'skip_count':_0x1a84b9,'error_count':_0xf9d744[_0x611ec(0x1d9)],'errors':_0xf9d744,'data':_0x48efba,'sample_insert':_0x48efba[_0x611ec(0x1dc)](_0x2cc760=>_0x2cc760['_action']===_0x611ec(0x1e6))[_0x611ec(0x27a)](0x0,0x5),'sample_update':_0x48efba['filter'](_0x5bb1c0=>_0x5bb1c0[_0x611ec(0x218)]==='UPDATE')[_0x611ec(0x27a)](0x0,0x5),'sample_skip':_0x48efba[_0x611ec(0x1dc)](_0x166d43=>_0x166d43[_0x611ec(0x218)]==='SKIP')['slice'](0x0,0x5)},'params':_0x1b575c};await redisHelper[_0x611ec(0x261)](_0x611ec(0x272)+_0x394df9,_0x185e43,0xe10),_0x1aeb21[_0x611ec(0x1fc)]=_0x48efba,await redisHelper[_0x611ec(0x261)](_0x611ec(0x276)+_0x30728f,_0x1aeb21,0xe10),logger[_0x611ec(0x270)]({'event':_0x411ed4[_0x611ec(0x255)],'jobId':_0x394df9,'status':_0x185e43['status'],'insertCount':_0x1cafff,'updateCount':_0x1d2501,'skipCount':_0x1a84b9,'errorCount':_0xf9d744['length']},'Preview\x20job\x20completed');}catch(_0x5e16d8){logError(_0x5e16d8,{'event':_0x411ed4[_0x611ec(0x224)],'jobId':_0x394df9},_0x411ed4[_0x611ec(0x1e1)]),await redisHelper[_0x611ec(0x261)](_0x611ec(0x272)+_0x394df9,{'job_id':_0x394df9,'upload_id':_0x30728f,'status':_0x611ec(0x1f3),'progress':0x0,'error':_0x5e16d8['message'],'created_at':new Date()['toISOString'](),'completed_at':new Date()['toISOString']()},0xe10);}}async['detectDatabaseDuplicates'](_0x45cbb8,_0x8b49dd,_0x384cf2,_0x588c82,_0x1d35b9=a0_0x48d061(0x24b),_0x1b330d=[]){const _0x2a2a5d=a0_0x48d061,_0x39931a={'ZeCIG':function(_0x1409b7,_0x77b902){return _0x1409b7===_0x77b902;},'CHYWU':function(_0x2e45fd,_0x12544b){return _0x2e45fd===_0x12544b;},'XZvCp':'NULL','DvWJP':'update_existing','gvjvq':'insert_only','YgrpK':'SKIP','zKqSy':function(_0x5d88ba,_0x5770b9){return _0x5d88ba!==_0x5770b9;},'YlTPq':'skip_existing','GsqQW':_0x2a2a5d(0x1e6),'sWDvV':function(_0x1cb419,_0x65927b){return _0x1cb419(_0x65927b);},'nvQll':function(_0x3bc6c3,_0x37c946){return _0x3bc6c3===_0x37c946;},'ztgRt':_0x2a2a5d(0x228),'hRldQ':function(_0x3bf867,_0x4c1a4c){return _0x3bf867>_0x4c1a4c;}},_0x3b5728=upsertBuilder[_0x2a2a5d(0x1f6)](_0x45cbb8,0x64);for(const _0x1b162a of _0x3b5728){const _0x387f57=_0x1b162a[_0x2a2a5d(0x203)](_0xf938a0=>_0xf938a0[_0x8b49dd[0x0]]),_0x73b53f=_0x387f57[_0x2a2a5d(0x203)](_0x1b0d67=>{const _0x68f3d9=_0x2a2a5d;if(_0x39931a[_0x68f3d9(0x26d)](_0x1b0d67,null)||_0x39931a['CHYWU'](_0x1b0d67,undefined))return _0x39931a['XZvCp'];return'\x27'+String(_0x1b0d67)['replace'](/'/g,'\x27\x27')+'\x27';}),_0x41e008='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x588c82+',\x20'+_0x8b49dd[_0x2a2a5d(0x26f)](',\x20')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20'+_0x384cf2+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x8b49dd[0x0]+'\x20IN\x20('+_0x73b53f[_0x2a2a5d(0x26f)](',\x20')+_0x2a2a5d(0x26b);let _0x54e76d=await _0x39931a[_0x2a2a5d(0x249)](executeQuery,_0x41e008);_0x39931a['nvQll'](dbType,_0x39931a[_0x2a2a5d(0x20d)])&&_0x54e76d&&_0x39931a[_0x2a2a5d(0x1de)](_0x54e76d[_0x2a2a5d(0x1d9)],0x0)&&(_0x54e76d=_0x54e76d[_0x2a2a5d(0x203)](_0x3ad3bd=>{const _0x30e9aa={};for(const [_0x4f16f3,_0x371c29]of Object['entries'](_0x3ad3bd)){_0x30e9aa[_0x4f16f3['toLowerCase']()]=_0x371c29;}return _0x30e9aa;}));const _0x12bf21=new Map();_0x54e76d['forEach'](_0xeb3026=>{const _0x4287bd=_0x2a2a5d,_0x26c884=_0xeb3026[_0x8b49dd[0x0]];_0x12bf21[_0x4287bd(0x21e)](_0x26c884,_0xeb3026);}),_0x1b162a[_0x2a2a5d(0x281)]((_0x52f739,_0x43c1eb)=>{const _0x3939dc=_0x2a2a5d,_0x254b91=_0x52f739[_0x8b49dd[0x0]],_0xcd6510=_0x12bf21['get'](_0x254b91);if(_0xcd6510){if(_0x1d35b9===_0x39931a['DvWJP'])_0x52f739['_action']='UPDATE',_0x52f739[_0x3939dc(0x246)]=_0xcd6510[_0x588c82];else{if(_0x39931a[_0x3939dc(0x26d)](_0x1d35b9,_0x39931a['gvjvq'])){_0x52f739[_0x3939dc(0x218)]=_0x39931a['YgrpK'],_0x52f739[_0x3939dc(0x1e3)]=_0x52f739[_0x3939dc(0x1e3)]||[],_0x52f739['_errors'][_0x3939dc(0x208)](_0x3939dc(0x274));const _0x45423f=_0x45cbb8[_0x3939dc(0x231)](_0x52f739);_0x39931a[_0x3939dc(0x1f8)](_0x45423f,-0x1)&&_0x1b330d['push']({'rowIndex':_0x45423f,'rowData':_0x52f739,'errors':['Record\x20exists\x20(insert_only\x20mode)']});}else _0x1d35b9===_0x39931a['YlTPq']&&(_0x52f739['_action']=_0x39931a[_0x3939dc(0x27b)]);}}else{if(_0x1d35b9===_0x39931a[_0x3939dc(0x230)])_0x52f739['_action']=_0x39931a[_0x3939dc(0x205)];else(_0x1d35b9===_0x39931a['gvjvq']||_0x1d35b9==='skip_existing')&&(_0x52f739['_action']=_0x39931a['GsqQW']);}});}}async[a0_0x48d061(0x221)](_0xb03154){const _0x6eff4b=a0_0x48d061,_0x209e13={'nbwyC':function(_0x15f81f,_0x5764ec,_0x2299b8,_0x20374c){return _0x15f81f(_0x5764ec,_0x2299b8,_0x20374c);},'RDPBg':_0x6eff4b(0x239),'igaBo':'Preview\x20job\x20not\x20found\x20or\x20expired','hFwcM':function(_0x4dec1d,_0x2b976e){return _0x4dec1d!==_0x2b976e;},'dWifb':_0x6eff4b(0x26e),'YoHBr':_0x6eff4b(0x20b),'lBPdy':'commit_job_created'},_0x28314c=this[_0x6eff4b(0x227)](),_0x1933ba=await redisHelper[_0x6eff4b(0x265)](_0x6eff4b(0x272)+_0xb03154);if(!_0x1933ba)throw new Error(_0x209e13['igaBo']);if(_0x209e13['hFwcM'](_0x1933ba[_0x6eff4b(0x1ec)],_0x209e13[_0x6eff4b(0x279)]))throw new Error(_0x6eff4b(0x1ea)+_0x1933ba['status']);const _0xd06144={'job_id':_0x28314c,'upload_id':_0x1933ba[_0x6eff4b(0x24f)],'preview_job_id':_0xb03154,'status':_0x209e13[_0x6eff4b(0x232)],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x1933ba[_0x6eff4b(0x257)]};return await redisHelper['setJob']('job:'+_0x28314c,_0xd06144,0xe10),logger['info']({'event':_0x209e13['lBPdy'],'jobId':_0x28314c,'previewJobId':_0xb03154},'Commit\x20job\x20created'),this[_0x6eff4b(0x244)](_0x28314c,_0x1933ba)['catch'](_0x3204c7=>{const _0x29690b=_0x6eff4b;_0x209e13['nbwyC'](logError,_0x3204c7,{'event':_0x29690b(0x284),'jobId':_0x28314c},_0x209e13['RDPBg']);}),{'job_id':_0x28314c,'status':_0x209e13[_0x6eff4b(0x232)]};}async['processCommitJob'](_0x117694,_0x4954d8){const _0xeda160=a0_0x48d061,_0x50c91d={'UHdtL':'Upload\x20data\x20not\x20found\x20or\x20expired','XgqAY':function(_0x1715b1,_0x1da35e){return _0x1715b1||_0x1da35e;},'EYujK':function(_0x27f7e5,_0x4aa016){return _0x27f7e5>_0x4aa016;},'PBAfJ':'update','YickI':function(_0x3d02c4,_0x5cbdd8){return _0x3d02c4(_0x5cbdd8);},'izzRT':'completed','gvXbC':'Commit\x20job\x20completed','Pimyg':function(_0x4cba91,_0x2538bd,_0x15a11f,_0x2698e7){return _0x4cba91(_0x2538bd,_0x15a11f,_0x2698e7);},'YaVgs':_0xeda160(0x1fa),'FqNRg':_0xeda160(0x1f0),'kBDIm':_0xeda160(0x1f3)};try{const _0x25bfa5=await redisHelper['getJob']('upload:'+_0x4954d8['upload_id']);if(!_0x25bfa5)throw new Error(_0x50c91d['UHdtL']);const {rows:_0x591c69,params:_0x40f704}=_0x25bfa5,{tableName:_0x2e2186,fieldName:_0x16a3ac,primaryKey:_0xbc3f76,upsertKeys:_0x13d378,excludeFromImport:_0x2b67dc,lookupFields:_0x5d793f,columnFormats:_0x3d047c}=_0x40f704,_0x47aac3=_0x5d793f?Object[_0xeda160(0x27e)](_0x5d793f):[],_0x47f29e=new Set([..._0x2b67dc||[],..._0x47aac3]);let _0x3d8542=_0x16a3ac;_0x47f29e['size']>0x0&&(_0x3d8542=_0x16a3ac['filter'](_0x5cb715=>!_0x47f29e['has'](_0x5cb715)),logger[_0xeda160(0x1fe)]({'event':'import_fields_filtered','originalCount':_0x16a3ac['length'],'filteredCount':_0x3d8542[_0xeda160(0x1d9)],'excludedFields':Array[_0xeda160(0x21c)](_0x47f29e),'lookupSourceFields':_0x47aac3},_0xeda160(0x200)));const _0x1091d0=_0x591c69['filter'](_0x63ee01=>_0x63ee01[_0xeda160(0x218)]==='INSERT'),_0x300e6a=_0x591c69[_0xeda160(0x1dc)](_0x2781ab=>_0x2781ab['_action']===_0xeda160(0x216));let _0xfc301d=0x0,_0x13bf3d=0x0;const _0x405ed3=[];if(_0x1091d0[_0xeda160(0x1d9)]>0x0){const _0x23c4fe=upsertBuilder[_0xeda160(0x1f6)](_0x1091d0,0x64);for(const _0x1a619c of _0x23c4fe){const {query:_0x1ac9ea}=upsertBuilder[_0xeda160(0x25f)](_0x1a619c,_0x2e2186,_0x3d8542,_0x50c91d['XgqAY'](_0x3d047c,{}));_0x1ac9ea&&_0x405ed3[_0xeda160(0x208)]({'sql':_0x1ac9ea,'count':_0x1a619c[_0xeda160(0x1d9)],'type':'insert'});}}if(_0x50c91d['EYujK'](_0x300e6a[_0xeda160(0x1d9)],0x0)){const _0x4a20e1=upsertBuilder['chunkRows'](_0x300e6a,0x64);for(const _0x5c4e00 of _0x4a20e1){const {query:_0x5a8b55}=upsertBuilder['buildBatchUpdate'](_0x5c4e00,_0x2e2186,_0x3d8542,_0xbc3f76,_0x13d378,_0x3d047c||{});_0x5a8b55&&_0x405ed3[_0xeda160(0x208)]({'sql':_0x5a8b55,'count':_0x5c4e00[_0xeda160(0x1d9)],'type':_0x50c91d['PBAfJ']});}}_0x405ed3[_0xeda160(0x1d9)]>0x0&&await _0x50c91d['YickI'](executeTransaction,_0x405ed3[_0xeda160(0x203)](_0x4da330=>({'sql':_0x4da330[_0xeda160(0x222)],'params':[]})));_0x405ed3['forEach'](_0x5c6887=>{const _0x529416=_0xeda160;if(_0x5c6887[_0x529416(0x267)]===_0x529416(0x242))_0xfc301d+=_0x5c6887[_0x529416(0x254)];else _0x13bf3d+=_0x5c6887['count'];});const _0x132548={'job_id':_0x117694,'upload_id':_0x4954d8[_0xeda160(0x24f)],'preview_job_id':_0x4954d8['job_id'],'status':_0x50c91d['izzRT'],'progress':0x64,'created_at':_0x4954d8[_0xeda160(0x233)],'started_at':new Date()[_0xeda160(0x236)](),'completed_at':new Date()[_0xeda160(0x236)](),'result':{'total_rows':_0x591c69[_0xeda160(0x1d9)],'inserted_rows':_0xfc301d,'updated_rows':_0x13bf3d,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x40f704};await redisHelper[_0xeda160(0x261)](_0xeda160(0x272)+_0x117694,_0x132548,0xe10),logger[_0xeda160(0x270)]({'event':'commit_job_completed','jobId':_0x117694,'insertedCount':_0xfc301d,'updatedCount':_0x13bf3d},_0x50c91d[_0xeda160(0x282)]);}catch(_0x2358b4){_0x50c91d[_0xeda160(0x217)](logError,_0x2358b4,{'event':_0x50c91d['YaVgs'],'jobId':_0x117694},_0x50c91d[_0xeda160(0x1eb)]),await redisHelper[_0xeda160(0x261)](_0xeda160(0x272)+_0x117694,{'job_id':_0x117694,'upload_id':_0x4954d8['upload_id'],'preview_job_id':_0x4954d8[_0xeda160(0x202)],'status':_0x50c91d[_0xeda160(0x207)],'progress':0x0,'error':_0x2358b4['message'],'created_at':_0x4954d8[_0xeda160(0x233)],'started_at':new Date()['toISOString'](),'completed_at':new Date()[_0xeda160(0x236)]()},0xe10);}}async['getJobStatus'](_0x52f74d){const _0x4e3a23=await redisHelper['getJob']('job:'+_0x52f74d);if(!_0x4e3a23)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':_0x4e3a23};}}module['exports']=new ImportService();
|
|
1
|
+
const a0_0x1a1e4f=a0_0x2ebd;(function(_0x8a83d5,_0x36911c){const _0x16ac37=a0_0x2ebd,_0x2a32a6=_0x8a83d5();while(!![]){try{const _0x1fc5e0=-parseInt(_0x16ac37(0x19d))/0x1+-parseInt(_0x16ac37(0x1a3))/0x2*(parseInt(_0x16ac37(0x169))/0x3)+parseInt(_0x16ac37(0x1db))/0x4*(-parseInt(_0x16ac37(0x161))/0x5)+-parseInt(_0x16ac37(0x170))/0x6+-parseInt(_0x16ac37(0x19e))/0x7*(parseInt(_0x16ac37(0x1ed))/0x8)+-parseInt(_0x16ac37(0x168))/0x9*(parseInt(_0x16ac37(0x19a))/0xa)+parseInt(_0x16ac37(0x1c8))/0xb;if(_0x1fc5e0===_0x36911c)break;else _0x2a32a6['push'](_0x2a32a6['shift']());}catch(_0x165408){_0x2a32a6['push'](_0x2a32a6['shift']());}}}(a0_0x24d5,0x1f07b));const {v7:uuidv7}=require(a0_0x1a1e4f(0x1f5)),path=require(a0_0x1a1e4f(0x1da)),fs=require('fs')[a0_0x1a1e4f(0x199)],redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x1a1e4f(0x1d6)),dbType=(process['env'][a0_0x1a1e4f(0x1d2)]||a0_0x1a1e4f(0x1ae))[a0_0x1a1e4f(0x1f7)]();let executeQuery,executeTransaction,oracleDb;if(dbType==='oracle')oracleDb=require('../database/db-oracle'),executeQuery=(_0x54a6e5,_0x466b65)=>oracleDb['executeQuery'](_0x54a6e5,_0x466b65),executeTransaction=_0x21ab18=>oracleDb['executeTransaction'](_0x21ab18);else{if(dbType===a0_0x1a1e4f(0x15a)){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x1f48af,_0x503513)=>mysqlDb['executeQuery'](_0x1f48af,_0x503513),executeTransaction=_0x535fb0=>mysqlDb[a0_0x1a1e4f(0x1e5)](_0x535fb0);}else{const db=require(a0_0x1a1e4f(0x1e7));executeQuery=db['executeQuery'],executeTransaction=db[a0_0x1a1e4f(0x1e5)];}}function a0_0x2ebd(_0xd0d155,_0x2485f2){_0xd0d155=_0xd0d155-0x151;const _0x24d5c7=a0_0x24d5();let _0x2ebd63=_0x24d5c7[_0xd0d155];if(a0_0x2ebd['rYvwLh']===undefined){var _0x561736=function(_0x235285){const _0xa77918='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d263b='',_0x3fdd97='';for(let _0x12ac13=0x0,_0x25ae90,_0x1ef974,_0x2f134c=0x0;_0x1ef974=_0x235285['charAt'](_0x2f134c++);~_0x1ef974&&(_0x25ae90=_0x12ac13%0x4?_0x25ae90*0x40+_0x1ef974:_0x1ef974,_0x12ac13++%0x4)?_0x2d263b+=String['fromCharCode'](0xff&_0x25ae90>>(-0x2*_0x12ac13&0x6)):0x0){_0x1ef974=_0xa77918['indexOf'](_0x1ef974);}for(let _0x27f2df=0x0,_0x288a2d=_0x2d263b['length'];_0x27f2df<_0x288a2d;_0x27f2df++){_0x3fdd97+='%'+('00'+_0x2d263b['charCodeAt'](_0x27f2df)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3fdd97);};a0_0x2ebd['RVEgJP']=_0x561736,a0_0x2ebd['AXbhSC']={},a0_0x2ebd['rYvwLh']=!![];}const _0x3283a5=_0x24d5c7[0x0],_0x4acb9d=_0xd0d155+_0x3283a5,_0x136802=a0_0x2ebd['AXbhSC'][_0x4acb9d];return!_0x136802?(_0x2ebd63=a0_0x2ebd['RVEgJP'](_0x2ebd63),a0_0x2ebd['AXbhSC'][_0x4acb9d]=_0x2ebd63):_0x2ebd63=_0x136802,_0x2ebd63;}const excelParser=require('./excel-parser'),importValidator=require(a0_0x1a1e4f(0x16e)),upsertBuilder=require('./upsert-builder'),lookupResolver=require(a0_0x1a1e4f(0x1fb));class ImportService{constructor(){this['_uploadDir']=null;}get[a0_0x1a1e4f(0x187)](){const _0x4dd9b9=a0_0x1a1e4f,_0x428aea={'GSEgI':'default'};if(!this[_0x4dd9b9(0x195)]){const _0x281ab4=process[_0x4dd9b9(0x16f)][_0x4dd9b9(0x1ec)]||_0x428aea[_0x4dd9b9(0x1b4)];this['_uploadDir']=process['env']['UPLOAD_DIR']||path['join'](__dirname,_0x4dd9b9(0x181)+_0x281ab4);}return this['_uploadDir'];}[a0_0x1a1e4f(0x1a4)](){const _0x278b6c=a0_0x1a1e4f,_0x445517={'GKLFh':_0x278b6c(0x18c),'eSFkJ':function(_0x385d3b,_0x3a3382){return _0x385d3b+_0x3a3382;}},_0x51f2c3=_0x445517['GKLFh'],_0x137810=Date['now']()[_0x278b6c(0x1aa)](0x24),_0x48f1d4=uuidv7()[_0x278b6c(0x1ca)](/-/g,'')['substring'](0x0,0xc-_0x137810['length']),_0x572b4c=_0x445517['eSFkJ'](_0x137810,_0x48f1d4)[_0x278b6c(0x1ac)](0x0,0xc);let _0x2c6153='';for(let _0x362cd5=0x0;_0x362cd5<0xc;_0x362cd5++){_0x572b4c[_0x362cd5]?_0x2c6153+=_0x572b4c[_0x362cd5]:_0x2c6153+=_0x51f2c3[_0x278b6c(0x1cb)](Math[_0x278b6c(0x17a)](Math[_0x278b6c(0x153)]()*_0x51f2c3['length']));}return _0x2c6153;}[a0_0x1a1e4f(0x1a1)](_0x1592f7){const _0x4371f5=a0_0x1a1e4f,_0x1f294d={'udyvZ':function(_0x533379,_0x441907){return _0x533379(_0x441907);},'cULFB':'label_to_field_map_built','ClBcx':'Label\x20to\x20field\x20mapping\x20built'},_0x26a29c=new Map();if(!_0x1592f7)return _0x26a29c;return Object['entries'](_0x1592f7)['forEach'](([_0x3e2c81,_0x4de139])=>{const _0x5589e8=a0_0x2ebd,_0x500a0c=_0x1f294d[_0x5589e8(0x1af)](String,_0x4de139)[_0x5589e8(0x1e2)]()[_0x5589e8(0x1ca)](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,_0x5589e8(0x1b8))['replace'](/([A-Z]+)([A-Z][a-z])/g,'$1_$2')['toLowerCase']();_0x26a29c['set'](_0x500a0c,_0x3e2c81);}),logger[_0x4371f5(0x1fa)]({'event':_0x1f294d['cULFB'],'mappingCount':_0x26a29c['size']},_0x1f294d['ClBcx']),_0x26a29c;}[a0_0x1a1e4f(0x1ba)](_0x37660f,_0x52faaf){const _0x36b783=a0_0x1a1e4f,_0x3d637d={'idByB':function(_0x5189d3,_0x26bf27){return _0x5189d3===_0x26bf27;},'bQhQr':function(_0x89f6e9,_0x3384d3){return _0x89f6e9===_0x3384d3;},'eRdHl':_0x36b783(0x18e),'VFYhW':_0x36b783(0x1a7),'HbKTp':'text'};if(!_0x52faaf||Object[_0x36b783(0x1f3)](_0x52faaf)['length']===0x0)return _0x37660f;return _0x37660f[_0x36b783(0x191)](_0x2df388=>{const _0x3906a6=_0x36b783,_0x270366={..._0x2df388};for(const [_0x5411f2,_0x5c68c5]of Object[_0x3906a6(0x16c)](_0x52faaf)){const _0x568d46=_0x270366[_0x5411f2];if(_0x568d46===null||_0x3d637d[_0x3906a6(0x193)](_0x568d46,undefined)||_0x3d637d['bQhQr'](_0x568d46,'')){_0x270366[_0x5411f2]=null;continue;}switch(_0x5c68c5[_0x3906a6(0x151)]){case _0x3d637d['eRdHl']:_0x270366[_0x5411f2]=this['formatDateForDatabase'](_0x568d46);break;case _0x3d637d[_0x3906a6(0x1d7)]:_0x270366[_0x5411f2]=this[_0x3906a6(0x1ef)](_0x568d46);break;case _0x3d637d[_0x3906a6(0x177)]:_0x270366[_0x5411f2]=String(_0x568d46);break;default:break;}}return _0x270366;});}['formatDateForDatabase'](_0x1ead30){const _0x54c266=a0_0x1a1e4f,_0x581b27={'FfrKt':function(_0x4b6960,_0x3e3bd6){return _0x4b6960===_0x3e3bd6;},'UEaUD':function(_0x40cb8c,_0x2ed7ca){return _0x40cb8c===_0x2ed7ca;},'dQGUs':'string','vTZzk':function(_0x324ab3,_0x26d6e6){return _0x324ab3 instanceof _0x26d6e6;},'MxJCz':function(_0x5cdbf0,_0x57dbb6){return _0x5cdbf0(_0x57dbb6);},'cPVXV':function(_0x224470,_0x53b1a1){return _0x224470(_0x53b1a1);},'SyHOj':function(_0x54d1cf,_0x5667b2){return _0x54d1cf(_0x5667b2);}};if(_0x1ead30===null||_0x1ead30===undefined||_0x581b27['FfrKt'](_0x1ead30,''))return null;if(_0x581b27['UEaUD'](typeof _0x1ead30,_0x581b27[_0x54c266(0x1dd)])&&/^\d{4}-\d{2}-\d{2}$/[_0x54c266(0x197)](_0x1ead30))return _0x1ead30;if(_0x581b27['vTZzk'](_0x1ead30,Date)){if(isNaN(_0x1ead30[_0x54c266(0x185)]()))return null;const _0x343d0f=_0x1ead30[_0x54c266(0x17b)](),_0x5beb42=_0x581b27[_0x54c266(0x1a9)](String,_0x1ead30[_0x54c266(0x165)]()+0x1)[_0x54c266(0x157)](0x2,'0'),_0x8f3240=_0x581b27[_0x54c266(0x164)](String,_0x1ead30[_0x54c266(0x15e)]())[_0x54c266(0x157)](0x2,'0');return _0x343d0f+'-'+_0x5beb42+'-'+_0x8f3240;}if(typeof _0x1ead30==='string'){const _0x42ff41=_0x1ead30[_0x54c266(0x1c2)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x42ff41){const _0x5a60d1=String(_0x42ff41[0x1])[_0x54c266(0x157)](0x2,'0'),_0x58a8e7=_0x581b27['SyHOj'](String,_0x42ff41[0x2])['padStart'](0x2,'0'),_0x930ae3=_0x42ff41[0x3];return _0x930ae3+'-'+_0x58a8e7+'-'+_0x5a60d1;}const _0x303dc1=_0x1ead30['match'](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x303dc1){const _0x97987a=_0x303dc1[0x1],_0xec3336=_0x581b27[_0x54c266(0x1a8)](String,_0x303dc1[0x2])['padStart'](0x2,'0'),_0x473b91=String(_0x303dc1[0x3])[_0x54c266(0x157)](0x2,'0');return _0x97987a+'-'+_0xec3336+'-'+_0x473b91;}}return _0x1ead30;}[a0_0x1a1e4f(0x1ef)](_0x2411c3){const _0x46b461=a0_0x1a1e4f,_0x2c00d0={'sxjHV':function(_0x17e2ad,_0x5cc8e1){return _0x17e2ad===_0x5cc8e1;},'IFzAt':_0x46b461(0x1a7),'dZsJb':function(_0x402ccf,_0x39918f){return _0x402ccf(_0x39918f);},'NOnrA':function(_0x9b8151,_0x552da0){return _0x9b8151===_0x552da0;},'ZlHBa':_0x46b461(0x1b3),'LPMmT':function(_0x24a242,_0x867048){return _0x24a242(_0x867048);}};if(_0x2c00d0['sxjHV'](_0x2411c3,null)||_0x2411c3===undefined||_0x2c00d0['sxjHV'](_0x2411c3,''))return null;if(typeof _0x2411c3===_0x2c00d0[_0x46b461(0x1bd)])return _0x2c00d0[_0x46b461(0x1d0)](isNaN,_0x2411c3)?null:_0x2411c3;if(_0x2c00d0['NOnrA'](typeof _0x2411c3,_0x2c00d0['ZlHBa'])){let _0x3e42b6=_0x2411c3[_0x46b461(0x1e2)]();const _0x1ccea1=/,\d{1,2}$/[_0x46b461(0x197)](_0x3e42b6)&&!/,\d{3}/[_0x46b461(0x197)](_0x3e42b6);_0x1ccea1?_0x3e42b6=_0x3e42b6['replace'](/\./g,'')['replace'](',','.'):_0x3e42b6=_0x3e42b6['replace'](/,/g,'');const _0x3f9fe0=_0x2c00d0['LPMmT'](parseFloat,_0x3e42b6);return _0x2c00d0['dZsJb'](isNaN,_0x3f9fe0)?null:_0x3f9fe0;}return null;}async['uploadFile'](_0x2eff20,_0x55cba5){const _0xcfc695=a0_0x1a1e4f,_0x5e867e={'ABjIB':function(_0x217bbd,_0x46a1fa){return _0x217bbd||_0x46a1fa;},'hiAAs':'headers_mapped','XfTMA':'Excel\x20headers\x20mapped\x20to\x20field\x20names','ZIkHK':'column_formats_applied','QZnbU':_0xcfc695(0x1d4),'IHbkU':_0xcfc695(0x182),'zrGxc':'file_cleanup_error'},_0x504114=this['generateId']();try{let {headers:_0xb63f12,rows:_0x189f0f,totalRows:_0x41b013}=await excelParser['parseExcelFile'](_0x2eff20[_0xcfc695(0x1da)]);const _0x1849a5=this['buildLabelToFieldMap'](_0x55cba5['fieldLabels']),_0x46c964=_0xb63f12[_0xcfc695(0x191)](_0x38b94b=>{const _0xaa7030=_0xcfc695,_0x230bc2=_0x1849a5['get'](_0x38b94b);return _0x5e867e[_0xaa7030(0x1dc)](_0x230bc2,_0x38b94b);});_0x189f0f=_0x189f0f[_0xcfc695(0x191)](_0xf1b145=>{const _0x12c724=_0xcfc695,_0x2fc8cd={};return _0xb63f12[_0x12c724(0x1b5)]((_0x5bb5cb,_0xd25129)=>{const _0x39008a=_0x46c964[_0xd25129];_0x2fc8cd[_0x39008a]=_0xf1b145[_0x5bb5cb];}),_0x2fc8cd;}),_0xb63f12=_0x46c964,logger['debug']({'event':_0x5e867e['hiAAs'],'original':_0xb63f12['length'],'mapped':_0x46c964[_0xcfc695(0x1b9)]((_0x34deb2,_0x3a852a)=>_0x34deb2!==_0xb63f12[_0x3a852a])[_0xcfc695(0x1de)]},_0x5e867e[_0xcfc695(0x1f2)]);_0x55cba5['columnFormats']&&Object[_0xcfc695(0x1f3)](_0x55cba5[_0xcfc695(0x1b7)])[_0xcfc695(0x1de)]>0x0&&(_0x189f0f=this[_0xcfc695(0x1ba)](_0x189f0f,_0x55cba5[_0xcfc695(0x1b7)]),logger[_0xcfc695(0x1fa)]({'event':_0x5e867e['ZIkHK'],'formatCount':Object['keys'](_0x55cba5['columnFormats'])['length'],'formats':Object['keys'](_0x55cba5['columnFormats'])},'Column\x20formats\x20applied\x20to\x20rows'));const _0x17e545=_0x55cba5[_0xcfc695(0x1cd)]?Object[_0xcfc695(0x1c7)](_0x55cba5['lookupFields'])['map'](_0x84b884=>_0x84b884['targetField']):[],_0x36e7b1=_0x55cba5['fieldName'][_0xcfc695(0x1b9)](_0x23cde7=>!_0x17e545['includes'](_0x23cde7)),_0x5129b0=excelParser['validateExcelStructure'](_0xb63f12,_0x36e7b1);if(!_0x5129b0['valid']){await fs[_0xcfc695(0x16d)](_0x2eff20[_0xcfc695(0x1da)]);throw new Error(_0xcfc695(0x15c)+_0x5129b0[_0xcfc695(0x1a2)][_0xcfc695(0x1e9)](',\x20'));}const _0x3f8ed6={'upload_id':_0x504114,'filename':_0x2eff20['originalname'],'total_rows':_0x41b013,'headers':_0xb63f12,'rows':_0x189f0f,'params':_0x55cba5,'created_at':new Date()[_0xcfc695(0x1c5)]()};return await redisHelper['setJob']('upload:'+_0x504114,_0x3f8ed6,0xe10),await fs['unlink'](_0x2eff20['path']),logger['info']({'event':_0x5e867e[_0xcfc695(0x1c6)],'uploadId':_0x504114,'filename':_0x2eff20['originalname'],'totalRows':_0x41b013},_0x5e867e['IHbkU']),{'upload_id':_0x504114,'total_rows':_0x41b013,'preview':_0x189f0f[_0xcfc695(0x18f)](0x0,0xa)};}catch(_0x35c280){try{await fs['unlink'](_0x2eff20['path']);}catch(_0x4ad7ce){logError(_0x4ad7ce,{'event':_0x5e867e[_0xcfc695(0x15f)]},_0xcfc695(0x1a0));}throw _0x35c280;}}async['createPreviewJob'](_0x502de3){const _0x1def9a=a0_0x1a1e4f,_0x26420d={'aFgQf':function(_0x285340,_0x16a6e2,_0x3764d3,_0x4d6bf8){return _0x285340(_0x16a6e2,_0x3764d3,_0x4d6bf8);},'lJfKn':_0x1def9a(0x183),'bQrwF':_0x1def9a(0x1d8),'YYIUJ':'validating'},_0x2ba179=this['generateId'](),_0x28a3d8=await redisHelper[_0x1def9a(0x1bb)](_0x1def9a(0x19c)+_0x502de3);if(!_0x28a3d8)throw new Error(_0x26420d['bQrwF']);const _0x5e5f0c={'job_id':_0x2ba179,'upload_id':_0x502de3,'status':'validating','progress':0x0,'created_at':new Date()[_0x1def9a(0x1c5)](),'params':_0x28a3d8['params']};return await redisHelper[_0x1def9a(0x16a)](_0x1def9a(0x172)+_0x2ba179,_0x5e5f0c,0xe10),logger['info']({'event':_0x1def9a(0x16b),'jobId':_0x2ba179,'uploadId':_0x502de3},'Preview\x20job\x20created'),this[_0x1def9a(0x196)](_0x2ba179,_0x502de3,_0x28a3d8)['catch'](_0x4f7903=>{_0x26420d['aFgQf'](logError,_0x4f7903,{'event':'preview_process_error','jobId':_0x2ba179},_0x26420d['lJfKn']);}),{'job_id':_0x2ba179,'status':_0x26420d[_0x1def9a(0x1c4)]};}['autoGenerateUpsertKeys'](_0x4e8a89,_0x9642a6){const _0x429645={'rcefu':function(_0x2cdd70,_0x45b235){return _0x2cdd70===_0x45b235;},'sZOKw':function(_0x4d75ea,_0x2a0206){return _0x4d75ea===_0x2a0206;},'LdDUk':'uuid_auto_generated'};_0x4e8a89['forEach']((_0x145e3c,_0x49e65e)=>{_0x9642a6['forEach'](_0x259c74=>{const _0x1c9492=a0_0x2ebd,_0x3657db=_0x145e3c[_0x259c74];if(_0x429645['rcefu'](_0x3657db,null)||_0x3657db===undefined||_0x429645[_0x1c9492(0x154)](_0x3657db,'')||String(_0x3657db)[_0x1c9492(0x1e2)]()==='-'){const _0x3354b5=uuidv7();_0x145e3c[_0x259c74]=_0x3354b5,_0x145e3c['_generated_uuid']=_0x145e3c['_generated_uuid']||{},_0x145e3c['_generated_uuid'][_0x259c74]=_0x3354b5,logger[_0x1c9492(0x1fa)]({'event':_0x429645['LdDUk'],'rowIndex':_0x49e65e,'field':_0x259c74,'uuid':_0x3354b5},'Auto-generated\x20UUID\x20for\x20'+_0x259c74+_0x1c9492(0x180)+(_0x49e65e+0x2));}});});}async[a0_0x1a1e4f(0x196)](_0x47597d,_0x54b33c,_0x2433bb){const _0x4d8125=a0_0x1a1e4f,_0x559ae0={'UsYqL':function(_0x5c91e8,_0x51f37d){return _0x5c91e8===_0x51f37d;},'jAKRq':_0x4d8125(0x1ea),'zZrIS':_0x4d8125(0x1c0),'WtbJM':function(_0x41b312,_0x43166c){return _0x41b312===_0x43166c;},'oUjLW':_0x4d8125(0x1ad),'jEqbM':'Processing\x20lookup\x20fields','KwSGd':function(_0x2c5f38,_0x2cfdb8){return _0x2c5f38||_0x2cfdb8;},'SPyIe':function(_0x243b11,_0x24ea65){return _0x243b11>_0x24ea65;},'RWciL':'preview_error','zyAmi':'preview_ok','Iigdc':function(_0x55b43c,_0x5e3fc5,_0x2c3e2d,_0x639361){return _0x55b43c(_0x5e3fc5,_0x2c3e2d,_0x639361);},'qDZXR':_0x4d8125(0x1f1),'ymNjv':_0x4d8125(0x1c9),'XyQGR':'failed'};try{let {rows:_0x1595a8,params:_0x2041ac}=_0x2433bb;const {requiredFields:_0x12947b,validations:_0x2120b2,upsertKeys:_0x32ed1e,tableName:_0x1e7cde,primaryKey:_0x50531e,fieldName:_0x11062a,upsertStrategy:_0x1259ea,lookupFields:_0x544fb3}=_0x2041ac;this['autoGenerateUpsertKeys'](_0x1595a8,_0x32ed1e);let _0x1bdf93=[];if(_0x544fb3&&Object[_0x4d8125(0x1f3)](_0x544fb3)[_0x4d8125(0x1de)]>0x0){logger[_0x4d8125(0x1ce)]({'event':'processing_lookup_fields','jobId':_0x47597d,'lookupFieldCount':Object['keys'](_0x544fb3)[_0x4d8125(0x1de)]},_0x559ae0[_0x4d8125(0x1e3)]);const _0x21c76f=await lookupResolver[_0x4d8125(0x184)](_0x1595a8,_0x544fb3);_0x1595a8=_0x21c76f[_0x4d8125(0x1c1)],_0x1bdf93=_0x21c76f['errors'],_0x2433bb['rows']=_0x1595a8;}const _0x2acbb7=importValidator['batchValidateRows'](_0x1595a8,_0x12947b||[],_0x559ae0[_0x4d8125(0x1be)](_0x2120b2,{}));_0x1bdf93['forEach'](_0x16409e=>{const _0x495be9=_0x4d8125,_0x18cf36=_0x2acbb7[_0x495be9(0x173)](_0x257a4f=>_0x257a4f['rowIndex']===_0x16409e['rowIndex']);_0x18cf36?_0x18cf36['errors']['push'](_0x16409e[_0x495be9(0x17c)]):_0x2acbb7[_0x495be9(0x155)]({'rowIndex':_0x16409e['rowIndex'],'rowData':_0x1595a8[_0x16409e['rowIndex']],'errors':[_0x16409e[_0x495be9(0x17c)]]});});const _0x5b0c66=importValidator[_0x4d8125(0x178)](_0x1595a8,_0x32ed1e);_0x5b0c66['forEach'](_0x40624a=>{const _0x4c10a2=_0x4d8125,_0x1a633e=_0x2acbb7['find'](_0x56b08a=>_0x56b08a[_0x4c10a2(0x194)]===_0x40624a['rowIndex']),_0x5efe91=_0x32ed1e[_0x4c10a2(0x191)](_0x1aac65=>_0x1aac65['toUpperCase']())['join'](',\x20'),_0x47b5bd='Duplicate\x20value\x20for\x20'+_0x5efe91;_0x1a633e?_0x1a633e[_0x4c10a2(0x160)]['push'](_0x47b5bd):_0x2acbb7[_0x4c10a2(0x155)]({'rowIndex':_0x40624a['rowIndex'],'rowData':_0x1595a8[_0x40624a[_0x4c10a2(0x194)]],'errors':[_0x47b5bd]});}),await this['detectDatabaseDuplicates'](_0x1595a8,_0x32ed1e,_0x1e7cde,_0x50531e,_0x1259ea,_0x2acbb7),_0x2acbb7['forEach'](_0x4b1e99=>{const _0x2c5b12=_0x1595a8[_0x4b1e99['rowIndex']];_0x2c5b12&&(_0x2c5b12['_errors']=_0x4b1e99['errors']);});let _0x3b3e9b=0x0,_0xdc2853=0x0,_0xb61fb1=0x0;_0x1595a8['forEach'](_0x4f6e74=>{const _0x5759f3=_0x4d8125;if(_0x559ae0['UsYqL'](_0x4f6e74[_0x5759f3(0x1f4)],_0x559ae0['jAKRq']))_0x3b3e9b++;else{if(_0x4f6e74['_action']===_0x559ae0['zZrIS'])_0xdc2853++;else _0x559ae0['WtbJM'](_0x4f6e74['_action'],_0x559ae0['oUjLW'])&&_0xb61fb1++;}});const _0x46b540={'job_id':_0x47597d,'upload_id':_0x54b33c,'status':_0x559ae0[_0x4d8125(0x19b)](_0x2acbb7['length'],0x0)?_0x559ae0[_0x4d8125(0x1a5)]:_0x559ae0[_0x4d8125(0x1d1)],'progress':0x64,'created_at':_0x2433bb[_0x4d8125(0x159)],'completed_at':new Date()['toISOString'](),'preview':{'total_rows':_0x1595a8['length'],'insert_count':_0x3b3e9b,'update_count':_0xdc2853,'skip_count':_0xb61fb1,'error_count':_0x2acbb7['length'],'errors':_0x2acbb7,'data':_0x1595a8,'sample_insert':_0x1595a8[_0x4d8125(0x1b9)](_0x3d099b=>_0x3d099b[_0x4d8125(0x1f4)]===_0x4d8125(0x1ea))[_0x4d8125(0x18f)](0x0,0x5),'sample_update':_0x1595a8[_0x4d8125(0x1b9)](_0x456511=>_0x456511['_action']==='UPDATE')['slice'](0x0,0x5),'sample_skip':_0x1595a8[_0x4d8125(0x1b9)](_0x3df439=>_0x3df439['_action']===_0x4d8125(0x1ad))['slice'](0x0,0x5)},'params':_0x2041ac};await redisHelper['setJob'](_0x4d8125(0x172)+_0x47597d,_0x46b540,0xe10),_0x2433bb[_0x4d8125(0x18b)]=_0x1595a8,await redisHelper['setJob'](_0x4d8125(0x19c)+_0x54b33c,_0x2433bb,0xe10),logger[_0x4d8125(0x1ce)]({'event':_0x4d8125(0x189),'jobId':_0x47597d,'status':_0x46b540[_0x4d8125(0x15d)],'insertCount':_0x3b3e9b,'updateCount':_0xdc2853,'skipCount':_0xb61fb1,'errorCount':_0x2acbb7[_0x4d8125(0x1de)]},'Preview\x20job\x20completed');}catch(_0x2aabe4){_0x559ae0['Iigdc'](logError,_0x2aabe4,{'event':_0x559ae0[_0x4d8125(0x174)],'jobId':_0x47597d},_0x559ae0['ymNjv']),await redisHelper['setJob'](_0x4d8125(0x172)+_0x47597d,{'job_id':_0x47597d,'upload_id':_0x54b33c,'status':_0x559ae0['XyQGR'],'progress':0x0,'error':_0x2aabe4['message'],'created_at':new Date()['toISOString'](),'completed_at':new Date()[_0x4d8125(0x1c5)]()},0xe10);}}async['detectDatabaseDuplicates'](_0x13b3ea,_0x2b8c2c,_0x5f5ae1,_0x4d739d,_0x48eb26='update_existing',_0x3dd1fd=[]){const _0x1e46aa=a0_0x1a1e4f,_0x558d0a={'mCxfz':function(_0x4d0cd2,_0x25a9de){return _0x4d0cd2===_0x25a9de;},'faDRR':_0x1e46aa(0x186),'BgwmK':'update_existing','AfhPh':'UPDATE','dszdH':'SKIP','kwqOW':function(_0x19e2de,_0x35d6e6){return _0x19e2de===_0x35d6e6;},'EZoLu':_0x1e46aa(0x1ea),'bpXqh':function(_0x37a59a,_0x47860e){return _0x37a59a===_0x47860e;},'JZhUH':_0x1e46aa(0x188),'vjPDP':function(_0x52901c,_0x517426){return _0x52901c(_0x517426);},'vrDGg':function(_0x29024c,_0x318060){return _0x29024c===_0x318060;},'EjwXP':'oracle','GLxTC':function(_0x385b82,_0x40940a){return _0x385b82>_0x40940a;}},_0x9bdcf8=upsertBuilder[_0x1e46aa(0x152)](_0x13b3ea,0x64);for(const _0x16008e of _0x9bdcf8){const _0x455261=_0x16008e['map'](_0x3d8f2d=>_0x3d8f2d[_0x2b8c2c[0x0]]),_0x45aa08=_0x455261[_0x1e46aa(0x191)](_0x472a1b=>{const _0x586234=_0x1e46aa;if(_0x558d0a['mCxfz'](_0x472a1b,null)||_0x472a1b===undefined)return _0x558d0a[_0x586234(0x17d)];return'\x27'+String(_0x472a1b)['replace'](/'/g,'\x27\x27')+'\x27';}),_0x145496=_0x1e46aa(0x1ee)+_0x4d739d+',\x20'+_0x2b8c2c['join'](',\x20')+_0x1e46aa(0x19f)+_0x5f5ae1+_0x1e46aa(0x1b2)+_0x2b8c2c[0x0]+_0x1e46aa(0x1a6)+_0x45aa08[_0x1e46aa(0x1e9)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20';let _0x1fc01e=await _0x558d0a[_0x1e46aa(0x15b)](executeQuery,_0x145496);_0x558d0a[_0x1e46aa(0x1b0)](dbType,_0x558d0a[_0x1e46aa(0x1f9)])&&_0x1fc01e&&_0x558d0a[_0x1e46aa(0x167)](_0x1fc01e['length'],0x0)&&(_0x1fc01e=_0x1fc01e[_0x1e46aa(0x191)](_0x12f865=>{const _0x47f2fd=_0x1e46aa,_0x301820={};for(const [_0xdab236,_0x1cbab0]of Object[_0x47f2fd(0x16c)](_0x12f865)){_0x301820[_0xdab236[_0x47f2fd(0x1f7)]()]=_0x1cbab0;}return _0x301820;}));const _0x28a491=new Map();_0x1fc01e[_0x1e46aa(0x1b5)](_0x60dc13=>{const _0x283ca3=_0x1e46aa,_0x3b3d8f=_0x60dc13[_0x2b8c2c[0x0]];_0x28a491[_0x283ca3(0x171)](_0x3b3d8f,_0x60dc13);}),_0x16008e['forEach']((_0x5ab239,_0x786133)=>{const _0x5ce62a=_0x1e46aa,_0x1a6392=_0x5ab239[_0x2b8c2c[0x0]],_0x58bf17=_0x28a491[_0x5ce62a(0x17f)](_0x1a6392);if(_0x58bf17){if(_0x48eb26===_0x558d0a['BgwmK'])_0x5ab239['_action']=_0x558d0a[_0x5ce62a(0x1b6)],_0x5ab239[_0x5ce62a(0x162)]=_0x58bf17[_0x4d739d];else{if(_0x48eb26==='insert_only'){_0x5ab239[_0x5ce62a(0x1f4)]='SKIP',_0x5ab239[_0x5ce62a(0x1f0)]=_0x5ab239['_errors']||[],_0x5ab239['_errors'][_0x5ce62a(0x155)]('Record\x20exists\x20(insert_only\x20mode)');const _0x276bc7=_0x13b3ea['indexOf'](_0x5ab239);_0x276bc7!==-0x1&&_0x3dd1fd[_0x5ce62a(0x155)]({'rowIndex':_0x276bc7,'rowData':_0x5ab239,'errors':[_0x5ce62a(0x1df)]});}else _0x558d0a['mCxfz'](_0x48eb26,_0x5ce62a(0x188))&&(_0x5ab239[_0x5ce62a(0x1f4)]=_0x558d0a['dszdH']);}}else{if(_0x558d0a[_0x5ce62a(0x18d)](_0x48eb26,'update_existing'))_0x5ab239['_action']=_0x558d0a['EZoLu'];else(_0x558d0a['bpXqh'](_0x48eb26,_0x5ce62a(0x1e1))||_0x48eb26===_0x558d0a['JZhUH'])&&(_0x5ab239['_action']=_0x5ce62a(0x1ea));}});}}async['createCommitJob'](_0x2aa53c){const _0x39789e=a0_0x1a1e4f,_0x194aef={'uiGmD':function(_0x1babea,_0x593dfd,_0xfda0b6,_0x4b32ca){return _0x1babea(_0x593dfd,_0xfda0b6,_0x4b32ca);},'QrjBf':_0x39789e(0x1e8),'huJHJ':_0x39789e(0x166),'bCVcb':function(_0x20478f,_0x47ab64){return _0x20478f!==_0x47ab64;},'GVOIP':_0x39789e(0x179),'yQORp':_0x39789e(0x1c3),'sLXKL':_0x39789e(0x198)},_0x126aa0=this[_0x39789e(0x1a4)](),_0x447ff2=await redisHelper['getJob']('job:'+_0x2aa53c);if(!_0x447ff2)throw new Error(_0x39789e(0x1cc));if(_0x194aef['bCVcb'](_0x447ff2['status'],_0x39789e(0x1d3)))throw new Error('Cannot\x20commit:\x20preview\x20status\x20is\x20'+_0x447ff2['status']);const _0x2db83f={'job_id':_0x126aa0,'upload_id':_0x447ff2[_0x39789e(0x1eb)],'preview_job_id':_0x2aa53c,'status':_0x39789e(0x198),'progress':0x0,'created_at':new Date()[_0x39789e(0x1c5)](),'params':_0x447ff2[_0x39789e(0x1bf)]};return await redisHelper[_0x39789e(0x16a)]('job:'+_0x126aa0,_0x2db83f,0xe10),logger['info']({'event':_0x194aef[_0x39789e(0x192)],'jobId':_0x126aa0,'previewJobId':_0x2aa53c},_0x194aef[_0x39789e(0x1bc)]),this['processCommitJob'](_0x126aa0,_0x447ff2)[_0x39789e(0x1e6)](_0x5a6f1a=>{const _0x3ba653=_0x39789e;_0x194aef[_0x3ba653(0x1b1)](logError,_0x5a6f1a,{'event':_0x194aef[_0x3ba653(0x1ab)],'jobId':_0x126aa0},_0x194aef[_0x3ba653(0x1d5)]);}),{'job_id':_0x126aa0,'status':_0x194aef['sLXKL']};}async[a0_0x1a1e4f(0x1f8)](_0x364d59,_0x16a908){const _0x1d0c7c=a0_0x1a1e4f,_0x4afe52={'pXiLz':'Upload\x20data\x20not\x20found\x20or\x20expired','WINGn':'import_fields_filtered','kTYPi':_0x1d0c7c(0x190),'FKWPn':function(_0x3a130d,_0x59aa32){return _0x3a130d>_0x59aa32;},'afLeQ':function(_0x4cc997,_0x2532b8){return _0x4cc997||_0x2532b8;},'FPfhP':_0x1d0c7c(0x1e4),'rBAGB':function(_0x5e91c7,_0x486b54){return _0x5e91c7>_0x486b54;},'rbgEA':function(_0x4812a5,_0x4cfac0,_0x41e472,_0x444cac){return _0x4812a5(_0x4cfac0,_0x41e472,_0x444cac);},'iHntR':'commit_job_failed','KAJhK':'failed'};try{const _0x533df8=await redisHelper['getJob']('upload:'+_0x16a908[_0x1d0c7c(0x1eb)]);if(!_0x533df8)throw new Error(_0x4afe52[_0x1d0c7c(0x1cf)]);const {rows:_0x4a7d10,params:_0x292fb5}=_0x533df8,{tableName:_0x1cb594,fieldName:_0x279e5f,primaryKey:_0x551bb4,upsertKeys:_0x2f4ec6,excludeFromImport:_0x44dd77,lookupFields:_0x2551df,columnFormats:_0x19f737}=_0x292fb5,_0x5c30c5=_0x2551df?Object[_0x1d0c7c(0x1f3)](_0x2551df):[],_0x89d70e=new Set([..._0x44dd77||[],..._0x5c30c5]);let _0x3109e6=_0x279e5f;_0x89d70e['size']>0x0&&(_0x3109e6=_0x279e5f['filter'](_0x4e15ab=>!_0x89d70e['has'](_0x4e15ab)),logger['debug']({'event':_0x4afe52['WINGn'],'originalCount':_0x279e5f['length'],'filteredCount':_0x3109e6[_0x1d0c7c(0x1de)],'excludedFields':Array['from'](_0x89d70e),'lookupSourceFields':_0x5c30c5},_0x4afe52[_0x1d0c7c(0x163)]));const _0x5151fb=_0x4a7d10['filter'](_0xa80241=>_0xa80241[_0x1d0c7c(0x1f4)]==='INSERT'),_0x3730c2=_0x4a7d10['filter'](_0x54adbe=>_0x54adbe['_action']===_0x1d0c7c(0x1c0));let _0xd0cf56=0x0,_0x2a0dbb=0x0;const _0x4d0169=[];if(_0x4afe52[_0x1d0c7c(0x158)](_0x5151fb['length'],0x0)){const _0x8dbd41=upsertBuilder['chunkRows'](_0x5151fb,0x64);for(const _0x30084e of _0x8dbd41){const {query:_0x59bc56}=upsertBuilder[_0x1d0c7c(0x176)](_0x30084e,_0x1cb594,_0x3109e6,_0x4afe52['afLeQ'](_0x19f737,{}));_0x59bc56&&_0x4d0169['push']({'sql':_0x59bc56,'count':_0x30084e['length'],'type':_0x4afe52['FPfhP']});}}if(_0x4afe52['rBAGB'](_0x3730c2[_0x1d0c7c(0x1de)],0x0)){const _0xc6f0c3=upsertBuilder['chunkRows'](_0x3730c2,0x64);for(const _0x4437d7 of _0xc6f0c3){const {query:_0x57472b}=upsertBuilder[_0x1d0c7c(0x17e)](_0x4437d7,_0x1cb594,_0x3109e6,_0x551bb4,_0x2f4ec6,_0x19f737||{});_0x57472b&&_0x4d0169['push']({'sql':_0x57472b,'count':_0x4437d7[_0x1d0c7c(0x1de)],'type':'update'});}}_0x4d0169['length']>0x0&&await executeTransaction(_0x4d0169[_0x1d0c7c(0x191)](_0x56f09b=>({'sql':_0x56f09b['sql'],'params':[]})));_0x4d0169[_0x1d0c7c(0x1b5)](_0x4a422f=>{const _0x2ff62c=_0x1d0c7c;if(_0x4a422f[_0x2ff62c(0x151)]===_0x2ff62c(0x1e4))_0xd0cf56+=_0x4a422f[_0x2ff62c(0x1f6)];else _0x2a0dbb+=_0x4a422f['count'];});const _0x4cee74={'job_id':_0x364d59,'upload_id':_0x16a908[_0x1d0c7c(0x1eb)],'preview_job_id':_0x16a908[_0x1d0c7c(0x1d9)],'status':_0x1d0c7c(0x156),'progress':0x64,'created_at':_0x16a908['created_at'],'started_at':new Date()['toISOString'](),'completed_at':new Date()[_0x1d0c7c(0x1c5)](),'result':{'total_rows':_0x4a7d10[_0x1d0c7c(0x1de)],'inserted_rows':_0xd0cf56,'updated_rows':_0x2a0dbb,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x292fb5};await redisHelper['setJob'](_0x1d0c7c(0x172)+_0x364d59,_0x4cee74,0xe10),logger['info']({'event':'commit_job_completed','jobId':_0x364d59,'insertedCount':_0xd0cf56,'updatedCount':_0x2a0dbb},_0x1d0c7c(0x18a));}catch(_0x2b4e1d){_0x4afe52['rbgEA'](logError,_0x2b4e1d,{'event':_0x4afe52['iHntR'],'jobId':_0x364d59},'Commit\x20job\x20failed'),await redisHelper['setJob']('job:'+_0x364d59,{'job_id':_0x364d59,'upload_id':_0x16a908[_0x1d0c7c(0x1eb)],'preview_job_id':_0x16a908[_0x1d0c7c(0x1d9)],'status':_0x4afe52[_0x1d0c7c(0x1e0)],'progress':0x0,'error':_0x2b4e1d[_0x1d0c7c(0x17c)],'created_at':_0x16a908[_0x1d0c7c(0x159)],'started_at':new Date()['toISOString'](),'completed_at':new Date()['toISOString']()},0xe10);}}async['getJobStatus'](_0x42d333){const _0x2a9c17=a0_0x1a1e4f,_0xfb4ae3={'lFlEt':_0x2a9c17(0x175)},_0x2e693d=await redisHelper['getJob'](_0x2a9c17(0x172)+_0x42d333);if(!_0x2e693d)return{'success':![],'error':_0xfb4ae3['lFlEt']};return{'success':!![],'data':_0x2e693d};}}module['exports']=new ImportService();function a0_0x24d5(){const _0x1301bd=['uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','ChjVy2vZC0XVB2T1CezPzwXKCW','z2v0vgLTzq','tLvmta','DxbSB2fKrgLY','C2TPCf9LEgLZDgLUzW','ChjLDMLLD19QB2jFy29TCgXLDgvK','q29TBwL0igPVyIbJB21WBgv0zwq','CM93CW','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','A3DXt1C','zgf0zq','C2XPy2u','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','BwfW','r1zpsva','AwrcEui','CM93sw5KzxG','x3vWBg9HzerPCG','ChjVy2vZC1bYzxzPzxDkB2i','DgvZDa','ChjVy2vZC2LUzW','ChjVBwLZzxm','ndbKBLv1A3a','u1b5swu','DxbSB2fKoG','mteZnJjduLvLsfy','mtryqKrHu1K','cIaGicaGicaGrLjptsa','rMfPBgvKihrVignSzwfUDxaGzMLSzq','yNvPBgrmywjLBfrVrMLLBgrnyxa','BwLZC2LUz0zPzwXKCW','mta0u0nSEMDR','z2vUzxjHDgvjza','uLDJAuW','ieLoicG','BNvTyMvY','u3Lit2O','txHkq3O','Dg9tDhjPBMC','uxjQqMy','C3vIC3rYAw5N','u0Tjua','Cg9ZDgDYzxnXBa','Dwr5DLO','DNjer2C','DwLhBuq','cIaGicaGicaGv0HfuKuG','C3rYAw5N','r1nfz0K','zM9YrwfJAa','qwzOugG','y29SDw1UrM9YBwf0CW','jdfFjdi','zMLSDgvY','yxbWBhLdB2X1Bw5gB3jTyxrZ','z2v0sM9I','EvfpuNa','suz6qxq','s3Dtr2q','CgfYyw1Z','vvbeqvrf','ChjVy2vZC2vKuM93CW','Bwf0y2G','q29TBwL0igPVyIbJCMvHDgvK','wvLjvuO','Dg9ju09tDhjPBMC','uvPUyLu','DMfSDwvZ','odq2mdy4m0fsB2LrAW','uhjLDMLLDYbQB2iGzMfPBgvK','CMvWBgfJzq','y2HHCKf0','uhjLDMLLDYbQB2iGBM90igzVDw5Kig9Yigv4CgLYzwq','Bg9VA3vWrMLLBgrZ','Aw5MBW','CfHPthO','zfPZsMi','ENLbBwK','rejFvfLqrq','ChjLDMLLD19VAW','Aw1WB3j0x2zPBgvFDxbSB2fKzwq','AhvkseO','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','vKzzAfC','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','AM9Ix2LK','Cgf0Aa','nfn3ANzwwG','qujQsui','zffhvxm','BgvUz3rO','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','s0fkAeS','Aw5Zzxj0x29UBhK','DhjPBq','AKvXyK0','Aw5Zzxj0','zxHLy3v0zvrYyw5Zywn0Aw9U','y2f0y2G','lI4VlI4Vy29Yzs91DgLSCY9KyG','y29TBwL0x3bYB2nLC3nFzxjYB3i','AM9PBG','su5trvju','DxbSB2fKx2LK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mZu3ntKYvfv5BK50','cIaGicaGicaGu0vmrunuia','zM9YBwf0tNvTyMvYrM9Yrgf0ywjHC2u','x2vYCM9YCW','ChjLDMLLD19QB2jFzMfPBgvK','wgzutue','A2v5CW','x2fJDgLVBG','DxvPza','y291BNq','Dg9mB3DLCKnHC2u','ChjVy2vZC0nVBw1PDePVyG','rwP3wfa','zgvIDwC','lI4VAw50zwDYyxrPB25Zl2XVB2T1Cc1YzxnVBhzLCG','DhLWzq','y2H1BMTsB3DZ','CMfUzg9T','C1Pps3C','ChvZAa','y29TCgXLDgvK','CgfKu3rHCNq','rKTxug4','y3jLyxrLzf9HDa','BxLZCwW','DMPqrfa','rxHJzwWGC3rYDwn0DxjLig1PC21HDgnOlIbnAxnZAw5NigzPzwXKCZOG','C3rHDhvZ','z2v0rgf0zq','ENjhEgm','zxjYB3jZ','ndGYmdyWrMfOseLr','x2v4Axn0Aw5Nswq','A1rzugK','y1bwwfy','z2v0tw9UDgG','q29TBwL0ihbYB2nLC3nPBMCGzMfPBgvK','r0X4vem','mZu5mZyXvfbxz3L4','nJGXounpB0DrAW','C2v0sM9I','ChjLDMLLD19QB2jFy3jLyxrLza','zw50CMLLCW','Dw5SAw5R','lI9PBxbVCNqTDMfSAwrHDg9Y','zw52','mtaWmtGYmeruuxbVDq','C2v0','AM9IoG','zMLUza','CurAwfi','sM9Iig5VDcbMB3vUzcbVCIbLEhbPCMvK','yNvPBgrcyxrJAeLUC2vYDa','sgjlvha','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','y29TBwL0x2PVyL9JCMvHDgvK','zMXVB3i','z2v0rNvSBfLLyxi','BwvZC2fNzq','zMfeuLi','yNvPBgrcyxrJAfvWzgf0zq','z2v0','igf0ihjVDYa','lI4VlI4VDgvTCc91CgXVywrZlW','sw1WB3j0igzPBguGDxbSB2fKzwqGyw5KihbHCNnLza'];a0_0x24d5=function(){return _0x1301bd;};return a0_0x24d5();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x45c5f1=a0_0x5de4;function a0_0x5de4(_0x3b8433,_0x12f866){_0x3b8433=_0x3b8433-0x189;const _0x59c8bc=a0_0x59c8();let _0x5de4e7=_0x59c8bc[_0x3b8433];if(a0_0x5de4['BieHbu']===undefined){var _0x45bef7=function(_0x52ebab){const _0x45bd84='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a8ce2='',_0x7feb92='';for(let _0x18e498=0x0,_0x1b73dc,_0x4aad89,_0x480b4e=0x0;_0x4aad89=_0x52ebab['charAt'](_0x480b4e++);~_0x4aad89&&(_0x1b73dc=_0x18e498%0x4?_0x1b73dc*0x40+_0x4aad89:_0x4aad89,_0x18e498++%0x4)?_0x3a8ce2+=String['fromCharCode'](0xff&_0x1b73dc>>(-0x2*_0x18e498&0x6)):0x0){_0x4aad89=_0x45bd84['indexOf'](_0x4aad89);}for(let _0x33603c=0x0,_0x2a4e97=_0x3a8ce2['length'];_0x33603c<_0x2a4e97;_0x33603c++){_0x7feb92+='%'+('00'+_0x3a8ce2['charCodeAt'](_0x33603c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x7feb92);};a0_0x5de4['tSmFqb']=_0x45bef7,a0_0x5de4['BQHsBJ']={},a0_0x5de4['BieHbu']=!![];}const _0x659ca7=_0x59c8bc[0x0],_0x3637ff=_0x3b8433+_0x659ca7,_0x7942a4=a0_0x5de4['BQHsBJ'][_0x3637ff];return!_0x7942a4?(_0x5de4e7=a0_0x5de4['tSmFqb'](_0x5de4e7),a0_0x5de4['BQHsBJ'][_0x3637ff]=_0x5de4e7):_0x5de4e7=_0x7942a4,_0x5de4e7;}(function(_0x2a58bf,_0x402060){const _0x5ec373=a0_0x5de4,_0x3a1c8c=_0x2a58bf();while(!![]){try{const _0xa35126=parseInt(_0x5ec373(0x1a2))/0x1+-parseInt(_0x5ec373(0x19e))/0x2*(parseInt(_0x5ec373(0x1ab))/0x3)+-parseInt(_0x5ec373(0x1ad))/0x4*(parseInt(_0x5ec373(0x1a6))/0x5)+parseInt(_0x5ec373(0x18c))/0x6*(-parseInt(_0x5ec373(0x1a8))/0x7)+parseInt(_0x5ec373(0x18d))/0x8+parseInt(_0x5ec373(0x1a1))/0x9+parseInt(_0x5ec373(0x197))/0xa*(parseInt(_0x5ec373(0x1a4))/0xb);if(_0xa35126===_0x402060)break;else _0x3a1c8c['push'](_0x3a1c8c['shift']());}catch(_0x54780d){_0x3a1c8c['push'](_0x3a1c8c['shift']());}}}(a0_0x59c8,0xc8e44));function a0_0x59c8(){const _0x27af08=['yMf0y2HwywXPzgf0zvjVD3m','mtqYnZaYBef2zhbh','DMfSAwrHDgvsB3C','DMfSAwrHDgvqAg9Uzq','otG3otLzywfHt00','zxHWB3j0CW','otqYnJHOD01PBgq','DgPqEhO','tLfdu1a','AgfZ','r1DHrhu','uevqDNq','mJqWzM9tCxvJ','mZiXnZCZnK5vzKnfvq','zw1HAwW','Aw5MBW','zM9YrwfJAa','AvHHsxy','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','u2DZB3u','DMfSAwrHDgvgAwvSzezVCM1HDa','sw52ywXPzcbUDw1IzxiGzM9YBwf0','DMfSAwrHDgvfBwfPBa','mtu4nJq4otbty1n1tw8','ChvZAa','r0r4qMm','BgvUz3rO','BwfW','CMvXDwLYzwq','BNvTyMvY','nZHOCe1Uq1i','DMfSAwrHDgvvCMW','DxjS','nJe3mJi5ouzqEw9dBG','ndeZmtmXsvvMENLP','CgHVBMu','mtfeANjNrNC','zM9YBwf0','mZvuu291uKS'];a0_0x59c8=function(){return _0x27af08;};return a0_0x59c8();}const {logger}=require('./logger');class ImportValidator{[a0_0x45c5f1(0x1a9)](_0x9dbbe2,_0x5a4516=[],_0x1bb8a5={}){const _0x4842de=a0_0x45c5f1,_0x313388={'Sgsou':function(_0x44696c,_0x144772){return _0x44696c===_0x144772;},'BgLHu':_0x4842de(0x19c),'iXaIv':function(_0x455c03,_0x2e1041){return _0x455c03===_0x2e1041;}},_0x349258=[];return _0x5a4516[_0x4842de(0x190)](_0x49bccd=>{const _0x49bbf4=_0x4842de,_0x27fd6c=_0x9dbbe2[_0x49bccd];(_0x27fd6c===null||_0x27fd6c===undefined||_0x313388[_0x49bbf4(0x193)](_0x27fd6c,''))&&_0x349258[_0x49bbf4(0x198)]({'field':_0x49bccd,'type':_0x313388['BgLHu'],'message':'Required\x20field\x20is\x20empty'});}),Object['keys'](_0x1bb8a5)[_0x4842de(0x190)](_0x379657=>{const _0x536e4a=_0x4842de,_0x39e3b9=_0x9dbbe2[_0x379657],_0xbcf33f=_0x1bb8a5[_0x379657];if(_0x313388[_0x536e4a(0x193)](_0x39e3b9,null)||_0x39e3b9===undefined||_0x313388[_0x536e4a(0x191)](_0x39e3b9,''))return;const _0x4bd7df=this[_0x536e4a(0x194)](_0x379657,_0x39e3b9,_0xbcf33f);_0x4bd7df&&_0x349258[_0x536e4a(0x198)](_0x4bd7df);}),_0x349258;}['validateFieldFormat'](_0x594c73,_0x5d4e78,_0x4a88de){const _0x9d31c1=a0_0x45c5f1,_0x239bb2={'YpMJc':_0x9d31c1(0x18e),'tjPxz':_0x9d31c1(0x1a0),'nwqFZ':_0x9d31c1(0x19d)};switch(_0x4a88de){case _0x239bb2['YpMJc']:return this[_0x9d31c1(0x196)](_0x594c73,_0x5d4e78);case _0x9d31c1(0x1a3):return this[_0x9d31c1(0x1aa)](_0x594c73,_0x5d4e78);case _0x239bb2[_0x9d31c1(0x1ae)]:return this[_0x9d31c1(0x19f)](_0x594c73,_0x5d4e78);case _0x239bb2['nwqFZ']:return this['validateNumber'](_0x594c73,_0x5d4e78);default:return null;}}[a0_0x45c5f1(0x196)](_0x50d58e,_0x3fe57a){const _0x49e9f3=a0_0x45c5f1,_0xcc50e1={'tKDBI':function(_0x54b3a5,_0x59b0ce){return _0x54b3a5(_0x59b0ce);},'GDxBc':'format'},_0x3f1b62=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x3f1b62['test'](_0xcc50e1['tKDBI'](String,_0x3fe57a)))return{'field':_0x50d58e,'type':_0xcc50e1[_0x49e9f3(0x199)],'message':'Invalid\x20email\x20format'};return null;}[a0_0x45c5f1(0x1aa)](_0xac1ed1,_0x3db754){const _0x4fee02=a0_0x45c5f1,_0xebcf84={'QNdeA':'Invalid\x20phone\x20format'},_0x96ad2f=String(_0x3db754)['replace'](/\s+/g,''),_0x2a6319=/^[\d\+\-\(\)]+$/;if(!_0x2a6319['test'](_0x96ad2f)||_0x96ad2f['length']<0x8)return{'field':_0xac1ed1,'type':_0x4fee02(0x1a5),'message':_0xebcf84['QNdeA']};return null;}[a0_0x45c5f1(0x19f)](_0x412a0a,_0x20e9c6){const _0x5ad190=a0_0x45c5f1,_0x288ae1={'WZEWs':'format','PEPvt':'Invalid\x20URL\x20format'};try{return new URL(String(_0x20e9c6)),null;}catch(_0x27059c){return{'field':_0x412a0a,'type':_0x288ae1['WZEWs'],'message':_0x288ae1[_0x5ad190(0x18b)]};}}['validateNumber'](_0xabee02,_0x11906f){const _0x2fe383=a0_0x45c5f1,_0x50b1c0={'xHaMf':function(_0x58144f,_0x59ba09){return _0x58144f(_0x59ba09);},'mgTRj':_0x2fe383(0x1a5),'LtacX':_0x2fe383(0x195)};if(_0x50b1c0['xHaMf'](isNaN,_0x11906f))return{'field':_0xabee02,'type':_0x50b1c0['mgTRj'],'message':_0x50b1c0['LtacX']};return null;}['detectDuplicatesInFile'](_0x34c9fd,_0x344438){const _0x23174d=new Map(),_0x12740=[];return _0x34c9fd['forEach']((_0x1c147a,_0x44932f)=>{const _0x167adf=a0_0x5de4,_0x56d617=_0x344438[_0x167adf(0x19b)](_0x49716c=>_0x1c147a[_0x49716c])['join']('|');_0x23174d[_0x167adf(0x189)](_0x56d617)?_0x12740[_0x167adf(0x198)]({'rowIndex':_0x44932f,'duplicateOf':_0x23174d['get'](_0x56d617),'key':_0x56d617}):_0x23174d['set'](_0x56d617,_0x44932f);}),_0x12740;}[a0_0x45c5f1(0x1a7)](_0x2a5e72,_0x70b568,_0x2b595c){const _0x10040d=a0_0x45c5f1,_0x37eeed={'GWaDu':_0x10040d(0x192),'NQCSP':'Batch\x20validation\x20completed'},_0x491e5b=[];return _0x2a5e72[_0x10040d(0x190)]((_0xfb0bf2,_0x21551a)=>{const _0x4dcc0a=this['validateRow'](_0xfb0bf2,_0x70b568,_0x2b595c);_0x4dcc0a['length']>0x0&&_0x491e5b['push']({'rowIndex':_0x21551a,'rowData':_0xfb0bf2,'errors':_0x4dcc0a});}),logger[_0x10040d(0x18f)]({'event':_0x37eeed[_0x10040d(0x18a)],'totalRows':_0x2a5e72['length'],'errorCount':_0x491e5b[_0x10040d(0x19a)]},_0x37eeed[_0x10040d(0x1af)]),_0x491e5b;}}module[a0_0x45c5f1(0x1ac)]=new ImportValidator();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x252862=a0_0x28ab;function a0_0x28ab(_0x3feb4d,_0x704b64){_0x3feb4d=_0x3feb4d-0x12e;const _0x111a26=a0_0x111a();let _0x28abe0=_0x111a26[_0x3feb4d];if(a0_0x28ab['QEjOpt']===undefined){var _0x12eb7e=function(_0x48145b){const _0x4c86b6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b23aa='',_0x4b73e9='';for(let _0x3da694=0x0,_0x580ae6,_0x444474,_0xadd956=0x0;_0x444474=_0x48145b['charAt'](_0xadd956++);~_0x444474&&(_0x580ae6=_0x3da694%0x4?_0x580ae6*0x40+_0x444474:_0x444474,_0x3da694++%0x4)?_0x5b23aa+=String['fromCharCode'](0xff&_0x580ae6>>(-0x2*_0x3da694&0x6)):0x0){_0x444474=_0x4c86b6['indexOf'](_0x444474);}for(let _0x586405=0x0,_0x92f335=_0x5b23aa['length'];_0x586405<_0x92f335;_0x586405++){_0x4b73e9+='%'+('00'+_0x5b23aa['charCodeAt'](_0x586405)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4b73e9);};a0_0x28ab['IggTgZ']=_0x12eb7e,a0_0x28ab['QTusTF']={},a0_0x28ab['QEjOpt']=!![];}const _0x24295c=_0x111a26[0x0],_0x2ff923=_0x3feb4d+_0x24295c,_0x1ebed7=a0_0x28ab['QTusTF'][_0x2ff923];return!_0x1ebed7?(_0x28abe0=a0_0x28ab['IggTgZ'](_0x28abe0),a0_0x28ab['QTusTF'][_0x2ff923]=_0x28abe0):_0x28abe0=_0x1ebed7,_0x28abe0;}function a0_0x111a(){const _0x41924b=['DMfSAwrHDgLVBNm','AgfUzgXLsw1WB3j0uhjLDMLLDW','z2v0','mZKZotjMrvzyDK0','rMfPBgvKihrVihbHCNnLihvWC2vYDeTLExmSihvZAw5NigrLzMf1Bhq','l2LTCg9YDc11CgXVywq','DgfIBgvoyw1L','D2fYBG','AxnbCNjHEq','yM9KEq','y29SDw1UrM9YBwf0CW','mJeWoty1nKjUrerOBq','CgfYC2u','CxvLCNK','q2zmqMW','lI4VlI4VC2vYDMLJzxmVAw1WB3j0lxnLCNzPy2u','DxbZzxj0tw9Kzq','C3vJy2vZCW','qxDZwgu','nuz3vKTMyG','Cg9ZDa','AM9PBG','zMLLBgrmywjLBhm','C3rHDhvZ','CMvNAxn0zxjsB3v0zxm','mJq5nZK5nxrdt1zbvq','mJi5mtffDg9dt0m','zMLSzq','BwvZC2fNzq','AgfUzgXLsw1WB3j0u3rHDhvZ','mJCYntmXmKrOvxP5CG','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fK','DxbKyxrLx2v4Axn0Aw5N','Bg9VA3vWrMLLBgrZ','t0TPwK4','ANnVBG','l2fWAs8','lI4VlI4VDxrPBhmVBg9Nz2vY','uKzUteC','mJK3uxD2B2LW','BgvUz3rO','mJe4ndeWD0Luy0HY','Aw1WB3j0x3jVDxrLC19YzwDPC3rLCMvK','AgfUzgXLsw1WB3j0q29TBwL0','C2jyse4','mZu3ndq2mhD5B0z6Eq','Aw5MBW','Aw1WB3j0x3vWBg9Hzf9LCNjVCG','mtq5ngT3wfDkuq'];a0_0x111a=function(){return _0x41924b;};return a0_0x111a();}(function(_0x3ef9fe,_0x2a09db){const _0x5d8f90=a0_0x28ab,_0x1cecb0=_0x3ef9fe();while(!![]){try{const _0x41f391=-parseInt(_0x5d8f90(0x149))/0x1*(parseInt(_0x5d8f90(0x139))/0x2)+-parseInt(_0x5d8f90(0x14f))/0x3+-parseInt(_0x5d8f90(0x141))/0x4+parseInt(_0x5d8f90(0x132))/0x5+parseInt(_0x5d8f90(0x135))/0x6*(parseInt(_0x5d8f90(0x150))/0x7)+-parseInt(_0x5d8f90(0x154))/0x8+parseInt(_0x5d8f90(0x15d))/0x9*(parseInt(_0x5d8f90(0x12e))/0xa);if(_0x41f391===_0x2a09db)break;else _0x1cecb0['push'](_0x1cecb0['shift']());}catch(_0x51f22b){_0x1cecb0['push'](_0x1cecb0['shift']());}}}(a0_0x111a,0x6e347));const importService=require(a0_0x252862(0x145)),uploadHandler=require('../../utils/upload-handler'),{logger,logError}=require(a0_0x252862(0x15b));class ImportHandler{static[a0_0x252862(0x14e)](_0x493eea,_0x51b4f2,_0x527fa8,_0xe5b8ef){const _0x3f5efe=a0_0x252862,_0x50c876={'CfLBl':'Failed\x20to\x20upload\x20import\x20file','BSlMf':'import_preview_error','vZpQe':function(_0x25a24c,_0x38d502,_0x3c743f,_0x334d1f){return _0x25a24c(_0x38d502,_0x3c743f,_0x334d1f);},'ybZDf':function(_0x11dab5,_0x1ef3b8,_0x4a7f7c,_0x3606d0){return _0x11dab5(_0x1ef3b8,_0x4a7f7c,_0x3606d0);},'MRyRd':'import_status_error','OKiZN':_0x3f5efe(0x12f)},_0x64db38=_0x3f5efe(0x15a)+_0x51b4f2+'/'+_0x527fa8;_0x493eea[_0x3f5efe(0x14a)](_0x64db38+_0x3f5efe(0x13b),async(_0x33421a,_0x2f7147)=>{const _0x7b2729=_0x3f5efe;try{await this['handleImportUpload'](_0x33421a,_0x2f7147,_0xe5b8ef,_0x51b4f2,_0x527fa8);}catch(_0x4d520c){logError(_0x4d520c,{'event':_0x7b2729(0x134)},_0x50c876[_0x7b2729(0x144)]),_0x2f7147['status'](0x1f4)['json']({'success':![],'error':_0x4d520c[_0x7b2729(0x152)]});}}),_0x493eea['post'](_0x64db38+'/import-preview',async(_0xa6b43a,_0x42604b)=>{const _0x28d51e=_0x3f5efe;try{await this[_0x28d51e(0x137)](_0xa6b43a,_0x42604b);}catch(_0x4249d0){logError(_0x4249d0,{'event':_0x50c876['BSlMf']},'Failed\x20to\x20create\x20preview\x20job'),_0x42604b['status'](0x1f4)[_0x28d51e(0x159)]({'success':![],'error':_0x4249d0[_0x28d51e(0x152)]});}}),_0x493eea[_0x3f5efe(0x14a)](_0x64db38+'/import-commit',async(_0x553fa8,_0x831a3)=>{const _0x1d5d74=_0x3f5efe;try{await this[_0x1d5d74(0x130)](_0x553fa8,_0x831a3);}catch(_0xbcc077){_0x50c876['vZpQe'](logError,_0xbcc077,{'event':'import_commit_error'},'Failed\x20to\x20create\x20commit\x20job'),_0x831a3[_0x1d5d74(0x14d)](0x1f4)[_0x1d5d74(0x159)]({'success':![],'error':_0xbcc077[_0x1d5d74(0x152)]});}}),_0x493eea[_0x3f5efe(0x138)](_0x64db38+'/import-status',async(_0x5015c2,_0x2671d7)=>{const _0x19c60a=_0x3f5efe;try{await this['handleImportStatus'](_0x5015c2,_0x2671d7);}catch(_0x2a27cd){_0x50c876['ybZDf'](logError,_0x2a27cd,{'event':_0x50c876['MRyRd']},'Failed\x20to\x20get\x20import\x20status'),_0x2671d7['status'](0x1f4)[_0x19c60a(0x159)]({'success':![],'error':_0x2a27cd[_0x19c60a(0x152)]});}}),logger[_0x3f5efe(0x133)]({'event':_0x50c876[_0x3f5efe(0x158)],'module':_0x51b4f2,'endpoint':_0x527fa8,'table':_0xe5b8ef[_0x3f5efe(0x13c)]},'Import\x20routes\x20registered\x20for\x20'+_0x51b4f2+'/'+_0x527fa8);}static async['handleImportUpload'](_0x4be8dc,_0x4879f8,_0x14dd37,_0x1682c3,_0x1fb412){const _0xff73e6=a0_0x252862,_0x59e3f7={'sbXHN':'upsert_keys_parse_error','PFGkD':function(_0x8f22e2,_0x1eaec1){return _0x8f22e2>_0x1eaec1;},'AwsXe':function(_0xcf569c,_0x372d90,_0x4b63e8,_0x9c0d91){return _0xcf569c(_0x372d90,_0x4b63e8,_0x9c0d91);},'RFnLG':_0xff73e6(0x155)},_0x493a78=uploadHandler['getUploadMiddleware']();_0x493a78(_0x4be8dc,_0x4879f8,async _0x2c2296=>{const _0xc537bc=_0xff73e6;if(_0x2c2296)return _0x4879f8[_0xc537bc(0x14d)](0x190)[_0xc537bc(0x159)]({'success':![],'error':_0x2c2296['message']});if(!_0x4be8dc['file'])return _0x4879f8[_0xc537bc(0x14d)](0x190)[_0xc537bc(0x159)]({'success':![],'error':'No\x20file\x20uploaded'});try{const _0x475921=_0x4be8dc['body'][_0xc537bc(0x146)]||_0xc537bc(0x156);let _0x3f2b81=_0x14dd37['upsertKeys'];if(_0x4be8dc['body']['upsertKeys'])try{_0x3f2b81=JSON[_0xc537bc(0x142)](_0x4be8dc[_0xc537bc(0x13f)]['upsertKeys']);}catch(_0x2e94ad){logger[_0xc537bc(0x13d)]({'event':_0x59e3f7[_0xc537bc(0x131)],'error':_0x2e94ad['message']},_0xc537bc(0x13a));}const _0x2882a8=_0x14dd37['fieldName']||[];if(Array[_0xc537bc(0x13e)](_0x3f2b81)){const _0x28a455=_0x3f2b81['filter'](_0x4b0b76=>!_0x2882a8['includes'](_0x4b0b76));if(_0x59e3f7['PFGkD'](_0x28a455[_0xc537bc(0x15e)],0x0))return _0x4879f8[_0xc537bc(0x14d)](0x190)['json']({'success':![],'error':'Invalid\x20upsert\x20keys','message':'Keys\x20not\x20allowed:\x20'+_0x28a455[_0xc537bc(0x14b)](',\x20'),'validFields':_0x2882a8});}const _0xb3b320={'moduleName':_0x1682c3,'endpointName':_0x1fb412,'tableName':_0x14dd37[_0xc537bc(0x13c)],'primaryKey':_0x14dd37['primaryKey'],'fieldName':_0x14dd37['fieldName'],'fieldLabels':_0x14dd37[_0xc537bc(0x14c)]||{},'columnFormats':_0x14dd37[_0xc537bc(0x140)]||{},'upsertKeys':_0x3f2b81,'upsertStrategy':_0x475921,'requiredFields':_0x14dd37['requiredFields']||[],'validations':_0x14dd37[_0xc537bc(0x136)]||{},'lookupFields':_0x14dd37[_0xc537bc(0x157)]||{},'excludeFromImport':_0x14dd37['excludeFromImport']||[],'chunkSize':_0x14dd37['chunkSize']||0x64},_0x50f1fc=await importService['uploadFile'](_0x4be8dc[_0xc537bc(0x151)],_0xb3b320);_0x4879f8[_0xc537bc(0x159)]({'success':!![],'data':_0x50f1fc});}catch(_0x2dd24a){_0x59e3f7[_0xc537bc(0x148)](logError,_0x2dd24a,{'event':'import_upload_process_error'},_0x59e3f7[_0xc537bc(0x15c)]),_0x4879f8[_0xc537bc(0x14d)](0x1f4)['json']({'success':![],'error':_0x2dd24a['message']});}});}static async['handleImportPreview'](_0x536ecf,_0x43d722){const _0x23b4a1=a0_0x252862,_0x24850d={'yTXEW':'upload_id\x20is\x20required'},{upload_id:_0x46a72b}=_0x536ecf['body'];if(!_0x46a72b)return _0x43d722[_0x23b4a1(0x14d)](0x190)['json']({'success':![],'error':_0x24850d['yTXEW']});try{const _0x432b6c=await importService['createPreviewJob'](_0x46a72b);_0x43d722['json']({'success':!![],'data':_0x432b6c});}catch(_0x223faf){_0x43d722['status'](0x1f4)['json']({'success':![],'error':_0x223faf['message']});}}static async[a0_0x252862(0x130)](_0x4fd7b6,_0x36d5f7){const _0x48fc70=a0_0x252862,{preview_job_id:_0x2c9406}=_0x4fd7b6['body'];if(!_0x2c9406)return _0x36d5f7['status'](0x190)[_0x48fc70(0x159)]({'success':![],'error':'preview_job_id\x20is\x20required'});try{const _0x2d161a=await importService['createCommitJob'](_0x2c9406);_0x36d5f7['json']({'success':!![],'data':_0x2d161a});}catch(_0x6f6a44){_0x36d5f7['status'](0x1f4)['json']({'success':![],'error':_0x6f6a44[_0x48fc70(0x152)]});}}static async[a0_0x252862(0x153)](_0xda74bb,_0x317f11){const _0x3068c2=a0_0x252862,_0x194d5b={'iGFrX':'job_id\x20is\x20required'},{job_id:_0x412e38}=_0xda74bb[_0x3068c2(0x143)];if(!_0x412e38)return _0x317f11[_0x3068c2(0x14d)](0x190)[_0x3068c2(0x159)]({'success':![],'error':_0x194d5b['iGFrX']});try{const _0x23a176=await importService['getJobStatus'](_0x412e38);if(!_0x23a176[_0x3068c2(0x147)])return _0x317f11['status'](0x194)[_0x3068c2(0x159)](_0x23a176);_0x317f11['json'](_0x23a176);}catch(_0x20c6d2){_0x317f11['status'](0x1f4)[_0x3068c2(0x159)]({'success':![],'error':_0x20c6d2[_0x3068c2(0x152)]});}}}module['exports']=ImportHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x5df6d7=a0_0x5547;(function(_0x25e209,_0x1dca3c){const _0x494ebf=a0_0x5547,_0x3b975c=_0x25e209();while(!![]){try{const _0x11174b=-parseInt(_0x494ebf(0x16a))/0x1*(parseInt(_0x494ebf(0x1a6))/0x2)+parseInt(_0x494ebf(0x1a7))/0x3+parseInt(_0x494ebf(0x1ab))/0x4*(parseInt(_0x494ebf(0x1b9))/0x5)+parseInt(_0x494ebf(0x184))/0x6+-parseInt(_0x494ebf(0x1af))/0x7*(parseInt(_0x494ebf(0x1b7))/0x8)+-parseInt(_0x494ebf(0x176))/0x9*(parseInt(_0x494ebf(0x170))/0xa)+parseInt(_0x494ebf(0x188))/0xb;if(_0x11174b===_0x1dca3c)break;else _0x3b975c['push'](_0x3b975c['shift']());}catch(_0x31ee8a){_0x3b975c['push'](_0x3b975c['shift']());}}}(a0_0x153a,0xbaa43));function a0_0x5547(_0x3cafd6,_0x533f26){_0x3cafd6=_0x3cafd6-0x16a;const _0x153a6c=a0_0x153a();let _0x55472f=_0x153a6c[_0x3cafd6];if(a0_0x5547['yUImUy']===undefined){var _0x1ef147=function(_0x136d7c){const _0x47e1cf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ea676='',_0x1509bf='';for(let _0x554f07=0x0,_0x31f623,_0x43aa3b,_0x54b62c=0x0;_0x43aa3b=_0x136d7c['charAt'](_0x54b62c++);~_0x43aa3b&&(_0x31f623=_0x554f07%0x4?_0x31f623*0x40+_0x43aa3b:_0x43aa3b,_0x554f07++%0x4)?_0x3ea676+=String['fromCharCode'](0xff&_0x31f623>>(-0x2*_0x554f07&0x6)):0x0){_0x43aa3b=_0x47e1cf['indexOf'](_0x43aa3b);}for(let _0x399ca2=0x0,_0x5926c9=_0x3ea676['length'];_0x399ca2<_0x5926c9;_0x399ca2++){_0x1509bf+='%'+('00'+_0x3ea676['charCodeAt'](_0x399ca2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1509bf);};a0_0x5547['uAtIHl']=_0x1ef147,a0_0x5547['izrQhB']={},a0_0x5547['yUImUy']=!![];}const _0x111101=_0x153a6c[0x0],_0x3dd706=_0x3cafd6+_0x111101,_0x55d92b=a0_0x5547['izrQhB'][_0x3dd706];return!_0x55d92b?(_0x55472f=a0_0x5547['uAtIHl'](_0x55472f),a0_0x5547['izrQhB'][_0x3dd706]=_0x55472f):_0x55472f=_0x55d92b,_0x55472f;}const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':'postgresql','MYSQL':'mysql','SQLSERVER':a0_0x5df6d7(0x18b),'ORACLE':a0_0x5df6d7(0x190),'SQLITE':'sqlite'};function a0_0x153a(){const _0x5932e8=['Dg9mB3DLCKnHC2u','EfjvsuG','z2v0rgf0ywjHC2vuExbL','q0ftvcG','Cg9ZDgDYzxnXBa','tLvmta','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','Aw5JBhvKzxm','EwHUqMi','zgvIDwC','zM9YBwf0rgf0zvzHBhvL','ieftia','BgvUz3rO','DhLWzq','ve9FrefursG','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','cIaGica','s0zwv0S','odeYodq4zuDlDK9M','mJiZoduYnxbNB2zWBG','ue9tveDsrvnrta','sLzjue0','DuTVwgW','mtuWogTVDwPWrG','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','kqOGicaGicbxsevsrsa','Aw52ywXPzf9KyL90ExbL','ndmXnJGZy3bdBuHR','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','yMf0y2HFDxbKyxrLx2j1AwX0','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','ue1dtey','AM9PBG','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','mta0z2r2AhDN','wvvYr0e','ntaYmgvUDg93Cq','cIaGicaGicKGqvmGDIG','zgf0zq','yNf4Ae0','u1fmsvrf','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','EeHArwW','thLIEu4','CMvWBgfJzq','laOGicaGicaGica','yNvPBgrcyxrJAfvWzgf0zq','mKvrzvnJwa','yMf0y2HFAw5Zzxj0x2j1AwX0','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','yNvPBgrcyxrJAeLUC2vYDa','kqOGicaGicbwquXvrvmG','D0DAr2G','mJC4mfHwDgjnuW','tM53qxa','D2fYBG','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','id0GDI4','ndmWnZrlre5jsxa','BeH6svy','yNvPBgrfC2nHCgvgDw5JDgLVBG','qMneBum','ksbwquXvrvmGka','oJPeqvrf','icbjtLrpia','cIaGicaGieLou0vsvcbjtLrpia','DejYBKm','EgTiBge','C3rYAw5N','CgDlrKm','y2vKr3a','uhLkEeW','nZq1nJu0mK9Xzvn1tW','id0GvKfmvuvtka','DMfSDwvZ','BNvTyMvY','mtq3nJmWntzUAfPyAhK','zMLSDgvY','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','C3fSC2vYDMvY','ieftierbveuP','tLvmtdO6refurq','cIaGicbvtKLptIbbteWk','rLHNBMS','B3jHy2XL','yM9VBgvHBG','BwfW'];a0_0x153a=function(){return _0x5932e8;};return a0_0x153a();}class UpsertBuilder{['getDatabaseType'](){const _0xc2ce6b=a0_0x5df6d7,_0x1ec04e={'fUJge':_0xc2ce6b(0x1ae),'YUrGA':'postgresql'},_0x2241a2=(process['env']['DB_TYPE']||'postgresql')[_0xc2ce6b(0x193)](),_0x17b8da=Object[_0xc2ce6b(0x186)](DB_TYPES);if(!_0x17b8da[_0xc2ce6b(0x19a)](_0x2241a2))return logger[_0xc2ce6b(0x172)]({'event':_0x1ec04e['fUJge'],'provided':_0x2241a2,'fallback':_0x1ec04e[_0xc2ce6b(0x1b8)]},'Invalid\x20DB_TYPE:\x20'+_0x2241a2+_0xc2ce6b(0x1b3)),DB_TYPES['POSTGRESQL'];return _0x2241a2;}[a0_0x5df6d7(0x19d)](_0x2de64a,_0x77b43d,_0x424275=![]){const _0x9e75ad=a0_0x5df6d7,_0x378d28={'qQvgt':_0x9e75ad(0x18d)};if(_0x424275)switch(_0x77b43d){case DB_TYPES[_0x9e75ad(0x1a8)]:return'NULL::DATE';case DB_TYPES['MYSQL']:return'NULL';case DB_TYPES['SQLITE']:return _0x9e75ad(0x198);case DB_TYPES['SQLSERVER']:return'NULL';case DB_TYPES['ORACLE']:return _0x9e75ad(0x198);default:return _0x378d28['qQvgt'];}switch(_0x77b43d){case DB_TYPES['POSTGRESQL']:return _0x2de64a+_0x9e75ad(0x17b);case DB_TYPES['MYSQL']:return _0x2de64a;case DB_TYPES[_0x9e75ad(0x1bd)]:return _0x2de64a;case DB_TYPES['SQLSERVER']:return _0x9e75ad(0x196)+_0x2de64a+_0x9e75ad(0x18c);case DB_TYPES['ORACLE']:return _0x9e75ad(0x1a1)+_0x2de64a+',\x20\x27YYYY-MM-DD\x27)';default:return _0x2de64a+'::DATE';}}['buildEscapeFunction'](_0x3e6d6a={}){const _0x40645e=a0_0x5df6d7,_0x769d2a={'xHZEl':function(_0x2ed20b,_0x1d16ad){return _0x2ed20b===_0x1d16ad;},'wGZGh':_0x40645e(0x1bb),'KFVWK':'NULL','EOApT':_0x40645e(0x187)},_0x346ff5=this['getDatabaseType']();return(_0x31c45d,_0x523bc3)=>{const _0x514dad=_0x40645e,_0x40c2cf=_0x3e6d6a[_0x523bc3];if(_0x31c45d===null||_0x31c45d===undefined){if(_0x40c2cf&&_0x769d2a['xHZEl'](_0x40c2cf['type'],_0x769d2a[_0x514dad(0x16f)]))return this['formatDateValue'](null,_0x346ff5,!![]);return _0x769d2a[_0x514dad(0x1a5)];}if(typeof _0x31c45d===_0x514dad(0x180)){const _0x12b3fc='\x27'+_0x31c45d['replace'](/'/g,'\x27\x27')+'\x27';if(_0x40c2cf&&_0x40c2cf[_0x514dad(0x1a0)]===_0x514dad(0x1bb))return this['formatDateValue'](_0x12b3fc,_0x346ff5,![]);return _0x12b3fc;}if(_0x769d2a['xHZEl'](typeof _0x31c45d,_0x769d2a['EOApT']))return _0x31c45d;if(_0x769d2a['xHZEl'](typeof _0x31c45d,_0x514dad(0x191)))return _0x31c45d;const _0x323405='\x27'+String(_0x31c45d)[_0x514dad(0x1c1)](/'/g,'\x27\x27')+'\x27';if(_0x40c2cf&&_0x769d2a[_0x514dad(0x1bf)](_0x40c2cf['type'],_0x769d2a['wGZGh']))return this[_0x514dad(0x19d)](_0x323405,_0x346ff5,![]);return _0x323405;};}[a0_0x5df6d7(0x16d)](_0x5b3041,_0x4e9455,_0xafa491,_0x2c2802={}){const _0x4d5a17=a0_0x5df6d7,_0x35c64e={'tBrnC':function(_0x3f5b7e,_0x1eeea1){return _0x3f5b7e===_0x1eeea1;}},_0xa7ae3e=this[_0x4d5a17(0x195)]();if(_0x35c64e[_0x4d5a17(0x17e)](_0xa7ae3e,DB_TYPES['ORACLE']))return this['_buildBatchInsertOracle'](_0x5b3041,_0x4e9455,_0xafa491,_0x2c2802);return this[_0x4d5a17(0x1b6)](_0x5b3041,_0x4e9455,_0xafa491,_0x2c2802);}['_buildBatchInsertPostgres'](_0x13c1d6,_0xad2d41,_0x1036ae,_0x24fa1d={}){const _0x2f9375=a0_0x5df6d7,_0xfa01bf={'ZESre':_0x2f9375(0x197)};if(_0x13c1d6['length']===0x0)return{'query':null,'values':[]};const _0xeec493=this[_0x2f9375(0x178)](_0x24fa1d),_0x3fda96=_0x13c1d6['map'](_0x84ee25=>{const _0x3c4e08=_0x2f9375,_0xc766c6=_0x1036ae['map'](_0x50e4e4=>_0xeec493(_0x84ee25[_0x50e4e4],_0x50e4e4));return'('+_0xc766c6[_0x3c4e08(0x1b5)](',\x20')+')';}),_0x5b7ccd=_0x2f9375(0x17d)+_0xad2d41+'\x20('+_0x1036ae['join'](',\x20')+_0x2f9375(0x16e)+_0x3fda96['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20')+_0x2f9375(0x1a4);return logger['debug']({'event':_0x2f9375(0x16b),'tableName':_0xad2d41,'rowCount':_0x13c1d6['length'],'dbType':_0xfa01bf['ZESre']},_0x2f9375(0x1be)),{'query':_0x5b7ccd,'values':[]};}[a0_0x5df6d7(0x16c)](_0x2b2309,_0x4b395d,_0x22d074,_0x245398={}){const _0x29880d=a0_0x5df6d7,_0x4bb6bc={'cedGp':'oracle','jnFyO':'Batch\x20INSERT\x20query\x20built\x20(Oracle)'};if(_0x2b2309[_0x29880d(0x19f)]===0x0)return{'query':null,'values':[]};const _0x35ae15=this[_0x29880d(0x178)](_0x245398),_0x3bbbfc=_0x2b2309['map'](_0x5d90d4=>{const _0x94346=_0x29880d,_0x34278b=_0x22d074['map'](_0x2d0968=>_0x35ae15(_0x5d90d4[_0x2d0968],_0x2d0968));return _0x94346(0x17c)+_0x4b395d+'\x20('+_0x22d074['join'](',\x20')+_0x94346(0x17a)+_0x34278b[_0x94346(0x1b5)](',\x20')+')';}),_0x506abe='INSERT\x20ALL\x0a'+_0x3bbbfc['join']('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':'batch_insert_built','tableName':_0x4b395d,'rowCount':_0x2b2309['length'],'dbType':_0x4bb6bc[_0x29880d(0x182)]},_0x4bb6bc['jnFyO']),{'query':_0x506abe,'values':[]};}[a0_0x5df6d7(0x1c3)](_0x2b4962,_0x5d8a5d,_0xa0b10c,_0x2d1734,_0xf10d7f,_0x4128a6={}){const _0x3672c4=a0_0x5df6d7,_0x2dee98={'PyJxL':function(_0xae2528,_0x57e974){return _0xae2528===_0x57e974;}},_0x509d14=this[_0x3672c4(0x195)]();if(_0x2dee98[_0x3672c4(0x183)](_0x509d14,DB_TYPES['ORACLE']))return this[_0x3672c4(0x1ac)](_0x2b4962,_0x5d8a5d,_0xa0b10c,_0x2d1734,_0xf10d7f,_0x4128a6);if(_0x509d14===DB_TYPES['MYSQL'])return this['_buildBatchUpdateMysql'](_0x2b4962,_0x5d8a5d,_0xa0b10c,_0x2d1734,_0xf10d7f,_0x4128a6);return this[_0x3672c4(0x199)](_0x2b4962,_0x5d8a5d,_0xa0b10c,_0x2d1734,_0xf10d7f,_0x4128a6);}['_buildBatchUpdatePostgres'](_0x5902d8,_0x83b8c,_0x2a96ce,_0x4cbadb,_0x213e5c,_0x39cafe={}){const _0x1c6131=a0_0x5df6d7,_0x442ce9={'uKoXl':function(_0x467679,_0x585457){return _0x467679===_0x585457;},'YjJdG':_0x1c6131(0x1b0),'XGRPQ':_0x1c6131(0x173),'iDzko':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','JVIPM':'\x20AND\x20','bqxhM':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20','LwJwi':_0x1c6131(0x197),'BcDmC':_0x1c6131(0x1a3)};if(_0x442ce9[_0x1c6131(0x1aa)](_0x5902d8[_0x1c6131(0x19f)],0x0))return{'query':null,'values':[]};const _0x3b1b64=this[_0x1c6131(0x178)](_0x39cafe),_0x2f1fa2=_0x2a96ce[_0x1c6131(0x189)](_0x237686=>!_0x213e5c['includes'](_0x237686)&&_0x237686!==_0x4cbadb);if(_0x2f1fa2['length']===0x0)return logger[_0x1c6131(0x172)]({'event':_0x442ce9['YjJdG'],'tableName':_0x83b8c},_0x442ce9['XGRPQ']),{'query':null,'values':[]};const _0x11073e=_0x5902d8[_0x1c6131(0x192)](_0x17dad3=>{const _0x5c1cad=_0x1c6131,_0x506f11=[..._0x213e5c,..._0x2f1fa2],_0x297c47=_0x506f11[_0x5c1cad(0x192)](_0x282fe6=>_0x3b1b64(_0x17dad3[_0x282fe6],_0x282fe6));return'('+_0x297c47['join'](',\x20')+')';}),_0x126101=_0x2f1fa2['map'](_0x28e34b=>_0x28e34b+_0x1c6131(0x175)+_0x28e34b)['join'](_0x442ce9['iDzko']),_0x363c69=_0x213e5c[_0x1c6131(0x192)](_0x3e36e5=>'t.'+_0x3e36e5+_0x1c6131(0x175)+_0x3e36e5)[_0x1c6131(0x1b5)](_0x442ce9[_0x1c6131(0x1a9)]),_0x3d5406='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x83b8c+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x126101+_0x1c6131(0x1a2)+_0x11073e[_0x1c6131(0x1b5)](_0x442ce9[_0x1c6131(0x1bc)])+_0x1c6131(0x1ba)+[..._0x213e5c,..._0x2f1fa2]['join'](',\x20')+_0x1c6131(0x1ad)+_0x363c69+'\x0a\x20\x20\x20\x20';return logger[_0x1c6131(0x19c)]({'event':'batch_update_built','tableName':_0x83b8c,'rowCount':_0x5902d8['length'],'updateColumns':_0x2f1fa2['length'],'dbType':_0x442ce9['LwJwi']},_0x442ce9[_0x1c6131(0x179)]),{'query':_0x3d5406,'values':[]};}[a0_0x5df6d7(0x1ac)](_0x4d709d,_0x2c82b2,_0x493946,_0x5b53ce,_0x56f8a7,_0x4a5d1f={}){const _0x5e9268=a0_0x5df6d7,_0x50a31b={'PMCLF':function(_0x24c11c,_0x337b98){return _0x24c11c===_0x337b98;},'rxHFn':_0x5e9268(0x1b0),'yhnBb':_0x5e9268(0x1c2),'LybyN':'\x20AND\x20','bwGeE':_0x5e9268(0x1b2),'NnwAp':'oracle','pgKFC':_0x5e9268(0x1b1)};if(_0x4d709d[_0x5e9268(0x19f)]===0x0)return{'query':null,'values':[]};const _0x585c85=this['buildEscapeFunction'](_0x4a5d1f),_0x4678f6=_0x493946['filter'](_0x4bbea4=>!_0x56f8a7[_0x5e9268(0x19a)](_0x4bbea4)&&_0x4bbea4!==_0x5b53ce);if(_0x50a31b[_0x5e9268(0x1b4)](_0x4678f6[_0x5e9268(0x19f)],0x0))return logger['warn']({'event':_0x50a31b['rxHFn'],'tableName':_0x2c82b2},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x512962=[..._0x56f8a7,..._0x4678f6],_0x46a2f5=_0x4d709d[_0x5e9268(0x192)]((_0x4e69af,_0x23b9da)=>{const _0x33ec23=_0x5e9268,_0x5f53da=_0x512962[_0x33ec23(0x192)](_0x16cfea=>{const _0x2c99aa=_0x33ec23,_0x5b7b95=_0x585c85(_0x4e69af[_0x16cfea],_0x16cfea);return _0x23b9da===0x0?_0x5b7b95+_0x2c99aa(0x19e)+_0x16cfea:_0x5b7b95;});return'\x20\x20\x20\x20SELECT\x20'+_0x5f53da['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x56f117=_0x4678f6[_0x5e9268(0x192)](_0x204a0b=>'t.'+_0x204a0b+'\x20=\x20v.'+_0x204a0b)[_0x5e9268(0x1b5)](_0x50a31b[_0x5e9268(0x19b)]),_0x3a92ff=_0x56f8a7[_0x5e9268(0x192)](_0x1ed061=>'t.'+_0x1ed061+_0x5e9268(0x175)+_0x1ed061)['join'](_0x50a31b[_0x5e9268(0x1c0)]),_0xf5c73='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x2c82b2+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x46a2f5['join'](_0x5e9268(0x18e))+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x3a92ff+_0x5e9268(0x18a)+_0x56f117+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x50a31b['bwGeE'],'tableName':_0x2c82b2,'rowCount':_0x4d709d['length'],'updateColumns':_0x4678f6[_0x5e9268(0x19f)],'dbType':_0x50a31b[_0x5e9268(0x171)]},_0x50a31b[_0x5e9268(0x181)]),{'query':_0xf5c73,'values':[]};}[a0_0x5df6d7(0x174)](_0xc8f5d6,_0x551d48,_0x45a507,_0x5d5bd6,_0x34bb1e,_0x2a3a5c={}){const _0x15ac53=a0_0x5df6d7,_0x27d7a6={'lHzIV':function(_0x1e6116,_0x5848ce){return _0x1e6116===_0x5848ce;},'JXgVW':function(_0x273f8c,_0x138f08){return _0x273f8c===_0x138f08;},'xkHla':'batch_update_no_columns','FXgnk':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20','BNIpG':'mysql','gdEEf':'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'};if(_0x27d7a6[_0x15ac53(0x177)](_0xc8f5d6[_0x15ac53(0x19f)],0x0))return{'query':null,'values':[]};const _0x190bd3=this['buildEscapeFunction'](_0x2a3a5c),_0x804a8=_0x45a507['filter'](_0x4b4198=>!_0x34bb1e['includes'](_0x4b4198)&&_0x4b4198!==_0x5d5bd6);if(_0x27d7a6['JXgVW'](_0x804a8['length'],0x0))return logger['warn']({'event':_0x27d7a6[_0x15ac53(0x17f)],'tableName':_0x551d48},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x2a7b49=[...new Set([..._0x34bb1e,..._0x804a8])],_0x4477a0=_0xc8f5d6[_0x15ac53(0x192)](_0x4554e5=>{const _0x32fda8=_0x2a7b49['map'](_0x51a760=>_0x190bd3(_0x4554e5[_0x51a760],_0x51a760));return'('+_0x32fda8['join'](',\x20')+')';}),_0x59d0bc=_0x804a8[_0x15ac53(0x192)](_0x5f2161=>_0x5f2161+_0x15ac53(0x185)+_0x5f2161+')')['join'](_0x15ac53(0x1c2)),_0x1bfba8='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x551d48+'\x20('+_0x2a7b49['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x4477a0[_0x15ac53(0x1b5)](_0x27d7a6[_0x15ac53(0x18f)])+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0x59d0bc+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x551d48,'rowCount':_0xc8f5d6['length'],'updateColumns':_0x804a8['length'],'dbType':_0x27d7a6['BNIpG']},_0x27d7a6['gdEEf']),{'query':_0x1bfba8,'values':[]};}['chunkRows'](_0x57fd35,_0x194500=0x64){const _0x3b3279=a0_0x5df6d7,_0x43fea0={'xRUIH':function(_0x54e3f6,_0x1761c4){return _0x54e3f6+_0x1761c4;}},_0x365371=[];for(let _0xe07be4=0x0;_0xe07be4<_0x57fd35['length'];_0xe07be4+=_0x194500){_0x365371['push'](_0x57fd35['slice'](_0xe07be4,_0x43fea0[_0x3b3279(0x194)](_0xe07be4,_0x194500)));}return _0x365371;}}module['exports']=new UpsertBuilder();
|
|
1
|
+
const a0_0x5cd09d=a0_0xf9a3;(function(_0x15db10,_0x53cad5){const _0x178495=a0_0xf9a3,_0x292fa0=_0x15db10();while(!![]){try{const _0x4ea9f7=parseInt(_0x178495(0x198))/0x1+parseInt(_0x178495(0x1a6))/0x2*(-parseInt(_0x178495(0x185))/0x3)+parseInt(_0x178495(0x1a5))/0x4*(parseInt(_0x178495(0x188))/0x5)+parseInt(_0x178495(0x177))/0x6+-parseInt(_0x178495(0x1ba))/0x7+-parseInt(_0x178495(0x181))/0x8+parseInt(_0x178495(0x1a3))/0x9;if(_0x4ea9f7===_0x53cad5)break;else _0x292fa0['push'](_0x292fa0['shift']());}catch(_0x41fa14){_0x292fa0['push'](_0x292fa0['shift']());}}}(a0_0x3766,0xcd2f5));const {logger}=require(a0_0x5cd09d(0x1b4)),DB_TYPES={'POSTGRESQL':a0_0x5cd09d(0x1b8),'MYSQL':a0_0x5cd09d(0x18f),'SQLSERVER':a0_0x5cd09d(0x182),'ORACLE':a0_0x5cd09d(0x18b),'SQLITE':'sqlite'};function a0_0xf9a3(_0x18ab3e,_0x57abe5){_0x18ab3e=_0x18ab3e-0x174;const _0x376688=a0_0x3766();let _0xf9a32d=_0x376688[_0x18ab3e];if(a0_0xf9a3['szhEdP']===undefined){var _0x5e8de9=function(_0x51c2c5){const _0x156bc5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x18a678='',_0x34e52d='';for(let _0x35737a=0x0,_0x5c05ee,_0x5ef29f,_0x49689c=0x0;_0x5ef29f=_0x51c2c5['charAt'](_0x49689c++);~_0x5ef29f&&(_0x5c05ee=_0x35737a%0x4?_0x5c05ee*0x40+_0x5ef29f:_0x5ef29f,_0x35737a++%0x4)?_0x18a678+=String['fromCharCode'](0xff&_0x5c05ee>>(-0x2*_0x35737a&0x6)):0x0){_0x5ef29f=_0x156bc5['indexOf'](_0x5ef29f);}for(let _0x2d8899=0x0,_0x3f06d7=_0x18a678['length'];_0x2d8899<_0x3f06d7;_0x2d8899++){_0x34e52d+='%'+('00'+_0x18a678['charCodeAt'](_0x2d8899)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34e52d);};a0_0xf9a3['URJDWY']=_0x5e8de9,a0_0xf9a3['fKwuIx']={},a0_0xf9a3['szhEdP']=!![];}const _0x5633fc=_0x376688[0x0],_0x3f2559=_0x18ab3e+_0x5633fc,_0x4fbf29=a0_0xf9a3['fKwuIx'][_0x3f2559];return!_0x4fbf29?(_0xf9a32d=a0_0xf9a3['URJDWY'](_0xf9a32d),a0_0xf9a3['fKwuIx'][_0x3f2559]=_0xf9a32d):_0xf9a32d=_0x4fbf29,_0xf9a32d;}class UpsertBuilder{['getDatabaseType'](){const _0x144906=a0_0x5cd09d,_0x1d5df1=(process['env']['DB_TYPE']||'postgresql')['toLowerCase'](),_0x1733fc=Object['values'](DB_TYPES);if(!_0x1733fc[_0x144906(0x194)](_0x1d5df1))return logger['warn']({'event':'invalid_db_type','provided':_0x1d5df1,'fallback':'postgresql'},'Invalid\x20DB_TYPE:\x20'+_0x1d5df1+_0x144906(0x1bb)),DB_TYPES[_0x144906(0x1bc)];return _0x1d5df1;}[a0_0x5cd09d(0x1b5)](_0x1ac353,_0x202465,_0x4ecdb2=![]){const _0x596b16=a0_0x5cd09d,_0x1e1193={'XqHLr':'NULL::DATE','HbWOO':'NULL'};if(_0x4ecdb2)switch(_0x202465){case DB_TYPES[_0x596b16(0x1bc)]:return _0x1e1193[_0x596b16(0x180)];case DB_TYPES['MYSQL']:return _0x1e1193[_0x596b16(0x195)];case DB_TYPES[_0x596b16(0x196)]:return _0x1e1193[_0x596b16(0x195)];case DB_TYPES['SQLSERVER']:return _0x1e1193[_0x596b16(0x195)];case DB_TYPES[_0x596b16(0x18e)]:return _0x1e1193[_0x596b16(0x195)];default:return'NULL::DATE';}switch(_0x202465){case DB_TYPES['POSTGRESQL']:return _0x1ac353+_0x596b16(0x17d);case DB_TYPES[_0x596b16(0x183)]:return _0x1ac353;case DB_TYPES['SQLITE']:return _0x1ac353;case DB_TYPES[_0x596b16(0x19f)]:return'CAST('+_0x1ac353+_0x596b16(0x189);case DB_TYPES[_0x596b16(0x18e)]:return'TO_DATE('+_0x1ac353+',\x20\x27YYYY-MM-DD\x27)';default:return _0x1ac353+'::DATE';}}[a0_0x5cd09d(0x197)](_0x28d587={}){const _0x26fe97=a0_0x5cd09d,_0x36247b={'Qurcp':function(_0x501877,_0x8eed23){return _0x501877===_0x8eed23;},'ohydS':'date','oCpIh':'string','KntQA':function(_0x1ed65a,_0x55d982){return _0x1ed65a===_0x55d982;},'xcZVQ':function(_0x432ebe,_0x166e35){return _0x432ebe(_0x166e35);}},_0x4ca369=this[_0x26fe97(0x1b6)]();return(_0x5686a7,_0x18552f)=>{const _0x999029=_0x26fe97,_0xa3f864=_0x28d587[_0x18552f];if(_0x36247b[_0x999029(0x19d)](_0x5686a7,null)||_0x36247b[_0x999029(0x19d)](_0x5686a7,undefined)){if(_0xa3f864&&_0x36247b[_0x999029(0x19d)](_0xa3f864[_0x999029(0x18a)],_0x36247b[_0x999029(0x190)]))return this['formatDateValue'](null,_0x4ca369,!![]);return'NULL';}if(_0x36247b['Qurcp'](typeof _0x5686a7,_0x36247b[_0x999029(0x192)])){const _0x31ebe0='\x27'+_0x5686a7['replace'](/'/g,'\x27\x27')+'\x27';if(_0xa3f864&&_0x36247b[_0x999029(0x1a1)](_0xa3f864['type'],_0x36247b['ohydS']))return this['formatDateValue'](_0x31ebe0,_0x4ca369,![]);return _0x31ebe0;}if(_0x36247b['Qurcp'](typeof _0x5686a7,'number'))return _0x5686a7;if(_0x36247b[_0x999029(0x19d)](typeof _0x5686a7,'boolean'))return _0x5686a7;const _0x27a8cc='\x27'+_0x36247b['xcZVQ'](String,_0x5686a7)['replace'](/'/g,'\x27\x27')+'\x27';if(_0xa3f864&&_0x36247b['Qurcp'](_0xa3f864[_0x999029(0x18a)],_0x36247b[_0x999029(0x190)]))return this['formatDateValue'](_0x27a8cc,_0x4ca369,![]);return _0x27a8cc;};}[a0_0x5cd09d(0x1a0)](_0x407478,_0x337ce1,_0x5040ea,_0x4a4b51={}){const _0x527dd0=a0_0x5cd09d,_0x382b14={'NYnuu':function(_0x4ef132,_0x30013c){return _0x4ef132===_0x30013c;}},_0x42eb9e=this['getDatabaseType']();if(_0x382b14['NYnuu'](_0x42eb9e,DB_TYPES['ORACLE']))return this[_0x527dd0(0x1bf)](_0x407478,_0x337ce1,_0x5040ea,_0x4a4b51);return this['_buildBatchInsertPostgres'](_0x407478,_0x337ce1,_0x5040ea,_0x4a4b51);}[a0_0x5cd09d(0x17b)](_0x395aa4,_0x761b21,_0x443396,_0x489f61={}){const _0x11f6f9=a0_0x5cd09d,_0x4edc86={'AMpGn':',\x0a\x20\x20\x20\x20\x20\x20\x20','aDuhK':_0x11f6f9(0x1ab),'qdJnO':'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'};if(_0x395aa4['length']===0x0)return{'query':null,'values':[]};const _0x1b0d5c=this['buildEscapeFunction'](_0x489f61),_0x4ae57e=_0x395aa4[_0x11f6f9(0x1a4)](_0x2e8441=>{const _0x2ec58c=_0x11f6f9,_0x364b6d=_0x443396['map'](_0x54db8f=>_0x1b0d5c(_0x2e8441[_0x54db8f],_0x54db8f));return'('+_0x364b6d[_0x2ec58c(0x19a)](',\x20')+')';}),_0x176283=_0x11f6f9(0x1a9)+_0x761b21+'\x20('+_0x443396['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x4ae57e[_0x11f6f9(0x19a)](_0x4edc86['AMpGn'])+'\x0a\x20\x20\x20\x20';return logger[_0x11f6f9(0x1a2)]({'event':_0x4edc86[_0x11f6f9(0x17a)],'tableName':_0x761b21,'rowCount':_0x395aa4['length'],'dbType':_0x11f6f9(0x1b8)},_0x4edc86[_0x11f6f9(0x1ad)]),{'query':_0x176283,'values':[]};}['_buildBatchInsertOracle'](_0x37df7a,_0x367b99,_0x1800df,_0x3afcb0={}){const _0x1ab765=a0_0x5cd09d,_0x3cd963={'QIzud':'Batch\x20INSERT\x20query\x20built\x20(Oracle)'};if(_0x37df7a['length']===0x0)return{'query':null,'values':[]};const _0x36fd86=this[_0x1ab765(0x197)](_0x3afcb0),_0x1cd54a=_0x37df7a[_0x1ab765(0x1a4)](_0x17fa83=>{const _0x5b5c89=_0x1ab765,_0x5ce101=_0x1800df['map'](_0x2a320c=>_0x36fd86(_0x17fa83[_0x2a320c],_0x2a320c));return _0x5b5c89(0x1aa)+_0x367b99+'\x20('+_0x1800df[_0x5b5c89(0x19a)](',\x20')+')\x20VALUES\x20('+_0x5ce101['join'](',\x20')+')';}),_0x529c35='INSERT\x20ALL\x0a'+_0x1cd54a['join']('\x0a')+_0x1ab765(0x178);return logger[_0x1ab765(0x1a2)]({'event':'batch_insert_built','tableName':_0x367b99,'rowCount':_0x37df7a[_0x1ab765(0x186)],'dbType':_0x1ab765(0x18b)},_0x3cd963['QIzud']),{'query':_0x529c35,'values':[]};}['buildBatchUpdate'](_0xb4acd1,_0x191fb7,_0x24c785,_0x528ae8,_0x358adf,_0x492e38={}){const _0x5a45a0=a0_0x5cd09d,_0x46e4d1=this[_0x5a45a0(0x1b6)]();if(_0x46e4d1===DB_TYPES[_0x5a45a0(0x18e)])return this[_0x5a45a0(0x187)](_0xb4acd1,_0x191fb7,_0x24c785,_0x528ae8,_0x358adf,_0x492e38);if(_0x46e4d1===DB_TYPES[_0x5a45a0(0x183)])return this['_buildBatchUpdateMysql'](_0xb4acd1,_0x191fb7,_0x24c785,_0x528ae8,_0x358adf,_0x492e38);return this['_buildBatchUpdatePostgres'](_0xb4acd1,_0x191fb7,_0x24c785,_0x528ae8,_0x358adf,_0x492e38);}['_buildBatchUpdatePostgres'](_0x404e69,_0x2684c7,_0x4f50e0,_0x988ca1,_0x2068d6,_0x29e9db={}){const _0x112c4b=a0_0x5cd09d,_0x3876bc={'XwKkX':function(_0x33f911,_0x3d0850){return _0x33f911===_0x3d0850;},'NXDCw':'batch_update_no_columns','pfobp':_0x112c4b(0x19b),'IJYVz':'\x20AND\x20','Eiwwt':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20','CMhzA':'batch_update_built','bFvPz':'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'};if(_0x404e69[_0x112c4b(0x186)]===0x0)return{'query':null,'values':[]};const _0x20dc09=this['buildEscapeFunction'](_0x29e9db),_0x3cdff6=_0x4f50e0[_0x112c4b(0x191)](_0x409b1f=>!_0x2068d6[_0x112c4b(0x194)](_0x409b1f)&&_0x409b1f!==_0x988ca1);if(_0x3876bc[_0x112c4b(0x174)](_0x3cdff6[_0x112c4b(0x186)],0x0))return logger['warn']({'event':_0x3876bc[_0x112c4b(0x19e)],'tableName':_0x2684c7},_0x3876bc[_0x112c4b(0x19c)]),{'query':null,'values':[]};const _0x1d12b4=_0x404e69[_0x112c4b(0x1a4)](_0x3f4d82=>{const _0x63effc=_0x112c4b,_0x53d4b2=[..._0x2068d6,..._0x3cdff6],_0x1bdba8=_0x53d4b2['map'](_0x3b231c=>_0x20dc09(_0x3f4d82[_0x3b231c],_0x3b231c));return'('+_0x1bdba8[_0x63effc(0x19a)](',\x20')+')';}),_0xf3cc97=_0x3cdff6['map'](_0x49e112=>_0x49e112+_0x112c4b(0x17c)+_0x49e112)[_0x112c4b(0x19a)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x1b605b=_0x2068d6['map'](_0x5eda08=>'t.'+_0x5eda08+_0x112c4b(0x17c)+_0x5eda08)['join'](_0x3876bc[_0x112c4b(0x1b3)]),_0x55ba37='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x2684c7+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0xf3cc97+_0x112c4b(0x17e)+_0x1d12b4[_0x112c4b(0x19a)](_0x3876bc[_0x112c4b(0x18d)])+_0x112c4b(0x1b7)+[..._0x2068d6,..._0x3cdff6][_0x112c4b(0x19a)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x1b605b+'\x0a\x20\x20\x20\x20';return logger[_0x112c4b(0x1a2)]({'event':_0x3876bc[_0x112c4b(0x18c)],'tableName':_0x2684c7,'rowCount':_0x404e69[_0x112c4b(0x186)],'updateColumns':_0x3cdff6['length'],'dbType':'postgresql'},_0x3876bc[_0x112c4b(0x1b1)]),{'query':_0x55ba37,'values':[]};}[a0_0x5cd09d(0x187)](_0x207239,_0x202f5f,_0x372bb1,_0x281d16,_0x2a3218,_0x3d6054={}){const _0x26be18=a0_0x5cd09d,_0xb98e8d={'bqQTO':function(_0x1e0762,_0x4c0133,_0x5b22b6){return _0x1e0762(_0x4c0133,_0x5b22b6);},'stcbm':function(_0x3904bb,_0x94559){return _0x3904bb===_0x94559;},'AGtWA':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','qdEXk':_0x26be18(0x1b2),'PEQUc':_0x26be18(0x1b9)};if(_0x207239['length']===0x0)return{'query':null,'values':[]};const _0x327842=this['buildEscapeFunction'](_0x3d6054),_0x1c8cb3=_0x372bb1['filter'](_0x38e6b5=>!_0x2a3218[_0x26be18(0x194)](_0x38e6b5)&&_0x38e6b5!==_0x281d16);if(_0xb98e8d['stcbm'](_0x1c8cb3['length'],0x0))return logger[_0x26be18(0x193)]({'event':'batch_update_no_columns','tableName':_0x202f5f},_0xb98e8d['AGtWA']),{'query':null,'values':[]};const _0x37026d=[..._0x2a3218,..._0x1c8cb3],_0x107582=_0x207239['map']((_0x529cf2,_0x52300e)=>{const _0x42a4b3=_0x26be18,_0x1922bb=_0x37026d[_0x42a4b3(0x1a4)](_0x1fc442=>{const _0x76b42e=_0x42a4b3,_0x2b7d8f=_0xb98e8d[_0x76b42e(0x1b0)](_0x327842,_0x529cf2[_0x1fc442],_0x1fc442);return _0x52300e===0x0?_0x2b7d8f+_0x76b42e(0x1ae)+_0x1fc442:_0x2b7d8f;});return'\x20\x20\x20\x20SELECT\x20'+_0x1922bb[_0x42a4b3(0x19a)](',\x20')+_0x42a4b3(0x17f);}),_0x2337d9=_0x1c8cb3['map'](_0x14b4b6=>'t.'+_0x14b4b6+_0x26be18(0x17c)+_0x14b4b6)[_0x26be18(0x19a)](_0xb98e8d['qdEXk']),_0x2e1398=_0x2a3218['map'](_0x589dbc=>'t.'+_0x589dbc+_0x26be18(0x17c)+_0x589dbc)['join'](_0x26be18(0x1a8)),_0x36f720=_0x26be18(0x1af)+_0x202f5f+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x107582[_0x26be18(0x19a)](_0x26be18(0x1c0))+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x2e1398+_0x26be18(0x1ac)+_0x2337d9+_0x26be18(0x179);return logger['debug']({'event':_0xb98e8d['PEQUc'],'tableName':_0x202f5f,'rowCount':_0x207239['length'],'updateColumns':_0x1c8cb3['length'],'dbType':'oracle'},_0x26be18(0x1be)),{'query':_0x36f720,'values':[]};}[a0_0x5cd09d(0x199)](_0x1446dd,_0x43361a,_0x2eb53d,_0x21f424,_0x45d2c6,_0x5ebc87={}){const _0x590361=a0_0x5cd09d,_0x25fa51={'IgzgB':function(_0x471908,_0x369284){return _0x471908===_0x369284;},'xEJuc':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','TAaWz':_0x590361(0x1bd)};if(_0x25fa51[_0x590361(0x184)](_0x1446dd[_0x590361(0x186)],0x0))return{'query':null,'values':[]};const _0x3491b5=this[_0x590361(0x197)](_0x5ebc87),_0x462f6d=_0x2eb53d[_0x590361(0x191)](_0xb96e72=>!_0x45d2c6['includes'](_0xb96e72)&&_0xb96e72!==_0x21f424);if(_0x462f6d['length']===0x0)return logger[_0x590361(0x193)]({'event':'batch_update_no_columns','tableName':_0x43361a},_0x25fa51[_0x590361(0x1a7)]),{'query':null,'values':[]};const _0x4b3ae2=[...new Set([..._0x45d2c6,..._0x462f6d])],_0x27eaad=_0x1446dd[_0x590361(0x1a4)](_0x37dbab=>{const _0x2bb91f=_0x590361,_0x365ad9=_0x4b3ae2[_0x2bb91f(0x1a4)](_0x3fe7d8=>_0x3491b5(_0x37dbab[_0x3fe7d8],_0x3fe7d8));return'('+_0x365ad9[_0x2bb91f(0x19a)](',\x20')+')';}),_0x129a5c=_0x462f6d[_0x590361(0x1a4)](_0x17cce5=>_0x17cce5+_0x590361(0x175)+_0x17cce5+')')['join'](_0x590361(0x1b2)),_0x48122b='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x43361a+'\x20('+_0x4b3ae2['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x27eaad['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0x129a5c+'\x0a\x20\x20\x20\x20';return logger[_0x590361(0x1a2)]({'event':'batch_update_built','tableName':_0x43361a,'rowCount':_0x1446dd[_0x590361(0x186)],'updateColumns':_0x462f6d['length'],'dbType':'mysql'},_0x25fa51[_0x590361(0x176)]),{'query':_0x48122b,'values':[]};}['chunkRows'](_0x4da69f,_0xe6016e=0x64){const _0x57de81=a0_0x5cd09d,_0x49ab76=[];for(let _0x56fe78=0x0;_0x56fe78<_0x4da69f[_0x57de81(0x186)];_0x56fe78+=_0xe6016e){_0x49ab76['push'](_0x4da69f['slice'](_0x56fe78,_0x56fe78+_0xe6016e));}return _0x49ab76;}}module['exports']=new UpsertBuilder();function a0_0x3766(){const _0x20782f=['B2H5zfm','zMLSDgvY','B0nWswG','D2fYBG','Aw5JBhvKzxm','sgjxt08','u1fmsvrf','yNvPBgrfC2nHCgvgDw5JDgLVBG','nte1odeXAKHbzNP5','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','AM9PBG','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','CgzVyNa','uxvYy3a','tLHeq3C','u1fmu0vsvKvs','yNvPBgrcyxrJAeLUC2vYDa','s250uue','zgvIDwC','mtmXnJuYmhvTC1PMza','BwfW','ngTbruDftq','odzhr2fXvwO','EevkDwm','ieforca','cIaGicaGieLou0vsvcbjtLrpia','icbjtLrpia','yMf0y2HFAw5Zzxj0x2j1AwX0','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','CwrkBK8','ieftia','cIaGicaGie1fuKDfieLove8G','yNfrve8','yKz2uhO','laOGicaGicaGica','suPzvNO','lI9SB2DNzxi','zM9YBwf0rgf0zvzHBhvL','z2v0rgf0ywjHC2vuExbL','cIaGicaGicKGqvmGDIG','Cg9ZDgDYzxnXBa','yMf0y2HFDxbKyxrLx2j1AwX0','mJeWmJu0oevsAfjtqq','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','ue9tveDsrvnrta','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','cIaGicbvtKLptIbbteWk','whDlA1G','id0GvKfmvuvtka','vefHv3O','otGYmtm0mgzezM5ZrW','cLnftevdvcaXiezst00Grfvbta','cIaGica','yur1AeS','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','id0GDI4','oJPeqvrf','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','iezst00Grfvbta','whfithi','mteZnZu4otzVrNvnCfa','C3fSC2vYDMvY','tvLtuuW','swD6z0i','ode2nNHjy21sCG','BgvUz3rO','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','mtKWndi2nuH3uLvWsa','ieftierbveuP','DhLWzq','B3jHy2XL','q01OEKe','rwL3D3q','t1jbq0Xf','BxLZCwW'];a0_0x3766=function(){return _0x20782f;};return a0_0x3766();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x5e26(){const _0x3923dc=['mti0mtGXnNvuEfPXzG','nZu0ndaYmhvevwfuuW','CgLU','rvzQwwC','ndeWntiXm2ruAMzQDq','y29UC3vTzq','l3bPBG','yM9KEq','u2vYAwfSigTLEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','y2fUy2vSuMvZzxj2yxrPB24','y29Kzq','z2v0uMvZzxj2yxrPB24','z2joq2S','vLvABNG','uMvZzxj2yxrPB24GzxH0zw5Kzwq','ndqZmdi4m3rgExn6qW','zxHWB3j0CW','uMvZzxj2yxrPB24Gy29UzMLYBwvK','vMfSDwuGy29UC3vTzwq','BKDtAfO','ueLoigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','t3jtz1m','C3rHDhvZ','z2v0','l2HLywX0Aa','l3jLC2vYDMuVy29UzMLYBq','surftvbpvevoq1LFru5bqKXfra','tNvTyMvYihjLC2vYDMvKihn1y2nLC3nMDwXSEq','BeXnAeO','CMfUzg9T','Buj5Cey','l3jHBMrVBq','AwrNzw5FCM91DgvFCMvZzxj2zv9LCNjVCG','zvvlA3e','CMvZzxq','zgv0ywLSCW','r0LjB20','q29KzsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','EerPCgG','ndi2odzoDKDrqvu','te9ds19esvnuuKLcvvrfrf9ftKfcteve','sfHNALa','zLDdyvu','DuHYEfi','Dhj1zq','ndqXmtq4meHdt2fRsq','l2nVzgu','Cg9ZDa','ntDeqvDWq2e','tNvTyMvYihjLBgvHC2vKihrVihjLDxnLihbVB2W','BwvZC2fNzq','mJq4mtm2meT1ELDjEq','ufjfqMS','zxH0zw5KuMvZzxj2yxrPB24','l3jLC2vYDMuVzxH0zw5K','u1DJzwO','CxvLCNK','uNvjvha','suqGr2vUzxjHDg9YihnLCNzPy2uGAxmGAgvHBhrOEq','rgHKAw4','uwfACxy','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','y0vxEva','DMX6t3y','suqGr2vUzxjHDg9YihjVDxrLigvYCM9YoIa','uMvZzxj2yxrPB24Gy2fUy2vSBgvK','l251BwjLCG','l251BwjLCI9YzwXLyxnL','ANnVBG','AwrNzw5FCM91DgvFCMfUzg9Tx2vYCM9Y','AwrNzw5FCM91DgvFCMvZzxrFzxjYB3i','u3fnEuC','BMfTzq','s1rZzMi','l3jLC2v0','AfPzAhy','suqGr2vUzxjHDg9YihnLCNzPy2uGDw5HDMfPBgfIBgu','BNvTyMvY','lI4VlI4VDxrPBhmVAwqTz2vUzxjHDg9Y','swrhzw5LCMf0B3jfCNjVCG'];a0_0x5e26=function(){return _0x3923dc;};return a0_0x5e26();}const a0_0x2c2bf0=a0_0x18e4;(function(_0x8b1b48,_0x4a7d98){const _0x5dc2f5=a0_0x18e4,_0x52c187=_0x8b1b48();while(!![]){try{const _0x2d0021=-parseInt(_0x5dc2f5(0x180))/0x1*(-parseInt(_0x5dc2f5(0x1c7))/0x2)+-parseInt(_0x5dc2f5(0x1af))/0x3+parseInt(_0x5dc2f5(0x1a0))/0x4+parseInt(_0x5dc2f5(0x1a1))/0x5+parseInt(_0x5dc2f5(0x183))/0x6+-parseInt(_0x5dc2f5(0x1a4))/0x7+-parseInt(_0x5dc2f5(0x17d))/0x8;if(_0x2d0021===_0x4a7d98)break;else _0x52c187['push'](_0x52c187['shift']());}catch(_0x1f1f77){_0x52c187['push'](_0x52c187['shift']());}}}(a0_0x5e26,0xcbc9a));const express=require('express'),{logger}=require('../../utils/logger'),{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 a0_0x18e4(_0x285aa8,_0x14796a){_0x285aa8=_0x285aa8-0x17c;const _0x5e26f3=a0_0x5e26();let _0x18e4dd=_0x5e26f3[_0x285aa8];if(a0_0x18e4['hBunKg']===undefined){var _0x1ca799=function(_0x455e8d){const _0x5480d4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5e5f9f='',_0x10d833='';for(let _0x86aa8=0x0,_0x4164e4,_0x3d7ced,_0x504b4d=0x0;_0x3d7ced=_0x455e8d['charAt'](_0x504b4d++);~_0x3d7ced&&(_0x4164e4=_0x86aa8%0x4?_0x4164e4*0x40+_0x3d7ced:_0x3d7ced,_0x86aa8++%0x4)?_0x5e5f9f+=String['fromCharCode'](0xff&_0x4164e4>>(-0x2*_0x86aa8&0x6)):0x0){_0x3d7ced=_0x5480d4['indexOf'](_0x3d7ced);}for(let _0x3fabd1=0x0,_0x18516e=_0x5e5f9f['length'];_0x3fabd1<_0x18516e;_0x3fabd1++){_0x10d833+='%'+('00'+_0x5e5f9f['charCodeAt'](_0x3fabd1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x10d833);};a0_0x18e4['flhlif']=_0x1ca799,a0_0x18e4['IUvguc']={},a0_0x18e4['hBunKg']=!![];}const _0x43a682=_0x5e26f3[0x0],_0x357a3e=_0x285aa8+_0x43a682,_0x35241c=a0_0x18e4['IUvguc'][_0x357a3e];return!_0x35241c?(_0x18e4dd=a0_0x18e4['flhlif'](_0x18e4dd),a0_0x18e4['IUvguc'][_0x357a3e]=_0x18e4dd):_0x18e4dd=_0x35241c,_0x18e4dd;}function createIdgenRoutes(){const _0x4a5951=a0_0x18e4,_0x2328de={'lLMhJ':function(_0x5a80ed,_0x235021){return _0x5a80ed(_0x235021);},'eUKkq':function(_0x1f7449,_0x324608){return _0x1f7449===_0x324608;},'KTsfb':function(_0x227060,_0x182271,_0x538ba4,_0x2b8181){return _0x227060(_0x182271,_0x538ba4,_0x2b8181);},'QaZqv':function(_0x5941f){return _0x5941f();},'SWcej':function(_0x548225,_0x371802,_0xcd07cc,_0x4733ad){return _0x548225(_0x371802,_0xcd07cc,_0x4733ad);},'mBypF':function(_0x572ab1){return _0x572ab1();},'VUZnx':_0x4a5951(0x181),'RuITp':'idgen_route_release_error','PREBk':function(_0x24ceef,_0x329da5,_0x1f49eb,_0x507a3a){return _0x24ceef(_0x329da5,_0x1f49eb,_0x507a3a);},'XInDp':_0x4a5951(0x1bb),'nGShZ':_0x4a5951(0x1c0),'zuWhR':function(_0x346133,_0x1e8d26,_0x2dab22,_0x489b93){return _0x346133(_0x1e8d26,_0x2dab22,_0x489b93);},'NijAf':function(_0x350a47,_0x3fac79,_0x19707a,_0x4d30e8){return _0x350a47(_0x3fac79,_0x19707a,_0x4d30e8);},'fWCaU':_0x4a5951(0x191),'uHrxR':'idgen_route_reserve_cancel_error','OOcxZ':'idgen_route_reserve_extend_error','vlzOv':_0x4a5951(0x18d),'cEWyP':function(_0x182503){return _0x182503();},'GIIom':function(_0x212a51,_0x3424d6,_0x17f060,_0x22d8f5){return _0x212a51(_0x3424d6,_0x17f060,_0x22d8f5);},'xDiph':_0x4a5951(0x1a8),'HXgjP':function(_0x30e29f,_0x30da11,_0x2d9d7f,_0x53b990){return _0x30e29f(_0x30da11,_0x2d9d7f,_0x53b990);},'UxERd':function(_0x2ce4f7){return _0x2ce4f7();},'Dhdin':_0x4a5951(0x1c5),'EVjYg':function(_0x3e61c4,_0x52294a,_0x45df7d,_0x34e05b){return _0x3e61c4(_0x52294a,_0x45df7d,_0x34e05b);},'TASjv':'Random\x20value\x20generated\x20successfully','zRuae':_0x4a5951(0x195),'TRDfQ':function(_0x56368c,_0x279f8a){return _0x56368c||_0x279f8a;},'QovvG':function(_0x582e97,_0x437c45,_0x2d15cb,_0xd27c04){return _0x582e97(_0x437c45,_0x2d15cb,_0xd27c04);},'hTmjr':'idgen_route_info_error','jjiWI':_0x4a5951(0x196),'SqMyG':'true','gbNCk':_0x4a5951(0x19c),'ntVNd':'IDGEN_ENABLED=false','jWkbV':'Redis\x20not\x20connected','EnLMc':'/serial','OrSgS':_0x4a5951(0x17e),'hZYhv':_0x4a5951(0x1bf),'IgucN':_0x4a5951(0x19a)},_0x34b441=express['Router']();let _0x23feb6=null;function _0xc390e1(){const _0x2bd156=_0x4a5951;return!_0x23feb6&&(_0x23feb6=_0x2328de['lLMhJ'](require,_0x2bd156(0x19e))),_0x23feb6;}function _0x3aba4b(_0x479dfe,_0xec836b,_0x532e0c){const _0x191e68=_0x4a5951;if(_0xec836b&&_0x2328de[_0x191e68(0x1c1)](_0xec836b[_0x191e68(0x198)],_0x191e68(0x19f))){const _0x4c2f8c=ERROR_CODE_HTTP_MAP[_0xec836b[_0x191e68(0x1aa)]]||0x1f4;return logger['warn']({'event':_0x532e0c,'code':_0xec836b['code'],'message':_0xec836b['message']},_0x191e68(0x190)+_0xec836b[_0x191e68(0x1aa)]),_0x479dfe['status'](_0x4c2f8c)['json'](_0x2328de['KTsfb'](createError,_0x4c2f8c,_0xec836b[_0x191e68(0x182)],{'code':_0xec836b[_0x191e68(0x1aa)],'details':_0xec836b[_0x191e68(0x1c3)]||null}));}return logger['error']({'event':_0x532e0c,'error':_0xec836b&&_0xec836b['message'],'stack':_0xec836b&&_0xec836b['stack']},'ID\x20Generator\x20route\x20exception:\x20'+(_0xec836b&&_0xec836b['message'])),_0x479dfe['status'](0x1f4)['json'](createError(0x1f4,'Internal\x20server\x20error',null));}function _0x393905(_0x512536){return _0x512536['header']('Idempotency-Key')||undefined;}return _0x34b441[_0x4a5951(0x17f)](_0x4a5951(0x192),async(_0x30c064,_0x525e4b)=>{const _0x520d3c=_0x4a5951;try{const {resource:_0x4f24f3,format:_0xdcab86,prefix:_0x57d9d6,separator:_0x359c66,numDigits:_0x13e6d1,reuseDelete:_0x2b58b6}=_0x30c064['body']||{},_0x2521a7=_0x2328de['lLMhJ'](_0x393905,_0x30c064),_0xea1ca7=_0x2328de['QaZqv'](_0xc390e1),_0x167f8a=await _0xea1ca7[_0x520d3c(0x19d)]({'resource':_0x4f24f3,'format':_0xdcab86,'prefix':_0x57d9d6,'separator':_0x359c66,'numDigits':_0x13e6d1,'reuseDelete':_0x2b58b6,'idempotencyKey':_0x2521a7});return _0x525e4b['status'](0xc9)['json'](_0x2328de['SWcej'](createResponse,0xc9,'Number\x20generated\x20successfully',_0x167f8a));}catch(_0x33ec90){return _0x2328de[_0x520d3c(0x199)](_0x3aba4b,_0x525e4b,_0x33ec90,'idgen_route_number_error');}}),_0x34b441[_0x4a5951(0x17f)](_0x4a5951(0x193),async(_0x1b5632,_0x44929d)=>{const _0x303c37=_0x4a5951;try{const _0x231d14=_0x2328de[_0x303c37(0x1bc)](_0x393905,_0x1b5632),_0x722f62={..._0x1b5632['body']||{},'idempotencyKey':_0x231d14},_0x5e3c86=_0x2328de['mBypF'](_0xc390e1),_0x1c290f=await _0x5e3c86['releaseNumber'](_0x722f62);return _0x44929d['status'](0xc8)['json'](_0x2328de[_0x303c37(0x187)](createResponse,0xc8,_0x2328de[_0x303c37(0x1ad)],_0x1c290f));}catch(_0xd7b9a){return _0x3aba4b(_0x44929d,_0xd7b9a,_0x2328de[_0x303c37(0x189)]);}}),_0x34b441[_0x4a5951(0x17f)]('/reserve',async(_0xa28e37,_0x1f9735)=>{const _0x478a26=_0x4a5951;try{const {resource:_0x435d80,format:_0x34be37,prefix:_0xa6253,separator:_0x40fe01,numDigits:_0x8f3015,reuseDelete:_0x213a7d,ttl:_0x5caa29}=_0xa28e37['body']||{},_0x2cbed8=_0x393905(_0xa28e37),_0x1e2b75=_0xc390e1(),_0x54114a=await _0x1e2b75['reserveNumber']({'resource':_0x435d80,'format':_0x34be37,'prefix':_0xa6253,'separator':_0x40fe01,'numDigits':_0x8f3015,'reuseDelete':_0x213a7d,'ttl':_0x5caa29,'idempotencyKey':_0x2cbed8});return _0x1f9735['status'](0xc9)[_0x478a26(0x194)](_0x2328de['PREBk'](createResponse,0xc9,_0x2328de['XInDp'],_0x54114a));}catch(_0x4a8940){return _0x3aba4b(_0x1f9735,_0x4a8940,_0x2328de[_0x478a26(0x1b3)]);}}),_0x34b441['post'](_0x4a5951(0x1b9),async(_0x9695d8,_0x3842c4)=>{const _0x548c09=_0x4a5951;try{const {token:_0x2c9cda}=_0x9695d8[_0x548c09(0x1a7)]||{},_0x347f6c=_0x393905(_0x9695d8),_0x5b6433=_0x2328de[_0x548c09(0x1be)](_0xc390e1),_0x5bc15f=await _0x5b6433['confirmReservation']({'token':_0x2c9cda,'idempotencyKey':_0x347f6c});return _0x3842c4[_0x548c09(0x1b6)](0xc8)['json'](_0x2328de['zuWhR'](createResponse,0xc8,_0x548c09(0x1b1),_0x5bc15f));}catch(_0x2948fd){return _0x2328de['NijAf'](_0x3aba4b,_0x3842c4,_0x2948fd,'idgen_route_reserve_confirm_error');}}),_0x34b441[_0x4a5951(0x17f)]('/reserve/cancel',async(_0x38351f,_0x2d7ec4)=>{const _0x2794d4=_0x4a5951;try{const {token:_0x1b0b96}=_0x38351f[_0x2794d4(0x1a7)]||{},_0x372878=_0x393905(_0x38351f),_0x4460f8=_0xc390e1(),_0x5d0ae3=await _0x4460f8[_0x2794d4(0x1a9)]({'token':_0x1b0b96,'idempotencyKey':_0x372878});return _0x2d7ec4['status'](0xc8)[_0x2794d4(0x194)](_0x2328de[_0x2794d4(0x199)](createResponse,0xc8,_0x2328de[_0x2794d4(0x1ca)],_0x5d0ae3));}catch(_0x40f1ab){return _0x2328de['SWcej'](_0x3aba4b,_0x2d7ec4,_0x40f1ab,_0x2328de[_0x2794d4(0x1cb)]);}}),_0x34b441[_0x4a5951(0x17f)](_0x4a5951(0x186),async(_0x25f450,_0x42cdb4)=>{const _0x5140cf=_0x4a5951;try{const {token:_0x24c637,ttl:_0x5536ca}=_0x25f450['body']||{},_0x14d5f2=_0x393905(_0x25f450),_0x3060c0=_0xc390e1(),_0x1fbc0f=await _0x3060c0[_0x5140cf(0x185)]({'token':_0x24c637,'ttl':_0x5536ca,'idempotencyKey':_0x14d5f2});return _0x42cdb4['status'](0xc8)[_0x5140cf(0x194)](createResponse(0xc8,_0x5140cf(0x1ae),_0x1fbc0f));}catch(_0x199152){return _0x3aba4b(_0x42cdb4,_0x199152,_0x2328de['OOcxZ']);}}),_0x34b441[_0x4a5951(0x1b7)]('/reserve/:token',async(_0x19b2c6,_0x2aa2a5)=>{const _0x5736b1=_0x4a5951;try{const {token:_0x4226e7}=_0x19b2c6['params'],_0x2571d8=_0x2328de['QaZqv'](_0xc390e1),_0x367f7c=await _0x2571d8[_0x5736b1(0x1ab)]({'token':_0x4226e7});return _0x2aa2a5['status'](0xc8)['json'](_0x2328de[_0x5736b1(0x184)](createResponse,0xc8,'Reservation\x20retrieved',_0x367f7c));}catch(_0x21ed85){return _0x3aba4b(_0x2aa2a5,_0x21ed85,_0x2328de[_0x5736b1(0x18f)]);}}),_0x34b441[_0x4a5951(0x17f)](_0x4a5951(0x1a6),async(_0x26ce7a,_0x29ecab)=>{const _0x5267a7=_0x4a5951;try{const {resource:_0x2e5547,digits:_0x5f2420,ensureUnique:_0x2cdfac,ttl:_0x31a4cc,maxRetry:_0xd431a0}=_0x26ce7a['body']||{},_0x29ec19=_0x2328de['lLMhJ'](_0x393905,_0x26ce7a),_0x427da6=_0x2328de[_0x5267a7(0x1be)](_0xc390e1),_0x255143=await _0x427da6[_0x5267a7(0x1a2)]({'resource':_0x2e5547,'digits':_0x5f2420,'ensureUnique':_0x2cdfac,'ttl':_0x31a4cc,'maxRetry':_0xd431a0,'idempotencyKey':_0x29ec19});return _0x29ecab['status'](0xc9)['json'](createResponse(0xc9,_0x5267a7(0x1b4),_0x255143));}catch(_0x24b61b){return _0x2328de['PREBk'](_0x3aba4b,_0x29ecab,_0x24b61b,'idgen_route_pin_error');}}),_0x34b441[_0x4a5951(0x17f)](_0x2328de['EnLMc'],async(_0x2a02ae,_0x433041)=>{const _0x1ec37e=_0x4a5951;try{const {resource:_0x53bf5a,pattern:_0x2737fb,ensureUnique:_0x12125b,ttl:_0x11de81,maxRetry:_0xb5231b}=_0x2a02ae[_0x1ec37e(0x1a7)]||{},_0x4eea62=_0x393905(_0x2a02ae),_0x3e0d74=_0x2328de[_0x1ec37e(0x18e)](_0xc390e1),_0x40a056=await _0x3e0d74['serial']({'resource':_0x53bf5a,'pattern':_0x2737fb,'ensureUnique':_0x12125b,'ttl':_0x11de81,'maxRetry':_0xb5231b,'idempotencyKey':_0x4eea62});return _0x433041[_0x1ec37e(0x1b6)](0xc9)['json'](_0x2328de[_0x1ec37e(0x1c4)](createResponse,0xc9,_0x2328de[_0x1ec37e(0x1c6)],_0x40a056));}catch(_0x235ac3){return _0x2328de[_0x1ec37e(0x1c9)](_0x3aba4b,_0x433041,_0x235ac3,'idgen_route_serial_error');}}),_0x34b441['post'](_0x2328de[_0x4a5951(0x1b5)],async(_0x1d4904,_0x88d1b6)=>{const _0x148451=_0x4a5951;try{const {resource:_0x4dbf48,pattern:_0x36fb04,ensureUnique:_0x1a8d69,ttl:_0x3349c5,maxRetry:_0x29ecbf}=_0x1d4904[_0x148451(0x1a7)]||{},_0x1ea6e5=_0x393905(_0x1d4904),_0x141db1=_0x2328de['UxERd'](_0xc390e1),_0x437687=await _0x141db1['code']({'resource':_0x4dbf48,'pattern':_0x36fb04,'ensureUnique':_0x1a8d69,'ttl':_0x3349c5,'maxRetry':_0x29ecbf,'idempotencyKey':_0x1ea6e5});return _0x88d1b6[_0x148451(0x1b6)](0xc9)['json'](createResponse(0xc9,_0x2328de[_0x148451(0x18b)],_0x437687));}catch(_0x4e5bff){return _0x2328de[_0x148451(0x1c9)](_0x3aba4b,_0x88d1b6,_0x4e5bff,'idgen_route_code_error');}}),_0x34b441['post'](_0x2328de[_0x4a5951(0x19b)],async(_0x205a70,_0x5a5dcb)=>{const _0x5622a5=_0x4a5951;try{const {resource:_0x5eaf41,pattern:_0x2af53d,ensureUnique:_0x5d4fc3,ttl:_0x233f7b,maxRetry:_0x485f60}=_0x205a70['body']||{},_0x1dfa5e=_0x2328de[_0x5622a5(0x1bc)](_0x393905,_0x205a70),_0x1abe8e=_0xc390e1(),_0x54713e=await _0x1abe8e[_0x5622a5(0x1bd)]({'resource':_0x5eaf41,'pattern':_0x2af53d,'ensureUnique':_0x5d4fc3,'ttl':_0x233f7b,'maxRetry':_0x485f60,'idempotencyKey':_0x1dfa5e});return _0x5a5dcb['status'](0xc9)['json'](_0x2328de[_0x5622a5(0x1a3)](createResponse,0xc9,_0x2328de['TASjv'],_0x54713e));}catch(_0x2dc806){return _0x3aba4b(_0x5a5dcb,_0x2dc806,_0x2328de['zRuae']);}}),_0x34b441['post']('/consume',async(_0xe95bab,_0x2d57cd)=>{const _0x2f5a1d=_0x4a5951;try{const {resource:_0x13981e,value:_0x274d5c}=_0xe95bab['body']||{},_0x423ca8=_0xc390e1(),_0x55d940=await _0x423ca8[_0x2f5a1d(0x1a5)]({'resource':_0x13981e,'value':_0x274d5c});return _0x2d57cd[_0x2f5a1d(0x1b6)](0xc8)[_0x2f5a1d(0x194)](createResponse(0xc8,_0x2f5a1d(0x1b2),_0x55d940));}catch(_0xa936ca){return _0x3aba4b(_0x2d57cd,_0xa936ca,'idgen_route_consume_error');}}),_0x34b441[_0x4a5951(0x1b7)]('/info/:resource',async(_0x205011,_0x244093)=>{const _0x3dfb9b=_0x4a5951;try{const {resource:_0x21a157}=_0x205011['params'],{mode:_0x5c6a7f,format:_0x540be7,prefix:_0x4312d8}=_0x205011[_0x3dfb9b(0x188)],_0x33c6f9=_0xc390e1(),_0x3f5a21=await _0x33c6f9['getInfo']({'resource':_0x21a157,'mode':_0x2328de['TRDfQ'](_0x5c6a7f,'number'),'format':_0x540be7,'prefix':_0x4312d8});return _0x244093[_0x3dfb9b(0x1b6)](0xc8)['json'](_0x2328de['QovvG'](createResponse,0xc8,'Resource\x20info\x20retrieved',_0x3f5a21));}catch(_0x4ba54b){return _0x3aba4b(_0x244093,_0x4ba54b,_0x2328de['hTmjr']);}}),_0x34b441[_0x4a5951(0x17f)](_0x2328de['IgucN'],async(_0x3cf9da,_0x8add3)=>{const _0x5a07a2=_0x4a5951;try{const {resource:_0x104c11,mode:_0x309f51,format:_0x3e6d7c,prefix:_0x1c9c37}=_0x3cf9da['body']||{},_0x5a3b5a=_0x2328de[_0x5a07a2(0x18c)](_0xc390e1),_0x1f8398=await _0x5a3b5a[_0x5a07a2(0x1c2)]({'resource':_0x104c11,'mode':_0x309f51||_0x5a07a2(0x19d),'format':_0x3e6d7c,'prefix':_0x1c9c37});return _0x8add3['status'](0xc8)[_0x5a07a2(0x194)](createResponse(0xc8,'Resource\x20state\x20reset',_0x1f8398));}catch(_0x26d97c){return _0x2328de[_0x5a07a2(0x1c9)](_0x3aba4b,_0x8add3,_0x26d97c,_0x2328de['jjiWI']);}}),_0x34b441['get'](_0x4a5951(0x1b8),async(_0x2169a6,_0x3dddb5)=>{const _0x346513=_0x4a5951;try{const _0x52034b=_0x2328de['mBypF'](_0xc390e1),_0x317975=_0x52034b['isEnabled']();let _0x2c075e=![],_0x34de7d=null;try{_0x2c075e=await redisClient['ping'](0xbb8);}catch(_0x1caf71){_0x34de7d=_0x1caf71['message'];}const _0x28dc2f=process['env'][_0x346513(0x1c8)]===_0x346513(0x17c),_0x11279c=_0x2328de[_0x346513(0x1c1)](process['env'][_0x346513(0x1ba)],_0x2328de[_0x346513(0x197)]);if(!_0x317975||!_0x2c075e)return _0x3dddb5[_0x346513(0x1b6)](0x1f7)['json'](createError(0x1f7,_0x2328de[_0x346513(0x1ac)],{'enabled':_0x317975,'redisConnected':_0x2c075e,'lockEnabled':_0x28dc2f,'idempotencyEnabled':_0x11279c,'error':_0x34de7d||(!_0x317975?_0x2328de['ntVNd']:_0x2328de['jWkbV'])}));return _0x3dddb5['status'](0xc8)['json'](_0x2328de['QovvG'](createResponse,0xc8,_0x346513(0x18a),{'enabled':_0x317975,'redisConnected':_0x2c075e,'lockEnabled':_0x28dc2f,'idempotencyEnabled':_0x11279c}));}catch(_0x39d829){return _0x3aba4b(_0x3dddb5,_0x39d829,'idgen_route_health_error');}}),_0x34b441;}module[a0_0x2c2bf0(0x1b0)]=createIdgenRoutes;
|
|
1
|
+
function a0_0x3325(){const _0x4b7b84=['lI4VlI4VDxrPBhmVChjVy2vZC29YlxjLC3bVBNnL','BNvTyMvY','terftMi','suqGr2vUzxjHDg9YihjVDxrLigv4y2vWDgLVBJOG','AwrNzw5FCM91DgvFCMvZzxj2zv9LCNjVCG','tNvTyMvYihjLBgvHC2vKihrVihjLDxnLihbVB2W','l3jLC2vYDMuVy2fUy2vS','Dhj1zq','zxjYB3i','mtjjy1jVsKW','ufP0q0K','swrhzw5LCMf0B3jfCNjVCG','Cg9ZDa','D2fYBG','zgv0ywLSCW','ueLoigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','BwvZC2fNzq','AwrNzw5FCM91DgvFBNvTyMvYx2vYCM9Y','CMfUzg9T','tNvTyMvYihjLC2vYDMvKihn1y2nLC3nMDwXSEq','tgn6AKW','v1fZtg8','y29Kzq','nZa5mJv2CLLOvLO','l2HLywX0Aa','u0vurMm','l3jLC2vYDMuVy29UzMLYBq','uMvZzxj2yxrPB24Gy2fUy2vSBgvK','uMvKAxmGBM90ignVBM5Ly3rLza','suqGr2vUzxjHDg9YihjVDxrLigvYCM9YoIa','v3Dzzxi','u2vYAwfSigTLEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','C3rHDhvZ','rfLOtgS','AwrNzw5FCM91DgvFCMvZzxj2zv9JB25MAxjTx2vYCM9Y','y29UC3vTzq','suqGr2vUzxjHDg9YihnLCNzPy2uGDw5HDMfPBgfIBgu','DvPJCu0','CMvSzwfZzu51BwjLCG','A2zvwLC','qNjtywG','AwrNzw5FCM91DgvFy29Kzv9LCNjVCG','swrLBxbVDgvUy3KTs2v5','ndu2ntuXnKPHC0jmyG','DwDiwxi','AwrNzw5FCM91DgvFAw5MB19LCNjVCG','mti2nZq0muL3B2fnqq','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','zhHfwgS','EMjmAgm','AwrNzw5FCM91DgvFCMvZzxj2zv9LEhrLBMrFzxjYB3i','AwrNzw5FCM91DgvFAgvHBhrOx2vYCM9Y','nJuXotG0meLltM1fDW','BKPOC20','AxnfBMfIBgvK','mJy4otK5nZbdr05JswS','uMvZzxj2yxrPB24GzxH0zw5Kzwq','qM9wBKK','uMvZzxj2yxrPB24Gy29UzMLYBwvK','tNvTyMvYigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','l3jLC2vYDMuVzxH0zw5K','yNDru3e','CgfYyw1Z','yM9KEq','l251BwjLCG','uMvZzxj2yxrPB24GCMv0CMLLDMvK','muXes2ntCG','uen5Auy','mta2mtm5mdDxC3LSD3y','CgLUzW','r0jgue4','l3jLC2vYDMuVoNrVA2vU','CxvLCNK','Bg53qvy','AwrNzw5FCM91DgvFCgLUx2vYCM9Y','q29KzsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','ww9RAgm','AwrNzw5FCM91DgvFCMvZzxrFzxjYB3i','ANnVBG','m2nNsNzQyq','A2zpzhG','CMvZzxq','mtG1nJyWnKvdt3r3va','BMfTzq','l2nVzgu','z2v0sw5MBW'];a0_0x3325=function(){return _0x4b7b84;};return a0_0x3325();}const a0_0x3a83b6=a0_0x51a3;function a0_0x51a3(_0x1292f1,_0x1fd576){_0x1292f1=_0x1292f1-0x1d8;const _0x33254d=a0_0x3325();let _0x51a347=_0x33254d[_0x1292f1];if(a0_0x51a3['uISSKI']===undefined){var _0x2d7cdc=function(_0x167e0a){const _0x5740b4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x66fa1a='',_0x350d7b='';for(let _0xace9f0=0x0,_0x3eba15,_0x3d333d,_0x2e771c=0x0;_0x3d333d=_0x167e0a['charAt'](_0x2e771c++);~_0x3d333d&&(_0x3eba15=_0xace9f0%0x4?_0x3eba15*0x40+_0x3d333d:_0x3d333d,_0xace9f0++%0x4)?_0x66fa1a+=String['fromCharCode'](0xff&_0x3eba15>>(-0x2*_0xace9f0&0x6)):0x0){_0x3d333d=_0x5740b4['indexOf'](_0x3d333d);}for(let _0x55c7dd=0x0,_0x10e84b=_0x66fa1a['length'];_0x55c7dd<_0x10e84b;_0x55c7dd++){_0x350d7b+='%'+('00'+_0x66fa1a['charCodeAt'](_0x55c7dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x350d7b);};a0_0x51a3['zPneCp']=_0x2d7cdc,a0_0x51a3['RrgbMG']={},a0_0x51a3['uISSKI']=!![];}const _0x8db108=_0x33254d[0x0],_0x1bc26b=_0x1292f1+_0x8db108,_0x1577f9=a0_0x51a3['RrgbMG'][_0x1bc26b];return!_0x1577f9?(_0x51a347=a0_0x51a3['zPneCp'](_0x51a347),a0_0x51a3['RrgbMG'][_0x1bc26b]=_0x51a347):_0x51a347=_0x1577f9,_0x51a347;}(function(_0x1f26c4,_0x4370dd){const _0x58812b=a0_0x51a3,_0x267fdd=_0x1f26c4();while(!![]){try{const _0x54fe8c=parseInt(_0x58812b(0x1db))/0x1*(parseInt(_0x58812b(0x1eb))/0x2)+parseInt(_0x58812b(0x1e8))/0x3*(-parseInt(_0x58812b(0x21a))/0x4)+parseInt(_0x58812b(0x206))/0x5*(-parseInt(_0x58812b(0x1f8))/0x6)+parseInt(_0x58812b(0x21d))/0x7+-parseInt(_0x58812b(0x223))/0x8+-parseInt(_0x58812b(0x1dd))/0x9+parseInt(_0x58812b(0x226))/0xa;if(_0x54fe8c===_0x4370dd)break;else _0x267fdd['push'](_0x267fdd['shift']());}catch(_0x10f98d){_0x267fdd['push'](_0x267fdd['shift']());}}}(a0_0x3325,0x9b1af));const express=require('express'),{logger}=require('../../utils/logger'),{createResponse,createError}=require(a0_0x3a83b6(0x1ef)),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 _0x2e63c1=a0_0x3a83b6,_0x26e1e2={'Yokhc':'../../utils/id-generator','BoVnI':_0x2e63c1(0x1fa),'BrSah':function(_0x5ecdc8,_0x69eb11,_0x2110cd,_0x3e61da){return _0x5ecdc8(_0x69eb11,_0x2110cd,_0x3e61da);},'YHuHY':'Internal\x20server\x20error','nJhsm':function(_0x16cb6a){return _0x16cb6a();},'PZtCI':'idgen_route_release_error','GBFPN':function(_0x44c24f,_0xc853db){return _0x44c24f(_0xc853db);},'zbLhc':_0x2e63c1(0x1f3),'dxEXk':_0x2e63c1(0x229),'jKIIY':_0x2e63c1(0x20a),'iLhdi':function(_0x15b3d2,_0x1a5d70,_0x22f85a,_0x403fbe){return _0x15b3d2(_0x1a5d70,_0x22f85a,_0x403fbe);},'AphYq':function(_0x1860c7){return _0x1860c7();},'kfOdx':_0x2e63c1(0x227),'nfCkW':_0x2e63c1(0x221),'LDENb':function(_0x5d31c3,_0x3749a1,_0x4e2a7b,_0x2e3f18){return _0x5d31c3(_0x3749a1,_0x4e2a7b,_0x2e3f18);},'DYhLk':function(_0x37b8ec){return _0x37b8ec();},'ugHYr':_0x2e63c1(0x1fe),'lnwAV':_0x2e63c1(0x1e3),'WQsLo':_0x2e63c1(0x20e),'bLJBS':'idgen_route_serial_error','NauJL':_0x2e63c1(0x1e4),'LczjL':_0x2e63c1(0x218),'JIBTw':function(_0x3a2d5e,_0x47f8ee){return _0x3a2d5e(_0x47f8ee);},'uZcqM':'Random\x20value\x20generated\x20successfully','fvEIA':function(_0x4bb3fd,_0x5d43fa,_0xd047af,_0x5a83fb){return _0x4bb3fd(_0x5d43fa,_0xd047af,_0x5a83fb);},'nryrb':'Value\x20consumed','WwYer':function(_0x41bde6,_0x273739,_0x54b51a,_0x5b01fe){return _0x41bde6(_0x273739,_0x54b51a,_0x5b01fe);},'WsUdC':function(_0x2ce562,_0x1c0466,_0x47a53f,_0x38872a){return _0x2ce562(_0x1c0466,_0x47a53f,_0x38872a);},'pMQin':_0x2e63c1(0x21c),'ERZnx':_0x2e63c1(0x1f0),'SETFc':function(_0x4c6d60,_0x249a2f){return _0x4c6d60===_0x249a2f;},'IIFbz':'true','BCynf':function(_0x106784,_0x53405e){return _0x106784||_0x53405e;},'bwQSq':function(_0x29e995,_0x128586,_0x296934,_0x3e213){return _0x29e995(_0x128586,_0x296934,_0x3e213);},'Wuwlo':_0x2e63c1(0x213),'myDqg':'IDGEN_ENABLED=false','gpxmE':function(_0x51bae1,_0x1d98c1,_0x3d2ff6,_0x55336f){return _0x51bae1(_0x1d98c1,_0x3d2ff6,_0x55336f);},'VgyZH':'ID\x20Generator\x20service\x20is\x20healthy','EYTtK':function(_0x1261f6,_0x52899c,_0x346247,_0x1e8727){return _0x1261f6(_0x52899c,_0x346247,_0x1e8727);},'qMuEH':'/number/release','lXIHF':_0x2e63c1(0x1f5),'TijtS':_0x2e63c1(0x22b),'eUiDu':_0x2e63c1(0x1e0),'kfUZW':'/random','PCyiF':'/consume','SQsSS':'/info/:resource','WJyzC':'/reset'},_0x5f1892=express['Router']();let _0x97ee39=null;function _0x52207a(){const _0x599720=_0x2e63c1;return!_0x97ee39&&(_0x97ee39=require(_0x26e1e2[_0x599720(0x1e5)])),_0x97ee39;}function _0x4f9b64(_0x2f6e20,_0x341bd8,_0x4eb063){const _0x1b57a0=_0x2e63c1;if(_0x341bd8&&_0x341bd8[_0x1b57a0(0x1ec)]===_0x26e1e2[_0x1b57a0(0x228)]){const _0xf8a163=ERROR_CODE_HTTP_MAP[_0x341bd8[_0x1b57a0(0x205)]]||0x1f4;return logger[_0x1b57a0(0x1fc)]({'event':_0x4eb063,'code':_0x341bd8['code'],'message':_0x341bd8[_0x1b57a0(0x1ff)]},_0x1b57a0(0x20c)+_0x341bd8['code']),_0x2f6e20['status'](_0xf8a163)[_0x1b57a0(0x1e7)](createError(_0xf8a163,_0x341bd8[_0x1b57a0(0x1ff)],{'code':_0x341bd8[_0x1b57a0(0x205)],'details':_0x341bd8[_0x1b57a0(0x1fd)]||null}));}return logger[_0x1b57a0(0x1f7)]({'event':_0x4eb063,'error':_0x341bd8&&_0x341bd8[_0x1b57a0(0x1ff)],'stack':_0x341bd8&&_0x341bd8['stack']},_0x1b57a0(0x1f2)+(_0x341bd8&&_0x341bd8['message'])),_0x2f6e20[_0x1b57a0(0x20f)](0x1f4)[_0x1b57a0(0x1e7)](_0x26e1e2[_0x1b57a0(0x217)](createError,0x1f4,_0x26e1e2['YHuHY'],null));}function _0x108121(_0x5015ec){const _0x2cc291=_0x2e63c1;return _0x5015ec['header'](_0x2cc291(0x219))||undefined;}return _0x5f1892[_0x2e63c1(0x1fb)](_0x2e63c1(0x1d9),async(_0x36668d,_0x9b10b6)=>{const _0x25379a=_0x2e63c1;try{const {resource:_0x2e0bbb,format:_0x1f9e4c,prefix:_0x317ce4,separator:_0x55b973,numDigits:_0x2128f7,reuseDelete:_0x256a07}=_0x36668d[_0x25379a(0x1d8)]||{},_0x596852=_0x108121(_0x36668d),_0x492953=_0x26e1e2['nJhsm'](_0x52207a),_0x2d5570=await _0x492953[_0x25379a(0x1f0)]({'resource':_0x2e0bbb,'format':_0x1f9e4c,'prefix':_0x317ce4,'separator':_0x55b973,'numDigits':_0x2128f7,'reuseDelete':_0x256a07,'idempotencyKey':_0x596852});return _0x9b10b6[_0x25379a(0x20f)](0xc9)['json'](createResponse(0xc9,_0x25379a(0x22a),_0x2d5570));}catch(_0x559598){return _0x4f9b64(_0x9b10b6,_0x559598,_0x25379a(0x200));}}),_0x5f1892['post'](_0x26e1e2['qMuEH'],async(_0x595c58,_0x46aa25)=>{const _0x8fc663=_0x2e63c1;try{const _0xdb4b9e=_0x108121(_0x595c58),_0x52876d={..._0x595c58['body']||{},'idempotencyKey':_0xdb4b9e},_0x2ec575=_0x52207a(),_0x36c509=await _0x2ec575[_0x8fc663(0x215)](_0x52876d);return _0x46aa25['status'](0xc8)['json'](createResponse(0xc8,_0x8fc663(0x1f4),_0x36c509));}catch(_0x52f1d3){return _0x26e1e2[_0x8fc663(0x217)](_0x4f9b64,_0x46aa25,_0x52f1d3,_0x26e1e2[_0x8fc663(0x1f9)]);}}),_0x5f1892['post']('/reserve',async(_0x3d8a09,_0x27e297)=>{const _0x469f56=_0x2e63c1;try{const {resource:_0x3392d4,format:_0x1509dc,prefix:_0x47d816,separator:_0xd26b5d,numDigits:_0x55c8c4,reuseDelete:_0x1546a9,ttl:_0x235241}=_0x3d8a09[_0x469f56(0x1d8)]||{},_0x4675d2=_0x26e1e2['GBFPN'](_0x108121,_0x3d8a09),_0x234027=_0x52207a(),_0x33f0e5=await _0x234027['reserveNumber']({'resource':_0x3392d4,'format':_0x1509dc,'prefix':_0x47d816,'separator':_0xd26b5d,'numDigits':_0x55c8c4,'reuseDelete':_0x1546a9,'ttl':_0x235241,'idempotencyKey':_0x4675d2});return _0x27e297[_0x469f56(0x20f)](0xc9)['json'](createResponse(0xc9,_0x469f56(0x202),_0x33f0e5));}catch(_0x4cb892){return _0x4f9b64(_0x27e297,_0x4cb892,_0x26e1e2[_0x469f56(0x220)]);}}),_0x5f1892[_0x2e63c1(0x1fb)](_0x2e63c1(0x209),async(_0x1cd6c1,_0x1654b7)=>{const _0x1c45b3=_0x2e63c1;try{const {token:_0x3ae5e6}=_0x1cd6c1[_0x1c45b3(0x1d8)]||{},_0x297a57=_0x26e1e2['GBFPN'](_0x108121,_0x1cd6c1),_0x3c85ea=_0x26e1e2[_0x1c45b3(0x224)](_0x52207a),_0x1ed86b=await _0x3c85ea['confirmReservation']({'token':_0x3ae5e6,'idempotencyKey':_0x297a57});return _0x1654b7[_0x1c45b3(0x20f)](0xc8)[_0x1c45b3(0x1e7)](createResponse(0xc8,_0x26e1e2[_0x1c45b3(0x21f)],_0x1ed86b));}catch(_0x438d33){return _0x4f9b64(_0x1654b7,_0x438d33,_0x1c45b3(0x211));}}),_0x5f1892['post'](_0x26e1e2['lXIHF'],async(_0x55ffc7,_0x564605)=>{try{const {token:_0x25f87c}=_0x55ffc7['body']||{},_0x494d2d=_0x108121(_0x55ffc7),_0x517f31=_0x52207a(),_0x312ee5=await _0x517f31['cancelReservation']({'token':_0x25f87c,'idempotencyKey':_0x494d2d});return _0x564605['status'](0xc8)['json'](createResponse(0xc8,_0x26e1e2['jKIIY'],_0x312ee5));}catch(_0x19bdc4){return _0x26e1e2['iLhdi'](_0x4f9b64,_0x564605,_0x19bdc4,'idgen_route_reserve_cancel_error');}}),_0x5f1892['post'](_0x26e1e2['TijtS'],async(_0x1d4ef0,_0x4edcd8)=>{const _0x1c16fe=_0x2e63c1;try{const {token:_0x4bb5be,ttl:_0x51fb2d}=_0x1d4ef0[_0x1c16fe(0x1d8)]||{},_0x2f038b=_0x26e1e2[_0x1c16fe(0x1df)](_0x108121,_0x1d4ef0),_0x1115f7=_0x26e1e2['AphYq'](_0x52207a),_0x371942=await _0x1115f7['extendReservation']({'token':_0x4bb5be,'ttl':_0x51fb2d,'idempotencyKey':_0x2f038b});return _0x4edcd8['status'](0xc8)['json'](createResponse(0xc8,_0x26e1e2[_0x1c16fe(0x1e9)],_0x371942));}catch(_0x4a240d){return _0x4f9b64(_0x4edcd8,_0x4a240d,_0x26e1e2['nfCkW']);}}),_0x5f1892['get'](_0x26e1e2['eUiDu'],async(_0x161c58,_0xe71501)=>{const _0x52e6cb=_0x2e63c1;try{const {token:_0x512283}=_0x161c58[_0x52e6cb(0x22d)],_0x55a505=_0x52207a(),_0x393b8c=await _0x55a505['getReservation']({'token':_0x512283});return _0xe71501['status'](0xc8)['json'](createResponse(0xc8,_0x52e6cb(0x1da),_0x393b8c));}catch(_0x56c946){return _0x26e1e2[_0x52e6cb(0x1f1)](_0x4f9b64,_0xe71501,_0x56c946,_0x52e6cb(0x21e));}}),_0x5f1892[_0x2e63c1(0x1fb)]('/pin',async(_0x43e6f9,_0x240389)=>{const _0x11b96a=_0x2e63c1;try{const {resource:_0x20f684,digits:_0x20e726,ensureUnique:_0x595c3e,ttl:_0x33a5b5,maxRetry:_0x2d3013}=_0x43e6f9['body']||{},_0x6e35bf=_0x108121(_0x43e6f9),_0x2fc76c=_0x26e1e2[_0x11b96a(0x210)](_0x52207a),_0x337726=await _0x2fc76c['pin']({'resource':_0x20f684,'digits':_0x20e726,'ensureUnique':_0x595c3e,'ttl':_0x33a5b5,'maxRetry':_0x2d3013,'idempotencyKey':_0x6e35bf});return _0x240389[_0x11b96a(0x20f)](0xc9)[_0x11b96a(0x1e7)](createResponse(0xc9,_0x26e1e2[_0x11b96a(0x21b)],_0x337726));}catch(_0x538a94){return _0x26e1e2[_0x11b96a(0x1f1)](_0x4f9b64,_0x240389,_0x538a94,_0x26e1e2[_0x11b96a(0x1e2)]);}}),_0x5f1892['post']('/serial',async(_0x588746,_0x11261a)=>{const _0x4b223c=_0x2e63c1;try{const {resource:_0x960e,pattern:_0x469b37,ensureUnique:_0x2a3908,ttl:_0x5b04d5,maxRetry:_0xf8fab0}=_0x588746['body']||{},_0x5ce8a9=_0x26e1e2[_0x4b223c(0x1df)](_0x108121,_0x588746),_0x48c763=_0x52207a(),_0x2975a6=await _0x48c763['serial']({'resource':_0x960e,'pattern':_0x469b37,'ensureUnique':_0x2a3908,'ttl':_0x5b04d5,'maxRetry':_0xf8fab0,'idempotencyKey':_0x5ce8a9});return _0x11261a[_0x4b223c(0x20f)](0xc9)['json'](createResponse(0xc9,_0x26e1e2[_0x4b223c(0x204)],_0x2975a6));}catch(_0x423537){return _0x4f9b64(_0x11261a,_0x423537,_0x26e1e2['bLJBS']);}}),_0x5f1892[_0x2e63c1(0x1fb)](_0x2e63c1(0x1ed),async(_0x4985dd,_0x4d1741)=>{const _0x11ef79=_0x2e63c1;try{const {resource:_0x2ca33d,pattern:_0x1e4aa6,ensureUnique:_0x352d00,ttl:_0x50099a,maxRetry:_0x2607b6}=_0x4985dd['body']||{},_0x1114e3=_0x108121(_0x4985dd),_0x52326f=_0x52207a(),_0x2a937a=await _0x52326f[_0x11ef79(0x205)]({'resource':_0x2ca33d,'pattern':_0x1e4aa6,'ensureUnique':_0x352d00,'ttl':_0x50099a,'maxRetry':_0x2607b6,'idempotencyKey':_0x1114e3});return _0x4d1741[_0x11ef79(0x20f)](0xc9)['json'](createResponse(0xc9,_0x26e1e2['NauJL'],_0x2a937a));}catch(_0x359938){return _0x26e1e2[_0x11ef79(0x217)](_0x4f9b64,_0x4d1741,_0x359938,_0x26e1e2[_0x11ef79(0x203)]);}}),_0x5f1892[_0x2e63c1(0x1fb)](_0x26e1e2[_0x2e63c1(0x216)],async(_0x26a39a,_0x3bcf37)=>{const _0x124e5b=_0x2e63c1;try{const {resource:_0xc0347a,pattern:_0x38571c,ensureUnique:_0x463283,ttl:_0x648666,maxRetry:_0x1a23a4}=_0x26a39a[_0x124e5b(0x1d8)]||{},_0x11926d=_0x26e1e2['JIBTw'](_0x108121,_0x26a39a),_0x4a999c=_0x52207a(),_0x1449f6=await _0x4a999c[_0x124e5b(0x201)]({'resource':_0xc0347a,'pattern':_0x38571c,'ensureUnique':_0x463283,'ttl':_0x648666,'maxRetry':_0x1a23a4,'idempotencyKey':_0x11926d});return _0x3bcf37['status'](0xc9)['json'](createResponse(0xc9,_0x26e1e2[_0x124e5b(0x214)],_0x1449f6));}catch(_0x5e147c){return _0x4f9b64(_0x3bcf37,_0x5e147c,'idgen_route_random_error');}}),_0x5f1892['post'](_0x26e1e2[_0x2e63c1(0x1dc)],async(_0x250c52,_0x5dd0d7)=>{const _0x423ac2=_0x2e63c1;try{const {resource:_0x565ac6,value:_0x4dbbfb}=_0x250c52['body']||{},_0x526b31=_0x26e1e2['DYhLk'](_0x52207a),_0x2695ef=await _0x526b31[_0x423ac2(0x212)]({'resource':_0x565ac6,'value':_0x4dbbfb});return _0x5dd0d7[_0x423ac2(0x20f)](0xc8)['json'](_0x26e1e2['fvEIA'](createResponse,0xc8,_0x26e1e2['nryrb'],_0x2695ef));}catch(_0x2cfb88){return _0x26e1e2[_0x423ac2(0x20d)](_0x4f9b64,_0x5dd0d7,_0x2cfb88,'idgen_route_consume_error');}}),_0x5f1892['get'](_0x26e1e2['SQsSS'],async(_0x329aff,_0x324b47)=>{const _0x26ad9e=_0x2e63c1;try{const {resource:_0x43c56f}=_0x329aff['params'],{mode:_0x335976,format:_0x5aec93,prefix:_0x1c898c}=_0x329aff[_0x26ad9e(0x1e1)],_0x58823a=_0x52207a(),_0x206aaa=await _0x58823a[_0x26ad9e(0x1ee)]({'resource':_0x43c56f,'mode':_0x335976||_0x26ad9e(0x1f0),'format':_0x5aec93,'prefix':_0x1c898c});return _0x324b47['status'](0xc8)[_0x26ad9e(0x1e7)](_0x26e1e2['WsUdC'](createResponse,0xc8,'Resource\x20info\x20retrieved',_0x206aaa));}catch(_0x14de7c){return _0x26e1e2['WwYer'](_0x4f9b64,_0x324b47,_0x14de7c,_0x26e1e2['pMQin']);}}),_0x5f1892[_0x2e63c1(0x1fb)](_0x26e1e2['WJyzC'],async(_0x425bbd,_0x4c2767)=>{const _0x4c9ff4=_0x2e63c1;try{const {resource:_0x521e0a,mode:_0x428374,format:_0x1c95e0,prefix:_0x4b31b3}=_0x425bbd['body']||{},_0x34e00e=_0x52207a(),_0x2475ae=await _0x34e00e[_0x4c9ff4(0x1ea)]({'resource':_0x521e0a,'mode':_0x428374||_0x26e1e2['ERZnx'],'format':_0x1c95e0,'prefix':_0x4b31b3});return _0x4c2767['status'](0xc8)['json'](createResponse(0xc8,'Resource\x20state\x20reset',_0x2475ae));}catch(_0x4b2925){return _0x4f9b64(_0x4c2767,_0x4b2925,_0x4c9ff4(0x1e6));}}),_0x5f1892['get'](_0x2e63c1(0x207),async(_0x42d55e,_0x34352d)=>{const _0x5017f3=_0x2e63c1;try{const _0x54dee4=_0x52207a(),_0x5d72bd=_0x54dee4[_0x5017f3(0x225)]();let _0x5d727a=![],_0x4d5a73=null;try{_0x5d727a=await redisClient[_0x5017f3(0x1de)](0xbb8);}catch(_0x1503d2){_0x4d5a73=_0x1503d2[_0x5017f3(0x1ff)];}const _0x526909=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x5017f3(0x1f6),_0x56725f=_0x26e1e2[_0x5017f3(0x208)](process['env']['IDEMPOTENCY_ENABLED'],_0x26e1e2['IIFbz']);if(_0x26e1e2['BCynf'](!_0x5d72bd,!_0x5d727a))return _0x34352d['status'](0x1f7)['json'](_0x26e1e2[_0x5017f3(0x22c)](createError,0x1f7,_0x26e1e2['Wuwlo'],{'enabled':_0x5d72bd,'redisConnected':_0x5d727a,'lockEnabled':_0x526909,'idempotencyEnabled':_0x56725f,'error':_0x4d5a73||(!_0x5d72bd?_0x26e1e2['myDqg']:_0x5017f3(0x20b))}));return _0x34352d[_0x5017f3(0x20f)](0xc8)[_0x5017f3(0x1e7)](_0x26e1e2['gpxmE'](createResponse,0xc8,_0x26e1e2['VgyZH'],{'enabled':_0x5d72bd,'redisConnected':_0x5d727a,'lockEnabled':_0x526909,'idempotencyEnabled':_0x56725f}));}catch(_0x2d3db5){return _0x26e1e2['EYTtK'](_0x4f9b64,_0x34352d,_0x2d3db5,_0x5017f3(0x222));}}),_0x5f1892;}module['exports']=createIdgenRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x4bd970=a0_0x186d;(function(_0x15ecea,_0x428dce){const _0x437b9f=a0_0x186d,_0xf980f4=_0x15ecea();while(!![]){try{const _0xe63854=-parseInt(_0x437b9f(0xda))/0x1+-parseInt(_0x437b9f(0xe3))/0x2+-parseInt(_0x437b9f(0xcc))/0x3*(-parseInt(_0x437b9f(0xe1))/0x4)+parseInt(_0x437b9f(0xf1))/0x5*(-parseInt(_0x437b9f(0xc7))/0x6)+parseInt(_0x437b9f(0xe0))/0x7+-parseInt(_0x437b9f(0xf3))/0x8+-parseInt(_0x437b9f(0xd3))/0x9*(-parseInt(_0x437b9f(0xf0))/0xa);if(_0xe63854===_0x428dce)break;else _0xf980f4['push'](_0xf980f4['shift']());}catch(_0x12f1e8){_0xf980f4['push'](_0xf980f4['shift']());}}}(a0_0x2157,0xab674));const dbType=(process['env']['DB_TYPE']||'postgresql')['toLowerCase']();function a0_0x186d(_0x577fe1,_0x53cf28){_0x577fe1=_0x577fe1-0xc7;const _0x21574c=a0_0x2157();let _0x186db5=_0x21574c[_0x577fe1];if(a0_0x186d['casZGM']===undefined){var _0x185a36=function(_0x8d8d13){const _0x3dd79b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x21593a='',_0x3b0c37='';for(let _0x527ecd=0x0,_0xbda85c,_0x329a40,_0x2cd0f4=0x0;_0x329a40=_0x8d8d13['charAt'](_0x2cd0f4++);~_0x329a40&&(_0xbda85c=_0x527ecd%0x4?_0xbda85c*0x40+_0x329a40:_0x329a40,_0x527ecd++%0x4)?_0x21593a+=String['fromCharCode'](0xff&_0xbda85c>>(-0x2*_0x527ecd&0x6)):0x0){_0x329a40=_0x3dd79b['indexOf'](_0x329a40);}for(let _0xc51f01=0x0,_0x431ee5=_0x21593a['length'];_0xc51f01<_0x431ee5;_0xc51f01++){_0x3b0c37+='%'+('00'+_0x21593a['charCodeAt'](_0xc51f01)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b0c37);};a0_0x186d['kVufAX']=_0x185a36,a0_0x186d['DEqleq']={},a0_0x186d['casZGM']=!![];}const _0x1854d4=_0x21574c[0x0],_0x201ecb=_0x577fe1+_0x1854d4,_0x4ebe4c=a0_0x186d['DEqleq'][_0x201ecb];return!_0x4ebe4c?(_0x186db5=a0_0x186d['kVufAX'](_0x186db5),a0_0x186d['DEqleq'][_0x201ecb]=_0x186db5):_0x186db5=_0x4ebe4c,_0x186db5;}let executeQuery;if(dbType===a0_0x4bd970(0xe9)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x42f258,_0x5caf23)=>oracleDb['executeQuery'](_0x42f258,_0x5caf23);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x20be43,_0x553615)=>mysqlDb['executeQuery'](_0x20be43,_0x553615);}else executeQuery=require('../../core/utils/db')['executeQuery'];}const {logger}=require('../../core/utils/logger');function a0_0x2157(){const _0x307e95=['DgPdvgq','zxHWB3j0CW','mte3DunUD0LV','Bg9VA3vWq2fJAgu','ChvZAa','BwvZC2fNzq','Dg9vChbLCKnHC2u','ChjVy2vZC0XVB2T1CezPzwXKCW','DMfSAwrHDgvmB29RDxbwywX1zxm','nJyYmde2uM9otMX5','A2v5CW','Aw5MBW','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','Dg9mB3DLCKnHC2u','z2v0','mJKYnda0mfzLDhLQCq','odyXnM5qreD1DG','y2XLyxjdywnOzq','mtGXnJy1mNzfs2Pbua','tg9VA3vWihrHyMXLigXVywrLzdOG','tNb4DwG','BgvUz3rO','AgfZ','DwDer3a','B3jHy2XL','z2v0rgLZDgLUy3rwywX1zxm','vMfSDwuGiG','ywrK','DNzkt1u','C2v0','uvnMALC','mJmWnJC2mhL3zunPAa','mtCZnZa5nwTwywfjEG','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','odCYndiXnLDVDKvUvq','mtHNug5Lt3O','C2fSv24','DhjPBq','CMvZB2X2zuXVB2T1CfzHBhvL','tg9VA3vWignHy2HLignSzwfYzwq','mtm3n0TMBgTXsG','Bg9HzeXVB2T1CfrHyMXL','C2XPy2u','ENjyAM4','u0vmrunuia'];a0_0x2157=function(){return _0x307e95;};return a0_0x2157();}class LookupResolver{constructor(){const _0x31e4f7=a0_0x4bd970;this[_0x31e4f7(0xd4)]=new Map();}[a0_0x4bd970(0xe2)](){const _0x578166=a0_0x4bd970,_0x16b125={'Npxuh':_0x578166(0xcb)};this[_0x578166(0xd4)]['clear'](),logger['debug']({'event':_0x578166(0xf2)},_0x16b125[_0x578166(0xe5)]);}async[a0_0x4bd970(0xcd)](_0xe80daa,_0x4d6dd8,_0xd0bde4){const _0x231210=a0_0x4bd970,_0x3f7d67={'ugDGp':function(_0x348986,_0x4e3509){return _0x348986(_0x4e3509);},'zrXjn':'lookup_table_loaded','QSfjW':'lookup_table_load_error'},_0x60a271=_0xe80daa+':'+_0x4d6dd8+':'+_0xd0bde4;if(this['lookupCache'][_0x231210(0xe7)](_0x60a271))return this['lookupCache']['get'](_0x60a271);try{const _0x3465ba=_0x231210(0xd0)+_0xd0bde4+',\x20'+_0x4d6dd8+'\x20FROM\x20'+_0xe80daa,_0x60440e=await _0x3f7d67[_0x231210(0xe8)](executeQuery,_0x3465ba),_0x19db44=new Map();return _0x60440e['forEach'](_0x27ce73=>{const _0x461ddc=_0x231210,_0x2dc37a=_0x27ce73[_0x4d6dd8]!==undefined?_0x27ce73[_0x4d6dd8]:_0x27ce73[_0x4d6dd8[_0x461ddc(0xd7)]()],_0x5b212c=_0x27ce73[_0xd0bde4]!==undefined?_0x27ce73[_0xd0bde4]:_0x27ce73[_0xd0bde4['toUpperCase']()];_0x2dc37a!==null&&_0x2dc37a!==undefined&&(_0x19db44['set'](_0x3f7d67['ugDGp'](String,_0x2dc37a)[_0x461ddc(0xde)]()['trim'](),_0x5b212c),_0x19db44['set'](String(_0x2dc37a)['trim'](),_0x5b212c));}),this[_0x231210(0xd4)][_0x231210(0xee)](_0x60a271,_0x19db44),logger['info']({'event':_0x3f7d67[_0x231210(0xcf)],'table':_0xe80daa,'column':_0x4d6dd8,'count':_0x60440e[_0x231210(0xe6)]},_0x231210(0xe4)+_0xe80daa),_0x19db44;}catch(_0x2240f8){logger['error']({'event':_0x3f7d67[_0x231210(0xef)],'table':_0xe80daa,'error':_0x2240f8[_0x231210(0xd6)]},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0xe80daa);throw _0x2240f8;}}['resolveLookupValue'](_0x1e6694,_0xc35610){const _0x33c7c4=a0_0x4bd970,_0x3daf9c={'vvJOU':function(_0x1b50f4,_0x53be7a){return _0x1b50f4===_0x53be7a;}};if(_0x1e6694===null||_0x3daf9c[_0x33c7c4(0xed)](_0x1e6694,undefined)||_0x3daf9c[_0x33c7c4(0xed)](_0x1e6694,''))return null;const _0x4cc084=String(_0x1e6694)['trim']();if(_0xc35610['has'](_0x4cc084))return _0xc35610[_0x33c7c4(0xdf)](_0x4cc084);const _0x3756bd=_0x4cc084['toLowerCase']();if(_0xc35610[_0x33c7c4(0xe7)](_0x3756bd))return _0xc35610['get'](_0x3756bd);return null;}async[a0_0x4bd970(0xd8)](_0x4ed8d2,_0x4b0d62){const _0xcc32b1=a0_0x4bd970,_0x43f705={'tQSTc':function(_0x3949b4,_0x21a2f0){return _0x3949b4===_0x21a2f0;},'yfaOM':function(_0x28d242,_0x32b6a0){return _0x28d242===_0x32b6a0;},'tjCTd':'lookup_fields_processed','pfICH':'Lookup\x20fields\x20processed'};if(!_0x4b0d62||Object['keys'](_0x4b0d62)['length']===0x0)return{'processedRows':_0x4ed8d2,'errors':[]};const _0x1d13a2=[],_0xd5074=new Map();for(const [_0x2e1bd7,_0x50549f]of Object['entries'](_0x4b0d62)){const {lookupTable:_0xda5ccd,lookupColumn:_0x10207c,lookupIdColumn:_0x33e437}=_0x50549f,_0x48b41d=_0xda5ccd+':'+_0x10207c+':'+_0x33e437;if(!_0xd5074['has'](_0x48b41d)){const _0x2a4755=await this[_0xcc32b1(0xcd)](_0xda5ccd,_0x10207c,_0x33e437);_0xd5074['set'](_0x48b41d,_0x2a4755);}}const _0xfe34be=_0x4ed8d2['map']((_0x249dd4,_0x1de641)=>{const _0x11c8ab=_0xcc32b1,_0x4a47aa={..._0x249dd4};for(const [_0x284a5b,_0x440776]of Object['entries'](_0x4b0d62)){const {lookupTable:_0x562d54,lookupColumn:_0x174ebc,lookupIdColumn:_0xb5444b,targetField:_0x171468,required:_0x4a7368}=_0x440776,_0x3e631f=_0x562d54+':'+_0x174ebc+':'+_0xb5444b,_0x50fbb0=_0xd5074[_0x11c8ab(0xdf)](_0x3e631f),_0x2a9bc0=_0x249dd4[_0x284a5b];if((_0x2a9bc0===null||_0x43f705['tQSTc'](_0x2a9bc0,undefined)||_0x43f705['yfaOM'](_0x2a9bc0,''))&&!_0x4a7368){_0x4a47aa[_0x171468]=null;continue;}const _0x20ae57=this[_0x11c8ab(0xca)](_0x2a9bc0,_0x50fbb0);_0x20ae57!==null?_0x4a47aa[_0x171468]=_0x20ae57:(_0x4a7368&&_0x1d13a2[_0x11c8ab(0xd5)]({'rowIndex':_0x1de641,'field':_0x284a5b,'value':_0x2a9bc0,'targetField':_0x171468,'lookupTable':_0x562d54,'message':_0x11c8ab(0xeb)+_0x2a9bc0+'\x22\x20not\x20found\x20in\x20'+_0x562d54}),_0x4a47aa[_0x171468]=null);}return _0x4a47aa;});return logger[_0xcc32b1(0xdc)]({'event':_0x43f705[_0xcc32b1(0xd1)],'totalRows':_0x4ed8d2[_0xcc32b1(0xe6)],'errorCount':_0x1d13a2[_0xcc32b1(0xe6)],'lookupFieldCount':Object[_0xcc32b1(0xdb)](_0x4b0d62)['length']},_0x43f705['pfICH']),{'processedRows':_0xfe34be,'errors':_0x1d13a2};}[a0_0x4bd970(0xea)](_0x2b31d7,_0x40bcbc){const _0xa788fb={'VvFpz':function(_0x3138a2,_0x1662cd){return _0x3138a2!==_0x1662cd;},'salWn':function(_0x2e7d48,_0x2b7750){return _0x2e7d48(_0x2b7750);}},_0x456be8=new Set();return _0x2b31d7['forEach'](_0x4b660c=>{const _0x222a70=a0_0x186d,_0x510fd1=_0x4b660c[_0x40bcbc];_0xa788fb['VvFpz'](_0x510fd1,null)&&_0x510fd1!==undefined&&_0x510fd1!==''&&_0x456be8[_0x222a70(0xec)](_0xa788fb[_0x222a70(0xc8)](String,_0x510fd1)[_0x222a70(0xc9)]());}),Array['from'](_0x456be8);}async[a0_0x4bd970(0xd9)](_0x41f20c,_0x1ce54c){const _0x1a8660=a0_0x4bd970,_0x51a203={'hWldX':function(_0x1eb655,_0x24f243){return _0x1eb655===_0x24f243;},'eycNM':function(_0x47fc8e,_0x17eaa3){return _0x47fc8e>_0x17eaa3;}};if(!_0x1ce54c||_0x51a203['hWldX'](Object[_0x1a8660(0xdb)](_0x1ce54c)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x54f7c3=[],_0x15b68c={};for(const [_0x500e58,_0xbe5c13]of Object['entries'](_0x1ce54c)){const {lookupTable:_0x21e87a,lookupColumn:_0x1ad972,lookupIdColumn:_0x3af39b,required:_0x18f579}=_0xbe5c13,_0x1fedb3=this['getDistinctValues'](_0x41f20c,_0x500e58),_0x5f2d41=await this['loadLookupTable'](_0x21e87a,_0x1ad972,_0x3af39b),_0x55d132=[],_0x1e82b3=[];_0x1fedb3['forEach'](_0x270df1=>{const _0x29b84e=this['resolveLookupValue'](_0x270df1,_0x5f2d41);_0x29b84e!==null?_0x1e82b3['push'](_0x270df1):_0x55d132['push'](_0x270df1);});if(_0x51a203['eycNM'](_0x55d132['length'],0x0)&&_0x18f579){_0x54f7c3[_0x1a8660(0xd5)]({'field':_0x500e58,'lookupTable':_0x21e87a,'invalidValues':_0x55d132,'message':_0x55d132[_0x1a8660(0xe6)]+_0x1a8660(0xdd)+_0x21e87a});const _0x57ef86=[];_0x5f2d41['forEach']((_0x9cbbaa,_0x2e0dd8)=>{const _0x136d97=_0x1a8660;if(_0x2e0dd8===_0x2e0dd8['toLowerCase']())return;_0x57ef86[_0x136d97(0xd5)](_0x2e0dd8);}),_0x15b68c[_0x500e58]={'invalidValues':_0x55d132,'availableValues':_0x57ef86[_0x1a8660(0xce)](0x0,0x32)};}}return{'valid':_0x54f7c3['length']===0x0,'errors':_0x54f7c3,'suggestions':_0x15b68c};}}module[a0_0x4bd970(0xd2)]=new LookupResolver();
|