26 private $orderValidator;
31 private $creditmemoValidator;
36 private $itemCreationValidator;
41 private $validatorResultMerger;
57 $this->orderValidator = $orderValidator;
58 $this->creditmemoValidator = $creditmemoValidator;
59 $this->itemCreationValidator = $itemCreationValidator;
60 $this->validatorResultMerger = $validatorResultMerger;
71 $appendComment =
false,
72 \
Magento\Sales\Api\
Data\CreditmemoCommentCreationInterface $comment =
null,
75 $orderValidationResult = $this->orderValidator->validate(
81 $creditmemoValidationResult = $this->creditmemoValidator->validate(
84 QuantityValidator::class,
85 TotalsValidator::class
89 $itemsValidation = [];
91 $itemsValidation[] = $this->itemCreationValidator->validate(
93 [CreationQuantityValidator::class],
98 return $this->validatorResultMerger->merge(
99 $orderValidationResult,
100 $creditmemoValidationResult,
__construct(OrderValidatorInterface $orderValidator, CreditmemoValidatorInterface $creditmemoValidator, ItemCreationValidatorInterface $itemCreationValidator, ValidatorResultMerger $validatorResultMerger)
validate(OrderInterface $order, CreditmemoInterface $creditmemo, array $items=[], $notify=false, $appendComment=false, \Magento\Sales\Api\Data\CreditmemoCommentCreationInterface $comment=null, \Magento\Sales\Api\Data\CreditmemoCreationArgumentsInterface $arguments=null)