| @@ 491-499 (lines=9) @@ | ||
| 488 | break; |
|
| 489 | } |
|
| 490 | } |
|
| 491 | if ($allShipped) { |
|
| 492 | if ($this->orderStateMachine->can($Order, $OrderStatus)) { |
|
| 493 | $this->orderStateMachine->apply($Order, $OrderStatus); |
|
| 494 | } else { |
|
| 495 | $from = $Order->getOrderStatus()->getName(); |
|
| 496 | $to = $OrderStatus->getName(); |
|
| 497 | $result = ['message' => sprintf('%s: %s から %s へのステータス変更はできません', $Shipping->getId(), $from, $to)]; |
|
| 498 | } |
|
| 499 | } |
|
| 500 | } else { |
|
| 501 | if ($this->orderStateMachine->can($Order, $OrderStatus)) { |
|
| 502 | $this->orderStateMachine->apply($Order, $OrderStatus); |
|
| @@ 500-508 (lines=9) @@ | ||
| 497 | $result = ['message' => sprintf('%s: %s から %s へのステータス変更はできません', $Shipping->getId(), $from, $to)]; |
|
| 498 | } |
|
| 499 | } |
|
| 500 | } else { |
|
| 501 | if ($this->orderStateMachine->can($Order, $OrderStatus)) { |
|
| 502 | $this->orderStateMachine->apply($Order, $OrderStatus); |
|
| 503 | } else { |
|
| 504 | $from = $Order->getOrderStatus()->getName(); |
|
| 505 | $to = $OrderStatus->getName(); |
|
| 506 | $result = ['message' => sprintf('%s: %s から %s へのステータス変更はできません', $Shipping->getId(), $from, $to)]; |
|
| 507 | } |
|
| 508 | } |
|
| 509 | $this->entityManager->flush($Order); |
|
| 510 | ||
| 511 | // 会員の場合、購入回数、購入金額などを更新 |
|
| @@ 166-176 (lines=11) @@ | ||
| 163 | } |
|
| 164 | } |
|
| 165 | $OrderStatus = $this->entityManager->find(OrderStatus::class, OrderStatus::DELIVERED); |
|
| 166 | if ($allShipped) { |
|
| 167 | // XXX 先行の行で OrderStateMachine が OrderStatus::id を変更している場合があるので refresh する |
|
| 168 | $this->entityManager->refresh($Order); |
|
| 169 | if ($this->orderStateMachine->can($Order, $OrderStatus)) { |
|
| 170 | $this->orderStateMachine->apply($Order, $OrderStatus); |
|
| 171 | } else { |
|
| 172 | $from = $Order->getOrderStatus()->getName(); |
|
| 173 | $to = $OrderStatus->getName(); |
|
| 174 | $errors[] = sprintf('%s: %s から %s へステータス変更できませんでした', $Shipping->getId(), $from, $to); |
|
| 175 | } |
|
| 176 | } |
|
| 177 | } |
|
| 178 | } |
|
| 179 | ||