feat:complete tours for admin side
This commit is contained in:
@@ -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;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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
@@ -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()
|
||||||
|
|||||||
@@ -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 = [
|
||||||
|
|||||||
@@ -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"
|
||||||
|
|||||||
@@ -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">
|
||||||
|
|||||||
Reference in New Issue
Block a user