Skip to content

Commit

Permalink
Tambah halalaman pembayaran pending
Browse files Browse the repository at this point in the history
  • Loading branch information
abdasis committed Sep 5, 2022
1 parent 104f7fc commit 5aa5ca3
Show file tree
Hide file tree
Showing 85 changed files with 429 additions and 915 deletions.
3 changes: 2 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ VITE_PUSHER_PORT="${PUSHER_PORT}"
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

MIDTRANS_SERVER_KEY=SB-Mid-server-c3Zm5Iu8U5KIzpTPLYwPPk1C
MIDTRANS_SERVER_KEY=
MIDTRANS_CLIENT_KEY=
MIDTRANS_ENV=
MIDTRANS_SANITIZED=
MIDTRANS_3DS=
Expand Down
10 changes: 8 additions & 2 deletions app/Http/Controllers/TransaksiController.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public function midtransResponse(Request $request)
'keterangan_status' => $request->status_message,
'kode_status' => $request->status_code,
'tanda_terima' => $request->signature_key,
'waktu_penyelesaian' => $request->settlement_time,
'waktu_penyelesaian' => now()->toDateTimeString(),
'jenis_pembayaran' => $request->payment_type,
'kode_pembayaran' => $request->payment_code,
'order_id' => $request->order_id,
Expand All @@ -28,12 +28,18 @@ public function midtransResponse(Request $request)
'kode_persetujuan' => $request->approval_code ?? 'belum diketahui',
'penipuan_status' => $request->fraud_status ?? 'belum diketahui',
]);

}

public function pembayaranSelesai(Request $request)
{
$transaksi = Transaksi::where('transaksi_id', $request->order_id)->first();
return view('midtrans.pembayaran-selesai', compact('transaksi'));
}

public function pembayaranPending(Request $request)
{
$transaksi = Transaksi::where('transaksi_id', $request->order_id)->first();
return view('midtrans.pembayaran-pending', compact('transaksi'));
}
}
19 changes: 19 additions & 0 deletions app/Http/Livewire/Tagihan/Bayar.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<?php

namespace App\Http\Livewire\Tagihan;

use App\Models\Tagihan;
use Livewire\Component;

class Bayar extends Component
{
public $tagihan;
public function mount($kode)
{
$this->tagihan = Tagihan::where('kode_tagihan', $kode)->first();
}
public function render()
{
return view('livewire.tagihan.bayar')->layout('layouts.guest');
}
}
5 changes: 5 additions & 0 deletions app/Models/Tagihan.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,9 @@ public function santri()
{
return $this->belongsTo(Santri::class);
}

public function transaksi()
{
return $this->belongsTo(Transaksi::class, 'kode_tagihan', 'transaksi_id');
}
}
24 changes: 13 additions & 11 deletions config/midtrans.php
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
<?php
return [
// Set your Merchant Server Key
'server_key' => \Midtrans\Config::$serverKey = env('MIDTRANS_SERVER_KEY', ''),
// Set to Development/Sandbox Environment (default). Set to true for Production Environment (accept real transaction).
'env' => \Midtrans\Config::$isProduction = env('MIDTRANS_ENV', false),
// Set sanitization on (default)
'sanitize' => \Midtrans\Config::$isSanitized = env('MIDTRANS_SANITIZED', true),
// Set 3DS transaction for credit card to true
'3ds' => \Midtrans\Config::$is3ds = env('MIDTRANS_3DS', true),
// Set your Merchant Server Key
'server_key' => \Midtrans\Config::$serverKey = env('MIDTRANS_SERVER_KEY', ''),
// Set your Merchant Server Key
'client_key' => env('MIDTRANS_CLIENT_KEY', ''),
// Set to Development/Sandbox Environment (default). Set to true for Production Environment (accept real transaction).
'env' => \Midtrans\Config::$isProduction = env('MIDTRANS_ENV', false),
// Set sanitization on (default)
'sanitize' => \Midtrans\Config::$isSanitized = env('MIDTRANS_SANITIZED', true),
// Set 3DS transaction for credit card to true
'3ds' => \Midtrans\Config::$is3ds = env('MIDTRANS_3DS', true),

// Optional
'midtrans_url' => env('MIDTRANS_URL', 'https://api.sandbox.midtrans.com/v2/'),
]
// Optional
'midtrans_url' => env('MIDTRANS_URL', 'https://api.sandbox.midtrans.com/v2/'),
]

?>
12 changes: 11 additions & 1 deletion resources/views/layouts/guest.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,20 @@

