Skip to content

Commit 8bf88ec

Browse files
committed
Merge remote-tracking branch 'origin/MC-14895' into 2.2.8-develop-pr79
2 parents 0ed384d + f92ea56 commit 8bf88ec

File tree

2 files changed

+11
-8
lines changed
  • app/code/Magento/Sales

2 files changed

+11
-8
lines changed

app/code/Magento/Sales/Model/ResourceModel/Order/Handler/State.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
use Magento\Sales\Model\Order;
1010

1111
/**
12-
* Class to check order State.
12+
* Class to check and adjust order state/status.
1313
*/
1414
class State
1515
{
@@ -31,7 +31,10 @@ public function check(Order $order)
3131
}
3232

3333
if (!$order->isCanceled() && !$order->canUnhold() && !$order->canInvoice()) {
34-
if (in_array($currentState, [Order::STATE_PROCESSING, Order::STATE_COMPLETE]) && !$order->canCreditmemo()) {
34+
if (in_array($currentState, [Order::STATE_PROCESSING, Order::STATE_COMPLETE])
35+
&& !$order->canCreditmemo()
36+
&& !$order->canShip()
37+
) {
3538
$order->setState(Order::STATE_CLOSED)
3639
->setStatus($order->getConfig()->getStateDefaultStatus(Order::STATE_CLOSED));
3740
} elseif ($currentState === Order::STATE_PROCESSING && !$order->canShip()) {

app/code/Magento/Sales/Test/Unit/Model/ResourceModel/Order/Handler/StateTest.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -118,13 +118,13 @@ public function stateCheckDataProvider(): array
118118
{
119119
return [
120120
'processing - !canCreditmemo!canShip -> closed' =>
121-
[false, 1, false, 0, Order::STATE_PROCESSING, Order::STATE_CLOSED],
121+
[false, 1, false, 1, Order::STATE_PROCESSING, Order::STATE_CLOSED],
122122
'complete - !canCreditmemo,!canShip -> closed' =>
123-
[false, 1, false, 0, Order::STATE_COMPLETE, Order::STATE_CLOSED],
124-
'processing - !canCreditmemo,canShip -> closed' =>
125-
[false, 1, true, 0, Order::STATE_PROCESSING, Order::STATE_CLOSED],
126-
'complete - !canCreditmemo,canShip -> closed' =>
127-
[false, 1, true, 0, Order::STATE_COMPLETE, Order::STATE_CLOSED],
123+
[false, 1, false, 1, Order::STATE_COMPLETE, Order::STATE_CLOSED],
124+
'processing - !canCreditmemo,canShip -> processing' =>
125+
[false, 1, true, 2, Order::STATE_PROCESSING, Order::STATE_PROCESSING],
126+
'complete - !canCreditmemo,canShip -> complete' =>
127+
[false, 1, true, 1, Order::STATE_COMPLETE, Order::STATE_COMPLETE],
128128
'processing - canCreditmemo,!canShip -> complete' =>
129129
[true, 1, false, 1, Order::STATE_PROCESSING, Order::STATE_COMPLETE],
130130
'complete - canCreditmemo,!canShip -> complete' =>

0 commit comments

Comments
 (0)