Make product structure sync use product export
All checks were successful
Build and Deploy / build-and-push (push) Successful in 1m23s
All checks were successful
Build and Deploy / build-and-push (push) Successful in 1m23s
This commit is contained in:
16
src/index.ts
16
src/index.ts
@@ -10,6 +10,18 @@ dotenv.config();
|
||||
const app: Express = express();
|
||||
const port = process.env.PORT || 3000;
|
||||
|
||||
function deriveProductionOrdersUrl(env: NodeJS.ProcessEnv) {
|
||||
const raw = env.GRAPHS_API_URL || env.NEXSTAR_GRAPHS_API_URL || '';
|
||||
if (!raw) return null;
|
||||
|
||||
try {
|
||||
const parsed = new URL(raw);
|
||||
return `${parsed.origin}/api/production-orders/tiny-sync`;
|
||||
} catch {
|
||||
return raw.replace(/\/api\/data.*$/, '/api/production-orders/tiny-sync');
|
||||
}
|
||||
}
|
||||
|
||||
app.use(express.json());
|
||||
app.use(express.urlencoded({ extended: true }));
|
||||
|
||||
@@ -228,8 +240,8 @@ app.get('/api/trigger-product-structures-sync', (req: Request, res: Response) =>
|
||||
options: {
|
||||
skus: env.PRODUCT_STRUCTURE_SKUS || null,
|
||||
productIds: env.PRODUCT_STRUCTURE_PRODUCT_IDS || null,
|
||||
inputFile: env.PRODUCT_STRUCTURES_INPUT_FILE || null,
|
||||
graphsUrl: env.PRODUCT_STRUCTURES_GRAPHS_API_URL || env.PRODUCTION_ORDERS_GRAPHS_API_URL || env.GRAPHS_PRODUCTION_ORDERS_API_URL || null,
|
||||
inputFile: env.PRODUCT_STRUCTURES_INPUT_FILE || '/app/data/product-structure-products.csv',
|
||||
graphsUrl: env.PRODUCT_STRUCTURES_GRAPHS_API_URL || env.PRODUCTION_ORDERS_GRAPHS_API_URL || env.GRAPHS_PRODUCTION_ORDERS_API_URL || deriveProductionOrdersUrl(env),
|
||||
dryRun: env.PRODUCT_STRUCTURES_DRY_RUN || 'false',
|
||||
maxProducts: env.PRODUCT_STRUCTURES_MAX_PRODUCTS || null,
|
||||
requestDelayMs: env.PRODUCT_STRUCTURES_REQUEST_DELAY_MS || '2500',
|
||||
|
||||
Reference in New Issue
Block a user