<!-- Scripts -->
@vite(['resources/js/app.js'])
@stack('styles')
</head>
<body>
<body id="layout-wrapper">
<div class="font-sans text-gray-900 antialiased">
{{ $slot }}
</div>
<script src="{{asset('assets/libs/bootstrap/js/bootstrap.bundle.min.js')}}"></script>
<script src="{{asset('assets/libs/simplebar/simplebar.min.js')}}"></script>
<script src="{{asset('assets/libs/node-waves/waves.min.js')}}"></script>
<script src="{{asset('assets/libs/feather-icons/feather.min.js')}}"></script>
@livewireScripts
@stack('scripts')
<script src="{{asset('assets/libs/sweetalert2/sweetalert2.min.js')}}"></script>
<x-livewire-alert::scripts />
<script src="{{asset('assets/js/pages/sweetalerts.init.js')}}"></script>
</body>
</html>
54 changes: 54 additions & 0 deletions resources/views/livewire/tagihan/bayar.blade.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
<div>
{{-- To attain knowledge, add things every day; To attain wisdom, subtract things every day. --}}
<div class="container">
<div class="row justify-content-center align-items-center" style="min-height: 90vh">
<div class="col-md-6">
<div class="card border-light shadow-sm">
<div class="card-header d-flex align-items-center border-light border-bottom-dashed">
<h5 class="card-title mb-0 flex-grow-1">Pembayaran Tagihan</h5>
<h5 class="text-success">
Batal
</h5>
</div>
<div class="card-body">
<div class="alert alert-warning">
<h5 class="alert-heading">Perhatian!</h5>
<p class="mb-0">Berikut detail pembayaran yang harus dibayar</p>
</div>
<div class="d-flex gap-2 align-items-center my-2">
<h5 class="mb-0">Invoice</h5>
<span> #{{$tagihan->kode_tagihan}}</span>
</div>
<div class="bg-light p-2 rounded-3">
<table class="table table-borderless mx-0 px-0">
<tr class="mx-0 px-0">
<td>{{$tagihan->kategori->nama_kategori}}</td>
<td>{{$tagihan->kategori->tapel->tahun_awal}}/{{$tagihan->kategori->tapel->tahun_akhir}}</td>
<td class="text-end">{{rupiah($tagihan->total_tagihan)}}</td>
</tr>
</table>
</div>
<div class="my-3 d-grid">
<button wire:click.prevent="$emit('pay', {{$tagihan->transaksi}})" class="btn btn-success btn-border">
Bayar Sekarang
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

@push('scripts')
<script type="text/javascript"
src="https://app.sandbox.midtrans.com/snap/snap.js"
data-client-key="{{config('midtrans.client_key')}}">
</script>

<script type="text/javascript">
Livewire.on('pay', (data) => {
window.snap.pay(data.token);
})
</script>
@endpush
39 changes: 39 additions & 0 deletions resources/views/midtrans/pembayaran-pending.blade.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<x-guest-layout>
<div class="container">
<div class="row justify-content-center align-items-center" style="min-height: 80vh">
<div class="col-md-8">
<div class="card border-light shadow-sm">
<div class="card-body text-center">
<i class="ri-checkbox-circle-line icon-success text-success py-0 my-0" style="font-size: 100px"></i>
<h3 class="">Pembayaran di Proses</h3>
<small class="text-muted">Tunggu sebentar kami akan informasikan lagi setelah pembayaran berhasil</small>
</div>
<div class="card-body">
<h5>Informasi</h5>
<div class="d-flex justify-content-between">
<div class="text-muted">Tgl. Pembayaran</div>
<div class="text-muted">{{\Carbon\Carbon::parse($transaksi->waktu_transaksi)->format('d F, Y')}}</div>
</div>
<div class="d-flex justify-content-between">
<div class="text-muted">Metode Pembayaran</div>
<div class="text-muted">{{$transaksi->jenis_pembayaran}}</div>
</div>
<div class="d-flex justify-content-between">
<div class="text-muted">Total Pembayaran</div>
<div class="text-muted">Rp.</div>
</div>
</div>
</div>
</div>
</div>
</div>
</x-guest-layout>

@push('styles')
<style>
.icon-success{
color: #4caf50;
text-align: center;
}
</style>
@endpush
1 change: 0 additions & 1 deletion resources/views/midtrans/pembayaran-selesai.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,4 @@
</div>
</div>
</div>

</x-guest-layout>
5 changes: 5 additions & 0 deletions routes/breadcrumbs.php
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,11 @@
$trail->push('Semua Tagihan', route('tagihan.semua'));
});

Breadcrumbs::for('tagihan.bayar', function (BreadcrumbTrail $trial, $kode){
$trial->parent('tagihan.semua');
$trial->push('Bayar Tagihan', route('tagihan.bayar', $kode));
});

