mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-21 06:51:12 -05:00
Refactor composite submission logic
This commit is contained in:
@@ -921,6 +921,17 @@ function resolveDependencies(data: any, dependencyMap: Map<string, string>, sort
|
||||
];
|
||||
|
||||
// Resolve temporary references using sortedItems array (FIXED)
|
||||
if (resolved._temp_park_ref !== undefined) {
|
||||
const refIndex = resolved._temp_park_ref;
|
||||
if (refIndex >= 0 && refIndex < sortedItems.length) {
|
||||
const refItemId = sortedItems[refIndex].id;
|
||||
if (dependencyMap.has(refItemId)) {
|
||||
resolved.park_id = dependencyMap.get(refItemId);
|
||||
}
|
||||
}
|
||||
delete resolved._temp_park_ref;
|
||||
}
|
||||
|
||||
if (resolved._temp_manufacturer_ref !== undefined) {
|
||||
const refIndex = resolved._temp_manufacturer_ref;
|
||||
if (refIndex >= 0 && refIndex < sortedItems.length) {
|
||||
@@ -932,6 +943,17 @@ function resolveDependencies(data: any, dependencyMap: Map<string, string>, sort
|
||||
delete resolved._temp_manufacturer_ref;
|
||||
}
|
||||
|
||||
if (resolved._temp_designer_ref !== undefined) {
|
||||
const refIndex = resolved._temp_designer_ref;
|
||||
if (refIndex >= 0 && refIndex < sortedItems.length) {
|
||||
const refItemId = sortedItems[refIndex].id;
|
||||
if (dependencyMap.has(refItemId)) {
|
||||
resolved.designer_id = dependencyMap.get(refItemId);
|
||||
}
|
||||
}
|
||||
delete resolved._temp_designer_ref;
|
||||
}
|
||||
|
||||
if (resolved._temp_operator_ref !== undefined) {
|
||||
const refIndex = resolved._temp_operator_ref;
|
||||
if (refIndex >= 0 && refIndex < sortedItems.length) {
|
||||
@@ -965,17 +987,6 @@ function resolveDependencies(data: any, dependencyMap: Map<string, string>, sort
|
||||
delete resolved._temp_ride_model_ref;
|
||||
}
|
||||
|
||||
if (resolved._temp_designer_ref !== undefined) {
|
||||
const refIndex = resolved._temp_designer_ref;
|
||||
if (refIndex >= 0 && refIndex < sortedItems.length) {
|
||||
const refItemId = sortedItems[refIndex].id;
|
||||
if (dependencyMap.has(refItemId)) {
|
||||
resolved.designer_id = dependencyMap.get(refItemId);
|
||||
}
|
||||
}
|
||||
delete resolved._temp_designer_ref;
|
||||
}
|
||||
|
||||
// Resolve each foreign key if it's a submission item ID
|
||||
for (const key of foreignKeys) {
|
||||
if (resolved[key] && dependencyMap.has(resolved[key])) {
|
||||
|
||||
Reference in New Issue
Block a user