3
3
* Copyright © Magento, Inc. All rights reserved.
4
4
* See COPYING.txt for license details.
5
5
*/
6
+ declare (strict_types=1 );
7
+
6
8
namespace Magento \Sales \Controller \Adminhtml \Order \Create ;
7
9
8
10
use Magento \Backend \App \Action ;
11
+ use Magento \Backend \Model \View \Result \Forward ;
9
12
use Magento \Backend \Model \View \Result \ForwardFactory ;
13
+ use Magento \Backend \Model \View \Result \Redirect ;
14
+ use Magento \Catalog \Helper \Product ;
15
+ use Magento \Framework \Escaper ;
10
16
use Magento \Framework \View \Result \PageFactory ;
11
- use Magento \Sales \Model \Order \Reorder \UnavailableProductsProvider ;
12
17
use Magento \Sales \Api \OrderRepositoryInterface ;
18
+ use Magento \Sales \Controller \Adminhtml \Order \Create ;
13
19
use Magento \Sales \Helper \Reorder as ReorderHelper ;
20
+ use Magento \Sales \Model \Order ;
21
+ use Magento \Sales \Model \Order \Reorder \UnavailableProductsProvider ;
22
+ use Magento \Framework \App \Action \HttpPostActionInterface ;
14
23
15
- class Reorder extends \Magento \Sales \Controller \Adminhtml \Order \Create
24
+ /**
25
+ * Controller create order.
26
+ */
27
+ class Reorder extends Create implements HttpPostActionInterface
16
28
{
17
29
/**
18
30
* @var UnavailableProductsProvider
@@ -31,8 +43,8 @@ class Reorder extends \Magento\Sales\Controller\Adminhtml\Order\Create
31
43
32
44
/**
33
45
* @param Action\Context $context
34
- * @param \Magento\Catalog\Helper\ Product $productHelper
35
- * @param \Magento\Framework\ Escaper $escaper
46
+ * @param Product $productHelper
47
+ * @param Escaper $escaper
36
48
* @param PageFactory $resultPageFactory
37
49
* @param ForwardFactory $resultForwardFactory
38
50
* @param UnavailableProductsProvider $unavailableProductsProvider
@@ -41,8 +53,8 @@ class Reorder extends \Magento\Sales\Controller\Adminhtml\Order\Create
41
53
*/
42
54
public function __construct (
43
55
Action \Context $ context ,
44
- \ Magento \ Catalog \ Helper \ Product $ productHelper ,
45
- \ Magento \ Framework \ Escaper $ escaper ,
56
+ Product $ productHelper ,
57
+ Escaper $ escaper ,
46
58
PageFactory $ resultPageFactory ,
47
59
ForwardFactory $ resultForwardFactory ,
48
60
UnavailableProductsProvider $ unavailableProductsProvider ,
@@ -62,19 +74,21 @@ public function __construct(
62
74
}
63
75
64
76
/**
65
- * @return \Magento\Backend\Model\View\Result\Forward|\Magento\Backend\Model\View\Result\Redirect
77
+ * Adminhtml controller create order.
78
+ *
79
+ * @return Forward|Redirect
66
80
*/
67
81
public function execute ()
68
82
{
69
83
$ this ->_getSession ()->clearStorage ();
70
84
$ orderId = $ this ->getRequest ()->getParam ('order_id ' );
71
- /** @var \Magento\Sales\Model\ Order $order */
85
+ /** @var Order $order */
72
86
$ order = $ this ->orderRepository ->get ($ orderId );
73
87
if (!$ this ->reorderHelper ->canReorder ($ order ->getEntityId ())) {
74
88
return $ this ->resultForwardFactory ->create ()->forward ('noroute ' );
75
89
}
76
90
77
- /** @var \Magento\Backend\Model\View\Result\ Redirect $resultRedirect */
91
+ /** @var Redirect $resultRedirect */
78
92
$ resultRedirect = $ this ->resultRedirectFactory ->create ();
79
93
if (!$ order ->getId ()) {
80
94
$ resultRedirect ->setPath ('sales/order/ ' );
@@ -90,7 +104,7 @@ public function execute()
90
104
}
91
105
$ resultRedirect ->setPath ('sales/order/view ' , ['order_id ' => $ orderId ]);
92
106
} else {
93
- try {
107
+ try {
94
108
$ order ->setReordered (true );
95
109
$ this ->_getSession ()->setUseOldShippingMethod (true );
96
110
$ this ->_getOrderCreateModel ()->initFromOrder ($ order );
0 commit comments