Checkout: Partnerprovision nur mit aktivem Sponsor buchen (Klammer-Fix)

Bisher wurde durch fehlende geschweifte Klammern net_partner_commission
auch dann gesetzt, wenn der Sponsor inaktiv war - dann ohne m_sponsor_id.
Ergebnis: eine Provision ohne Empfaenger, die nie ausgezahlt wird
(getPartnerCommissionItems sucht ueber m_sponsor_id) und Auswertungen
verfaelschen kann. Jetzt werden m_sponsor_id und net_partner_commission
gemeinsam nur bei aktivem Sponsor gebucht.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Kevin Adametz 2026-09-14 07:53:45 +00:00
parent 7bae455539
commit 2482d073a1

View file

@ -227,10 +227,11 @@ class CheckoutRepository {
]; ];
if($userMargin->yard_margin->net_partner_commission > 0){ if($userMargin->yard_margin->net_partner_commission > 0){
if(isset($shopping_order->auth_user->m_sponsor)){ if(isset($shopping_order->auth_user->m_sponsor)){
if($shopping_order->auth_user->user_sponsor && $shopping_order->auth_user->user_sponsor->isActiveAccount()) if($shopping_order->auth_user->user_sponsor && $shopping_order->auth_user->user_sponsor->isActiveAccount()){
$data['m_sponsor_id'] = $shopping_order->auth_user->m_sponsor; $data['m_sponsor_id'] = $shopping_order->auth_user->m_sponsor;
$data['net_partner_commission'] = $userMargin->yard_margin->net_partner_commission; $data['net_partner_commission'] = $userMargin->yard_margin->net_partner_commission;
} }
}
} }
$shopping_order_margin = false; $shopping_order_margin = false;
if ($this->getPayments('shopping_order_margin_id')) { if ($this->getPayments('shopping_order_margin_id')) {