diff --git a/app/Classes/Modules/Vouchers/DataTransferObjects/CreateVoucherifyOrderObject.php b/app/Classes/Modules/Vouchers/DataTransferObjects/CreateVoucherifyOrderObject.php index 92dfd592..c483d45e 100644 --- a/app/Classes/Modules/Vouchers/DataTransferObjects/CreateVoucherifyOrderObject.php +++ b/app/Classes/Modules/Vouchers/DataTransferObjects/CreateVoucherifyOrderObject.php @@ -14,6 +14,9 @@ class CreateVoucherifyOrderObject implements DataTransferObject /** @var int */ private $companyId; + /** @var int */ + private $transactionId; + /** @var float */ private $amount; @@ -27,14 +30,16 @@ class CreateVoucherifyOrderObject implements DataTransferObject * CreateVoucherifyOrderObject constructor. * @param User $employee * @param int $companyId + * @param int $transactionId * @param float $amount * @param bool $isNoVoucher * @param bool $isTopUpWallet */ - public function __construct(User $employee, int $companyId, float $amount, bool $isNoVoucher, bool $isTopUpWallet) + public function __construct(User $employee, int $companyId, int $transactionId, float $amount, bool $isNoVoucher, bool $isTopUpWallet) { $this->employee = $employee; $this->companyId = $companyId; + $this->transactionId = $transactionId; $this->amount = $amount; $this->isNoVoucher = $isNoVoucher; $this->isTopUpWallet = $isTopUpWallet; @@ -48,6 +53,14 @@ class CreateVoucherifyOrderObject implements DataTransferObject return $this->companyId; } + /** + * @return int + */ + public function getTransactionId(): int + { + return $this->transactionId; + } + /** * @return float */ diff --git a/app/Classes/Modules/Vouchers/DataTransferObjects/RedeemVoucherifyVoucherObject.php b/app/Classes/Modules/Vouchers/DataTransferObjects/RedeemVoucherifyVoucherObject.php index 01f5431c..325df2f4 100644 --- a/app/Classes/Modules/Vouchers/DataTransferObjects/RedeemVoucherifyVoucherObject.php +++ b/app/Classes/Modules/Vouchers/DataTransferObjects/RedeemVoucherifyVoucherObject.php @@ -9,6 +9,9 @@ class RedeemVoucherifyVoucherObject implements DataTransferObject /** @var int */ private $companyId; + /** @var int */ + private $transactionId; + /** @var string */ private $promoCode; @@ -21,13 +24,15 @@ class RedeemVoucherifyVoucherObject implements DataTransferObject /** * RedeemVoucherifyVoucherObject constructor. * @param int $companyId + * @param int $transactionId * @param string $name * @param string $email * @param object $employee */ - public function __construct(int $companyId, string $promoCode, string $amount, object $employee) + public function __construct(int $companyId, int $transactionId, string $promoCode, string $amount, object $employee) { $this->companyId = $companyId; + $this->transactionId = $transactionId; $this->promoCode = $promoCode; $this->amount = $amount; $this->employee = $employee; @@ -42,6 +47,15 @@ class RedeemVoucherifyVoucherObject implements DataTransferObject } + /** + * @return int + */ + public function getTransactionId(): int + { + return $this->transactionId; + } + + /** * @return string */ diff --git a/app/Classes/Modules/Vouchers/Processors/Voucherify/BookingToVoucherifyProcessor.php b/app/Classes/Modules/Vouchers/Processors/Voucherify/BookingToVoucherifyProcessor.php index 3df08a4c..323b2eaf 100644 --- a/app/Classes/Modules/Vouchers/Processors/Voucherify/BookingToVoucherifyProcessor.php +++ b/app/Classes/Modules/Vouchers/Processors/Voucherify/BookingToVoucherifyProcessor.php @@ -82,7 +82,7 @@ class BookingToVoucherifyProcessor $voucherify_customer_id = ""; $voucherify_order_id = ""; if($voucherCode){ - $redeemVoucherifyVoucherObject = new RedeemVoucherifyVoucherObject($companyId, $voucherCode, $amount, $user); + $redeemVoucherifyVoucherObject = new RedeemVoucherifyVoucherObject($companyId, $transaction->id, $voucherCode, $amount, $user); $redeemVoucherResult = $this->redeemsVoucherifyVoucher->execute($redeemVoucherifyVoucherObject); $redeemedVoucher = $redeemVoucherResult->voucher; $redemptionId = $redeemVoucherResult->id; @@ -100,7 +100,7 @@ class BookingToVoucherifyProcessor $this->recordVoucherForUserInfo($user, $voucher); } else{ - $createVoucherifyOrderObject = new CreateVoucherifyOrderObject($user, $companyId, $amount, true, $transaction->type == TransactionType::TOP_UP); + $createVoucherifyOrderObject = new CreateVoucherifyOrderObject($user, $companyId, $transaction->id, $amount, true, $transaction->type == TransactionType::TOP_UP); $createVoucherufyOrderResult = $this->createsVoucherifyOrder->execute($createVoucherifyOrderObject); if($createVoucherufyOrderResult && isset($createVoucherufyOrderResult->id)){ diff --git a/app/Classes/Modules/Vouchers/Services/Voucherify/CreatesVoucherifyOrder.php b/app/Classes/Modules/Vouchers/Services/Voucherify/CreatesVoucherifyOrder.php index e5e6d404..90e5d682 100644 --- a/app/Classes/Modules/Vouchers/Services/Voucherify/CreatesVoucherifyOrder.php +++ b/app/Classes/Modules/Vouchers/Services/Voucherify/CreatesVoucherifyOrder.php @@ -31,6 +31,7 @@ class CreatesVoucherifyOrder { try { $orderObj = [ + "source_id" => $obj->getTransactionId(), "customer" => [ "source_id" => $obj->getEmployee()->id, "name" => $obj->getEmployee()->name, diff --git a/app/Classes/Modules/Vouchers/Services/Voucherify/RedeemsVoucherifyVoucher.php b/app/Classes/Modules/Vouchers/Services/Voucherify/RedeemsVoucherifyVoucher.php index bd12e27f..7c44889b 100644 --- a/app/Classes/Modules/Vouchers/Services/Voucherify/RedeemsVoucherifyVoucher.php +++ b/app/Classes/Modules/Vouchers/Services/Voucherify/RedeemsVoucherifyVoucher.php @@ -39,6 +39,7 @@ class RedeemsVoucherifyVoucher ] ], "order" => [ + "source_id" => $redeemVoucherifyVoucherObject->getTransactionId(), "amount" => $redeemVoucherifyVoucherObject->getAmount() * 100 //converting it to cents ] ]); diff --git a/resources/assets/vue/components/bookings/elements/ListVouchers.vue b/resources/assets/vue/components/bookings/elements/AvailableVouchersComponent.vue similarity index 90% rename from resources/assets/vue/components/bookings/elements/ListVouchers.vue rename to resources/assets/vue/components/bookings/elements/AvailableVouchersComponent.vue index e59ff653..45722aaf 100644 --- a/resources/assets/vue/components/bookings/elements/ListVouchers.vue +++ b/resources/assets/vue/components/bookings/elements/AvailableVouchersComponent.vue @@ -1,7 +1,6 @@