From 691c945eb245874ee367ca76ebce8903f3a128c6 Mon Sep 17 00:00:00 2001 From: s j <sj@1729.be> Date: Mon, 22 Aug 2022 13:23:04 +0000 Subject: [PATCH] fix: i7238 verschoven proefpakket wordt nogmaals aangerekend --- commerce_foodbox.module | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/commerce_foodbox.module b/commerce_foodbox.module index 31f5124..ba974d5 100644 --- a/commerce_foodbox.module +++ b/commerce_foodbox.module @@ -565,7 +565,13 @@ function commerce_foodbox_book_subscription_adjustment_alter(&$data) { $data['debit_account'] = \Drupal::config('commerce_foodbox.settings')->get('loss_account'); } elseif ($adjustment->bundle() == 'verschuiving') { - $data['credit_account'] = $s->getPostponedOrdersAccount($adjustment->get('subscription')->entity->get('uid')->entity)->id(); + if ($adjustment->get('subscription')->entity->get('recurrences')->value > 0) { + $data['debit_account'] = $s->getTrialSubscriptionAccount($adjustment->get('subscription')->entity); + $data['credit_account'] = $s->getPostponedOrdersAccount($adjustment->get('subscription')->entity->get('uid')->entity)->id(); + } + else { + $data['credit_account'] = $s->getPostponedOrdersAccount($adjustment->get('subscription')->entity->get('uid')->entity)->id(); + } } elseif ($adjustment->bundle() == 'annulatie_krediet') { $data['credit_account'] = $s->getCustomerCreditAccount($adjustment->get('subscription')->entity->get('uid')->entity)->id(); @@ -784,22 +790,20 @@ function commerce_foodbox_commerce_order_debit_account_alter(&$data) { $order_period = $order->get('order_period')->value; if ($subscription) { - if ($subscription->get('recurrences')->value > 0) { + // FIXME: only if prepayment exists. + if ($order->get('subscription_adjustment')->entity && + $order->get('subscription_adjustment')->entity->bundle() == 'verschuiving') { + $s2 = \Drupal::service('commerce_foodbox.default'); + $data['account'] = $s2->getPostponedOrdersAccount($order->getCustomer()); + } + elseif ($subscription->get('recurrences')->value > 0) { // Trial subscriptions. $s2 = \Drupal::service('commerce_foodbox.default'); $data['account'] = $s2->getTrialSubscriptionAccount($subscription); } - else { - // FIXME: only if prepayment exists. - if ($order->get('subscription_adjustment')->entity && - $order->get('subscription_adjustment')->entity->bundle() == 'verschuiving') { - $s2 = \Drupal::service('commerce_foodbox.default'); - $data['account'] = $s2->getPostponedOrdersAccount($order->getCustomer()); - } - elseif (!$subscription->get('no_prepayment')->value) { - $s2 = \Drupal::service('commerce_foodbox.default'); - $data['account'] = $s2->getPrepaymentAccount($order->getCustomer()); - } + elseif (!$subscription->get('no_prepayment')->value) { + $s2 = \Drupal::service('commerce_foodbox.default'); + $data['account'] = $s2->getPrepaymentAccount($order->getCustomer()); } } } -- GitLab