feat:complete tours for admin side

This commit is contained in:
2026-08-20 16:50:40 +03:30
parent 1ee787862e
commit 7660124ed5
6 changed files with 37 additions and 18 deletions
+1
View File
@@ -5,5 +5,6 @@ namespace App\Enums;
enum TourStatus:int enum TourStatus:int
{ {
case DISABLE = 0; case DISABLE = 0;
case ENABLE = 1; case ENABLE = 1;
} }
+1 -1
View File
@@ -22,7 +22,7 @@ class TourController extends Controller
public function show(Tour $tour) public function show(Tour $tour)
{ {
abort_if($tour->status !== TourStatus::ENABLE->value, 404); abort_if($tour->status !== TourStatus::ENABLE, 404);
$tour->increment('views'); $tour->increment('views');
+8 -3
View File
@@ -6,6 +6,7 @@
namespace App\Models; namespace App\Models;
use App\Enums\TourStatus;
use Carbon\Carbon; use Carbon\Carbon;
use Illuminate\Contracts\Database\Query\Builder; use Illuminate\Contracts\Database\Query\Builder;
use Illuminate\Database\Eloquent\Attributes\Scope; use Illuminate\Database\Eloquent\Attributes\Scope;
@@ -37,7 +38,7 @@ use Illuminate\Database\Eloquent\Model;
class Tour extends Model class Tour extends Model
{ {
protected $table = 'tours'; protected $table = 'tours';
public $timestamps = false;
public static $snakeAttributes = false; public static $snakeAttributes = false;
@@ -45,7 +46,7 @@ class Tour extends Model
'file_id' => 'int', 'file_id' => 'int',
'duration' => 'int', 'duration' => 'int',
'price' => 'int', 'price' => 'int',
'status' => 'int', 'status' => TourStatus::class,
'created_at' => 'datetime', 'created_at' => 'datetime',
'views' => 'int', 'views' => 'int',
]; ];
@@ -61,7 +62,11 @@ class Tour extends Model
'price', 'price',
'views', 'views',
'status', 'status',
'created_at' 'created_at',
'start_date',
'end_date',
'capacity',
'updated_at'
]; ];
public function file() public function file()
+2 -1
View File
@@ -6,6 +6,7 @@
namespace App\Models; namespace App\Models;
use App\Enums\TourDateStatus;
use Carbon\Carbon; use Carbon\Carbon;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
@@ -39,7 +40,7 @@ class TourDate extends Model
'end_date' => 'datetime', 'end_date' => 'datetime',
'price' => 'int', 'price' => 'int',
'capacity' => 'int', 'capacity' => 'int',
'status' => 'int' 'status' => TourDateStatus::class,
]; ];
protected $fillable = [ protected $fillable = [
+7 -2
View File
@@ -1,10 +1,14 @@
<div class="col-md-6 col-lg-4"> <div class="col-md-6 col-lg-4">
<div class="flight-item"> <div class="flight-item">
<div class="flight-img"> <div class="flight-img">
<img <img
src="{{ asset('assets/img/tour/01.jpg') }}" src="{{ $tour->file?->path
alt="" ? asset('storage/' . $tour->file->path)
: asset('assets/img/tour/01.jpg')
}}"
alt="{{ $tour->title }}"
> >
@if(auth()->check()) @if(auth()->check())
@@ -27,6 +31,7 @@
</form> </form>
@else @else
<a <a
href="{{ route('auth.login.index') }}" href="{{ route('auth.login.index') }}"
class="add-wishlist" class="add-wishlist"
+8 -1
View File
@@ -20,7 +20,14 @@
<div class="listing-slider owl-carousel owl-theme" dir="ltr"> <div class="listing-slider owl-carousel owl-theme" dir="ltr">
<img src="{{asset('assets/img/flight/01.jpg')}}" >
@if($tour->file)
<img
src="{{ asset('storage/' . $tour->file->path) }}"
alt="{{ $tour->title }}"
>
@endif
</div> </div>
<div class="listing-header"> <div class="listing-header">