mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-20 15:31:13 -05:00
Fix 'Operator is Owner' bug
This commit is contained in:
@@ -209,10 +209,16 @@ export function ParkForm({ onSubmit, onCancel, initialData, isEditing = false }:
|
||||
if (tempNewOperator) {
|
||||
submissionContent.new_operator = tempNewOperator;
|
||||
submissionContent.park.operator_id = null;
|
||||
|
||||
// If operator is also owner, use same entity for both
|
||||
if (operatorIsOwner) {
|
||||
submissionContent.new_property_owner = tempNewOperator;
|
||||
submissionContent.park.property_owner_id = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Add new property owner if created
|
||||
if (tempNewPropertyOwner) {
|
||||
// Add new property owner if created (and not already set above)
|
||||
if (tempNewPropertyOwner && !operatorIsOwner) {
|
||||
submissionContent.new_property_owner = tempNewPropertyOwner;
|
||||
submissionContent.park.property_owner_id = null;
|
||||
}
|
||||
|
||||
@@ -294,7 +294,14 @@ async function submitCompositeCreation(
|
||||
}
|
||||
if (uploadedPrimary.data.property_owner_id?.startsWith('temp-')) {
|
||||
const ownerIndex = tempIdMap.get('temp-property-owner');
|
||||
if (ownerIndex !== undefined) primaryData._temp_property_owner_ref = ownerIndex;
|
||||
const operatorIndex = tempIdMap.get('temp-operator');
|
||||
|
||||
if (ownerIndex !== undefined) {
|
||||
primaryData._temp_property_owner_ref = ownerIndex;
|
||||
} else if (operatorIndex !== undefined) {
|
||||
// Property owner references operator (operator is owner scenario)
|
||||
primaryData._temp_property_owner_ref = operatorIndex;
|
||||
}
|
||||
delete primaryData.property_owner_id;
|
||||
}
|
||||
} else if (uploadedPrimary.type === 'ride') {
|
||||
@@ -367,6 +374,12 @@ export async function submitParkCreation(
|
||||
if (data._compositeSubmission) {
|
||||
const dependencies: CompositeSubmissionDependency[] = [];
|
||||
|
||||
// Check if operator and owner are the same new entity
|
||||
const operatorIsOwner =
|
||||
data._compositeSubmission.new_operator &&
|
||||
data._compositeSubmission.new_property_owner &&
|
||||
data._compositeSubmission.new_operator === data._compositeSubmission.new_property_owner;
|
||||
|
||||
if (data._compositeSubmission.new_operator) {
|
||||
dependencies.push({
|
||||
type: 'company',
|
||||
@@ -376,7 +389,8 @@ export async function submitParkCreation(
|
||||
});
|
||||
}
|
||||
|
||||
if (data._compositeSubmission.new_property_owner) {
|
||||
// Only add separate property owner if different from operator
|
||||
if (data._compositeSubmission.new_property_owner && !operatorIsOwner) {
|
||||
dependencies.push({
|
||||
type: 'company',
|
||||
data: { ...data._compositeSubmission.new_property_owner, company_type: 'property_owner' },
|
||||
|
||||
Reference in New Issue
Block a user