28 private $orderValidator;
33 private $creditmemoValidator;
38 private $itemCreationValidator;
43 private $invoiceValidator;
48 private $validatorResultMerger;
65 $this->orderValidator = $orderValidator;
66 $this->creditmemoValidator = $creditmemoValidator;
67 $this->itemCreationValidator = $itemCreationValidator;
68 $this->invoiceValidator = $invoiceValidator;
69 $this->validatorResultMerger = $validatorResultMerger;
82 $appendComment =
false,
83 \
Magento\Sales\Api\
Data\CreditmemoCommentCreationInterface $comment =
null,
86 $orderValidationResult = $this->orderValidator->validate(
92 $creditmemoValidationResult = $this->creditmemoValidator->validate(
95 QuantityValidator::class,
96 TotalsValidator::class
100 $itemsValidation = [];
102 $itemsValidation[] = $this->itemCreationValidator->validate(
104 [CreationQuantityValidator::class],
109 $invoiceValidationResult = $this->invoiceValidator->validate(
116 return $this->validatorResultMerger->merge(
117 $orderValidationResult,
118 $creditmemoValidationResult,
119 $invoiceValidationResult->getMessages(),
validate(InvoiceInterface $invoice, OrderInterface $order, CreditmemoInterface $creditmemo, array $items=[], $isOnline=false, $notify=false, $appendComment=false, \Magento\Sales\Api\Data\CreditmemoCommentCreationInterface $comment=null, \Magento\Sales\Api\Data\CreditmemoCreationArgumentsInterface $arguments=null)
__construct(OrderValidatorInterface $orderValidator, CreditmemoValidatorInterface $creditmemoValidator, ItemCreationValidatorInterface $itemCreationValidator, InvoiceValidatorInterface $invoiceValidator, ValidatorResultMerger $validatorResultMerger)