public function createOrderCouponByCoupon(
        OrderInterface $order,
        CouponInterface $coupon
    ) {
        $orderCoupon = $this
            ->orderCouponFactory
            ->create()
            ->setOrder($order)
            ->setCoupon($coupon)
            ->setAmount($coupon->getAbsolutePrice())
            ->setName($coupon->getName())
            ->setCode($coupon->getCode());

        $this
            ->orderCouponObjectManager
            ->persist($orderCoupon);

        $this
            ->orderCouponObjectManager
            ->flush($orderCoupon);

        $this
            ->couponEventDispatcher
            ->notifyCouponUsage($coupon);

        return $orderCoupon;
    }