Breadcrumbs::for('tagihan.tambah', function (BreadcrumbTrail $trail){
$trail->parent('tagihan.semua');
$trail->push('Tambah Tagihan', route('tagihan.tambah'));
Expand Down
2 changes: 2 additions & 0 deletions routes/web.php
Original file line number Diff line number Diff line change
Expand Up @@ -100,3 +100,5 @@

Route::post('midtrans-response', [\App\Http\Controllers\TransaksiController::class, 'midtransResponse'])->name('midtrans.notif');
Route::get('pembayaran-selesai', [\App\Http\Controllers\TransaksiController::class, 'pembayaranSelesai'])->name('midtrans.selesai');
Route::get('pembayaran-pending', [\App\Http\Controllers\TransaksiController::class, 'pembayaranPending'])->name('midtrans.pending');
Route::get('bayar/{kode}', \App\Http\Livewire\Tagihan\Bayar::class)->name('tagihan.bayar');
Original file line number Diff line number Diff line change
Expand Up @@ -369,4 +369,4 @@
<?php $component = $__componentOriginalc254754b9d5db91d5165876f9d051922ca0066f4; ?>
<?php unset($__componentOriginalc254754b9d5db91d5165876f9d051922ca0066f4); ?>
<?php endif; ?>
<?php /**PATH C:\Users\laila\Documents\GitHub\madrosy\resources\views/vendor/livewire-tables/datatable.blade.php ENDPATH**/ ?>
<?php /**PATH /home/aziz/Project/madrosy/resources/views/vendor/livewire-tables/datatable.blade.php ENDPATH**/ ?>

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -132,4 +132,4 @@ class="text-primary d-flex align-items-center ms-2"
<?php endif; ?>
</div>
<?php endif; ?>
<?php /**PATH C:\Users\laila\Documents\GitHub\madrosy\resources\views/vendor/livewire-tables/components/tools/filter-pills.blade.php ENDPATH**/ ?>
<?php /**PATH /home/aziz/Project/madrosy/resources/views/vendor/livewire-tables/components/tools/filter-pills.blade.php ENDPATH**/ ?>

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
<!DOCTYPE html>
<html lang="<?php echo e(str_replace('_', '-', app()->getLocale())); ?>">
<head>
<meta charset="utf-8" />
<title>Pendaftaran Unit Layanan Statistik</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta content="Platform Pendaftaran Unit Layanan Statistik" name="description" />
<meta content="Abdul Aziz" name="author" />
<meta name="csrf-token" content="<?php echo e(csrf_token()); ?>">

<!-- App favicon -->
<link rel="shortcut icon" href="<?php echo e(asset('assets/images/favicon.ico')); ?>">

<script src="<?php echo e(asset('assets/js/jquery-3.6.0.min.js')); ?>"></script>

<link href="<?php echo e(asset('assets/libs/sweetalert2/sweetalert2.min.css')); ?>" rel="stylesheet" type="text/css">
<!-- Layout config Js -->
<script src="<?php echo e(asset('assets/js/layout.js')); ?>"></script>
<!-- Bootstrap Css -->
<link href="<?php echo e(asset('assets/css/bootstrap.min.css')); ?>" rel="stylesheet" type="text/css" />
<!-- Icons Css -->
<link href="<?php echo e(asset('assets/css/icons.min.css')); ?>" rel="stylesheet" type="text/css" />
<!-- App Css-->
<link href="<?php echo e(asset('assets/css/app.min.css')); ?>" rel="stylesheet" type="text/css" />
<!-- custom Css-->
<link href="<?php echo e(asset('assets/css/custom.min.css')); ?>" rel="stylesheet" type="text/css" />


<!-- Scripts -->
<?php echo app('Illuminate\Foundation\Vite')(['resources/js/app.js']); ?>
<?php echo $__env->yieldPushContent('styles'); ?>
</head>
<body id="layout-wrapper">
<div class="font-sans text-gray-900 antialiased">
<?php echo e($slot); ?>

</div>
<script src="<?php echo e(asset('assets/libs/bootstrap/js/bootstrap.bundle.min.js')); ?>"></script>
<script src="<?php echo e(asset('assets/libs/simplebar/simplebar.min.js')); ?>"></script>
<script src="<?php echo e(asset('assets/libs/node-waves/waves.min.js')); ?>"></script>
<script src="<?php echo e(asset('assets/libs/feather-icons/feather.min.js')); ?>"></script>
<?php echo \Livewire\Livewire::scripts(); ?>

<?php echo $__env->yieldPushContent('scripts'); ?>
<script src="<?php echo e(asset('assets/libs/sweetalert2/sweetalert2.min.js')); ?>"></script>
<?php if (isset($component)) { $__componentOriginalc254754b9d5db91d5165876f9d051922ca0066f4 = $component; } ?>
<?php $component = $__env->getContainer()->make(Illuminate\View\AnonymousComponent::class, ['view' => 'livewire-alert::components.scripts','data' => []] + (isset($attributes) ? (array) $attributes->getIterator() : [])); ?>
<?php $component->withName('livewire-alert::scripts'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $constructor = (new ReflectionClass(Illuminate\View\AnonymousComponent::class))->getConstructor()): ?>
<?php $attributes = $attributes->except(collect($constructor->getParameters())->map->getName()->all()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalc254754b9d5db91d5165876f9d051922ca0066f4)): ?>
<?php $component = $__componentOriginalc254754b9d5db91d5165876f9d051922ca0066f4; ?>
<?php unset($__componentOriginalc254754b9d5db91d5165876f9d051922ca0066f4); ?>
<?php endif; ?>
<script src="<?php echo e(asset('assets/js/pages/sweetalerts.init.js')); ?>"></script>
</body>
</html>
<?php /**PATH /home/aziz/Project/madrosy/resources/views/layouts/guest.blade.php ENDPATH**/ ?>
Loading

0 comments on commit 5aa5ca3

Please sign in to comment.