// shopware-overwrite: new foreach
foreach ($assoc['joinColumns'
] as $joinColumn) { $sourceColumn =
$joinColumn['name'
];
$targetColumn =
$joinColumn['referencedColumnName'
];
$quotedColumn =
$this->quoteStrategy->
getJoinColumnName($joinColumn,
$this->class,
$this->platform
);
$restoreVal =
$result[$owningTable][$sourceColumn] ?? null;
$this->quotedColumns
[$sourceColumn] =
$quotedColumn;
$this->columnTypes
[$sourceColumn] = PersisterHelper::
getTypeOfColumn($targetColumn,
$targetClass,
$this->em
);
// allow non primary keys as foreign-key target
$isDefault =
isset($newValId[$targetClass->fieldNames
[$targetColumn]]);
$result[$owningTable][$sourceColumn] =
$isDefault ?
$newValId[$targetClass->
getFieldForColumn($targetColumn)] : null;
// Set data to result set, only if no exits.
$skipValue = false;
$value = null;
switch (true
) {