Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
module-sales
Model
Order
Validation
InvoiceOrder.php
Go to the documentation of this file.
1
<?php
6
namespace
Magento\Sales\Model\Order\Validation
;
7
8
use
Magento\Sales\Api\Data\InvoiceCommentCreationInterface
;
9
use
Magento\Sales\Api\Data\InvoiceCreationArgumentsInterface
;
10
use
Magento\Sales\Api\Data\InvoiceInterface
;
11
use
Magento\Sales\Api\Data\OrderInterface
;
12
use
Magento\Sales\Model\Order\Invoice\InvoiceValidatorInterface
;
13
use
Magento\Sales\Model\Order\InvoiceQuantityValidator
;
14
use
Magento\Sales\Model\Order\OrderValidatorInterface
;
15
use
Magento\Sales\Model\ValidatorResultInterface
;
16
use
Magento\Sales\Model\ValidatorResultMerger
;
17
22
class
InvoiceOrder
implements
InvoiceOrderInterface
23
{
27
private
$invoiceValidator;
28
32
private
$orderValidator;
33
37
private
$validatorResultMerger;
38
45
public
function
__construct
(
46
InvoiceValidatorInterface
$invoiceValidator,
47
OrderValidatorInterface
$orderValidator,
48
ValidatorResultMerger
$validatorResultMerger
49
) {
50
$this->invoiceValidator = $invoiceValidator;
51
$this->orderValidator = $orderValidator;
52
$this->validatorResultMerger = $validatorResultMerger;
53
}
54
58
public
function
validate
(
59
OrderInterface
$order
,
60
InvoiceInterface
$invoice
,
61
$capture =
false
,
62
array
$items
= [],
63
$notify =
false
,
64
$appendComment =
false
,
65
InvoiceCommentCreationInterface
$comment =
null
,
66
InvoiceCreationArgumentsInterface
$arguments
=
null
67
) {
68
return
$this->validatorResultMerger->merge(
69
$this->invoiceValidator->validate(
70
$invoice
,
71
[InvoiceQuantityValidator::class]
72
),
73
$this->orderValidator->validate(
74
$order
,
75
[CanInvoice::class]
76
)
77
);
78
}
79
}
Magento\Sales\Model\Order\Validation\InvoiceOrderInterface
Definition:
InvoiceOrderInterface.php:20
Magento\Sales\Api\Data\InvoiceInterface
Definition:
InvoiceInterface.php:15
$order
$order
Definition:
order.php:55
Magento\Sales\Model\Order\Validation
Definition:
CanInvoice.php:6
Magento\Sales\Api\Data\OrderInterface
Definition:
OrderInterface.php:17
Magento\Sales\Model\Order\Invoice\InvoiceValidatorInterface
Definition:
InvoiceValidatorInterface.php:16
Magento\Sales\Model\Order\OrderValidatorInterface
Definition:
OrderValidatorInterface.php:16
Magento\Sales\Model\Order\Validation\InvoiceOrder\__construct
__construct(InvoiceValidatorInterface $invoiceValidator, OrderValidatorInterface $orderValidator, ValidatorResultMerger $validatorResultMerger)
Definition:
InvoiceOrder.php:45
Magento\Sales\Model\Order\Validation\InvoiceOrder
Definition:
InvoiceOrder.php:22
$invoice
$invoice
Definition:
partial_invoice.php:22
Magento\Sales\Model\Order\Validation\InvoiceOrder\validate
validate(OrderInterface $order, InvoiceInterface $invoice, $capture=false, array $items=[], $notify=false, $appendComment=false, InvoiceCommentCreationInterface $comment=null, InvoiceCreationArgumentsInterface $arguments=null)
Definition:
InvoiceOrder.php:58
Magento\Sales\Model\ValidatorResultMerger
Definition:
ValidatorResultMerger.php:11
$arguments
$arguments
Definition:
final_price.phtml:24
Magento\Sales\Model\Order\InvoiceQuantityValidator
Definition:
InvoiceQuantityValidator.php:18
Magento\Sales\Api\Data\InvoiceCommentCreationInterface
Definition:
InvoiceCommentCreationInterface.php:17
Magento\Sales\Model\ValidatorResultInterface
Definition:
ValidatorResultInterface.php:13
Magento\Sales\Api\Data\InvoiceCreationArgumentsInterface
Definition:
InvoiceCreationArgumentsInterface.php:14
$items
$items
Definition:
order_rollback.php:21