125 lines
6.8 KiB
PHP
125 lines
6.8 KiB
PHP
@extends('layouts.dashboard')
|
|
|
|
@section('content')
|
|
<div class="container mx-auto px-4 py-8">
|
|
<div class="max-w-4xl mx-auto">
|
|
<div class="mb-6">
|
|
<h1 class="text-2xl font-bold text-gray-800">Checkout</h1>
|
|
<p class="text-gray-600 mt-1">Selesaikan pesanan Anda.</p>
|
|
</div>
|
|
|
|
@if(session('error'))
|
|
<div class="relative px-4 py-3 mb-4 text-red-700 bg-red-100 border border-red-400 rounded" id="error-alert">
|
|
<span class="block sm:inline">{{ session('error') }}</span>
|
|
<button type="button" class="absolute top-0 right-0 px-4 py-3" onclick="this.parentElement.style.display='none'">
|
|
<i class="fas fa-times"></i>
|
|
</button>
|
|
</div>
|
|
@endif
|
|
|
|
@if(session('success'))
|
|
<div class="relative px-4 py-3 mb-4 text-green-700 bg-green-100 border border-green-400 rounded" id="success-alert">
|
|
<span class="block sm:inline">{{ session('success') }}</span>
|
|
<button type="button" class="absolute top-0 right-0 px-4 py-3" onclick="this.parentElement.style.display='none'">
|
|
<i class="fas fa-times"></i>
|
|
</button>
|
|
</div>
|
|
@endif
|
|
|
|
@if(!auth()->user()->alamat)
|
|
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
|
<div class="flex">
|
|
<div class="flex-shrink-0">
|
|
<i class="fas fa-exclamation-triangle text-yellow-400"></i>
|
|
</div>
|
|
<div class="ml-3">
|
|
<p class="text-sm text-yellow-700">
|
|
Anda belum memiliki alamat. Silakan tambahkan alamat Anda terlebih dahulu.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endif
|
|
|
|
<div class="grid grid-cols-1 md:grid-cols-5 gap-6 mt-6">
|
|
<!-- Daftar Item -->
|
|
<div class="md:col-span-3">
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden mb-6">
|
|
<div class="p-6">
|
|
<h2 class="text-lg font-semibold mb-4">Item Pesanan</h2>
|
|
<div class="flow-root">
|
|
<ul class="-my-6 divide-y divide-gray-200">
|
|
<li class="py-6 flex">
|
|
<div class="flex-shrink-0 w-20 h-20 rounded-md overflow-hidden border border-gray-200">
|
|
@if($barang->gambar)
|
|
<img src="{{ Storage::url($barang->gambar) }}" alt="{{ $barang->nama_barang }}" class="w-full h-full object-cover">
|
|
@else
|
|
<div class="w-full h-full bg-gray-200 flex items-center justify-center">
|
|
<span class="text-gray-400">No Image</span>
|
|
</div>
|
|
@endif
|
|
</div>
|
|
|
|
<div class="ml-4 flex-1 flex flex-col">
|
|
<div>
|
|
<div class="flex justify-between text-base font-medium text-gray-900">
|
|
<h3>{{ $barang->nama_barang }}</h3>
|
|
<p class="ml-4">Rp {{ number_format($total, 0, ',', '.') }}</p>
|
|
</div>
|
|
<p class="mt-1 text-sm text-gray-500">Jumlah: {{ $jumlah }} x Rp {{ number_format($barang->harga, 0, ',', '.') }}</p>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Ringkasan Pesanan -->
|
|
<div class="md:col-span-2">
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden sticky top-6">
|
|
<div class="p-6">
|
|
<h2 class="text-lg font-semibold mb-4">Ringkasan Pesanan</h2>
|
|
|
|
<div class="space-y-4">
|
|
<div class="flex justify-between">
|
|
<p class="text-gray-600">Subtotal</p>
|
|
<p class="font-medium">Rp {{ number_format($total, 0, ',', '.') }}</p>
|
|
</div>
|
|
|
|
<div class="border-t border-gray-200 pt-4 mt-6">
|
|
<div class="flex justify-between mb-4">
|
|
<p class="text-lg font-semibold">Total</p>
|
|
<p class="text-lg font-bold text-[#2C7A7B]">Rp {{ number_format($total, 0, ',', '.') }}</p>
|
|
</div>
|
|
</div>
|
|
|
|
<form action="{{ route('barang.store-from-checkout', $barang) }}" method="POST">
|
|
@csrf
|
|
<input type="hidden" name="jumlah" value="{{ $jumlah }}">
|
|
<div class="mb-4">
|
|
<label for="catatan" class="block text-sm font-medium text-gray-700 mb-1">Catatan (Opsional)</label>
|
|
<textarea name="catatan" id="catatan" rows="3"
|
|
class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-[#2C7A7B]">{{ $catatan }}</textarea>
|
|
</div>
|
|
|
|
<button type="submit" class="w-full flex justify-center py-3 px-4 border border-transparent rounded-md shadow-sm text-base font-medium text-white bg-[#2C7A7B] hover:bg-[#1C6B6B] focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-[#2C7A7B] {{ !auth()->user()->alamat ? 'opacity-50 cursor-not-allowed' : '' }}" {{ !auth()->user()->alamat ? 'disabled' : '' }}>
|
|
Buat Pesanan
|
|
</button>
|
|
</form>
|
|
|
|
<div class="mt-4">
|
|
<a href="{{ route('barang.show', $barang) }}" class="text-[#2C7A7B] hover:text-[#1C6B6B] text-sm font-medium flex items-center justify-center">
|
|
<i class="fas fa-arrow-left mr-2"></i>
|
|
Kembali ke Detail Barang
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endsection
|