+
Informasi Pemesan
+
+
+
+
+
+
Nama Pemesan : {data.namaPemesan}
+
+
+
Nomer HP Pemesan : {data.teleponPemesan}
+
+
+
Alamat Email Pemesan : {data.emailPemesan}
-
-
-
-
Total Pesanan
-
-
-
-
-
- Jenis Kamar |
- Total |
-
-
-
-
-
-
- Double Room
- |
-
-
- Rp.180.000
- |
-
-
-
- Extra Bed
- |
-
-
- Rp.50.000
- |
-
-
-
- Pajak 10%
- |
-
-
- Rp.23.000
- |
-
-
-
+
+
+
+
Pesan Khusus : {data.requestKamar}
+
+
+
Jumlah Pengunjung : {data.jumlahPengunjung} Orang
+
+
+
Catatan : {data.catatan} Orang
-
-
Bayar Pesanan
+
+
+
+
+
+
Total Pesanan
+
+
+
+
+
+ Jenis Kamar |
+ Total |
+
+
+
+
+
+
+ Catania {data.namaKamar}
+ |
+
+
+
+ |
+
+
+
+ Pajak 10%
+ |
+
+
+
+ |
+
+
+
+ Total
+ |
+
+
+
+ |
+
+
+
-
+
+
+
+
+
+ );
+ })
+
+ return (
+ <>
+
+
+
+
+
+
+
Mohon Periksa Ulang Pesanan Anda
+
+
+
+
+ {ReviewContens}
+
>
diff --git a/package.json b/package.json
index 13ebb78..495093d 100644
--- a/package.json
+++ b/package.json
@@ -20,6 +20,8 @@
"dotenv": "^10.0.0",
"graphql": "^16.0.1",
"next": "^10.0.7",
+ "midtrans-client": "^1.2.3",
+ "midtrans-payment": "^1.2.7",
"nodemailer": "^6.5.0",
"nodemailer-sendgrid-transport": "^0.2.0",
"react": "^17.0.1",
@@ -44,4 +46,4 @@
"sweetalert2-react-content": "^3.3.1"
},
"license": "MIT"
-}
+}
\ No newline at end of file
diff --git a/pages/review.js b/pages/review.js
index 035dfb1..adfcff1 100644
--- a/pages/review.js
+++ b/pages/review.js
@@ -3,16 +3,86 @@ import Navbar from "@/components/_App/NavbarHome";
import Footer from "@/components/_App/Footer";
import ReviewContent from '@/components/Booking/review';
-const Checkout = () => {
+import GetReviewItem from "api/Booking/booking";
+
+const Checkout = function ({ transactionToken, backend, review, ...props }) {
return (
<>
-
+
>
)
}
-export default Checkout;
\ No newline at end of file
+export default Checkout;
+
+export async function getServerSideProps(context) {
+ var { query } = context;
+ var review = [];
+ const backend = process.env.BACKEND_SERVER_URI;
+
+ var res = await GetReviewItem.getReview(query.s || 0);
+ if (res["STATUS"] === 1) {
+ review = res["DATA"]["bookings"];
+ }
+
+ // midtrans
+ var parameters = await GetReviewItem.getReview();
+ console.log("parameters", parameters);
+ var transactionToken = [];
+ if (parameters["STATUS"] === 1) {
+ const midtransClient = require('midtrans-client');
+ let snap = new midtransClient.Snap({
+ isProduction: false,
+ serverKey: 'SB-Mid-server-SfBhLkXXlTxCBx7EYP5T2k3d',
+ clientKey: 'SB-Mid-client-srx674LjNbEybd4-'
+ });
+ let parameter = {
+ "transaction_details": {
+ // "order_id": parameters["DATA"]["bookings"][0]["NamaPemesan"],
+ "gross_amount": parameters["DATA"]["bookings"][0]["hargaTotal"],
+ "order_id":"Trx-Ord-2545343543",
+ // "gross_amount":33750000,
+ }, "credit_card": {
+ "secure": true
+ },
+ "customer_details": {
+ "first_name": parameters["DATA"]["bookings"][0]["namaPemesan"],
+ "phone": parameters["DATA"]["bookings"][0]["teleponPemesan"],
+ // "first_name":"Yusmar",
+ // "phone":"087797315685",
+ "billing_address":
+ {
+ "first_name": parameters["DATA"]["bookings"][0]["namaPemesan"],
+ "phone": parameters["DATA"]["bookings"][0]["teleponPemesan"],
+ "email": parameters["DATA"]["bookings"][0]["emailPemesan"],
+ // "first_name":"Yusmar",
+ // "phone":"087797315685",
+ // "address":"THAMRIN INDRAPURA JL.AIPDA KAREL SATSUIT TUBUN,17 ILIR, KEC.ILIR TIM.I, PALEMBANG, KOTA PALEMBANG - ILIR TIMUR II, SUMATERA SELATAN, ID 30114"
+ },
+ },
+ };
+
+ await snap.createTransaction(parameter)
+ .then((transaction) => {
+ // transaction token
+ transactionToken = transaction.token;
+ console.log('transactionToken:', transactionToken);
+
+ // transaction redirect url
+ let transactionRedirectUrl = transaction.redirect_url;
+ console.log('transactionRedirectUrl:', transactionRedirectUrl);
+ })
+ .catch((e) => {
+ console.log('Error occured:', e.message);
+ });
+ }
+
+
+ return {
+ props: { transactionToken, review, backend }, // will be passed to the page component as props
+ };
+}
\ No newline at end of file
diff --git a/yarn.lock b/yarn.lock
index fcee5f9..1bff28a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -620,6 +620,11 @@ ast-types@0.13.2:
resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.13.2.tgz#df39b677a911a83f3a049644fb74fdded23cea48"
integrity sha512-uWMHxJxtfj/1oZClOxDEV1sQ1HCDkA4MG8Gr69KKeBjEVH0R84WlejZ0y2DcwyBlpAEMltmVYkVgqfLFb2oyiA==
+async@~0.9.0:
+ version "0.9.2"
+ resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d"
+ integrity sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=
+
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
@@ -640,7 +645,7 @@ aws4@^1.8.0:
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59"
integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==
-axios@^0.21.1:
+axios@^0.21.1, axios@^0.21.4:
version "0.21.4"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575"
integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==
@@ -1086,6 +1091,13 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
dependencies:
delayed-stream "~1.0.0"
+combined-stream@~0.0.4:
+ version "0.0.7"
+ resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-0.0.7.tgz#0137e657baa5a7541c57ac37ac5fc07d73b4dc1f"
+ integrity sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8=
+ dependencies:
+ delayed-stream "0.0.5"
+
commondir@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
@@ -1298,6 +1310,11 @@ define-properties@^1.1.3:
dependencies:
object-keys "^1.0.12"
+delayed-stream@0.0.5:
+ version "0.0.5"
+ resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-0.0.5.tgz#d4b1f43a93e8296dfe02694f4680bc37a313c73f"
+ integrity sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8=
+
delayed-stream@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
@@ -1711,6 +1728,15 @@ forever-agent@~0.6.1:
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
+form-data@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-0.2.0.tgz#26f8bc26da6440e299cbdcfb69035c4f77a6e466"
+ integrity sha1-Jvi8JtpkQOKZy9z7aQNcT3em5GY=
+ dependencies:
+ async "~0.9.0"
+ combined-stream "~0.0.4"
+ mime-types "~2.0.3"
+
form-data@~2.3.2:
version "2.3.3"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
@@ -2369,7 +2395,7 @@ lodash.sortby@^4.7.0:
resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
integrity sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=
-lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.13, lodash@^4.17.4, lodash@^4.2.1:
+lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.13, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.1:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -2415,6 +2441,21 @@ merge-stream@^2.0.0:
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
+midtrans-client@^1.2.3:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/midtrans-client/-/midtrans-client-1.3.0.tgz#cee8a9ac35834f362233c1e4c3f5546d2e02263a"
+ integrity sha512-FUm0X25ScaHGuwW0NQ7FRMsQokXzvRGkGduIPfjNOg6+Tggd/OS4/4ClxfCloKBIg2e5B1Cb1VfwwSRZHTev3w==
+ dependencies:
+ axios "^0.21.4"
+ lodash "^4.17.21"
+
+midtrans-payment@^1.2.7:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/midtrans-payment/-/midtrans-payment-1.2.7.tgz#1f7029b97509ed147e022c68716e04a04a5ac39f"
+ integrity sha512-gHAVCm/iM3wLb3gKhU9Oak7IcedIqlg6wWJcANX92kr8yyEwa6LF+IniR9MuzeoEl5Wg2DI9SVvY2jgXE8cz9A==
+ dependencies:
+ unirest "^0.6.0"
+
miller-rabin@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
@@ -2428,6 +2469,11 @@ mime-db@1.51.0:
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c"
integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==
+mime-db@~1.12.0:
+ version "1.12.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.12.0.tgz#3d0c63180f458eb10d325aaa37d7c58ae312e9d7"
+ integrity sha1-PQxjGA9FjrENMlqqN9fFiuMS6dc=
+
mime-types@^2.1.12, mime-types@~2.1.19:
version "2.1.34"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24"
@@ -2435,11 +2481,23 @@ mime-types@^2.1.12, mime-types@~2.1.19:
dependencies:
mime-db "1.51.0"
+mime-types@~2.0.3:
+ version "2.0.14"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.0.14.tgz#310e159db23e077f8bb22b748dabfa4957140aa6"
+ integrity sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY=
+ dependencies:
+ mime-db "~1.12.0"
+
mime@^1.2.9:
version "1.6.0"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
+mime@^2.4.0:
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
+ integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
+
minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
@@ -3159,7 +3217,7 @@ repeating@^2.0.0:
dependencies:
is-finite "^1.0.0"
-request@^2.55.0, request@^2.60.0:
+request@^2.55.0, request@^2.60.0, request@^2.88.0:
version "2.88.2"
resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
@@ -3673,6 +3731,15 @@ unbox-primitive@^1.0.1:
has-symbols "^1.0.2"
which-boxed-primitive "^1.0.2"
+unirest@^0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/unirest/-/unirest-0.6.0.tgz#289b5ae59cc9fa9fdfff3b5866e0dd50bf5eb280"
+ integrity sha512-BdYdcYJHXACqZ53k8Zz7QlNK/1W/HjCZlmg1OaaN/oTSp4FTWh0upXGSJsG88PljDBpSrNc2R649drasUA9NEg==
+ dependencies:
+ form-data "^0.2.0"
+ mime "^2.4.0"
+ request "^2.88.0"
+
universalify@^0.1.0:
version "0.1.2"
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"