관리-도구
편집 파일: coupons.blade.php
@extends('layouts.apps') @section('content') <main class="main-wrapper"> <div class="main-content"> <!--breadcrumb--> <div class="page-breadcrumb d-none d-sm-flex align-items-center mb-3"> <div class="breadcrumb-title pe-3">House of CK</div> <div class="ps-3"> <nav aria-label="breadcrumb"> <ol class="breadcrumb mb-0 p-0"> <li class="breadcrumb-item"> <a href="{{ route('admin.dashboard') }}"><i class="bx bx-home-alt"></i></a> </li> <li class="breadcrumb-item active" aria-current="page">Coupons</li> </ol> </nav> </div> </div> <!--end breadcrumb--> <!-- Alert messages --> @if(session('success')) <div class="alert alert-success alert-dismissible fade show" role="alert"> <strong>Success!</strong> {{ session('success') }} <button type="button" class="btn-close" data-bs-dismiss="alert"></button> </div> @endif @if(session('error')) <div class="alert alert-danger alert-dismissible fade show" role="alert"> <strong>Error:</strong> {{ session('error') }} <button type="button" class="btn-close" data-bs-dismiss="alert"></button> </div> @endif @if($errors->any()) <div class="alert alert-danger alert-dismissible fade show" role="alert"> <ul class="mb-0"> @foreach($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> <button type="button" class="btn-close" data-bs-dismiss="alert"></button> </div> @endif <!-- Search and Add --> <div class="row g-3"> <div class="col-auto"> <form action="{{ route('admin-coupons.index') }}" method="GET"> <div class="position-relative"> <input class="form-control px-5" type="search" name="search" placeholder="Search Coupon Code" value="{{ request('search') }}"> <span class="material-icons-outlined position-absolute ms-3 translate-middle-y start-0 top-50 fs-5">search</span> </div> </form> </div> <div class="col-auto flex-grow-1 overflow-auto"></div> <div class="col-auto"> <div class="d-flex align-items-center gap-2 justify-content-lg-end"> <button class="btn btn-primary px-4" data-bs-toggle="modal" data-bs-target="#addModal"> <i class="bi bi-plus-lg me-2"></i>Add New Coupon </button> </div> </div> </div><!--end row--> <!-- Coupon Table --> <div class="card mt-4"> <div class="card-body"> <div class="customer-table"> <div class="table-responsive white-space-nowrap"> <table class="table align-middle"> <thead class="table-light"> <tr> <th><input class="form-check-input" type="checkbox"></th> <th>#</th> <th>Code</th> <th>Discount</th> <th>Min Purchase</th> <th>Expiry Date</th> <th>Status</th> <th>Action</th> </tr> </thead> <tbody> @forelse($coupons as $coupon) <tr> <td><input class="form-check-input" type="checkbox"></td> <td>{{ $loop->iteration }}</td> <td>{{ $coupon->code }}</td> <td> @if($coupon->discount_amount) ₹{{ $coupon->discount_amount }} @elseif($coupon->discount_percent) {{ $coupon->discount_percent }}% @else - @endif </td> <td>₹{{ $coupon->min_purchase ?? 0 }}</td> <td>{{ $coupon->expiry_date ? \Carbon\Carbon::parse($coupon->expiry_date)->format('d M Y') : '-' }}</td> <td> <span class="badge {{ $coupon->is_active ? 'bg-success' : 'bg-secondary' }}"> {{ $coupon->is_active ? 'Active' : 'Inactive' }} </span> </td> <td> <div class="d-flex gap-3"> <!-- Edit --> <a href="javascript:;" title="Edit" data-bs-toggle="modal" data-bs-target="#editModal{{ $coupon->id }}"> <i class="material-icons-outlined">edit</i> </a> <!-- Delete --> <form method="POST" action="{{ route('admin-coupons.destroy', $coupon->id) }}" style="display:inline;"> @csrf @method('DELETE') <button type="submit" class="btn p-0 border-0 bg-transparent" onclick="return confirm('Delete this coupon?');"> <i class="material-icons-outlined text-danger">delete</i> </button> </form> </div> </td> </tr> <!-- Edit Modal --> <div class="modal fade" id="editModal{{ $coupon->id }}" tabindex="-1" aria-labelledby="editModalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="editModalLabel">Edit Coupon</h5> <button type="button" class="btn-close" data-bs-dismiss="modal"></button> </div> <form method="POST" action="{{ route('admin-coupons.update', $coupon->id) }}"> @csrf @method('PUT') <div class="modal-body"> <div class="mb-3"> <label class="form-label">Coupon Code</label> <input type="text" name="code" class="form-control" value="{{ $coupon->code }}"> </div> <div class="mb-3"> <label class="form-label">Discount Amount (₹)</label> <input type="number" name="discount_amount" class="form-control" step="0.01" value="{{ $coupon->discount_amount }}"> </div> <div class="mb-3"> <label class="form-label">Discount Percentage (%)</label> <input type="number" name="discount_percent" class="form-control" value="{{ $coupon->discount_percent }}"> </div> <div class="mb-3"> <label class="form-label">Minimum Purchase (₹)</label> <input type="number" name="min_purchase" class="form-control" value="{{ $coupon->min_purchase }}"> </div> <div class="mb-3"> <label class="form-label">Expiry Date</label> <input type="date" name="expiry_date" class="form-control" value="{{ $coupon->expiry_date }}"> </div> <div class="mb-3 form-check"> <input class="form-check-input" type="checkbox" name="is_active" value="1" {{ $coupon->is_active ? 'checked' : '' }}> <label class="form-check-label">Active</label> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button> <button type="submit" class="btn btn-primary">Update</button> </div> </form> </div> </div> </div> @empty <tr> <td colspan="8" class="text-center">No coupons found.</td> </tr> @endforelse </tbody> </table> </div> </div> </div> </div> <!-- Add Modal --> <div class="modal fade" id="addModal" tabindex="-1" aria-labelledby="addModalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="addModalLabel">Add New Coupon</h5> <button type="button" class="btn-close" data-bs-dismiss="modal"></button> </div> <form method="POST" action="{{ route('admin-coupons.store') }}"> @csrf <div class="modal-body"> <div class="mb-3"> <label class="form-label">Coupon Code</label> <input type="text" name="code" class="form-control" placeholder="e.g. SAVE20" required> </div> <div class="mb-3"> <label class="form-label">Discount Amount (₹)</label> <input type="number" name="discount_amount" class="form-control" step="0.01"> </div> <div class="mb-3"> <label class="form-label">Discount Percentage (%)</label> <input type="number" name="discount_percent" class="form-control" min="0" max="100"> </div> <div class="mb-3"> <label class="form-label">Minimum Purchase (₹)</label> <input type="number" name="min_purchase" class="form-control"> </div> <div class="mb-3"> <label class="form-label">Expiry Date</label> <input type="date" name="expiry_date" class="form-control"> </div> <div class="mb-3 form-check"> <input class="form-check-input" type="checkbox" name="is_active" value="1" checked> <label class="form-check-label">Active</label> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button> <button type="submit" class="btn btn-primary">Save Coupon</button> </div> </form> </div> </div> </div> </div> </main> <div class="overlay btn-toggle"></div> @endsection